UNPKG

@doku-dev/doku-fragment

Version:

A new Angular UI library that moving away from Bootstrap and built from scratch.

118 lines 11.1 kB
import { CommonModule } from '@angular/common'; import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation, } from '@angular/core'; import { ReplaySubject } from 'rxjs'; import * as i0 from "@angular/core"; export class DokuDatePickerBasicProps { constructor() { this._value = null; this._minDate = null; this._maxDate = null; this._disabled = false; this._readonly = false; /** * An event emitted when the value changes. */ this.valueChange = new EventEmitter(); this.notifyChange$ = new ReplaySubject(); } /** * Value of the date picker. * * If it's a string, it must be in ISO String. * * @default null */ get value() { return this._value; } set value(date) { this._value = this.normalizeDate(date); this.notifyChange$.next('value'); } /** * Minimum date allowed to be selected. * * If it's a string, it must be in ISO String. * * @default null */ get minDate() { return this._minDate; } set minDate(date) { this._minDate = this.normalizeDate(date); this.notifyChange$.next('minDate'); } /** * Maximum date allowed to be selected. * * If it's a string, it must be in ISO String. * * @default null */ get maxDate() { return this._maxDate; } set maxDate(date) { this._maxDate = this.normalizeDate(date); this.notifyChange$.next('maxDate'); } /** * Whether date picker is disabled. * * @default false */ get disabled() { return this._disabled; } set disabled(value) { this._disabled = value; this.notifyChange$.next('disabled'); } /** * Whether date picker is readonly. * * @default false */ get readonly() { return this._readonly; } set readonly(value) { this._readonly = value; this.notifyChange$.next('readonly'); } normalizeDate(date) { if (!date) return null; if (!(date instanceof Date || typeof date === 'string')) return null; return date instanceof Date ? date : new Date(date); } } DokuDatePickerBasicProps.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DokuDatePickerBasicProps, deps: [], target: i0.ɵɵFactoryTarget.Component }); DokuDatePickerBasicProps.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: DokuDatePickerBasicProps, isStandalone: true, selector: "doku-date-picker-basic-props", inputs: { value: "value", minDate: "minDate", maxDate: "maxDate", disabled: "disabled", readonly: "readonly" }, outputs: { valueChange: "valueChange" }, exportAs: ["dokuDatePickerBasicProps"], ngImport: i0, template: '', isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DokuDatePickerBasicProps, decorators: [{ type: Component, args: [{ selector: 'doku-date-picker-basic-props', exportAs: 'dokuDatePickerBasicProps', standalone: true, imports: [CommonModule], template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, }] }], propDecorators: { value: [{ type: Input }], minDate: [{ type: Input }], maxDate: [{ type: Input }], disabled: [{ type: Input }], readonly: [{ type: Input }], valueChange: [{ type: Output }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1waWNrZXItYmFzaWMtcHJvcHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZG9rdS1mcmFnbWVudC9zcmMvbGliL2RhdGUtcGlja2VyL2NvbW1vbi9kYXRlLXBpY2tlci1iYXNpYy1wcm9wcy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQVlyQyxNQUFNLE9BQU8sd0JBQXdCO0lBVHJDO1FBeUJVLFdBQU0sR0FBZ0IsSUFBSSxDQUFDO1FBaUIzQixhQUFRLEdBQWdCLElBQUksQ0FBQztRQWlCN0IsYUFBUSxHQUFnQixJQUFJLENBQUM7UUFlN0IsY0FBUyxHQUFHLEtBQUssQ0FBQztRQWVsQixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBRTFCOztXQUVHO1FBQ08sZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFDO1FBRTdDLGtCQUFhLEdBQUcsSUFBSSxhQUFhLEVBRXhDLENBQUM7S0FPTDtJQS9GQzs7Ozs7O09BTUc7SUFDSCxJQUNJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUNELElBQUksS0FBSyxDQUFDLElBQXNDO1FBQzlDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN2QyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBR0Q7Ozs7OztPQU1HO0lBQ0gsSUFDSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFDRCxJQUFJLE9BQU8sQ0FBQyxJQUFzQztRQUNoRCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUdEOzs7Ozs7T0FNRztJQUNILElBQ0ksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBQ0QsSUFBSSxPQUFPLENBQUMsSUFBc0M7UUFDaEQsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFHRDs7OztPQUlHO0lBQ0gsSUFDSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxLQUFjO1FBQ3pCLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFHRDs7OztPQUlHO0lBQ0gsSUFDSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxLQUFjO1FBQ3pCLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFZTyxhQUFhLENBQUMsSUFBMkI7UUFDL0MsSUFBSSxDQUFDLElBQUk7WUFBRSxPQUFPLElBQUksQ0FBQztRQUN2QixJQUFJLENBQUMsQ0FBQyxJQUFJLFlBQVksSUFBSSxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsQ0FBQztZQUFFLE9BQU8sSUFBSSxDQUFDO1FBQ3JFLE9BQU8sSUFBSSxZQUFZLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN0RCxDQUFDOztxSEEvRlUsd0JBQXdCO3lHQUF4Qix3QkFBd0IseVJBSnpCLEVBQUUsMkRBREYsWUFBWTsyRkFLWCx3QkFBd0I7a0JBVHBDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDhCQUE4QjtvQkFDeEMsUUFBUSxFQUFFLDBCQUEwQjtvQkFDcEMsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsUUFBUSxFQUFFLEVBQUU7b0JBQ1osYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7b0JBQ3JDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNoRDs4QkFVSyxLQUFLO3NCQURSLEtBQUs7Z0JBa0JGLE9BQU87c0JBRFYsS0FBSztnQkFrQkYsT0FBTztzQkFEVixLQUFLO2dCQWdCRixRQUFRO3NCQURYLEtBQUs7Z0JBZ0JGLFFBQVE7c0JBRFgsS0FBSztnQkFhSSxXQUFXO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmVwbGF5U3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRGF0ZVJlc3VsdCB9IGZyb20gJy4uL2RhdGUtcGlja2VyLmludGVyZmFjZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Rva3UtZGF0ZS1waWNrZXItYmFzaWMtcHJvcHMnLFxuICBleHBvcnRBczogJ2Rva3VEYXRlUGlja2VyQmFzaWNQcm9wcycsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICB0ZW1wbGF0ZTogJycsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBEb2t1RGF0ZVBpY2tlckJhc2ljUHJvcHMge1xuICAvKipcbiAgICogVmFsdWUgb2YgdGhlIGRhdGUgcGlja2VyLlxuICAgKlxuICAgKiBJZiBpdCdzIGEgc3RyaW5nLCBpdCBtdXN0IGJlIGluIElTTyBTdHJpbmcuXG4gICAqXG4gICAqIEBkZWZhdWx0IG51bGxcbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCB2YWx1ZSgpOiBEYXRlIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xuICB9XG4gIHNldCB2YWx1ZShkYXRlOiBEYXRlIHwgc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuX3ZhbHVlID0gdGhpcy5ub3JtYWxpemVEYXRlKGRhdGUpO1xuICAgIHRoaXMubm90aWZ5Q2hhbmdlJC5uZXh0KCd2YWx1ZScpO1xuICB9XG4gIHByaXZhdGUgX3ZhbHVlOiBEYXRlIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIE1pbmltdW0gZGF0ZSBhbGxvd2VkIHRvIGJlIHNlbGVjdGVkLlxuICAgKlxuICAgKiBJZiBpdCdzIGEgc3RyaW5nLCBpdCBtdXN0IGJlIGluIElTTyBTdHJpbmcuXG4gICAqXG4gICAqIEBkZWZhdWx0IG51bGxcbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBtaW5EYXRlKCk6IERhdGUgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fbWluRGF0ZTtcbiAgfVxuICBzZXQgbWluRGF0ZShkYXRlOiBEYXRlIHwgc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuX21pbkRhdGUgPSB0aGlzLm5vcm1hbGl6ZURhdGUoZGF0ZSk7XG4gICAgdGhpcy5ub3RpZnlDaGFuZ2UkLm5leHQoJ21pbkRhdGUnKTtcbiAgfVxuICBwcml2YXRlIF9taW5EYXRlOiBEYXRlIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIE1heGltdW0gZGF0ZSBhbGxvd2VkIHRvIGJlIHNlbGVjdGVkLlxuICAgKlxuICAgKiBJZiBpdCdzIGEgc3RyaW5nLCBpdCBtdXN0IGJlIGluIElTTyBTdHJpbmcuXG4gICAqXG4gICAqIEBkZWZhdWx0IG51bGxcbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBtYXhEYXRlKCk6IERhdGUgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fbWF4RGF0ZTtcbiAgfVxuICBzZXQgbWF4RGF0ZShkYXRlOiBEYXRlIHwgc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuX21heERhdGUgPSB0aGlzLm5vcm1hbGl6ZURhdGUoZGF0ZSk7XG4gICAgdGhpcy5ub3RpZnlDaGFuZ2UkLm5leHQoJ21heERhdGUnKTtcbiAgfVxuICBwcml2YXRlIF9tYXhEYXRlOiBEYXRlIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgZGF0ZSBwaWNrZXIgaXMgZGlzYWJsZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkO1xuICB9XG4gIHNldCBkaXNhYmxlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2Rpc2FibGVkID0gdmFsdWU7XG4gICAgdGhpcy5ub3RpZnlDaGFuZ2UkLm5leHQoJ2Rpc2FibGVkJyk7XG4gIH1cbiAgcHJpdmF0ZSBfZGlzYWJsZWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogV2hldGhlciBkYXRlIHBpY2tlciBpcyByZWFkb25seS5cbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCByZWFkb25seSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fcmVhZG9ubHk7XG4gIH1cbiAgc2V0IHJlYWRvbmx5KHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fcmVhZG9ubHkgPSB2YWx1ZTtcbiAgICB0aGlzLm5vdGlmeUNoYW5nZSQubmV4dCgncmVhZG9ubHknKTtcbiAgfVxuICBwcml2YXRlIF9yZWFkb25seSA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBBbiBldmVudCBlbWl0dGVkIHdoZW4gdGhlIHZhbHVlIGNoYW5nZXMuXG4gICAqL1xuICBAT3V0cHV0KCkgdmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPERhdGVSZXN1bHQ+KCk7XG5cbiAgcHJvdGVjdGVkIG5vdGlmeUNoYW5nZSQgPSBuZXcgUmVwbGF5U3ViamVjdDxcbiAgICAndmFsdWUnIHwgJ21pbkRhdGUnIHwgJ21heERhdGUnIHwgJ2Rpc2FibGVkJyB8ICdyZWFkb25seSdcbiAgPigpO1xuXG4gIHByaXZhdGUgbm9ybWFsaXplRGF0ZShkYXRlPzogRGF0ZSB8IHN0cmluZyB8IG51bGwpOiBEYXRlIHwgbnVsbCB7XG4gICAgaWYgKCFkYXRlKSByZXR1cm4gbnVsbDtcbiAgICBpZiAoIShkYXRlIGluc3RhbmNlb2YgRGF0ZSB8fCB0eXBlb2YgZGF0ZSA9PT0gJ3N0cmluZycpKSByZXR1cm4gbnVsbDtcbiAgICByZXR1cm4gZGF0ZSBpbnN0YW5jZW9mIERhdGUgPyBkYXRlIDogbmV3IERhdGUoZGF0ZSk7XG4gIH1cbn1cbiJdfQ==