UNPKG

@material-extra/timepicker

Version:
121 lines 15.4 kB
import { Component, EventEmitter, Input, Output } from '@angular/core'; import { Duration } from '../timepicker.model'; import * as i0 from "@angular/core"; import * as i1 from "../timepicker-dialog-header/timepicker-dialog-header.component"; import * as i2 from "../timepicker-dialog-body/timepicker-dialog-body.component"; import * as i3 from "../timepicker-dialog-footer/timepicker-dialog-footer.component"; export class MateTimepickerDialogComponent { constructor() { this.clockActive = 'hour'; this.valueActive = 0; this.second = false; this.change = new EventEmitter(); this.cancel = new EventEmitter(); } set value(value) { if (value) { this._value = value; } else if (this.defaultValue) { this._value = this.defaultValue.clone(); } else { this._value = Duration.now(this.second); } this.valueActive = this._value.getValue(this.clockActive); } get value() { return this._value; } ngOnInit() { if (!this._value) { this._value = Duration.now(this.second); } this.valueActive = this._value.getValue(this.clockActive); } onActive(type) { this.clockActive = type; this.valueActive = this._value.getValue(type); } onChange(value) { this._value = this._value.setNew(value.type, value.value); this.valueActive = value.value; } onSwitch() { if (this.clockActive === 'hour') { this.onActive('minute'); } else if (this.second && this.clockActive === 'minute') { this.onActive('second'); } } onClockSwitch(type) { if (type === 'right') { this.onSwitch(); } else if (type === 'left') { if (this.clockActive === 'second') { this.onActive('minute'); } else if (this.clockActive === 'minute') { this.onActive('hour'); } } else if (type === 'start' && this.clockActive !== 'hour') { this.onActive('hour'); } else if (type === 'end') { if (!this.second && this.clockActive !== 'minute') { this.onActive('minute'); } else if (this.second && this.clockActive !== 'second') { this.onActive('second'); } } } onOk() { this.change.emit(this._value); } onCancel() { this.cancel.emit(); } } MateTimepickerDialogComponent.ɵfac = function MateTimepickerDialogComponent_Factory(t) { return new (t || MateTimepickerDialogComponent)(); }; MateTimepickerDialogComponent.ɵcmp = i0.ɵɵdefineComponent({ type: MateTimepickerDialogComponent, selectors: [["mate-timepicker-dialog"]], hostAttrs: [1, "mate-timepicker-dialog"], inputs: { second: "second", defaultValue: "defaultValue", value: "value" }, outputs: { change: "change", cancel: "cancel" }, exportAs: ["mateTimepickerDialog"], decls: 3, vars: 5, consts: [[3, "type", "value", "second", "active"], [3, "value", "type", "change", "switchClock", "enterPress", "finish"], [3, "clickOk", "clickCancel"]], template: function MateTimepickerDialogComponent_Template(rf, ctx) { if (rf & 1) { i0.ɵɵelementStart(0, "mate-timepicker-dialog-header", 0); i0.ɵɵlistener("active", function MateTimepickerDialogComponent_Template_mate_timepicker_dialog_header_active_0_listener($event) { return ctx.onActive($event); }); i0.ɵɵelementEnd(); i0.ɵɵelementStart(1, "mate-timepicker-dialog-body", 1); i0.ɵɵlistener("change", function MateTimepickerDialogComponent_Template_mate_timepicker_dialog_body_change_1_listener($event) { return ctx.onChange($event); })("switchClock", function MateTimepickerDialogComponent_Template_mate_timepicker_dialog_body_switchClock_1_listener($event) { return ctx.onClockSwitch($event); })("enterPress", function MateTimepickerDialogComponent_Template_mate_timepicker_dialog_body_enterPress_1_listener() { return ctx.onOk(); })("finish", function MateTimepickerDialogComponent_Template_mate_timepicker_dialog_body_finish_1_listener() { return ctx.onSwitch(); }); i0.ɵɵelementEnd(); i0.ɵɵelementStart(2, "mate-timepicker-dialog-footer", 2); i0.ɵɵlistener("clickOk", function MateTimepickerDialogComponent_Template_mate_timepicker_dialog_footer_clickOk_2_listener() { return ctx.onOk(); })("clickCancel", function MateTimepickerDialogComponent_Template_mate_timepicker_dialog_footer_clickCancel_2_listener() { return ctx.onCancel(); }); i0.ɵɵelementEnd(); } if (rf & 2) { i0.ɵɵproperty("type", ctx.clockActive)("value", ctx.value)("second", ctx.second); i0.ɵɵadvance(1); i0.ɵɵproperty("value", ctx.valueActive)("type", ctx.clockActive); } }, directives: [i1.MateTimepickerDialogHeaderComponent, i2.MateTimepickerDialogBodyComponent, i3.MateTimepickerDialogFooterComponent], styles: [".mate-timepicker-dialog[_nghost-%COMP%]{display:flex;flex-direction:column;height:420px;padding:8px;width:280px}.mate-timepicker-dialog[_nghost-%COMP%] .mate-dialog-container[_ngcontent-%COMP%]{overflow:visible}"] }); /*@__PURE__*/ (function () { i0.ɵsetClassMetadata(MateTimepickerDialogComponent, [{ type: Component, args: [{ selector: 'mate-timepicker-dialog', templateUrl: './timepicker-dialog.component.html', styleUrls: ['./timepicker-dialog.component.scss'], host: { class: 'mate-timepicker-dialog' }, exportAs: 'mateTimepickerDialog' }] }], function () { return []; }, { second: [{ type: Input }], defaultValue: [{ type: Input }], value: [{ type: Input }], change: [{ type: Output }], cancel: [{ type: Output }] }); })(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZXBpY2tlci1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkQ6L0RvY3VtZW50cy9MaWJyYXJ5L0FuZ3VsYXIvbWF0ZXJpYWwtZXh0ZW5kL3Byb2plY3RzL21hdGVyaWFsL3RpbWVwaWNrZXIvc3JjLyIsInNvdXJjZXMiOlsibGliL3RpbWVwaWNrZXItZGlhbG9nL3RpbWVwaWNrZXItZGlhbG9nLmNvbXBvbmVudC50cyIsImxpYi90aW1lcGlja2VyLWRpYWxvZy90aW1lcGlja2VyLWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRTdFLE9BQU8sRUFBeUIsUUFBUSxFQUFDLE1BQU0scUJBQXFCLENBQUM7Ozs7O0FBV3JFLE1BQU0sT0FBTyw2QkFBNkI7SUFpQ3RDO1FBL0JPLGdCQUFXLEdBQWMsTUFBTSxDQUFDO1FBQ2hDLGdCQUFXLEdBQUcsQ0FBQyxDQUFDO1FBR2hCLFdBQU0sR0FBWSxLQUFLLENBQUM7UUFzQnhCLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBWSxDQUFDO1FBR3RDLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0lBR3pDLENBQUM7SUF2QkQsSUFDVyxLQUFLLENBQUMsS0FBZTtRQUM1QixJQUFJLEtBQUssRUFBRTtZQUNQLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1NBQ3ZCO2FBQU0sSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQzFCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUMzQzthQUFNO1lBQ0gsSUFBSSxDQUFDLE1BQU0sR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUMzQztRQUNELElBQUksQ0FBQyxXQUFXLEdBQUcsSUFB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Qix5QkFBcUIsSUFBckMsNEhBQ2IsVUFBTSxJQURPLG9IQUNLLGNBQVUsSUFEZjtRQUV4RCxpQkFBOEI7UUFDOUIsd0RBQ2dDO1FBREQscUlBQVcsVUFBTSxJQUFDLGdJQUFnQixjQUFVLElBQTFCO1FBQ2pELGlCQUFnQzs7UUFQRCxzQ0FBb0Isb0JBQUEsc0JBQUE7UUFFdEIsZUFBcUI7UUFBckIsdUNBQXFCLHlCQUFBOztrRERXckMsNkJBQTZCO2NBVHpDLFNBQVM7ZUFBQztnQkFDUCxRQUFRLEVBQUUsd0JBQXdCO2dCQUNsQyxXQUFXLEVBQUUsb0NBQW9DO2dCQUNqRCxTQUFTLEVBQUUsQ0FBQyxvQ0FBb0MsQ0FBQztnQkFDakQsSUFBSSxFQUFFO29CQUNGLEtBQUssRUFBRSx3QkFBd0I7aUJBQ2xDO2dCQUNELFFBQVEsRUFBRSxzQkFBc0I7YUFDbkM7c0NBT1UsTUFBTTtrQkFEWixLQUFLO1lBSUMsWUFBWTtrQkFEbEIsS0FBSztZQUlLLEtBQUs7a0JBRGYsS0FBSztZQWlCQyxNQUFNO2tCQURaLE1BQU07WUFJQSxNQUFNO2tCQURaLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHtDbG9ja0NoYW5nZSwgQ2xvY2tUeXBlLCBEdXJhdGlvbn0gZnJvbSAnLi4vdGltZXBpY2tlci5tb2RlbCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnbWF0ZS10aW1lcGlja2VyLWRpYWxvZycsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vdGltZXBpY2tlci1kaWFsb2cuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vdGltZXBpY2tlci1kaWFsb2cuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGhvc3Q6IHtcclxuICAgICAgICBjbGFzczogJ21hdGUtdGltZXBpY2tlci1kaWFsb2cnXHJcbiAgICB9LFxyXG4gICAgZXhwb3J0QXM6ICdtYXRlVGltZXBpY2tlckRpYWxvZydcclxufSlcclxuZXhwb3J0IGNsYXNzIE1hdGVUaW1lcGlja2VyRGlhbG9nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIHByaXZhdGUgX3ZhbHVlOiBEdXJhdGlvbjtcclxuICAgIHB1YmxpYyBjbG9ja0FjdGl2ZTogQ2xvY2tUeXBlID0gJ2hvdXInO1xyXG4gICAgcHVibGljIHZhbHVlQWN0aXZlID0gMDtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIHNlY29uZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgZGVmYXVsdFZhbHVlOiBEdXJhdGlvbjtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIHNldCB2YWx1ZSh2YWx1ZTogRHVyYXRpb24pIHtcclxuICAgICAgICBpZiAodmFsdWUpIHtcclxuICAgICAgICAgICAgdGhpcy5fdmFsdWUgPSB2YWx1ZTtcclxuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuZGVmYXVsdFZhbHVlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3ZhbHVlID0gdGhpcy5kZWZhdWx0VmFsdWUuY2xvbmUoKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLl92YWx1ZSA9IER1cmF0aW9uLm5vdyh0aGlzLnNlY29uZCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMudmFsdWVBY3RpdmUgPSB0aGlzLl92YWx1ZS5nZXRWYWx1ZSh0aGlzLmNsb2NrQWN0aXZlKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0IHZhbHVlKCk6IER1cmF0aW9uIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fdmFsdWU7XHJcbiAgICB9XHJcblxyXG4gICAgQE91dHB1dCgpXHJcbiAgICBwdWJsaWMgY2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxEdXJhdGlvbj4oKTtcclxuXHJcbiAgICBAT3V0cHV0KClcclxuICAgIHB1YmxpYyBjYW5jZWwgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gICAgY29uc3RydWN0b3IoKSB7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKSB7XHJcbiAgICAgICAgaWYgKCF0aGlzLl92YWx1ZSkge1xyXG4gICAgICAgICAgICB0aGlzLl92YWx1ZSA9IER1cmF0aW9uLm5vdyh0aGlzLnNlY29uZCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMudmFsdWVBY3RpdmUgPSB0aGlzLl92YWx1ZS5nZXRWYWx1ZSh0aGlzLmNsb2NrQWN0aXZlKTtcclxuICAgIH1cclxuXHJcbiAgICBvbkFjdGl2ZSh0eXBlOiBDbG9ja1R5cGUpIHtcclxuICAgICAgICB0aGlzLmNsb2NrQWN0aXZlID0gdHlwZTtcclxuICAgICAgICB0aGlzLnZhbHVlQWN0aXZlID0gdGhpcy5fdmFsdWUuZ2V0VmFsdWUodHlwZSk7XHJcbiAgICB9XHJcblxyXG4gICAgb25DaGFuZ2UodmFsdWU6IENsb2NrQ2hhbmdlKSB7XHJcbiAgICAgICAgdGhpcy5fdmFsdWUgPSB0aGlzLl92YWx1ZS5zZXROZXcodmFsdWUudHlwZSwgdmFsdWUudmFsdWUpO1xyXG4gICAgICAgIHRoaXMudmFsdWVBY3RpdmUgPSB2YWx1ZS52YWx1ZTtcclxuICAgIH1cclxuXHJcbiAgICBvblN3aXRjaCgpIHtcclxuICAgICAgICBpZiAodGhpcy5jbG9ja0FjdGl2ZSA9PT0gJ2hvdXInKSB7XHJcbiAgICAgICAgICAgIHRoaXMub25BY3RpdmUoJ21pbnV0ZScpO1xyXG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5zZWNvbmQgJiYgdGhpcy5jbG9ja0FjdGl2ZSA9PT0gJ21pbnV0ZScpIHtcclxuICAgICAgICAgICAgdGhpcy5vbkFjdGl2ZSgnc2Vjb25kJyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIG9uQ2xvY2tTd2l0Y2godHlwZTogc3RyaW5nKSB7XHJcbiAgICAgICAgaWYgKHR5cGUgPT09ICdyaWdodCcpIHtcclxuICAgICAgICAgICAgdGhpcy5vblN3aXRjaCgpO1xyXG4gICAgICAgIH0gZWxzZSBpZiAodHlwZSA9PT0gJ2xlZnQnKSB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLmNsb2NrQWN0aXZlID09PSAnc2Vjb25kJykge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5vbkFjdGl2ZSgnbWludXRlJyk7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5jbG9ja0FjdGl2ZSA9PT0gJ21pbnV0ZScpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMub25BY3RpdmUoJ2hvdXInKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSBpZiAodHlwZSA9PT0gJ3N0YXJ0JyAmJiB0aGlzLmNsb2NrQWN0aXZlICE9PSAnaG91cicpIHtcclxuICAgICAgICAgICAgdGhpcy5vbkFjdGl2ZSgnaG91cicpO1xyXG4gICAgICAgIH0gZWxzZSBpZiAodHlwZSA9PT0gJ2VuZCcpIHtcclxuICAgICAgICAgICAgaWYgKCF0aGlzLnNlY29uZCAmJiB0aGlzLmNsb2NrQWN0aXZlICE9PSAnbWludXRlJykge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5vbkFjdGl2ZSgnbWludXRlJyk7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5zZWNvbmQgJiYgdGhpcy5jbG9ja0FjdGl2ZSAhPT0gJ3NlY29uZCcpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMub25BY3RpdmUoJ3NlY29uZCcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIG9uT2soKSB7XHJcbiAgICAgICAgdGhpcy5jaGFuZ2UuZW1pdCh0aGlzLl92YWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgb25DYW5jZWwoKSB7XHJcbiAgICAgICAgdGhpcy5jYW5jZWwuZW1pdCgpO1xyXG4gICAgfVxyXG59XHJcbiIsIjxtYXRlLXRpbWVwaWNrZXItZGlhbG9nLWhlYWRlciBbdHlwZV09XCJjbG9ja0FjdGl2ZVwiIFt2YWx1ZV09XCJ2YWx1ZVwiIFtzZWNvbmRdPVwic2Vjb25kXCIgKGFjdGl2ZSk9XCJvbkFjdGl2ZSgkZXZlbnQpXCI+XHJcbjwvbWF0ZS10aW1lcGlja2VyLWRpYWxvZy1oZWFkZXI+XHJcbjxtYXRlLXRpbWVwaWNrZXItZGlhbG9nLWJvZHkgW3ZhbHVlXT1cInZhbHVlQWN0aXZlXCIgW3R5cGVdPVwiY2xvY2tBY3RpdmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwib25DaGFuZ2UoJGV2ZW50KVwiIChzd2l0Y2hDbG9jayk9XCJvbkNsb2NrU3dpdGNoKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIChlbnRlclByZXNzKT1cIm9uT2soKVwiIChmaW5pc2gpPVwib25Td2l0Y2goKVwiPlxyXG48L21hdGUtdGltZXBpY2tlci1kaWFsb2ctYm9keT5cclxuPG1hdGUtdGltZXBpY2tlci1kaWFsb2ctZm9vdGVyIChjbGlja09rKT1cIm9uT2soKVwiIChjbGlja0NhbmNlbCk9XCJvbkNhbmNlbCgpXCI+XHJcbjwvbWF0ZS10aW1lcGlja2VyLWRpYWxvZy1mb290ZXI+XHJcbiJdfQ==