@dhutaryan/ngx-mat-timepicker 17.5.0 → 17.5.1

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.
@@ -13,11 +13,12 @@ import * as i1 from "./timepicker-intl";
13
13
  import * as i2 from "./adapter";
14
14
  import * as i3 from "@angular/common";
15
15
  export class MatClockDials extends MatTimeFaceBase {
16
- constructor(_intl, _timeAdapter, _ngZone, _elementRef) {
16
+ constructor(_intl, _timeAdapter, _ngZone, _elementRef, _cdr) {
17
17
  super(_timeAdapter);
18
18
  this._intl = _intl;
19
19
  this._ngZone = _ngZone;
20
20
  this._elementRef = _elementRef;
21
+ this._cdr = _cdr;
21
22
  this.isHoursView = true;
22
23
  /** Specifies the view of clock dial. */
23
24
  this._view = new BehaviorSubject('hours');
@@ -59,14 +60,19 @@ export class MatClockDials extends MatTimeFaceBase {
59
60
  }
60
61
  return withZeroPrefixMeridiem(value, this.isMeridiem);
61
62
  }
63
+ _onMinuteSelected(minute) {
64
+ super._onMinuteSelected(minute);
65
+ this._cdr.detectChanges();
66
+ }
62
67
  /** Handles hour selection. */
63
- _onHourChanged({ hour, changeView = false }) {
68
+ _onHourChanged({ hour, changeView = false, }) {
64
69
  if (changeView) {
65
70
  this._view.next('minutes');
66
71
  }
67
72
  this._onHourSelected(hour);
73
+ this._cdr.detectChanges();
68
74
  }
69
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: MatClockDials, deps: [{ token: i1.MatTimepickerIntl }, { token: i2.TimeAdapter, optional: true }, { token: i0.NgZone }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
75
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: MatClockDials, deps: [{ token: i1.MatTimepickerIntl }, { token: i2.TimeAdapter, optional: true }, { token: i0.NgZone }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
70
76
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.9", type: MatClockDials, isStandalone: true, selector: "mat-clock-dials", inputs: { orientation: "orientation", touchUi: "touchUi" }, host: { attributes: { "role": "dial" }, classAttribute: "mat-clock-dials" }, exportAs: ["matClockDials"], usesInheritance: true, ngImport: i0, template: "<mat-timepicker-content-layout [title]=\"_intl.dialsTitle\" [orientation]=\"orientation\">\n <div\n tabindex=\"0\"\n class=\"mat-clock-dial-value\"\n hours\n [class.mat-clock-dial-value-active]=\"isHoursView\"\n (click)=\"onViewChange($event, 'hours')\"\n (keydown.space)=\"onViewChange($event, 'hours')\"\n >\n {{ _withZeroPrefix(selectedHour) }}\n </div>\n <div\n tabindex=\"0\"\n class=\"mat-clock-dial-value\"\n minutes\n [class.mat-clock-dial-value-active]=\"!isHoursView\"\n (click)=\"onViewChange($event, 'minutes')\"\n (keydown.space)=\"onViewChange($event, 'minutes')\"\n >\n {{ _withZeroPrefix(selectedMinute) }}\n </div>\n\n <ng-template mat-time-period [ngIf]=\"isMeridiem\">\n <mat-time-period\n [period]=\"period\"\n [disabledPeriod]=\"disabledPeriod\"\n [vertical]=\"orientation === 'vertical'\"\n (periodChanged)=\"_onPeriodChanged($event)\"\n ></mat-time-period>\n </ng-template>\n\n <div\n class=\"mat-clock-dial-faces\"\n [class.mat-clock-dial-faces-horizontal]=\"orientation === 'horizontal'\"\n >\n @if (isHoursView) {\n <mat-hours-clock-dial\n [@enterLeaveAnimation]\n [color]=\"color\"\n [selectedHour]=\"selectedHour\"\n [isMeridiem]=\"isMeridiem\"\n [availableHours]=\"_getAvailableHours()\"\n [touchUi]=\"touchUi\"\n (selectedChange)=\"_onHourChanged($event)\"\n (keydown)=\"_onKeydown($event, 'hour')\"\n ></mat-hours-clock-dial>\n }\n\n @if (!isHoursView) {\n <mat-minutes-clock-dial\n [@enterLeaveAnimation]\n [color]=\"color\"\n [selectedMinute]=\"selectedMinute\"\n [interval]=\"minuteInterval\"\n [availableMinutes]=\"availableMinutes\"\n [touchUi]=\"touchUi\"\n (selectedChange)=\"_onMinuteSelected($event)\"\n (keydown)=\"_onKeydown($event, 'minute')\"\n ></mat-minutes-clock-dial>\n }\n </div>\n</mat-timepicker-content-layout>\n", styles: [".mat-clock-dial-values{display:flex;width:100%}.mat-clock-dial-value{display:flex;align-items:center;justify-content:center;height:4.5rem;border-radius:.25rem;cursor:pointer}.mat-clock-dial-faces{margin-top:2.25rem}.mat-clock-dial-faces.mat-clock-dial-faces-horizontal{margin-top:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: MatTimepickerContentLayout, selector: "mat-timepicker-content-layout", inputs: ["title", "orientation"], exportAs: ["matTimepickerContent"] }, { kind: "component", type: MatHoursClockDial, selector: "mat-hours-clock-dial", inputs: ["selectedHour", "isMeridiem", "availableHours", "color", "touchUi"], outputs: ["selectedChange"], exportAs: ["matHoursClockDial"] }, { kind: "component", type: MatMinutesClockDial, selector: "mat-minutes-clock-dial", inputs: ["selectedMinute", "interval", "availableMinutes", "color", "touchUi"], outputs: ["selectedChange"], exportAs: ["matMinutesClockDial"] }, { kind: "component", type: MatTimePeriod, selector: "mat-time-period", inputs: ["vertical", "period", "disabledPeriod"], outputs: ["periodChanged"] }], animations: [enterLeaveAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
71
77
  }
72
78
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: MatClockDials, decorators: [{
@@ -83,9 +89,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImpor
83
89
  }, animations: [enterLeaveAnimation], template: "<mat-timepicker-content-layout [title]=\"_intl.dialsTitle\" [orientation]=\"orientation\">\n <div\n tabindex=\"0\"\n class=\"mat-clock-dial-value\"\n hours\n [class.mat-clock-dial-value-active]=\"isHoursView\"\n (click)=\"onViewChange($event, 'hours')\"\n (keydown.space)=\"onViewChange($event, 'hours')\"\n >\n {{ _withZeroPrefix(selectedHour) }}\n </div>\n <div\n tabindex=\"0\"\n class=\"mat-clock-dial-value\"\n minutes\n [class.mat-clock-dial-value-active]=\"!isHoursView\"\n (click)=\"onViewChange($event, 'minutes')\"\n (keydown.space)=\"onViewChange($event, 'minutes')\"\n >\n {{ _withZeroPrefix(selectedMinute) }}\n </div>\n\n <ng-template mat-time-period [ngIf]=\"isMeridiem\">\n <mat-time-period\n [period]=\"period\"\n [disabledPeriod]=\"disabledPeriod\"\n [vertical]=\"orientation === 'vertical'\"\n (periodChanged)=\"_onPeriodChanged($event)\"\n ></mat-time-period>\n </ng-template>\n\n <div\n class=\"mat-clock-dial-faces\"\n [class.mat-clock-dial-faces-horizontal]=\"orientation === 'horizontal'\"\n >\n @if (isHoursView) {\n <mat-hours-clock-dial\n [@enterLeaveAnimation]\n [color]=\"color\"\n [selectedHour]=\"selectedHour\"\n [isMeridiem]=\"isMeridiem\"\n [availableHours]=\"_getAvailableHours()\"\n [touchUi]=\"touchUi\"\n (selectedChange)=\"_onHourChanged($event)\"\n (keydown)=\"_onKeydown($event, 'hour')\"\n ></mat-hours-clock-dial>\n }\n\n @if (!isHoursView) {\n <mat-minutes-clock-dial\n [@enterLeaveAnimation]\n [color]=\"color\"\n [selectedMinute]=\"selectedMinute\"\n [interval]=\"minuteInterval\"\n [availableMinutes]=\"availableMinutes\"\n [touchUi]=\"touchUi\"\n (selectedChange)=\"_onMinuteSelected($event)\"\n (keydown)=\"_onKeydown($event, 'minute')\"\n ></mat-minutes-clock-dial>\n }\n </div>\n</mat-timepicker-content-layout>\n", styles: [".mat-clock-dial-values{display:flex;width:100%}.mat-clock-dial-value{display:flex;align-items:center;justify-content:center;height:4.5rem;border-radius:.25rem;cursor:pointer}.mat-clock-dial-faces{margin-top:2.25rem}.mat-clock-dial-faces.mat-clock-dial-faces-horizontal{margin-top:0}\n"] }]
84
90
  }], ctorParameters: () => [{ type: i1.MatTimepickerIntl }, { type: i2.TimeAdapter, decorators: [{
85
91
  type: Optional
86
- }] }, { type: i0.NgZone }, { type: i0.ElementRef }], propDecorators: { orientation: [{
92
+ }] }, { type: i0.NgZone }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }], propDecorators: { orientation: [{
87
93
  type: Input
88
94
  }], touchUi: [{
89
95
  type: Input
90
96
  }] } });
