UNPKG

@doku-dev/doku-fragment

Version:

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

100 lines 11.7 kB
import { CommonModule } from '@angular/common'; import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, Input, Output, ViewEncapsulation, } from '@angular/core'; import { ReplaySubject } from 'rxjs'; import * as i0 from "@angular/core"; export class DokuDatePickerBaseProps { constructor() { this._value = { start: null, end: null }; this._minDate = null; this._maxDate = null; this._disabled = false; this._readonly = false; this.useDateRange = false; this.valueChange = new EventEmitter(); this.notifyChange$ = new ReplaySubject(); } get value() { return this._value; } set value(date) { if (date && typeof date === 'object' && Object.hasOwn(date, 'start')) { const val = date; this._value = { start: this.normalizeDate(val.start), end: this.normalizeDate(val.end) }; } else { const val = date; this._value = { start: this.normalizeDate(val), end: null }; } this.notifyChange$.next('value'); } get minDate() { return this._minDate; } set minDate(date) { this._minDate = this.normalizeDate(date); this.notifyChange$.next('minDate'); } get maxDate() { return this._maxDate; } set maxDate(date) { this._maxDate = this.normalizeDate(date); this.notifyChange$.next('maxDate'); } get disabled() { return this._disabled; } set disabled(value) { this._disabled = value; this.notifyChange$.next('disabled'); } 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); } } DokuDatePickerBaseProps.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DokuDatePickerBaseProps, deps: [], target: i0.ɵɵFactoryTarget.Component }); DokuDatePickerBaseProps.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: DokuDatePickerBaseProps, isStandalone: true, selector: "doku-date-picker-base-props", inputs: { value: "value", minDate: "minDate", maxDate: "maxDate", disabled: "disabled", readonly: "readonly", useDateRange: "useDateRange" }, outputs: { valueChange: "valueChange" }, host: { properties: { "class.d-date-picker-disabled": "this.disabled", "class.d-date-picker-readonly": "this.readonly" } }, exportAs: ["dokuDatePickerBaseProps"], 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: DokuDatePickerBaseProps, decorators: [{ type: Component, args: [{ selector: 'doku-date-picker-base-props', exportAs: 'dokuDatePickerBaseProps', standalone: true, imports: [CommonModule], template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, }] }], propDecorators: { value: [{ type: Input }], minDate: [{ type: Input }], maxDate: [{ type: Input }], disabled: [{ type: HostBinding, args: ['class.d-date-picker-disabled'] }, { type: Input }], readonly: [{ type: HostBinding, args: ['class.d-date-picker-readonly'] }, { type: Input }], useDateRange: [{ type: Input }], valueChange: [{ type: Output }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1waWNrZXItYmFzZS1wcm9wcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kb2t1LWZyYWdtZW50L3NyYy9saWIvZGF0ZS1waWNrZXIvYmFzZS9kYXRlLXBpY2tlci1iYXNlLXByb3BzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxLQUFLLEVBQ0wsTUFBTSxFQUNOLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQWdCckMsTUFBTSxPQUFPLHVCQUF1QjtJQVRwQztRQXdCVSxXQUFNLEdBQWMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsQ0FBQztRQVUvQyxhQUFRLEdBQWdCLElBQUksQ0FBQztRQVU3QixhQUFRLEdBQWdCLElBQUksQ0FBQztRQVc3QixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBV2xCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFFakIsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFFcEIsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBYSxDQUFDO1FBRTVDLGtCQUFhLEdBQUcsSUFBSSxhQUFhLEVBRXhDLENBQUM7S0FPTDtJQXZFQyxJQUNJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUNELElBQUksS0FBSyxDQUFDLElBQWtEO1FBQzFELElBQUksSUFBSSxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsSUFBSSxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsRUFBRTtZQUNwRSxNQUFN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UTtzQkFGWCxXQUFXO3VCQUFDLDhCQUE4Qjs7c0JBQzFDLEtBQUs7Z0JBVUcsWUFBWTtzQkFBcEIsS0FBSztnQkFFSSxXQUFXO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJlcGxheVN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuLyoqXG4gKiBgZW5kYCBkYXRlIHdpbGwgYmUgYWx3YXlzIG51bGwgaWYgaXQncyBub3QgZGF0ZSByYW5nZS5cbiAqL1xuZXhwb3J0IHR5cGUgRGF0ZVZhbHVlID0geyBzdGFydDogRGF0ZSB8IG51bGw7IGVuZDogRGF0ZSB8IG51bGwgfTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZG9rdS1kYXRlLXBpY2tlci1iYXNlLXByb3BzJyxcbiAgZXhwb3J0QXM6ICdkb2t1RGF0ZVBpY2tlckJhc2VQcm9wcycsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICB0ZW1wbGF0ZTogJycsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBEb2t1RGF0ZVBpY2tlckJhc2VQcm9wcyB7XG4gIEBJbnB1dCgpXG4gIGdldCB2YWx1ZSgpOiBEYXRlVmFsdWUge1xuICAgIHJldHVybiB0aGlzLl92YWx1ZTtcbiAgfVxuICBzZXQgdmFsdWUoZGF0ZTogRGF0ZVZhbHVlIHwgRGF0ZSB8IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpIHtcbiAgICBpZiAoZGF0ZSAmJiB0eXBlb2YgZGF0ZSA9PT0gJ29iamVjdCcgJiYgT2JqZWN0Lmhhc093bihkYXRlLCAnc3RhcnQnKSkge1xuICAgICAgY29uc3QgdmFsID0gZGF0ZSBhcyBEYXRlVmFsdWU7XG4gICAgICB0aGlzLl92YWx1ZSA9IHsgc3RhcnQ6IHRoaXMubm9ybWFsaXplRGF0ZSh2YWwuc3RhcnQpLCBlbmQ6IHRoaXMubm9ybWFsaXplRGF0ZSh2YWwuZW5kKSB9O1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCB2YWwgPSBkYXRlIGFzIERhdGUgfCBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkO1xuICAgICAgdGhpcy5fdmFsdWUgPSB7IHN0YXJ0OiB0aGlzLm5vcm1hbGl6ZURhdGUodmFsKSwgZW5kOiBudWxsIH07XG4gICAgfVxuICAgIHRoaXMubm90aWZ5Q2hhbmdlJC5uZXh0KCd2YWx1ZScpO1xuICB9XG4gIHByaXZhdGUgX3ZhbHVlOiBEYXRlVmFsdWUgPSB7IHN0YXJ0OiBudWxsLCBlbmQ6IG51bGwgfTtcblxuICBASW5wdXQoKVxuICBnZXQgbWluRGF0ZSgpOiBEYXRlIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX21pbkRhdGU7XG4gIH1cbiAgc2V0IG1pbkRhdGUoZGF0ZTogRGF0ZSB8IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLl9taW5EYXRlID0gdGhpcy5ub3JtYWxpemVEYXRlKGRhdGUpO1xuICAgIHRoaXMubm90aWZ5Q2hhbmdlJC5uZXh0KCdtaW5EYXRlJyk7XG4gIH1cbiAgcHJpdmF0ZSBfbWluRGF0ZTogRGF0ZSB8IG51bGwgPSBudWxsO1xuXG4gIEBJbnB1dCgpXG4gIGdldCBtYXhEYXRlKCk6IERhdGUgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fbWF4RGF0ZTtcbiAgfVxuICBzZXQgbWF4RGF0ZShkYXRlOiBEYXRlIHwgc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuX21heERhdGUgPSB0aGlzLm5vcm1hbGl6ZURhdGUoZGF0ZSk7XG4gICAgdGhpcy5ub3RpZnlDaGFuZ2UkLm5leHQoJ21heERhdGUnKTtcbiAgfVxuICBwcml2YXRlIF9tYXhEYXRlOiBEYXRlIHwgbnVsbCA9IG51bGw7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5kLWRhdGUtcGlja2VyLWRpc2FibGVkJylcbiAgQElucHV0KClcbiAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZDtcbiAgfVxuICBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9kaXNhYmxlZCA9IHZhbHVlO1xuICAgIHRoaXMubm90aWZ5Q2hhbmdlJC5uZXh0KCdkaXNhYmxlZCcpO1xuICB9XG4gIHByaXZhdGUgX2Rpc2FibGVkID0gZmFsc2U7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5kLWRhdGUtcGlja2VyLXJlYWRvbmx5JylcbiAgQElucHV0KClcbiAgZ2V0IHJlYWRvbmx5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9yZWFkb25seTtcbiAgfVxuICBzZXQgcmVhZG9ubHkodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9yZWFkb25seSA9IHZhbHVlO1xuICAgIHRoaXMubm90aWZ5Q2hhbmdlJC5uZXh0KCdyZWFkb25seScpO1xuICB9XG4gIHByaXZhdGUgX3JlYWRvbmx5ID0gZmFsc2U7XG5cbiAgQElucHV0KCkgdXNlRGF0ZVJhbmdlID0gZmFsc2U7XG5cbiAgQE91dHB1dCgpIHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxEYXRlVmFsdWU+KCk7XG5cbiAgcHJvdGVjdGVkIG5vdGlmeUNoYW5nZSQgPSBuZXcgUmVwbGF5U3ViamVjdDxcbiAgICAndmFsdWUnIHwgJ21pbkRhdGUnIHwgJ21heERhdGUnIHwgJ2Rpc2FibGVkJyB8ICdyZWFkb25seSdcbiAgPigpO1xuXG4gIHByaXZhdGUgbm9ybWFsaXplRGF0ZShkYXRlPzogRGF0ZSB8IHN0cmluZyB8IG51bGwpOiBEYXRlIHwgbnVsbCB7XG4gICAgaWYgKCFkYXRlKSByZXR1cm4gbnVsbDtcbiAgICBpZiAoIShkYXRlIGluc3RhbmNlb2YgRGF0ZSB8fCB0eXBlb2YgZGF0ZSA9PT0gJ3N0cmluZycpKSByZXR1cm4gbnVsbDtcbiAgICByZXR1cm4gZGF0ZSBpbnN0YW5jZW9mIERhdGUgPyBkYXRlIDogbmV3IERhdGUoZGF0ZSk7XG4gIH1cbn1cbiJdfQ==