@skyux/datetime 5.0.0 → 5.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/bundles/skyux-datetime-testing.umd.js +2 -2
  2. package/bundles/skyux-datetime.umd.js +515 -169
  3. package/bundles/skyux-datetime.umd.js.map +1 -1
  4. package/documentation.json +1151 -772
  5. package/esm2015/modules/date-pipe/date-pipe.module.js +5 -5
  6. package/esm2015/modules/date-pipe/date.pipe.js +4 -4
  7. package/esm2015/modules/date-pipe/fuzzy-date.pipe.js +4 -4
  8. package/esm2015/modules/date-range-picker/date-range-picker.component.js +5 -5
  9. package/esm2015/modules/date-range-picker/date-range-picker.module.js +8 -6
  10. package/esm2015/modules/date-range-picker/date-range.service.js +5 -8
  11. package/esm2015/modules/datepicker/datepicker-adapter.service.js +4 -4
  12. package/esm2015/modules/datepicker/datepicker-calendar-change.js +2 -0
  13. package/esm2015/modules/datepicker/datepicker-calendar-inner.component.js +33 -8
  14. package/esm2015/modules/datepicker/datepicker-calendar.component.js +17 -7
  15. package/esm2015/modules/datepicker/datepicker-config.service.js +4 -4
  16. package/esm2015/modules/datepicker/datepicker-custom-date.js +2 -0
  17. package/esm2015/modules/datepicker/datepicker-date.js +1 -1
  18. package/esm2015/modules/datepicker/datepicker-input-fuzzy.directive.js +4 -4
  19. package/esm2015/modules/datepicker/datepicker-input.directive.js +4 -4
  20. package/esm2015/modules/datepicker/datepicker.component.js +48 -6
  21. package/esm2015/modules/datepicker/datepicker.module.js +31 -12
  22. package/esm2015/modules/datepicker/datepicker.service.js +21 -0
  23. package/esm2015/modules/datepicker/daypicker-button.component.js +25 -0
  24. package/esm2015/modules/datepicker/daypicker-cell.component.js +130 -0
  25. package/esm2015/modules/datepicker/daypicker.component.js +98 -7
  26. package/esm2015/modules/datepicker/fuzzy-date.service.js +4 -4
  27. package/esm2015/modules/datepicker/monthpicker.component.js +4 -4
  28. package/esm2015/modules/datepicker/yearpicker.component.js +4 -4
  29. package/esm2015/modules/shared/sky-datetime-resources.module.js +5 -5
  30. package/esm2015/modules/timepicker/timepicker.component.js +4 -4
  31. package/esm2015/modules/timepicker/timepicker.directive.js +4 -4
  32. package/esm2015/modules/timepicker/timepicker.module.js +5 -5
  33. package/esm2015/public-api.js +3 -1
  34. package/fesm2015/skyux-datetime.js +434 -95
  35. package/fesm2015/skyux-datetime.js.map +1 -1
  36. package/modules/datepicker/datepicker-calendar-change.d.ts +24 -0
  37. package/modules/datepicker/datepicker-calendar-inner.component.d.ts +13 -3
  38. package/modules/datepicker/datepicker-calendar.component.d.ts +8 -2
  39. package/modules/datepicker/datepicker-custom-date.d.ts +21 -0
  40. package/modules/datepicker/datepicker-date.d.ts +2 -0
  41. package/modules/datepicker/datepicker.component.d.ts +14 -1
  42. package/modules/datepicker/datepicker.module.d.ts +11 -8
  43. package/modules/datepicker/datepicker.service.d.ts +15 -0
  44. package/modules/datepicker/daypicker-button.component.d.ts +16 -0
  45. package/modules/datepicker/daypicker-cell.component.d.ts +40 -0
  46. package/modules/datepicker/daypicker.component.d.ts +18 -3
  47. package/package.json +10 -10
  48. package/public-api.d.ts +2 -0
@@ -6,19 +6,19 @@ import { SkyFuzzyDatePipe } from './fuzzy-date.pipe';
6
6
  import * as i0 from "@angular/core";
7
7
  export class SkyDatePipeModule {
8
8
  }
9
- SkyDatePipeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyDatePipeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
- SkyDatePipeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyDatePipeModule, declarations: [SkyDatePipe,
9
+ SkyDatePipeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyDatePipeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
+ SkyDatePipeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyDatePipeModule, declarations: [SkyDatePipe,
11
11
  SkyFuzzyDatePipe], imports: [CommonModule,
12
12
  SkyDatetimeResourcesModule], exports: [SkyDatePipe,
13
13
  SkyFuzzyDatePipe] });
14
- SkyDatePipeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyDatePipeModule, providers: [
14
+ SkyDatePipeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyDatePipeModule, providers: [
15
15
  SkyDatePipe,
16
16
  SkyFuzzyDatePipe
17
17
  ], imports: [[
18
18
  CommonModule,
19
19
  SkyDatetimeResourcesModule
20
20
  ]] });
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyDatePipeModule, decorators: [{
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyDatePipeModule, decorators: [{
22
22
  type: NgModule,
23
23
  args: [{
24
24
  declarations: [
@@ -39,4 +39,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImpor
39
39
  ]
40
40
  }]
41
41
  }] });
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1waXBlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGV0aW1lL3NyYy9tb2R1bGVzL2RhdGUtcGlwZS9kYXRlLXBpcGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxZQUFZLEVBQ2IsTUFBTSxpQkFBaUIsQ0FBQztBQUV6QixPQUFPLEVBQ0wsUUFBUSxFQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBR3JGLE9BQU8sRUFDTCxXQUFXLEVBQ1osTUFBTSxhQUFhLENBQUM7QUFFckIsT0FBTyxFQUNMLGdCQUFnQixFQUNqQixNQUFNLG1CQUFtQixDQUFDOztBQW9CM0IsTUFBTSxPQUFPLGlCQUFpQjs7OEdBQWpCLGlCQUFpQjsrR0FBakIsaUJBQWlCLGlCQWhCMUIsV0FBVztRQUNYLGdCQUFnQixhQU9oQixZQUFZO1FBQ1osMEJBQTBCLGFBRzFCLFdBQVc7UUFDWCxnQkFBZ0I7K0dBR1AsaUJBQWlCLGFBYmpCO1FBQ1QsV0FBVztRQUNYLGdCQUFnQjtLQUNqQixZQUNRO1lBQ1AsWUFBWTtZQUNaLDBCQUEwQjtTQUMzQjsyRkFNVSxpQkFBaUI7a0JBbEI3QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixXQUFXO3dCQUNYLGdCQUFnQjtxQkFDakI7b0JBQ0QsU0FBUyxFQUFFO3dCQUNULFdBQVc7d0JBQ1gsZ0JBQWdCO3FCQUNqQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWiwwQkFBMEI7cUJBQzNCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxXQUFXO3dCQUNYLGdCQUFnQjtxQkFDakI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21tb25Nb2R1bGVcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHtcbiAgTmdNb2R1bGVcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa3lEYXRldGltZVJlc291cmNlc01vZHVsZSB9IGZyb20gJy4uL3NoYXJlZC9za3ktZGF0ZXRpbWUtcmVzb3VyY2VzLm1vZHVsZSc7XG5cblxuaW1wb3J0IHtcbiAgU2t5RGF0ZVBpcGVcbn0gZnJvbSAnLi9kYXRlLnBpcGUnO1xuXG5pbXBvcnQge1xuICBTa3lGdXp6eURhdGVQaXBlXG59IGZyb20gJy4vZnV6enktZGF0ZS5waXBlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgU2t5RGF0ZVBpcGUsXG4gICAgU2t5RnV6enlEYXRlUGlwZVxuICBdLFxuICBwcm92aWRlcnM6IFtcbiAgICBTa3lEYXRlUGlwZSxcbiAgICBTa3lGdXp6eURhdGVQaXBlXG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgU2t5RGF0ZXRpbWVSZXNvdXJjZXNNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIFNreURhdGVQaXBlLFxuICAgIFNreUZ1enp5RGF0ZVBpcGVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBTa3lEYXRlUGlwZU1vZHVsZSB7IH1cbiJdfQ==
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1waXBlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGV0aW1lL3NyYy9tb2R1bGVzL2RhdGUtcGlwZS9kYXRlLXBpcGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxZQUFZLEVBQ2IsTUFBTSxpQkFBaUIsQ0FBQztBQUV6QixPQUFPLEVBQ0wsUUFBUSxFQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBR3JGLE9BQU8sRUFDTCxXQUFXLEVBQ1osTUFBTSxhQUFhLENBQUM7QUFFckIsT0FBTyxFQUNMLGdCQUFnQixFQUNqQixNQUFNLG1CQUFtQixDQUFDOztBQW9CM0IsTUFBTSxPQUFPLGlCQUFpQjs7K0dBQWpCLGlCQUFpQjtnSEFBakIsaUJBQWlCLGlCQWhCMUIsV0FBVztRQUNYLGdCQUFnQixhQU9oQixZQUFZO1FBQ1osMEJBQTBCLGFBRzFCLFdBQVc7UUFDWCxnQkFBZ0I7Z0hBR1AsaUJBQWlCLGFBYmpCO1FBQ1QsV0FBVztRQUNYLGdCQUFnQjtLQUNqQixZQUNRO1lBQ1AsWUFBWTtZQUNaLDBCQUEwQjtTQUMzQjs0RkFNVSxpQkFBaUI7a0JBbEI3QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixXQUFXO3dCQUNYLGdCQUFnQjtxQkFDakI7b0JBQ0QsU0FBUyxFQUFFO3dCQUNULFdBQVc7d0JBQ1gsZ0JBQWdCO3FCQUNqQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWiwwQkFBMEI7cUJBQzNCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxXQUFXO3dCQUNYLGdCQUFnQjtxQkFDakI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21tb25Nb2R1bGVcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHtcbiAgTmdNb2R1bGVcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa3lEYXRldGltZVJlc291cmNlc01vZHVsZSB9IGZyb20gJy4uL3NoYXJlZC9za3ktZGF0ZXRpbWUtcmVzb3VyY2VzLm1vZHVsZSc7XG5cblxuaW1wb3J0IHtcbiAgU2t5RGF0ZVBpcGVcbn0gZnJvbSAnLi9kYXRlLnBpcGUnO1xuXG5pbXBvcnQge1xuICBTa3lGdXp6eURhdGVQaXBlXG59IGZyb20gJy4vZnV6enktZGF0ZS5waXBlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgU2t5RGF0ZVBpcGUsXG4gICAgU2t5RnV6enlEYXRlUGlwZVxuICBdLFxuICBwcm92aWRlcnM6IFtcbiAgICBTa3lEYXRlUGlwZSxcbiAgICBTa3lGdXp6eURhdGVQaXBlXG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgU2t5RGF0ZXRpbWVSZXNvdXJjZXNNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIFNreURhdGVQaXBlLFxuICAgIFNreUZ1enp5RGF0ZVBpcGVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBTa3lEYXRlUGlwZU1vZHVsZSB7IH1cbiJdfQ==
@@ -51,13 +51,13 @@ export class SkyDatePipe {
51
51
  this.formattedValue = SkyDateFormatUtility.format(locale, this.value, format);
52
52
  }
53
53
  }
54
- SkyDatePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyDatePipe, deps: [{ token: i1.SkyAppLocaleProvider }], target: i0.ɵɵFactoryTarget.Pipe });
55
- SkyDatePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyDatePipe, name: "skyDate", pure: false });
56
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyDatePipe, decorators: [{
54
+ SkyDatePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyDatePipe, deps: [{ token: i1.SkyAppLocaleProvider }], target: i0.ɵɵFactoryTarget.Pipe });
55
+ SkyDatePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyDatePipe, name: "skyDate", pure: false });
56
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyDatePipe, decorators: [{
57
57
  type: Pipe,
58
58
  args: [{
59
59
  name: 'skyDate',
60
60
  pure: false
61
61
  }]
62
62
  }], ctorParameters: function () { return [{ type: i1.SkyAppLocaleProvider }]; } });
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0ZXRpbWUvc3JjL21vZHVsZXMvZGF0ZS1waXBlL2RhdGUucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsSUFBSSxFQUVMLE1BQU0sZUFBZSxDQUFDO0FBT3ZCLE9BQU8sRUFDTCxPQUFPLEVBQ1IsTUFBTSxNQUFNLENBQUM7QUFFZCxPQUFPLEVBQ0wsU0FBUyxFQUNWLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUNMLG9CQUFvQixFQUNyQixNQUFNLHVCQUF1QixDQUFDOzs7QUFFL0I7Ozs7Ozs7O0dBUUc7QUFLSCxNQUFNLE9BQU8sV0FBVztJQWdCdEIsWUFDVSxjQUFvQztRQUFwQyxtQkFBYyxHQUFkLGNBQWMsQ0FBc0I7UUFmdEMsa0JBQWEsR0FBRyxPQUFPLENBQUM7UUFJeEIsa0JBQWEsR0FBRyxPQUFPLENBQUM7UUFReEIsa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBSzFDLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFO2FBQ2hDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO2FBQ25DLFNBQVMsQ0FBQyxDQUFDLFVBQTRCLEVBQUUsRUFBRTtZQUMxQyxJQUFJLENBQUMsYUFBYSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUM7WUFDdkMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7UUFDOUIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSSxTQUFTLENBQ2QsS0FBVSxFQUNWLE1BQWUsRUFDZixNQUFlO1FBRWYsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFFckIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7UUFFNUIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDO0lBQzdCLENBQUM7SUFFTyxvQkFBb0I7UUFDMUIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDO1FBQ2pELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQztRQUVqRCxJQUFJLENBQUMsY0FBYyxHQUFHLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNoRixDQUFDOzt3R0EzRFUsV0FBVztzR0FBWCxXQUFXOzJGQUFYLFdBQVc7a0JBSnZCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLFNBQVM7b0JBQ2YsSUFBSSxFQUFFLEtBQUs7aUJBQ1oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBPbkRlc3Ryb3ksXG4gIFBpcGUsXG4gIFBpcGVUcmFuc2Zvcm1cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7XG4gIFNreUFwcExvY2FsZUluZm8sXG4gIFNreUFwcExvY2FsZVByb3ZpZGVyXG59IGZyb20gJ0Bza3l1eC9pMThuJztcblxuaW1wb3J0IHtcbiAgU3ViamVjdFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtcbiAgdGFrZVVudGlsXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtcbiAgU2t5RGF0ZUZvcm1hdFV0aWxpdHlcbn0gZnJvbSAnLi9kYXRlLWZvcm1hdC11dGlsaXR5JztcblxuLyoqXG4gKiBGb3JtYXRzIGRhdGUgdmFsdWVzIGFjY29yZGluZyB0byBsb2NhbGUgcnVsZXMuXG4gKiBAZXhhbXBsZVxuICogYGBgbWFya3VwXG4gKiB7eyBteURhdGUgfCBza3lEYXRlIH19XG4gKiB7eyBteURhdGUgfCBza3lEYXRlOidtZWRpdW0nIH19XG4gKiB7eyBteURhdGUgfCBza3lEYXRlOidtZWRpdW0nOidlbi1DQScgfX1cbiAqIGBgYFxuICovXG5AUGlwZSh7XG4gIG5hbWU6ICdza3lEYXRlJyxcbiAgcHVyZTogZmFsc2Vcbn0pXG5leHBvcnQgY2xhc3MgU2t5RGF0ZVBpcGUgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIFBpcGVUcmFuc2Zvcm0ge1xuXG4gIHByaXZhdGUgZGVmYXVsdEZvcm1hdCA9ICdzaG9ydCc7XG5cbiAgcHJpdmF0ZSBmb3JtYXQ6IHN0cmluZztcblxuICBwcml2YXRlIGRlZmF1bHRMb2NhbGUgPSAnZW4tVVMnO1xuXG4gIHByaXZhdGUgbG9jYWxlOiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSB2YWx1ZTogYW55O1xuXG4gIHByaXZhdGUgZm9ybWF0dGVkVmFsdWU6IHN0cmluZztcblxuICBwcml2YXRlIG5nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgbG9jYWxlUHJvdmlkZXI6IFNreUFwcExvY2FsZVByb3ZpZGVyXG4gICkge1xuICAgIHRoaXMubG9jYWxlUHJvdmlkZXIuZ2V0TG9jYWxlSW5mbygpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoKGxvY2FsZUluZm86IFNreUFwcExvY2FsZUluZm8pID0+IHtcbiAgICAgICAgdGhpcy5kZWZhdWx0TG9jYWxlID0gbG9jYWxlSW5mby5sb2NhbGU7XG4gICAgICAgIHRoaXMudXBkYXRlRm9ybWF0dGVkVmFsdWUoKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMubmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gIH1cblxuICAvKipcbiAgICogVHJhbnNmb3JtcyBhIGRhdGUgdmFsdWUgdXNpbmcgbG9jYWxlIGFuZCBmb3JtYXQgcnVsZXMuXG4gICAqIEBwYXJhbSB2YWx1ZSBTcGVjaWZpZXMgdGhlIGRhdGUgdmFsdWUgdG8gdHJhbnNmb3JtLlxuICAgKiBAcGFyYW0gZm9ybWF0IFNwZWNpZmllcyB0aGUgZm9ybWF0IHRvIGFwcGx5IHRvIHRoZSB0cmFuc2Zvcm0uIFRoZSBmb3JtYXQgc3RyaW5nIGlzXG4gICAqIGNvbnN0cnVjdGVkIGJ5IGEgc2VyaWVzIG9mIHN5bWJvbHMgdGhhdCByZXByZXNlbnQgZGF0ZS10aW1lIHZhbHVlcy4gVGhlIHN5bWJvbHMgYXJlXG4gICAqIGlkZW50aWNhbCB0byBbQW5ndWxhcidzIGBEYXRlUGlwZWBdKGh0dHBzOi8vYW5ndWxhci5pby9hcGkvY29tbW9uL0RhdGVQaXBlI3ByZS1kZWZpbmVkLWZvcm1hdC1vcHRpb25zKSBmb3JtYXQgb3B0aW9ucy5cbiAgICogQHBhcmFtIGxvY2FsZSBTcGVjaWZpZXMgdGhlIGxvY2FsZSBjb2RlIHRvIHVzZSBpbiB0aGUgdHJhbnNmb3JtLlxuICAgKi9cbiAgcHVibGljIHRyYW5zZm9ybShcbiAgICB2YWx1ZTogYW55LFxuICAgIGZvcm1hdD86IHN0cmluZyxcbiAgICBsb2NhbGU/OiBzdHJpbmdcbiAgKTogc3RyaW5nIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgdGhpcy5mb3JtYXQgPSBmb3JtYXQ7XG4gICAgdGhpcy5sb2NhbGUgPSBsb2NhbGU7XG5cbiAgICB0aGlzLnVwZGF0ZUZvcm1hdHRlZFZhbHVlKCk7XG5cbiAgICByZXR1cm4gdGhpcy5mb3JtYXR0ZWRWYWx1ZTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlRm9ybWF0dGVkVmFsdWUoKTogdm9pZCB7XG4gICAgY29uc3QgbG9jYWxlID0gdGhpcy5sb2NhbGUgfHwgdGhpcy5kZWZhdWx0TG9jYWxlO1xuICAgIGNvbnN0IGZvcm1hdCA9IHRoaXMuZm9ybWF0IHx8IHRoaXMuZGVmYXVsdEZvcm1hdDtcblxuICAgIHRoaXMuZm9ybWF0dGVkVmFsdWUgPSBTa3lEYXRlRm9ybWF0VXRpbGl0eS5mb3JtYXQobG9jYWxlLCB0aGlzLnZhbHVlLCBmb3JtYXQpO1xuICB9XG59XG4iXX0=
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0ZXRpbWUvc3JjL21vZHVsZXMvZGF0ZS1waXBlL2RhdGUucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsSUFBSSxFQUVMLE1BQU0sZUFBZSxDQUFDO0FBT3ZCLE9BQU8sRUFDTCxPQUFPLEVBQ1IsTUFBTSxNQUFNLENBQUM7QUFFZCxPQUFPLEVBQ0wsU0FBUyxFQUNWLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUNMLG9CQUFvQixFQUNyQixNQUFNLHVCQUF1QixDQUFDOzs7QUFFL0I7Ozs7Ozs7O0dBUUc7QUFLSCxNQUFNLE9BQU8sV0FBVztJQWdCdEIsWUFDVSxjQUFvQztRQUFwQyxtQkFBYyxHQUFkLGNBQWMsQ0FBc0I7UUFmdEMsa0JBQWEsR0FBRyxPQUFPLENBQUM7UUFJeEIsa0JBQWEsR0FBRyxPQUFPLENBQUM7UUFReEIsa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBSzFDLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFO2FBQ2hDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO2FBQ25DLFNBQVMsQ0FBQyxDQUFDLFVBQTRCLEVBQUUsRUFBRTtZQUMxQyxJQUFJLENBQUMsYUFBYSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUM7WUFDdkMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7UUFDOUIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSSxTQUFTLENBQ2QsS0FBVSxFQUNWLE1BQWUsRUFDZixNQUFlO1FBRWYsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFFckIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7UUFFNUIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDO0lBQzdCLENBQUM7SUFFTyxvQkFBb0I7UUFDMUIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDO1FBQ2pELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQztRQUVqRCxJQUFJLENBQUMsY0FBYyxHQUFHLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNoRixDQUFDOzt5R0EzRFUsV0FBVzt1R0FBWCxXQUFXOzRGQUFYLFdBQVc7a0JBSnZCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLFNBQVM7b0JBQ2YsSUFBSSxFQUFFLEtBQUs7aUJBQ1oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBPbkRlc3Ryb3ksXG4gIFBpcGUsXG4gIFBpcGVUcmFuc2Zvcm1cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7XG4gIFNreUFwcExvY2FsZUluZm8sXG4gIFNreUFwcExvY2FsZVByb3ZpZGVyXG59IGZyb20gJ0Bza3l1eC9pMThuJztcblxuaW1wb3J0IHtcbiAgU3ViamVjdFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtcbiAgdGFrZVVudGlsXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtcbiAgU2t5RGF0ZUZvcm1hdFV0aWxpdHlcbn0gZnJvbSAnLi9kYXRlLWZvcm1hdC11dGlsaXR5JztcblxuLyoqXG4gKiBGb3JtYXRzIGRhdGUgdmFsdWVzIGFjY29yZGluZyB0byBsb2NhbGUgcnVsZXMuXG4gKiBAZXhhbXBsZVxuICogYGBgbWFya3VwXG4gKiB7eyBteURhdGUgfCBza3lEYXRlIH19XG4gKiB7eyBteURhdGUgfCBza3lEYXRlOidtZWRpdW0nIH19XG4gKiB7eyBteURhdGUgfCBza3lEYXRlOidtZWRpdW0nOidlbi1DQScgfX1cbiAqIGBgYFxuICovXG5AUGlwZSh7XG4gIG5hbWU6ICdza3lEYXRlJyxcbiAgcHVyZTogZmFsc2Vcbn0pXG5leHBvcnQgY2xhc3MgU2t5RGF0ZVBpcGUgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIFBpcGVUcmFuc2Zvcm0ge1xuXG4gIHByaXZhdGUgZGVmYXVsdEZvcm1hdCA9ICdzaG9ydCc7XG5cbiAgcHJpdmF0ZSBmb3JtYXQ6IHN0cmluZztcblxuICBwcml2YXRlIGRlZmF1bHRMb2NhbGUgPSAnZW4tVVMnO1xuXG4gIHByaXZhdGUgbG9jYWxlOiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSB2YWx1ZTogYW55O1xuXG4gIHByaXZhdGUgZm9ybWF0dGVkVmFsdWU6IHN0cmluZztcblxuICBwcml2YXRlIG5nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgbG9jYWxlUHJvdmlkZXI6IFNreUFwcExvY2FsZVByb3ZpZGVyXG4gICkge1xuICAgIHRoaXMubG9jYWxlUHJvdmlkZXIuZ2V0TG9jYWxlSW5mbygpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoKGxvY2FsZUluZm86IFNreUFwcExvY2FsZUluZm8pID0+IHtcbiAgICAgICAgdGhpcy5kZWZhdWx0TG9jYWxlID0gbG9jYWxlSW5mby5sb2NhbGU7XG4gICAgICAgIHRoaXMudXBkYXRlRm9ybWF0dGVkVmFsdWUoKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMubmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gIH1cblxuICAvKipcbiAgICogVHJhbnNmb3JtcyBhIGRhdGUgdmFsdWUgdXNpbmcgbG9jYWxlIGFuZCBmb3JtYXQgcnVsZXMuXG4gICAqIEBwYXJhbSB2YWx1ZSBTcGVjaWZpZXMgdGhlIGRhdGUgdmFsdWUgdG8gdHJhbnNmb3JtLlxuICAgKiBAcGFyYW0gZm9ybWF0IFNwZWNpZmllcyB0aGUgZm9ybWF0IHRvIGFwcGx5IHRvIHRoZSB0cmFuc2Zvcm0uIFRoZSBmb3JtYXQgc3RyaW5nIGlzXG4gICAqIGNvbnN0cnVjdGVkIGJ5IGEgc2VyaWVzIG9mIHN5bWJvbHMgdGhhdCByZXByZXNlbnQgZGF0ZS10aW1lIHZhbHVlcy4gVGhlIHN5bWJvbHMgYXJlXG4gICAqIGlkZW50aWNhbCB0byBbQW5ndWxhcidzIGBEYXRlUGlwZWBdKGh0dHBzOi8vYW5ndWxhci5pby9hcGkvY29tbW9uL0RhdGVQaXBlI3ByZS1kZWZpbmVkLWZvcm1hdC1vcHRpb25zKSBmb3JtYXQgb3B0aW9ucy5cbiAgICogQHBhcmFtIGxvY2FsZSBTcGVjaWZpZXMgdGhlIGxvY2FsZSBjb2RlIHRvIHVzZSBpbiB0aGUgdHJhbnNmb3JtLlxuICAgKi9cbiAgcHVibGljIHRyYW5zZm9ybShcbiAgICB2YWx1ZTogYW55LFxuICAgIGZvcm1hdD86IHN0cmluZyxcbiAgICBsb2NhbGU/OiBzdHJpbmdcbiAgKTogc3RyaW5nIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgdGhpcy5mb3JtYXQgPSBmb3JtYXQ7XG4gICAgdGhpcy5sb2NhbGUgPSBsb2NhbGU7XG5cbiAgICB0aGlzLnVwZGF0ZUZvcm1hdHRlZFZhbHVlKCk7XG5cbiAgICByZXR1cm4gdGhpcy5mb3JtYXR0ZWRWYWx1ZTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlRm9ybWF0dGVkVmFsdWUoKTogdm9pZCB7XG4gICAgY29uc3QgbG9jYWxlID0gdGhpcy5sb2NhbGUgfHwgdGhpcy5kZWZhdWx0TG9jYWxlO1xuICAgIGNvbnN0IGZvcm1hdCA9IHRoaXMuZm9ybWF0IHx8IHRoaXMuZGVmYXVsdEZvcm1hdDtcblxuICAgIHRoaXMuZm9ybWF0dGVkVmFsdWUgPSBTa3lEYXRlRm9ybWF0VXRpbGl0eS5mb3JtYXQobG9jYWxlLCB0aGlzLnZhbHVlLCBmb3JtYXQpO1xuICB9XG59XG4iXX0=
@@ -34,13 +34,13 @@ export class SkyFuzzyDatePipe {
34
34
  return this.fuzzyDateService.format(value, fuzzyDateFormat, fuzzyDateLocale);
35
35
  }