91
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xvY2stZGlhbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXQtdGltZXBpY2tlci9zcmMvbGliL2Nsb2NrLWRpYWxzLnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWF0LXRpbWVwaWNrZXIvc3JjL2xpYi9jbG9jay1kaWFscy5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUdqQixRQUFRLEVBR1IsS0FBSyxHQUNOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHM0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRzNELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7O0FBeUI5QyxNQUFNLE9BQU8sYUFBaUIsU0FBUSxlQUFrQjtJQWF0RCxZQUNTLEtBQXdCLEVBQ25CLFlBQTRCLEVBQ2hDLE9BQWUsRUFDZixXQUF1QjtRQUUvQixLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7UUFMYixVQUFLLEdBQUwsS0FBSyxDQUFtQjtRQUV2QixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBQ2YsZ0JBQVcsR0FBWCxX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O3FCQUN6QixjQUNXLENBQUMsbUJBQW1CLENBQUM7OzBCQWlCOUIsUUFBUTt1RkFiRixXQUFXO3NCQUFuQixLQUFLO2dCQUdHLE9BQU87c0JBQWYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxuICBPbkluaXQsXG4gIE9uRGVzdHJveSxcbiAgT3B0aW9uYWwsXG4gIE5nWm9uZSxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3Vic2NyaXB0aW9uLCB0YWtlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IFRpbWVBZGFwdGVyIH0gZnJvbSAnLi9hZGFwdGVyJztcbmltcG9ydCB7IE1hdFRpbWVGYWNlQmFzZSB9IGZyb20gJy4vdGltZS1mYWNlLWJhc2UnO1xuaW1wb3J0IHsgd2l0aFplcm9QcmVmaXhNZXJpZGllbSB9IGZyb20gJy4vdGltZS1pbnB1dC1iYXNlJztcbmltcG9ydCB7IE1hdFRpbWVwaWNrZXJJbnRsIH0gZnJvbSAnLi90aW1lcGlja2VyLWludGwnO1xuaW1wb3J0IHsgVGltZXBpY2tlck9yaWVudGF0aW9uIH0gZnJvbSAnLi9vcmllbnRhdGlvbic7XG5pbXBvcnQgeyBlbnRlckxlYXZlQW5pbWF0aW9uIH0gZnJvbSAnLi9jbG9jay1kaWFsLWFkbmltYXRpb24nO1xuaW1wb3J0IHsgTWF0VGltZXBpY2tlckNvbnRlbnRMYXlvdXQgfSBmcm9tICcuL3RpbWVwaWNrZXItY29udGVudC1sYXlvdXQnO1xuaW1wb3J0IHsgTWF0SG91cnNDbG9ja0RpYWwgfSBmcm9tICcuL2hvdXJzLWNsb2NrLWRpYWwnO1xuaW1wb3J0IHsgTWF0TWludXRlc0Nsb2NrRGlhbCB9IGZyb20gJy4vbWludXRlcy1jbG9jay1kaWFsJztcbmltcG9ydCB7IE1hdFRpbWVQZXJpb2QgfSBmcm9tICcuL3RpbWUtcGVyaW9kJztcblxuZXhwb3J0IHR5cGUgTWF0RGlhbFZpZXcgPSAnaG91cnMnIHwgJ21pbnV0ZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtYXQtY2xvY2stZGlhbHMnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE1hdFRpbWVwaWNrZXJDb250ZW50TGF5b3V0LFxuICAgIE1hdEhvdXJzQ2xvY2tEaWFsLFxuICAgIE1hdE1pbnV0ZXNDbG9ja0RpYWwsXG4gICAgTWF0VGltZVBlcmlvZCxcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2Nsb2NrLWRpYWxzLmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jbG9jay1kaWFscy5zY3NzJ10sXG4gIGV4cG9ydEFzOiAnbWF0Q2xvY2tEaWFscycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2RpYWwnLFxuICAgIGNsYXNzOiAnbWF0LWNsb2NrLWRpYWxzJyxcbiAgfSxcbiAgYW5pbWF0aW9uczogW2VudGVyTGVhdmVBbmltYXRpb25dLFxufSlcbmV4cG9ydCBjbGFzcyBNYXRDbG9ja0RpYWxzPFQ+IGV4dGVuZHMgTWF0VGltZUZhY2VCYXNlPFQ+IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAvKiogTGF5b3V0IG9yaWVudGF0aW9uLiAqL1xuICBASW5wdXQoKSBvcmllbnRhdGlvbjogVGltZXBpY2tlck9yaWVudGF0aW9uO1xuXG4gIC8qKiBXaGV0aGVyIHRoZSB0aW1lcGlja2VyIFVJIGlzIGluIHRvdWNoIG1vZGUuICovXG4gIEBJbnB1dCgpIHRvdWNoVWk6IGJvb2xlYW47XG5cbiAgaXNIb3Vyc1ZpZXcgPSB0cnVlO1xuXG4gIC8qKiBTcGVjaWZpZXMgdGhlIHZpZXcgb2YgY2xvY2sgZGlhbC4gKi9cbiAgcHJpdmF0ZSByZWFkb25seSBfdmlldyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWF0RGlhbFZpZXc+KCdob3VycycpO1xuICBwcml2YXRlIF92aWV3U3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gfCBudWxsID0gU3Vic2NyaXB0aW9uLkVNUFRZO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBfaW50bDogTWF0VGltZXBpY2tlckludGwsXG4gICAgQE9wdGlvbmFsKCkgX3RpbWVBZGFwdGVyOiBUaW1lQWRhcHRlcjxUPixcbiAgICBwcml2YXRlIF9uZ1pvbmU6IE5nWm9uZSxcbiAgICBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICApIHtcbiAgICBzdXBlcihfdGltZUFkYXB0ZXIpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fdmlld1N1YnNjcmlwdGlvbiA9IHRoaXMuX3ZpZXcuc3Vic2NyaWJlKCh2aWV3KSA9PiAodGhpcy5pc0hvdXJzVmlldyA9IHZpZXcgPT09ICdob3VycycpKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX3ZpZXdTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5fdmlld1N1YnNjcmlwdGlvbiA9IG51bGw7XG4gIH1cblxuICAvKiogQ2hhbmdlcyBjbG9jayBkaWFsIHZpZXcuICovXG4gIG9uVmlld0NoYW5nZShldmVudDogRXZlbnQsIHZpZXc6IE1hdERpYWxWaWV3KTogdm9pZCB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB0aGlzLl92aWV3Lm5leHQodmlldyk7XG4gIH1cblxuICBmb2N1c0FjdGl2ZUNlbGwoKTogdm9pZCB7XG4gICAgdGhpcy5fbmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgIHRoaXMuX25nWm9uZS5vblN0YWJsZS5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIGNvbnN0IGFjdGl2ZUNlbGw6IEhUTUxFbGVtZW50IHwgbnVsbCA9IHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKFxuICAgICAgICAgICAgJy5tYXQtdGltZXBpY2tlci1jb250ZW50IC5tYXQtY2xvY2stZGlhbC1jZWxsLWFjdGl2ZScsIC8vIHRvIGF2b2lkIGZvY3VzIGZvciBpbmxpbmUgbW9kZVxuICAgICAgICAgICk7XG5cbiAgICAgICAgICBpZiAoYWN0aXZlQ2VsbCkge1xuICAgICAgICAgICAgYWN0aXZlQ2VsbC5mb2N1cygpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnN0IGFjdGl2ZVBvaW50OiBIVE1MRWxlbWVudCB8IG51bGwgPSB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcihcbiAgICAgICAgICAgICcubWF0LXRpbWVwaWNrZXItY29udGVudCAubWF0LWNsb2NrLWRpYWwtaGFuZC1wb2ludCcsIC8vIHRvIGF2b2lkIGZvY3VzIGZvciBpbmxpbmUgbW9kZVxuICAgICAgICAgICk7XG5cbiAgICAgICAgICBpZiAoYWN0aXZlUG9pbnQpIHtcbiAgICAgICAgICAgIC8vIGlmIG5vIGFjdGl2ZSBjZWxsIHdlIG5lZWQgdG8gZm9jdXMgYSBzbWFsbCBkb3RcbiAgICAgICAgICAgIGFjdGl2ZVBvaW50LmZvY3VzKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9LCA1MCk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIF93aXRoWmVyb1ByZWZpeCh2YWx1ZTogbnVtYmVyKTogc3RyaW5nIHtcbiAgICBpZiAodmFsdWUgPT09IDApIHtcbiAgICAgIHJldHVybiAnMDAnO1xuICAgIH1cblxuICAgIHJldHVybiB3aXRoWmVyb1ByZWZpeE1lcmlkaWVtKHZhbHVlLCB0aGlzLmlzTWVyaWRpZW0pO1xuICB9XG5cbiAgLyoqIEhhbmRsZXMgaG91ciBzZWxlY3Rpb24uICovXG4gIF9vbkhvdXJDaGFuZ2VkKHsgaG91ciwgY2hhbmdlVmlldyA9IGZhbHNlIH06IHsgaG91cjogbnVtYmVyOyBjaGFuZ2VWaWV3PzogYm9vbGVhbiB9KTogdm9pZCB7XG4gICAgaWYgKGNoYW5nZVZpZXcpIHtcbiAgICAgIHRoaXMuX3ZpZXcubmV4dCgnbWludXRlcycpO1xuICAgIH1cbiAgICB0aGlzLl9vbkhvdXJTZWxlY3RlZChob3VyKTtcbiAgfVxufVxuIiwiPG1hdC10aW1lcGlja2VyLWNvbnRlbnQtbGF5b3V0IFt0aXRsZV09XCJfaW50bC5kaWFsc1RpdGxlXCIgW29yaWVudGF0aW9uXT1cIm9yaWVudGF0aW9uXCI+XG4gIDxkaXZcbiAgICB0YWJpbmRleD1cIjBcIlxuICAgIGNsYXNzPVwibWF0LWNsb2NrLWRpYWwtdmFsdWVcIlxuICAgIGhvdXJzXG4gICAgW2NsYXNzLm1hdC1jbG9jay1kaWFsLXZhbHVlLWFjdGl2ZV09XCJpc0hvdXJzVmlld1wiXG4gICAgKGNsaWNrKT1cIm9uVmlld0NoYW5nZSgkZXZlbnQsICdob3VycycpXCJcbiAgICAoa2V5ZG93bi5zcGFjZSk9XCJvblZpZXdDaGFuZ2UoJGV2ZW50LCAnaG91cnMnKVwiXG4gID5cbiAgICB7eyBfd2l0aFplcm9QcmVmaXgoc2VsZWN0ZWRIb3VyKSB9fVxuICA8L2Rpdj5cbiAgPGRpdlxuICAgIHRhYmluZGV4PVwiMFwiXG4gICAgY2xhc3M9XCJtYXQtY2xvY2stZGlhbC12YWx1ZVwiXG4gICAgbWludXRlc1xuICAgIFtjbGFzcy5tYXQtY2xvY2stZGlhbC12YWx1ZS1hY3RpdmVdPVwiIWlzSG91cnNWaWV3XCJcbiAgICAoY2xpY2spPVwib25WaWV3Q2hhbmdlKCRldmVudCwgJ21pbnV0ZXMnKVwiXG4gICAgKGtleWRvd24uc3BhY2UpPVwib25WaWV3Q2hhbmdlKCRldmVudCwgJ21pbnV0ZXMnKVwiXG4gID5cbiAgICB7eyBfd2l0aFplcm9QcmVmaXgoc2VsZWN0ZWRNaW51dGUpIH19XG4gIDwvZGl2PlxuXG4gIDxuZy10ZW1wbGF0ZSBtYXQtdGltZS1wZXJpb2QgW25nSWZdPVwiaXNNZXJpZGllbVwiPlxuICAgIDxtYXQtdGltZS1wZXJpb2RcbiAgICAgIFtwZXJpb2RdPVwicGVyaW9kXCJcbiAgICAgIFtkaXNhYmxlZFBlcmlvZF09XCJkaXNhYmxlZFBlcmlvZFwiXG4gICAgICBbdmVydGljYWxdPVwib3JpZW50YXRpb24gPT09ICd2ZXJ0aWNhbCdcIlxuICAgICAgKHBlcmlvZENoYW5nZWQpPVwiX29uUGVyaW9kQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICA+PC9tYXQtdGltZS1wZXJpb2Q+XG4gIDwvbmctdGVtcGxhdGU+XG5cbiAgPGRpdlxuICAgIGNsYXNzPVwibWF0LWNsb2NrLWRpYWwtZmFjZXNcIlxuICAgIFtjbGFzcy5tYXQtY2xvY2stZGlhbC1mYWNlcy1ob3Jpem9udGFsXT1cIm9yaWVudGF0aW9uID09PSAnaG9yaXpvbnRhbCdcIlxuICA+XG4gICAgQGlmIChpc0hvdXJzVmlldykge1xuICAgICAgPG1hdC1ob3Vycy1jbG9jay1kaWFsXG4gICAgICAgIFtAZW50ZXJMZWF2ZUFuaW1hdGlvbl1cbiAgICAgICAgW2NvbG9yXT1cImNvbG9yXCJcbiAgICAgICAgW3NlbGVjdGVkSG91cl09XCJzZWxlY3RlZEhvdXJcIlxuICAgICAgICBbaXNNZXJpZGllbV09XCJpc01lcmlkaWVtXCJcbiAgICAgICAgW2F2YWlsYWJsZUhvdXJzXT1cIl9nZXRBdmFpbGFibGVIb3VycygpXCJcbiAgICAgICAgW3RvdWNoVWldPVwidG91Y2hVaVwiXG4gICAgICAgIChzZWxlY3RlZENoYW5nZSk9XCJfb25Ib3VyQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgICAgKGtleWRvd24pPVwiX29uS2V5ZG93bigkZXZlbnQsICdob3VyJylcIlxuICAgICAgPjwvbWF0LWhvdXJzLWNsb2NrLWRpYWw+XG4gICAgfVxuXG4gICAgQGlmICghaXNIb3Vyc1ZpZXcpIHtcbiAgICAgIDxtYXQtbWludXRlcy1jbG9jay1kaWFsXG4gICAgICAgIFtAZW50ZXJMZWF2ZUFuaW1hdGlvbl1cbiAgICAgICAgW2NvbG9yXT1cImNvbG9yXCJcbiAgICAgICAgW3NlbGVjdGVkTWludXRlXT1cInNlbGVjdGVkTWludXRlXCJcbiAgICAgICAgW2ludGVydmFsXT1cIm1pbnV0ZUludGVydmFsXCJcbiAgICAgICAgW2F2YWlsYWJsZU1pbnV0ZXNdPVwiYXZhaWxhYmxlTWludXRlc1wiXG4gICAgICAgIFt0b3VjaFVpXT1cInRvdWNoVWlcIlxuICAgICAgICAoc2VsZWN0ZWRDaGFuZ2UpPVwiX29uTWludXRlU2VsZWN0ZWQoJGV2ZW50KVwiXG4gICAgICAgIChrZXlkb3duKT1cIl9vbktleWRvd24oJGV2ZW50LCAnbWludXRlJylcIlxuICAgICAgPjwvbWF0LW1pbnV0ZXMtY2xvY2stZGlhbD5cbiAgICB9XG4gIDwvZGl2PlxuPC9tYXQtdGltZXBpY2tlci1jb250ZW50LWxheW91dD5cbiJdfQ==
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xvY2stZGlhbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXQtdGltZXBpY2tlci9zcmMvbGliL2Nsb2NrLWRpYWxzLnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWF0LXRpbWVwaWNrZXIvc3JjL2xpYi9jbG9jay1kaWFscy5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUdqQixRQUFRLEVBR1IsS0FBSyxHQUVOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHM0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRzNELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7O0FBeUI5QyxNQUFNLE9BQU8sYUFDWCxTQUFRLGVBQWtCO0lBZTFCLFlBQ1MsS0FBd0IsRUFDbkIsWUFBNEIsRUFDaEMsT0FBZSxFQUNmLFdBQXVCLEVBQ3ZCLElBQXVCO1FBRS9CLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztRQU5iLFVBQUssR0FBTCxLQUFLLENBQW1CO1FBRXZCLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDZixn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aUIsY0FDZixJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWiwwQkFBMEI7d0JBQzFCLGlCQUFpQjt3QkFDakIsbUJBQW1CO3dCQUNuQixhQUFhO3FCQUNkLFlBR1MsZUFBZSxtQkFDUix1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJLFFBQy9CO3dCQUNKLElBQUksRUFBRSxNQUFNO3dCQUNaLEtBQUssRUFBRSxpQkFBaUI7cUJBQ3pCLGNBQ1csQ0FBQyxtQkFBbUIsQ0FBQzs7MEJBb0I5QixRQUFRO3VIQWJGLFdBQVc7c0JBQW5CLEtBQUs7Z0JBR0csT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG4gIE9uSW5pdCxcbiAgT25EZXN0cm95LFxuICBPcHRpb25hbCxcbiAgTmdab25lLFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3Vic2NyaXB0aW9uLCB0YWtlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IFRpbWVBZGFwdGVyIH0gZnJvbSAnLi9hZGFwdGVyJztcbmltcG9ydCB7IE1hdFRpbWVGYWNlQmFzZSB9IGZyb20gJy4vdGltZS1mYWNlLWJhc2UnO1xuaW1wb3J0IHsgd2l0aFplcm9QcmVmaXhNZXJpZGllbSB9IGZyb20gJy4vdGltZS1pbnB1dC1iYXNlJztcbmltcG9ydCB7IE1hdFRpbWVwaWNrZXJJbnRsIH0gZnJvbSAnLi90aW1lcGlja2VyLWludGwnO1xuaW1wb3J0IHsgVGltZXBpY2tlck9yaWVudGF0aW9uIH0gZnJvbSAnLi9vcmllbnRhdGlvbic7XG5pbXBvcnQgeyBlbnRlckxlYXZlQW5pbWF0aW9uIH0gZnJvbSAnLi9jbG9jay1kaWFsLWFkbmltYXRpb24nO1xuaW1wb3J0IHsgTWF0VGltZXBpY2tlckNvbnRlbnRMYXlvdXQgfSBmcm9tICcuL3RpbWVwaWNrZXItY29udGVudC1sYXlvdXQnO1xuaW1wb3J0IHsgTWF0SG91cnNDbG9ja0RpYWwgfSBmcm9tICcuL2hvdXJzLWNsb2NrLWRpYWwnO1xuaW1wb3J0IHsgTWF0TWludXRlc0Nsb2NrRGlhbCB9IGZyb20gJy4vbWludXRlcy1jbG9jay1kaWFsJztcbmltcG9ydCB7IE1hdFRpbWVQZXJpb2QgfSBmcm9tICcuL3RpbWUtcGVyaW9kJztcblxuZXhwb3J0IHR5cGUgTWF0RGlhbFZpZXcgPSAnaG91cnMnIHwgJ21pbnV0ZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtYXQtY2xvY2stZGlhbHMnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE1hdFRpbWVwaWNrZXJDb250ZW50TGF5b3V0LFxuICAgIE1hdEhvdXJzQ2xvY2tEaWFsLFxuICAgIE1hdE1pbnV0ZXNDbG9ja0RpYWwsXG4gICAgTWF0VGltZVBlcmlvZCxcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2Nsb2NrLWRpYWxzLmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jbG9jay1kaWFscy5zY3NzJ10sXG4gIGV4cG9ydEFzOiAnbWF0Q2xvY2tEaWFscycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2RpYWwnLFxuICAgIGNsYXNzOiAnbWF0LWNsb2NrLWRpYWxzJyxcbiAgfSxcbiAgYW5pbWF0aW9uczogW2VudGVyTGVhdmVBbmltYXRpb25dLFxufSlcbmV4cG9ydCBjbGFzcyBNYXRDbG9ja0RpYWxzPFQ+XG4gIGV4dGVuZHMgTWF0VGltZUZhY2VCYXNlPFQ+XG4gIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3lcbntcbiAgLyoqIExheW91dCBvcmllbnRhdGlvbi4gKi9cbiAgQElucHV0KCkgb3JpZW50YXRpb246IFRpbWVwaWNrZXJPcmllbnRhdGlvbjtcblxuICAvKiogV2hldGhlciB0aGUgdGltZXBpY2tlciBVSSBpcyBpbiB0b3VjaCBtb2RlLiAqL1xuICBASW5wdXQoKSB0b3VjaFVpOiBib29sZWFuO1xuXG4gIGlzSG91cnNWaWV3ID0gdHJ1ZTtcblxuICAvKiogU3BlY2lmaWVzIHRoZSB2aWV3IG9mIGNsb2NrIGRpYWwuICovXG4gIHByaXZhdGUgcmVhZG9ubHkgX3ZpZXcgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1hdERpYWxWaWV3PignaG91cnMnKTtcbiAgcHJpdmF0ZSBfdmlld1N1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uIHwgbnVsbCA9IFN1YnNjcmlwdGlvbi5FTVBUWTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgX2ludGw6IE1hdFRpbWVwaWNrZXJJbnRsLFxuICAgIEBPcHRpb25hbCgpIF90aW1lQWRhcHRlcjogVGltZUFkYXB0ZXI8VD4sXG4gICAgcHJpdmF0ZSBfbmdab25lOiBOZ1pvbmUsXG4gICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIF9jZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICApIHtcbiAgICBzdXBlcihfdGltZUFkYXB0ZXIpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fdmlld1N1YnNjcmlwdGlvbiA9IHRoaXMuX3ZpZXcuc3Vic2NyaWJlKFxuICAgICAgKHZpZXcpID0+ICh0aGlzLmlzSG91cnNWaWV3ID0gdmlldyA9PT0gJ2hvdXJzJyksXG4gICAgKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX3ZpZXdTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5fdmlld1N1YnNjcmlwdGlvbiA9IG51bGw7XG4gIH1cblxuICAvKiogQ2hhbmdlcyBjbG9jayBkaWFsIHZpZXcuICovXG4gIG9uVmlld0NoYW5nZShldmVudDogRXZlbnQsIHZpZXc6IE1hdERpYWxWaWV3KTogdm9pZCB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB0aGlzLl92aWV3Lm5leHQodmlldyk7XG4gIH1cblxuICBmb2N1c0FjdGl2ZUNlbGwoKTogdm9pZCB7XG4gICAgdGhpcy5fbmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgIHRoaXMuX25nWm9uZS5vblN0YWJsZS5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIGNvbnN0IGFjdGl2ZUNlbGw6IEhUTUxFbGVtZW50IHwgbnVsbCA9XG4gICAgICAgICAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcihcbiAgICAgICAgICAgICAgJy5tYXQtdGltZXBpY2tlci1jb250ZW50IC5tYXQtY2xvY2stZGlhbC1jZWxsLWFjdGl2ZScsIC8vIHRvIGF2b2lkIGZvY3VzIGZvciBpbmxpbmUgbW9kZVxuICAgICAgICAgICAgKTtcblxuICAgICAgICAgIGlmIChhY3RpdmVDZWxsKSB7XG4gICAgICAgICAgICBhY3RpdmVDZWxsLmZvY3VzKCk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29uc3QgYWN0aXZlUG9pbnQ6IEhUTUxFbGVtZW50IHwgbnVsbCA9XG4gICAgICAgICAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcihcbiAgICAgICAgICAgICAgJy5tYXQtdGltZXBpY2tlci1jb250ZW50IC5tYXQtY2xvY2stZGlhbC1oYW5kLXBvaW50JywgLy8gdG8gYXZvaWQgZm9jdXMgZm9yIGlubGluZSBtb2RlXG4gICAgICAgICAgICApO1xuXG4gICAgICAgICAgaWYgKGFjdGl2ZVBvaW50KSB7XG4gICAgICAgICAgICAvLyBpZiBubyBhY3RpdmUgY2VsbCB3ZSBuZWVkIHRvIGZvY3VzIGEgc21hbGwgZG90XG4gICAgICAgICAgICBhY3RpdmVQb2ludC5mb2N1cygpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSwgNTApO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBfd2l0aFplcm9QcmVmaXgodmFsdWU6IG51bWJlcik6IHN0cmluZyB7XG4gICAgaWYgKHZhbHVlID09PSAwKSB7XG4gICAgICByZXR1cm4gJzAwJztcbiAgICB9XG5cbiAgICByZXR1cm4gd2l0aFplcm9QcmVmaXhNZXJpZGllbSh2YWx1ZSwgdGhpcy5pc01lcmlkaWVtKTtcbiAgfVxuXG4gIG92ZXJyaWRlIF9vbk1pbnV0ZVNlbGVjdGVkKG1pbnV0ZTogbnVtYmVyKTogdm9pZCB7XG4gICAgc3VwZXIuX29uTWludXRlU2VsZWN0ZWQobWludXRlKTtcbiAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgLyoqIEhhbmRsZXMgaG91ciBzZWxlY3Rpb24uICovXG4gIF9vbkhvdXJDaGFuZ2VkKHtcbiAgICBob3VyLFxuICAgIGNoYW5nZVZpZXcgPSBmYWxzZSxcbiAgfToge1xuICAgIGhvdXI6IG51bWJlcjtcbiAgICBjaGFuZ2VWaWV3PzogYm9vbGVhbjtcbiAgfSk6IHZvaWQge1xuICAgIGlmIChjaGFuZ2VWaWV3KSB7XG4gICAgICB0aGlzLl92aWV3Lm5leHQoJ21pbnV0ZXMnKTtcbiAgICB9XG4gICAgdGhpcy5fb25Ib3VyU2VsZWN0ZWQoaG91cik7XG4gICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxufVxuIiwiPG1hdC10aW1lcGlja2VyLWNvbnRlbnQtbGF5b3V0IFt0aXRsZV09XCJfaW50bC5kaWFsc1RpdGxlXCIgW29yaWVudGF0aW9uXT1cIm9yaWVudGF0aW9uXCI+XG4gIDxkaXZcbiAgICB0YWJpbmRleD1cIjBcIlxuICAgIGNsYXNzPVwibWF0LWNsb2NrLWRpYWwtdmFsdWVcIlxuICAgIGhvdXJzXG4gICAgW2NsYXNzLm1hdC1jbG9jay1kaWFsLXZhbHVlLWFjdGl2ZV09XCJpc0hvdXJzVmlld1wiXG4gICAgKGNsaWNrKT1cIm9uVmlld0NoYW5nZSgkZXZlbnQsICdob3VycycpXCJcbiAgICAoa2V5ZG93bi5zcGFjZSk9XCJvblZpZXdDaGFuZ2UoJGV2ZW50LCAnaG91cnMnKVwiXG4gID5cbiAgICB7eyBfd2l0aFplcm9QcmVmaXgoc2VsZWN0ZWRIb3VyKSB9fVxuICA8L2Rpdj5cbiAgPGRpdlxuICAgIHRhYmluZGV4PVwiMFwiXG4gICAgY2xhc3M9XCJtYXQtY2xvY2stZGlhbC12YWx1ZVwiXG4gICAgbWludXRlc1xuICAgIFtjbGFzcy5tYXQtY2xvY2stZGlhbC12YWx1ZS1hY3RpdmVdPVwiIWlzSG91cnNWaWV3XCJcbiAgICAoY2xpY2spPVwib25WaWV3Q2hhbmdlKCRldmVudCwgJ21pbnV0ZXMnKVwiXG4gICAgKGtleWRvd24uc3BhY2UpPVwib25WaWV3Q2hhbmdlKCRldmVudCwgJ21pbnV0ZXMnKVwiXG4gID5cbiAgICB7eyBfd2l0aFplcm9QcmVmaXgoc2VsZWN0ZWRNaW51dGUpIH19XG4gIDwvZGl2PlxuXG4gIDxuZy10ZW1wbGF0ZSBtYXQtdGltZS1wZXJpb2QgW25nSWZdPVwiaXNNZXJpZGllbVwiPlxuICAgIDxtYXQtdGltZS1wZXJpb2RcbiAgICAgIFtwZXJpb2RdPVwicGVyaW9kXCJcbiAgICAgIFtkaXNhYmxlZFBlcmlvZF09XCJkaXNhYmxlZFBlcmlvZFwiXG4gICAgICBbdmVydGljYWxdPVwib3JpZW50YXRpb24gPT09ICd2ZXJ0aWNhbCdcIlxuICAgICAgKHBlcmlvZENoYW5nZWQpPVwiX29uUGVyaW9kQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICA+PC9tYXQtdGltZS1wZXJpb2Q+XG4gIDwvbmctdGVtcGxhdGU+XG5cbiAgPGRpdlxuICAgIGNsYXNzPVwibWF0LWNsb2NrLWRpYWwtZmFjZXNcIlxuICAgIFtjbGFzcy5tYXQtY2xvY2stZGlhbC1mYWNlcy1ob3Jpem9udGFsXT1cIm9yaWVudGF0aW9uID09PSAnaG9yaXpvbnRhbCdcIlxuICA+XG4gICAgQGlmIChpc0hvdXJzVmlldykge1xuICAgICAgPG1hdC1ob3Vycy1jbG9jay1kaWFsXG4gICAgICAgIFtAZW50ZXJMZWF2ZUFuaW1hdGlvbl1cbiAgICAgICAgW2NvbG9yXT1cImNvbG9yXCJcbiAgICAgICAgW3NlbGVjdGVkSG91cl09XCJzZWxlY3RlZEhvdXJcIlxuICAgICAgICBbaXNNZXJpZGllbV09XCJpc01lcmlkaWVtXCJcbiAgICAgICAgW2F2YWlsYWJsZUhvdXJzXT1cIl9nZXRBdmFpbGFibGVIb3VycygpXCJcbiAgICAgICAgW3RvdWNoVWldPVwidG91Y2hVaVwiXG4gICAgICAgIChzZWxlY3RlZENoYW5nZSk9XCJfb25Ib3VyQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgICAgKGtleWRvd24pPVwiX29uS2V5ZG93bigkZXZlbnQsICdob3VyJylcIlxuICAgICAgPjwvbWF0LWhvdXJzLWNsb2NrLWRpYWw+XG4gICAgfVxuXG4gICAgQGlmICghaXNIb3Vyc1ZpZXcpIHtcbiAgICAgIDxtYXQtbWludXRlcy1jbG9jay1kaWFsXG4gICAgICAgIFtAZW50ZXJMZWF2ZUFuaW1hdGlvbl1cbiAgICAgICAgW2NvbG9yXT1cImNvbG9yXCJcbiAgICAgICAgW3NlbGVjdGVkTWludXRlXT1cInNlbGVjdGVkTWludXRlXCJcbiAgICAgICAgW2ludGVydmFsXT1cIm1pbnV0ZUludGVydmFsXCJcbiAgICAgICAgW2F2YWlsYWJsZU1pbnV0ZXNdPVwiYXZhaWxhYmxlTWludXRlc1wiXG4gICAgICAgIFt0b3VjaFVpXT1cInRvdWNoVWlcIlxuICAgICAgICAoc2VsZWN0ZWRDaGFuZ2UpPVwiX29uTWludXRlU2VsZWN0ZWQoJGV2ZW50KVwiXG4gICAgICAgIChrZXlkb3duKT1cIl9vbktleWRvd24oJGV2ZW50LCAnbWludXRlJylcIlxuICAgICAgPjwvbWF0LW1pbnV0ZXMtY2xvY2stZGlhbD5cbiAgICB9XG4gIDwvZGl2PlxuPC9tYXQtdGltZXBpY2tlci1jb250ZW50LWxheW91dD5cbiJdfQ==
@@ -20,7 +20,7 @@ const DIGIT_KEYS = [
20
20
  'Digit8',
21
21
  'Digit9',
22
22
  ];
