UNPKG

@vipstorage/material-datetime-picker

Version:
54 lines 8.22 kB
import { DateAdapter } from '@angular/material/core'; export class NgxMatDateAdapter extends DateAdapter { /** * Check if two date have same time * @param a Date 1 * @param b Date 2 */ isSameTime(a, b) { if (a == null || b == null) return true; return this.getHour(a) === this.getHour(b) && this.getMinute(a) === this.getMinute(b) && this.getSecond(a) === this.getSecond(b); } /** * Copy time from a date to a another date * @param toDate * @param fromDate */ copyTime(toDate, fromDate) { this.setHour(toDate, this.getHour(fromDate)); this.setMinute(toDate, this.getMinute(fromDate)); this.setSecond(toDate, this.getSecond(fromDate)); } /** * Compares two dates. * @param first The first date to compare. * @param second The second date to compare. * @returns 0 if the dates are equal, a number less than 0 if the first date is earlier, * a number greater than 0 if the first date is later. */ compareDateWithTime(first, second, showSeconds) { let res = super.compareDate(first, second) || this.getHour(first) - this.getHour(second) || this.getMinute(first) - this.getMinute(second); if (showSeconds) { res = res || this.getSecond(first) - this.getSecond(second); } return res; } /** * Set time by using default values * @param defaultTime List default values [hour, minute, second] */ setTimeByDefaultValues(date, defaultTime) { if (!Array.isArray(defaultTime)) { throw Error('@Input DefaultTime should be an array'); } this.setHour(date, defaultTime[0] || 0); this.setMinute(date, defaultTime[1] || 0); this.setSecond(date, defaultTime[2] || 0); } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1hZGFwdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0ZXRpbWUtcGlja2VyL3NyYy9saWIvY29yZS9kYXRlLWFkYXB0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXJELE1BQU0sT0FBZ0IsaUJBQXFCLFNBQVEsV0FBYztJQTJDL0Q7Ozs7T0FJRztJQUNILFVBQVUsQ0FBQyxDQUFJLEVBQUUsQ0FBSTtRQUNuQixJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUk7WUFBRSxPQUFPLElBQUksQ0FBQztRQUN4QyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7ZUFDckMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztlQUN2QyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxRQUFRLENBQUMsTUFBUyxFQUFFLFFBQVc7UUFDN0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQzdDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVEOzs7Ozs7S0FNQztJQUNELG1CQUFtQixDQUFDLEtBQVEsRUFBRSxNQUFTLEVBQUUsV0FBcUI7UUFDNUQsSUFBSSxHQUFHLEdBQUcsS0FBSyxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDO1lBQ3hDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7WUFDMUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2pELElBQUksV0FBVyxFQUFFO1lBQ2YsR0FBRyxHQUFHLEdBQUcsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDN0Q7UUFDRCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFFRDs7O09BR0c7SUFDSCxzQkFBc0IsQ0FBQyxJQUFPLEVBQUUsV0FBcUI7UUFDbkQsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLEVBQUU7WUFDL0IsTUFBTSxLQUFLLENBQUMsdUNBQXVDLENBQUMsQ0FBQztTQUN0RDtRQUNELElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUN4QyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDMUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQzVDLENBQUM7Q0FFRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGVBZGFwdGVyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBOZ3hNYXREYXRlQWRhcHRlcjxEPiBleHRlbmRzIERhdGVBZGFwdGVyPEQ+IHtcbiAgLyoqXG4gKiBHZXRzIHRoZSBob3VyIGNvbXBvbmVudCBvZiB0aGUgZ2l2ZW4gZGF0ZS5cbiAqIEBwYXJhbSBkYXRlIFRoZSBkYXRlIHRvIGV4dHJhY3QgdGhlIG1vbnRoIGZyb20uXG4gKiBAcmV0dXJucyBUaGUgaG91ciBjb21wb25lbnQuXG4gKi9cbiAgYWJzdHJhY3QgZ2V0SG91cihkYXRlOiBEKTogbnVtYmVyO1xuXG4gIC8qKlxuKiBHZXRzIHRoZSBtaW51dGUgY29tcG9uZW50IG9mIHRoZSBnaXZlbiBkYXRlLlxuKiBAcGFyYW0gZGF0ZSBUaGUgZGF0ZSB0byBleHRyYWN0IHRoZSBtb250aCBmcm9tLlxuKiBAcmV0dXJucyBUaGUgbWludXRlIGNvbXBvbmVudC5cbiovXG4gIGFic3RyYWN0IGdldE1pbnV0ZShkYXRlOiBEKTogbnVtYmVyO1xuXG4gIC8qKlxuICAqIEdldHMgdGhlIHNlY29uZCBjb21wb25lbnQgb2YgdGhlIGdpdmVuIGRhdGUuXG4gICogQHBhcmFtIGRhdGUgVGhlIGRhdGUgdG8gZXh0cmFjdCB0aGUgbW9udGggZnJvbS5cbiAgKiBAcmV0dXJucyBUaGUgc2Vjb25kIGNvbXBvbmVudC5cbiAgKi9cbiAgYWJzdHJhY3QgZ2V0U2Vjb25kKGRhdGU6IEQpOiBudW1iZXI7XG5cbiAgLyoqXG4gICogU2V0IHRoZSBob3VyIGNvbXBvbmVudCBvZiB0aGUgZ2l2ZW4gZGF0ZS5cbiAgKiBAcGFyYW0gZGF0ZSBUaGUgZGF0ZSB0byBleHRyYWN0IHRoZSBtb250aCBmcm9tLlxuICAqIEBwYXJhbSB2YWx1ZSBUaGUgdmFsdWUgdG8gc2V0LlxuICAqL1xuICBhYnN0cmFjdCBzZXRIb3VyKGRhdGU6IEQsIHZhbHVlOiBudW1iZXIpOiB2b2lkO1xuXG4gIC8qKlxuICAqIFNldCB0aGUgc2Vjb25kIGNvbXBvbmVudCBvZiB0aGUgZ2l2ZW4gZGF0ZS5cbiAgKiBAcGFyYW0gZGF0ZSBUaGUgZGF0ZSB0byBleHRyYWN0IHRoZSBtb250aCBmcm9tLlxuICAqIEBwYXJhbSB2YWx1ZSBUaGUgdmFsdWUgdG8gc2V0LlxuICAqL1xuICBhYnN0cmFjdCBzZXRNaW51dGUoZGF0ZTogRCwgdmFsdWU6IG51bWJlcik6IHZvaWQ7XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgc2Vjb25kIGNvbXBvbmVudCBvZiB0aGUgZ2l2ZW4gZGF0ZS5cbiAgICogQHBhcmFtIGRhdGUgVGhlIGRhdGUgdG8gZXh0cmFjdCB0aGUgbW9udGggZnJvbS5cbiAgICogQHBhcmFtIHZhbHVlIFRoZSB2YWx1ZSB0byBzZXQuXG4gICAqL1xuICBhYnN0cmFjdCBzZXRTZWNvbmQoZGF0ZTogRCwgdmFsdWU6IG51bWJlcik6IHZvaWQ7XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIHR3byBkYXRlIGhhdmUgc2FtZSB0aW1lXG4gICAqIEBwYXJhbSBhIERhdGUgMVxuICAgKiBAcGFyYW0gYiBEYXRlIDJcbiAgICovXG4gIGlzU2FtZVRpbWUoYTogRCwgYjogRCk6IGJvb2xlYW4ge1xuICAgIGlmIChhID09IG51bGwgfHwgYiA9PSBudWxsKSByZXR1cm4gdHJ1ZTtcbiAgICByZXR1cm4gdGhpcy5nZXRIb3VyKGEpID09PSB0aGlzLmdldEhvdXIoYilcbiAgICAgICYmIHRoaXMuZ2V0TWludXRlKGEpID09PSB0aGlzLmdldE1pbnV0ZShiKVxuICAgICAgJiYgdGhpcy5nZXRTZWNvbmQoYSkgPT09IHRoaXMuZ2V0U2Vjb25kKGIpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvcHkgdGltZSBmcm9tIGEgZGF0ZSB0byBhIGFub3RoZXIgZGF0ZVxuICAgKiBAcGFyYW0gdG9EYXRlIFxuICAgKiBAcGFyYW0gZnJvbURhdGUgXG4gICAqL1xuICBjb3B5VGltZSh0b0RhdGU6IEQsIGZyb21EYXRlOiBEKSB7XG4gICAgdGhpcy5zZXRIb3VyKHRvRGF0ZSwgdGhpcy5nZXRIb3VyKGZyb21EYXRlKSk7XG4gICAgdGhpcy5zZXRNaW51dGUodG9EYXRlLCB0aGlzLmdldE1pbnV0ZShmcm9tRGF0ZSkpO1xuICAgIHRoaXMuc2V0U2Vjb25kKHRvRGF0ZSwgdGhpcy5nZXRTZWNvbmQoZnJvbURhdGUpKTtcbiAgfVxuXG4gIC8qKlxuICogQ29tcGFyZXMgdHdvIGRhdGVzLlxuICogQHBhcmFtIGZpcnN0IFRoZSBmaXJzdCBkYXRlIHRvIGNvbXBhcmUuXG4gKiBAcGFyYW0gc2Vjb25kIFRoZSBzZWNvbmQgZGF0ZSB0byBjb21wYXJlLlxuICogQHJldHVybnMgMCBpZiB0aGUgZGF0ZXMgYXJlIGVxdWFsLCBhIG51bWJlciBsZXNzIHRoYW4gMCBpZiB0aGUgZmlyc3QgZGF0ZSBpcyBlYXJsaWVyLFxuICogICAgIGEgbnVtYmVyIGdyZWF0ZXIgdGhhbiAwIGlmIHRoZSBmaXJzdCBkYXRlIGlzIGxhdGVyLlxuICovXG4gIGNvbXBhcmVEYXRlV2l0aFRpbWUoZmlyc3Q6IEQsIHNlY29uZDogRCwgc2hvd1NlY29uZHM/OiBib29sZWFuKTogbnVtYmVyIHtcbiAgICBsZXQgcmVzID0gc3VwZXIuY29tcGFyZURhdGUoZmlyc3QsIHNlY29uZCkgfHxcbiAgICAgIHRoaXMuZ2V0SG91cihmaXJzdCkgLSB0aGlzLmdldEhvdXIoc2Vjb25kKSB8fFxuICAgICAgdGhpcy5nZXRNaW51dGUoZmlyc3QpIC0gdGhpcy5nZXRNaW51dGUoc2Vjb25kKTtcbiAgICBpZiAoc2hvd1NlY29uZHMpIHtcbiAgICAgIHJlcyA9IHJlcyB8fCB0aGlzLmdldFNlY29uZChmaXJzdCkgLSB0aGlzLmdldFNlY29uZChzZWNvbmQpO1xuICAgIH1cbiAgICByZXR1cm4gcmVzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aW1lIGJ5IHVzaW5nIGRlZmF1bHQgdmFsdWVzXG4gICAqIEBwYXJhbSBkZWZhdWx0VGltZSBMaXN0IGRlZmF1bHQgdmFsdWVzIFtob3VyLCBtaW51dGUsIHNlY29uZF1cbiAgICovXG4gIHNldFRpbWVCeURlZmF1bHRWYWx1ZXMoZGF0ZTogRCwgZGVmYXVsdFRpbWU6IG51bWJlcltdKSB7XG4gICAgaWYgKCFBcnJheS5pc0FycmF5KGRlZmF1bHRUaW1lKSkge1xuICAgICAgdGhyb3cgRXJyb3IoJ0BJbnB1dCBEZWZhdWx0VGltZSBzaG91bGQgYmUgYW4gYXJyYXknKTtcbiAgICB9XG4gICAgdGhpcy5zZXRIb3VyKGRhdGUsIGRlZmF1bHRUaW1lWzBdIHx8IDApO1xuICAgIHRoaXMuc2V0TWludXRlKGRhdGUsIGRlZmF1bHRUaW1lWzFdIHx8IDApO1xuICAgIHRoaXMuc2V0U2Vjb25kKGRhdGUsIGRlZmF1bHRUaW1lWzJdIHx8IDApO1xuICB9XG5cbn1cbiJdfQ==