36
36
  }
37
- SkyFuzzyDatePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyFuzzyDatePipe, deps: [{ token: i1.SkyFuzzyDateService }], target: i0.ɵɵFactoryTarget.Pipe });
38
- SkyFuzzyDatePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyFuzzyDatePipe, name: "skyFuzzyDate", pure: false });
39
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyFuzzyDatePipe, decorators: [{
37
+ SkyFuzzyDatePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyFuzzyDatePipe, deps: [{ token: i1.SkyFuzzyDateService }], target: i0.ɵɵFactoryTarget.Pipe });
38
+ SkyFuzzyDatePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyFuzzyDatePipe, name: "skyFuzzyDate", pure: false });
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyFuzzyDatePipe, decorators: [{
40
40
  type: Pipe,
41
41
  args: [{
42
42
  name: 'skyFuzzyDate',
43
43
  pure: false
44
44
  }]
45
45
  }], ctorParameters: function () { return [{ type: i1.SkyFuzzyDateService }]; } });
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnV6enktZGF0ZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0ZXRpbWUvc3JjL21vZHVsZXMvZGF0ZS1waXBlL2Z1enp5LWRhdGUucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsSUFBSSxFQUVMLE1BQU0sZUFBZSxDQUFDOzs7QUFVdkI7Ozs7Ozs7O0dBUUc7QUFLSCxNQUFNLE9BQU8sZ0JBQWdCO0lBRTNCLFlBQ1UsZ0JBQXFDO1FBQXJDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBcUI7SUFDNUMsQ0FBQztJQUVKOzs7Ozs7Ozs7O09BVUc7SUFDSSxTQUFTLENBQ2QsS0FBbUIsRUFDbkIsTUFBZSxFQUNmLE1BQWU7UUFFZixJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1YsT0FBTyxTQUFTLENBQUM7U0FDbEI7UUFDRCxNQUFNLGVBQWUsR0FBRyxNQUFNLElBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3JGLE1BQU0sZUFBZSxHQUFHLE1BQU0sSUFBSSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUMzRSxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLGVBQWUsRUFBRSxlQUFlLENBQUMsQ0FBQztJQUMvRSxDQUFDOzs2R0E1QlUsZ0JBQWdCOzJHQUFoQixnQkFBZ0I7MkZBQWhCLGdCQUFnQjtrQkFKNUIsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsY0FBYztvQkFDcEIsSUFBSSxFQUFFLEtBQUs7aUJBQ1oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBQaXBlLFxuICBQaXBlVHJhbnNmb3JtXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1xuICBTa3lGdXp6eURhdGVcbn0gZnJvbSAnLi4vZGF0ZXBpY2tlci9mdXp6eS1kYXRlJztcblxuaW1wb3J0IHtcbiAgU2t5RnV6enlEYXRlU2VydmljZVxufSBmcm9tICcuLi9kYXRlcGlja2VyL2Z1enp5LWRhdGUuc2VydmljZSc7XG5cbi8qKlxuICogRm9ybWF0cyBkYXRlIHZhbHVlcyB1c2luZyB0d28gb3IgbW9yZSBkYXRlIHRva2VucyB0aGF0IHJlcHJlc2VudCB0aGUgZGF5LCBtb250aCxcbiAqIGFuZCB5ZWFyLiBUaGUgdG9rZW5zIGFyZSBkZXNjcmliZWQgaW4gdGhlIFttb21lbnQuanMgdmFsdWVzXShodHRwczovL21vbWVudGpzLmNvbS9kb2NzLyMvZGlzcGxheWluZy8pLlxuICogQGV4YW1wbGVcbiAqIGBgYG1hcmt1cFxuICoge3sgbXlGdXp6eURhdGUgfCBza3lGdXp6eURhdGU6J01NTSBZJyB9fVxuICoge3sgbXlGdXp6eURhdGUgfCBza3lGdXp6eURhdGU6J01NTSBZJzonZW4tQ0EnIH19XG4gKiBgYGBcbiAqL1xuQFBpcGUoe1xuICBuYW1lOiAnc2t5RnV6enlEYXRlJyxcbiAgcHVyZTogZmFsc2Vcbn0pXG5leHBvcnQgY2xhc3MgU2t5RnV6enlEYXRlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZnV6enlEYXRlU2VydmljZTogU2t5RnV6enlEYXRlU2VydmljZVxuICApIHt9XG5cbiAgLyoqXG4gICAqIFRyYW5zZm9ybXMgZnV6enkgZGF0ZSB2YWx1ZXMgdXNpbmcgdHdvIG9yIG1vcmUgZGF0ZSB0b2tlbnMgdGhhdCByZXByZXNlbnQgdGhlIGRheSwgbW9udGgsXG4gICAqIGFuZCB5ZWFyLlxuICAgKiBAcGFyYW0gdmFsdWUgU3BlY2lmaWVzIHRoZSBkYXRlIHZhbHVlIHRvIHRyYW5zZm9ybS5cbiAgICogQHBhcmFtIGZvcm1hdCBTcGVjaWZpZXMgdGhlIGZvcm1hdCB0byBhcHBseSB0byB0aGUgdHJhbnNmb3JtLiBZb3UgY29uc3RydWN0IHRoZSBmb3JtYXRcbiAgICogc3RyaW5nIHdpdGggYSB0d28gb3IgbW9yZSB0b2tlbnMgdGhhdCBzcGVjaWZ5IHRoZSBjb21wb25lbnRzIG9mIGRhdGUtdGltZSB2YWx1ZS4gVGhlXG4gICAqIHRva2VucyBhcmUgZGVzY3JpYmVkIGluIHRoZSBbbW9tZW50LmpzIHZhbHVlc10oaHR0cHM6Ly9tb21lbnRqcy5jb20vZG9jcy8jL2Rpc3BsYXlpbmcvKS5cbiAgICogSWYgeW91IGRvbid0IHByb3ZpZGUgYSBmb3JtYXQsIGBTa3lGdXp6eURhdGVQaXBlYCBhdHRlbXB0cyB0byBmb3JtYXQgZnV6enkgZGF0ZXMgYmFzZWRcbiAgICogb24gdGhlIGJyb3dzZXIncyBkZWZhdWx0IGxvY2FsZS5cbiAgICogQHBhcmFtIGxvY2FsZSBTcGVjaWZpZXMgdGhlIGxvY2FsZSBjb2RlIHRvIHVzZSBpbiB0aGUgdHJhbnNmb3JtLlxuICAgKi9cbiAgcHVibGljIHRyYW5zZm9ybShcbiAgICB2YWx1ZTogU2t5RnV6enlEYXRlLFxuICAgIGZvcm1hdD86IHN0cmluZyxcbiAgICBsb2NhbGU/OiBzdHJpbmdcbiAgKTogc3RyaW5nIHtcbiAgICBpZiAoIXZhbHVlKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgICBjb25zdCBmdXp6eURhdGVGb3JtYXQgPSBmb3JtYXQgfHwgdGhpcy5mdXp6eURhdGVTZXJ2aWNlLmdldExvY2FsZVNob3J0Rm9ybWF0KGxvY2FsZSk7XG4gICAgY29uc3QgZnV6enlEYXRlTG9jYWxlID0gbG9jYWxlIHx8IHRoaXMuZnV6enlEYXRlU2VydmljZS5nZXRDdXJyZW50TG9jYWxlKCk7XG4gICAgcmV0dXJuIHRoaXMuZnV6enlEYXRlU2VydmljZS5mb3JtYXQodmFsdWUsIGZ1enp5RGF0ZUZvcm1hdCwgZnV6enlEYXRlTG9jYWxlKTtcbiAgfVxuXG59XG4iXX0=
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnV6enktZGF0ZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0ZXRpbWUvc3JjL21vZHVsZXMvZGF0ZS1waXBlL2Z1enp5LWRhdGUucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsSUFBSSxFQUVMLE1BQU0sZUFBZSxDQUFDOzs7QUFVdkI7Ozs7Ozs7O0dBUUc7QUFLSCxNQUFNLE9BQU8sZ0JBQWdCO0lBRTNCLFlBQ1UsZ0JBQXFDO1FBQXJDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBcUI7SUFDNUMsQ0FBQztJQUVKOzs7Ozs7Ozs7O09BVUc7SUFDSSxTQUFTLENBQ2QsS0FBbUIsRUFDbkIsTUFBZSxFQUNmLE1BQWU7UUFFZixJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1YsT0FBTyxTQUFTLENBQUM7U0FDbEI7UUFDRCxNQUFNLGVBQWUsR0FBRyxNQUFNLElBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3JGLE1BQU0sZUFBZSxHQUFHLE1BQU0sSUFBSSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUMzRSxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLGVBQWUsRUFBRSxlQUFlLENBQUMsQ0FBQztJQUMvRSxDQUFDOzs4R0E1QlUsZ0JBQWdCOzRHQUFoQixnQkFBZ0I7NEZBQWhCLGdCQUFnQjtrQkFKNUIsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsY0FBYztvQkFDcEIsSUFBSSxFQUFFLEtBQUs7aUJBQ1oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBQaXBlLFxuICBQaXBlVHJhbnNmb3JtXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1xuICBTa3lGdXp6eURhdGVcbn0gZnJvbSAnLi4vZGF0ZXBpY2tlci9mdXp6eS1kYXRlJztcblxuaW1wb3J0IHtcbiAgU2t5RnV6enlEYXRlU2VydmljZVxufSBmcm9tICcuLi9kYXRlcGlja2VyL2Z1enp5LWRhdGUuc2VydmljZSc7XG5cbi8qKlxuICogRm9ybWF0cyBkYXRlIHZhbHVlcyB1c2luZyB0d28gb3IgbW9yZSBkYXRlIHRva2VucyB0aGF0IHJlcHJlc2VudCB0aGUgZGF5LCBtb250aCxcbiAqIGFuZCB5ZWFyLiBUaGUgdG9rZW5zIGFyZSBkZXNjcmliZWQgaW4gdGhlIFttb21lbnQuanMgdmFsdWVzXShodHRwczovL21vbWVudGpzLmNvbS9kb2NzLyMvZGlzcGxheWluZy8pLlxuICogQGV4YW1wbGVcbiAqIGBgYG1hcmt1cFxuICoge3sgbXlGdXp6eURhdGUgfCBza3lGdXp6eURhdGU6J01NTSBZJyB9fVxuICoge3sgbXlGdXp6eURhdGUgfCBza3lGdXp6eURhdGU6J01NTSBZJzonZW4tQ0EnIH19XG4gKiBgYGBcbiAqL1xuQFBpcGUoe1xuICBuYW1lOiAnc2t5RnV6enlEYXRlJyxcbiAgcHVyZTogZmFsc2Vcbn0pXG5leHBvcnQgY2xhc3MgU2t5RnV6enlEYXRlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZnV6enlEYXRlU2VydmljZTogU2t5RnV6enlEYXRlU2VydmljZVxuICApIHt9XG5cbiAgLyoqXG4gICAqIFRyYW5zZm9ybXMgZnV6enkgZGF0ZSB2YWx1ZXMgdXNpbmcgdHdvIG9yIG1vcmUgZGF0ZSB0b2tlbnMgdGhhdCByZXByZXNlbnQgdGhlIGRheSwgbW9udGgsXG4gICAqIGFuZCB5ZWFyLlxuICAgKiBAcGFyYW0gdmFsdWUgU3BlY2lmaWVzIHRoZSBkYXRlIHZhbHVlIHRvIHRyYW5zZm9ybS5cbiAgICogQHBhcmFtIGZvcm1hdCBTcGVjaWZpZXMgdGhlIGZvcm1hdCB0byBhcHBseSB0byB0aGUgdHJhbnNmb3JtLiBZb3UgY29uc3RydWN0IHRoZSBmb3JtYXRcbiAgICogc3RyaW5nIHdpdGggYSB0d28gb3IgbW9yZSB0b2tlbnMgdGhhdCBzcGVjaWZ5IHRoZSBjb21wb25lbnRzIG9mIGRhdGUtdGltZSB2YWx1ZS4gVGhlXG4gICAqIHRva2VucyBhcmUgZGVzY3JpYmVkIGluIHRoZSBbbW9tZW50LmpzIHZhbHVlc10oaHR0cHM6Ly9tb21lbnRqcy5jb20vZG9jcy8jL2Rpc3BsYXlpbmcvKS5cbiAgICogSWYgeW91IGRvbid0IHByb3ZpZGUgYSBmb3JtYXQsIGBTa3lGdXp6eURhdGVQaXBlYCBhdHRlbXB0cyB0byBmb3JtYXQgZnV6enkgZGF0ZXMgYmFzZWRcbiAgICogb24gdGhlIGJyb3dzZXIncyBkZWZhdWx0IGxvY2FsZS5cbiAgICogQHBhcmFtIGxvY2FsZSBTcGVjaWZpZXMgdGhlIGxvY2FsZSBjb2RlIHRvIHVzZSBpbiB0aGUgdHJhbnNmb3JtLlxuICAgKi9cbiAgcHVibGljIHRyYW5zZm9ybShcbiAgICB2YWx1ZTogU2t5RnV6enlEYXRlLFxuICAgIGZvcm1hdD86IHN0cmluZyxcbiAgICBsb2NhbGU/OiBzdHJpbmdcbiAgKTogc3RyaW5nIHtcbiAgICBpZiAoIXZhbHVlKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgICBjb25zdCBmdXp6eURhdGVGb3JtYXQgPSBmb3JtYXQgfHwgdGhpcy5mdXp6eURhdGVTZXJ2aWNlLmdldExvY2FsZVNob3J0Rm9ybWF0KGxvY2FsZSk7XG4gICAgY29uc3QgZnV6enlEYXRlTG9jYWxlID0gbG9jYWxlIHx8IHRoaXMuZnV6enlEYXRlU2VydmljZS5nZXRDdXJyZW50TG9jYWxlKCk7XG4gICAgcmV0dXJuIHRoaXMuZnV6enlEYXRlU2VydmljZS5mb3JtYXQodmFsdWUsIGZ1enp5RGF0ZUZvcm1hdCwgZnV6enlEYXRlTG9jYWxlKTtcbiAgfVxuXG59XG4iXX0=
@@ -425,12 +425,12 @@ export class SkyDateRangePickerComponent {
425
425
  return (JSON.stringify(rangeA) === JSON.stringify(rangeB));
426
426
  }
427
427
  }
