@sumaris-net/ngx-components 1.19.13-rc1 → 1.19.13-rc4
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/bundles/sumaris-net.ngx-components.umd.js +62 -67
- package/bundles/sumaris-net.ngx-components.umd.js.map +1 -1
- package/bundles/sumaris-net.ngx-components.umd.min.js +2 -2
- package/bundles/sumaris-net.ngx-components.umd.min.js.map +1 -1
- package/esm2015/src/app/shared/material/datetime/material.date.js +2 -2
- package/esm2015/src/app/shared/material/datetime/material.dateshort.js +2 -2
- package/esm2015/src/app/shared/material/latlong/latlong.utils.js +1 -1
- package/esm2015/src/app/shared/material/latlong/material.latlong.js +43 -42
- package/esm2015/src/app/shared/pipes/latlong-format.pipe.js +17 -24
- package/fesm2015/sumaris-net.ngx-components.js +59 -64
- package/fesm2015/sumaris-net.ngx-components.js.map +1 -1
- package/package.json +1 -1
- package/src/app/shared/material/latlong/latlong.utils.d.ts +2 -2
- package/src/app/shared/material/latlong/material.latlong.d.ts +4 -4
- package/src/app/shared/pipes/latlong-format.pipe.d.ts +6 -4
- package/src/assets/i18n/fr.json +1 -1
- package/sumaris-net.ngx-components.metadata.json +1 -1
|
@@ -2606,36 +2606,16 @@
|
|
|
2606
2606
|
return input;
|
|
2607
2607
|
}
|
|
2608
2608
|
|
|
2609
|
-
/**
|
|
2610
|
-
* @deprecated use 'latitudeFormat' or 'longitudeFormat' instead
|
|
2611
|
-
*/
|
|
2612
|
-
var LatLongFormatPipe = /** @class */ (function () {
|
|
2613
|
-
function LatLongFormatPipe() {
|
|
2614
|
-
}
|
|
2615
|
-
LatLongFormatPipe.prototype.transform = function (value, args) {
|
|
2616
|
-
return ((!args.type || args.type !== 'latitude') ? formatLongitude : formatLatitude)(value, args);
|
|
2617
|
-
};
|
|
2618
|
-
return LatLongFormatPipe;
|
|
2619
|
-
}());
|
|
2620
|
-
LatLongFormatPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function LatLongFormatPipe_Factory() { return new LatLongFormatPipe(); }, token: LatLongFormatPipe, providedIn: "root" });
|
|
2621
|
-
LatLongFormatPipe.decorators = [
|
|
2622
|
-
{ type: i0.Pipe, args: [{
|
|
2623
|
-
name: 'latLongFormat'
|
|
2624
|
-
},] },
|
|
2625
|
-
{ type: i0.Injectable, args: [{ providedIn: 'root' },] }
|
|
2626
|
-
];
|
|
2627
2609
|
var LatitudeFormatPipe = /** @class */ (function () {
|
|
2628
2610
|
function LatitudeFormatPipe() {
|
|
2629
2611
|
this.transform = formatLatitude;
|
|
2630
2612
|
}
|
|
2631
2613
|
return LatitudeFormatPipe;
|
|
2632
2614
|
}());
|
|
2633
|
-
LatitudeFormatPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function LatitudeFormatPipe_Factory() { return new LatitudeFormatPipe(); }, token: LatitudeFormatPipe, providedIn: "root" });
|
|
2634
2615
|
LatitudeFormatPipe.decorators = [
|
|
2635
2616
|
{ type: i0.Pipe, args: [{
|
|
2636
2617
|
name: 'latitudeFormat'
|
|
2637
|
-
},] }
|
|
2638
|
-
{ type: i0.Injectable, args: [{ providedIn: 'root' },] }
|
|
2618
|
+
},] }
|
|
2639
2619
|
];
|
|
2640
2620
|
var LongitudeFormatPipe = /** @class */ (function () {
|
|
2641
2621
|
function LongitudeFormatPipe() {
|
|
@@ -2643,12 +2623,26 @@
|
|
|
2643
2623
|
}
|
|
2644
2624
|
return LongitudeFormatPipe;
|
|
2645
2625
|
}());
|
|
2646
|
-
LongitudeFormatPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function LongitudeFormatPipe_Factory() { return new LongitudeFormatPipe(); }, token: LongitudeFormatPipe, providedIn: "root" });
|
|
2647
2626
|
LongitudeFormatPipe.decorators = [
|
|
2648
2627
|
{ type: i0.Pipe, args: [{
|
|
2649
2628
|
name: 'longitudeFormat'
|
|
2650
|
-
},] }
|
|
2651
|
-
|
|
2629
|
+
},] }
|
|
2630
|
+
];
|
|
2631
|
+
/**
|
|
2632
|
+
* @deprecated use 'latitudeFormat' or 'longitudeFormat' instead
|
|
2633
|
+
*/
|
|
2634
|
+
var LatLongFormatPipe = /** @class */ (function () {
|
|
2635
|
+
function LatLongFormatPipe() {
|
|
2636
|
+
}
|
|
2637
|
+
LatLongFormatPipe.prototype.transform = function (value, opts) {
|
|
2638
|
+
return ((!opts || (opts === null || opts === void 0 ? void 0 : opts.type) !== 'latitude') ? formatLongitude : formatLatitude)(value, opts);
|
|
2639
|
+
};
|
|
2640
|
+
return LatLongFormatPipe;
|
|
2641
|
+
}());
|
|
2642
|
+
LatLongFormatPipe.decorators = [
|
|
2643
|
+
{ type: i0.Pipe, args: [{
|
|
2644
|
+
name: 'latLongFormat'
|
|
2645
|
+
},] }
|
|
2652
2646
|
];
|
|
2653
2647
|
|
|
2654
2648
|
var NumberFormatPipe = /** @class */ (function () {
|
|
@@ -5297,8 +5291,8 @@
|
|
|
5297
5291
|
this.maxDecimals = DEFAULT_MAX_DECIMALS;
|
|
5298
5292
|
}
|
|
5299
5293
|
this.showSignControl = this.pattern !== 'DD';
|
|
5300
|
-
this.
|
|
5301
|
-
this.formatFnOptions = { pattern: this.pattern, maxDecimals: this.maxDecimals, hideSign: this.showSignControl };
|
|
5294
|
+
this._format = this.type === 'latitude' ? formatLatitude : formatLongitude;
|
|
5295
|
+
this.formatFnOptions = { pattern: this.pattern, maxDecimals: this.maxDecimals, hideSign: this.showSignControl, placeholderChar: '' };
|
|
5302
5296
|
this.inputPlaceholder = 'COMMON.LAT_LONG.' + (this.type === 'longitude' && 'D' || '') + this.pattern + '_PLACEHOLDER';
|
|
5303
5297
|
this.textFormControl = this.formBuilder.control(this.required ? [null, i1.Validators.required] : [null]);
|
|
5304
5298
|
this.textMaskConfig = { mask: this.mask, keepCharPositions: true, placeholderChar: this.placeholderChar };
|
|
@@ -5332,7 +5326,7 @@
|
|
|
5332
5326
|
return;
|
|
5333
5327
|
this.value = (typeof obj === 'string') ? parseFloat(obj.replace(/,/g, '.')) : obj;
|
|
5334
5328
|
this.writing = true;
|
|
5335
|
-
var strValue = this.
|
|
5329
|
+
var strValue = this._format(this.value, Object.assign(Object.assign({}, this.formatFnOptions), { placeholderChar: this.placeholderChar }));
|
|
5336
5330
|
var sign = isNotNil(this.value) ? (this.value < 0 ? -1 : 1) :
|
|
5337
5331
|
// Use default sign, if any
|
|
5338
5332
|
(this.defaultSign ? (this.defaultSign === '-' ? -1 : 1) : null);
|
|
@@ -5365,42 +5359,6 @@
|
|
|
5365
5359
|
this.disabling = false;
|
|
5366
5360
|
this.markForCheck();
|
|
5367
5361
|
};
|
|
5368
|
-
MatLatLongField.prototype.onFormChange = function (strValue) {
|
|
5369
|
-
if (this.writing)
|
|
5370
|
-
return; // Skip if call by self
|
|
5371
|
-
this.writing = true;
|
|
5372
|
-
if (this.textFormControl.invalid || this.signFormControl.invalid) {
|
|
5373
|
-
this.formControl.markAsPending();
|
|
5374
|
-
this.formControl.setErrors(Object.assign(Object.assign(Object.assign({}, this.formControl.errors), this.textFormControl.errors), this.signFormControl.errors));
|
|
5375
|
-
this.writing = false;
|
|
5376
|
-
return;
|
|
5377
|
-
}
|
|
5378
|
-
var parsedValue = isNotNilOrBlank(strValue) ? parseLatitudeOrLongitude(strValue, this.pattern, 7 /*=precision of the converted double value */, this.placeholderChar) : null;
|
|
5379
|
-
// DEBUG
|
|
5380
|
-
//console.debug('parsedValue=', parsedValue);
|
|
5381
|
-
if (isNaN(parsedValue)) {
|
|
5382
|
-
this.formControl.markAsPending();
|
|
5383
|
-
this.formControl.setErrors(this.type === 'latitude' ? { latitude: true } : { longitude: true });
|
|
5384
|
-
this.writing = false;
|
|
5385
|
-
return;
|
|
5386
|
-
}
|
|
5387
|
-
var sign = (this.pattern === 'DD') ? 1 /*ignore sign*/ : (this.signFormControl.value || 1);
|
|
5388
|
-
this.value = isNotNil(parsedValue) ? sign * parsedValue : null;
|
|
5389
|
-
// Get the model value
|
|
5390
|
-
//console.debug("[mat-latlon] Setting value {" + this.value + "} parsed from {" + strValue + "}");
|
|
5391
|
-
this.formControl.patchValue(this.value, { emitEvent: false });
|
|
5392
|
-
this.writing = false;
|
|
5393
|
-
this.markForCheck();
|
|
5394
|
-
this._onChangeCallback(this.value);
|
|
5395
|
-
};
|
|
5396
|
-
MatLatLongField.prototype.checkIfTouched = function () {
|
|
5397
|
-
if (this.formControl.touched || this.textFormControl.touched) {
|
|
5398
|
-
this.markForCheck();
|
|
5399
|
-
this._onTouchedCallback();
|
|
5400
|
-
return true;
|
|
5401
|
-
}
|
|
5402
|
-
return false;
|
|
5403
|
-
};
|
|
5404
5362
|
MatLatLongField.prototype._onFocus = function (event) {
|
|
5405
5363
|
var _this = this;
|
|
5406
5364
|
// Apply the default sign, when pattern is DD and field is empty
|
|
@@ -5409,7 +5367,8 @@
|
|
|
5409
5367
|
// Compute the text value, using the default sign
|
|
5410
5368
|
var defaultSign = this.defaultSign === '-' ? -1 : 1;
|
|
5411
5369
|
if (this.pattern === 'DD') {
|
|
5412
|
-
var valueStr_1 = this.
|
|
5370
|
+
var valueStr_1 = this._format(defaultSign, Object.assign(Object.assign({}, this.formatFnOptions), { placeholderChar: this.placeholderChar }));
|
|
5371
|
+
// Keep only the sign ('+' or '-') and placeholder chars, but NOT the '1'
|
|
5413
5372
|
valueStr_1 = valueStr_1 && valueStr_1.replace('1', this.placeholderChar);
|
|
5414
5373
|
// Wait end of focus animation (label should move to top)
|
|
5415
5374
|
setTimeout(function () {
|
|
@@ -5510,6 +5469,42 @@
|
|
|
5510
5469
|
}
|
|
5511
5470
|
}
|
|
5512
5471
|
};
|
|
5472
|
+
MatLatLongField.prototype.onFormChange = function (strValue) {
|
|
5473
|
+
if (this.writing)
|
|
5474
|
+
return; // Skip if call by self
|
|
5475
|
+
this.writing = true;
|
|
5476
|
+
if (this.textFormControl.invalid || this.signFormControl.invalid) {
|
|
5477
|
+
this.formControl.markAsPending();
|
|
5478
|
+
this.formControl.setErrors(Object.assign(Object.assign(Object.assign({}, this.formControl.errors), this.textFormControl.errors), this.signFormControl.errors));
|
|
5479
|
+
this.writing = false;
|
|
5480
|
+
return;
|
|
5481
|
+
}
|
|
5482
|
+
var parsedValue = isNotNilOrBlank(strValue) ? parseLatitudeOrLongitude(strValue, this.pattern, 7 /*=precision of the converted double value */, this.placeholderChar) : null;
|
|
5483
|
+
// DEBUG
|
|
5484
|
+
//console.debug('parsedValue=', parsedValue);
|
|
5485
|
+
if (isNaN(parsedValue)) {
|
|
5486
|
+
this.formControl.markAsPending();
|
|
5487
|
+
this.formControl.setErrors(this.type === 'latitude' ? { latitude: true } : { longitude: true });
|
|
5488
|
+
this.writing = false;
|
|
5489
|
+
return;
|
|
5490
|
+
}
|
|
5491
|
+
var sign = (this.pattern === 'DD') ? 1 /*ignore sign*/ : (this.signFormControl.value || 1);
|
|
5492
|
+
this.value = isNotNil(parsedValue) ? sign * parsedValue : null;
|
|
5493
|
+
// Get the model value
|
|
5494
|
+
//console.debug("[mat-latlon] Setting value {" + this.value + "} parsed from {" + strValue + "}");
|
|
5495
|
+
this.formControl.patchValue(this.value, { emitEvent: false });
|
|
5496
|
+
this.writing = false;
|
|
5497
|
+
this.markForCheck();
|
|
5498
|
+
this._onChangeCallback(this.value);
|
|
5499
|
+
};
|
|
5500
|
+
MatLatLongField.prototype.checkIfTouched = function () {
|
|
5501
|
+
if (this.formControl.touched || this.textFormControl.touched) {
|
|
5502
|
+
this.markForCheck();
|
|
5503
|
+
this._onTouchedCallback();
|
|
5504
|
+
return true;
|
|
5505
|
+
}
|
|
5506
|
+
return false;
|
|
5507
|
+
};
|
|
5513
5508
|
MatLatLongField.prototype.markForCheck = function () {
|
|
5514
5509
|
this.cd.markForCheck();
|
|
5515
5510
|
};
|
|
@@ -5518,7 +5513,7 @@
|
|
|
5518
5513
|
MatLatLongField.decorators = [
|
|
5519
5514
|
{ type: i0.Component, args: [{
|
|
5520
5515
|
selector: 'mat-latlong-field',
|
|
5521
|
-
template: "<!-- readonly -->\n<mat-form-field *ngIf=\"readonly; else writable\"\n [floatLabel]=\"floatLabel\"\n class=\"mat-form-field-disabled\">\n\n <div matPrefix>\n <ng-container *ngTemplateOutlet=\"matPrefixTemplate\"></ng-container>\n </div>\n\n <input matInput hidden type=\"text\"\n readonly\n [placeholder]=\"placeholder\"\n [formControl]=\"formControl\">\n <ion-text>{{
|
|
5516
|
+
template: "<!-- readonly -->\n<mat-form-field *ngIf=\"readonly; else writable\"\n [floatLabel]=\"floatLabel\"\n class=\"mat-form-field-disabled\">\n\n <div matPrefix>\n <ng-container *ngTemplateOutlet=\"matPrefixTemplate\"></ng-container>\n </div>\n\n <input matInput hidden type=\"text\"\n readonly\n [placeholder]=\"placeholder\"\n [formControl]=\"formControl\">\n <ion-text>{{_format(value, formatFnOptions) }}</ion-text>\n\n <div matSuffix>\n <ng-container *ngTemplateOutlet=\"matSuffixTemplate\"></ng-container>\n </div>\n</mat-form-field>\n\n<!-- writable -->\n<ng-template #writable>\n\n <ion-grid class=\"ion-no-padding\">\n <ion-row class=\"ion-no-padding no-wrap\">\n <ion-col class=\"text ion-no-padding\">\n <mat-form-field [floatLabel]=\"floatLabel\"\n [class.mat-form-field-disabled]=\"formControl.disabled\"\n [class.mat-form-field-invalid]=\"formControl.touched && formControl.invalid\">\n\n <mat-label *ngIf=\"placeholder\">{{placeholder}}</mat-label>\n\n <div matPrefix>\n <ng-container *ngTemplateOutlet=\"matPrefixTemplate\"></ng-container>\n </div>\n\n <input matInput #inputElement\n type=\"text\"\n autocomplete=\"off\"\n [textMask]=\"textMaskConfig\"\n [formControl]=\"textFormControl\"\n [placeholder]=\"inputPlaceholder|translate\"\n (keypress)=\"onKeypress($event)\"\n (keydown.tab)=\"moveCaretToSeparator($event, true)\"\n (keydown.shift.tab)=\"moveCaretToSeparator($event, false)\"\n (focus)=\"_onFocus($event)\"\n (blur)=\"_onBlur($event)\"\n [required]=\"required\"\n [tabindex]=\"tabindex\">\n\n <div matSuffix *ngIf=\"!showSignControl\">\n <ng-container *ngTemplateOutlet=\"matSuffixTemplate\"></ng-container>\n </div>\n\n <div class=\"mat-form-field-subscript mat-form-field-subscript-wrapper\">\n\n <!-- errors -->\n <ng-container *ngIf=\"formControl.touched && formControl.errors|mapKeys|arrayFirst; let errorKey\" [ngSwitch]=\"errorKey\">\n <mat-error *ngSwitchCase=\"'required'\" translate>ERROR.FIELD_REQUIRED</mat-error>\n <mat-error *ngSwitchCase=\"'latitude'\" translate>ERROR.FIELD_NOT_VALID_LATITUDE</mat-error>\n <mat-error *ngSwitchCase=\"'longitude'\" translate>ERROR.FIELD_NOT_VALID_LONGITUDE</mat-error>\n <mat-error *ngSwitchCase=\"'min'\">{{'ERROR.FIELD_MIN_COMPACT'|translate: {min: _format(formControl.errors.min.min, formatFnOptions) } }}</mat-error>\n <mat-error *ngSwitchCase=\"'max'\">{{'ERROR.FIELD_MAX_COMPACT'|translate: {max: _format(formControl.errors.max.max, formatFnOptions) } }}</mat-error>\n <mat-error *ngSwitchCase=\"'msg'\">{{(formControl.errors.msg?.key || formControl.errors.msg) | translate: formControl.errors.msg?.params}}</mat-error>\n </ng-container>\n <ng-content select=\"mat-error\"></ng-content>\n\n <!-- mat hint -->\n <div class=\"mat-form-field-hint-wrapper\" [class.cdk-visually-hidden]=\"formControl.invalid\">\n <div class=\"mat-form-field-hint-spacer\"></div>\n <ng-content select=\"mat-hint\"></ng-content>\n </div>\n </div>\n </mat-form-field>\n </ion-col>\n\n <!-- sign -->\n <ion-col class=\"sign ion-no-padding\" [ngSwitch]=\"type\" *ngIf=\"showSignControl\">\n\n <!-- sign on latitude -->\n <mat-form-field *ngSwitchCase=\"'latitude'\"\n floatLabel=\"never\"\n [class.mat-form-field-invalid]=\"formControl.touched && signFormControl.invalid\">\n <mat-label *ngIf=\"placeholder && floatLabel != 'never'\" translate>COMMON.LAT_LONG.LAT_SIGN_PLACEHOLDER</mat-label>\n <mat-select [formControl]=\"signFormControl\"\n [tabindex]=\"tabindex+1\">\n <mat-option [value]=\"1\">{{'COMMON.LAT_LONG.LAT_SIGN_N'|translate}}</mat-option>\n <mat-option [value]=\"-1\" >{{'COMMON.LAT_LONG.LAT_SIGN_S'|translate}}</mat-option>\n </mat-select>\n\n <div matSuffix>\n <ng-container *ngTemplateOutlet=\"matSuffixTemplate\"></ng-container>\n </div>\n </mat-form-field>\n\n <!-- sign on longitude -->\n <mat-form-field floatLabel=\"never\"\n *ngSwitchCase=\"'longitude'\"\n [class.mat-form-field-invalid]=\"formControl.touched && signFormControl.invalid\">\n <mat-label *ngIf=\"placeholder && floatLabel != 'never'\" translate>COMMON.LAT_LONG.LONG_SIGN_PLACEHOLDER</mat-label>\n <mat-select [formControl]=\"signFormControl\"\n [tabindex]=\"tabindex+2\">\n <mat-option [value]=\"1\" translate>{{'COMMON.LAT_LONG.LONG_SIGN_E'|translate}}</mat-option>\n <mat-option [value]=\"-1\" translate>{{'COMMON.LAT_LONG.LONG_SIGN_W'|translate}}</mat-option>\n </mat-select>\n\n <div matSuffix>\n <ng-container *ngTemplateOutlet=\"matSuffixTemplate\"></ng-container>\n </div>\n </mat-form-field>\n </ion-col>\n </ion-row>\n </ion-grid>\n\n</ng-template>\n\n<ng-template #matPrefixTemplate>\n <ng-content select=\"[matPrefix]\"></ng-content>\n</ng-template>\n\n\n<ng-template #matSuffixTemplate>\n <ng-content select=\"[matSuffix]\"></ng-content>\n</ng-template>\n",
|
|
5522
5517
|
providers: [
|
|
5523
5518
|
{
|
|
5524
5519
|
provide: i1.NG_VALUE_ACCESSOR,
|
|
@@ -5941,7 +5936,7 @@
|
|
|
5941
5936
|
MatDate.decorators = [
|
|
5942
5937
|
{ type: i0.Component, args: [{
|
|
5943
5938
|
selector: 'mat-date-field',
|
|
5944
|
-
template: "<!-- readonly -->\n<mat-form-field *ngIf=\"readonly; else writable\"\n [floatLabel]=\"floatLabel\"\n class=\"mat-form-field-disabled\">\n\n <div matPrefix>\n <ng-container *ngTemplateOutlet=\"matPrefixTemplate\"></ng-container>\n </div>\n\n <input matInput hidden type=\"text\"\n readonly\n [placeholder]=\"placeholder\"\n [formControl]=\"formControl\">\n <ion-text>{{formControl.value|dateFormat: {pattern: datePattern} }}</ion-text>\n</mat-form-field>\n\n<!-- writable -->\n<ng-template #writable>\n <mat-form-field [floatLabel]=\"floatLabel\">\n\n <mat-label>{{placeholder}}</mat-label>\n\n <div matPrefix>\n <ng-container *ngTemplateOutlet=\"matPrefixTemplate\"></ng-container>\n </div>\n\n <input matInput #matInput autocomplete=\"off\" type=\"text\"\n *ngIf=\"!mobile\"\n [formControl]=\"textControl\"\n [textMask]=\"{mask: mask, keepCharPositions: true, placeholderChar: placeholderChar}\"\n [placeholder]=\"'COMMON.DATE_PLACEHOLDER'|translate\"\n (blur)=\"checkIfTouched()\"\n (keyup.arrowdown)=\"openDatePicker($event, datePicker)\"\n (keyup.escape)=\"preventEvent($event)\"\n [required]=\"required\"\n [tabindex]=\"tabindex\"\n [appAutofocus]=\"autofocus\">\n <input matInput #matInput autocomplete=\"off\" type=\"text\"\n *ngIf=\"mobile\"\n [formControl]=\"textControl\"\n (click)=\"openDatePickerIfMobile($event, datePicker)\"\n [required]=\"required\"\n [tabindex]=\"tabindex\"\n readonly>\n\n <!-- Hide the final input -->\n <input matInput type=\"text\" [formControl]=\"formControl\"\n hidden\n [matDatepicker]=\"datePicker\"\n [matDatepickerFilter]=\"datePickerFilter\"\n (dateChange)=\"onDatePickerChange($event)\">\n\n <button type=\"button\" mat-icon-button tabindex=\"-1\" matSuffix\n (click)=\"openDatePicker($event, datePicker)\"\n [disabled]=\"formControl.disabled\">\n <div *ngIf=\"mobile; then iconDate; else iconDesktop\"></div>\n </button>\n <button matSuffix mat-icon-button tabindex=\"-1\"\n type=\"button\"\n *ngIf=\"clearable\"\n (click)=\"clear()\"\n [hidden]=\"formControl.disabled || !formControl.value\">\n <mat-icon>close</mat-icon>\n </button>\n\n <!-- errors -->\n <
|
|
5939
|
+
template: "<!-- readonly -->\n<mat-form-field *ngIf=\"readonly; else writable\"\n [floatLabel]=\"floatLabel\"\n class=\"mat-form-field-disabled\">\n\n <div matPrefix>\n <ng-container *ngTemplateOutlet=\"matPrefixTemplate\"></ng-container>\n </div>\n\n <input matInput hidden type=\"text\"\n readonly\n [placeholder]=\"placeholder\"\n [formControl]=\"formControl\">\n <ion-text>{{formControl.value|dateFormat: {pattern: datePattern} }}</ion-text>\n</mat-form-field>\n\n<!-- writable -->\n<ng-template #writable>\n <mat-form-field [floatLabel]=\"floatLabel\">\n\n <mat-label>{{placeholder}}</mat-label>\n\n <div matPrefix>\n <ng-container *ngTemplateOutlet=\"matPrefixTemplate\"></ng-container>\n </div>\n\n <input matInput #matInput autocomplete=\"off\" type=\"text\"\n *ngIf=\"!mobile\"\n [formControl]=\"textControl\"\n [textMask]=\"{mask: mask, keepCharPositions: true, placeholderChar: placeholderChar}\"\n [placeholder]=\"'COMMON.DATE_PLACEHOLDER'|translate\"\n (blur)=\"checkIfTouched()\"\n (keyup.arrowdown)=\"openDatePicker($event, datePicker)\"\n (keyup.escape)=\"preventEvent($event)\"\n [required]=\"required\"\n [tabindex]=\"tabindex\"\n [appAutofocus]=\"autofocus\">\n <input matInput #matInput autocomplete=\"off\" type=\"text\"\n *ngIf=\"mobile\"\n [formControl]=\"textControl\"\n (click)=\"openDatePickerIfMobile($event, datePicker)\"\n [required]=\"required\"\n [tabindex]=\"tabindex\"\n readonly>\n\n <!-- Hide the final input -->\n <input matInput type=\"text\" [formControl]=\"formControl\"\n hidden\n [matDatepicker]=\"datePicker\"\n [matDatepickerFilter]=\"datePickerFilter\"\n (dateChange)=\"onDatePickerChange($event)\">\n\n <button type=\"button\" mat-icon-button tabindex=\"-1\" matSuffix\n (click)=\"openDatePicker($event, datePicker)\"\n [disabled]=\"formControl.disabled\">\n <div *ngIf=\"mobile; then iconDate; else iconDesktop\"></div>\n </button>\n <button matSuffix mat-icon-button tabindex=\"-1\"\n type=\"button\"\n *ngIf=\"clearable\"\n (click)=\"clear()\"\n [hidden]=\"formControl.disabled || !formControl.value\">\n <mat-icon>close</mat-icon>\n </button>\n\n <!-- errors -->\n <ng-container *ngIf=\"formControl.touched && formControl.errors|mapKeys|arrayFirst; let errorKey\" [ngSwitch]=\"errorKey\">\n <mat-error *ngSwitchCase=\"'required'\" translate>ERROR.FIELD_REQUIRED</mat-error>\n <mat-error *ngSwitchCase=\"'validDate'\" translate>ERROR.FIELD_NOT_VALID_DATE</mat-error>\n <mat-error *ngSwitchCase=\"'dateIsAfter'\">{{'ERROR.FIELD_NOT_VALID_DATE_AFTER' | translate: formControl.errors.dateIsAfter }}</mat-error>\n <mat-error *ngSwitchCase=\"'dateIsBefore'\">{{'ERROR.FIELD_NOT_VALID_DATE_BEFORE' | translate: formControl.errors.dateIsBefore }}</mat-error>\n <mat-error *ngSwitchCase=\"'dateRange'\" translate>ERROR.FIELD_NOT_VALID_DATE_RANGE</mat-error>\n <mat-error *ngSwitchCase=\"'dateMaxDuration'\" translate>ERROR.FIELD_NOT_VALID_DATE_MAX_DURATION</mat-error>\n <mat-error *ngSwitchCase=\"'dateMinDuration'\" translate>ERROR.FIELD_NOT_VALID_DATE_MIN_DURATION</mat-error>\n <mat-error *ngSwitchCase=\"'msg'\">{{(formControl.errors.msg?.key || formControl.errors.msg) | translate: formControl.errors.msg?.params}}</mat-error>\n </ng-container>\n <ng-content select=\"mat-error\"></ng-content>\n\n <!-- mat hint -->\n <div class=\"mat-form-field-hint-wrapper\" [class.cdk-visually-hidden]=\"formControl.invalid\">\n <div class=\"mat-form-field-hint-spacer\"></div>\n <ng-content select=\"mat-hint\"></ng-content>\n </div>\n </mat-form-field>\n\n <mat-datepicker #datePicker\n [touchUi]=\"mobile\"\n [disabled]=\"formControl.disabled\"\n [startAt]=\"startDate\"\n ></mat-datepicker>\n\n\n\n</ng-template>\n\n<ng-template #iconDesktop>\n <mat-icon>keyboard_arrow_down</mat-icon>\n</ng-template>\n\n<ng-template #iconDate>\n <mat-icon>date_range</mat-icon>\n</ng-template>\n\n<ng-template #matPrefixTemplate>\n <ng-content select=\"[matPrefix]\"></ng-content>\n</ng-template>\n",
|
|
5945
5940
|
providers: [
|
|
5946
5941
|
DEFAULT_VALUE_ACCESSOR,
|
|
5947
5942
|
],
|
|
@@ -6691,7 +6686,7 @@
|
|
|
6691
6686
|
MatDateShort.decorators = [
|
|
6692
6687
|
{ type: i0.Component, args: [{
|
|
6693
6688
|
selector: 'mat-date-short-field',
|
|
6694
|
-
template: "<!-- readonly -->\n<mat-form-field *ngIf=\"readonly else writable\">\n <input matInput hidden type=\"text\" readonly=\"true\" [formControl]=\"formControl\">\n <ion-text>{{formControl.value|dateFormat: {pattern: displayPattern} }}</ion-text>\n</mat-form-field>\n\n<ng-template #writable>\n <mat-form-field [floatLabel]=\"floatLabel\">\n\n <mat-label>{{placeholder}}</mat-label>\n\n <div matPrefix><ng-content select=\"[matPrefix]\"></ng-content></div>\n\n <input matInput #matInput autocomplete=\"off\" type=\"text\"\n *ngIf=\"!mobile\"\n [formControl]=\"dayControl\"\n [textMask]=\"{mask: dayMask, keepCharPositions: true, placeholderChar: placeholderChar}\"\n [placeholder]=\"'COMMON.DATE_YEAR_PLACEHOLDER'|translate\"\n (blur)=\"checkIfTouched()\"\n (keyup.arrowdown)=\"openDatePicker($event, datePicker1)\"\n (keyup.escape)=\"preventEvent($event)\"\n (click)=\"matInput.select()\"\n [required]=\"required\"\n [tabindex]=\"tabindex\">\n <input matInput #matInput autocomplete=\"off\" type=\"text\"\n *ngIf=\"mobile\"\n [formControl]=\"dayControl\"\n (click)=\"openDatePickerIfMobile($event, datePicker1)\"\n [required]=\"required\"\n [tabindex]=\"tabindex\"\n readonly>\n\n <!-- Hide the final control -->\n <input matInput type=\"text\"\n [formControl]=\"formControl\"\n hidden\n [matDatepicker]=\"datePicker1\"\n (dateChange)=\"onDatePickerChange($event)\">\n\n\n <button matSuffix mat-icon-button tabindex=\"-1\"\n type=\"button\"\n (click)=\"openDatePicker($event, datePicker1)\"\n [disabled]=\"formControl.disabled\">\n <div *ngIf=\"mobile; then iconDate; else iconDesktop\"></div>\n </button>\n <button matSuffix mat-icon-button tabindex=\"-1\"\n type=\"button\"\n *ngIf=\"clearable\"\n (click)=\"writeValue(null)\"\n [hidden]=\"formControl.disabled || !formControl.value\">\n <mat-icon>close</mat-icon>\n </button>\n\n <
|
|
6689
|
+
template: "<!-- readonly -->\n<mat-form-field *ngIf=\"readonly else writable\">\n <div matPrefix>\n <ng-container *ngTemplateOutlet=\"matPrefixTemplate\"></ng-container>\n </div>\n\n <input matInput hidden type=\"text\" readonly=\"true\" [formControl]=\"formControl\">\n <ion-text>{{formControl.value|dateFormat: {pattern: displayPattern} }}</ion-text>\n\n <div matSuffix>\n <ng-container *ngTemplateOutlet=\"matSuffixTemplate\"></ng-container>\n </div>\n</mat-form-field>\n\n<ng-template #writable>\n <mat-form-field [floatLabel]=\"floatLabel\">\n\n <mat-label>{{placeholder}}</mat-label>\n\n <div matPrefix><ng-content select=\"[matPrefix]\"></ng-content></div>\n\n <input matInput #matInput autocomplete=\"off\" type=\"text\"\n *ngIf=\"!mobile\"\n [formControl]=\"dayControl\"\n [textMask]=\"{mask: dayMask, keepCharPositions: true, placeholderChar: placeholderChar}\"\n [placeholder]=\"'COMMON.DATE_YEAR_PLACEHOLDER'|translate\"\n (blur)=\"checkIfTouched()\"\n (keyup.arrowdown)=\"openDatePicker($event, datePicker1)\"\n (keyup.escape)=\"preventEvent($event)\"\n (click)=\"matInput.select()\"\n [required]=\"required\"\n [tabindex]=\"tabindex\">\n <input matInput #matInput autocomplete=\"off\" type=\"text\"\n *ngIf=\"mobile\"\n [formControl]=\"dayControl\"\n (click)=\"openDatePickerIfMobile($event, datePicker1)\"\n [required]=\"required\"\n [tabindex]=\"tabindex\"\n readonly>\n\n <!-- Hide the final control -->\n <input matInput type=\"text\"\n [formControl]=\"formControl\"\n hidden\n [matDatepicker]=\"datePicker1\"\n (dateChange)=\"onDatePickerChange($event)\">\n\n\n <button matSuffix mat-icon-button tabindex=\"-1\"\n type=\"button\"\n (click)=\"openDatePicker($event, datePicker1)\"\n [disabled]=\"formControl.disabled\">\n <div *ngIf=\"mobile; then iconDate; else iconDesktop\"></div>\n </button>\n <button matSuffix mat-icon-button tabindex=\"-1\"\n type=\"button\"\n *ngIf=\"clearable\"\n (click)=\"writeValue(null)\"\n [hidden]=\"formControl.disabled || !formControl.value\">\n <mat-icon>close</mat-icon>\n </button>\n\n\n <ng-container *ngIf=\"formControl.touched && formControl.errors|mapKeys|arrayFirst; let errorKey\" [ngSwitch]=\"errorKey\">\n <mat-error *ngSwitchCase=\"'required'\" translate>ERROR.FIELD_REQUIRED</mat-error>\n <mat-error *ngSwitchCase=\"'validDate'\" translate>ERROR.FIELD_NOT_VALID_DATE</mat-error>\n <mat-error *ngSwitchCase=\"'dateIsAfter'\">{{'ERROR.FIELD_NOT_VALID_DATE_AFTER' | translate: formControl.errors.dateIsAfter }}</mat-error>\n <mat-error *ngSwitchCase=\"'dateRange'\" translate>ERROR.FIELD_NOT_VALID_DATE_RANGE</mat-error>\n <mat-error *ngSwitchCase=\"'dateMaxDuration'\" translate>ERROR.FIELD_NOT_VALID_DATE_MAX_DURATION</mat-error>\n <mat-error *ngSwitchCase=\"'dateMinDuration'\" translate>ERROR.FIELD_NOT_VALID_DATE_MIN_DURATION</mat-error>\n <mat-error *ngSwitchCase=\"'msg'\">{{(formControl.errors.msg?.key || formControl.errors.msg) | translate: formControl.errors.msg?.params}}</mat-error>\n </ng-container>\n <ng-content select=\"mat-error\"></ng-content>\n\n <div matSuffix>\n <ng-container *ngTemplateOutlet=\"matSuffixTemplate\"></ng-container>\n </div>\n </mat-form-field>\n\n <mat-datepicker #datePicker1\n startView=\"multi-year\"\n [touchUi]=\"mobile\"\n [disabled]=\"formControl.disabled\"\n (yearSelected)=\"closeDatePicker($event, datePicker1)\"\n [startAt]=\"startDate\"></mat-datepicker>\n\n <ng-template #iconDesktop>\n <mat-icon>keyboard_arrow_down</mat-icon>\n </ng-template>\n\n <ng-template #iconDate>\n <mat-icon>date_range</mat-icon>\n </ng-template>\n\n</ng-template>\n\n<ng-template #matPrefixTemplate>\n <ng-content select=\"[matPrefix]\"></ng-content>\n</ng-template>\n\n<ng-template #matSuffixTemplate>\n <ng-content select=\"[matSuffix]\"></ng-content>\n</ng-template>\n",
|
|
6695
6690
|
providers: [
|
|
6696
6691
|
DEFAULT_VALUE_ACCESSOR$2,
|
|
6697
6692
|
],
|