@gloww/gloww 20.0.0-beta.19 → 20.0.0-beta.20
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.
- package/fesm2022/gloww-gloww.mjs +30 -10
- package/fesm2022/gloww-gloww.mjs.map +1 -1
- package/index.d.ts +3 -1
- package/package.json +1 -1
package/fesm2022/gloww-gloww.mjs
CHANGED
|
@@ -3572,6 +3572,7 @@ class DatetimeComponent {
|
|
|
3572
3572
|
this.showSpinners = true;
|
|
3573
3573
|
this.showSeconds = false;
|
|
3574
3574
|
this.disableMinute = false;
|
|
3575
|
+
this.touchUi = false;
|
|
3575
3576
|
this.onChange = () => { };
|
|
3576
3577
|
this.onTouched = () => { };
|
|
3577
3578
|
}
|
|
@@ -3579,16 +3580,12 @@ class DatetimeComponent {
|
|
|
3579
3580
|
return this._value;
|
|
3580
3581
|
}
|
|
3581
3582
|
set value(val) {
|
|
3582
|
-
this._value = val;
|
|
3583
|
-
|
|
3584
|
-
if (typeof (this._value) === 'string') {
|
|
3585
|
-
dt = moment(this._value).toISOString();
|
|
3586
|
-
}
|
|
3587
|
-
this.onChange(dt);
|
|
3583
|
+
this._value = this.normalizeDateValue(val);
|
|
3584
|
+
this.onChange(this._value);
|
|
3588
3585
|
this.onTouched();
|
|
3589
3586
|
}
|
|
3590
3587
|
writeValue(obj) {
|
|
3591
|
-
this.
|
|
3588
|
+
this._value = this.normalizeDateValue(obj);
|
|
3592
3589
|
}
|
|
3593
3590
|
registerOnChange(fn) {
|
|
3594
3591
|
this.onChange = fn;
|
|
@@ -3599,14 +3596,35 @@ class DatetimeComponent {
|
|
|
3599
3596
|
setDisabledState(isDisabled) {
|
|
3600
3597
|
//throw new Error('Method not implemented.');
|
|
3601
3598
|
}
|
|
3599
|
+
normalizeDateValue(value) {
|
|
3600
|
+
if (value === undefined || value === null || value === '') {
|
|
3601
|
+
return null;
|
|
3602
|
+
}
|
|
3603
|
+
if (value instanceof Date) {
|
|
3604
|
+
return Number.isNaN(value.getTime()) ? null : value;
|
|
3605
|
+
}
|
|
3606
|
+
if (moment.isMoment(value)) {
|
|
3607
|
+
const date = value.toDate();
|
|
3608
|
+
return Number.isNaN(date.getTime()) ? null : date;
|
|
3609
|
+
}
|
|
3610
|
+
if (typeof value === 'string' || typeof value === 'number') {
|
|
3611
|
+
const strictMoment = moment(value, moment.ISO_8601, true);
|
|
3612
|
+
if (strictMoment.isValid()) {
|
|
3613
|
+
return strictMoment.toDate();
|
|
3614
|
+
}
|
|
3615
|
+
const date = new Date(value);
|
|
3616
|
+
return Number.isNaN(date.getTime()) ? null : date;
|
|
3617
|
+
}
|
|
3618
|
+
return null;
|
|
3619
|
+
}
|
|
3602
3620
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: DatetimeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3603
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: DatetimeComponent, isStandalone: true, selector: "gloww-datetime", inputs: { _value: ["value", "_value"], display: "display", placeHolder: "placeHolder", mode: "mode", showSpinners: "showSpinners", showSeconds: "showSeconds", disableMinute: "disableMinute" }, providers: [
|
|
3621
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: DatetimeComponent, isStandalone: true, selector: "gloww-datetime", inputs: { _value: ["value", "_value"], display: "display", placeHolder: "placeHolder", mode: "mode", showSpinners: "showSpinners", showSeconds: "showSeconds", disableMinute: "disableMinute", touchUi: "touchUi" }, providers: [
|
|
3604
3622
|
{
|
|
3605
3623
|
provide: NG_VALUE_ACCESSOR,
|
|
3606
3624
|
multi: true,
|
|
3607
3625
|
useExisting: DatetimeComponent
|
|
3608
3626
|
}
|
|
3609
|
-
], ngImport: i0, template: "<div style=\"width:100%\">\n @if (mode==='date') {\n <mat-form-field>\n <mat-label>{{display}}</mat-label>\n <input matInput [matDatepicker]=\"picker\" [placeholder]=\"placeHolder\" [(ngModel)]=\"value\">\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n </mat-form-field>\n }\n\n @if (mode==='datetime') {\n <mat-form-field>\n <mat-label>{{display}}</mat-label>\n <input matInput [ngxMatDatetimePicker]=\"pickerDT\" [placeholder]=\"placeHolder\" [(ngModel)]=\"value\">\n <mat-datepicker-toggle matSuffix [for]=\"$any(pickerDT)\"></mat-datepicker-toggle>\n <ngx-mat-datetime-picker #pickerDT [showSpinners]=\"showSpinners\" [showSeconds]=\"showSeconds\" [touchUi]=\"
|
|
3627
|
+
], ngImport: i0, template: "<div style=\"width:100%\">\n @if (mode==='date') {\n <mat-form-field>\n <mat-label>{{display}}</mat-label>\n <input matInput [matDatepicker]=\"picker\" [placeholder]=\"placeHolder\" [(ngModel)]=\"value\">\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n </mat-form-field>\n }\n\n @if (mode==='datetime') {\n <mat-form-field>\n <mat-label>{{display}}</mat-label>\n <input matInput [ngxMatDatetimePicker]=\"pickerDT\" [placeholder]=\"placeHolder\" [(ngModel)]=\"value\">\n <mat-datepicker-toggle matSuffix [for]=\"$any(pickerDT)\"></mat-datepicker-toggle>\n <ngx-mat-datetime-picker #pickerDT [showSpinners]=\"showSpinners\" [showSeconds]=\"showSeconds\" [touchUi]=\"touchUi\" [disableMinute]=\"disableMinute\">\n </ngx-mat-datetime-picker>\n </mat-form-field>\n }\n</div>\n", styles: [""], dependencies: [{ kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: MatLabel, selector: "mat-label" }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "directive", type: MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "directive", type: MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "ngmodule", type: NgxMatDatetimePickerModule }, { kind: "component", type: i2$1.NgxMatDatetimepicker, selector: "ngx-mat-datetime-picker", exportAs: ["ngxMatDatetimePicker"] }, { kind: "directive", type: i2$1.NgxMatDatepickerInput, selector: "input[ngxMatDatetimePicker]", inputs: ["ngxMatDatetimePicker", "min", "max", "matDatepickerFilter"], exportAs: ["ngxMatDatepickerInput"] }] }); }
|
|
3610
3628
|
}
|
|
3611
3629
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: DatetimeComponent, decorators: [{
|
|
3612
3630
|
type: Component,
|
|
@@ -3616,7 +3634,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
|
|
|
3616
3634
|
multi: true,
|
|
3617
3635
|
useExisting: DatetimeComponent
|
|
3618
3636
|
}
|
|
3619
|
-
], imports: [MatFormField, MatLabel, MatInput, MatDatepickerInput, FormsModule, MatDatepickerToggle, MatSuffix, MatDatepicker, NgxMatDatetimePickerModule], template: "<div style=\"width:100%\">\n @if (mode==='date') {\n <mat-form-field>\n <mat-label>{{display}}</mat-label>\n <input matInput [matDatepicker]=\"picker\" [placeholder]=\"placeHolder\" [(ngModel)]=\"value\">\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n </mat-form-field>\n }\n\n @if (mode==='datetime') {\n <mat-form-field>\n <mat-label>{{display}}</mat-label>\n <input matInput [ngxMatDatetimePicker]=\"pickerDT\" [placeholder]=\"placeHolder\" [(ngModel)]=\"value\">\n <mat-datepicker-toggle matSuffix [for]=\"$any(pickerDT)\"></mat-datepicker-toggle>\n <ngx-mat-datetime-picker #pickerDT [showSpinners]=\"showSpinners\" [showSeconds]=\"showSeconds\" [touchUi]=\"
|
|
3637
|
+
], imports: [MatFormField, MatLabel, MatInput, MatDatepickerInput, FormsModule, MatDatepickerToggle, MatSuffix, MatDatepicker, NgxMatDatetimePickerModule], template: "<div style=\"width:100%\">\n @if (mode==='date') {\n <mat-form-field>\n <mat-label>{{display}}</mat-label>\n <input matInput [matDatepicker]=\"picker\" [placeholder]=\"placeHolder\" [(ngModel)]=\"value\">\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n </mat-form-field>\n }\n\n @if (mode==='datetime') {\n <mat-form-field>\n <mat-label>{{display}}</mat-label>\n <input matInput [ngxMatDatetimePicker]=\"pickerDT\" [placeholder]=\"placeHolder\" [(ngModel)]=\"value\">\n <mat-datepicker-toggle matSuffix [for]=\"$any(pickerDT)\"></mat-datepicker-toggle>\n <ngx-mat-datetime-picker #pickerDT [showSpinners]=\"showSpinners\" [showSeconds]=\"showSeconds\" [touchUi]=\"touchUi\" [disableMinute]=\"disableMinute\">\n </ngx-mat-datetime-picker>\n </mat-form-field>\n }\n</div>\n" }]
|
|
3620
3638
|
}], ctorParameters: () => [], propDecorators: { _value: [{
|
|
3621
3639
|
type: Input,
|
|
3622
3640
|
args: ['value']
|
|
@@ -3635,6 +3653,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
|
|
|
3635
3653
|
type: Input
|
|
3636
3654
|
}], disableMinute: [{
|
|
3637
3655
|
type: Input
|
|
3656
|
+
}], touchUi: [{
|
|
3657
|
+
type: Input
|
|
3638
3658
|
}] } });
|
|
3639
3659
|
|
|
3640
3660
|
class CallbackDirective {
|