428
- SkyDateRangePickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyDateRangePickerComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.SkyDateRangeService }, { token: i2.FormBuilder }, { token: i3.SkyAppLocaleProvider }, { token: i4.SkyAppWindowRef }, { token: i5.SkyThemeService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
429
- SkyDateRangePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: SkyDateRangePickerComponent, selector: "sky-date-range-picker", inputs: { calculatorIds: "calculatorIds", dateFormat: "dateFormat", disabled: "disabled", label: "label", startDateRequired: "startDateRequired", endDateRequired: "endDateRequired" }, providers: [
428
+ SkyDateRangePickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyDateRangePickerComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.SkyDateRangeService }, { token: i2.FormBuilder }, { token: i3.SkyAppLocaleProvider }, { token: i4.SkyAppWindowRef }, { token: i5.SkyThemeService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
429
+ SkyDateRangePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.14", type: SkyDateRangePickerComponent, selector: "sky-date-range-picker", inputs: { calculatorIds: "calculatorIds", dateFormat: "dateFormat", disabled: "disabled", label: "label", startDateRequired: "startDateRequired", endDateRequired: "endDateRequired" }, providers: [
430
430
  SKY_DATE_RANGE_PICKER_VALUE_ACCESSOR,
431
431
  SKY_DATE_RANGE_PICKER_VALIDATOR
432
- ], usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"isReady\"\n class=\"sky-date-range-picker\"\n [formGroup]=\"formGroup\"\n>\n <div\n class=\"sky-date-range-picker-form-group\"\n >\n <sky-input-box>\n <label\n class=\"sky-control-label\"\n [attr.for]=\"dateRangePickerId + '-select-calculator'\"\n >\n {{ label || 'skyux_date_range_picker_default_label' | skyLibResources }}\n </label>\n <select\n class=\"sky-form-control\"\n formControlName=\"calculatorId\"\n [attr.id]=\"dateRangePickerId + '-select-calculator'\"\n (blur)=\"onFieldBlur()\"\n >\n <option *ngFor=\"let calculator of calculators\"\n [value]=\"calculator.calculatorId\"\n >\n {{ calculator.shortDescription }}\n </option>\n </select>\n </sky-input-box>\n </div>\n\n <div\n class=\"sky-date-range-picker-form-group\"\n [hidden]=\"!showStartDatePicker\"\n >\n <sky-input-box>\n <label\n class=\"sky-control-label\"\n [attr.for]=\"dateRangePickerId + '-start-date'\"\n [ngClass]=\"{ 'sky-control-label-required' : startDateRequired }\"\n >\n {{ startDateLabelResourceKey | skyLibResources }}\n </label>\n\n <sky-datepicker>\n <input\n formControlName=\"startDate\"\n [attr.aria-label]=\"startDateLabelResourceKey | skyLibResources\"\n [attr.id]=\"dateRangePickerId + '-start-date'\"\n [attr.placeholder]=\"dateFormat\"\n [required]=\"startDateRequired\"\n [dateFormat]=\"dateFormat\"\n (blur)=\"onFieldBlur()\"\n skyDatepickerInput\n />\n </sky-datepicker>\n </sky-input-box>\n </div>\n\n <div\n class=\"sky-date-range-picker-form-group\"\n [hidden]=\"!showEndDatePicker\"\n >\n <sky-input-box>\n <label\n class=\"sky-control-label\"\n [attr.for]=\"dateRangePickerId + '-end-date'\"\n [ngClass]=\"{ 'sky-control-label-required' : endDateRequired }\"\n >\n {{ endDateLabelResourceKey | skyLibResources }}\n </label>\n\n <sky-datepicker>\n <input\n formControlName=\"endDate\"\n skyDatepickerInput\n [attr.aria-label]=\"endDateLabelResourceKey | skyLibResources\"\n [attr.id]=\"dateRangePickerId + '-end-date'\"\n [attr.placeholder]=\"dateFormat\"\n [dateFormat]=\"dateFormat\"\n [required]=\"endDateRequired\"\n (blur)=\"onFieldBlur()\"\n />\n </sky-datepicker>\n </sky-input-box>\n </div>\n</div>\n", styles: [".sky-date-range-picker{display:flex;margin-left:-5px;margin-right:-5px}.sky-date-range-picker-form-group{padding-left:5px;padding-right:5px}.sky-date-range-picker-form-group:last-child{margin-bottom:0}:host .sky-date-range-picker{flex-direction:column}:host .sky-date-range-picker-form-group{flex-basis:100%}:host-context(.sky-responsive-container-xs) .sky-date-range-picker,:host-context(.sky-responsive-container-sm) .sky-date-range-picker,:host-context(.sky-responsive-container-md) .sky-date-range-picker,:host-context(.sky-responsive-container-lg) .sky-date-range-picker{flex-direction:column}:host-context(.sky-responsive-container-xs) .sky-date-range-picker-form-group,:host-context(.sky-responsive-container-sm) .sky-date-range-picker-form-group,:host-context(.sky-responsive-container-md) .sky-date-range-picker-form-group,:host-context(.sky-responsive-container-lg) .sky-date-range-picker-form-group{flex-basis:100%}@media (min-width: 768px){:host .sky-date-range-picker{flex-direction:initial}:host .sky-date-range-picker-form-group{flex-basis:calc(100% / 3);margin-bottom:0}}:host-context(.sky-responsive-container-sm) .sky-date-range-picker,:host-context(.sky-responsive-container-md) .sky-date-range-picker,:host-context(.sky-responsive-container-lg) .sky-date-range-picker{flex-direction:initial}:host-context(.sky-responsive-container-sm) .sky-date-range-picker-form-group,:host-context(.sky-responsive-container-md) .sky-date-range-picker-form-group,:host-context(.sky-responsive-container-lg) .sky-date-range-picker-form-group{flex-basis:calc(100% / 3);margin-bottom:0}:host-context(.sky-theme-modern) .sky-date-range-picker-form-group{padding:0;margin:0 0 20px}@media (min-width: 768px){:host-context(.sky-theme-modern) .sky-date-range-picker-form-group{margin:0 20px 0 0}}.sky-theme-modern .sky-date-range-picker-form-group{padding:0;margin:0 0 20px}@media (min-width: 768px){.sky-theme-modern .sky-date-range-picker-form-group{margin:0 20px 0 0}}:host-context(.sky-theme-modern .sky-responsive-container-xs) .sky-date-range-picker-form-group{margin:0 0 20px}:host-context(.sky-theme-modern .sky-responsive-container-sm) .sky-date-range-picker-form-group,:host-context(.sky-theme-modern .sky-responsive-container-md) .sky-date-range-picker-form-group,:host-context(.sky-theme-modern .sky-responsive-container-lg) .sky-date-range-picker-form-group{margin:0 20px 0 0}\n"], components: [{ type: i6.λ10, selector: "sky-input-box", inputs: ["hasErrors", "disabled"] }, { type: i7.SkyDatepickerComponent, selector: "sky-datepicker", inputs: ["pickerClass"] }], directives: [{ type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i8.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i8.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i9.SkyDatepickerInputDirective, selector: "[skyDatepickerInput]", inputs: ["dateFormat", "disabled", "maxDate", "minDate", "skyDatepickerInput", "skyDatepickerNoValidate", "startingDay", "strict"] }, { type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }], pipes: { "skyLibResources": i3.SkyLibResourcesPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
433
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyDateRangePickerComponent, decorators: [{
432
+ ], usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"isReady\"\n class=\"sky-date-range-picker\"\n [formGroup]=\"formGroup\"\n>\n <div\n class=\"sky-date-range-picker-form-group\"\n >\n <sky-input-box>\n <label\n class=\"sky-control-label\"\n [attr.for]=\"dateRangePickerId + '-select-calculator'\"\n >\n {{ label || 'skyux_date_range_picker_default_label' | skyLibResources }}\n </label>\n <select\n class=\"sky-form-control\"\n formControlName=\"calculatorId\"\n [attr.id]=\"dateRangePickerId + '-select-calculator'\"\n (blur)=\"onFieldBlur()\"\n >\n <option *ngFor=\"let calculator of calculators\"\n [value]=\"calculator.calculatorId\"\n >\n {{ calculator.shortDescription }}\n </option>\n </select>\n </sky-input-box>\n </div>\n\n <div\n class=\"sky-date-range-picker-form-group\"\n [hidden]=\"!showStartDatePicker\"\n >\n <sky-input-box>\n <label\n class=\"sky-control-label\"\n [attr.for]=\"dateRangePickerId + '-start-date'\"\n [ngClass]=\"{ 'sky-control-label-required' : startDateRequired }\"\n >\n {{ startDateLabelResourceKey | skyLibResources }}\n </label>\n\n <sky-datepicker>\n <input\n formControlName=\"startDate\"\n [attr.aria-label]=\"startDateLabelResourceKey | skyLibResources\"\n [attr.id]=\"dateRangePickerId + '-start-date'\"\n [attr.placeholder]=\"dateFormat\"\n [required]=\"startDateRequired\"\n [dateFormat]=\"dateFormat\"\n (blur)=\"onFieldBlur()\"\n skyDatepickerInput\n />\n </sky-datepicker>\n </sky-input-box>\n </div>\n\n <div\n class=\"sky-date-range-picker-form-group\"\n [hidden]=\"!showEndDatePicker\"\n >\n <sky-input-box>\n <label\n class=\"sky-control-label\"\n [attr.for]=\"dateRangePickerId + '-end-date'\"\n [ngClass]=\"{ 'sky-control-label-required' : endDateRequired }\"\n >\n {{ endDateLabelResourceKey | skyLibResources }}\n </label>\n\n <sky-datepicker>\n <input\n formControlName=\"endDate\"\n skyDatepickerInput\n [attr.aria-label]=\"endDateLabelResourceKey | skyLibResources\"\n [attr.id]=\"dateRangePickerId + '-end-date'\"\n [attr.placeholder]=\"dateFormat\"\n [dateFormat]=\"dateFormat\"\n [required]=\"endDateRequired\"\n (blur)=\"onFieldBlur()\"\n />\n </sky-datepicker>\n </sky-input-box>\n </div>\n</div>\n", styles: [".sky-date-range-picker{display:flex;margin-left:-5px;margin-right:-5px}.sky-date-range-picker-form-group{padding-left:5px;padding-right:5px}.sky-date-range-picker-form-group:last-child{margin-bottom:0}:host .sky-date-range-picker{flex-direction:column}:host .sky-date-range-picker-form-group{flex-basis:100%}:host-context(.sky-responsive-container-xs) .sky-date-range-picker,:host-context(.sky-responsive-container-sm) .sky-date-range-picker,:host-context(.sky-responsive-container-md) .sky-date-range-picker,:host-context(.sky-responsive-container-lg) .sky-date-range-picker{flex-direction:column}:host-context(.sky-responsive-container-xs) .sky-date-range-picker-form-group,:host-context(.sky-responsive-container-sm) .sky-date-range-picker-form-group,:host-context(.sky-responsive-container-md) .sky-date-range-picker-form-group,:host-context(.sky-responsive-container-lg) .sky-date-range-picker-form-group{flex-basis:100%}@media (min-width: 768px){:host .sky-date-range-picker{flex-direction:initial}:host .sky-date-range-picker-form-group{flex-basis:calc(100% / 3);margin-bottom:0}}:host-context(.sky-responsive-container-sm) .sky-date-range-picker,:host-context(.sky-responsive-container-md) .sky-date-range-picker,:host-context(.sky-responsive-container-lg) .sky-date-range-picker{flex-direction:initial}:host-context(.sky-responsive-container-sm) .sky-date-range-picker-form-group,:host-context(.sky-responsive-container-md) .sky-date-range-picker-form-group,:host-context(.sky-responsive-container-lg) .sky-date-range-picker-form-group{flex-basis:calc(100% / 3);margin-bottom:0}:host-context(.sky-theme-modern) .sky-date-range-picker-form-group{padding:0;margin:0 0 20px}@media (min-width: 768px){:host-context(.sky-theme-modern) .sky-date-range-picker-form-group{margin:0 20px 0 0}}.sky-theme-modern .sky-date-range-picker-form-group{padding:0;margin:0 0 20px}@media (min-width: 768px){.sky-theme-modern .sky-date-range-picker-form-group{margin:0 20px 0 0}}:host-context(.sky-theme-modern .sky-responsive-container-xs) .sky-date-range-picker-form-group{margin:0 0 20px}:host-context(.sky-theme-modern .sky-responsive-container-sm) .sky-date-range-picker-form-group,:host-context(.sky-theme-modern .sky-responsive-container-md) .sky-date-range-picker-form-group,:host-context(.sky-theme-modern .sky-responsive-container-lg) .sky-date-range-picker-form-group{margin:0 20px 0 0}\n"], components: [{ type: i6.λ10, selector: "sky-input-box", inputs: ["hasErrors", "disabled"] }, { type: i7.SkyDatepickerComponent, selector: "sky-datepicker", inputs: ["pickerClass"], outputs: ["calendarDateRangeChange"] }], directives: [{ type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i8.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i8.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i9.SkyDatepickerInputDirective, selector: "[skyDatepickerInput]", inputs: ["dateFormat", "disabled", "maxDate", "minDate", "skyDatepickerInput", "skyDatepickerNoValidate", "startingDay", "strict"] }, { type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }], pipes: { "skyLibResources": i3.SkyLibResourcesPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
433
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyDateRangePickerComponent, decorators: [{
434
434
  type: Component,
435
435
  args: [{
436
436
  selector: 'sky-date-range-picker',
@@ -457,4 +457,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImpor
457
457
  }], endDateRequired: [{
458
458
  type: Input
459
459
  }] } });
460
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1yYW5nZS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0ZXRpbWUvc3JjL21vZHVsZXMvZGF0ZS1yYW5nZS1waWNrZXIvZGF0ZS1yYW5nZS1waWNrZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0ZXRpbWUvc3JjL21vZHVsZXMvZGF0ZS1yYW5nZS1waWNrZXIvZGF0ZS1yYW5nZS1waWNrZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLEtBQUssRUFJTCxRQUFRLEVBRVQsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUlMLFdBQVcsRUFFWCxhQUFhLEVBQ2IsaUJBQWlCLEVBR2xCLE1BQU0sZ0JBQWdCLENBQUM7QUFjeEIsT0FBTyxFQUNMLGFBQWEsRUFDYixPQUFPLEVBQ1IsTUFBTSxNQUFNLENBQUM7QUFFZCxPQUFPLEVBQ0wsb0JBQW9CLEVBQ3BCLEtBQUssRUFDTCxTQUFTLEVBQ1YsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2pCLE1BQU0sOEJBQThCLENBQUM7QUFNdEMsT0FBTyxFQUNMLHdCQUF3QixFQUN6QixNQUFNLGtDQUFrQyxDQUFDO0FBRTFDLE9BQU8sRUFDTCwwQkFBMEIsRUFDM0IsTUFBTSxvQ0FBb0MsQ0FBQzs7Ozs7Ozs7Ozs7QUFVNUMseURBQXlEO0FBQ3pELE1BQU0sb0NBQW9DLEdBQUc7SUFDM0MsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLDJCQUEyQixDQUFDO0lBQzFELEtBQUssRUFBRSxJQUFJO0NBQ1osQ0FBQztBQUVGLE1BQU0sK0JBQStCLEdBQUc7SUFDdEMsT0FBTyxFQUFFLGFBQWE7SUFD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eEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sZUFBZSxDQUNyQixNQUErQixFQUMvQixNQUErQjtRQUUvQixPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsS0FBSyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDN0QsQ0FBQzs7d0hBdmZVLDJCQUEyQjs0R0FBM0IsMkJBQTJCLHdPQU4zQjtRQUNULG9DQUFvQztRQUNwQywrQkFBK0I7S0FDaEMsK0NDekdILHVnRkFxRkE7MkZEdUJhLDJCQUEyQjtrQkFWdkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxXQUFXLEVBQUUsb0NBQW9DO29CQUNqRCxTQUFTLEVBQUUsQ0FBQyxvQ0FBb0MsQ0FBQztvQkFDakQsU0FBUyxFQUFFO3dCQUNULG9DQUFvQzt3QkFDcEMsK0JBQStCO3FCQUNoQztvQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQ7OzBCQStLSSxRQUFROzRDQXJLQSxhQUFhO3NCQUR2QixLQUFLO2dCQXdDSyxVQUFVO3NCQURwQixLQUFLO2dCQWNLLFFBQVE7c0JBRGxCLEtBQUs7Z0JBd0JDLEtBQUs7c0JBRFgsS0FBSztnQkFRQyxpQkFBaUI7c0JBRHZCLEtBQUs7Z0JBUUMsZUFBZTtzQkFEckIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBmb3J3YXJkUmVmLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3B0aW9uYWwsXG4gIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7XG4gIEFic3RyYWN0Q29udHJvbCxcbiAgQ29udHJvbFZhbHVlQWNjZXNzb3IsXG4gIEZvcm1CdWlsZGVyLFxuICBGb3JtQ29udHJvbCxcbiAgRm9ybUdyb3VwLFxuICBOR19WQUxJREFUT1JTLFxuICBOR19WQUxVRV9BQ0NFU1NPUixcbiAgVmFsaWRhdGlvbkVycm9ycyxcbiAgVmFsaWRhdG9yXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHtcbiAgU2t5QXBwV2luZG93UmVmXG59IGZyb20gJ0Bza3l1eC9jb3JlJztcblxuaW1wb3J0IHtcbiAgU2t5QXBwTG9jYWxlUHJvdmlkZXJcbn0gZnJvbSAnQHNreXV4L2kxOG4nO1xuXG5pbXBvcnQge1xuICBTa3lUaGVtZVNlcnZpY2Vcbn0gZnJvbSAnQHNreXV4L3RoZW1lJztcblxuaW1wb3J0IHtcbiAgY29tYmluZUxhdGVzdCxcbiAgU3ViamVjdFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gIGZpcnN0LFxuICB0YWtlVW50aWxcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1xuICBTa3lEYXRlRm9ybWF0dGVyXG59IGZyb20gJy4uL2RhdGVwaWNrZXIvZGF0ZS1mb3JtYXR0ZXInO1xuXG5pbXBvcnQge1xuICBTa3lEYXRlUmFuZ2VDYWxjdWxhdGlvblxufSBmcm9tICcuL3R5cGVzL2RhdGUtcmFuZ2UtY2FsY3VsYXRpb24nO1xuXG5pbXBvcnQge1xuICBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9ySWRcbn0gZnJvbSAnLi90eXBlcy9kYXRlLXJhbmdlLWNhbGN1bGF0b3ItaWQnO1xuXG5pbXBvcnQge1xuICBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9yVHlwZVxufSBmcm9tICcuL3R5cGVzL2RhdGUtcmFuZ2UtY2FsY3VsYXRvci10eXBlJztcblxuaW1wb3J0IHtcbiAgU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvclxufSBmcm9tICcuL3R5cGVzL2RhdGUtcmFuZ2UtY2FsY3VsYXRvcic7XG5cbmltcG9ydCB7XG4gIFNreURhdGVSYW5nZVNlcnZpY2Vcbn0gZnJvbSAnLi9kYXRlLXJhbmdlLnNlcnZpY2UnO1xuXG4vKiB0c2xpbnQ6ZGlzYWJsZTpuby1mb3J3YXJkLXJlZiBuby11c2UtYmVmb3JlLWRlY2xhcmUgKi9cbmNvbnN0IFNLWV9EQVRFX1JBTkdFX1BJQ0tFUl9WQUxVRV9BQ0NFU1NPUiA9IHtcbiAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFNreURhdGVSYW5nZVBpY2tlckNvbXBvbmVudCksXG4gIG11bHRpOiB0cnVlXG59O1xuXG5jb25zdCBTS1lfREFURV9SQU5HRV9QSUNLRVJfVkFMSURBVE9SID0ge1xuICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBTa3lEYXRlUmFuZ2VQaWNrZXJDb21wb25lbnQpLFxuICBtdWx0aTogdHJ1ZVxufTtcbi8qIHRzbGludDplbmFibGUgKi9cblxubGV0IHVuaXF1ZUlkID0gMDtcblxuLyoqXG4gKiBBY3RzIGFzIGEgZm9ybSBjb250cm9sIHdpdGggYSBmb3JtIG1vZGVsIG9mIHR5cGUgYFNreURhdGVSYW5nZUNhbGN1bGF0aW9uYC5cbiAqIEBleGFtcGxlXG4gKiBgYGBcbiAqIDxza3ktZGF0ZS1yYW5nZS1waWNrZXJcbiAqICAgZm9ybUNvbnRyb2xOYW1lPVwibXlQaWNrZXJcIlxuICogPlxuICogPC9za3ktZGF0ZS1yYW5nZS1waWNrZXI+XG4gKiBgYGBcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LWRhdGUtcmFuZ2UtcGlja2VyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGUtcmFuZ2UtcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGF0ZS1yYW5nZS1waWNrZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgU0tZX0RBVEVfUkFOR0VfUElDS0VSX1ZBTFVFX0FDQ0VTU09SLFxuICAgIFNLWV9EQVRFX1JBTkdFX1BJQ0tFUl9WQUxJREFUT1JcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgU2t5RGF0ZVJhbmdlUGlja2VyQ29tcG9uZW50XG4gIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgQ29udHJvbFZhbHVlQWNjZXNzb3IsIFZhbGlkYXRvciB7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyBJRHMgZm9yIHRoZSBkYXRlIHJhbmdlIG9wdGlvbnMgdG8gaW5jbHVkZSBpbiB0aGUgcGlja2VyJ3MgZHJvcGRvd24uXG4gICAqIFRoZSBvcHRpb25zIHNwZWNpZnkgY2FsY3VsYXRvciBvYmplY3RzIHRoYXQgcmV0dXJuIHR3byBgRGF0ZWAgb2JqZWN0cyB0byByZXByZXNlbnQgZGF0ZSByYW5nZXMuXG4gICAqIEJ5IGRlZmF1bHQsIHRoaXMgcHJvcGVydHkgaW5jbHVkZXMgYWxsIGBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9ySWRgIHZhbHVlcy5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgY2FsY3VsYXRvcklkcyh2YWx1ZTogU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvcklkW10pIHtcbiAgICB0aGlzLl9jYWxjdWxhdG9ySWRzID0gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGNhbGN1bGF0b3JJZHMoKTogU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvcklkW10ge1xuICAgIHJldHVybiB0aGlzLl9jYWxjdWxhdG9ySWRzIHx8IFtcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5BbnlUaW1lLFxuICAgICAgU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvcklkLkJlZm9yZSxcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5BZnRlcixcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5TcGVjaWZpY1JhbmdlLFxuICAgICAgU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvcklkLlllc3RlcmRheSxcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5Ub2RheSxcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5Ub21vcnJvdyxcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5MYXN0V2VlayxcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5UaGlzV2VlayxcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5OZXh0V2VlayxcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5MYXN0TW9udGgsXG4gICAgICBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9ySWQuVGhpc01vbnRoLFxuICAgICAgU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvcklkLk5leHRNb250aCxcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5MYXN0UXVhcnRlcixcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5UaGlzUXVhcnRlcixcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5OZXh0UXVhcnRlcixcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5MYXN0Q2FsZW5kYXJZZWFyLFxuICAgICAgU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvcklkLlRoaXNDYWxlbmRhclllYXIsXG4gICAgICBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9ySWQuTmV4dENhbGVuZGFyWWVhcixcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5MYXN0RmlzY2FsWWVhcixcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5UaGlzRmlzY2FsWWVhcixcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5OZXh0RmlzY2FsWWVhclxuICAgIF07XG4gIH1cblxuICAvKipcbiAgICogU3BlY2lmaWVzIGEgZGF0ZSBmb3JtYXQgZm9yXG4gICAqIFt0aGUgYHNreS1kYXRlcGlja2VyYCBjb21wb25lbnRzXShodHRwczovL2RldmVsb3Blci5ibGFja2JhdWQuY29tL3NreXV4L2NvbXBvbmVudHMvZGF0ZXBpY2tlcilcbiAgICogdGhhdCBtYWtlIHVwIHRoZSBkYXRlIHJhbmdlIHBpY2tlci4gVGhlIHRleHQgaW5wdXQgaXMgYSBjb21wb3NpdGUgY29tcG9uZW50IG9mXG4gICAqIHVwIHRvIHR3byBgc2t5LWRhdGVwaWNrZXJgIGNvbXBvbmVudHMuXG4gICAqIEBkZWZhdWx0IE1NL0REL1lZWVlcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZGF0ZUZvcm1hdCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fZGF0ZUZvcm1hdCA9IHZhbHVlO1xuICB9XG5cbiAgcHVibGljIGdldCBkYXRlRm9ybWF0KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2RhdGVGb3JtYXQgfHwgdGhpcy5wcmVmZXJyZWRTaG9ydERhdGVGb3JtYXQ7XG4gIH1cblxuICAvKipcbiAgICogSW5kaWNhdGVzIHdoZXRoZXIgdG8gZGlzYWJsZSB0aGUgZGF0ZSByYW5nZSBwaWNrZXIuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZGlzYWJsZWQgPSB2YWx1ZTtcblxuICAgIGlmICh0aGlzLmZvcm1Hcm91cCkge1xuICAgICAgaWYgKHRoaXMuX2Rpc2FibGVkKSB7XG4gICAgICAgIHRoaXMuZm9ybUdyb3VwLmRpc2FibGUoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuZm9ybUdyb3VwLmVuYWJsZSgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgYSBsYWJlbCBmb3IgdGhlIGRhdGUgcmFuZ2UgcGlja2VyLlxuICAgKiBAcmVxdWlyZWRcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBsYWJlbDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0byByZXF1aXJlIHVzZXJzIHRvIHNwZWNpZnkgYSBzdGFydCBkYXRlLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHN0YXJ0RGF0ZVJlcXVpcmVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyB3aGV0aGVyIHRvIHJlcXVpcmUgdXNlcnMgdG8gc3BlY2lmeSBhIGVuZCBkYXRlLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGVuZERhdGVSZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHB1YmxpYyBnZXQgc3RhcnREYXRlTGFiZWxSZXNvdXJjZUtleSgpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLnNlbGVjdGVkQ2FsY3VsYXRvci50eXBlID09PSBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9yVHlwZS5SYW5nZSkge1xuICAgICAgcmV0dXJuICdza3l1eF9kYXRlX3JhbmdlX3BpY2tlcl9zdGFydF9kYXRlX2xhYmVsJztcbiAgICB9XG5cbiAgICByZXR1cm4gJ3NreXV4X2RhdGVfcmFuZ2VfcGlja2VyX2FmdGVyX2RhdGVfbGFiZWwnO1xuICB9XG5cbiAgcHVibGljIGdldCBlbmREYXRlTGFiZWxSZXNvdXJjZUtleSgpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLnNlbGVjdGVkQ2FsY3VsYXRvci50eXBlID09PSBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9yVHlwZS5SYW5nZSkge1xuICAgICAgcmV0dXJuICdza3l1eF9kYXRlX3JhbmdlX3BpY2tlcl9lbmRfZGF0ZV9sYWJlbCc7XG4gICAgfVxuXG4gICAgcmV0dXJuICdza3l1eF9kYXRlX3JhbmdlX3BpY2tlcl9iZWZvcmVfZGF0ZV9sYWJlbCc7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNlbGVjdGVkQ2FsY3VsYXRvcigpOiBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9yIHtcbiAgICByZXR1cm4gdGhpcy5nZXRDYWxjdWxhdG9yQnlJZCh0aGlzLnZhbHVlLmNhbGN1bGF0b3JJZCk7XG4gIH1cblxuICBwdWJsaWMgcmVhZG9ubHkgZGF0ZVJhbmdlUGlja2VySWQgPSBgc2t5LWRhdGUtcmFuZ2UtcGlja2VyLSR7dW5pcXVlSWQrK31gO1xuXG4gIHB1YmxpYyBjYWxjdWxhdG9yczogU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvcltdO1xuICBwdWJsaWMgZm9ybUdyb3VwOiBGb3JtR3JvdXA7XG4gIHB1YmxpYyBpc1JlYWR5ID0gZmFsc2U7XG4gIHB1YmxpYyBzaG93RW5kRGF0ZVBpY2tlciA9IGZhbHNlO1xuICBwdWJsaWMgc2hvd1N0YXJ0RGF0ZVBpY2tlciA9IGZhbHNlO1xuXG4gIHByaXZhdGUgZ2V0IGNhbGN1bGF0b3JJZENvbnRyb2woKTogQWJzdHJhY3RDb250cm9sIHtcbiAgICByZXR1cm4gdGhpcy5mb3JtR3JvdXAuZ2V0KCdjYWxjdWxhdG9ySWQnKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGRlZmF1bHRDYWxjdWxhdG9yKCk6IFNreURhdGVSYW5nZUNhbGN1bGF0b3Ige1xuICAgIHJldHVybiB0aGlzLmNhbGN1bGF0b3JzWzBdO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgZGVmYXVsdFZhbHVlKCk6IFNreURhdGVSYW5nZUNhbGN1bGF0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5kZWZhdWx0Q2FsY3VsYXRvci5nZXRWYWx1ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgZW5kRGF0ZUNvbnRyb2woKTogQWJzdHJhY3RDb250cm9sIHtcbiAgICByZXR1cm4gdGhpcy5mb3JtR3JvdXAuZ2V0KCdlbmREYXRlJyk7XG4gIH1cblxuICBwcml2YXRlIGdldCBzdGFydERhdGVDb250cm9sKCk6IEFic3RyYWN0Q29udHJvbCB7XG4gICAgcmV0dXJuIHRoaXMuZm9ybUdyb3VwLmdldCgnc3RhcnREYXRlJyk7XG4gIH1cblxuICBwcml2YXRlIGdldCB2YWx1ZSgpOiBTa3lEYXRlUmFuZ2VDYWxjdWxhdGlvbiB7XG4gICAgaWYgKFxuICAgICAgdGhpcy5fdmFsdWUgJiZcbiAgICAgIHRoaXMuX3ZhbHVlLmNhbGN1bGF0b3JJZCAhPT0gdW5kZWZpbmVkXG4gICAgKSB7XG4gICAgICByZXR1cm4gdGhpcy5fdmFsdWU7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuZGVmYXVsdFZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSBjb250cm9sOiBBYnN0cmFjdENvbnRyb2w7XG4gIHByaXZhdGUgcHJlZmVycmVkU2hvcnREYXRlRm9ybWF0OiBzdHJpbmc7XG4gIHByaXZhdGUgbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgcHJpdmF0ZSBfY2FsY3VsYXRvcklkczogU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvcklkW107XG4gIHByaXZhdGUgX2RhdGVGb3JtYXQ6IHN0cmluZztcbiAgcHJpdmF0ZSBfZGlzYWJsZWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfdmFsdWU6IFNreURhdGVSYW5nZUNhbGN1bGF0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgZGF0ZVJhbmdlU2VydmljZTogU2t5RGF0ZVJhbmdlU2VydmljZSxcbiAgICBwcml2YXRlIGZvcm1CdWlsZGVyOiBGb3JtQnVpbGRlcixcbiAgICBwcml2YXRlIGxvY2FsZVByb3ZpZGVyOiBTa3lBcHBMb2NhbGVQcm92aWRlcixcbiAgICBwcml2YXRlIHdpbmRvd1JlZjogU2t5QXBwV2luZG93UmVmLFxuICAgIEBPcHRpb25hbCgpIHRoZW1lU3ZjPzogU2t5VGhlbWVTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMubG9jYWxlUHJvdmlkZXIuZ2V0TG9jYWxlSW5mbygpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoKGxvY2FsZUluZm8pID0+IHtcbiAgICAgICAgU2t5RGF0ZUZvcm1hdHRlci5zZXRMb2NhbGUobG9jYWxlSW5mby5sb2NhbGUpO1xuICAgICAgICB0aGlzLnByZWZlcnJlZFNob3J0RGF0ZUZvcm1hdCA9IFNreURhdGVGb3JtYXR0ZXIuZ2V0UHJlZmVycmVkU2hvcnREYXRlRm9ybWF0KCk7XG4gICAgICB9KTtcblxuICAgIC8vIFVwZGF0ZSBpY29ucyB3aGVuIHRoZW1lIGNoYW5nZXMuXG4gICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICB0aGVtZVN2Yz8uc2V0dGluZ3NDaGFuZ2VcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmNyZWF0ZUZvcm0oKTtcblxuICAgIHRoaXMudXBkYXRlQ2FsY3VsYXRvcnMoKS50aGVuKCgpID0+IHtcbiAgICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcnMoKTtcblxuICAgICAgdGhpcy5pc1JlYWR5ID0gdHJ1ZTtcblxuICAgICAgdGhpcy5yZXNldEZvcm1Hcm91cFZhbHVlKCk7XG4gICAgICB0aGlzLnNob3dSZWxldmFudEZvcm1GaWVsZHMoKTtcblxuICAgICAgLy8gRmlsbCBpbiBhbnkgdW5wcm92aWRlZCB2YWx1ZXMgYWZ0ZXIgdGhlIGNhbGN1bGF0b3JzIGhhdmUgYmVlbiBpbml0aWFsaXplZC5cbiAgICAgIC8vIEZvciBleGFtcGxlLCBpZiB0aGUgY29udHJvbCBpcyBpbml0aWFsaXplZCB3aXRoIG9ubHkgdGhlIGBjYWxjdWxhdG9ySWRgLFxuICAgICAgLy8gYWxsb3cgdGhlIGNhbGN1bGF0b3IgdG8gZmlsbCBpbiB0aGUgbWlzc2luZyBzdGFydCBhbmQgZW5kIGRhdGVzLlxuICAgICAgY29uc3QgeyBzdGFydERhdGUsIGVuZERhdGUgfSA9IHRoaXMudmFsdWU7XG4gICAgICBjb25zdCBkZWZhdWx0VmFsdWUgPSB0aGlzLnNlbGVjdGVkQ2FsY3VsYXRvci5nZXRWYWx1ZShzdGFydERhdGUsIGVuZERhdGUpO1xuICAgICAgY29uc3QgbmV3VmFsdWUgPSBPYmplY3QuYXNzaWduKHt9LCBkZWZhdWx0VmFsdWUsIHRoaXMudmFsdWUpO1xuXG4gICAgICB0aGlzLnNldFZhbHVlKG5ld1ZhbHVlLCBmYWxzZSk7XG5cbiAgICAgIC8vIFRoaXMgaXMgbmVlZGVkIHRvIGFkZHJlc3MgYSBidWcgaW4gQW5ndWxhciA0LlxuICAgICAgLy8gV2hlbiBhIGNvbnRyb2wgdmFsdWUgaXMgc2V0IGludGlhbGx5LCBpdHMgdmFsdWUgaXMgbm90IHJlcHJlc2VudGVkIG9uIHRoZSB2aWV3LlxuICAgICAgLy8gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2lzc3Vlcy8xMzc5MlxuICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgIGlmICh0aGlzLmNvbnRyb2wpIHtcbiAgICAgICAgdGhpcy5jb250cm9sLnNldFZhbHVlKHRoaXMudmFsdWUsIHtcbiAgICAgICAgICBlbWl0RXZlbnQ6IGZhbHNlXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoXG4gICAgICBjaGFuZ2VzLmNhbGN1bGF0b3JJZHMgJiZcbiAgICAgIGNoYW5nZXMuY2FsY3VsYXRvcklkcy5maXJzdENoYW5nZSA9PT0gZmFsc2VcbiAgICApIHtcbiAgICAgIHRoaXMudXBkYXRlQ2FsY3VsYXRvcnMoKS50aGVuKCgpID0+IHtcbiAgICAgICAgY29uc3QgaWQgPSB0aGlzLmNhbGN1bGF0b3JJZENvbnRyb2wudmFsdWU7XG5cbiAgICAgICAgLy8gTWFpbnRhaW4gdGhlIGN1cnJlbnRseSBzZWxlY3RlZCB2YWx1ZXMgaWYgdGhlIGNhbGN1bGF0b3JzIGNoYW5nZSBhZnRlclxuICAgICAgICAvLyBhIHZhbHVlIGhhcyBiZWVuIGNob3Nlbi5cbiAgICAgICAgY29uc3QgZm91bmQgPSB0aGlzLmNhbGN1bGF0b3JzLmZpbmQoKGNhbGN1bGF0b3IpID0+IHtcbiAgICAgICAgICByZXR1cm4gKGNhbGN1bGF0b3IuY2FsY3VsYXRvcklkID09PSBpZCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICAgIGlmICghZm91bmQpIHtcbiAgICAgICAgICBjb25zdCBuZXdWYWx1ZSA9IHRoaXMuZGVmYXVsdENhbGN1bGF0b3IuZ2V0VmFsdWUoKTtcbiAgICAgICAgICB0aGlzLnNldFZhbHVlKG5ld1ZhbHVlKTtcbiAgICAgICAgICB0aGlzLnJlc2V0Rm9ybUdyb3VwVmFsdWUobmV3VmFsdWUpO1xuICAgICAgICAgIHRoaXMuc2hvd1JlbGV2YW50Rm9ybUZpZWxkcygpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICB0aGlzLm5nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBvbkZpZWxkQmx1cigpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICB9XG5cbiAgcHVibGljIHdyaXRlVmFsdWUodmFsdWU6IFNreURhdGVSYW5nZUNhbGN1bGF0aW9uKTogdm9pZCB7XG5cbiAgICAvLyBPbmx5IHVwZGF0ZSB0aGUgdW5kZXJseWluZyBjb250cm9scyB3aGVuIHRoZSBjYWxjdWxhdG9ycyBhcmUgcmVhZHkuXG4gICAgY29uc3Qgbm90aWZ5Q2hhbmdlID0gZmFsc2U7XG5cbiAgICAvLyAoV2Ugc3RpbGwgbmVlZCB0byBzYXZlIHRoZSBpbml0aWFsIHZhbHVlIHNldCBieSB0aGUgY29uc3VtZXIncyBmb3JtLCBob3dldmVyLilcbiAgICB0aGlzLnNldFZhbHVlKHZhbHVlLCBub3RpZnlDaGFuZ2UpO1xuXG4gICAgaWYgKHRoaXMuaXNSZWFkeSkge1xuXG4gICAgICAvLyBXaGVuIHRoZSBjb250cm9sJ3MgdmFsdWUgaXMgc2V0IHRvIGBudWxsYCxcbiAgICAgIC8vIHNldCBpdCB0byB0aGUgZGVmYXVsdCB2YWx1ZS5cbiAgICAgIGlmICghdmFsdWUpIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLmRlZmF1bHRWYWx1ZSk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMucmVzZXRGb3JtR3JvdXBWYWx1ZSgpO1xuICAgICAgdGhpcy5zaG93UmVsZXZhbnRGb3JtRmllbGRzKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHZhbGlkYXRlKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMge1xuICAgIGlmICghdGhpcy5jb250cm9sKSB7XG4gICAgICB0aGlzLmNvbnRyb2wgPSBjb250cm9sO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5pc1JlYWR5KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgdmFsdWUgPSBjb250cm9sLnZhbHVlO1xuICAgIGNvbnN0IGlkQ29udHJvbCA9IHRoaXMuY2FsY3VsYXRvcklkQ29udHJvbDtcbiAgICBjb25zdCByZXN1bHQgPSB0aGlzLnNlbGVjdGVkQ2FsY3VsYXRvci52YWxpZGF0ZSh2YWx1ZSk7XG5cbiAgICBsZXQgZXJyb3JzOiBWYWxpZGF0aW9uRXJyb3JzO1xuXG4gICAgaWYgKHJlc3VsdCkge1xuICAgICAgZXJyb3JzID0ge1xuICAgICAgICBza3lEYXRlUmFuZ2U6IHtcbiAgICAgICAgICBjYWxjdWxhdG9ySWQ6IGlkQ29udHJvbC52YWx1ZSxcbiAgICAgICAgICBlcnJvcnM6IHJlc3VsdFxuICAgICAgICB9XG4gICAgICB9O1xuICAgIH0gZWxzZSB7XG4gICAgICBlcnJvcnMgPSB0aGlzLnN0YXJ0RGF0ZUNvbnRyb2wuZXJyb3JzIHx8IHRoaXMuZW5kRGF0ZUNvbnRyb2wuZXJyb3JzO1xuICAgIH1cblxuICAgIGlmICghZXJyb3JzKSB7XG4gICAgICAvLyBDbGVhciBhbnkgZXJyb3JzIG9uIHRoZSBjYWxjdWxhdG9yIHNlbGVjdC5cbiAgICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1udWxsLWtleXdvcmRcbiAgICAgIGlkQ29udHJvbC5zZXRFcnJvcnMobnVsbCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWRDb250cm9sLnNldEVycm9ycyhlcnJvcnMpO1xuICAgIGlkQ29udHJvbC5tYXJrQXNUb3VjaGVkKCk7XG4gICAgaWRDb250cm9sLm1hcmtBc0RpcnR5KCk7XG5cbiAgICAvLyBOZWVkIHRvIG1hcmsgdGhlIGNvbnRyb2wgYXMgdG91Y2hlZCBmb3IgdGhlIGVycm9yIG1lc3NhZ2VzIHRvIGFwcGVhci5cbiAgICB0aGlzLmNvbnRyb2wubWFya0FzVG91Y2hlZCgpO1xuXG4gICAgLy8gTm90aWZ5IHRoZSB2aWV3IHRvIGRpc3BsYXkgYW55IGVycm9ycy5cbiAgICB0aGlzLmNoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuXG4gICAgcmV0dXJuIGVycm9ycztcbiAgfVxuXG4gIHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKGZuOiAodmFsdWU6IFNreURhdGVSYW5nZUNhbGN1bGF0aW9uKSA9PiBTa3lEYXRlUmFuZ2VDYWxjdWxhdGlvbik6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gU2t5RGF0ZVJhbmdlQ2FsY3VsYXRpb24pOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgcHVibGljIHJlZ2lzdGVyT25WYWxpZGF0b3JDaGFuZ2UoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLm9uVmFsaWRhdG9yQ2hhbmdlID0gZm47XG4gIH1cblxuICBwdWJsaWMgc2V0RGlzYWJsZWRTdGF0ZShkaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBkaXNhYmxlZDtcbiAgfVxuXG4gIHByaXZhdGUgc2V0VmFsdWUodmFsdWU6IFNreURhdGVSYW5nZUNhbGN1bGF0aW9uLCBub3RpZnlDaGFuZ2UgPSB0cnVlKTogdm9pZCB7XG4gICAgY29uc3QgaXNOZXdWYWx1ZSA9ICF0aGlzLmRhdGVSYW5nZXNFcXVhbCh0aGlzLl92YWx1ZSwgdmFsdWUpO1xuXG4gICAgaWYgKGlzTmV3VmFsdWUpIHtcbiAgICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG5cbiAgICAgIGlmIChub3RpZnlDaGFuZ2UpIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHBhdGNoVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xuICAgIGNvbnN0IG5ld1ZhbHVlID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy52YWx1ZSwgdmFsdWUpO1xuXG4gICAgdGhpcy5zZXRWYWx1ZShuZXdWYWx1ZSk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUZvcm0oKTogdm9pZCB7XG4gICAgdGhpcy5mb3JtR3JvdXAgPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcbiAgICAgIGNhbGN1bGF0b3JJZDogbmV3IEZvcm1Db250cm9sKCksXG4gICAgICBzdGFydERhdGU6IG5ldyBGb3JtQ29udHJvbCgpLFxuICAgICAgZW5kRGF0ZTogbmV3IEZvcm1Db250cm9sKClcbiAgICB9KTtcblxuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICB0aGlzLmZvcm1Hcm91cC5kaXNhYmxlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzaG93UmVsZXZhbnRGb3JtRmllbGRzKCk6IHZvaWQge1xuICAgIGNvbnN0IGNhbGN1bGF0b3IgPSB0aGlzLnNlbGVjdGVkQ2FsY3VsYXRvcjtcblxuICAgIGxldCBzaG93RW5kRGF0ZVBpY2tlciA9IGZhbHNlO1xuICAgIGxldCBzaG93U3RhcnREYXRlUGlja2VyID0gZmFsc2U7XG5cbiAgICBzd2l0Y2ggKGNhbGN1bGF0b3IudHlwZSkge1xuICAgICAgY2FzZSBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9yVHlwZS5CZWZvcmU6XG4gICAgICAgIHNob3dFbmREYXRlUGlja2VyID0gdHJ1ZTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvclR5cGUuQWZ0ZXI6XG4gICAgICAgIHNob3dTdGFydERhdGVQaWNrZXIgPSB0cnVlO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9yVHlwZS5SYW5nZTpcbiAgICAgICAgc2hvd0VuZERhdGVQaWNrZXIgPSB0cnVlO1xuICAgICAgICBzaG93U3RhcnREYXRlUGlja2VyID0gdHJ1ZTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIGJyZWFrO1xuICAgIH1cblxuICAgIHRoaXMuc2hvd0VuZERhdGVQaWNrZXIgPSBzaG93RW5kRGF0ZVBpY2tlcjtcbiAgICB0aGlzLnNob3dTdGFydERhdGVQaWNrZXIgPSBzaG93U3RhcnREYXRlUGlja2VyO1xuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwcml2YXRlIHJlc2V0Rm9ybUdyb3VwVmFsdWUodmFsdWU/OiBTa3lEYXRlUmFuZ2VDYWxjdWxhdGlvbik6IHZvaWQge1xuICAgIC8vIERvIG5vdCBlbWl0IGEgdmFsdWUgY2hhbmdlIGV2ZW50IG9uIHRoZSB1bmRlcmx5aW5nIGZvcm0gZ3JvdXBcbiAgICAvLyBiZWNhdXNlIHdlJ3JlIGFscmVhZHkgd2F0Y2hpbmcgZm9yIGNoYW5nZXMgdGhhdCBhcmUgdHJpZ2dlcmVkIGJ5IHRoZSBlbmQgdXNlci5cbiAgICAvLyBGb3IgZXhhbXBsZSwgaWYgd2UgY2hhbmdlIHRoZSB2YWx1ZSBvZiB0aGUgZm9ybSBncm91cCBpbnRlcm5hbGx5LCB3ZSBkb24ndCB3YW50IHRoZSBldmVudFxuICAgIC8vIGxpc3RlbmVycyB0byBiZSB0cmlnZ2VyZWQsIGFzIHRob3NlIGFyZSByZXNlcnZlZCBmb3IgdXNlciBpbnRlcmFjdGlvbnMuXG4gICAgLy8gKFNlZSB0aGUgZXZlbnQgbGlzdGVuZXJzIGxpc3RlZCBiZWxvdy4pXG4gICAgdGhpcy5mb3JtR3JvdXAucmVzZXQoXG4gICAgICB2YWx1ZSB8fCB0aGlzLnZhbHVlLFxuICAgICAge1xuICAgICAgICBlbWl0RXZlbnQ6IGZhbHNlXG4gICAgICB9XG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgYWRkRXZlbnRMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgLy8gRGV0ZWN0IGVycm9ycyBmcm9tIHRoZSBkYXRlIHBpY2tlcnNcbiAgICAvLyB3aGVuIGNvbnRyb2wgaXMgaW5pdGlhbGl6ZWQgd2l0aCBhIHZhbHVlLlxuICAgICAgY29tYmluZUxhdGVzdChbXG4gICAgICAgIHRoaXMuc3RhcnREYXRlQ29udHJvbC5zdGF0dXNDaGFuZ2VzLFxuICAgICAgICB0aGlzLmVuZERhdGVDb250cm9sLnN0YXR1c0NoYW5nZXNcbiAgICAgIF0pXG4gICAgICAucGlwZShmaXJzdCgpKVxuICAgICAgLnN1YnNjcmliZSgoc3RhdHVzOiBzdHJpbmdbXSkgPT4ge1xuICAgICAgICBpZiAoc3RhdHVzLmluZGV4T2YoJ0lOVkFMSUQnKSA+IC0xKSB7XG4gICAgICAgICAgLy8gV2FpdCBmb3IgaW5pdGlhbCB2YWxpZGF0aW9uIHRvIGNvbXBsZXRlLlxuICAgICAgICAgIHRoaXMud2luZG93UmVmLm5hdGl2ZVdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMub25WYWxpZGF0b3JDaGFuZ2UoKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAvLyBXYXRjaCBmb3Igc2VsZWN0ZWQgY2FsY3VsYXRvciBjaGFuZ2UuXG4gICAgdGhpcy5jYWxjdWxhdG9ySWRDb250cm9sLnZhbHVlQ2hhbmdlc1xuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xuICAgICAgICBjb25zdCBpZCA9IHBhcnNlSW50KHZhbHVlLCAxMCk7XG4gICAgICAgIC8vIGlmIHRoZSBjb21wb25lbnQgaXMgZGlzYWJsZWQgZHVyaW5nIGZvcm0gY3JlYXRpb24sIG51bGwgaXMgcGFzc2VkXG4gICAgICAgIC8vIGFzIHRoZSB2YWx1ZSBvZiB0aGUgY2FsY3VsYXRvciBpZCBjb250cm9sXG4gICAgICAgIC8vIG9ubHkgaGFuZGxlIHRoZSB2YWx1ZSBjaGFuZ2VzIGlmIHRoZSBjYWxjdWxhdG9yIGlkIGlzIGEgbnVtYmVyXG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICAgIGlmICghaXNOYU4oaWQpKSB7XG4gICAgICAgICAgY29uc3QgY2FsY3VsYXRvciA9IHRoaXMuZ2V0Q2FsY3VsYXRvckJ5SWQoaWQpO1xuICAgICAgICAgIGNvbnN0IG5ld1ZhbHVlID0gY2FsY3VsYXRvci5nZXRWYWx1ZSgpO1xuXG4gICAgICAgICAgdGhpcy5zZXRWYWx1ZShuZXdWYWx1ZSk7XG4gICAgICAgICAgdGhpcy5yZXNldEZvcm1Hcm91cFZhbHVlKG5ld1ZhbHVlKTtcbiAgICAgICAgICB0aGlzLnNob3dSZWxldmFudEZvcm1GaWVsZHMoKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAvLyBXYXRjaCBmb3Igc3RhcnQgZGF0ZSB2YWx1ZSBjaGFuZ2VzLlxuICAgIHRoaXMuc3RhcnREYXRlQ29udHJvbC52YWx1ZUNoYW5nZXNcbiAgICAgIC5waXBlKFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoc3RhcnREYXRlKSA9PiB7XG4gICAgICAgIHRoaXMucGF0Y2hWYWx1ZSh7IHN0YXJ0RGF0ZSB9KTtcbiAgICAgIH0pO1xuXG4gICAgLy8gV2F0Y2ggZm9yIGVuZCBkYXRlIHZhbHVlIGNoYW5nZXMuXG4gICAgdGhpcy5lbmREYXRlQ29udHJvbC52YWx1ZUNoYW5nZXNcbiAgICAgIC5waXBlKFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoZW5kRGF0ZSkgPT4ge1xuICAgICAgICB0aGlzLnBhdGNoVmFsdWUoeyBlbmREYXRlIH0pO1xuICAgICAgfSk7XG5cbiAgICAgIC8vIERldGVjdCBlcnJvcnMgZnJvbSB0aGUgZGF0ZSBpbnB1dHMgYW5kIHVwZGF0ZSBuZy0gY2xhc3NlcyBvbiBwaWNrZXIuXG4gICAgICBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgdGhpcy5zdGFydERhdGVDb250cm9sLnN0YXR1c0NoYW5nZXMsXG4gICAgICAgIHRoaXMuZW5kRGF0ZUNvbnRyb2wuc3RhdHVzQ2hhbmdlc1xuICAgICAgXSlcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlQ2FsY3VsYXRvcnMoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuZGF0ZVJhbmdlU2VydmljZVxuICAgICAgLmdldENhbGN1bGF0b3JzKHRoaXMuY2FsY3VsYXRvcklkcylcbiAgICAgIC50aGVuKChjYWxjdWxhdG9ycykgPT4ge1xuICAgICAgICB0aGlzLmNhbGN1bGF0b3JzID0gY2FsY3VsYXRvcnM7XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q2FsY3VsYXRvckJ5SWQoaWQ6IFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZCk6IFNreURhdGVSYW5nZUNhbGN1bGF0b3Ige1xuICAgIHJldHVybiB0aGlzLmNhbGN1bGF0b3JzLmZpbmQoKGNhbGN1bGF0b3IpID0+IHtcbiAgICAgIHJldHVybiBjYWxjdWxhdG9yLmNhbGN1bGF0b3JJZCA9PT0gaWQ7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGRhdGVSYW5nZXNFcXVhbChcbiAgICByYW5nZUE6IFNreURhdGVSYW5nZUNhbGN1bGF0aW9uLFxuICAgIHJhbmdlQjogU2t5RGF0ZVJhbmdlQ2FsY3VsYXRpb25cbiAgKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChKU09OLnN0cmluZ2lmeShyYW5nZUEpID09PSBKU09OLnN0cmluZ2lmeShyYW5nZUIpKTtcbiAgfVxuXG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIHByaXZhdGUgb25DaGFuZ2UgPSAoXzogU2t5RGF0ZVJhbmdlQ2FsY3VsYXRpb24pID0+IHsgfTtcbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgcHJpdmF0ZSBvblRvdWNoZWQgPSAoKSA9PiB7IH07XG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIHByaXZhdGUgb25WYWxpZGF0b3JDaGFuZ2UgPSAoKSA9PiB7IH07XG59XG4iLCI8ZGl2ICpuZ0lmPVwiaXNSZWFkeVwiXG4gIGNsYXNzPVwic2t5LWRhdGUtcmFuZ2UtcGlja2VyXCJcbiAgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIlxuPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJza3ktZGF0ZS1yYW5nZS1waWNrZXItZm9ybS1ncm91cFwiXG4gID5cbiAgICA8c2t5LWlucHV0LWJveD5cbiAgICAgIDxsYWJlbFxuICAgICAgICBjbGFzcz1cInNreS1jb250cm9sLWxhYmVsXCJcbiAgICAgICAgW2F0dHIuZm9yXT1cImRhdGVSYW5nZVBpY2tlcklkICsgJy1zZWxlY3QtY2FsY3VsYXRvcidcIlxuICAgICAgPlxuICAgICAgICB7eyBsYWJlbCB8fCAnc2t5dXhfZGF0ZV9yYW5nZV9waWNrZXJfZGVmYXVsdF9sYWJlbCcgfCBza3lMaWJSZXNvdXJjZXMgfX1cbiAgICAgIDwvbGFiZWw+XG4gICAgICA8c2VsZWN0XG4gICAgICAgIGNsYXNzPVwic2t5LWZvcm0tY29udHJvbFwiXG4gICAgICAgIGZvcm1Db250cm9sTmFtZT1cImNhbGN1bGF0b3JJZFwiXG4gICAgICAgIFthdHRyLmlkXT1cImRhdGVSYW5nZVBpY2tlcklkICsgJy1zZWxlY3QtY2FsY3VsYXRvcidcIlxuICAgICAgICAoYmx1cik9XCJvbkZpZWxkQmx1cigpXCJcbiAgICAgID5cbiAgICAgICAgPG9wdGlvbiAqbmdGb3I9XCJsZXQgY2FsY3VsYXRvciBvZiBjYWxjdWxhdG9yc1wiXG4gICAgICAgICAgW3ZhbHVlXT1cImNhbGN1bGF0b3IuY2FsY3VsYXRvcklkXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IGNhbGN1bGF0b3Iuc2hvcnREZXNjcmlwdGlvbiB9fVxuICAgICAgICA8L29wdGlvbj5cbiAgICAgIDwvc2VsZWN0PlxuICAgIDwvc2t5LWlucHV0LWJveD5cbiAgPC9kaXY+XG5cbiAgPGRpdlxuICAgIGNsYXNzPVwic2t5LWRhdGUtcmFuZ2UtcGlja2VyLWZvcm0tZ3JvdXBcIlxuICAgIFtoaWRkZW5dPVwiIXNob3dTdGFydERhdGVQaWNrZXJcIlxuICA+XG4gICAgPHNreS1pbnB1dC1ib3g+XG4gICAgICA8bGFiZWxcbiAgICAgICAgY2xhc3M9XCJza3ktY29udHJvbC1sYWJlbFwiXG4gICAgICAgIFthdHRyLmZvcl09XCJkYXRlUmFuZ2VQaWNrZXJJZCArICctc3RhcnQtZGF0ZSdcIlxuICAgICAgICBbbmdDbGFzc109XCJ7ICdza3ktY29udHJvbC1sYWJlbC1yZXF1aXJlZCcgOiBzdGFydERhdGVSZXF1aXJlZCB9XCJcbiAgICAgID5cbiAgICAgICAge3sgc3RhcnREYXRlTGFiZWxSZXNvdXJjZUtleSB8IHNreUxpYlJlc291cmNlcyB9fVxuICAgICAgPC9sYWJlbD5cblxuICAgICAgPHNreS1kYXRlcGlja2VyPlxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJzdGFydERhdGVcIlxuICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwic3RhcnREYXRlTGFiZWxSZXNvdXJjZUtleSB8IHNreUxpYlJlc291cmNlc1wiXG4gICAgICAgICAgW2F0dHIuaWRdPVwiZGF0ZVJhbmdlUGlja2VySWQgKyAnLXN0YXJ0LWRhdGUnXCJcbiAgICAgICAgICBbYXR0ci5wbGFjZWhvbGRlcl09XCJkYXRlRm9ybWF0XCJcbiAgICAgICAgICBbcmVxdWlyZWRdPVwic3RhcnREYXRlUmVxdWlyZWRcIlxuICAgICAgICAgIFtkYXRlRm9ybWF0XT1cImRhdGVGb3JtYXRcIlxuICAgICAgICAgIChibHVyKT1cIm9uRmllbGRCbHVyKClcIlxuICAgICAgICAgIHNreURhdGVwaWNrZXJJbnB1dFxuICAgICAgICAvPlxuICAgICAgPC9za3ktZGF0ZXBpY2tlcj5cbiAgICA8L3NreS1pbnB1dC1ib3g+XG4gIDwvZGl2PlxuXG4gIDxkaXZcbiAgICBjbGFzcz1cInNreS1kYXRlLXJhbmdlLXBpY2tlci1mb3JtLWdyb3VwXCJcbiAgICBbaGlkZGVuXT1cIiFzaG93RW5kRGF0ZVBpY2tlclwiXG4gID5cbiAgICA8c2t5LWlucHV0LWJveD5cbiAgICAgIDxsYWJlbFxuICAgICAgICBjbGFzcz1cInNreS1jb250cm9sLWxhYmVsXCJcbiAgICAgICAgW2F0dHIuZm9yXT1cImRhdGVSYW5nZVBpY2tlcklkICsgJy1lbmQtZGF0ZSdcIlxuICAgICAgICBbbmdDbGFzc109XCJ7ICdza3ktY29udHJvbC1sYWJlbC1yZXF1aXJlZCcgOiBlbmREYXRlUmVxdWlyZWQgfVwiXG4gICAgICA+XG4gICAgICAgIHt7IGVuZERhdGVMYWJlbFJlc291cmNlS2V5IHwgc2t5TGliUmVzb3VyY2VzIH19XG4gICAgICA8L2xhYmVsPlxuXG4gICAgICA8c2t5LWRhdGVwaWNrZXI+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImVuZERhdGVcIlxuICAgICAgICAgIHNreURhdGVwaWNrZXJJbnB1dFxuICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiZW5kRGF0ZUxhYmVsUmVzb3VyY2VLZXkgfCBza3lMaWJSZXNvdXJjZXNcIlxuICAgICAgICAgIFthdHRyLmlkXT1cImRhdGVSYW5nZVBpY2tlcklkICsgJy1lbmQtZGF0ZSdcIlxuICAgICAgICAgIFthdHRyLnBsYWNlaG9sZGVyXT1cImRhdGVGb3JtYXRcIlxuICAgICAgICAgIFtkYXRlRm9ybWF0XT1cImRhdGVGb3JtYXRcIlxuICAgICAgICAgIFtyZXF1aXJlZF09XCJlbmREYXRlUmVxdWlyZWRcIlxuICAgICAgICAgIChibHVyKT1cIm9uRmllbGRCbHVyKClcIlxuICAgICAgICAvPlxuICAgICAgPC9za3ktZGF0ZXBpY2tlcj5cbiAgICA8L3NreS1pbnB1dC1ib3g+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
460
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1yYW5nZS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0ZXRpbWUvc3JjL21vZHVsZXMvZGF0ZS1yYW5nZS1waWNrZXIvZGF0ZS1yYW5nZS1waWNrZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0ZXRpbWUvc3JjL21vZHVsZXMvZGF0ZS1yYW5nZS1waWNrZXIvZGF0ZS1yYW5nZS1waWNrZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLEtBQUssRUFJTCxRQUFRLEVBRVQsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUlMLFdBQVcsRUFFWCxhQUFhLEVBQ2IsaUJBQWlCLEVBR2xCLE1BQU0sZ0JBQWdCLENBQUM7QUFjeEIsT0FBTyxFQUNMLGFBQWEsRUFDYixPQUFPLEVBQ1IsTUFBTSxNQUFNLENBQUM7QUFFZCxPQUFPLEVBQ0wsb0JBQW9CLEVBQ3BCLEtBQUssRUFDTCxTQUFTLEVBQ1YsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2pCLE1BQU0sOEJBQThCLENBQUM7QUFNdEMsT0FBTyxFQUNMLHdCQUF3QixFQUN6QixNQUFNLGtDQUFrQyxDQUFDO0FBRTFDLE9BQU8sRUFDTCwwQkFBMEIsRUFDM0IsTUFBTSxvQ0FBb0MsQ0FBQzs7Ozs7Ozs7Ozs7QUFVNUMseURBQXlEO0FBQ3pELE1BQU0sb0NBQW9DLEdBQUc7SUFDM0MsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLDJCQUEyQixDQUFDO0lBQzFELEtBQUssRUFBRSxJQUFJO0NBQ1osQ0FBQztBQUVGLE1BQU0sK0JBQStCLEdBQUc7SUFDdEMsT0FBTyxFQUFFLGFBQWE7SUFDdEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQywyQkFBMkIsQ0FBQztJQUMxRCxLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUM7QUFDRixtQkFBbUI7QUFFbkIsSUFBSSxRQUFRLEdBQUcsQ0FBQyxDQUFDO0FBRWpCOzs7Ozs7Ozs7R0FTRztBQVdILE1BQU0sT0FBTywyQkFBMkI7SUF3S3RDLFlBQ1UsY0FBaUMsRUFDakMsZ0JBQXFDLEVBQ3JDLFdBQXdCLEVBQ3hCLGNBQW9DLEVBQ3BDLFNBQTBCLEVBQ3RCLFFBQTBCO1FBTDlCLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQUNqQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQXFCO1FBQ3JDLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLG1CQUFjLEdBQWQsY0FBYyxDQUFzQjtRQUNwQyxjQUFTLEdBQVQsU0FBUyxDQUFpQjtRQXZGcEM7OztXQUdHO1FBRUksc0JBQWlCLEdBQVksS0FBSyxDQUFDO1FBRTFDOzs7V0FHRztRQUVJLG9CQUFlLEdBQVksS0FBSyxDQUFDO1FBc0J4QixzQkFBaUIsR0FBRyx5QkFBeUIsUUFBUSxFQUFFLEVBQUUsQ0FBQztRQUluRSxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2hCLHNCQUFpQixHQUFHLEtBQUssQ0FBQztRQUMxQix3QkFBbUIsR0FBRyxLQUFLLENBQUM7UUFtQzNCLGtCQUFhLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUlwQyxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBb1YxQiwwQkFBMEI7UUFDbEIsYUFBUSxHQUFHLENBQUMsQ0FBMEIsRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZELDBCQUEwQjtRQUNsQixjQUFTLEdBQUcsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQzlCLDBCQUEwQjtRQUNsQixzQkFBaUIsR0FBRyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7UUE5VXBDLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFO2FBQ2hDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO2FBQ25DLFNBQVMsQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO1lBQ3hCLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDOUMsSUFBSSxDQUFDLHdCQUF3QixHQUFHLGdCQUFnQixDQUFDLDJCQUEyQixFQUFFLENBQUM7UUFDakYsQ0FBQyxDQUFDLENBQUM7UUFFTCxtQ0FBbUM7UUFDbkMsMEJBQTBCO1FBQzFCLFFBQVEsYUFBUixRQUFRLHVCQUFSLFFBQVEsQ0FBRSxjQUFjLENBQ3JCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUNsQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUEzTEQ7Ozs7T0FJRztJQUNILElBQ1csYUFBYSxDQUFDLEtBQWlDO1FBQ3hELElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO0lBQzlCLENBQUM7SUFFRCxJQUFXLGFBQWE7UUFDdEIsT0FBTyxJQUFJLENBQUMsY0FBYyxJQUFJO1lBQzVCLHdCQUF3QixDQUFDLE9BQU87WUFDaEMsd0JBQXdCLENBQUMsTUFBTTtZQUMvQix3QkFBd0IsQ0FBQyxLQUFLO1lBQzlCLHdCQUF3QixDQUFDLGFBQWE7WUFDdEMsd0JBQXdCLENBQUMsU0FBUztZQUNsQyx3QkFBd0IsQ0FBQyxLQUFLO1lBQzlCLHdCQUF3QixDQUFDLFFBQVE7WUFDakMsd0JBQXdCLENBQUMsUUFBUTtZQUNqQyx3QkFBd0IsQ0FBQyxRQUFRO1lBQ2pDLHdCQUF3QixDQUFDLFFBQVE7WUFDakMsd0JBQXdCLENBQUMsU0FBUztZQUNsQyx3QkFBd0IsQ0FBQyxTQUFTO1lBQ2xDLHdCQUF3QixDQUFDLFNBQVM7WUFDbEMsd0JBQXdCLENBQUMsV0FBVztZQUNwQyx3QkFBd0IsQ0FBQyxXQUFXO1lBQ3BDLHdCQUF3QixDQUFDLFdBQVc7WUFDcEMsd0JBQXdCLENBQUMsZ0JBQWdCO1lBQ3pDLHdCQUF3QixDQUFDLGdCQUFnQjtZQUN6Qyx3QkFBd0IsQ0FBQyxnQkFBZ0I7WUFDekMsd0JBQXdCLENBQUMsY0FBYztZQUN2Qyx3QkFBd0IsQ0FBQyxjQUFjO1lBQ3ZDLHdCQUF3QixDQUFDLGNBQWM7U0FDeEMsQ0FBQztJQUNKLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxJQUNXLFVBQVUsQ0FBQyxLQUFhO1FBQ2pDLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO0lBQzNCLENBQUM7SUFFRCxJQUFXLFVBQVU7UUFDbkIsT0FBTyxJQUFJLENBQUMsV0FBVyxJQUFJLElBQUksQ0FBQyx3QkFBd0IsQ0FBQztJQUMzRCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFDVyxRQUFRLENBQUMsS0FBYztRQUNoQyxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUV2QixJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDbEIsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO2dCQUNsQixJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDO2FBQzFCO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUM7YUFDekI7U0FDRjtRQUVELElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVELElBQVcsUUFBUTtRQUNqQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQXVCRCxJQUFXLHlCQUF5QjtRQUNsQyxJQUFJLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEtBQUssMEJBQTBCLENBQUMsS0FBSyxFQUFFO1lBQ3JFLE9BQU8sMENBQTBDLENBQUM7U0FDbkQ7UUFFRCxPQUFPLDBDQUEwQyxDQUFDO0lBQ3BELENBQUM7SUFFRCxJQUFXLHVCQUF1QjtRQUNoQyxJQUFJLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEtBQUssMEJBQTBCLENBQUMsS0FBSyxFQUFFO1lBQ3JFLE9BQU8sd0NBQXdDLENBQUM7U0FDakQ7UUFFRCxPQUFPLDJDQUEyQyxDQUFDO0lBQ3JELENBQUM7SUFFRCxJQUFXLGtCQUFrQjtRQUMzQixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFVRCxJQUFZLG1CQUFtQjtRQUM3QixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxJQUFZLGlCQUFpQjtRQUMzQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVELElBQVksWUFBWTtRQUN0QixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMzQyxDQUFDO0lBRUQsSUFBWSxjQUFjO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELElBQVksZ0JBQWdCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELElBQVksS0FBSztRQUNmLElBQ0UsSUFBSSxDQUFDLE1BQU07WUFDWCxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksS0FBSyxTQUFTLEVBQ3RDO1lBQ0EsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO1NBQ3BCO1FBRUQsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzNCLENBQUM7SUFtQ00sUUFBUTtRQUNiLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUVsQixJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQ2pDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBRXpCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1lBRXBCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1lBQzNCLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1lBRTlCLDZFQUE2RTtZQUM3RSwyRUFBMkU7WUFDM0UsbUVBQW1FO1lBQ25FLE1BQU0sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztZQUMxQyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztZQUMxRSxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxZQUFZLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRTdELElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBRS9CLGdEQUFnRDtZQUNoRCxrRkFBa0Y7WUFDbEYsdURBQXVEO1lBQ3ZELDBCQUEwQjtZQUMxQixJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7Z0JBQ2hCLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7b0JBQ2hDLFNBQVMsRUFBRSxLQUFLO2lCQUNqQixDQUFDLENBQUM7YUFDSjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLFdBQVcsQ0FBQyxPQUFzQjtRQUN2QyxJQUNFLE9BQU8sQ0FBQyxhQUFhO1lBQ3JCLE9BQU8sQ0FBQyxhQUFhLENBQUMsV0FBVyxLQUFLLEtBQUssRUFDM0M7WUFDQSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUNqQyxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDO2dCQUUxQyx5RUFBeUU7Z0JBQ3pFLDJCQUEyQjtnQkFDM0IsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxVQUFVLEVBQUUsRUFBRTtvQkFDakQsT0FBTyxDQUFDLFVBQVUsQ0FBQyxZQUFZLEtBQUssRUFBRSxDQUFDLENBQUM7Z0JBQzFDLENBQUMsQ0FBQyxDQUFDO2dCQUVILDBCQUEwQjtnQkFDMUIsSUFBSSxDQUFDLEtBQUssRUFBRTtvQkFDVixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxFQUFFLENBQUM7b0JBQ25ELElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7b0JBQ3hCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztvQkFDbkMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7aUJBQy9CO1lBQ0gsQ0FBQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDMUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVNLFVBQVUsQ0FBQyxLQUE4QjtRQUU5QyxzRUFBc0U7UUFDdEUsTUFBTSxZQUFZLEdBQUcsS0FBSyxDQUFDO1FBRTNCLGlGQUFpRjtRQUNqRixJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxZQUFZLENBQUMsQ0FBQztRQUVuQyxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFFaEIsNkNBQTZDO1lBQzdDLCtCQUErQjtZQUMvQixJQUFJLENBQUMsS0FBSyxFQUFFO2dCQUNWLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO2FBQ2xDO1lBRUQsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7WUFDM0IsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7U0FDL0I7SUFDSCxDQUFDO0lBRU0sUUFBUSxDQUFDLE9BQXdCO1FBQ3RDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2pCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1NBQ3hCO1FBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDakIsT0FBTztTQUNSO1FBRUQsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQztRQUM1QixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUM7UUFDM0MsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUV2RCxJQUFJLE1BQXdCLENBQUM7UUFFN0IsSUFBSSxNQUFNLEVBQUU7WUFDVixNQUFNLEdBQUc7Z0JBQ1AsWUFBWSxFQUFFO29CQUNaLFlBQVksRUFBRSxTQUFTLENBQUMsS0FBSztvQkFDN0IsTUFBTSxFQUFFLE1BQU07aUJBQ2Y7YUFDRixDQUFDO1NBQ0g7YUFBTTtZQUNMLE1BQU0sR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDO1NBQ3JFO1FBRUQsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNYLDZDQUE2QztZQUM3QywyQ0FBMkM7WUFDM0MsU0FBUyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUMxQixPQUFPO1NBQ1I7UUFFRCxTQUFTLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzVCLFNBQVMsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUMxQixTQUFTLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFeEIsd0VBQXdFO1FBQ3hFLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLENBQUM7UUFFN0IseUNBQXlDO1FBQ3pDLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFbkMsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVNLGdCQUFnQixDQUFDLEVBQStEO1FBQ3JGLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFTSxpQkFBaUIsQ0FBQyxFQUFpQztRQUN4RCxJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRU0seUJBQXlCLENBQUMsRUFBYztRQUM3QyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFTSxnQkFBZ0IsQ0FBQyxRQUFpQjtRQUN2QyxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUMzQixDQUFDO0lBRU8sUUFBUSxDQUFDLEtBQThCLEVBQUUsWUFBWSxHQUFHLElBQUk7UUFDbEUsTUFBTSxVQUFVLEdBQUcsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFN0QsSUFBSSxVQUFVLEVBQUU7WUFDZCxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztZQUVwQixJQUFJLFlBQVksRUFBRTtnQkFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDM0I7U0FDRjtJQUNILENBQUM7SUFFTyxVQUFVLENBQUMsS0FBVTtRQUMzQixNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRXRELElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUVPLFVBQVU7UUFDaEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztZQUN0QyxZQUFZLEVBQUUsSUFBSSxXQUFXLEVBQUU7WUFDL0IsU0FBUyxFQUFFLElBQUksV0FBVyxFQUFFO1lBQzVCLE9BQU8sRUFBRSxJQUFJLFdBQVcsRUFBRTtTQUMzQixDQUFDLENBQUM7UUFFSCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUMxQjtJQUNILENBQUM7SUFFTyxzQkFBc0I7UUFDNUIsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDO1FBRTNDLElBQUksaUJBQWlCLEdBQUcsS0FBSyxDQUFDO1FBQzlCLElBQUksbUJBQW1CLEdBQUcsS0FBSyxDQUFDO1FBRWhDLFFBQVEsVUFBVSxDQUFDLElBQUksRUFBRTtZQUN2QixLQUFLLDBCQUEwQixDQUFDLE1BQU07Z0JBQ3BDLGlCQUFpQixHQUFHLElBQUksQ0FBQztnQkFDekIsTUFBTTtZQUVSLEtBQUssMEJBQTBCLENBQUMsS0FBSztnQkFDbkMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO2dCQUMzQixNQUFNO1lBRVIsS0FBSywwQkFBMEIsQ0FBQyxLQUFLO2dCQUNuQyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7Z0JBQ3pCLG1CQUFtQixHQUFHLElBQUksQ0FBQztnQkFDM0IsTUFBTTtZQUVSO2dCQUNFLE1BQU07U0FDVDtRQUVELElBQUksQ0FBQyxpQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQztRQUMzQyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsbUJBQW1CLENBQUM7UUFDL0MsSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRU8sbUJBQW1CLENBQUMsS0FBK0I7UUFDekQsZ0VBQWdFO1FBQ2hFLGlGQUFpRjtRQUNqRiw0RkFBNEY7UUFDNUYsMEVBQTBFO1FBQzFFLDBDQUEwQztRQUMxQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FDbEIsS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQ25CO1lBQ0UsU0FBUyxFQUFFLEtBQUs7U0FDakIsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVPLGlCQUFpQjtRQUN2QixzQ0FBc0M7UUFDdEMsNENBQTRDO1FBQzFDLGFBQWEsQ0FBQztZQUNaLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhO1lBQ25DLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYTtTQUNsQyxDQUFDO2FBQ0QsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO2FBQ2IsU0FBUyxDQUFDLENBQUMsTUFBZ0IsRUFBRSxFQUFFO1lBQzlCLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRTtnQkFDbEMsMkNBQTJDO2dCQUMzQyxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFO29CQUMxQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztnQkFDM0IsQ0FBQyxDQUFDLENBQUM7YUFDSjtRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUwsd0NBQXdDO1FBQ3hDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxZQUFZO2FBQ2xDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO2FBQ25DLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ25CLE1BQU0sRUFBRSxHQUFHLFFBQVEsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDL0Isb0VBQW9FO1lBQ3BFLDRDQUE0QztZQUM1QyxpRUFBaUU7WUFDakUsMEJBQTBCO1lBQzFCLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUU7Z0JBQ2QsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUM5QyxNQUFNLFFBQVEsR0FBRyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBRXZDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQ3hCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDbkMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7YUFDL0I7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVMLHNDQUFzQztRQUN0QyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsWUFBWTthQUMvQixJQUFJLENBQ0gsb0JBQW9CLEVBQUUsRUFDdEIsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FDOUI7YUFDQSxTQUFTLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRTtZQUN2QixJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztRQUNqQyxDQUFDLENBQUMsQ0FBQztRQUVMLG9DQUFvQztRQUNwQyxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVk7YUFDN0IsSUFBSSxDQUNILG9CQUFvQixFQUFFLEVBQ3RCLFNBQVMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQzlCO2FBQ0EsU0FBUyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDckIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDL0IsQ0FBQyxDQUFDLENBQUM7UUFFSCx1RUFBdUU7UUFDdkUsYUFBYSxDQUFDO1lBQ1osSUFBSSxDQUFDLGdCQUFnQixDQUFDLGFBQWE7WUFDbkMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhO1NBQ2xDLENBQUM7YUFDRCxJQUFJLENBQ0gsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FDOUI7YUFDQSxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTyxpQkFBaUI7UUFDdkIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCO2FBQ3pCLGNBQWMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDO2FBQ2xDLElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFFO1lBQ3BCLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1lBQy9CLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDckMsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8saUJBQWlCLENBQUMsRUFBNEI7UUFDcEQsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO1lBQzFDLE9BQU8sVUFBVSxDQUFDLFlBQVksS0FBSyxFQUFFLENBQUM7UUFDeEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sZUFBZSxDQUNyQixNQUErQixFQUMvQixNQUErQjtRQUUvQixPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsS0FBSyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDN0QsQ0FBQzs7eUhBdmZVLDJCQUEyQjs2R0FBM0IsMkJBQTJCLHdPQU4zQjtRQUNULG9DQUFvQztRQUNwQywrQkFBK0I7S0FDaEMsK0NDekdILHVnRkFxRkE7NEZEdUJhLDJCQUEyQjtrQkFWdkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxXQUFXLEVBQUUsb0NBQW9DO29CQUNqRCxTQUFTLEVBQUUsQ0FBQyxvQ0FBb0MsQ0FBQztvQkFDakQsU0FBUyxFQUFFO3dCQUNULG9DQUFvQzt3QkFDcEMsK0JBQStCO3FCQUNoQztvQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQ7OzBCQStLSSxRQUFROzRDQXJLQSxhQUFhO3NCQUR2QixLQUFLO2dCQXdDSyxVQUFVO3NCQURwQixLQUFLO2dCQWNLLFFBQVE7c0JBRGxCLEtBQUs7Z0JBd0JDLEtBQUs7c0JBRFgsS0FBSztnQkFRQyxpQkFBaUI7c0JBRHZCLEtBQUs7Z0JBUUMsZUFBZTtzQkFEckIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBmb3J3YXJkUmVmLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3B0aW9uYWwsXG4gIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7XG4gIEFic3RyYWN0Q29udHJvbCxcbiAgQ29udHJvbFZhbHVlQWNjZXNzb3IsXG4gIEZvcm1CdWlsZGVyLFxuICBGb3JtQ29udHJvbCxcbiAgRm9ybUdyb3VwLFxuICBOR19WQUxJREFUT1JTLFxuICBOR19WQUxVRV9BQ0NFU1NPUixcbiAgVmFsaWRhdGlvbkVycm9ycyxcbiAgVmFsaWRhdG9yXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHtcbiAgU2t5QXBwV2luZG93UmVmXG59IGZyb20gJ0Bza3l1eC9jb3JlJztcblxuaW1wb3J0IHtcbiAgU2t5QXBwTG9jYWxlUHJvdmlkZXJcbn0gZnJvbSAnQHNreXV4L2kxOG4nO1xuXG5pbXBvcnQge1xuICBTa3lUaGVtZVNlcnZpY2Vcbn0gZnJvbSAnQHNreXV4L3RoZW1lJztcblxuaW1wb3J0IHtcbiAgY29tYmluZUxhdGVzdCxcbiAgU3ViamVjdFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gIGZpcnN0LFxuICB0YWtlVW50aWxcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1xuICBTa3lEYXRlRm9ybWF0dGVyXG59IGZyb20gJy4uL2RhdGVwaWNrZXIvZGF0ZS1mb3JtYXR0ZXInO1xuXG5pbXBvcnQge1xuICBTa3lEYXRlUmFuZ2VDYWxjdWxhdGlvblxufSBmcm9tICcuL3R5cGVzL2RhdGUtcmFuZ2UtY2FsY3VsYXRpb24nO1xuXG5pbXBvcnQge1xuICBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9ySWRcbn0gZnJvbSAnLi90eXBlcy9kYXRlLXJhbmdlLWNhbGN1bGF0b3ItaWQnO1xuXG5pbXBvcnQge1xuICBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9yVHlwZVxufSBmcm9tICcuL3R5cGVzL2RhdGUtcmFuZ2UtY2FsY3VsYXRvci10eXBlJztcblxuaW1wb3J0IHtcbiAgU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvclxufSBmcm9tICcuL3R5cGVzL2RhdGUtcmFuZ2UtY2FsY3VsYXRvcic7XG5cbmltcG9ydCB7XG4gIFNreURhdGVSYW5nZVNlcnZpY2Vcbn0gZnJvbSAnLi9kYXRlLXJhbmdlLnNlcnZpY2UnO1xuXG4vKiB0c2xpbnQ6ZGlzYWJsZTpuby1mb3J3YXJkLXJlZiBuby11c2UtYmVmb3JlLWRlY2xhcmUgKi9cbmNvbnN0IFNLWV9EQVRFX1JBTkdFX1BJQ0tFUl9WQUxVRV9BQ0NFU1NPUiA9IHtcbiAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFNreURhdGVSYW5nZVBpY2tlckNvbXBvbmVudCksXG4gIG11bHRpOiB0cnVlXG59O1xuXG5jb25zdCBTS1lfREFURV9SQU5HRV9QSUNLRVJfVkFMSURBVE9SID0ge1xuICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBTa3lEYXRlUmFuZ2VQaWNrZXJDb21wb25lbnQpLFxuICBtdWx0aTogdHJ1ZVxufTtcbi8qIHRzbGludDplbmFibGUgKi9cblxubGV0IHVuaXF1ZUlkID0gMDtcblxuLyoqXG4gKiBBY3RzIGFzIGEgZm9ybSBjb250cm9sIHdpdGggYSBmb3JtIG1vZGVsIG9mIHR5cGUgYFNreURhdGVSYW5nZUNhbGN1bGF0aW9uYC5cbiAqIEBleGFtcGxlXG4gKiBgYGBcbiAqIDxza3ktZGF0ZS1yYW5nZS1waWNrZXJcbiAqICAgZm9ybUNvbnRyb2xOYW1lPVwibXlQaWNrZXJcIlxuICogPlxuICogPC9za3ktZGF0ZS1yYW5nZS1waWNrZXI+XG4gKiBgYGBcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LWRhdGUtcmFuZ2UtcGlja2VyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGUtcmFuZ2UtcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGF0ZS1yYW5nZS1waWNrZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgU0tZX0RBVEVfUkFOR0VfUElDS0VSX1ZBTFVFX0FDQ0VTU09SLFxuICAgIFNLWV9EQVRFX1JBTkdFX1BJQ0tFUl9WQUxJREFUT1JcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgU2t5RGF0ZVJhbmdlUGlja2VyQ29tcG9uZW50XG4gIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgQ29udHJvbFZhbHVlQWNjZXNzb3IsIFZhbGlkYXRvciB7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyBJRHMgZm9yIHRoZSBkYXRlIHJhbmdlIG9wdGlvbnMgdG8gaW5jbHVkZSBpbiB0aGUgcGlja2VyJ3MgZHJvcGRvd24uXG4gICAqIFRoZSBvcHRpb25zIHNwZWNpZnkgY2FsY3VsYXRvciBvYmplY3RzIHRoYXQgcmV0dXJuIHR3byBgRGF0ZWAgb2JqZWN0cyB0byByZXByZXNlbnQgZGF0ZSByYW5nZXMuXG4gICAqIEJ5IGRlZmF1bHQsIHRoaXMgcHJvcGVydHkgaW5jbHVkZXMgYWxsIGBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9ySWRgIHZhbHVlcy5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgY2FsY3VsYXRvcklkcyh2YWx1ZTogU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvcklkW10pIHtcbiAgICB0aGlzLl9jYWxjdWxhdG9ySWRzID0gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGNhbGN1bGF0b3JJZHMoKTogU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvcklkW10ge1xuICAgIHJldHVybiB0aGlzLl9jYWxjdWxhdG9ySWRzIHx8IFtcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5BbnlUaW1lLFxuICAgICAgU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvcklkLkJlZm9yZSxcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5BZnRlcixcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5TcGVjaWZpY1JhbmdlLFxuICAgICAgU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvcklkLlllc3RlcmRheSxcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5Ub2RheSxcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5Ub21vcnJvdyxcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5MYXN0V2VlayxcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5UaGlzV2VlayxcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5OZXh0V2VlayxcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5MYXN0TW9udGgsXG4gICAgICBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9ySWQuVGhpc01vbnRoLFxuICAgICAgU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvcklkLk5leHRNb250aCxcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5MYXN0UXVhcnRlcixcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5UaGlzUXVhcnRlcixcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5OZXh0UXVhcnRlcixcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5MYXN0Q2FsZW5kYXJZZWFyLFxuICAgICAgU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvcklkLlRoaXNDYWxlbmRhclllYXIsXG4gICAgICBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9ySWQuTmV4dENhbGVuZGFyWWVhcixcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5MYXN0RmlzY2FsWWVhcixcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5UaGlzRmlzY2FsWWVhcixcbiAgICAgIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZC5OZXh0RmlzY2FsWWVhclxuICAgIF07XG4gIH1cblxuICAvKipcbiAgICogU3BlY2lmaWVzIGEgZGF0ZSBmb3JtYXQgZm9yXG4gICAqIFt0aGUgYHNreS1kYXRlcGlja2VyYCBjb21wb25lbnRzXShodHRwczovL2RldmVsb3Blci5ibGFja2JhdWQuY29tL3NreXV4L2NvbXBvbmVudHMvZGF0ZXBpY2tlcilcbiAgICogdGhhdCBtYWtlIHVwIHRoZSBkYXRlIHJhbmdlIHBpY2tlci4gVGhlIHRleHQgaW5wdXQgaXMgYSBjb21wb3NpdGUgY29tcG9uZW50IG9mXG4gICAqIHVwIHRvIHR3byBgc2t5LWRhdGVwaWNrZXJgIGNvbXBvbmVudHMuXG4gICAqIEBkZWZhdWx0IE1NL0REL1lZWVlcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZGF0ZUZvcm1hdCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fZGF0ZUZvcm1hdCA9IHZhbHVlO1xuICB9XG5cbiAgcHVibGljIGdldCBkYXRlRm9ybWF0KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2RhdGVGb3JtYXQgfHwgdGhpcy5wcmVmZXJyZWRTaG9ydERhdGVGb3JtYXQ7XG4gIH1cblxuICAvKipcbiAgICogSW5kaWNhdGVzIHdoZXRoZXIgdG8gZGlzYWJsZSB0aGUgZGF0ZSByYW5nZSBwaWNrZXIuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZGlzYWJsZWQgPSB2YWx1ZTtcblxuICAgIGlmICh0aGlzLmZvcm1Hcm91cCkge1xuICAgICAgaWYgKHRoaXMuX2Rpc2FibGVkKSB7XG4gICAgICAgIHRoaXMuZm9ybUdyb3VwLmRpc2FibGUoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuZm9ybUdyb3VwLmVuYWJsZSgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgYSBsYWJlbCBmb3IgdGhlIGRhdGUgcmFuZ2UgcGlja2VyLlxuICAgKiBAcmVxdWlyZWRcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBsYWJlbDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0byByZXF1aXJlIHVzZXJzIHRvIHNwZWNpZnkgYSBzdGFydCBkYXRlLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHN0YXJ0RGF0ZVJlcXVpcmVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyB3aGV0aGVyIHRvIHJlcXVpcmUgdXNlcnMgdG8gc3BlY2lmeSBhIGVuZCBkYXRlLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGVuZERhdGVSZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHB1YmxpYyBnZXQgc3RhcnREYXRlTGFiZWxSZXNvdXJjZUtleSgpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLnNlbGVjdGVkQ2FsY3VsYXRvci50eXBlID09PSBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9yVHlwZS5SYW5nZSkge1xuICAgICAgcmV0dXJuICdza3l1eF9kYXRlX3JhbmdlX3BpY2tlcl9zdGFydF9kYXRlX2xhYmVsJztcbiAgICB9XG5cbiAgICByZXR1cm4gJ3NreXV4X2RhdGVfcmFuZ2VfcGlja2VyX2FmdGVyX2RhdGVfbGFiZWwnO1xuICB9XG5cbiAgcHVibGljIGdldCBlbmREYXRlTGFiZWxSZXNvdXJjZUtleSgpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLnNlbGVjdGVkQ2FsY3VsYXRvci50eXBlID09PSBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9yVHlwZS5SYW5nZSkge1xuICAgICAgcmV0dXJuICdza3l1eF9kYXRlX3JhbmdlX3BpY2tlcl9lbmRfZGF0ZV9sYWJlbCc7XG4gICAgfVxuXG4gICAgcmV0dXJuICdza3l1eF9kYXRlX3JhbmdlX3BpY2tlcl9iZWZvcmVfZGF0ZV9sYWJlbCc7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNlbGVjdGVkQ2FsY3VsYXRvcigpOiBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9yIHtcbiAgICByZXR1cm4gdGhpcy5nZXRDYWxjdWxhdG9yQnlJZCh0aGlzLnZhbHVlLmNhbGN1bGF0b3JJZCk7XG4gIH1cblxuICBwdWJsaWMgcmVhZG9ubHkgZGF0ZVJhbmdlUGlja2VySWQgPSBgc2t5LWRhdGUtcmFuZ2UtcGlja2VyLSR7dW5pcXVlSWQrK31gO1xuXG4gIHB1YmxpYyBjYWxjdWxhdG9yczogU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvcltdO1xuICBwdWJsaWMgZm9ybUdyb3VwOiBGb3JtR3JvdXA7XG4gIHB1YmxpYyBpc1JlYWR5ID0gZmFsc2U7XG4gIHB1YmxpYyBzaG93RW5kRGF0ZVBpY2tlciA9IGZhbHNlO1xuICBwdWJsaWMgc2hvd1N0YXJ0RGF0ZVBpY2tlciA9IGZhbHNlO1xuXG4gIHByaXZhdGUgZ2V0IGNhbGN1bGF0b3JJZENvbnRyb2woKTogQWJzdHJhY3RDb250cm9sIHtcbiAgICByZXR1cm4gdGhpcy5mb3JtR3JvdXAuZ2V0KCdjYWxjdWxhdG9ySWQnKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGRlZmF1bHRDYWxjdWxhdG9yKCk6IFNreURhdGVSYW5nZUNhbGN1bGF0b3Ige1xuICAgIHJldHVybiB0aGlzLmNhbGN1bGF0b3JzWzBdO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgZGVmYXVsdFZhbHVlKCk6IFNreURhdGVSYW5nZUNhbGN1bGF0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5kZWZhdWx0Q2FsY3VsYXRvci5nZXRWYWx1ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgZW5kRGF0ZUNvbnRyb2woKTogQWJzdHJhY3RDb250cm9sIHtcbiAgICByZXR1cm4gdGhpcy5mb3JtR3JvdXAuZ2V0KCdlbmREYXRlJyk7XG4gIH1cblxuICBwcml2YXRlIGdldCBzdGFydERhdGVDb250cm9sKCk6IEFic3RyYWN0Q29udHJvbCB7XG4gICAgcmV0dXJuIHRoaXMuZm9ybUdyb3VwLmdldCgnc3RhcnREYXRlJyk7XG4gIH1cblxuICBwcml2YXRlIGdldCB2YWx1ZSgpOiBTa3lEYXRlUmFuZ2VDYWxjdWxhdGlvbiB7XG4gICAgaWYgKFxuICAgICAgdGhpcy5fdmFsdWUgJiZcbiAgICAgIHRoaXMuX3ZhbHVlLmNhbGN1bGF0b3JJZCAhPT0gdW5kZWZpbmVkXG4gICAgKSB7XG4gICAgICByZXR1cm4gdGhpcy5fdmFsdWU7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuZGVmYXVsdFZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSBjb250cm9sOiBBYnN0cmFjdENvbnRyb2w7XG4gIHByaXZhdGUgcHJlZmVycmVkU2hvcnREYXRlRm9ybWF0OiBzdHJpbmc7XG4gIHByaXZhdGUgbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgcHJpdmF0ZSBfY2FsY3VsYXRvcklkczogU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvcklkW107XG4gIHByaXZhdGUgX2RhdGVGb3JtYXQ6IHN0cmluZztcbiAgcHJpdmF0ZSBfZGlzYWJsZWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfdmFsdWU6IFNreURhdGVSYW5nZUNhbGN1bGF0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgZGF0ZVJhbmdlU2VydmljZTogU2t5RGF0ZVJhbmdlU2VydmljZSxcbiAgICBwcml2YXRlIGZvcm1CdWlsZGVyOiBGb3JtQnVpbGRlcixcbiAgICBwcml2YXRlIGxvY2FsZVByb3ZpZGVyOiBTa3lBcHBMb2NhbGVQcm92aWRlcixcbiAgICBwcml2YXRlIHdpbmRvd1JlZjogU2t5QXBwV2luZG93UmVmLFxuICAgIEBPcHRpb25hbCgpIHRoZW1lU3ZjPzogU2t5VGhlbWVTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMubG9jYWxlUHJvdmlkZXIuZ2V0TG9jYWxlSW5mbygpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoKGxvY2FsZUluZm8pID0+IHtcbiAgICAgICAgU2t5RGF0ZUZvcm1hdHRlci5zZXRMb2NhbGUobG9jYWxlSW5mby5sb2NhbGUpO1xuICAgICAgICB0aGlzLnByZWZlcnJlZFNob3J0RGF0ZUZvcm1hdCA9IFNreURhdGVGb3JtYXR0ZXIuZ2V0UHJlZmVycmVkU2hvcnREYXRlRm9ybWF0KCk7XG4gICAgICB9KTtcblxuICAgIC8vIFVwZGF0ZSBpY29ucyB3aGVuIHRoZW1lIGNoYW5nZXMuXG4gICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICB0aGVtZVN2Yz8uc2V0dGluZ3NDaGFuZ2VcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmNyZWF0ZUZvcm0oKTtcblxuICAgIHRoaXMudXBkYXRlQ2FsY3VsYXRvcnMoKS50aGVuKCgpID0+IHtcbiAgICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcnMoKTtcblxuICAgICAgdGhpcy5pc1JlYWR5ID0gdHJ1ZTtcblxuICAgICAgdGhpcy5yZXNldEZvcm1Hcm91cFZhbHVlKCk7XG4gICAgICB0aGlzLnNob3dSZWxldmFudEZvcm1GaWVsZHMoKTtcblxuICAgICAgLy8gRmlsbCBpbiBhbnkgdW5wcm92aWRlZCB2YWx1ZXMgYWZ0ZXIgdGhlIGNhbGN1bGF0b3JzIGhhdmUgYmVlbiBpbml0aWFsaXplZC5cbiAgICAgIC8vIEZvciBleGFtcGxlLCBpZiB0aGUgY29udHJvbCBpcyBpbml0aWFsaXplZCB3aXRoIG9ubHkgdGhlIGBjYWxjdWxhdG9ySWRgLFxuICAgICAgLy8gYWxsb3cgdGhlIGNhbGN1bGF0b3IgdG8gZmlsbCBpbiB0aGUgbWlzc2luZyBzdGFydCBhbmQgZW5kIGRhdGVzLlxuICAgICAgY29uc3QgeyBzdGFydERhdGUsIGVuZERhdGUgfSA9IHRoaXMudmFsdWU7XG4gICAgICBjb25zdCBkZWZhdWx0VmFsdWUgPSB0aGlzLnNlbGVjdGVkQ2FsY3VsYXRvci5nZXRWYWx1ZShzdGFydERhdGUsIGVuZERhdGUpO1xuICAgICAgY29uc3QgbmV3VmFsdWUgPSBPYmplY3QuYXNzaWduKHt9LCBkZWZhdWx0VmFsdWUsIHRoaXMudmFsdWUpO1xuXG4gICAgICB0aGlzLnNldFZhbHVlKG5ld1ZhbHVlLCBmYWxzZSk7XG5cbiAgICAgIC8vIFRoaXMgaXMgbmVlZGVkIHRvIGFkZHJlc3MgYSBidWcgaW4gQW5ndWxhciA0LlxuICAgICAgLy8gV2hlbiBhIGNvbnRyb2wgdmFsdWUgaXMgc2V0IGludGlhbGx5LCBpdHMgdmFsdWUgaXMgbm90IHJlcHJlc2VudGVkIG9uIHRoZSB2aWV3LlxuICAgICAgLy8gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2lzc3Vlcy8xMzc5MlxuICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgIGlmICh0aGlzLmNvbnRyb2wpIHtcbiAgICAgICAgdGhpcy5jb250cm9sLnNldFZhbHVlKHRoaXMudmFsdWUsIHtcbiAgICAgICAgICBlbWl0RXZlbnQ6IGZhbHNlXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoXG4gICAgICBjaGFuZ2VzLmNhbGN1bGF0b3JJZHMgJiZcbiAgICAgIGNoYW5nZXMuY2FsY3VsYXRvcklkcy5maXJzdENoYW5nZSA9PT0gZmFsc2VcbiAgICApIHtcbiAgICAgIHRoaXMudXBkYXRlQ2FsY3VsYXRvcnMoKS50aGVuKCgpID0+IHtcbiAgICAgICAgY29uc3QgaWQgPSB0aGlzLmNhbGN1bGF0b3JJZENvbnRyb2wudmFsdWU7XG5cbiAgICAgICAgLy8gTWFpbnRhaW4gdGhlIGN1cnJlbnRseSBzZWxlY3RlZCB2YWx1ZXMgaWYgdGhlIGNhbGN1bGF0b3JzIGNoYW5nZSBhZnRlclxuICAgICAgICAvLyBhIHZhbHVlIGhhcyBiZWVuIGNob3Nlbi5cbiAgICAgICAgY29uc3QgZm91bmQgPSB0aGlzLmNhbGN1bGF0b3JzLmZpbmQoKGNhbGN1bGF0b3IpID0+IHtcbiAgICAgICAgICByZXR1cm4gKGNhbGN1bGF0b3IuY2FsY3VsYXRvcklkID09PSBpZCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICAgIGlmICghZm91bmQpIHtcbiAgICAgICAgICBjb25zdCBuZXdWYWx1ZSA9IHRoaXMuZGVmYXVsdENhbGN1bGF0b3IuZ2V0VmFsdWUoKTtcbiAgICAgICAgICB0aGlzLnNldFZhbHVlKG5ld1ZhbHVlKTtcbiAgICAgICAgICB0aGlzLnJlc2V0Rm9ybUdyb3VwVmFsdWUobmV3VmFsdWUpO1xuICAgICAgICAgIHRoaXMuc2hvd1JlbGV2YW50Rm9ybUZpZWxkcygpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICB0aGlzLm5nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBvbkZpZWxkQmx1cigpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICB9XG5cbiAgcHVibGljIHdyaXRlVmFsdWUodmFsdWU6IFNreURhdGVSYW5nZUNhbGN1bGF0aW9uKTogdm9pZCB7XG5cbiAgICAvLyBPbmx5IHVwZGF0ZSB0aGUgdW5kZXJseWluZyBjb250cm9scyB3aGVuIHRoZSBjYWxjdWxhdG9ycyBhcmUgcmVhZHkuXG4gICAgY29uc3Qgbm90aWZ5Q2hhbmdlID0gZmFsc2U7XG5cbiAgICAvLyAoV2Ugc3RpbGwgbmVlZCB0byBzYXZlIHRoZSBpbml0aWFsIHZhbHVlIHNldCBieSB0aGUgY29uc3VtZXIncyBmb3JtLCBob3dldmVyLilcbiAgICB0aGlzLnNldFZhbHVlKHZhbHVlLCBub3RpZnlDaGFuZ2UpO1xuXG4gICAgaWYgKHRoaXMuaXNSZWFkeSkge1xuXG4gICAgICAvLyBXaGVuIHRoZSBjb250cm9sJ3MgdmFsdWUgaXMgc2V0IHRvIGBudWxsYCxcbiAgICAgIC8vIHNldCBpdCB0byB0aGUgZGVmYXVsdCB2YWx1ZS5cbiAgICAgIGlmICghdmFsdWUpIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLmRlZmF1bHRWYWx1ZSk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMucmVzZXRGb3JtR3JvdXBWYWx1ZSgpO1xuICAgICAgdGhpcy5zaG93UmVsZXZhbnRGb3JtRmllbGRzKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHZhbGlkYXRlKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMge1xuICAgIGlmICghdGhpcy5jb250cm9sKSB7XG4gICAgICB0aGlzLmNvbnRyb2wgPSBjb250cm9sO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5pc1JlYWR5KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgdmFsdWUgPSBjb250cm9sLnZhbHVlO1xuICAgIGNvbnN0IGlkQ29udHJvbCA9IHRoaXMuY2FsY3VsYXRvcklkQ29udHJvbDtcbiAgICBjb25zdCByZXN1bHQgPSB0aGlzLnNlbGVjdGVkQ2FsY3VsYXRvci52YWxpZGF0ZSh2YWx1ZSk7XG5cbiAgICBsZXQgZXJyb3JzOiBWYWxpZGF0aW9uRXJyb3JzO1xuXG4gICAgaWYgKHJlc3VsdCkge1xuICAgICAgZXJyb3JzID0ge1xuICAgICAgICBza3lEYXRlUmFuZ2U6IHtcbiAgICAgICAgICBjYWxjdWxhdG9ySWQ6IGlkQ29udHJvbC52YWx1ZSxcbiAgICAgICAgICBlcnJvcnM6IHJlc3VsdFxuICAgICAgICB9XG4gICAgICB9O1xuICAgIH0gZWxzZSB7XG4gICAgICBlcnJvcnMgPSB0aGlzLnN0YXJ0RGF0ZUNvbnRyb2wuZXJyb3JzIHx8IHRoaXMuZW5kRGF0ZUNvbnRyb2wuZXJyb3JzO1xuICAgIH1cblxuICAgIGlmICghZXJyb3JzKSB7XG4gICAgICAvLyBDbGVhciBhbnkgZXJyb3JzIG9uIHRoZSBjYWxjdWxhdG9yIHNlbGVjdC5cbiAgICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1udWxsLWtleXdvcmRcbiAgICAgIGlkQ29udHJvbC5zZXRFcnJvcnMobnVsbCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWRDb250cm9sLnNldEVycm9ycyhlcnJvcnMpO1xuICAgIGlkQ29udHJvbC5tYXJrQXNUb3VjaGVkKCk7XG4gICAgaWRDb250cm9sLm1hcmtBc0RpcnR5KCk7XG5cbiAgICAvLyBOZWVkIHRvIG1hcmsgdGhlIGNvbnRyb2wgYXMgdG91Y2hlZCBmb3IgdGhlIGVycm9yIG1lc3NhZ2VzIHRvIGFwcGVhci5cbiAgICB0aGlzLmNvbnRyb2wubWFya0FzVG91Y2hlZCgpO1xuXG4gICAgLy8gTm90aWZ5IHRoZSB2aWV3IHRvIGRpc3BsYXkgYW55IGVycm9ycy5cbiAgICB0aGlzLmNoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuXG4gICAgcmV0dXJuIGVycm9ycztcbiAgfVxuXG4gIHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKGZuOiAodmFsdWU6IFNreURhdGVSYW5nZUNhbGN1bGF0aW9uKSA9PiBTa3lEYXRlUmFuZ2VDYWxjdWxhdGlvbik6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gU2t5RGF0ZVJhbmdlQ2FsY3VsYXRpb24pOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgcHVibGljIHJlZ2lzdGVyT25WYWxpZGF0b3JDaGFuZ2UoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLm9uVmFsaWRhdG9yQ2hhbmdlID0gZm47XG4gIH1cblxuICBwdWJsaWMgc2V0RGlzYWJsZWRTdGF0ZShkaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBkaXNhYmxlZDtcbiAgfVxuXG4gIHByaXZhdGUgc2V0VmFsdWUodmFsdWU6IFNreURhdGVSYW5nZUNhbGN1bGF0aW9uLCBub3RpZnlDaGFuZ2UgPSB0cnVlKTogdm9pZCB7XG4gICAgY29uc3QgaXNOZXdWYWx1ZSA9ICF0aGlzLmRhdGVSYW5nZXNFcXVhbCh0aGlzLl92YWx1ZSwgdmFsdWUpO1xuXG4gICAgaWYgKGlzTmV3VmFsdWUpIHtcbiAgICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG5cbiAgICAgIGlmIChub3RpZnlDaGFuZ2UpIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHBhdGNoVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xuICAgIGNvbnN0IG5ld1ZhbHVlID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy52YWx1ZSwgdmFsdWUpO1xuXG4gICAgdGhpcy5zZXRWYWx1ZShuZXdWYWx1ZSk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUZvcm0oKTogdm9pZCB7XG4gICAgdGhpcy5mb3JtR3JvdXAgPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcbiAgICAgIGNhbGN1bGF0b3JJZDogbmV3IEZvcm1Db250cm9sKCksXG4gICAgICBzdGFydERhdGU6IG5ldyBGb3JtQ29udHJvbCgpLFxuICAgICAgZW5kRGF0ZTogbmV3IEZvcm1Db250cm9sKClcbiAgICB9KTtcblxuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICB0aGlzLmZvcm1Hcm91cC5kaXNhYmxlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzaG93UmVsZXZhbnRGb3JtRmllbGRzKCk6IHZvaWQge1xuICAgIGNvbnN0IGNhbGN1bGF0b3IgPSB0aGlzLnNlbGVjdGVkQ2FsY3VsYXRvcjtcblxuICAgIGxldCBzaG93RW5kRGF0ZVBpY2tlciA9IGZhbHNlO1xuICAgIGxldCBzaG93U3RhcnREYXRlUGlja2VyID0gZmFsc2U7XG5cbiAgICBzd2l0Y2ggKGNhbGN1bGF0b3IudHlwZSkge1xuICAgICAgY2FzZSBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9yVHlwZS5CZWZvcmU6XG4gICAgICAgIHNob3dFbmREYXRlUGlja2VyID0gdHJ1ZTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvclR5cGUuQWZ0ZXI6XG4gICAgICAgIHNob3dTdGFydERhdGVQaWNrZXIgPSB0cnVlO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9yVHlwZS5SYW5nZTpcbiAgICAgICAgc2hvd0VuZERhdGVQaWNrZXIgPSB0cnVlO1xuICAgICAgICBzaG93U3RhcnREYXRlUGlja2VyID0gdHJ1ZTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIGJyZWFrO1xuICAgIH1cblxuICAgIHRoaXMuc2hvd0VuZERhdGVQaWNrZXIgPSBzaG93RW5kRGF0ZVBpY2tlcjtcbiAgICB0aGlzLnNob3dTdGFydERhdGVQaWNrZXIgPSBzaG93U3RhcnREYXRlUGlja2VyO1xuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwcml2YXRlIHJlc2V0Rm9ybUdyb3VwVmFsdWUodmFsdWU/OiBTa3lEYXRlUmFuZ2VDYWxjdWxhdGlvbik6IHZvaWQge1xuICAgIC8vIERvIG5vdCBlbWl0IGEgdmFsdWUgY2hhbmdlIGV2ZW50IG9uIHRoZSB1bmRlcmx5aW5nIGZvcm0gZ3JvdXBcbiAgICAvLyBiZWNhdXNlIHdlJ3JlIGFscmVhZHkgd2F0Y2hpbmcgZm9yIGNoYW5nZXMgdGhhdCBhcmUgdHJpZ2dlcmVkIGJ5IHRoZSBlbmQgdXNlci5cbiAgICAvLyBGb3IgZXhhbXBsZSwgaWYgd2UgY2hhbmdlIHRoZSB2YWx1ZSBvZiB0aGUgZm9ybSBncm91cCBpbnRlcm5hbGx5LCB3ZSBkb24ndCB3YW50IHRoZSBldmVudFxuICAgIC8vIGxpc3RlbmVycyB0byBiZSB0cmlnZ2VyZWQsIGFzIHRob3NlIGFyZSByZXNlcnZlZCBmb3IgdXNlciBpbnRlcmFjdGlvbnMuXG4gICAgLy8gKFNlZSB0aGUgZXZlbnQgbGlzdGVuZXJzIGxpc3RlZCBiZWxvdy4pXG4gICAgdGhpcy5mb3JtR3JvdXAucmVzZXQoXG4gICAgICB2YWx1ZSB8fCB0aGlzLnZhbHVlLFxuICAgICAge1xuICAgICAgICBlbWl0RXZlbnQ6IGZhbHNlXG4gICAgICB9XG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgYWRkRXZlbnRMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgLy8gRGV0ZWN0IGVycm9ycyBmcm9tIHRoZSBkYXRlIHBpY2tlcnNcbiAgICAvLyB3aGVuIGNvbnRyb2wgaXMgaW5pdGlhbGl6ZWQgd2l0aCBhIHZhbHVlLlxuICAgICAgY29tYmluZUxhdGVzdChbXG4gICAgICAgIHRoaXMuc3RhcnREYXRlQ29udHJvbC5zdGF0dXNDaGFuZ2VzLFxuICAgICAgICB0aGlzLmVuZERhdGVDb250cm9sLnN0YXR1c0NoYW5nZXNcbiAgICAgIF0pXG4gICAgICAucGlwZShmaXJzdCgpKVxuICAgICAgLnN1YnNjcmliZSgoc3RhdHVzOiBzdHJpbmdbXSkgPT4ge1xuICAgICAgICBpZiAoc3RhdHVzLmluZGV4T2YoJ0lOVkFMSUQnKSA+IC0xKSB7XG4gICAgICAgICAgLy8gV2FpdCBmb3IgaW5pdGlhbCB2YWxpZGF0aW9uIHRvIGNvbXBsZXRlLlxuICAgICAgICAgIHRoaXMud2luZG93UmVmLm5hdGl2ZVdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMub25WYWxpZGF0b3JDaGFuZ2UoKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAvLyBXYXRjaCBmb3Igc2VsZWN0ZWQgY2FsY3VsYXRvciBjaGFuZ2UuXG4gICAgdGhpcy5jYWxjdWxhdG9ySWRDb250cm9sLnZhbHVlQ2hhbmdlc1xuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xuICAgICAgICBjb25zdCBpZCA9IHBhcnNlSW50KHZhbHVlLCAxMCk7XG4gICAgICAgIC8vIGlmIHRoZSBjb21wb25lbnQgaXMgZGlzYWJsZWQgZHVyaW5nIGZvcm0gY3JlYXRpb24sIG51bGwgaXMgcGFzc2VkXG4gICAgICAgIC8vIGFzIHRoZSB2YWx1ZSBvZiB0aGUgY2FsY3VsYXRvciBpZCBjb250cm9sXG4gICAgICAgIC8vIG9ubHkgaGFuZGxlIHRoZSB2YWx1ZSBjaGFuZ2VzIGlmIHRoZSBjYWxjdWxhdG9yIGlkIGlzIGEgbnVtYmVyXG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICAgIGlmICghaXNOYU4oaWQpKSB7XG4gICAgICAgICAgY29uc3QgY2FsY3VsYXRvciA9IHRoaXMuZ2V0Q2FsY3VsYXRvckJ5SWQoaWQpO1xuICAgICAgICAgIGNvbnN0IG5ld1ZhbHVlID0gY2FsY3VsYXRvci5nZXRWYWx1ZSgpO1xuXG4gICAgICAgICAgdGhpcy5zZXRWYWx1ZShuZXdWYWx1ZSk7XG4gICAgICAgICAgdGhpcy5yZXNldEZvcm1Hcm91cFZhbHVlKG5ld1ZhbHVlKTtcbiAgICAgICAgICB0aGlzLnNob3dSZWxldmFudEZvcm1GaWVsZHMoKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAvLyBXYXRjaCBmb3Igc3RhcnQgZGF0ZSB2YWx1ZSBjaGFuZ2VzLlxuICAgIHRoaXMuc3RhcnREYXRlQ29udHJvbC52YWx1ZUNoYW5nZXNcbiAgICAgIC5waXBlKFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoc3RhcnREYXRlKSA9PiB7XG4gICAgICAgIHRoaXMucGF0Y2hWYWx1ZSh7IHN0YXJ0RGF0ZSB9KTtcbiAgICAgIH0pO1xuXG4gICAgLy8gV2F0Y2ggZm9yIGVuZCBkYXRlIHZhbHVlIGNoYW5nZXMuXG4gICAgdGhpcy5lbmREYXRlQ29udHJvbC52YWx1ZUNoYW5nZXNcbiAgICAgIC5waXBlKFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoZW5kRGF0ZSkgPT4ge1xuICAgICAgICB0aGlzLnBhdGNoVmFsdWUoeyBlbmREYXRlIH0pO1xuICAgICAgfSk7XG5cbiAgICAgIC8vIERldGVjdCBlcnJvcnMgZnJvbSB0aGUgZGF0ZSBpbnB1dHMgYW5kIHVwZGF0ZSBuZy0gY2xhc3NlcyBvbiBwaWNrZXIuXG4gICAgICBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgdGhpcy5zdGFydERhdGVDb250cm9sLnN0YXR1c0NoYW5nZXMsXG4gICAgICAgIHRoaXMuZW5kRGF0ZUNvbnRyb2wuc3RhdHVzQ2hhbmdlc1xuICAgICAgXSlcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlQ2FsY3VsYXRvcnMoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuZGF0ZVJhbmdlU2VydmljZVxuICAgICAgLmdldENhbGN1bGF0b3JzKHRoaXMuY2FsY3VsYXRvcklkcylcbiAgICAgIC50aGVuKChjYWxjdWxhdG9ycykgPT4ge1xuICAgICAgICB0aGlzLmNhbGN1bGF0b3JzID0gY2FsY3VsYXRvcnM7XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q2FsY3VsYXRvckJ5SWQoaWQ6IFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZCk6IFNreURhdGVSYW5nZUNhbGN1bGF0b3Ige1xuICAgIHJldHVybiB0aGlzLmNhbGN1bGF0b3JzLmZpbmQoKGNhbGN1bGF0b3IpID0+IHtcbiAgICAgIHJldHVybiBjYWxjdWxhdG9yLmNhbGN1bGF0b3JJZCA9PT0gaWQ7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGRhdGVSYW5nZXNFcXVhbChcbiAgICByYW5nZUE6IFNreURhdGVSYW5nZUNhbGN1bGF0aW9uLFxuICAgIHJhbmdlQjogU2t5RGF0ZVJhbmdlQ2FsY3VsYXRpb25cbiAgKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChKU09OLnN0cmluZ2lmeShyYW5nZUEpID09PSBKU09OLnN0cmluZ2lmeShyYW5nZUIpKTtcbiAgfVxuXG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIHByaXZhdGUgb25DaGFuZ2UgPSAoXzogU2t5RGF0ZVJhbmdlQ2FsY3VsYXRpb24pID0+IHsgfTtcbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgcHJpdmF0ZSBvblRvdWNoZWQgPSAoKSA9PiB7IH07XG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIHByaXZhdGUgb25WYWxpZGF0b3JDaGFuZ2UgPSAoKSA9PiB7IH07XG59XG4iLCI8ZGl2ICpuZ0lmPVwiaXNSZWFkeVwiXG4gIGNsYXNzPVwic2t5LWRhdGUtcmFuZ2UtcGlja2VyXCJcbiAgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIlxuPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJza3ktZGF0ZS1yYW5nZS1waWNrZXItZm9ybS1ncm91cFwiXG4gID5cbiAgICA8c2t5LWlucHV0LWJveD5cbiAgICAgIDxsYWJlbFxuICAgICAgICBjbGFzcz1cInNreS1jb250cm9sLWxhYmVsXCJcbiAgICAgICAgW2F0dHIuZm9yXT1cImRhdGVSYW5nZVBpY2tlcklkICsgJy1zZWxlY3QtY2FsY3VsYXRvcidcIlxuICAgICAgPlxuICAgICAgICB7eyBsYWJlbCB8fCAnc2t5dXhfZGF0ZV9yYW5nZV9waWNrZXJfZGVmYXVsdF9sYWJlbCcgfCBza3lMaWJSZXNvdXJjZXMgfX1cbiAgICAgIDwvbGFiZWw+XG4gICAgICA8c2VsZWN0XG4gICAgICAgIGNsYXNzPVwic2t5LWZvcm0tY29udHJvbFwiXG4gICAgICAgIGZvcm1Db250cm9sTmFtZT1cImNhbGN1bGF0b3JJZFwiXG4gICAgICAgIFthdHRyLmlkXT1cImRhdGVSYW5nZVBpY2tlcklkICsgJy1zZWxlY3QtY2FsY3VsYXRvcidcIlxuICAgICAgICAoYmx1cik9XCJvbkZpZWxkQmx1cigpXCJcbiAgICAgID5cbiAgICAgICAgPG9wdGlvbiAqbmdGb3I9XCJsZXQgY2FsY3VsYXRvciBvZiBjYWxjdWxhdG9yc1wiXG4gICAgICAgICAgW3ZhbHVlXT1cImNhbGN1bGF0b3IuY2FsY3VsYXRvcklkXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IGNhbGN1bGF0b3Iuc2hvcnREZXNjcmlwdGlvbiB9fVxuICAgICAgICA8L29wdGlvbj5cbiAgICAgIDwvc2VsZWN0PlxuICAgIDwvc2t5LWlucHV0LWJveD5cbiAgPC9kaXY+XG5cbiAgPGRpdlxuICAgIGNsYXNzPVwic2t5LWRhdGUtcmFuZ2UtcGlja2VyLWZvcm0tZ3JvdXBcIlxuICAgIFtoaWRkZW5dPVwiIXNob3dTdGFydERhdGVQaWNrZXJcIlxuICA+XG4gICAgPHNreS1pbnB1dC1ib3g+XG4gICAgICA8bGFiZWxcbiAgICAgICAgY2xhc3M9XCJza3ktY29udHJvbC1sYWJlbFwiXG4gICAgICAgIFthdHRyLmZvcl09XCJkYXRlUmFuZ2VQaWNrZXJJZCArICctc3RhcnQtZGF0ZSdcIlxuICAgICAgICBbbmdDbGFzc109XCJ7ICdza3ktY29udHJvbC1sYWJlbC1yZXF1aXJlZCcgOiBzdGFydERhdGVSZXF1aXJlZCB9XCJcbiAgICAgID5cbiAgICAgICAge3sgc3RhcnREYXRlTGFiZWxSZXNvdXJjZUtleSB8IHNreUxpYlJlc291cmNlcyB9fVxuICAgICAgPC9sYWJlbD5cblxuICAgICAgPHNreS1kYXRlcGlja2VyPlxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJzdGFydERhdGVcIlxuICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwic3RhcnREYXRlTGFiZWxSZXNvdXJjZUtleSB8IHNreUxpYlJlc291cmNlc1wiXG4gICAgICAgICAgW2F0dHIuaWRdPVwiZGF0ZVJhbmdlUGlja2VySWQgKyAnLXN0YXJ0LWRhdGUnXCJcbiAgICAgICAgICBbYXR0ci5wbGFjZWhvbGRlcl09XCJkYXRlRm9ybWF0XCJcbiAgICAgICAgICBbcmVxdWlyZWRdPVwic3RhcnREYXRlUmVxdWlyZWRcIlxuICAgICAgICAgIFtkYXRlRm9ybWF0XT1cImRhdGVGb3JtYXRcIlxuICAgICAgICAgIChibHVyKT1cIm9uRmllbGRCbHVyKClcIlxuICAgICAgICAgIHNreURhdGVwaWNrZXJJbnB1dFxuICAgICAgICAvPlxuICAgICAgPC9za3ktZGF0ZXBpY2tlcj5cbiAgICA8L3NreS1pbnB1dC1ib3g+XG4gIDwvZGl2PlxuXG4gIDxkaXZcbiAgICBjbGFzcz1cInNreS1kYXRlLXJhbmdlLXBpY2tlci1mb3JtLWdyb3VwXCJcbiAgICBbaGlkZGVuXT1cIiFzaG93RW5kRGF0ZVBpY2tlclwiXG4gID5cbiAgICA8c2t5LWlucHV0LWJveD5cbiAgICAgIDxsYWJlbFxuICAgICAgICBjbGFzcz1cInNreS1jb250cm9sLWxhYmVsXCJcbiAgICAgICAgW2F0dHIuZm9yXT1cImRhdGVSYW5nZVBpY2tlcklkICsgJy1lbmQtZGF0ZSdcIlxuICAgICAgICBbbmdDbGFzc109XCJ7ICdza3ktY29udHJvbC1sYWJlbC1yZXF1aXJlZCcgOiBlbmREYXRlUmVxdWlyZWQgfVwiXG4gICAgICA+XG4gICAgICAgIHt7IGVuZERhdGVMYWJlbFJlc291cmNlS2V5IHwgc2t5TGliUmVzb3VyY2VzIH19XG4gICAgICA8L2xhYmVsPlxuXG4gICAgICA8c2t5LWRhdGVwaWNrZXI+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImVuZERhdGVcIlxuICAgICAgICAgIHNreURhdGVwaWNrZXJJbnB1dFxuICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiZW5kRGF0ZUxhYmVsUmVzb3VyY2VLZXkgfCBza3lMaWJSZXNvdXJjZXNcIlxuICAgICAgICAgIFthdHRyLmlkXT1cImRhdGVSYW5nZVBpY2tlcklkICsgJy1lbmQtZGF0ZSdcIlxuICAgICAgICAgIFthdHRyLnBsYWNlaG9sZGVyXT1cImRhdGVGb3JtYXRcIlxuICAgICAgICAgIFtkYXRlRm9ybWF0XT1cImRhdGVGb3JtYXRcIlxuICAgICAgICAgIFtyZXF1aXJlZF09XCJlbmREYXRlUmVxdWlyZWRcIlxuICAgICAgICAgIChibHVyKT1cIm9uRmllbGRCbHVyKClcIlxuICAgICAgICAvPlxuICAgICAgPC9za3ktZGF0ZXBpY2tlcj5cbiAgICA8L3NreS1pbnB1dC1ib3g+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -6,18 +6,19 @@ import { SkyI18nModule } from '@skyux/i18n';
6
6
  import { SkyDatepickerModule } from '../datepicker/datepicker.module';
7
7
  import { SkyDatetimeResourcesModule } from '../shared/sky-datetime-resources.module';
8
8
  import { SkyDateRangePickerComponent } from './date-range-picker.component';
9
+ import { SkyDateRangeService } from './date-range.service';
9
10
  import * as i0 from "@angular/core";
10
11
  export class SkyDateRangePickerModule {
11
12
  }
12
- SkyDateRangePickerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyDateRangePickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
13
- SkyDateRangePickerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyDateRangePickerModule, declarations: [SkyDateRangePickerComponent], imports: [CommonModule,
13
+ SkyDateRangePickerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyDateRangePickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
14
+ SkyDateRangePickerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyDateRangePickerModule, declarations: [SkyDateRangePickerComponent], imports: [CommonModule,
14
15
  FormsModule,
15
16
  ReactiveFormsModule,
16
17
  SkyI18nModule,
17
18
  SkyDatepickerModule,
18
19
  SkyDatetimeResourcesModule,
19
20
  SkyInputBoxModule], exports: [SkyDateRangePickerComponent] });
20
- SkyDateRangePickerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyDateRangePickerModule, imports: [[
21
+ SkyDateRangePickerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyDateRangePickerModule, providers: [SkyDateRangeService], imports: [[
21
22
  CommonModule,
22
23
  FormsModule,
23
24
  ReactiveFormsModule,
@@ -26,7 +27,7 @@ SkyDateRangePickerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0"
26
27
  SkyDatetimeResourcesModule,
27
28
  SkyInputBoxModule
28
29
  ]] });
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyDateRangePickerModule, decorators: [{
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyDateRangePickerModule, decorators: [{
30
31
  type: NgModule,
31
32
  args: [{
32
33
  declarations: [
@@ -43,7 +44,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImpor
43
44
  ],
44
45
  exports: [
45
46
  SkyDateRangePickerComponent
46
- ]
47
+ ],
48
+ providers: [SkyDateRangeService]
47
49
  }]
48
50
  }] });
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1yYW5nZS1waWNrZXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0ZXRpbWUvc3JjL21vZHVsZXMvZGF0ZS1yYW5nZS1waWNrZXIvZGF0ZS1yYW5nZS1waWNrZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxZQUFZLEVBQ2IsTUFBTSxpQkFBaUIsQ0FBQztBQUV6QixPQUFPLEVBQ0wsUUFBUSxFQUNULE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFDTCxXQUFXLEVBQ1gsbUJBQW1CLEVBQ3BCLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUNMLGlCQUFpQixFQUNsQixNQUFNLGNBQWMsQ0FBQztBQUV0QixPQUFPLEVBQ0wsYUFBYSxFQUNkLE1BQU0sYUFBYSxDQUFDO0FBRXJCLE9BQU8sRUFDTCxtQkFBbUIsRUFDcEIsTUFBTSxpQ0FBaUMsQ0FBQztBQUN6QyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUVyRixPQUFPLEVBQ0wsMkJBQTJCLEVBQzVCLE1BQU0sK0JBQStCLENBQUM7O0FBbUJ2QyxNQUFNLE9BQU8sd0JBQXdCOztxSEFBeEIsd0JBQXdCO3NIQUF4Qix3QkFBd0IsaUJBZmpDLDJCQUEyQixhQUczQixZQUFZO1FBQ1osV0FBVztRQUNYLG1CQUFtQjtRQUNuQixhQUFhO1FBQ2IsbUJBQW1CO1FBQ25CLDBCQUEwQjtRQUMxQixpQkFBaUIsYUFHakIsMkJBQTJCO3NIQUdsQix3QkFBd0IsWUFiMUI7WUFDUCxZQUFZO1lBQ1osV0FBVztZQUNYLG1CQUFtQjtZQUNuQixhQUFhO1lBQ2IsbUJBQW1CO1lBQ25CLDBCQUEwQjtZQUMxQixpQkFBaUI7U0FDbEI7MkZBS1Usd0JBQXdCO2tCQWpCcEMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osMkJBQTJCO3FCQUM1QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUNYLG1CQUFtQjt3QkFDbkIsYUFBYTt3QkFDYixtQkFBbUI7d0JBQ25CLDBCQUEwQjt3QkFDMUIsaUJBQWlCO3FCQUNsQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsMkJBQTJCO3FCQUM1QjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbW1vbk1vZHVsZVxufSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5pbXBvcnQge1xuICBOZ01vZHVsZVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtcbiAgRm9ybXNNb2R1bGUsXG4gIFJlYWN0aXZlRm9ybXNNb2R1bGVcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQge1xuICBTa3lJbnB1dEJveE1vZHVsZVxufSBmcm9tICdAc2t5dXgvZm9ybXMnO1xuXG5pbXBvcnQge1xuICBTa3lJMThuTW9kdWxlXG59IGZyb20gJ0Bza3l1eC9pMThuJztcblxuaW1wb3J0IHtcbiAgU2t5RGF0ZXBpY2tlck1vZHVsZVxufSBmcm9tICcuLi9kYXRlcGlja2VyL2RhdGVwaWNrZXIubW9kdWxlJztcbmltcG9ydCB7IFNreURhdGV0aW1lUmVzb3VyY2VzTW9kdWxlIH0gZnJvbSAnLi4vc2hhcmVkL3NreS1kYXRldGltZS1yZXNvdXJjZXMubW9kdWxlJztcblxuaW1wb3J0IHtcbiAgU2t5RGF0ZVJhbmdlUGlja2VyQ29tcG9uZW50XG59IGZyb20gJy4vZGF0ZS1yYW5nZS1waWNrZXIuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgU2t5RGF0ZVJhbmdlUGlja2VyQ29tcG9uZW50XG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBTa3lJMThuTW9kdWxlLFxuICAgIFNreURhdGVwaWNrZXJNb2R1bGUsXG4gICAgU2t5RGF0ZXRpbWVSZXNvdXJjZXNNb2R1bGUsXG4gICAgU2t5SW5wdXRCb3hNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIFNreURhdGVSYW5nZVBpY2tlckNvbXBvbmVudFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFNreURhdGVSYW5nZVBpY2tlck1vZHVsZSB7IH1cbiJdfQ==
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1yYW5nZS1waWNrZXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0ZXRpbWUvc3JjL21vZHVsZXMvZGF0ZS1yYW5nZS1waWNrZXIvZGF0ZS1yYW5nZS1waWNrZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxZQUFZLEVBQ2IsTUFBTSxpQkFBaUIsQ0FBQztBQUV6QixPQUFPLEVBQ0wsUUFBUSxFQUNULE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFDTCxXQUFXLEVBQ1gsbUJBQW1CLEVBQ3BCLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUNMLGlCQUFpQixFQUNsQixNQUFNLGNBQWMsQ0FBQztBQUV0QixPQUFPLEVBQ0wsYUFBYSxFQUNkLE1BQU0sYUFBYSxDQUFDO0FBRXJCLE9BQU8sRUFDTCxtQkFBbUIsRUFDcEIsTUFBTSxpQ0FBaUMsQ0FBQztBQUV6QyxPQUFPLEVBQ0wsMEJBQTBCLEVBQzNCLE1BQU0seUNBQXlDLENBQUM7QUFFakQsT0FBTyxFQUNMLDJCQUEyQixFQUM1QixNQUFNLCtCQUErQixDQUFDO0FBRXZDLE9BQU8sRUFDTCxtQkFBbUIsRUFDcEIsTUFBTSxzQkFBc0IsQ0FBQzs7QUFvQjlCLE1BQU0sT0FBTyx3QkFBd0I7O3NIQUF4Qix3QkFBd0I7dUhBQXhCLHdCQUF3QixpQkFoQmpDLDJCQUEyQixhQUczQixZQUFZO1FBQ1osV0FBVztRQUNYLG1CQUFtQjtRQUNuQixhQUFhO1FBQ2IsbUJBQW1CO1FBQ25CLDBCQUEwQjtRQUMxQixpQkFBaUIsYUFHakIsMkJBQTJCO3VIQUlsQix3QkFBd0IsYUFGeEIsQ0FBQyxtQkFBbUIsQ0FBQyxZQVp2QjtZQUNQLFlBQVk7WUFDWixXQUFXO1lBQ1gsbUJBQW1CO1lBQ25CLGFBQWE7WUFDYixtQkFBbUI7WUFDbkIsMEJBQTBCO1lBQzFCLGlCQUFpQjtTQUNsQjs0RkFNVSx3QkFBd0I7a0JBbEJwQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWiwyQkFBMkI7cUJBQzVCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsbUJBQW1CO3dCQUNuQixhQUFhO3dCQUNiLG1CQUFtQjt3QkFDbkIsMEJBQTBCO3dCQUMxQixpQkFBaUI7cUJBQ2xCO29CQUNELE9BQU8sRUFBRTt3QkFDUCwyQkFBMkI7cUJBQzVCO29CQUNELFNBQVMsRUFBRSxDQUFDLG1CQUFtQixDQUFDO2lCQUNqQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbW1vbk1vZHVsZVxufSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5pbXBvcnQge1xuICBOZ01vZHVsZVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtcbiAgRm9ybXNNb2R1bGUsXG4gIFJlYWN0aXZlRm9ybXNNb2R1bGVcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQge1xuICBTa3lJbnB1dEJveE1vZHVsZVxufSBmcm9tICdAc2t5dXgvZm9ybXMnO1xuXG5pbXBvcnQge1xuICBTa3lJMThuTW9kdWxlXG59IGZyb20gJ0Bza3l1eC9pMThuJztcblxuaW1wb3J0IHtcbiAgU2t5RGF0ZXBpY2tlck1vZHVsZVxufSBmcm9tICcuLi9kYXRlcGlja2VyL2RhdGVwaWNrZXIubW9kdWxlJztcblxuaW1wb3J0IHtcbiAgU2t5RGF0ZXRpbWVSZXNvdXJjZXNNb2R1bGVcbn0gZnJvbSAnLi4vc2hhcmVkL3NreS1kYXRldGltZS1yZXNvdXJjZXMubW9kdWxlJztcblxuaW1wb3J0IHtcbiAgU2t5RGF0ZVJhbmdlUGlja2VyQ29tcG9uZW50XG59IGZyb20gJy4vZGF0ZS1yYW5nZS1waWNrZXIuY29tcG9uZW50JztcblxuaW1wb3J0IHtcbiAgU2t5RGF0ZVJhbmdlU2VydmljZVxufSBmcm9tICcuL2RhdGUtcmFuZ2Uuc2VydmljZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFNreURhdGVSYW5nZVBpY2tlckNvbXBvbmVudFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgU2t5STE4bk1vZHVsZSxcbiAgICBTa3lEYXRlcGlja2VyTW9kdWxlLFxuICAgIFNreURhdGV0aW1lUmVzb3VyY2VzTW9kdWxlLFxuICAgIFNreUlucHV0Qm94TW9kdWxlXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBTa3lEYXRlUmFuZ2VQaWNrZXJDb21wb25lbnRcbiAgXSxcbiAgcHJvdmlkZXJzOiBbU2t5RGF0ZVJhbmdlU2VydmljZV1cbn0pXG5leHBvcnQgY2xhc3MgU2t5RGF0ZVJhbmdlUGlja2VyTW9kdWxlIHsgfVxuIl19
@@ -90,12 +90,9 @@ export class SkyDateRangeService {
90
90
  // Start the count higher than the number of available values
91
91
  // provided in the SkyDateRangeCalculatorId enum.
92
92
  SkyDateRangeService.lastId = 1000;
93
- SkyDateRangeService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyDateRangeService, deps: [{ token: i1.SkyLibResourcesService }], target: i0.ɵɵFactoryTarget.Injectable });
94
- SkyDateRangeService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyDateRangeService, providedIn: 'root' });
95
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyDateRangeService, decorators: [{
96
- type: Injectable,
97
- args: [{
98
- providedIn: 'root'
99
- }]
93
+ SkyDateRangeService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyDateRangeService, deps: [{ token: i1.SkyLibResourcesService }], target: i0.ɵɵFactoryTarget.Injectable });
94
+ SkyDateRangeService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyDateRangeService });
95
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyDateRangeService, decorators: [{
96
+ type: Injectable
100
97
  }], ctorParameters: function () { return [{ type: i1.SkyLibResourcesService }]; } });