23
- const SPECIAL_KEYS = ['Backspace', 'Delete', 'ArrowLeft', 'ArrowRight'];
23
+ const SPECIAL_KEYS = ['Backspace', 'Delete', 'ArrowLeft', 'ArrowRight', 'Tab'];
24
24
  export class MatTimeInputBase {
25
25
  get value() {
26
26
  return this._value;
@@ -36,7 +36,8 @@ export class MatTimeInputBase {
36
36
  }, 0);
37
37
  }
38
38
  _keydown(event) {
39
- const isAllow = (DIGIT_KEYS.includes(event.code) && !event.shiftKey) || SPECIAL_KEYS.includes(event.code);
39
+ const isAllow = (DIGIT_KEYS.includes(event.code) && !event.shiftKey) ||
40
+ SPECIAL_KEYS.includes(event.code);
40
41
  if (!isAllow) {
41
42
  event.preventDefault();
42
43
  }
@@ -92,4 +93,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImpor
92
93
  type: HostListener,
93
94
  args: ['keydown', ['$event']]
94
95
  }] } });
95
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS1pbnB1dC1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWF0LXRpbWVwaWNrZXIvc3JjL2xpYi90aW1lLWlucHV0LWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFDTCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixTQUFTLEVBR1QsTUFBTSxFQUVOLFlBQVksR0FDYixNQUFNLGVBQWUsQ0FBQzs7QUFFdkIsTUFBTSxVQUFVLGNBQWMsQ0FBQyxLQUFhO0lBQzFDLE9BQU8sS0FBSyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQztBQUMvQyxDQUFDO0FBRUQsTUFBTSxVQUFVLHNCQUFzQixDQUFDLEtBQWEsRUFBRSxVQUFtQjtJQUN2RSxNQUFNLFFBQVEsR0FBRyxVQUFVLElBQUksS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFFeEQsT0FBTyxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDbEMsQ0FBQztBQUVELE1BQU0sVUFBVSxHQUFHO0lBQ2pCLFFBQVE7SUFDUixRQUFRO0lBQ1IsUUFBUTtJQUNSLFFBQVE7SUFDUixRQUFRO0lBQ1IsUUFBUTtJQUNSLFFBQVE7SUFDUixRQUFRO0lBQ1IsUUFBUTtJQUNSLFFBQVE7Q0FDVCxDQUFDO0FBQ0YsTUFBTSxZQUFZLEdBQUcsQ0FBQyxXQUFXLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxZQUFZLENBQUMsQ0FBQztBQUd4RSxNQUFNLE9BQWdCLGdCQUFnQjtJQUNwQyxJQUNJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUNELElBQUksS0FB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QUFLO2dCQWdCSSxXQUFXO3NCQUFwQixNQUFNO2dCQUU4QixRQUFRO3NCQUE1QyxZQUFZO3VCQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIElucHV0LFxuICBPdXRwdXQsXG4gIEV2ZW50RW1pdHRlcixcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgSW5qZWN0LFxuICBTZWxmLFxuICBIb3N0TGlzdGVuZXIsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgZnVuY3Rpb24gd2l0aFplcm9QcmVmaXgodmFsdWU6IG51bWJlcik6IHN0cmluZyB7XG4gIHJldHVybiB2YWx1ZSA8IDEwID8gYDAke3ZhbHVlfWAgOiBgJHt2YWx1ZX1gO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gd2l0aFplcm9QcmVmaXhNZXJpZGllbSh2YWx1ZTogbnVtYmVyLCBpc01lcmlkaWVtOiBib29sZWFuKTogc3RyaW5nIHtcbiAgY29uc3QgbmV3VmFsdWUgPSBpc01lcmlkaWVtICYmIHZhbHVlID09PSAwID8gMTIgOiB2YWx1ZTtcblxuICByZXR1cm4gd2l0aFplcm9QcmVmaXgobmV3VmFsdWUpO1xufVxuXG5jb25zdCBESUdJVF9LRVlTID0gW1xuICAnRGlnaXQwJyxcbiAgJ0RpZ2l0MScsXG4gICdEaWdpdDInLFxuICAnRGlnaXQzJyxcbiAgJ0RpZ2l0NCcsXG4gICdEaWdpdDUnLFxuICAnRGlnaXQ2JyxcbiAgJ0RpZ2l0NycsXG4gICdEaWdpdDgnLFxuICAnRGlnaXQ5Jyxcbl07XG5jb25zdCBTUEVDSUFMX0tFWVMgPSBbJ0JhY2tzcGFjZScsICdEZWxldGUnLCAnQXJyb3dMZWZ0JywgJ0Fycm93UmlnaHQnXTtcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgTWF0VGltZUlucHV0QmFzZSB7XG4gIEBJbnB1dCgpXG4gIGdldCB2YWx1ZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl92YWx1ZTtcbiAgfVxuICBzZXQgdmFsdWUodmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gICAgaWYgKCF0aGlzLmhhc0ZvY3VzKSB7XG4gICAgICB0aGlzLnNldElucHV0VmFsdWUodGhpcy5fdmFsdWUpO1xuICAgIH1cbiAgICAvLyB3ZSBuZWVkIHRpbWVvdXQgaGVyZSB0byBzZXQgcGxhY2Vob2xkZXIgZmlyc3QgdGltZVxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5zZXRJbnB1dFBsYWNlaG9sZGVyKHRoaXMuX3ZhbHVlKTtcbiAgICB9LCAwKTtcbiAgfVxuICBwcml2YXRlIF92YWx1ZTogbnVtYmVyO1xuXG4gIEBPdXRwdXQoKSB0aW1lQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24nLCBbJyRldmVudCddKSBfa2V5ZG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIGNvbnN0IGlzQWxsb3cgPVxuICAgICAgKERJR0lUX0tFWVMuaW5jbHVkZXMoZXZlbnQuY29kZSkgJiYgIWV2ZW50LnNoaWZ0S2V5KSB8fCBTUEVDSUFMX0tFWVMuaW5jbHVkZXMoZXZlbnQuY29kZSk7XG5cbiAgICBpZiAoIWlzQWxsb3cpIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICB9XG5cbiAgZ2V0IGlucHV0RWxlbWVudCgpIHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQgYXMgSFRNTElucHV0RWxlbWVudDtcbiAgfVxuXG4gIGdldCBoYXNGb2N1cygpIHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50Py5uYXRpdmVFbGVtZW50ID09PSB0aGlzLl9kb2N1bWVudC5hY3RpdmVFbGVtZW50O1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbGVtZW50OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+LFxuICAgIHByaXZhdGUgX2NkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSBfZG9jdW1lbnQ6IERvY3VtZW50LFxuICApIHt9XG5cbiAgZm9jdXMoKSB7XG4gICAgdGhpcy5zZXRJbnB1dFZhbHVlKG51bGwpO1xuICB9XG5cbiAgYmx1cigpIHtcbiAgICBjb25zdCBpc051bWJlciA9ICFpc05hTihOdW1iZXIodGhpcy5pbnB1dEVsZW1lbnQudmFsdWUpKTtcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMuX2Zvcm1hdFZhbHVlKFxuICAgICAgaXNOdW1iZXIgPyBOdW1iZXIodGhpcy5pbnB1dEVsZW1lbnQudmFsdWUgfHwgdGhpcy5fdmFsdWUpIDogdGhpcy52YWx1ZSxcbiAgICApO1xuICAgIHRoaXMuc2V0SW5wdXRWYWx1ZSh2YWx1ZSk7XG4gICAgdGhpcy5zZXRJbnB1dFBsYWNlaG9sZGVyKHZhbHVlKTtcbiAgICB0aGlzLnRpbWVDaGFuZ2VkLmVtaXQodmFsdWUpO1xuICB9XG5cbiAgc2V0SW5wdXRWYWx1ZSh2YWx1ZTogbnVtYmVyIHwgbnVsbCkge1xuICAgIGlmICh2YWx1ZSAhPT0gbnVsbCkge1xuICAgICAgdGhpcy5pbnB1dEVsZW1lbnQudmFsdWUgPSB0aGlzLl93aXRoWmVyb1ByZWZpeCh2YWx1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaW5wdXRFbGVtZW50LnZhbHVlID0gJyc7XG4gICAgfVxuXG4gICAgdGhpcy5fY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgc2V0SW5wdXRQbGFjZWhvbGRlcih2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5pbnB1dEVsZW1lbnQucGxhY2Vob2xkZXIgPSB0aGlzLl93aXRoWmVyb1ByZWZpeCh2YWx1ZSk7XG4gICAgdGhpcy5fY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgYWJzdHJhY3QgX3dpdGhaZXJvUHJlZml4KHZhbHVlOiBudW1iZXIpOiBzdHJpbmc7XG5cbiAgYWJzdHJhY3QgX2Zvcm1hdFZhbHVlKHZhbHVlOiBudW1iZXIpOiBudW1iZXI7XG59XG4iXX0=
96
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS1pbnB1dC1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWF0LXRpbWVwaWNrZXIvc3JjL2xpYi90aW1lLWlucHV0LWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFDTCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixTQUFTLEVBR1QsTUFBTSxFQUVOLFlBQVksR0FDYixNQUFNLGVBQWUsQ0FBQzs7QUFFdkIsTUFBTSxVQUFVLGNBQWMsQ0FBQyxLQUFhO0lBQzFDLE9BQU8sS0FBSyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQztBQUMvQyxDQUFDO0FBRUQsTUFBTSxVQUFVLHNCQUFzQixDQUNwQyxLQUFhLEVBQ2IsVUFBbUI7SUFFbkIsTUFBTSxRQUFRLEdBQUcsVUFBVSxJQUFJLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBRXhELE9BQU8sY0FBYyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQ2xDLENBQUM7QUFFRCxNQUFNLFVBQVUsR0FBRztJQUNqQixRQUFRO0lBQ1IsUUFBUTtJQUNSLFFBQVE7SUFDUixRQUFRO0lBQ1IsUUFBUTtJQUNSLFFBQVE7SUFDUixRQUFRO0lBQ1IsUUFBUTtJQUNSLFFBQVE7SUFDUixRQUFRO0NBQ1QsQ0FBQztBQUNGLE1BQU0sWUFBWSxHQUFHLENBQUMsV0FBVyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLEtBQUssQ0FBQyxDQUFDO0FBRy9FLE1BQU0sT0FBZ0IsZ0JBQWdCO0lBQ3BDLElBQ0ksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsS0FBYTtRQUNyQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNsQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUNqQztRQUNELHFEQUFxRDtRQUNyRCxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN4QyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDUixDQUFDO0lBS29DLFFBQVEsQ0FBQyxLQUFvQjtRQUNoRSxNQUFNLE9BQU8sR0FDWCxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQztZQUNwRCxZQUFZLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVwQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ1osS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1NBQ3hCO0lBQ0gsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFpQyxDQUFDO0lBQ3hELENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsYUFBYSxLQUFLLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDO0lBQ3RFLENBQUM7SUFFRCxZQUNVLE9BQXFDLEVBQ3JDLElBQXVCLEVBQ0wsU0FBbUI7UUFGckMsWUFBTyxHQUFQLE9BQU8sQ0FBOEI7UUFDckMsU0FBSSxHQUFKLElBQUksQ0FBbUI7UUFDTCxjQUFTLEdBQVQsU0FBUyxDQUFVO1FBdkJyQyxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7SUF3QmhELENBQUM7SUFFSixLQUFLO1FBQ0gsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQsSUFBSTtRQUNGLE1BQU0sUUFBUSxHQUFHLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDekQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FDN0IsUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUN2RSxDQUFDO1FBQ0YsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVELGFBQWEsQ0FBQyxLQUFvQjtRQUNoQyxJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUU7WUFDbEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUN2RDthQUFNO1lBQ0wsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1NBQzlCO1FBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQsbUJBQW1CLENBQUMsS0FBYTtRQUMvQixJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDM0IsQ0FBQzs4R0F0RW1CLGdCQUFnQiw2RUF3QzFCLFFBQVE7a0dBeENFLGdCQUFnQjs7MkZBQWhCLGdCQUFnQjtrQkFEckMsU0FBUzs7MEJBeUNMLE1BQU07MkJBQUMsUUFBUTt5Q0F0Q2QsS0FBSztzQkFEUixLQUFLO2dCQWdCSSxXQUFXO3NCQUFwQixNQUFNO2dCQUU4QixRQUFRO3NCQUE1QyxZQUFZO3VCQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIElucHV0LFxuICBPdXRwdXQsXG4gIEV2ZW50RW1pdHRlcixcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgSW5qZWN0LFxuICBTZWxmLFxuICBIb3N0TGlzdGVuZXIsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgZnVuY3Rpb24gd2l0aFplcm9QcmVmaXgodmFsdWU6IG51bWJlcik6IHN0cmluZyB7XG4gIHJldHVybiB2YWx1ZSA8IDEwID8gYDAke3ZhbHVlfWAgOiBgJHt2YWx1ZX1gO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gd2l0aFplcm9QcmVmaXhNZXJpZGllbShcbiAgdmFsdWU6IG51bWJlcixcbiAgaXNNZXJpZGllbTogYm9vbGVhbixcbik6IHN0cmluZyB7XG4gIGNvbnN0IG5ld1ZhbHVlID0gaXNNZXJpZGllbSAmJiB2YWx1ZSA9PT0gMCA/IDEyIDogdmFsdWU7XG5cbiAgcmV0dXJuIHdpdGhaZXJvUHJlZml4KG5ld1ZhbHVlKTtcbn1cblxuY29uc3QgRElHSVRfS0VZUyA9IFtcbiAgJ0RpZ2l0MCcsXG4gICdEaWdpdDEnLFxuICAnRGlnaXQyJyxcbiAgJ0RpZ2l0MycsXG4gICdEaWdpdDQnLFxuICAnRGlnaXQ1JyxcbiAgJ0RpZ2l0NicsXG4gICdEaWdpdDcnLFxuICAnRGlnaXQ4JyxcbiAgJ0RpZ2l0OScsXG5dO1xuY29uc3QgU1BFQ0lBTF9LRVlTID0gWydCYWNrc3BhY2UnLCAnRGVsZXRlJywgJ0Fycm93TGVmdCcsICdBcnJvd1JpZ2h0JywgJ1RhYiddO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBNYXRUaW1lSW5wdXRCYXNlIHtcbiAgQElucHV0KClcbiAgZ2V0IHZhbHVlKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xuICB9XG4gIHNldCB2YWx1ZSh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5fdmFsdWUgPSB2YWx1ZTtcbiAgICBpZiAoIXRoaXMuaGFzRm9jdXMpIHtcbiAgICAgIHRoaXMuc2V0SW5wdXRWYWx1ZSh0aGlzLl92YWx1ZSk7XG4gICAgfVxuICAgIC8vIHdlIG5lZWQgdGltZW91dCBoZXJlIHRvIHNldCBwbGFjZWhvbGRlciBmaXJzdCB0aW1lXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLnNldElucHV0UGxhY2Vob2xkZXIodGhpcy5fdmFsdWUpO1xuICAgIH0sIDApO1xuICB9XG4gIHByaXZhdGUgX3ZhbHVlOiBudW1iZXI7XG5cbiAgQE91dHB1dCgpIHRpbWVDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cbiAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bicsIFsnJGV2ZW50J10pIF9rZXlkb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgY29uc3QgaXNBbGxvdyA9XG4gICAgICAoRElHSVRfS0VZUy5pbmNsdWRlcyhldmVudC5jb2RlKSAmJiAhZXZlbnQuc2hpZnRLZXkpIHx8XG4gICAgICBTUEVDSUFMX0tFWVMuaW5jbHVkZXMoZXZlbnQuY29kZSk7XG5cbiAgICBpZiAoIWlzQWxsb3cpIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICB9XG5cbiAgZ2V0IGlucHV0RWxlbWVudCgpIHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQgYXMgSFRNTElucHV0RWxlbWVudDtcbiAgfVxuXG4gIGdldCBoYXNGb2N1cygpIHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50Py5uYXRpdmVFbGVtZW50ID09PSB0aGlzLl9kb2N1bWVudC5hY3RpdmVFbGVtZW50O1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbGVtZW50OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+LFxuICAgIHByaXZhdGUgX2NkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSBfZG9jdW1lbnQ6IERvY3VtZW50LFxuICApIHt9XG5cbiAgZm9jdXMoKSB7XG4gICAgdGhpcy5zZXRJbnB1dFZhbHVlKG51bGwpO1xuICB9XG5cbiAgYmx1cigpIHtcbiAgICBjb25zdCBpc051bWJlciA9ICFpc05hTihOdW1iZXIodGhpcy5pbnB1dEVsZW1lbnQudmFsdWUpKTtcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMuX2Zvcm1hdFZhbHVlKFxuICAgICAgaXNOdW1iZXIgPyBOdW1iZXIodGhpcy5pbnB1dEVsZW1lbnQudmFsdWUgfHwgdGhpcy5fdmFsdWUpIDogdGhpcy52YWx1ZSxcbiAgICApO1xuICAgIHRoaXMuc2V0SW5wdXRWYWx1ZSh2YWx1ZSk7XG4gICAgdGhpcy5zZXRJbnB1dFBsYWNlaG9sZGVyKHZhbHVlKTtcbiAgICB0aGlzLnRpbWVDaGFuZ2VkLmVtaXQodmFsdWUpO1xuICB9XG5cbiAgc2V0SW5wdXRWYWx1ZSh2YWx1ZTogbnVtYmVyIHwgbnVsbCkge1xuICAgIGlmICh2YWx1ZSAhPT0gbnVsbCkge1xuICAgICAgdGhpcy5pbnB1dEVsZW1lbnQudmFsdWUgPSB0aGlzLl93aXRoWmVyb1ByZWZpeCh2YWx1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaW5wdXRFbGVtZW50LnZhbHVlID0gJyc7XG4gICAgfVxuXG4gICAgdGhpcy5fY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgc2V0SW5wdXRQbGFjZWhvbGRlcih2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5pbnB1dEVsZW1lbnQucGxhY2Vob2xkZXIgPSB0aGlzLl93aXRoWmVyb1ByZWZpeCh2YWx1ZSk7XG4gICAgdGhpcy5fY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgYWJzdHJhY3QgX3dpdGhaZXJvUHJlZml4KHZhbHVlOiBudW1iZXIpOiBzdHJpbmc7XG5cbiAgYWJzdHJhY3QgX2Zvcm1hdFZhbHVlKHZhbHVlOiBudW1iZXIpOiBudW1iZXI7XG59XG4iXX0=
@@ -1094,7 +1094,7 @@ const DIGIT_KEYS = [
1094
1094
  'Digit8',
1095
1095
  'Digit9',
1096
1096
  ];