101
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1yYW5nZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0ZXRpbWUvc3JjL21vZHVsZXMvZGF0ZS1yYW5nZS1waWNrZXIvZGF0ZS1yYW5nZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxVQUFVLEVBQ1gsTUFBTSxlQUFlLENBQUM7QUFNdkIsT0FBTyxFQUNMLGVBQWUsRUFDZixRQUFRLEVBRVQsTUFBTSxNQUFNLENBQUM7QUFFZCxPQUFPLEVBQ0wsS0FBSyxFQUNMLEdBQUcsRUFDSixNQUFNLGdCQUFnQixDQUFDO0FBVXhCLE9BQU8sRUFDTCxzQkFBc0IsRUFDdkIsTUFBTSwrQkFBK0IsQ0FBQztBQUV2QyxPQUFPLEVBQ0wsOEJBQThCLEVBQy9CLE1BQU0sK0NBQStDLENBQUM7OztBQUV2RDs7R0FFRztBQUlILE1BQU0sT0FBTyxtQkFBbUI7SUFZOUIsWUFDVSxnQkFBd0M7UUFBeEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUF3QjtRQVAxQywwQkFBcUIsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUU1RCxzQkFBaUIsR0FBaUQsRUFBRSxDQUFDO1FBRXJFLGdCQUFXLEdBQTZCLEVBQUUsQ0FBQztRQUtqRCxJQUFJLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksZ0JBQWdCLENBQUMsTUFBb0M7UUFDMUQsTUFBTSxLQUFLLEdBQUcsbUJBQW1CLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDM0MsTUFBTSxVQUFVLEdBQUcsSUFBSSxzQkFBc0IsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFFN0QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFbEMsT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQztJQUVEOzs7T0FHRztJQUNJLGNB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R0QsNkRBQTZEO0FBQzdELGlEQUFpRDtBQUNsQywwQkFBTSxHQUFHLElBQUksQ0FBQztnSEFKbEIsbUJBQW1CO29IQUFuQixtQkFBbUIsY0FGbEIsTUFBTTsyRkFFUCxtQkFBbUI7a0JBSC9CLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgSW5qZWN0YWJsZVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtcbiAgU2t5TGliUmVzb3VyY2VzU2VydmljZVxufSBmcm9tICdAc2t5dXgvaTE4bic7XG5cbmltcG9ydCB7XG4gIEJlaGF2aW9yU3ViamVjdCxcbiAgZm9ya0pvaW4sXG4gIE9ic2VydmFibGVcbn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7XG4gIGZpcnN0LFxuICBtYXBcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1xuICBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9yQ29uZmlnXG59IGZyb20gJy4vdHlwZXMvZGF0ZS1yYW5nZS1jYWxjdWxhdG9yLWNvbmZpZyc7XG5cbmltcG9ydCB7XG4gIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZFxufSBmcm9tICcuL3R5cGVzL2RhdGUtcmFuZ2UtY2FsY3VsYXRvci1pZCc7XG5cbmltcG9ydCB7XG4gIFNreURhdGVSYW5nZUNhbGN1bGF0b3Jcbn0gZnJvbSAnLi90eXBlcy9kYXRlLXJhbmdlLWNhbGN1bGF0b3InO1xuXG5pbXBvcnQge1xuICBTS1lfREVGQVVMVF9DQUxDVUxBVE9SX0NPTkZJR1Ncbn0gZnJvbSAnLi90eXBlcy9kYXRlLXJhbmdlLWRlZmF1bHQtY2FsY3VsYXRvci1jb25maWdzJztcblxuLyoqXG4gKiBDcmVhdGVzIGFuZCBtYW5hZ2VzIGBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9yYCBpbnN0YW5jZXMuXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFNreURhdGVSYW5nZVNlcnZpY2Uge1xuXG4gIC8vIFN0YXJ0IHRoZSBjb3VudCBoaWdoZXIgdGhhbiB0aGUgbnVtYmVyIG9mIGF2YWlsYWJsZSB2YWx1ZXNcbiAgLy8gcHJvdmlkZWQgaW4gdGhlIFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZCBlbnVtLlxuICBwcml2YXRlIHN0YXRpYyBsYXN0SWQgPSAxMDAwO1xuXG4gIHByaXZhdGUgY2FsY3VsYXRvclJlYWR5U3RyZWFtID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG5cbiAgcHJpdmF0ZSBjYWxjdWxhdG9yQ29uZmlnczoge1tpZDogbnVtYmVyXTogU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvckNvbmZpZ30gPSB7fTtcblxuICBwcml2YXRlIGNhbGN1bGF0b3JzOiBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9yW10gPSBbXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlc291cmNlc1NlcnZpY2U6IFNreUxpYlJlc291cmNlc1NlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5jcmVhdGVEZWZhdWx0Q2FsY3VsYXRvcnMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgY3VzdG9tIGRhdGUgcmFuZ2UgY2FsY3VsYXRvci5cbiAgICogQHBhcmFtIGNvbmZpZyBUaGUgY2FsY3VsYXRvciBjb25maWcuXG4gICAqL1xuICBwdWJsaWMgY3JlYXRlQ2FsY3VsYXRvcihjb25maWc6IFNreURhdGVSYW5nZUNhbGN1bGF0b3JDb25maWcpOiBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9yIHtcbiAgICBjb25zdCBuZXdJZCA9IFNreURhdGVSYW5nZVNlcnZpY2UubGFzdElkKys7XG4gICAgY29uc3QgY2FsY3VsYXRvciA9IG5ldyBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9yKG5ld0lkLCBjb25maWcpO1xuXG4gICAgdGhpcy5jYWxjdWxhdG9ycy5wdXNoKGNhbGN1bGF0b3IpO1xuXG4gICAgcmV0dXJuIGNhbGN1bGF0b3I7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBjYWxjdWxhdG9ycyBmcm9tIGFuIGFycmF5IG9mIGNhbGN1bGF0b3IgSURzLlxuICAgKiBAcGFyYW0gaWRzIFRoZSBhcnJheSBvZiBjYWxjdWxhdG9yIElEcy5cbiAgICovXG4gIHB1YmxpYyBnZXRDYWxjdWxhdG9ycyhpZHM6IFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZFtdKTogUHJvbWlzZTxTa3lEYXRlUmFuZ2VDYWxjdWxhdG9yW10+IHtcbiAgICBjb25zdCBwcm9taXNlcyA9IGlkcy5tYXAoKGlkKSA9PiB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRDYWxjdWxhdG9yQnlJZChpZCk7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gUHJvbWlzZS5hbGwocHJvbWlzZXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYSBjYWxjdWxhdG9yIGZyb20gYSBjYWxjdWxhdG9yIElELlxuICAgKiBAcGFyYW0gaWQgVGhlIGNhbGN1bGF0b3IgSUQuXG4gICAqL1xuICBwdWJsaWMgZ2V0Q2FsY3VsYXRvckJ5SWQoaWQ6IFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZCk6IFByb21pc2U8U2t5RGF0ZVJhbmdlQ2FsY3VsYXRvcj4ge1xuICAgIGNvbnN0IGNhbGN1bGF0b3JJZCA9IHBhcnNlSW50KGlkIGFzIGFueSwgMTApO1xuICAgIGNvbnN0IGZvdW5kID0gdGhpcy5jYWxjdWxhdG9ycy5maW5kKChjYWxjdWxhdG9yKSA9PiB7XG4gICAgICByZXR1cm4gKGNhbGN1bGF0b3IuY2FsY3VsYXRvcklkID09PSBjYWxjdWxhdG9ySWQpO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIGlmICghZm91bmQpIHtcbiAgICAgICAgcmVqZWN0KFxuICAgICAgICAgIG5ldyBFcnJvcihgQSBjYWxjdWxhdG9yIHdpdGggdGhlIElEICR7aWR9IHdhcyBub3QgZm91bmQuYClcbiAgICAgICAgKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmNhbGN1bGF0b3JSZWFkeVN0cmVhbVxuICAgICAgICAucGlwZShmaXJzdCgpKVxuICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICByZXNvbHZlKGZvdW5kKTtcbiAgICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZURlZmF1bHRDYWxjdWxhdG9ycygpOiB2b2lkIHtcbiAgICBjb25zdCB0YXNrczogT2JzZXJ2YWJsZTx2b2lkPltdID0gW107XG5cbiAgICAvLyBHZXQgcmVzb3VyY2Ugc3RyaW5ncyBmb3Igc2hvcnQgZGVzY3JpcHRpb25zLlxuICAgIFNLWV9ERUZBVUxUX0NBTENVTEFUT1JfQ09ORklHUy5mb3JFYWNoKChkZWZhdWx0Q29uZmlnKSA9PiB7XG4gICAgICBjb25zdCBjb25maWcgPSB7XG4gICAgICAgIGdldFZhbHVlOiBkZWZhdWx0Q29uZmlnLmdldFZhbHVlLFxuICAgICAgICB2YWxpZGF0ZTogZGVmYXVsdENvbmZpZy52YWxpZGF0ZSxcbiAgICAgICAgc2hvcnREZXNjcmlwdGlvbjogJycsXG4gICAgICAgIHR5cGU6IGRlZmF1bHRDb25maWcudHlwZVxuICAgICAgfTtcblxuICAgICAgdGFza3MucHVzaChcbiAgICAgICAgdGhpcy5yZXNvdXJjZXNTZXJ2aWNlXG4gICAgICAgICAgLmdldFN0cmluZyhkZWZhdWx0Q29uZmlnLnNob3J0RGVzY3JpcHRpb25SZXNvdXJjZUtleSlcbiAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgIGZpcnN0KCksXG4gICAgICAgICAgICBtYXAoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICAgIGNvbmZpZy5zaG9ydERlc2NyaXB0aW9uID0gdmFsdWU7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgIClcbiAgICAgICk7XG5cbiAgICAgIHRoaXMuY2FsY3VsYXRvckNvbmZpZ3NbZGVmYXVsdENvbmZpZy5jYWxjdWxhdG9ySWRdID0gY29uZmlnO1xuICAgIH0pO1xuXG4gICAgZm9ya0pvaW4odGFza3MpXG4gICAgICAucGlwZShmaXJzdCgpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGNhbGN1bGF0b3JJZHMgPSBPYmplY3Qua2V5cyh0aGlzLmNhbGN1bGF0b3JDb25maWdzKTtcbiAgICAgICAgY29uc3QgY2FsY3VsYXRvcnMgPSBjYWxjdWxhdG9ySWRzLm1hcCgoY2FsY3VsYXRvcklkKSA9PiB7XG4gICAgICAgICAgY29uc3QgaWQgPSBwYXJzZUludChjYWxjdWxhdG9ySWQsIDEwKTtcbiAgICAgICAgICByZXR1cm4gbmV3IFNreURhdGVSYW5nZUNhbGN1bGF0b3IoaWQsIHRoaXMuY2FsY3VsYXRvckNvbmZpZ3NbaWRdKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5jYWxjdWxhdG9ycyA9IGNhbGN1bGF0b3JzO1xuICAgICAgICB0aGlzLmNhbGN1bGF0b3JSZWFkeVN0cmVhbS5uZXh0KHRydWUpO1xuICAgICAgfSk7XG4gIH1cbn1cbiJdfQ==
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1yYW5nZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0ZXRpbWUvc3JjL21vZHVsZXMvZGF0ZS1yYW5nZS1waWNrZXIvZGF0ZS1yYW5nZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxVQUFVLEVBQ1gsTUFBTSxlQUFlLENBQUM7QUFNdkIsT0FBTyxFQUNMLGVBQWUsRUFDZixRQUFRLEVBRVQsTUFBTSxNQUFNLENBQUM7QUFFZCxPQUFPLEVBQ0wsS0FBSyxFQUNMLEdBQUcsRUFDSixNQUFNLGdCQUFnQixDQUFDO0FBVXhCLE9BQU8sRUFDTCxzQkFBc0IsRUFDdkIsTUFBTSwrQkFBK0IsQ0FBQztBQUV2QyxPQUFPLEVBQ0wsOEJBQThCLEVBQy9CLE1BQU0sK0NBQStDLENBQUM7OztBQUV2RDs7R0FFRztBQUVILE1BQU0sT0FBTyxtQkFBbUI7SUFZOUIsWUFDVSxnQkFBd0M7UUFBeEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUF3QjtRQVAxQywwQkFBcUIsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUU1RCxzQkFBaUIsR0FBaUQsRUFBRSxDQUFDO1FBRXJFLGdCQUFXLEdBQTZCLEVBQUUsQ0FBQztRQUtqRCxJQUFJLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksZ0JBQWdCLENBQUMsTUFBb0M7UUFDMUQsTUFBTSxLQUFLLEdBQUcsbUJBQW1CLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDM0MsTUFBTSxVQUFVLEdBQUcsSUFBSSxzQkFBc0IsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFFN0QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFbEMsT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQztJQUVEOzs7T0FHRztJQUNJLGNB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R0QsNkRBQTZEO0FBQzdELGlEQUFpRDtBQUNsQywwQkFBTSxHQUFHLElBQUksQ0FBQztpSEFKbEIsbUJBQW1CO3FIQUFuQixtQkFBbUI7NEZBQW5CLG1CQUFtQjtrQkFEL0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEluamVjdGFibGVcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7XG4gIFNreUxpYlJlc291cmNlc1NlcnZpY2Vcbn0gZnJvbSAnQHNreXV4L2kxOG4nO1xuXG5pbXBvcnQge1xuICBCZWhhdmlvclN1YmplY3QsXG4gIGZvcmtKb2luLFxuICBPYnNlcnZhYmxlXG59IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1xuICBmaXJzdCxcbiAgbWFwXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtcbiAgU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvckNvbmZpZ1xufSBmcm9tICcuL3R5cGVzL2RhdGUtcmFuZ2UtY2FsY3VsYXRvci1jb25maWcnO1xuXG5pbXBvcnQge1xuICBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9ySWRcbn0gZnJvbSAnLi90eXBlcy9kYXRlLXJhbmdlLWNhbGN1bGF0b3ItaWQnO1xuXG5pbXBvcnQge1xuICBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9yXG59IGZyb20gJy4vdHlwZXMvZGF0ZS1yYW5nZS1jYWxjdWxhdG9yJztcblxuaW1wb3J0IHtcbiAgU0tZX0RFRkFVTFRfQ0FMQ1VMQVRPUl9DT05GSUdTXG59IGZyb20gJy4vdHlwZXMvZGF0ZS1yYW5nZS1kZWZhdWx0LWNhbGN1bGF0b3ItY29uZmlncyc7XG5cbi8qKlxuICogQ3JlYXRlcyBhbmQgbWFuYWdlcyBgU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvcmAgaW5zdGFuY2VzLlxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgU2t5RGF0ZVJhbmdlU2VydmljZSB7XG5cbiAgLy8gU3RhcnQgdGhlIGNvdW50IGhpZ2hlciB0aGFuIHRoZSBudW1iZXIgb2YgYXZhaWxhYmxlIHZhbHVlc1xuICAvLyBwcm92aWRlZCBpbiB0aGUgU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvcklkIGVudW0uXG4gIHByaXZhdGUgc3RhdGljIGxhc3RJZCA9IDEwMDA7XG5cbiAgcHJpdmF0ZSBjYWxjdWxhdG9yUmVhZHlTdHJlYW0gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcblxuICBwcml2YXRlIGNhbGN1bGF0b3JDb25maWdzOiB7W2lkOiBudW1iZXJdOiBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9yQ29uZmlnfSA9IHt9O1xuXG4gIHByaXZhdGUgY2FsY3VsYXRvcnM6IFNreURhdGVSYW5nZUNhbGN1bGF0b3JbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVzb3VyY2VzU2VydmljZTogU2t5TGliUmVzb3VyY2VzU2VydmljZVxuICApIHtcbiAgICB0aGlzLmNyZWF0ZURlZmF1bHRDYWxjdWxhdG9ycygpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBjdXN0b20gZGF0ZSByYW5nZSBjYWxjdWxhdG9yLlxuICAgKiBAcGFyYW0gY29uZmlnIFRoZSBjYWxjdWxhdG9yIGNvbmZpZy5cbiAgICovXG4gIHB1YmxpYyBjcmVhdGVDYWxjdWxhdG9yKGNvbmZpZzogU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvckNvbmZpZyk6IFNreURhdGVSYW5nZUNhbGN1bGF0b3Ige1xuICAgIGNvbnN0IG5ld0lkID0gU2t5RGF0ZVJhbmdlU2VydmljZS5sYXN0SWQrKztcbiAgICBjb25zdCBjYWxjdWxhdG9yID0gbmV3IFNreURhdGVSYW5nZUNhbGN1bGF0b3IobmV3SWQsIGNvbmZpZyk7XG5cbiAgICB0aGlzLmNhbGN1bGF0b3JzLnB1c2goY2FsY3VsYXRvcik7XG5cbiAgICByZXR1cm4gY2FsY3VsYXRvcjtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGNhbGN1bGF0b3JzIGZyb20gYW4gYXJyYXkgb2YgY2FsY3VsYXRvciBJRHMuXG4gICAqIEBwYXJhbSBpZHMgVGhlIGFycmF5IG9mIGNhbGN1bGF0b3IgSURzLlxuICAgKi9cbiAgcHVibGljIGdldENhbGN1bGF0b3JzKGlkczogU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvcklkW10pOiBQcm9taXNlPFNreURhdGVSYW5nZUNhbGN1bGF0b3JbXT4ge1xuICAgIGNvbnN0IHByb21pc2VzID0gaWRzLm1hcCgoaWQpID0+IHtcbiAgICAgIHJldHVybiB0aGlzLmdldENhbGN1bGF0b3JCeUlkKGlkKTtcbiAgICB9KTtcblxuICAgIHJldHVybiBQcm9taXNlLmFsbChwcm9taXNlcyk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBhIGNhbGN1bGF0b3IgZnJvbSBhIGNhbGN1bGF0b3IgSUQuXG4gICAqIEBwYXJhbSBpZCBUaGUgY2FsY3VsYXRvciBJRC5cbiAgICovXG4gIHB1YmxpYyBnZXRDYWxjdWxhdG9yQnlJZChpZDogU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvcklkKTogUHJvbWlzZTxTa3lEYXRlUmFuZ2VDYWxjdWxhdG9yPiB7XG4gICAgY29uc3QgY2FsY3VsYXRvcklkID0gcGFyc2VJbnQoaWQgYXMgYW55LCAxMCk7XG4gICAgY29uc3QgZm91bmQgPSB0aGlzLmNhbGN1bGF0b3JzLmZpbmQoKGNhbGN1bGF0b3IpID0+IHtcbiAgICAgIHJldHVybiAoY2FsY3VsYXRvci5jYWxjdWxhdG9ySWQgPT09IGNhbGN1bGF0b3JJZCk7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgaWYgKCFmb3VuZCkge1xuICAgICAgICByZWplY3QoXG4gICAgICAgICAgbmV3IEVycm9yKGBBIGNhbGN1bGF0b3Igd2l0aCB0aGUgSUQgJHtpZH0gd2FzIG5vdCBmb3VuZC5gKVxuICAgICAgICApO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHRoaXMuY2FsY3VsYXRvclJlYWR5U3RyZWFtXG4gICAgICAgIC5waXBlKGZpcnN0KCkpXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgIHJlc29sdmUoZm91bmQpO1xuICAgICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlRGVmYXVsdENhbGN1bGF0b3JzKCk6IHZvaWQge1xuICAgIGNvbnN0IHRhc2tzOiBPYnNlcnZhYmxlPHZvaWQ+W10gPSBbXTtcblxuICAgIC8vIEdldCByZXNvdXJjZSBzdHJpbmdzIGZvciBzaG9ydCBkZXNjcmlwdGlvbnMuXG4gICAgU0tZX0RFRkFVTFRfQ0FMQ1VMQVRPUl9DT05GSUdTLmZvckVhY2goKGRlZmF1bHRDb25maWcpID0+IHtcbiAgICAgIGNvbnN0IGNvbmZpZyA9IHtcbiAgICAgICAgZ2V0VmFsdWU6IGRlZmF1bHRDb25maWcuZ2V0VmFsdWUsXG4gICAgICAgIHZhbGlkYXRlOiBkZWZhdWx0Q29uZmlnLnZhbGlkYXRlLFxuICAgICAgICBzaG9ydERlc2NyaXB0aW9uOiAnJyxcbiAgICAgICAgdHlwZTogZGVmYXVsdENvbmZpZy50eXBlXG4gICAgICB9O1xuXG4gICAgICB0YXNrcy5wdXNoKFxuICAgICAgICB0aGlzLnJlc291cmNlc1NlcnZpY2VcbiAgICAgICAgICAuZ2V0U3RyaW5nKGRlZmF1bHRDb25maWcuc2hvcnREZXNjcmlwdGlvblJlc291cmNlS2V5KVxuICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgZmlyc3QoKSxcbiAgICAgICAgICAgIG1hcCgodmFsdWUpID0+IHtcbiAgICAgICAgICAgICAgY29uZmlnLnNob3J0RGVzY3JpcHRpb24gPSB2YWx1ZTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgKVxuICAgICAgKTtcblxuICAgICAgdGhpcy5jYWxjdWxhdG9yQ29uZmlnc1tkZWZhdWx0Q29uZmlnLmNhbGN1bGF0b3JJZF0gPSBjb25maWc7XG4gICAgfSk7XG5cbiAgICBmb3JrSm9pbih0YXNrcylcbiAgICAgIC5waXBlKGZpcnN0KCkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgY29uc3QgY2FsY3VsYXRvcklkcyA9IE9iamVjdC5rZXlzKHRoaXMuY2FsY3VsYXRvckNvbmZpZ3MpO1xuICAgICAgICBjb25zdCBjYWxjdWxhdG9ycyA9IGNhbGN1bGF0b3JJZHMubWFwKChjYWxjdWxhdG9ySWQpID0+IHtcbiAgICAgICAgICBjb25zdCBpZCA9IHBhcnNlSW50KGNhbGN1bGF0b3JJZCwgMTApO1xuICAgICAgICAgIHJldHVybiBuZXcgU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvcihpZCwgdGhpcy5jYWxjdWxhdG9yQ29uZmlnc1tpZF0pO1xuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmNhbGN1bGF0b3JzID0gY2FsY3VsYXRvcnM7XG4gICAgICAgIHRoaXMuY2FsY3VsYXRvclJlYWR5U3RyZWFtLm5leHQodHJ1ZSk7XG4gICAgICB9KTtcbiAgfVxufVxuIl19
@@ -25,9 +25,9 @@ export class SkyDatepickerAdapterService {
25
25
  this.renderer.setAttribute(elementRef.nativeElement, 'placeholder', value);
26
26
  }
27
27
  }
28
- SkyDatepickerAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyDatepickerAdapterService, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Injectable });
29
- SkyDatepickerAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyDatepickerAdapterService });
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyDatepickerAdapterService, decorators: [{
28
+ SkyDatepickerAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyDatepickerAdapterService, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Injectable });
29
+ SkyDatepickerAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyDatepickerAdapterService });
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyDatepickerAdapterService, decorators: [{
31
31
  type: Injectable
32
32
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }]; } });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci1hZGFwdGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRldGltZS9zcmMvbW9kdWxlcy9kYXRlcGlja2VyL2RhdGVwaWNrZXItYWRhcHRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxVQUFVLEVBRVgsTUFBTSxlQUFlLENBQUM7O0FBRXZCOztHQUVHO0FBRUgsTUFBTSxPQUFPLDJCQUEyQjtJQUl0QyxZQUNVLFFBQW1CO1FBQW5CLGFBQVEsR0FBUixRQUFRLENBQVc7SUFDMUIsQ0FBQztJQUVHLElBQUksQ0FBQyxLQUFpQjtRQUMzQixJQUFJLENBQUMsRUFBRSxHQUFHLEtBQUssQ0FBQyxhQUFhLENBQUM7SUFDaEMsQ0FBQztJQUVNLGdCQUFnQjtRQUNyQixNQUFNLFNBQVMsR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDO1FBRXpDLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVNLGdCQUFnQjtRQUNyQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsRUFBRSxJQUFJLGdCQUFnQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUVwRCxPQUFPLE1BQU0sSUFBSSxNQUFNLENBQUMsVUFBVSxLQUFLLFNBQVMsQ0FBQztJQUNuRCxDQUFDO0lBRU0sY0FBYyxDQUFDLFVBQXNCO1FBQzFDLE9BQU8sVUFBVSxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVNLGNBQWMsQ0FBQyxVQUFzQixFQUFFLEtBQWE7UUFDekQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxhQUFhLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDN0UsQ0FBQzs7d0hBOUJVLDJCQUEyQjs0SEFBM0IsMkJBQTJCOzJGQUEzQiwyQkFBMkI7a0JBRHZDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBFbGVtZW50UmVmLFxuICBJbmplY3RhYmxlLFxuICBSZW5kZXJlcjJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTa3lEYXRlcGlja2VyQWRhcHRlclNlcnZpY2Uge1xuXG4gIHByaXZhdGUgZWw6IEhUTUxFbGVtZW50O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMlxuICApIHt9XG5cbiAgcHVibGljIGluaXQoZWxSZWY6IEVsZW1lbnRSZWYpIHtcbiAgICB0aGlzLmVsID0gZWxSZWYubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIHB1YmxpYyBlbGVtZW50SXNGb2N1c2VkKCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGZvY3VzZWRFbCA9IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7XG5cbiAgICByZXR1cm4gdGhpcy5lbC5jb250YWlucyhmb2N1c2VkRWwpO1xuICB9XG5cbiAgcHVibGljIGVsZW1lbnRJc1Zpc2libGUoKTogYm9vbGVhbiB7XG4gICAgY29uc3Qgc3R5bGVzID0gdGhpcy5lbCAmJiBnZXRDb21wdXRlZFN0eWxlKHRoaXMuZWwpO1xuXG4gICAgcmV0dXJuIHN0eWxlcyAmJiBzdHlsZXMudmlzaWJpbGl0eSA9PT0gJ3Zpc2libGUnO1xuICB9XG5cbiAgcHVibGljIGdldFBsYWNlaG9sZGVyKGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYpOiBzdHJpbmcge1xuICAgIHJldHVybiBlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKCdwbGFjZWhvbGRlcicpO1xuICB9XG5cbiAgcHVibGljIHNldFBsYWNlaG9sZGVyKGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsIHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdwbGFjZWhvbGRlcicsIHZhbHVlKTtcbiAgfVxufVxuIl19
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci1hZGFwdGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRldGltZS9zcmMvbW9kdWxlcy9kYXRlcGlja2VyL2RhdGVwaWNrZXItYWRhcHRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxVQUFVLEVBRVgsTUFBTSxlQUFlLENBQUM7O0FBRXZCOztHQUVHO0FBRUgsTUFBTSxPQUFPLDJCQUEyQjtJQUl0QyxZQUNVLFFBQW1CO1FBQW5CLGFBQVEsR0FBUixRQUFRLENBQVc7SUFDMUIsQ0FBQztJQUVHLElBQUksQ0FBQyxLQUFpQjtRQUMzQixJQUFJLENBQUMsRUFBRSxHQUFHLEtBQUssQ0FBQyxhQUFhLENBQUM7SUFDaEMsQ0FBQztJQUVNLGdCQUFnQjtRQUNyQixNQUFNLFNBQVMsR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDO1FBRXpDLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVNLGdCQUFnQjtRQUNyQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsRUFBRSxJQUFJLGdCQUFnQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUVwRCxPQUFPLE1BQU0sSUFBSSxNQUFNLENBQUMsVUFBVSxLQUFLLFNBQVMsQ0FBQztJQUNuRCxDQUFDO0lBRU0sY0FBYyxDQUFDLFVBQXNCO1FBQzFDLE9BQU8sVUFBVSxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVNLGNBQWMsQ0FBQyxVQUFzQixFQUFFLEtBQWE7UUFDekQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxhQUFhLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDN0UsQ0FBQzs7eUhBOUJVLDJCQUEyQjs2SEFBM0IsMkJBQTJCOzRGQUEzQiwyQkFBMkI7a0JBRHZDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBFbGVtZW50UmVmLFxuICBJbmplY3RhYmxlLFxuICBSZW5kZXJlcjJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTa3lEYXRlcGlja2VyQWRhcHRlclNlcnZpY2Uge1xuXG4gIHByaXZhdGUgZWw6IEhUTUxFbGVtZW50O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMlxuICApIHt9XG5cbiAgcHVibGljIGluaXQoZWxSZWY6IEVsZW1lbnRSZWYpIHtcbiAgICB0aGlzLmVsID0gZWxSZWYubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIHB1YmxpYyBlbGVtZW50SXNGb2N1c2VkKCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGZvY3VzZWRFbCA9IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7XG5cbiAgICByZXR1cm4gdGhpcy5lbC5jb250YWlucyhmb2N1c2VkRWwpO1xuICB9XG5cbiAgcHVibGljIGVsZW1lbnRJc1Zpc2libGUoKTogYm9vbGVhbiB7XG4gICAgY29uc3Qgc3R5bGVzID0gdGhpcy5lbCAmJiBnZXRDb21wdXRlZFN0eWxlKHRoaXMuZWwpO1xuXG4gICAgcmV0dXJuIHN0eWxlcyAmJiBzdHlsZXMudmlzaWJpbGl0eSA9PT0gJ3Zpc2libGUnO1xuICB9XG5cbiAgcHVibGljIGdldFBsYWNlaG9sZGVyKGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYpOiBzdHJpbmcge1xuICAgIHJldHVybiBlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKCdwbGFjZWhvbGRlcicpO1xuICB9XG5cbiAgcHVibGljIHNldFBsYWNlaG9sZGVyKGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsIHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdwbGFjZWhvbGRlcicsIHZhbHVlKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci1jYWxlbmRhci1jaGFuZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRldGltZS9zcmMvbW9kdWxlcy9kYXRlcGlja2VyL2RhdGVwaWNrZXItY2FsZW5kYXItY2hhbmdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTa3lEYXRlcGlja2VyQ3VzdG9tRGF0ZSB9IGZyb20gJy4vZGF0ZXBpY2tlci1jdXN0b20tZGF0ZSc7XG5pbXBvcnQge1xuICBPYnNlcnZhYmxlXG59IGZyb20gJ3J4anMnO1xuXG4vKipcbiAqIFNwZWNpZmllcyBjaGFuZ2VzIGluIHRoZSBkYXRlcGlja2VyIGNhbGVuZGFyLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNreURhdGVwaWNrZXJDYWxlbmRhckNoYW5nZSB7XG5cbiAgLyoqXG4gICAqIFRoZSBlbmQgZGF0ZS5cbiAgICovXG4gIGVuZERhdGU6IERhdGU7XG5cbiAgLyoqXG4gICAqIFRoZSBzdGFydCBkYXRlLlxuICAgKi9cbiAgc3RhcnREYXRlOiBEYXRlO1xuXG4gIC8qKlxuICAgKiBQcm92aWRlcyBhbiBvYnNlcnZhYmxlIHRoYXQgYWxsb3dzIHRoZSBjb25zdW1lciB0byBwdXNoIGN1c3RvbSBkYXRlcyBiYWNrIHRvIHRoZSBjYWxlbmRhclxuICAgKiB3aGVuIHRoZSBgU2t5Q2FsZW5kYXJEYXRlUmFuZ2VDaGFuZ2VFdmVudGAgZXZlbnQgZmlyZXMuIFRoaXMgaXMgdXNlZnVsXG4gICAqIGZvciBkaXNwbGF5aW5nIGtleSBkYXRlcyBvciBkaXNhYmxlZCBkYXRlcyBlYWNoIHRpbWUgdGhlIGNhbGVuZGFyIGNoYW5nZXMuIElmIGRpc2FibGVkIGRhdGVzXG4gICAqIGFyZSBwcm92aWRlZCwgU0tZIFVYIHdpbGwgcHJldmVudCB0aGUgdXNlciBmcm9tIHNlbGVjdGluZyB0aGUgZGF0ZSBmcm9tIHRoZSBjYWxlbmRhci5cbiAgICogSG93ZXZlciwgY29uc3VtZXJzIHdpbGwgc3RpbGwgbmVlZCB0byBhZGQgYSBjdXN0b20gdmFsaWRhdG9yIHRvIHByZXZlbnQgdXNlcnMgZnJvbSBlbnRlcmluZ1xuICAgKiBkaXNhYmxlZCBkYXRlcyBpbiB0aGUgdGV4dCBpbnB1dC5cbiAgICovXG4gIGN1c3RvbURhdGVzPzogT2JzZXJ2YWJsZTxTa3lEYXRlcGlja2VyQ3VzdG9tRGF0ZVtdPjtcblxufVxuIl19