1097
- const SPECIAL_KEYS = ['Backspace', 'Delete', 'ArrowLeft', 'ArrowRight'];
1097
+ const SPECIAL_KEYS = ['Backspace', 'Delete', 'ArrowLeft', 'ArrowRight', 'Tab'];
1098
1098
  class MatTimeInputBase {
1099
1099
  get value() {
1100
1100
  return this._value;
@@ -1110,7 +1110,8 @@ class MatTimeInputBase {
1110
1110
  }, 0);
1111
1111
  }
1112
1112
  _keydown(event) {
1113
- const isAllow = (DIGIT_KEYS.includes(event.code) && !event.shiftKey) || SPECIAL_KEYS.includes(event.code);
1113
+ const isAllow = (DIGIT_KEYS.includes(event.code) && !event.shiftKey) ||
1114
+ SPECIAL_KEYS.includes(event.code);
1114
1115
  if (!isAllow) {
1115
1116
  event.preventDefault();
1116
1117
  }
@@ -1257,11 +1258,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImpor
1257
1258
  }] } });
1258
1259
 
1259
1260
  class MatClockDials extends MatTimeFaceBase {
1260
- constructor(_intl, _timeAdapter, _ngZone, _elementRef) {
1261
+ constructor(_intl, _timeAdapter, _ngZone, _elementRef, _cdr) {
1261
1262
  super(_timeAdapter);
1262
1263
  this._intl = _intl;
1263
1264
  this._ngZone = _ngZone;
1264
1265
  this._elementRef = _elementRef;
1266
+ this._cdr = _cdr;
1265
1267
  this.isHoursView = true;
1266
1268
  /** Specifies the view of clock dial. */
1267
1269
  this._view = new BehaviorSubject('hours');
@@ -1303,14 +1305,19 @@ class MatClockDials extends MatTimeFaceBase {
1303
1305
  }
1304
1306
  return withZeroPrefixMeridiem(value, this.isMeridiem);
1305
1307
  }
1308
+ _onMinuteSelected(minute) {
1309
+ super._onMinuteSelected(minute);
1310
+ this._cdr.detectChanges();
1311
+ }
1306
1312
  /** Handles hour selection. */
1307
- _onHourChanged({ hour, changeView = false }) {
1313
+ _onHourChanged({ hour, changeView = false, }) {
1308
1314
  if (changeView) {
1309
1315
  this._view.next('minutes');
1310
1316
  }
1311
1317
  this._onHourSelected(hour);
1318
+ this._cdr.detectChanges();
1312
1319
  }
1313
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: MatClockDials, deps: [{ token: MatTimepickerIntl }, { token: TimeAdapter, optional: true }, { token: i0.NgZone }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
1320
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: MatClockDials, deps: [{ token: MatTimepickerIntl }, { token: TimeAdapter, optional: true }, { token: i0.NgZone }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
1314
1321
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.9", type: MatClockDials, isStandalone: true, selector: "mat-clock-dials", inputs: { orientation: "orientation", touchUi: "touchUi" }, host: { attributes: { "role": "dial" }, classAttribute: "mat-clock-dials" }, exportAs: ["matClockDials"], usesInheritance: true, ngImport: i0, template: "<mat-timepicker-content-layout [title]=\"_intl.dialsTitle\" [orientation]=\"orientation\">\n <div\n tabindex=\"0\"\n class=\"mat-clock-dial-value\"\n hours\n [class.mat-clock-dial-value-active]=\"isHoursView\"\n (click)=\"onViewChange($event, 'hours')\"\n (keydown.space)=\"onViewChange($event, 'hours')\"\n >\n {{ _withZeroPrefix(selectedHour) }}\n </div>\n <div\n tabindex=\"0\"\n class=\"mat-clock-dial-value\"\n minutes\n [class.mat-clock-dial-value-active]=\"!isHoursView\"\n (click)=\"onViewChange($event, 'minutes')\"\n (keydown.space)=\"onViewChange($event, 'minutes')\"\n >\n {{ _withZeroPrefix(selectedMinute) }}\n </div>\n\n <ng-template mat-time-period [ngIf]=\"isMeridiem\">\n <mat-time-period\n [period]=\"period\"\n [disabledPeriod]=\"disabledPeriod\"\n [vertical]=\"orientation === 'vertical'\"\n (periodChanged)=\"_onPeriodChanged($event)\"\n ></mat-time-period>\n </ng-template>\n\n <div\n class=\"mat-clock-dial-faces\"\n [class.mat-clock-dial-faces-horizontal]=\"orientation === 'horizontal'\"\n >\n @if (isHoursView) {\n <mat-hours-clock-dial\n [@enterLeaveAnimation]\n [color]=\"color\"\n [selectedHour]=\"selectedHour\"\n [isMeridiem]=\"isMeridiem\"\n [availableHours]=\"_getAvailableHours()\"\n [touchUi]=\"touchUi\"\n (selectedChange)=\"_onHourChanged($event)\"\n (keydown)=\"_onKeydown($event, 'hour')\"\n ></mat-hours-clock-dial>\n }\n\n @if (!isHoursView) {\n <mat-minutes-clock-dial\n [@enterLeaveAnimation]\n [color]=\"color\"\n [selectedMinute]=\"selectedMinute\"\n [interval]=\"minuteInterval\"\n [availableMinutes]=\"availableMinutes\"\n [touchUi]=\"touchUi\"\n (selectedChange)=\"_onMinuteSelected($event)\"\n (keydown)=\"_onKeydown($event, 'minute')\"\n ></mat-minutes-clock-dial>\n }\n </div>\n</mat-timepicker-content-layout>\n", styles: [".mat-clock-dial-values{display:flex;width:100%}.mat-clock-dial-value{display:flex;align-items:center;justify-content:center;height:4.5rem;border-radius:.25rem;cursor:pointer}.mat-clock-dial-faces{margin-top:2.25rem}.mat-clock-dial-faces.mat-clock-dial-faces-horizontal{margin-top:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: MatTimepickerContentLayout, selector: "mat-timepicker-content-layout", inputs: ["title", "orientation"], exportAs: ["matTimepickerContent"] }, { kind: "component", type: MatHoursClockDial, selector: "mat-hours-clock-dial", inputs: ["selectedHour", "isMeridiem", "availableHours", "color", "touchUi"], outputs: ["selectedChange"], exportAs: ["matHoursClockDial"] }, { kind: "component", type: MatMinutesClockDial, selector: "mat-minutes-clock-dial", inputs: ["selectedMinute", "interval", "availableMinutes", "color", "touchUi"], outputs: ["selectedChange"], exportAs: ["matMinutesClockDial"] }, { kind: "component", type: MatTimePeriod, selector: "mat-time-period", inputs: ["vertical", "period", "disabledPeriod"], outputs: ["periodChanged"] }], animations: [enterLeaveAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
1315
1322
  }
1316
1323
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: MatClockDials, decorators: [{
@@ -1327,7 +1334,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImpor
1327
1334
  }, animations: [enterLeaveAnimation], template: "<mat-timepicker-content-layout [title]=\"_intl.dialsTitle\" [orientation]=\"orientation\">\n <div\n tabindex=\"0\"\n class=\"mat-clock-dial-value\"\n hours\n [class.mat-clock-dial-value-active]=\"isHoursView\"\n (click)=\"onViewChange($event, 'hours')\"\n (keydown.space)=\"onViewChange($event, 'hours')\"\n >\n {{ _withZeroPrefix(selectedHour) }}\n </div>\n <div\n tabindex=\"0\"\n class=\"mat-clock-dial-value\"\n minutes\n [class.mat-clock-dial-value-active]=\"!isHoursView\"\n (click)=\"onViewChange($event, 'minutes')\"\n (keydown.space)=\"onViewChange($event, 'minutes')\"\n >\n {{ _withZeroPrefix(selectedMinute) }}\n </div>\n\n <ng-template mat-time-period [ngIf]=\"isMeridiem\">\n <mat-time-period\n [period]=\"period\"\n [disabledPeriod]=\"disabledPeriod\"\n [vertical]=\"orientation === 'vertical'\"\n (periodChanged)=\"_onPeriodChanged($event)\"\n ></mat-time-period>\n </ng-template>\n\n <div\n class=\"mat-clock-dial-faces\"\n [class.mat-clock-dial-faces-horizontal]=\"orientation === 'horizontal'\"\n >\n @if (isHoursView) {\n <mat-hours-clock-dial\n [@enterLeaveAnimation]\n [color]=\"color\"\n [selectedHour]=\"selectedHour\"\n [isMeridiem]=\"isMeridiem\"\n [availableHours]=\"_getAvailableHours()\"\n [touchUi]=\"touchUi\"\n (selectedChange)=\"_onHourChanged($event)\"\n (keydown)=\"_onKeydown($event, 'hour')\"\n ></mat-hours-clock-dial>\n }\n\n @if (!isHoursView) {\n <mat-minutes-clock-dial\n [@enterLeaveAnimation]\n [color]=\"color\"\n [selectedMinute]=\"selectedMinute\"\n [interval]=\"minuteInterval\"\n [availableMinutes]=\"availableMinutes\"\n [touchUi]=\"touchUi\"\n (selectedChange)=\"_onMinuteSelected($event)\"\n (keydown)=\"_onKeydown($event, 'minute')\"\n ></mat-minutes-clock-dial>\n }\n </div>\n</mat-timepicker-content-layout>\n", styles: [".mat-clock-dial-values{display:flex;width:100%}.mat-clock-dial-value{display:flex;align-items:center;justify-content:center;height:4.5rem;border-radius:.25rem;cursor:pointer}.mat-clock-dial-faces{margin-top:2.25rem}.mat-clock-dial-faces.mat-clock-dial-faces-horizontal{margin-top:0}\n"] }]
1328
1335
  }], ctorParameters: () => [{ type: MatTimepickerIntl }, { type: TimeAdapter, decorators: [{
1329
1336
  type: Optional
1330
- }] }, { type: i0.NgZone }, { type: i0.ElementRef }], propDecorators: { orientation: [{
1337
+ }] }, { type: i0.NgZone }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }], propDecorators: { orientation: [{
1331
1338
  type: Input
1332
1339
  }], touchUi: [{
1333
1340
  type: Input