@sumaris-net/ngx-components 1.6.10 → 1.6.11
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 +330 -291
- 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/core/auth/form/form-auth.js +1 -1
- package/esm2015/src/app/shared/material/autocomplete/material.autocomplete.js +25 -22
- package/esm2015/src/app/shared/material/chips/material.chips.js +21 -9
- package/fesm2015/sumaris-net.ngx-components.js +314 -284
- package/fesm2015/sumaris-net.ngx-components.js.map +1 -1
- package/package.json +1 -1
- package/sumaris-net.ngx-components.metadata.json +1 -1
|
@@ -1,9 +1,12 @@
|
|
|
1
|
-
import
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { InjectionToken, EventEmitter, Component, forwardRef, ChangeDetectionStrategy, ChangeDetectorRef, Optional, Input, Output, ViewChild, Pipe, Injectable, Directive, Inject, NgModule, ElementRef, ViewChildren, HostListener, ComponentFactoryResolver, ApplicationRef, Injector, Renderer2, ViewEncapsulation } from '@angular/core';
|
|
3
|
+
import * as i1$3 from '@angular/common';
|
|
2
4
|
import { CommonModule, DOCUMENT, Location } from '@angular/common';
|
|
3
5
|
import { CdkTableModule } from '@angular/cdk/table';
|
|
4
6
|
import { A11yModule } from '@angular/cdk/a11y';
|
|
5
7
|
import { OverlayModule, OverlayContainer, FullscreenOverlayContainer, Overlay } from '@angular/cdk/overlay';
|
|
6
8
|
import { ScrollingModule } from '@angular/cdk/scrolling';
|
|
9
|
+
import * as i1$2 from '@angular/material/core';
|
|
7
10
|
import { DateAdapter, MatCommonModule, MatRippleModule } from '@angular/material/core';
|
|
8
11
|
import { MatTableModule, MatTable, MatColumnDef } from '@angular/material/table';
|
|
9
12
|
import { MatSortModule, MatSort } from '@angular/material/sort';
|
|
@@ -27,16 +30,21 @@ import { MatProgressBarModule } from '@angular/material/progress-bar';
|
|
|
27
30
|
import { MatRadioModule } from '@angular/material/radio';
|
|
28
31
|
import { MatBadgeModule } from '@angular/material/badge';
|
|
29
32
|
import { MatSlideToggleModule } from '@angular/material/slide-toggle';
|
|
33
|
+
import * as i2$1 from '@angular/material/dialog';
|
|
30
34
|
import { MatDialogModule, MAT_DIALOG_DATA, MatDialog } from '@angular/material/dialog';
|
|
31
35
|
import { MatAutocomplete, MatAutocompleteTrigger, MatAutocompleteModule, MAT_AUTOCOMPLETE_SCROLL_STRATEGY, MAT_AUTOCOMPLETE_DEFAULT_OPTIONS } from '@angular/material/autocomplete';
|
|
32
36
|
import { __awaiter, __decorate } from 'tslib';
|
|
37
|
+
import * as i1$6 from '@angular/forms';
|
|
33
38
|
import { NG_VALUE_ACCESSOR, FormGroupDirective, AbstractControl, FormGroup, FormArray, FormControl, ReactiveFormsModule, Validators, FormBuilder } from '@angular/forms';
|
|
34
39
|
import { timer, merge, fromEvent, BehaviorSubject, Subscription, Subject, isObservable, noop as noop$9, Observable, defer, of, from, combineLatest, EMPTY } from 'rxjs';
|
|
35
40
|
import { filter, first, map, takeUntil, switchMap, startWith, debounceTime, takeWhile, tap, distinctUntilChanged, mergeMap, catchError, throttleTime, skip } from 'rxjs/operators';
|
|
41
|
+
import * as i1$1 from '@ngx-translate/core';
|
|
36
42
|
import { TranslateService, TranslateModule } from '@ngx-translate/core';
|
|
43
|
+
import * as i1$4 from '@ionic/angular';
|
|
37
44
|
import { IonicModule, Platform, IonRouterOutlet, ModalController, IonicSafeString, createAnimation, ToastController, AlertController, IonicRouteStrategy, NavParams, MenuController, IonContent } from '@ionic/angular';
|
|
38
45
|
import * as momentImported from 'moment';
|
|
39
46
|
import { isMoment } from 'moment';
|
|
47
|
+
import * as i1 from '@angular/material-moment-adapter';
|
|
40
48
|
import { MomentDateAdapter, MatMomentDateModule } from '@angular/material-moment-adapter';
|
|
41
49
|
import { Keyboard } from '@ionic-native/keyboard/ngx';
|
|
42
50
|
import { TextMaskModule } from 'angular2-text-mask';
|
|
@@ -46,32 +54,38 @@ import { trigger, state, style, transition, animate } from '@angular/animations'
|
|
|
46
54
|
import { MatDividerModule } from '@angular/material/divider';
|
|
47
55
|
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
48
56
|
import { MatChipsModule } from '@angular/material/chips';
|
|
57
|
+
import * as i3$3 from '@angular/router';
|
|
49
58
|
import { Router, RouterModule, RouteReuseStrategy, ActivatedRoute } from '@angular/router';
|
|
59
|
+
import * as i1$5 from '@angular/platform-browser';
|
|
50
60
|
import { HammerGestureConfig, EventManager } from '@angular/platform-browser';
|
|
61
|
+
import * as i2$2 from '@angular/common/http';
|
|
51
62
|
import { HttpResponse, HttpClient, HttpHeaders, HTTP_INTERCEPTORS, HttpClientModule } from '@angular/common/http';
|
|
52
63
|
import { ColorPickerModule } from 'ngx-color-picker';
|
|
53
|
-
import { NativeAudio
|
|
54
|
-
import { Vibration
|
|
64
|
+
import { NativeAudio } from '@ionic-native/native-audio/ngx';
|
|
65
|
+
import { Vibration } from '@ionic-native/vibration/ngx';
|
|
55
66
|
import { AudioManagement } from '@ionic-native/audio-management/ngx';
|
|
56
|
-
import
|
|
57
|
-
import
|
|
58
|
-
import
|
|
67
|
+
import * as i2 from '@ionic-native/native-audio/ngx/index';
|
|
68
|
+
import * as i3 from '@ionic-native/vibration/ngx/index';
|
|
69
|
+
import * as i4 from '@ionic-native/audio-management/ngx/index';
|
|
59
70
|
import * as uuidv4Imported from 'uuid/v4';
|
|
60
71
|
import { DragDropModule } from '@angular/cdk/drag-drop';
|
|
61
72
|
import { MarkdownModule } from 'ngx-markdown';
|
|
62
73
|
import { sign, box, hash, verify } from 'tweetnacl';
|
|
74
|
+
import * as i3$1 from '@ionic/storage';
|
|
63
75
|
import { Storage, IonicStorageModule } from '@ionic/storage';
|
|
64
76
|
import 'zone.js/dist/zone-error';
|
|
65
|
-
import { SplashScreen
|
|
66
|
-
import { Connection, Network
|
|
67
|
-
import { CacheService
|
|
68
|
-
import
|
|
69
|
-
import
|
|
70
|
-
import
|
|
71
|
-
import { StatusBar
|
|
77
|
+
import { SplashScreen } from '@ionic-native/splash-screen/ngx';
|
|
78
|
+
import { Connection, Network } from '@ionic-native/network/ngx';
|
|
79
|
+
import { CacheService, CacheModule } from 'ionic-cache';
|
|
80
|
+
import * as i6 from 'ionic-cache/dist/cache.service';
|
|
81
|
+
import * as i9 from '@ionic-native/network/ngx/index';
|
|
82
|
+
import * as i10 from '@ionic-native/splash-screen/ngx/index';
|
|
83
|
+
import { StatusBar } from '@ionic-native/status-bar/ngx';
|
|
84
|
+
import * as i2$4 from '@angular/cdk/platform';
|
|
72
85
|
import { Platform as Platform$1 } from '@angular/cdk/platform';
|
|
73
|
-
import { InAppBrowser
|
|
86
|
+
import { InAppBrowser } from '@ionic-native/in-app-browser/ngx';
|
|
74
87
|
import { ApolloLink, NetworkStatus, InMemoryCache, ApolloClient, gql } from '@apollo/client/core';
|
|
88
|
+
import * as i2$3 from 'apollo-angular';
|
|
75
89
|
import { Apollo } from 'apollo-angular';
|
|
76
90
|
import { WebSocketLink } from '@apollo/client/link/ws';
|
|
77
91
|
import { getMainDefinition } from '@apollo/client/utilities';
|
|
@@ -79,13 +93,14 @@ import { RetryLink } from '@apollo/client/link/retry';
|
|
|
79
93
|
import QueueLink from 'apollo-link-queue';
|
|
80
94
|
import SerializingLink from 'apollo-link-serialize';
|
|
81
95
|
import loggerLink from 'apollo-link-logger';
|
|
96
|
+
import * as i3$2 from 'apollo-angular/http';
|
|
82
97
|
import { HttpLink } from 'apollo-angular/http';
|
|
83
98
|
import { IonicStorageWrapper, persistCache } from 'apollo3-cache-persist';
|
|
84
|
-
import { NotificationVisibility, Downloader
|
|
85
|
-
import
|
|
86
|
-
import
|
|
87
|
-
import
|
|
88
|
-
import
|
|
99
|
+
import { NotificationVisibility, Downloader } from '@ionic-native/downloader/ngx';
|
|
100
|
+
import * as i14 from '@ionic-native/status-bar/ngx/index';
|
|
101
|
+
import * as i15 from '@ionic-native/keyboard/ngx/index';
|
|
102
|
+
import * as i17 from '@ionic-native/in-app-browser/ngx/index';
|
|
103
|
+
import * as i18 from '@ionic-native/downloader/ngx/index';
|
|
89
104
|
import { ValidatorService, TableDataSource } from '@e-is/ngx-material-table';
|
|
90
105
|
import { SelectionModel } from '@angular/cdk/collections';
|
|
91
106
|
import { NgxJdenticonModule } from 'ngx-jdenticon';
|
|
@@ -976,14 +991,14 @@ class MatAutocompleteConfigHolder {
|
|
|
976
991
|
return this.fields[fieldName] || this.add(fieldName);
|
|
977
992
|
}
|
|
978
993
|
}
|
|
979
|
-
const noop = (_) => { };
|
|
980
|
-
const ɵ0 = noop;
|
|
994
|
+
const noop$8 = (_) => { };
|
|
995
|
+
const ɵ0$b = noop$8;
|
|
981
996
|
class MatAutocompleteField {
|
|
982
997
|
constructor(cd, formGroupDir) {
|
|
983
998
|
this.cd = cd;
|
|
984
999
|
this.formGroupDir = formGroupDir;
|
|
985
|
-
this._onChangeCallback = noop;
|
|
986
|
-
this._onTouchedCallback = noop;
|
|
1000
|
+
this._onChangeCallback = noop$8;
|
|
1001
|
+
this._onTouchedCallback = noop$8;
|
|
987
1002
|
this.logPrefix = '[mat-autocomplete] ';
|
|
988
1003
|
this.formControlName = null;
|
|
989
1004
|
this.required = false;
|
|
@@ -1174,9 +1189,10 @@ class MatAutocompleteField {
|
|
|
1174
1189
|
// Filter if not enough character
|
|
1175
1190
|
filter(value => value.length >= this.suggestLengthThreshold),
|
|
1176
1191
|
// Wait a debounce time
|
|
1177
|
-
debounceTime(this.debounceTime)
|
|
1192
|
+
debounceTime(this.debounceTime)
|
|
1178
1193
|
// DEBUG
|
|
1179
|
-
tap((value) => console.debug(this.logPrefix + ' Search text changes:', value))
|
|
1194
|
+
//,tap((value) => this.debug && console.debug(this.logPrefix + ' Search text changes:', value))
|
|
1195
|
+
),
|
|
1180
1196
|
// Object set: use it (no distinctUntilChanged() pipe need)
|
|
1181
1197
|
this.formControl.valueChanges
|
|
1182
1198
|
.pipe(startWith(this.formControl.value), filter(value => (this.searchable && isNotNil(value) && typeof value === 'object')), tap(value => {
|
|
@@ -1192,35 +1208,38 @@ class MatAutocompleteField {
|
|
|
1192
1208
|
this.matInputText.nativeElement.value = this.displayValue;
|
|
1193
1209
|
}
|
|
1194
1210
|
}
|
|
1195
|
-
})
|
|
1211
|
+
})
|
|
1196
1212
|
// DEBUG
|
|
1197
|
-
tap(value => this.debug && console.debug(this.logPrefix + ' Received an object value: ', value))
|
|
1213
|
+
//,tap(value => this.debug && console.debug(this.logPrefix + ' Received an object value: ', value))
|
|
1214
|
+
),
|
|
1198
1215
|
// On dropdown button click (no distinctUntilChanged(), nor debounceTime)
|
|
1199
1216
|
this.dropButtonClick
|
|
1200
1217
|
.pipe(filter(event => this.searchable && this.enabled && (!event || !event.defaultPrevented)), map(_ => this.showAllOnFocus ? '*' : this.formControl.value),
|
|
1201
|
-
// Make enough characters
|
|
1218
|
+
// Make sure there is enough characters
|
|
1202
1219
|
filter(thresholdFilterFn)),
|
|
1203
1220
|
// Merge some observables, with a common distinctUntilChanged() pipe, and NO debounceTime
|
|
1204
1221
|
merge(
|
|
1205
1222
|
// Focus or click => Load all
|
|
1206
1223
|
merge(this.focused, this.clicked)
|
|
1207
|
-
.pipe(filter(_ => this.enabled && this.searchable), map(_ => this.showAllOnFocus ? '*' : this.formControl.value)
|
|
1208
|
-
// DEBUG
|
|
1209
|
-
tap(value => this.debug && console.debug(this.logPrefix + ' Received focused or clicked event: ', value))), merge(this.$inputItems, this._$filter)
|
|
1210
|
-
.pipe(filter(_ => this.searchable && this.enabled), map(_ => this.formControl.value),
|
|
1224
|
+
.pipe(filter(_ => this.enabled && this.searchable), map(_ => this.showAllOnFocus ? '*' : this.formControl.value)
|
|
1211
1225
|
// DEBUG
|
|
1212
|
-
tap(value => this.debug && console.debug(this.logPrefix + ' Received
|
|
1226
|
+
//,tap(value => this.debug && console.debug(this.logPrefix + ' Received focused or clicked event: ', value))
|
|
1227
|
+
), merge(this.$inputItems, this._$filter)
|
|
1228
|
+
.pipe(filter(_ => this.searchable && this.enabled), map(_ => this.formControl.value)))
|
|
1213
1229
|
.pipe(
|
|
1214
1230
|
// Make sure there is enough characters
|
|
1215
1231
|
filter(thresholdFilterFn),
|
|
1216
1232
|
// Distinguish changes
|
|
1217
1233
|
// - do NOT filter if loading, to force update after a blur event
|
|
1218
|
-
distinctUntilChanged((v1, v2) => !this.loading && (v1 === v2 || this.equals(v1, v2)))
|
|
1234
|
+
distinctUntilChanged((v1, v2) => !this.loading && (v1 === v2 || this.equals(v1, v2)))
|
|
1235
|
+
// DEBUG
|
|
1236
|
+
//,tap(value => this.debug && console.debug(this.logPrefix + ' Received update event: ', value))
|
|
1237
|
+
))
|
|
1219
1238
|
.pipe(
|
|
1220
1239
|
// Suggest values
|
|
1221
1240
|
mergeMap(value => this.suggest(value, this.filter)),
|
|
1222
1241
|
// DEBUG
|
|
1223
|
-
tap(items => this.debug && console.debug(this.logPrefix + ' Received from suggest: ', items)),
|
|
1242
|
+
//tap(items => this.debug && console.debug(this.logPrefix + ' Received from suggest: ', items)),
|
|
1224
1243
|
// Store implicit value (will use it onBlur if not other value selected)
|
|
1225
1244
|
tap(items => this.updateImplicitValue(items)));
|
|
1226
1245
|
// Fetch more events
|
|
@@ -1253,9 +1272,10 @@ class MatAutocompleteField {
|
|
|
1253
1272
|
this._subscription.add(this.blurred
|
|
1254
1273
|
.pipe(
|
|
1255
1274
|
// Skip if not searchable
|
|
1256
|
-
filter(_ => this.searchable), map(_ => this.formControl.value)
|
|
1275
|
+
filter(_ => this.searchable), map(_ => this.formControl.value)
|
|
1257
1276
|
// DEBUG
|
|
1258
|
-
tap(value => console.debug(this.logPrefix + ' Received blurred event: ', value))
|
|
1277
|
+
//,tap(value => this.debug && console.debug(this.logPrefix + ' Received blurred event: ', value)),
|
|
1278
|
+
)
|
|
1259
1279
|
.subscribe(value => {
|
|
1260
1280
|
// When leave component without object, use implicit value if :
|
|
1261
1281
|
// - an explicit value
|
|
@@ -1341,7 +1361,7 @@ class MatAutocompleteField {
|
|
|
1341
1361
|
}
|
|
1342
1362
|
writeValue(value) {
|
|
1343
1363
|
// DEBUG
|
|
1344
|
-
// console.debug(this.logPrefix + ' Writing value: ', value);
|
|
1364
|
+
// if (this.debug) console.debug(this.logPrefix + ' Writing value: ', value);
|
|
1345
1365
|
if (value !== this.formControl.value) {
|
|
1346
1366
|
this.formControl.patchValue(value, { emitEvent: false });
|
|
1347
1367
|
this._onChangeCallback(value);
|
|
@@ -1379,18 +1399,16 @@ class MatAutocompleteField {
|
|
|
1379
1399
|
event.stopPropagation();
|
|
1380
1400
|
event.returnValue = false;
|
|
1381
1401
|
// DEBUG
|
|
1382
|
-
if (this.debug)
|
|
1383
|
-
console.debug(this.logPrefix + ' Cancelling focus event');
|
|
1402
|
+
//if (this.debug) console.debug(this.logPrefix + ' Cancelling focus event');
|
|
1384
1403
|
return false;
|
|
1385
1404
|
}
|
|
1386
|
-
|
|
1387
|
-
|
|
1405
|
+
// DEBUG
|
|
1406
|
+
//if (this.debug) console.debug(this.logPrefix + ' Select input content');
|
|
1388
1407
|
const hasContent = true; // selectInputContent(event);
|
|
1389
1408
|
// If combo is empty, or if has content but should force to show panel on focus
|
|
1390
1409
|
if (!hasContent || this.showPanelOnFocus || this.showAllOnFocus) {
|
|
1391
1410
|
// DEBUG
|
|
1392
|
-
if (this.debug)
|
|
1393
|
-
console.debug(this.logPrefix + ' Emit focus event');
|
|
1411
|
+
//if (this.debug) console.debug(this.logPrefix + ' Emit focus event');
|
|
1394
1412
|
this.focused.emit();
|
|
1395
1413
|
return true;
|
|
1396
1414
|
}
|
|
@@ -1700,7 +1718,7 @@ class DateFormatPipe {
|
|
|
1700
1718
|
return this.dateAdapter.format(date, displayFormat);
|
|
1701
1719
|
}
|
|
1702
1720
|
}
|
|
1703
|
-
DateFormatPipe.ɵprov =
|
|
1721
|
+
DateFormatPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function DateFormatPipe_Factory() { return new DateFormatPipe(i0.ɵɵinject(i1.MomentDateAdapter), i0.ɵɵinject(i1$1.TranslateService)); }, token: DateFormatPipe, providedIn: "root" });
|
|
1704
1722
|
DateFormatPipe.decorators = [
|
|
1705
1723
|
{ type: Pipe, args: [{
|
|
1706
1724
|
name: 'dateFormat'
|
|
@@ -1712,7 +1730,7 @@ DateFormatPipe.ctorParameters = () => [
|
|
|
1712
1730
|
{ type: TranslateService }
|
|
1713
1731
|
];
|
|
1714
1732
|
|
|
1715
|
-
const moment = momentImported;
|
|
1733
|
+
const moment$6 = momentImported;
|
|
1716
1734
|
class DateDiffDurationPipe {
|
|
1717
1735
|
constructor(dateAdapter, translate) {
|
|
1718
1736
|
this.dateAdapter = dateAdapter;
|
|
@@ -1728,17 +1746,17 @@ class DateDiffDurationPipe {
|
|
|
1728
1746
|
return this.format(startDate, endDate);
|
|
1729
1747
|
}
|
|
1730
1748
|
format(startDate, endDate) {
|
|
1731
|
-
const duration = moment.duration(endDate.diff(startDate));
|
|
1749
|
+
const duration = moment$6.duration(endDate.diff(startDate));
|
|
1732
1750
|
if (duration.asMinutes() < 0)
|
|
1733
1751
|
return '';
|
|
1734
|
-
const timeDuration = moment(0)
|
|
1752
|
+
const timeDuration = moment$6(0)
|
|
1735
1753
|
.hour(duration.hours())
|
|
1736
1754
|
.minute(duration.minutes());
|
|
1737
1755
|
const days = Math.floor(duration.asDays());
|
|
1738
1756
|
return (days > 0 ? days.toString() + (this.dayUnit + ' ') : '') + timeDuration.format('HH:mm');
|
|
1739
1757
|
}
|
|
1740
1758
|
}
|
|
1741
|
-
DateDiffDurationPipe.ɵprov =
|
|
1759
|
+
DateDiffDurationPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function DateDiffDurationPipe_Factory() { return new DateDiffDurationPipe(i0.ɵɵinject(i1$2.DateAdapter), i0.ɵɵinject(i1$1.TranslateService)); }, token: DateDiffDurationPipe, providedIn: "root" });
|
|
1742
1760
|
DateDiffDurationPipe.decorators = [
|
|
1743
1761
|
{ type: Pipe, args: [{
|
|
1744
1762
|
name: 'dateDiffDuration'
|
|
@@ -1759,7 +1777,7 @@ class DateFromNowPipe {
|
|
|
1759
1777
|
return date ? date.fromNow(args && args.withoutSuffix) : '';
|
|
1760
1778
|
}
|
|
1761
1779
|
}
|
|
1762
|
-
DateFromNowPipe.ɵprov =
|
|
1780
|
+
DateFromNowPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function DateFromNowPipe_Factory() { return new DateFromNowPipe(i0.ɵɵinject(i1.MomentDateAdapter)); }, token: DateFromNowPipe, providedIn: "root" });
|
|
1763
1781
|
DateFromNowPipe.decorators = [
|
|
1764
1782
|
{ type: Pipe, args: [{
|
|
1765
1783
|
name: 'dateFromNow'
|
|
@@ -1828,7 +1846,7 @@ function formatToDD(value, opts) {
|
|
|
1828
1846
|
value *= -1;
|
|
1829
1847
|
}
|
|
1830
1848
|
}
|
|
1831
|
-
let degrees = roundFloat(value, opts.maxDecimals).toString();
|
|
1849
|
+
let degrees = roundFloat$1(value, opts.maxDecimals).toString();
|
|
1832
1850
|
// Add sign
|
|
1833
1851
|
let sign = negative ? '-' : '+';
|
|
1834
1852
|
if (opts.placeholderChar) {
|
|
@@ -1879,7 +1897,7 @@ function formatToDDMMSS(value, opts) {
|
|
|
1879
1897
|
}
|
|
1880
1898
|
let degrees = Math.trunc(value);
|
|
1881
1899
|
let minutes = Math.trunc((value - degrees) * 60);
|
|
1882
|
-
let seconds = roundFloat(((value - degrees) * 60 - minutes) * 60, opts.maxDecimals);
|
|
1900
|
+
let seconds = roundFloat$1(((value - degrees) * 60 - minutes) * 60, opts.maxDecimals);
|
|
1883
1901
|
while (seconds >= 60) {
|
|
1884
1902
|
seconds -= 60;
|
|
1885
1903
|
minutes += 1;
|
|
@@ -1947,7 +1965,7 @@ function formatToDDMM(value, opts) {
|
|
|
1947
1965
|
}
|
|
1948
1966
|
}
|
|
1949
1967
|
let degrees = Math.trunc(value);
|
|
1950
|
-
let minutes = roundFloat((value - degrees) * 60, opts.maxDecimals);
|
|
1968
|
+
let minutes = roundFloat$1((value - degrees) * 60, opts.maxDecimals);
|
|
1951
1969
|
while (minutes >= 60) {
|
|
1952
1970
|
minutes -= 60;
|
|
1953
1971
|
degrees += 1;
|
|
@@ -1998,15 +2016,15 @@ function parseLatitudeOrLongitude(input, pattern, maxDecimals, placeholderChar)
|
|
|
1998
2016
|
return NaN;
|
|
1999
2017
|
}
|
|
2000
2018
|
if (pattern === 'DD')
|
|
2001
|
-
return roundFloat(degrees, maxDecimals);
|
|
2019
|
+
return roundFloat$1(degrees, maxDecimals);
|
|
2002
2020
|
const minutes = (pattern === 'DDMMSS' || pattern === 'DDMM') && parts[1] && parseFloat(parts[1].replace(/,/g, '.')) || 0;
|
|
2003
2021
|
const seconds = (pattern === 'DDMMSS') && parts[2] && parseFloat(parts[2].replace(/,/g, '.')) || 0;
|
|
2004
2022
|
const direction = ((pattern === 'DDMMSS') && parts[3]) || ((pattern === 'DDMM') && parts[2]) || undefined;
|
|
2005
2023
|
const sign = (direction && (direction === 's' || direction === 'S' || direction === 'w' || direction === 'W')) ? -1 : 1;
|
|
2006
2024
|
degrees = sign * (degrees + minutes / 60 + seconds / (60 * 60));
|
|
2007
|
-
return roundFloat(degrees, maxDecimals);
|
|
2025
|
+
return roundFloat$1(degrees, maxDecimals);
|
|
2008
2026
|
}
|
|
2009
|
-
function roundFloat(input, maxDecimals) {
|
|
2027
|
+
function roundFloat$1(input, maxDecimals) {
|
|
2010
2028
|
if (maxDecimals > 0) {
|
|
2011
2029
|
const powDecimal = Math.pow(10, maxDecimals);
|
|
2012
2030
|
return Math.trunc(input * powDecimal + 0.5) / powDecimal;
|
|
@@ -2026,7 +2044,7 @@ class LatLongFormatPipe {
|
|
|
2026
2044
|
return ((!args.type || args.type !== 'latitude') ? formatLongitude : formatLatitude)(value, args);
|
|
2027
2045
|
}
|
|
2028
2046
|
}
|
|
2029
|
-
LatLongFormatPipe.ɵprov =
|
|
2047
|
+
LatLongFormatPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function LatLongFormatPipe_Factory() { return new LatLongFormatPipe(); }, token: LatLongFormatPipe, providedIn: "root" });
|
|
2030
2048
|
LatLongFormatPipe.decorators = [
|
|
2031
2049
|
{ type: Pipe, args: [{
|
|
2032
2050
|
name: 'latLongFormat'
|
|
@@ -2038,7 +2056,7 @@ class LatitudeFormatPipe {
|
|
|
2038
2056
|
this.transform = formatLatitude;
|
|
2039
2057
|
}
|
|
2040
2058
|
}
|
|
2041
|
-
LatitudeFormatPipe.ɵprov =
|
|
2059
|
+
LatitudeFormatPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function LatitudeFormatPipe_Factory() { return new LatitudeFormatPipe(); }, token: LatitudeFormatPipe, providedIn: "root" });
|
|
2042
2060
|
LatitudeFormatPipe.decorators = [
|
|
2043
2061
|
{ type: Pipe, args: [{
|
|
2044
2062
|
name: 'latitudeFormat'
|
|
@@ -2050,7 +2068,7 @@ class LongitudeFormatPipe {
|
|
|
2050
2068
|
this.transform = formatLongitude;
|
|
2051
2069
|
}
|
|
2052
2070
|
}
|
|
2053
|
-
LongitudeFormatPipe.ɵprov =
|
|
2071
|
+
LongitudeFormatPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function LongitudeFormatPipe_Factory() { return new LongitudeFormatPipe(); }, token: LongitudeFormatPipe, providedIn: "root" });
|
|
2054
2072
|
LongitudeFormatPipe.decorators = [
|
|
2055
2073
|
{ type: Pipe, args: [{
|
|
2056
2074
|
name: 'longitudeFormat'
|
|
@@ -2070,7 +2088,7 @@ class NumberFormatPipe {
|
|
|
2070
2088
|
}
|
|
2071
2089
|
}
|
|
2072
2090
|
}
|
|
2073
|
-
NumberFormatPipe.ɵprov =
|
|
2091
|
+
NumberFormatPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function NumberFormatPipe_Factory() { return new NumberFormatPipe(); }, token: NumberFormatPipe, providedIn: "root" });
|
|
2074
2092
|
NumberFormatPipe.decorators = [
|
|
2075
2093
|
{ type: Pipe, args: [{
|
|
2076
2094
|
name: 'numberFormat'
|
|
@@ -2110,7 +2128,7 @@ class HighlightPipe {
|
|
|
2110
2128
|
}
|
|
2111
2129
|
}
|
|
2112
2130
|
}
|
|
2113
|
-
HighlightPipe.ɵprov =
|
|
2131
|
+
HighlightPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function HighlightPipe_Factory() { return new HighlightPipe(); }, token: HighlightPipe, providedIn: "root" });
|
|
2114
2132
|
HighlightPipe.decorators = [
|
|
2115
2133
|
{ type: Pipe, args: [{
|
|
2116
2134
|
name: 'highlight'
|
|
@@ -2175,7 +2193,7 @@ FileSizePipe.decorators = [
|
|
|
2175
2193
|
{ type: Pipe, args: [{ name: 'fileSize' },] }
|
|
2176
2194
|
];
|
|
2177
2195
|
|
|
2178
|
-
const moment$
|
|
2196
|
+
const moment$5 = momentImported;
|
|
2179
2197
|
const DATE_UNIX_TIMESTAMP = 'X';
|
|
2180
2198
|
const DATE_UNIX_MS_TIMESTAMP = 'x';
|
|
2181
2199
|
class DateUtils {
|
|
@@ -2217,32 +2235,32 @@ function fromDateISOString(value) {
|
|
|
2217
2235
|
if (!value || isMoment(value))
|
|
2218
2236
|
return value;
|
|
2219
2237
|
// Parse the input value, as a ISO date time
|
|
2220
|
-
const date = moment$
|
|
2238
|
+
const date = moment$5(value, DATE_ISO_PATTERN);
|
|
2221
2239
|
if (date.isValid())
|
|
2222
2240
|
return date;
|
|
2223
2241
|
// Not valid: trying to convert from unix timestamp
|
|
2224
2242
|
if (typeof value === 'string') {
|
|
2225
2243
|
console.warn('Wrong date format - Trying to convert from local time: ' + value);
|
|
2226
2244
|
if (value.length === 10) {
|
|
2227
|
-
return moment$
|
|
2245
|
+
return moment$5(value, DATE_UNIX_TIMESTAMP);
|
|
2228
2246
|
}
|
|
2229
2247
|
else if (value.length === 13) {
|
|
2230
|
-
return moment$
|
|
2248
|
+
return moment$5(value, DATE_UNIX_MS_TIMESTAMP);
|
|
2231
2249
|
}
|
|
2232
2250
|
}
|
|
2233
2251
|
console.warn('Unable to parse date: ' + value);
|
|
2234
2252
|
return undefined;
|
|
2235
2253
|
}
|
|
2236
2254
|
function fromUnixTimestamp(timeInSec) {
|
|
2237
|
-
return moment$
|
|
2255
|
+
return moment$5(timeInSec, DATE_UNIX_TIMESTAMP);
|
|
2238
2256
|
}
|
|
2239
2257
|
function fromUnixMsTimestamp(timeInMs) {
|
|
2240
|
-
return moment$
|
|
2258
|
+
return moment$5(timeInMs, DATE_UNIX_MS_TIMESTAMP);
|
|
2241
2259
|
}
|
|
2242
2260
|
function toDuration(value, unit) {
|
|
2243
2261
|
if (!value)
|
|
2244
2262
|
return undefined;
|
|
2245
|
-
const duration = moment$
|
|
2263
|
+
const duration = moment$5.duration(value, unit);
|
|
2246
2264
|
// fix 990+ ms
|
|
2247
2265
|
if (duration.milliseconds() >= 990) {
|
|
2248
2266
|
duration.add(1000 - duration.milliseconds(), 'ms');
|
|
@@ -2271,7 +2289,7 @@ class DurationPipe {
|
|
|
2271
2289
|
return (days > 0 ? days.toString() + (this.dayUnit + ' ') : '') + hour + ':' + minute;
|
|
2272
2290
|
}
|
|
2273
2291
|
}
|
|
2274
|
-
DurationPipe.ɵprov =
|
|
2292
|
+
DurationPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function DurationPipe_Factory() { return new DurationPipe(i0.ɵɵinject(i1$1.TranslateService)); }, token: DurationPipe, providedIn: "root" });
|
|
2275
2293
|
DurationPipe.decorators = [
|
|
2276
2294
|
{ type: Pipe, args: [{
|
|
2277
2295
|
name: 'duration'
|
|
@@ -2292,7 +2310,7 @@ class MathAbsPipe {
|
|
|
2292
2310
|
}
|
|
2293
2311
|
}
|
|
2294
2312
|
}
|
|
2295
|
-
MathAbsPipe.ɵprov =
|
|
2313
|
+
MathAbsPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function MathAbsPipe_Factory() { return new MathAbsPipe(); }, token: MathAbsPipe, providedIn: "root" });
|
|
2296
2314
|
MathAbsPipe.decorators = [
|
|
2297
2315
|
{ type: Pipe, args: [{
|
|
2298
2316
|
name: 'mathAbs'
|
|
@@ -2304,7 +2322,7 @@ class EvenPipe {
|
|
|
2304
2322
|
return val % 2 === 0;
|
|
2305
2323
|
}
|
|
2306
2324
|
}
|
|
2307
|
-
EvenPipe.ɵprov =
|
|
2325
|
+
EvenPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function EvenPipe_Factory() { return new EvenPipe(); }, token: EvenPipe, providedIn: "root" });
|
|
2308
2326
|
EvenPipe.decorators = [
|
|
2309
2327
|
{ type: Pipe, args: [{
|
|
2310
2328
|
name: 'even'
|
|
@@ -2316,7 +2334,7 @@ class OddPipe {
|
|
|
2316
2334
|
return val % 2 !== 0;
|
|
2317
2335
|
}
|
|
2318
2336
|
}
|
|
2319
|
-
OddPipe.ɵprov =
|
|
2337
|
+
OddPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function OddPipe_Factory() { return new OddPipe(); }, token: OddPipe, providedIn: "root" });
|
|
2320
2338
|
OddPipe.decorators = [
|
|
2321
2339
|
{ type: Pipe, args: [{
|
|
2322
2340
|
name: 'odd'
|
|
@@ -2424,7 +2442,7 @@ class MapGetPipe {
|
|
|
2424
2442
|
return val[key];
|
|
2425
2443
|
}
|
|
2426
2444
|
}
|
|
2427
|
-
MapGetPipe.ɵprov =
|
|
2445
|
+
MapGetPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function MapGetPipe_Factory() { return new MapGetPipe(); }, token: MapGetPipe, providedIn: "root" });
|
|
2428
2446
|
MapGetPipe.decorators = [
|
|
2429
2447
|
{ type: Pipe, args: [{
|
|
2430
2448
|
name: 'mapGet'
|
|
@@ -2438,7 +2456,7 @@ class MapKeysPipe {
|
|
|
2438
2456
|
return Object.keys(map);
|
|
2439
2457
|
}
|
|
2440
2458
|
}
|
|
2441
|
-
MapKeysPipe.ɵprov =
|
|
2459
|
+
MapKeysPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function MapKeysPipe_Factory() { return new MapKeysPipe(); }, token: MapKeysPipe, providedIn: "root" });
|
|
2442
2460
|
MapKeysPipe.decorators = [
|
|
2443
2461
|
{ type: Pipe, args: [{
|
|
2444
2462
|
name: 'mapKeys'
|
|
@@ -2452,7 +2470,7 @@ class MapValuesPipe {
|
|
|
2452
2470
|
return Object.values(map);
|
|
2453
2471
|
}
|
|
2454
2472
|
}
|
|
2455
|
-
MapValuesPipe.ɵprov =
|
|
2473
|
+
MapValuesPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function MapValuesPipe_Factory() { return new MapValuesPipe(); }, token: MapValuesPipe, providedIn: "root" });
|
|
2456
2474
|
MapValuesPipe.decorators = [
|
|
2457
2475
|
{ type: Pipe, args: [{
|
|
2458
2476
|
name: 'mapValues'
|
|
@@ -2465,7 +2483,7 @@ class IsNotNilOrBlankPipe {
|
|
|
2465
2483
|
return isNotNilOrBlank(value);
|
|
2466
2484
|
}
|
|
2467
2485
|
}
|
|
2468
|
-
IsNotNilOrBlankPipe.ɵprov =
|
|
2486
|
+
IsNotNilOrBlankPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function IsNotNilOrBlankPipe_Factory() { return new IsNotNilOrBlankPipe(); }, token: IsNotNilOrBlankPipe, providedIn: "root" });
|
|
2469
2487
|
IsNotNilOrBlankPipe.decorators = [
|
|
2470
2488
|
{ type: Pipe, args: [{
|
|
2471
2489
|
name: 'isNotNilOrBlank'
|
|
@@ -2477,7 +2495,7 @@ class IsNilOrBlankPipe {
|
|
|
2477
2495
|
return isNilOrBlank(value);
|
|
2478
2496
|
}
|
|
2479
2497
|
}
|
|
2480
|
-
IsNilOrBlankPipe.ɵprov =
|
|
2498
|
+
IsNilOrBlankPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function IsNilOrBlankPipe_Factory() { return new IsNilOrBlankPipe(); }, token: IsNilOrBlankPipe, providedIn: "root" });
|
|
2481
2499
|
IsNilOrBlankPipe.decorators = [
|
|
2482
2500
|
{ type: Pipe, args: [{
|
|
2483
2501
|
name: 'isNilOrBlank'
|
|
@@ -2489,7 +2507,7 @@ class ToStringPipe {
|
|
|
2489
2507
|
return (value !== null && value !== undefined) ? value.toString() : '';
|
|
2490
2508
|
}
|
|
2491
2509
|
}
|
|
2492
|
-
ToStringPipe.ɵprov =
|
|
2510
|
+
ToStringPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function ToStringPipe_Factory() { return new ToStringPipe(); }, token: ToStringPipe, providedIn: "root" });
|
|
2493
2511
|
ToStringPipe.decorators = [
|
|
2494
2512
|
{ type: Pipe, args: [{
|
|
2495
2513
|
name: 'toString'
|
|
@@ -2501,7 +2519,7 @@ class StrLengthPipe {
|
|
|
2501
2519
|
return value && value.length || 0;
|
|
2502
2520
|
}
|
|
2503
2521
|
}
|
|
2504
|
-
StrLengthPipe.ɵprov =
|
|
2522
|
+
StrLengthPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function StrLengthPipe_Factory() { return new StrLengthPipe(); }, token: StrLengthPipe, providedIn: "root" });
|
|
2505
2523
|
StrLengthPipe.decorators = [
|
|
2506
2524
|
{ type: Pipe, args: [{
|
|
2507
2525
|
name: 'strLength'
|
|
@@ -2578,7 +2596,7 @@ class TranslateContextService {
|
|
|
2578
2596
|
return translations[keys[keys.length - 1]]; // Return the last keys translation
|
|
2579
2597
|
}
|
|
2580
2598
|
}
|
|
2581
|
-
TranslateContextService.ɵprov =
|
|
2599
|
+
TranslateContextService.ɵprov = i0.ɵɵdefineInjectable({ factory: function TranslateContextService_Factory() { return new TranslateContextService(i0.ɵɵinject(i1$1.TranslateService)); }, token: TranslateContextService, providedIn: "root" });
|
|
2582
2600
|
TranslateContextService.decorators = [
|
|
2583
2601
|
{ type: Injectable, args: [{ providedIn: 'root' },] }
|
|
2584
2602
|
];
|
|
@@ -2630,7 +2648,7 @@ class PropertyGetPipe {
|
|
|
2630
2648
|
args && args.defaultValue);
|
|
2631
2649
|
}
|
|
2632
2650
|
}
|
|
2633
|
-
PropertyGetPipe.ɵprov =
|
|
2651
|
+
PropertyGetPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function PropertyGetPipe_Factory() { return new PropertyGetPipe(); }, token: PropertyGetPipe, providedIn: "root" });
|
|
2634
2652
|
PropertyGetPipe.decorators = [
|
|
2635
2653
|
{ type: Pipe, args: [{
|
|
2636
2654
|
name: 'propertyGet'
|
|
@@ -2655,7 +2673,7 @@ NgInitDirective.propDecorators = {
|
|
|
2655
2673
|
ngInit: [{ type: Output }]
|
|
2656
2674
|
};
|
|
2657
2675
|
|
|
2658
|
-
const moment$
|
|
2676
|
+
const moment$4 = momentImported;
|
|
2659
2677
|
// @dynamic
|
|
2660
2678
|
class SharedValidators {
|
|
2661
2679
|
static getDoubleRegexp(maxDecimals) {
|
|
@@ -2672,7 +2690,7 @@ class SharedValidators {
|
|
|
2672
2690
|
}
|
|
2673
2691
|
static validDate(control) {
|
|
2674
2692
|
const value = control.value;
|
|
2675
|
-
const date = !value || moment$
|
|
2693
|
+
const date = !value || moment$4.isMoment(value) ? value : moment$4(control.value, DATE_ISO_PATTERN);
|
|
2676
2694
|
if (date && (!date.isValid() || date.year() < 1970)) {
|
|
2677
2695
|
return { validDate: true };
|
|
2678
2696
|
}
|
|
@@ -3746,7 +3764,7 @@ class FormErrorTranslator {
|
|
|
3746
3764
|
return errorKey;
|
|
3747
3765
|
}
|
|
3748
3766
|
}
|
|
3749
|
-
FormErrorTranslator.ɵprov =
|
|
3767
|
+
FormErrorTranslator.ɵprov = i0.ɵɵdefineInjectable({ factory: function FormErrorTranslator_Factory() { return new FormErrorTranslator(i0.ɵɵinject(i1$1.TranslateService), i0.ɵɵinject(APP_FORM_ERROR_I18N_KEYS, 8)); }, token: FormErrorTranslator, providedIn: "root" });
|
|
3750
3768
|
FormErrorTranslator.decorators = [
|
|
3751
3769
|
{ type: Injectable, args: [{ providedIn: 'root' },] }
|
|
3752
3770
|
];
|
|
@@ -4065,9 +4083,9 @@ function parseDuration(input, maxDecimals, placeholderChar) {
|
|
|
4065
4083
|
const hour = parseInt(durationParts[0] || '0');
|
|
4066
4084
|
const minute = parseInt(durationParts[1] || '0');
|
|
4067
4085
|
const value = hour + (minute + 0.5) / 60;
|
|
4068
|
-
return roundFloat
|
|
4086
|
+
return roundFloat(value, maxDecimals);
|
|
4069
4087
|
}
|
|
4070
|
-
function roundFloat
|
|
4088
|
+
function roundFloat(input, maxDecimals) {
|
|
4071
4089
|
if (maxDecimals > 0) {
|
|
4072
4090
|
const powDecimal = Math.pow(10, maxDecimals);
|
|
4073
4091
|
return Math.trunc(input * powDecimal + 0.5) / powDecimal;
|
|
@@ -4091,9 +4109,9 @@ const MASKS = {
|
|
|
4091
4109
|
DD: [/[+-]/, /\d/, /\d/, /\d/, '.', /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, '°']
|
|
4092
4110
|
}
|
|
4093
4111
|
};
|
|
4094
|
-
const noop$
|
|
4112
|
+
const noop$7 = () => {
|
|
4095
4113
|
};
|
|
4096
|
-
const ɵ0$
|
|
4114
|
+
const ɵ0$a = noop$7;
|
|
4097
4115
|
class MatLatLongField {
|
|
4098
4116
|
constructor(platform, translate, formBuilder, cd, formGroupDir) {
|
|
4099
4117
|
this.platform = platform;
|
|
@@ -4101,8 +4119,8 @@ class MatLatLongField {
|
|
|
4101
4119
|
this.formBuilder = formBuilder;
|
|
4102
4120
|
this.cd = cd;
|
|
4103
4121
|
this.formGroupDir = formGroupDir;
|
|
4104
|
-
this._onChangeCallback = noop$
|
|
4105
|
-
this._onTouchedCallback = noop$
|
|
4122
|
+
this._onChangeCallback = noop$7;
|
|
4123
|
+
this._onTouchedCallback = noop$7;
|
|
4106
4124
|
this._subscription = new Subscription();
|
|
4107
4125
|
this.disabling = false;
|
|
4108
4126
|
this.writing = false;
|
|
@@ -4438,14 +4456,14 @@ SharedMatLatLongModule.decorators = [
|
|
|
4438
4456
|
},] }
|
|
4439
4457
|
];
|
|
4440
4458
|
|
|
4441
|
-
const DEFAULT_VALUE_ACCESSOR = {
|
|
4459
|
+
const DEFAULT_VALUE_ACCESSOR$5 = {
|
|
4442
4460
|
provide: NG_VALUE_ACCESSOR,
|
|
4443
4461
|
useExisting: forwardRef(() => MatDate),
|
|
4444
4462
|
multi: true
|
|
4445
4463
|
};
|
|
4446
|
-
const DAY_MASK = [/\d/, /\d/, '/', /\d/, /\d/, '/', /\d/, /\d/, /\d/, /\d/];
|
|
4447
|
-
const noop$
|
|
4448
|
-
const ɵ0$
|
|
4464
|
+
const DAY_MASK$2 = [/\d/, /\d/, '/', /\d/, /\d/, '/', /\d/, /\d/, /\d/, /\d/];
|
|
4465
|
+
const noop$6 = () => { };
|
|
4466
|
+
const ɵ0$9 = noop$6;
|
|
4449
4467
|
class MatDate {
|
|
4450
4468
|
constructor(platform, dateAdapter, translate, formBuilder, cd, keyboard, formGroupDir) {
|
|
4451
4469
|
this.dateAdapter = dateAdapter;
|
|
@@ -4454,12 +4472,12 @@ class MatDate {
|
|
|
4454
4472
|
this.cd = cd;
|
|
4455
4473
|
this.keyboard = keyboard;
|
|
4456
4474
|
this.formGroupDir = formGroupDir;
|
|
4457
|
-
this._onChangeCallback = noop$
|
|
4458
|
-
this._onTouchedCallback = noop$
|
|
4475
|
+
this._onChangeCallback = noop$6;
|
|
4476
|
+
this._onTouchedCallback = noop$6;
|
|
4459
4477
|
this._subscription = new Subscription();
|
|
4460
4478
|
this.writing = true;
|
|
4461
4479
|
this.disabling = false;
|
|
4462
|
-
this.dayMask = DAY_MASK;
|
|
4480
|
+
this.dayMask = DAY_MASK$2;
|
|
4463
4481
|
this.disabled = false;
|
|
4464
4482
|
this.floatLabel = 'auto';
|
|
4465
4483
|
this.readonly = false;
|
|
@@ -4696,7 +4714,7 @@ MatDate.decorators = [
|
|
|
4696
4714
|
selector: 'mat-date-field',
|
|
4697
4715
|
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_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]=\"dayControl\"\n (click)=\"openDatePickerIfMobile($event, datePicker)\"\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]=\"datePicker\"\n (dateChange)=\"onDatePickerChange($event)\">\n\n <button matSuffix mat-icon-button tabindex=\"-1\"\n type=\"button\"\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)=\"writeValue(null)\"\n [hidden]=\"formControl.disabled || !formControl.value\">\n <mat-icon>close</mat-icon>\n </button>\n\n <mat-error *ngIf=\"formControl.hasError('required')\" translate>ERROR.FIELD_REQUIRED</mat-error>\n <mat-error *ngIf=\"formControl.hasError('validDate')\" translate>ERROR.FIELD_NOT_VALID_DATE</mat-error>\n <mat-error *ngIf=\"formControl.hasError('dateIsAfter')\">{{'ERROR.FIELD_NOT_VALID_DATE_AFTER' | translate: formControl.errors.dateIsAfter }}</mat-error>\n <mat-error *ngIf=\"formControl.hasError('dateRange')\" translate>ERROR.FIELD_NOT_VALID_DATE_RANGE</mat-error>\n <mat-error *ngIf=\"!formControl.hasError('dateRange') && formControl.hasError('dateMaxDuration')\" translate>ERROR.FIELD_NOT_VALID_DATE_MAX_DURATION</mat-error>\n <mat-error *ngIf=\"!formControl.hasError('dateRange') && formControl.hasError('dateMinDuration')\" translate>ERROR.FIELD_NOT_VALID_DATE_MIN_DURATION</mat-error>\n <mat-error *ngIf=\"formControl.hasError('msg')\">{{formControl.errors.msg}}</mat-error>\n </mat-form-field>\n\n <mat-datepicker #datePicker\n [touchUi]=\"mobile\"\n [disabled]=\"formControl.disabled\"\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",
|
|
4698
4716
|
providers: [
|
|
4699
|
-
DEFAULT_VALUE_ACCESSOR,
|
|
4717
|
+
DEFAULT_VALUE_ACCESSOR$5,
|
|
4700
4718
|
],
|
|
4701
4719
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
4702
4720
|
styles: [":host{display:inline-block;width:100%;position:relative}:host [no-padding]{--ion-grid-column-padding:0}:host [nowrap]{flex-wrap:nowrap}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}mat-form-field .datetime-md,mat-form-field ion-datetime{padding:0!important}ion-col.day{min-width:100px}ion-col.day .mat-form-field-subscript-wrapper{overflow:visible;right:-64px;width:calc(100% + 64px)}ion-col.day .mat-form-field-subscript-wrapper .mat-form-field-hint-wrapper{display:flex}ion-col.day .mat-form-field-subscript-wrapper .mat-form-field-hint-wrapper .mat-form-field-hint-spacer{flex:1 0 1em}ion-col.hour{min-width:55px;max-width:65px}ion-col.hour mat-form-field{width:100%}ion-col.hour mat-form-field input[type=text],ion-col.hour mat-form-field mat-label{text-align:left;min-width:50px}mat-form-field.mat-form-field-disabled ion-col.day{min-width:100px}.hour .mat-form-field-label{max-width:40px}.hour mat-form-field.mat-form-field-should-float .mat-form-field-placeholder{max-width:inherit}mat-error{text-align:right;width:100%}"]
|
|
@@ -4729,17 +4747,17 @@ MatDate.propDecorators = {
|
|
|
4729
4747
|
matInputs: [{ type: ViewChildren, args: ['matInput',] }]
|
|
4730
4748
|
};
|
|
4731
4749
|
|
|
4732
|
-
const DEFAULT_VALUE_ACCESSOR$
|
|
4750
|
+
const DEFAULT_VALUE_ACCESSOR$4 = {
|
|
4733
4751
|
provide: NG_VALUE_ACCESSOR,
|
|
4734
4752
|
useExisting: forwardRef(() => MatDateTime),
|
|
4735
4753
|
multi: true
|
|
4736
4754
|
};
|
|
4737
4755
|
const DAY_MASK$1 = [/\d/, /\d/, '/', /\d/, /\d/, '/', /\d/, /\d/, /\d/, /\d/];
|
|
4738
4756
|
const HOUR_REGEXP = /^[012][0-9][:][012345][0-9]$/;
|
|
4739
|
-
const HOUR_MASK = [/[012]/, /\d/, ':', /[012345]/, /\d/];
|
|
4740
|
-
const noop$
|
|
4757
|
+
const HOUR_MASK$1 = [/[012]/, /\d/, ':', /[012345]/, /\d/];
|
|
4758
|
+
const noop$5 = () => {
|
|
4741
4759
|
};
|
|
4742
|
-
const ɵ0$
|
|
4760
|
+
const ɵ0$8 = noop$5;
|
|
4743
4761
|
class MatDateTime {
|
|
4744
4762
|
constructor(platform, dateAdapter, translate, formBuilder, cd, keyboard, formGroupDir) {
|
|
4745
4763
|
this.platform = platform;
|
|
@@ -4749,14 +4767,14 @@ class MatDateTime {
|
|
|
4749
4767
|
this.cd = cd;
|
|
4750
4768
|
this.keyboard = keyboard;
|
|
4751
4769
|
this.formGroupDir = formGroupDir;
|
|
4752
|
-
this._onChangeCallback = noop$
|
|
4753
|
-
this._onTouchedCallback = noop$
|
|
4770
|
+
this._onChangeCallback = noop$5;
|
|
4771
|
+
this._onTouchedCallback = noop$5;
|
|
4754
4772
|
this._subscription = new Subscription();
|
|
4755
4773
|
this.writing = true;
|
|
4756
4774
|
this.disabling = false;
|
|
4757
4775
|
this._readonly = false;
|
|
4758
4776
|
this.dayMask = DAY_MASK$1;
|
|
4759
|
-
this.hourMask = HOUR_MASK;
|
|
4777
|
+
this.hourMask = HOUR_MASK$1;
|
|
4760
4778
|
this.floatLabel = 'auto';
|
|
4761
4779
|
this.compact = false;
|
|
4762
4780
|
this.placeholderChar = DEFAULT_PLACEHOLDER_CHAR;
|
|
@@ -5068,7 +5086,7 @@ MatDateTime.decorators = [
|
|
|
5068
5086
|
selector: 'mat-date-time-field',
|
|
5069
5087
|
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: displayPattern} }}</ion-text>\n</mat-form-field>\n\n<!-- writable + time -->\n<ng-template #writable >\n <ion-grid class=\"ion-no-padding\">\n <ion-row class=\"ion-no-padding no-wrap\" nowrap>\n\n <!-- day -->\n <ion-col class=\"day ion-no-padding\">\n <mat-form-field [floatLabel]=\"floatLabel\"\n [class.mat-form-field-invalid]=\"formControl.touched && formControl.invalid\">\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]=\"dateFormControl\"\n [textMask]=\"{mask: dayMask, 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]=\"dateFormControl\"\n (click)=\"openDatePickerIfMobile($event, datePicker)\"\n [required]=\"required\"\n [tabindex]=\"tabindex\"\n readonly>\n <input matInput type=\"text\" [formControl]=\"formControl\"\n hidden\n [matDatepicker]=\"datePicker\"\n (dateChange)=\"onDatePickerChange($event)\">\n\n <button type=\"button\" mat-icon-button tabindex=\"-1\" matSuffix #datePickerButton2 (click)=\"openDatePicker($event, datePicker)\" [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 </mat-form-field>\n <mat-datepicker #datePicker\n [touchUi]=\"mobile\"\n [disabled]=\"formControl.disabled\"\n [startAt]=\"startDate\"></mat-datepicker>\n <div class=\"mat-form-field-subscript mat-form-field-subscript-wrapper\" >\n <!-- errors -->\n <ng-container [ngSwitch]=\"formControl.touched && formControl.errors|mapKeys|arrayFirst\">\n <mat-error *ngSwitchCase=\"'required'\" translate>ERROR.FIELD_REQUIRED</mat-error>\n <mat-error *ngSwitchCase=\"'validDate'\" translate>ERROR.FIELD_NOT_VALID_DATE_TIME</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 <!-- 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\n </ion-col>\n\n <!-- hour -->\n <ion-col class=\"hour ion-no-padding\">\n <mat-form-field [floatLabel]=\"floatLabel\"\n [class.mat-form-field-invalid]=\"formControl.touched && (timeFormControl.invalid || formControl.invalid)\">\n <mat-label *ngIf=\"placeholder && floatLabel != 'never'\" translate>COMMON.TIME</mat-label>\n <input matInput #matInput type=\"text\"\n *ngIf=\"!mobile\"\n [formControl]=\"timeFormControl\"\n autocomplete=\"off\"\n min=\"0\" max=\"23\"\n [textMask]=\"{mask: hourMask, keepCharPositions: true, placeholderChar: placeholderChar, guide: true}\"\n [placeholder]=\"'COMMON.TIME_PLACEHOLDER'|translate\"\n [required]=\"required\"\n (keyup.arrowdown)=\"openTimePicker($event)\"\n (keyup.escape)=\"preventEvent($event)\"\n (blur)=\"checkIfTouched()\"\n [tabindex]=\"tabindex !== undefined ? tabindex+1 : undefined\">\n\n <input matInput #matInput type=\"text\"\n *ngIf=\"mobile\"\n [formControl]=\"timeFormControl\"\n (click)=\"openTimePickerIfMobile($event)\"\n readonly>\n\n <input matInput type=\"text\"\n [formControl]=\"timeFormControl\"\n hidden\n [ngxTimepicker]=\"timePicker\"\n [format]=\"24\">\n\n <button matSuffix type=\"button\" mat-icon-button\n tabindex=\"-1\"\n *ngIf=\"!compact && !mobile\"\n [disabled]=\"formControl.disabled\"\n (click)=\"openTimePicker($event)\" >\n <mat-icon>keyboard_arrow_down</mat-icon>\n </button>\n <button matSuffix type=\"button\" mat-icon-button\n tabindex=\"-1\"\n *ngIf=\"!compact && mobile\"\n [disabled]=\"formControl.disabled\"\n (click)=\"openTimePickerIfMobile($event)\">\n <mat-icon>access_time</mat-icon>\n </button>\n\n <ngx-material-timepicker #timePicker [@.disabled]=\"true\"\n (timeSet)=\"onTimePickerChange($event)\"\n [ESC]=\"!mobile\"\n [defaultTime]=\"'00:00'\"\n [cancelBtnTmpl]=\"timePickerCancelButton\"\n [confirmBtnTmpl]=\"timePickerOkButton\"\n [preventOverlayClick]=\"mobile\"\n [enableKeyboardInput]=\"false\"\n [disableAnimation]=\"true\">\n <!-- cancel button -->\n <ng-template #timePickerCancelButton>\n <ion-button fill=\"clear\" color=\"dark\">\n <ion-label translate>COMMON.BTN_CANCEL</ion-label>\n </ion-button>\n </ng-template>\n\n <!-- confirm button -->\n <ng-template #timePickerOkButton>\n <ion-button fill=\"solid\" color=\"tertiary\">\n <ion-label translate>COMMON.BTN_VALIDATE</ion-label>\n </ion-button>\n </ng-template>\n\n </ngx-material-timepicker>\n </mat-form-field>\n </ion-col>\n </ion-row>\n </ion-grid>\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",
|
|
5070
5088
|
providers: [
|
|
5071
|
-
DEFAULT_VALUE_ACCESSOR$
|
|
5089
|
+
DEFAULT_VALUE_ACCESSOR$4,
|
|
5072
5090
|
],
|
|
5073
5091
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
5074
5092
|
styles: [":host{display:inline-block;width:100%;position:relative;--ion-grid-column-padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}mat-form-field .datetime-md{padding:0!important}ion-row.no-wrap{flex-wrap:nowrap}ion-col.day{min-width:100px}ion-col.day .mat-form-field-subscript-wrapper{overflow:visible;right:-64px;width:calc(100% + 64px)}ion-col.day .mat-form-field-subscript-wrapper .mat-form-field-hint-wrapper{display:flex}ion-col.day .mat-form-field-subscript-wrapper .mat-form-field-hint-wrapper .mat-form-field-hint-spacer{flex:1 0 1em}ion-col.hour{min-width:55px;max-width:65px}ion-col.hour mat-form-field{width:100%}ion-col.hour mat-form-field input[type=text],ion-col.hour mat-form-field mat-label{text-align:left;min-width:50px}mat-form-field.mat-form-field-disabled ion-col.day{min-width:100px}.hour .mat-form-field-label{max-width:40px}.hour mat-form-field.mat-form-field-should-float .mat-form-field-placeholder{max-width:inherit}mat-error{text-align:right;width:100%}"]
|
|
@@ -5102,15 +5120,15 @@ MatDateTime.propDecorators = {
|
|
|
5102
5120
|
matInputs: [{ type: ViewChildren, args: ['matInput',] }]
|
|
5103
5121
|
};
|
|
5104
5122
|
|
|
5105
|
-
const DEFAULT_VALUE_ACCESSOR$
|
|
5123
|
+
const DEFAULT_VALUE_ACCESSOR$3 = {
|
|
5106
5124
|
provide: NG_VALUE_ACCESSOR,
|
|
5107
5125
|
useExisting: forwardRef(() => MatDateShort),
|
|
5108
5126
|
multi: true
|
|
5109
5127
|
};
|
|
5110
|
-
const DAY_MASK
|
|
5128
|
+
const DAY_MASK = [/\d/, /\d/, /\d/, /\d/];
|
|
5111
5129
|
const noop$4 = () => {
|
|
5112
5130
|
};
|
|
5113
|
-
const ɵ0$
|
|
5131
|
+
const ɵ0$7 = noop$4;
|
|
5114
5132
|
class MatDateShort {
|
|
5115
5133
|
constructor(platform, dateAdapter, translate, formBuilder, cd, keyboard, formGroupDir) {
|
|
5116
5134
|
this.dateAdapter = dateAdapter;
|
|
@@ -5123,7 +5141,7 @@ class MatDateShort {
|
|
|
5123
5141
|
this._onTouchedCallback = noop$4;
|
|
5124
5142
|
this.writing = true;
|
|
5125
5143
|
this.disabling = false;
|
|
5126
|
-
this.dayMask = DAY_MASK
|
|
5144
|
+
this.dayMask = DAY_MASK;
|
|
5127
5145
|
this.disabled = false;
|
|
5128
5146
|
this.floatLabel = 'auto';
|
|
5129
5147
|
this.readonly = false;
|
|
@@ -5368,7 +5386,7 @@ MatDateShort.decorators = [
|
|
|
5368
5386
|
selector: 'mat-date-short-field',
|
|
5369
5387
|
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 <mat-error *ngIf=\"formControl.hasError('required')\" translate>ERROR.FIELD_REQUIRED</mat-error>\n <mat-error *ngIf=\"formControl.hasError('validDate')\" translate>ERROR.FIELD_NOT_VALID_DATE</mat-error>\n <mat-error *ngIf=\"formControl.hasError('dateIsAfter')\">{{'ERROR.FIELD_NOT_VALID_DATE_AFTER' | translate: formControl.errors.dateIsAfter }}</mat-error>\n <mat-error *ngIf=\"formControl.hasError('dateRange')\" translate>ERROR.FIELD_NOT_VALID_DATE_RANGE</mat-error>\n <mat-error *ngIf=\"!formControl.hasError('dateRange') && formControl.hasError('dateMaxDuration')\" translate>ERROR.FIELD_NOT_VALID_DATE_MAX_DURATION</mat-error>\n <mat-error *ngIf=\"!formControl.hasError('dateRange') && formControl.hasError('dateMinDuration')\" translate>ERROR.FIELD_NOT_VALID_DATE_MIN_DURATION</mat-error>\n <mat-error *ngIf=\"formControl.hasError('msg')\">{{formControl.errors.msg}}</mat-error>\n <ng-content select=\"mat-error\"></ng-content>\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",
|
|
5370
5388
|
providers: [
|
|
5371
|
-
DEFAULT_VALUE_ACCESSOR$
|
|
5389
|
+
DEFAULT_VALUE_ACCESSOR$3,
|
|
5372
5390
|
],
|
|
5373
5391
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
5374
5392
|
styles: [":host{display:inline-block;width:100%;position:relative}:host [no-padding]{--ion-grid-column-padding:0}:host [nowrap]{flex-wrap:nowrap}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}mat-form-field .datetime-md,mat-form-field ion-datetime{padding:0!important}ion-col.day{min-width:100px}ion-col.day .mat-form-field-subscript-wrapper{overflow:visible;right:-64px;width:calc(100% + 64px)}ion-col.day .mat-form-field-subscript-wrapper .mat-form-field-hint-wrapper{display:flex}ion-col.day .mat-form-field-subscript-wrapper .mat-form-field-hint-wrapper .mat-form-field-hint-spacer{flex:1 0 1em}ion-col.hour{min-width:55px;max-width:65px}ion-col.hour mat-form-field{width:100%}ion-col.hour mat-form-field input[type=text],ion-col.hour mat-form-field mat-label{text-align:left;min-width:50px}mat-form-field.mat-form-field-disabled ion-col.day{min-width:100px}.hour .mat-form-field-label{max-width:40px}.hour mat-form-field.mat-form-field-should-float .mat-form-field-placeholder{max-width:inherit}mat-error{text-align:right;width:100%}"]
|
|
@@ -5436,16 +5454,16 @@ SharedMatDateTimeModule.decorators = [
|
|
|
5436
5454
|
},] }
|
|
5437
5455
|
];
|
|
5438
5456
|
|
|
5439
|
-
const DEFAULT_VALUE_ACCESSOR$
|
|
5457
|
+
const DEFAULT_VALUE_ACCESSOR$2 = {
|
|
5440
5458
|
provide: NG_VALUE_ACCESSOR,
|
|
5441
5459
|
useExisting: forwardRef(() => MatDuration),
|
|
5442
5460
|
multi: true
|
|
5443
5461
|
};
|
|
5444
5462
|
const HOUR_TIME_PATTERN = /[0-9]\d\d:[0-5]\d/;
|
|
5445
|
-
const HOUR_MASK
|
|
5446
|
-
const noop$
|
|
5463
|
+
const HOUR_MASK = [/\d/, /\d/, /\d/, ':', /[0-5]/, /\d/];
|
|
5464
|
+
const noop$3 = () => {
|
|
5447
5465
|
};
|
|
5448
|
-
const ɵ0$
|
|
5466
|
+
const ɵ0$6 = noop$3;
|
|
5449
5467
|
class MatDuration {
|
|
5450
5468
|
constructor(platform, dateAdapter, translate, formBuilder, cd, formGroupDir) {
|
|
5451
5469
|
this.dateAdapter = dateAdapter;
|
|
@@ -5454,11 +5472,11 @@ class MatDuration {
|
|
|
5454
5472
|
this.cd = cd;
|
|
5455
5473
|
this.formGroupDir = formGroupDir;
|
|
5456
5474
|
this._subscription = new Subscription();
|
|
5457
|
-
this._onChangeCallback = noop$
|
|
5458
|
-
this._onTouchedCallback = noop$
|
|
5475
|
+
this._onChangeCallback = noop$3;
|
|
5476
|
+
this._onTouchedCallback = noop$3;
|
|
5459
5477
|
this.writing = true;
|
|
5460
5478
|
this.disabling = false;
|
|
5461
|
-
this.hourMask = HOUR_MASK
|
|
5479
|
+
this.hourMask = HOUR_MASK;
|
|
5462
5480
|
this.disabled = false;
|
|
5463
5481
|
this.floatLabel = 'auto';
|
|
5464
5482
|
this.readonly = false;
|
|
@@ -5638,7 +5656,7 @@ MatDuration.decorators = [
|
|
|
5638
5656
|
selector: 'mat-duration-field',
|
|
5639
5657
|
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|duration }}</ion-text>\n</mat-form-field>\n\n<!-- writable -->\n<ng-template #writable>\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 <mat-label *ngIf=\"placeholder && floatLabel != 'never'\" translate>COMMON.TIME</mat-label>\n\n <div matPrefix><ng-content select=\"[matPrefix]\"></ng-content></div>\n\n <input matInput #matInput type=\"text\"\n autocomplete=\"off\"\n [formControl]=\"textControl\"\n [textMask]=\"{mask: hourMask, keepCharPositions: true, placeholderChar: placeholderChar, guide: true}\"\n [placeholder]=\"'COMMON.DURATION_PLACEHOLDER'|translate\"\n [required]=\"required\"\n (keydown.tab)=\"moveCaretToSeparator($event, true)\"\n (keydown.shift.tab)=\"moveCaretToSeparator($event, false)\"\n (keyup.escape)=\"preventEvent($event)\"\n (blur)=\"checkIfTouched()\"\n [tabindex]=\"tabindex !== undefined ? tabindex+1 : undefined\">\n\n\n <!-- errors -->\n <mat-error *ngIf=\"!formControl.hasError('required') && textControl.hasError('pattern')\" translate>ERROR.FIELD_NOT_VALID_PATTERN</mat-error>\n <mat-error *ngIf=\"formControl.hasError('required')\" translate>ERROR.FIELD_REQUIRED</mat-error>\n <mat-error *ngIf=\"formControl.hasError('min')\">\n {{(compact ? 'ERROR.FIELD_MIN_COMPACT' : 'ERROR.FIELD_MIN') | translate:formControl.errors.min }}</mat-error>\n <mat-error *ngIf=\"formControl.hasError('max')\">\n {{(compact ? 'ERROR.FIELD_MAX_COMPACT' : 'ERROR.FIELD_MAX') | translate:formControl.errors.max }}</mat-error>\n\n <ng-content select=\"mat-error\"></ng-content>\n </mat-form-field>\n</ng-template>\n\n",
|
|
5640
5658
|
providers: [
|
|
5641
|
-
DEFAULT_VALUE_ACCESSOR$
|
|
5659
|
+
DEFAULT_VALUE_ACCESSOR$2,
|
|
5642
5660
|
],
|
|
5643
5661
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
5644
5662
|
styles: [":host{display:inline-block;min-width:140px;position:relative;--ion-grid-column-padding:0}:host,mat-form-field{width:100%}mat-form-field .mat-form-field-subscript-wrapper{overflow:visible;top:100%}mat-form-field .mat-form-field-subscript-wrapper .mat-form-field-hint-wrapper{display:flex}mat-form-field .mat-form-field-subscript-wrapper .mat-form-field-hint-wrapper .mat-form-field-hint-spacer{flex:1 0 1em}mat-error{text-align:right;width:100%}"]
|
|
@@ -5695,22 +5713,22 @@ SharedMatDurationModule.decorators = [
|
|
|
5695
5713
|
},] }
|
|
5696
5714
|
];
|
|
5697
5715
|
|
|
5698
|
-
const DEFAULT_VALUE_ACCESSOR$
|
|
5716
|
+
const DEFAULT_VALUE_ACCESSOR$1 = {
|
|
5699
5717
|
provide: NG_VALUE_ACCESSOR,
|
|
5700
5718
|
useExisting: forwardRef(() => MatBooleanField),
|
|
5701
5719
|
multi: true
|
|
5702
5720
|
};
|
|
5703
|
-
const noop$
|
|
5721
|
+
const noop$2 = () => {
|
|
5704
5722
|
};
|
|
5705
|
-
const ɵ0$
|
|
5723
|
+
const ɵ0$5 = noop$2;
|
|
5706
5724
|
class MatBooleanField {
|
|
5707
5725
|
constructor(translate, formBuilder, cd, formGroupDir) {
|
|
5708
5726
|
this.translate = translate;
|
|
5709
5727
|
this.formBuilder = formBuilder;
|
|
5710
5728
|
this.cd = cd;
|
|
5711
5729
|
this.formGroupDir = formGroupDir;
|
|
5712
|
-
this._onChangeCallback = noop$
|
|
5713
|
-
this._onTouchedCallback = noop$
|
|
5730
|
+
this._onChangeCallback = noop$2;
|
|
5731
|
+
this._onTouchedCallback = noop$2;
|
|
5714
5732
|
this._writing = false;
|
|
5715
5733
|
this.showRadio = false;
|
|
5716
5734
|
this.disabled = false;
|
|
@@ -5873,7 +5891,7 @@ MatBooleanField.decorators = [
|
|
|
5873
5891
|
selector: 'mat-boolean-field',
|
|
5874
5892
|
template: "<mat-form-field *ngIf=\"readonly; else writable\"\n [floatLabel]=\"floatLabel\"\n class=\"mat-form-field-disabled {{classList}}\">\n <div matPrefix>\n <ng-container *ngTemplateOutlet=\"matPrefixTemplate\"></ng-container>\n </div>\n <input matInput hidden type=\"text\" readonly\n [placeholder]=\"placeholder\"\n [formControl]=\"formControl\">\n <ion-text>{{(formControl.value == null && 'COMMON.EMPTY_OPTION' || (formControl.value === true && yesLabel) || noLabel) | translate }}</ion-text>\n <div matSuffix>\n <ng-container *ngTemplateOutlet=\"matSuffixTemplate\"></ng-container>\n </div>\n</mat-form-field>\n\n<ng-template #writable>\n <ng-container [ngSwitch]=\"style\">\n\n <!-- Radio -->\n <mat-form-field *ngSwitchCase=\"'radio'\"\n [floatLabel]=\"showRadio && (!floatLabel || floatLabel === 'auto') ? 'always': floatLabel\"\n class=\"mat-boolean-field mat-boolean-field-radio {{classList}}\">\n <mat-label *ngIf=\"placeholder && floatLabel!=='never'\">\n {{placeholder}}\n <span [hidden]=\"showRadio\">({{yesLabel|translate}}/{{'COMMON.NO'|translate}})</span>\n </mat-label>\n <div matPrefix>\n <ng-container *ngTemplateOutlet=\"matPrefixTemplate\"></ng-container>\n </div>\n <input matInput #fakeInput type=\"text\" readonly=\"true\"\n [formControl]=\"formControl\"\n (focus)=\"_onFocusFakeInput($event)\"\n [required]=\"required\"\n [class.cdk-visually-hidden]=\"showRadio\"\n [tabindex]=\"tabindex\">\n\n <!-- radio button -->\n <mat-radio-group [hidden]=\"!showRadio\"\n [formControl]=\"formControl\"\n (change)=\"onRadioValueChanged($event)\">\n <mat-radio-button #yesButton [value]=\"true\">\n <span>{{yesLabel|translate}}</span>\n </mat-radio-button> \n <mat-radio-button #noButton [value]=\"false\">\n <span>{{noLabel|translate}}</span>\n </mat-radio-button>\n </mat-radio-group>\n\n <mat-error *ngIf=\"formControl.hasError('required')\" translate>ERROR.FIELD_REQUIRED</mat-error>\n\n <div matSuffix>\n <ng-container *ngTemplateOutlet=\"matSuffixTemplate\"></ng-container>\n </div>\n </mat-form-field>\n\n <!-- Checkbox -->\n <mat-form-field *ngSwitchCase=\"'checkbox'\"\n [floatLabel]=\"floatLabel\"\n class=\"mat-boolean-field mat-boolean-field-checkbox {{classList}}\">\n <mat-label *ngIf=\"placeholder && !showRadio\">\n {{placeholder}}\n </mat-label>\n <div matPrefix>\n <ng-container *ngTemplateOutlet=\"matPrefixTemplate\"></ng-container>\n </div>\n <input matInput #matInput\n [formControl]=\"formControl\"\n (focus)=\"_onFocusFakeInput($event)\"\n [required]=\"required\"\n [class.cdk-visually-hidden]=\"showRadio\"\n [tabindex]=\"tabindex\">\n\n <ion-label> </ion-label>\n\n <!-- checkbox, when compact -->\n <mat-checkbox #checkboxButton\n [formControl]=\"formControl\"\n (change)=\"onCheckboxValueChanged($event)\"\n [indeterminate]=\"value===undefined\"\n [hidden]=\"!showRadio\"\n [tabindex]=\"tabindex\">\n </mat-checkbox>\n\n <mat-error *ngIf=\"formControl.hasError('required')\" translate>ERROR.FIELD_REQUIRED</mat-error>\n\n <div matSuffix>\n <ng-container *ngTemplateOutlet=\"matSuffixTemplate\"></ng-container>\n </div>\n </mat-form-field>\n\n <!-- Buttons -->\n <mat-form-field *ngSwitchCase=\"'button'\"\n [floatLabel]=\"floatLabel === 'never' ? 'never' : 'always'\"\n class=\"mat-boolean-field mat-boolean-field-button {{classList}}\">\n <div matPrefix>\n <ng-container *ngTemplateOutlet=\"matPrefixTemplate\"></ng-container>\n </div>\n <input matInput type=\"text\" hidden\n [formControl]=\"formControl\"\n [placeholder]=\"placeholder\"\n [required]=\"required\">\n <div class=\"mat-form-field-buttons\"\n [style.--buttons-col-count]=\"buttonsColCount\"\n *ngIf=\"!formControl.disabled; else disabledLabel\">\n <!-- yes -->\n <ion-button class=\"mat-form-field-button\"\n [tabindex]=\"_tabindex\"\n (click)=\"writeValue(true, $event)\"\n (keyup.enter)=\"writeValue(true, $event)\"\n [color]=\"_value == null ? 'tertiary' : (_value === true) ? 'accent' : 'light'\">\n <ion-icon *ngIf=\"showButtonIcons && yesIcon; let icon\" slot=\"start\" [name]=\"icon\"></ion-icon>\n {{yesLabel|translate}}\n </ion-button>\n\n <!-- No button -->\n <ion-button class=\"mat-form-field-button\"\n [tabindex]=\"_tabindex !== undefined ? (_tabindex + 1) : undefined\"\n (click)=\"writeValue(false, $event)\"\n (keyup.enter)=\"writeValue(false, $event)\"\n [color]=\"_value == null ? 'tertiary' : (_value === false) ? 'accent' : 'light'\">\n <ion-icon *ngIf=\"showButtonIcons && noIcon; let icon\" slot=\"start\" [name]=\"icon\"></ion-icon>\n {{noLabel|translate}}\n </ion-button>\n </div>\n <ng-template #disabledLabel>\n <ion-label><i translate>COMMON.EMPTY_OPTION</i></ion-label>\n </ng-template>\n\n <mat-error *ngIf=\"formControl.hasError('required')\" translate>ERROR.FIELD_REQUIRED</mat-error>\n <div matSuffix>\n <ng-container *ngTemplateOutlet=\"matSuffixTemplate\"></ng-container>\n </div>\n\n </mat-form-field>\n </ng-container>\n\n</ng-template>\n\n\n<ng-template #matPrefixTemplate>\n <ng-content select=\"[matPrefix]\"></ng-content>\n</ng-template>\n<ng-template #matSuffixTemplate>\n <ng-content select=\"[matSuffix]\"></ng-content>\n</ng-template>\n",
|
|
5875
5893
|
providers: [
|
|
5876
|
-
DEFAULT_VALUE_ACCESSOR$
|
|
5894
|
+
DEFAULT_VALUE_ACCESSOR$1
|
|
5877
5895
|
],
|
|
5878
5896
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
5879
5897
|
styles: [":host{width:100%}.mat-form-field.mat-boolean-field-radio{margin-top:-2px}.mat-form-field.mat-boolean-field-button{margin-top:-4px}.mat-form-field .mat-form-field-buttons{width:100%;display:flex;flex-flow:row wrap;justify-content:flex-start;align-items:center}.mat-form-field .mat-form-field-buttons .mat-form-field-button{--flex-basis:calc(100% / var(--buttons-col-count, 2));flex:0 1 var(--flex-basis);max-width:min(var(--flex-basis),150px);white-space:normal;padding:0 2px;height:40px}"]
|
|
@@ -6119,7 +6137,7 @@ class MatNumpadDomService {
|
|
|
6119
6137
|
this.appRef.detachView(this.componentRef.hostView);
|
|
6120
6138
|
}
|
|
6121
6139
|
}
|
|
6122
|
-
MatNumpadDomService.ɵprov =
|
|
6140
|
+
MatNumpadDomService.ɵprov = i0.ɵɵdefineInjectable({ factory: function MatNumpadDomService_Factory() { return new MatNumpadDomService(i0.ɵɵinject(i0.ComponentFactoryResolver), i0.ɵɵinject(i0.ApplicationRef), i0.ɵɵinject(i0.INJECTOR), i0.ɵɵinject(i1$3.DOCUMENT, 8)); }, token: MatNumpadDomService, providedIn: "root" });
|
|
6123
6141
|
MatNumpadDomService.decorators = [
|
|
6124
6142
|
{ type: Injectable, args: [{
|
|
6125
6143
|
providedIn: 'root'
|
|
@@ -6483,7 +6501,7 @@ SharedMatNumpadModule.decorators = [
|
|
|
6483
6501
|
},] }
|
|
6484
6502
|
];
|
|
6485
6503
|
|
|
6486
|
-
const DEFAULT_VALUE_ACCESSOR
|
|
6504
|
+
const DEFAULT_VALUE_ACCESSOR = {
|
|
6487
6505
|
provide: NG_VALUE_ACCESSOR,
|
|
6488
6506
|
useExisting: forwardRef(() => MatSwipeField),
|
|
6489
6507
|
multi: true
|
|
@@ -6746,7 +6764,7 @@ MatSwipeField.decorators = [
|
|
|
6746
6764
|
{ type: Component, args: [{
|
|
6747
6765
|
selector: 'mat-swipe-field',
|
|
6748
6766
|
template: "<mat-form-field [floatLabel]=\"showSlides && (!floatLabel || floatLabel === 'auto') ? 'always': floatLabel\"\n [class]=\"classList\"\n [class.mat-form-field-disabled]=\"disabled\">\n <mat-label *ngIf=\"placeholder && floatLabel!=='never'\">\n {{placeholder}}\n </mat-label>\n <input matInput #fakeInput type=\"text\"\n [formControl]=\"formControl\"\n [readonly]=\"true\"\n (focus)=\"_onFocusFakeInput($event)\"\n [required]=\"required\"\n [class.cdk-visually-hidden]=\"showSlides\"\n [tabindex]=\"tabindex\">\n\n <div class=\"slides-container\" [class.hidden]=\"!showSlides\">\n <ion-slides #slides\n [options]=\"slidesOptions\"\n (ionSlidesDidLoad)=\"slidesLoaded()\"\n (ionSlideReachStart)=\"reachStart(true)\"\n (ionSlideReachEnd)=\"reachEnd(true)\"\n (ionSlideNextEnd)=\"reachStart(false)\"\n (ionSlidePrevEnd)=\"reachEnd(false)\"\n (ionSlideDidChange)=\"slideChanged()\"\n >\n <ion-slide *ngFor=\"let item of $items | async\">\n <ion-label>{{ displayWith(item) }}</ion-label>\n </ion-slide>\n\n </ion-slides>\n </div>\n\n <button #prevButton\n mat-icon-button\n type=\"button\"\n class=\"button-prev\"\n [hidden]=\"!showSlides\"\n [disabled]=\"previousDisabled\"\n (click)=\"previous()\">\n <mat-icon>chevron_left</mat-icon>\n </button>\n <button #nextButton\n mat-icon-button\n type=\"button\"\n class=\"button-next\"\n [hidden]=\"!showSlides\"\n [disabled]=\"nextDisabled\"\n (click)=\"next()\">\n <mat-icon>chevron_right</mat-icon>\n </button>\n\n <button matSuffix mat-icon-button tabindex=\"-1\"\n type=\"button\"\n *ngIf=\"clearable\"\n (click)=\"clearValue($event)\"\n [hidden]=\"disabled || !formControl.value\">\n <mat-icon>close</mat-icon>\n </button>\n\n <mat-error *ngIf=\"formControl.hasError('required')\" translate>ERROR.FIELD_REQUIRED</mat-error>\n <mat-error *ngIf=\"formControl.hasError('entity')\" translate>ERROR.FIELD_INVALID</mat-error>\n\n</mat-form-field>\n",
|
|
6749
|
-
providers: [DEFAULT_VALUE_ACCESSOR
|
|
6767
|
+
providers: [DEFAULT_VALUE_ACCESSOR],
|
|
6750
6768
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
6751
6769
|
styles: [":host{display:inline-block;width:100%;position:relative}input.hidden{display:none}.slides-container .swiper-slide{font-size:16px!important}.slides-container.hidden{visibility:hidden;height:0!important}.button-next,.button-prev{position:absolute;top:calc(50% - 20px);z-index:10}.button-prev{left:0;right:auto}.button-next{left:auto;right:0}"]
|
|
6752
6770
|
},] }
|
|
@@ -6804,14 +6822,14 @@ SharedMatSwipeModule.decorators = [
|
|
|
6804
6822
|
},] }
|
|
6805
6823
|
];
|
|
6806
6824
|
|
|
6807
|
-
const noop$
|
|
6808
|
-
const ɵ0$
|
|
6825
|
+
const noop$1 = () => { };
|
|
6826
|
+
const ɵ0$4 = noop$1;
|
|
6809
6827
|
class MatChipsField {
|
|
6810
6828
|
constructor(cd, formGroupDir) {
|
|
6811
6829
|
this.cd = cd;
|
|
6812
6830
|
this.formGroupDir = formGroupDir;
|
|
6813
|
-
this._onChangeCallback = noop$
|
|
6814
|
-
this._onTouchedCallback = noop$
|
|
6831
|
+
this._onChangeCallback = noop$1;
|
|
6832
|
+
this._onTouchedCallback = noop$1;
|
|
6815
6833
|
this.logPrefix = '[mat-chips] ';
|
|
6816
6834
|
this.formControlName = null;
|
|
6817
6835
|
this.required = false;
|
|
@@ -6988,7 +7006,7 @@ class MatChipsField {
|
|
|
6988
7006
|
// Wait a debounce time
|
|
6989
7007
|
debounceTime(this.debounceTime)
|
|
6990
7008
|
// DEBUG
|
|
6991
|
-
|
|
7009
|
+
//,tap((value) => this.debug && console.debug(this.logPrefix + ' Search text changes:', value))
|
|
6992
7010
|
),
|
|
6993
7011
|
// Object set: use it (no distinctUntilChanged() pipe need)
|
|
6994
7012
|
this.inputControl.valueChanges
|
|
@@ -7004,18 +7022,25 @@ class MatChipsField {
|
|
|
7004
7022
|
merge(
|
|
7005
7023
|
// Focus or click => Load all
|
|
7006
7024
|
merge(this.focused, this.clicked)
|
|
7007
|
-
.pipe(filter(_ => this.enabled), map((_) => this.showAllOnFocus ? '*' : this.inputControl.value)
|
|
7025
|
+
.pipe(filter(_ => this.enabled), map((_) => this.showAllOnFocus ? '*' : this.inputControl.value)
|
|
7026
|
+
// DEBUG
|
|
7027
|
+
//,tap(value => this.debug && console.debug(this.logPrefix + ' Received focused or clicked event: ', value))
|
|
7028
|
+
), merge(this.$inputItems, this._$filter)
|
|
7008
7029
|
.pipe(filter(_ => this.enabled), map(_ => this.inputControl.value)))
|
|
7009
7030
|
.pipe(
|
|
7010
7031
|
// Make sure there is enough characters
|
|
7011
7032
|
filter(thresholdFilterFn),
|
|
7012
7033
|
// Distinguish changes
|
|
7013
|
-
|
|
7034
|
+
// - do NOT filter if loading, to force update after a blur event
|
|
7035
|
+
distinctUntilChanged((v1, v2) => !this.loading && (v1 === v2 || this.equals(v1, v2)))
|
|
7036
|
+
// DEBUG
|
|
7037
|
+
//,tap(value => this.debug && console.debug(this.logPrefix + ' Received update event: ', value))
|
|
7038
|
+
))
|
|
7014
7039
|
.pipe(
|
|
7015
7040
|
// Suggest values
|
|
7016
7041
|
mergeMap(value => this.suggest(value, this.filter)),
|
|
7017
7042
|
// DEBUG
|
|
7018
|
-
//tap(items => console.debug(this.logPrefix + ' Received from suggest: ', items)),
|
|
7043
|
+
//tap(items => this.debug && console.debug(this.logPrefix + ' Received from suggest: ', items)),
|
|
7019
7044
|
// Store implicit value (will use it onBlur if not other value selected)
|
|
7020
7045
|
tap(items => this.updateImplicitValue(items)));
|
|
7021
7046
|
// Fetch more events
|
|
@@ -7036,7 +7061,10 @@ class MatChipsField {
|
|
|
7036
7061
|
.subscribe(items => this.$filteredItems.next(items)));
|
|
7037
7062
|
// Applying implicit value, on blur
|
|
7038
7063
|
this._subscription.add(this.blurred
|
|
7039
|
-
.pipe(map(_ => this.formControl.value)
|
|
7064
|
+
.pipe(map(_ => this.formControl.value)
|
|
7065
|
+
// DEBUG
|
|
7066
|
+
//,tap(value => this.debug && console.debug(this.logPrefix + ' Received blurred event: ', value)),
|
|
7067
|
+
)
|
|
7040
7068
|
.subscribe(value => {
|
|
7041
7069
|
// When leave component without object, use implicit value if :
|
|
7042
7070
|
// - an explicit value
|
|
@@ -7148,6 +7176,8 @@ class MatChipsField {
|
|
|
7148
7176
|
this._reload$.next(value || '*');
|
|
7149
7177
|
}
|
|
7150
7178
|
writeValue(value) {
|
|
7179
|
+
// DEBUG
|
|
7180
|
+
// if (this.debug) console.debug(this.logPrefix + ' Writing value: ', value);
|
|
7151
7181
|
if (value && !Array.isArray(value)) {
|
|
7152
7182
|
value = [value];
|
|
7153
7183
|
}
|
|
@@ -7399,9 +7429,9 @@ MatChipsField.propDecorators = {
|
|
|
7399
7429
|
showLoadingSpinner: [{ type: Input }],
|
|
7400
7430
|
chipColor: [{ type: Input }],
|
|
7401
7431
|
debug: [{ type: Input }],
|
|
7402
|
-
clicked: [{ type: Output }],
|
|
7403
|
-
blurred: [{ type: Output }],
|
|
7404
|
-
focused: [{ type: Output }],
|
|
7432
|
+
clicked: [{ type: Output, args: ['click',] }],
|
|
7433
|
+
blurred: [{ type: Output, args: ['blur',] }],
|
|
7434
|
+
focused: [{ type: Output, args: ['focus',] }],
|
|
7405
7435
|
dropButtonClick: [{ type: Output }],
|
|
7406
7436
|
keydownEscape: [{ type: Output, args: ['keydown.escape',] }],
|
|
7407
7437
|
keyupEnter: [{ type: Output, args: ['keyup.enter',] }],
|
|
@@ -7597,7 +7627,7 @@ class ProgressBarService {
|
|
|
7597
7627
|
}
|
|
7598
7628
|
}
|
|
7599
7629
|
}
|
|
7600
|
-
ProgressBarService.ɵprov =
|
|
7630
|
+
ProgressBarService.ɵprov = i0.ɵɵdefineInjectable({ factory: function ProgressBarService_Factory() { return new ProgressBarService(); }, token: ProgressBarService, providedIn: "root" });
|
|
7601
7631
|
ProgressBarService.decorators = [
|
|
7602
7632
|
{ type: Injectable, args: [{ providedIn: 'root' },] }
|
|
7603
7633
|
];
|
|
@@ -7641,7 +7671,7 @@ class AppGestureConfig extends HammerGestureConfig {
|
|
|
7641
7671
|
return mc;
|
|
7642
7672
|
}
|
|
7643
7673
|
}
|
|
7644
|
-
AppGestureConfig.ɵprov =
|
|
7674
|
+
AppGestureConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function AppGestureConfig_Factory() { return new AppGestureConfig(); }, token: AppGestureConfig, providedIn: "root" });
|
|
7645
7675
|
AppGestureConfig.decorators = [
|
|
7646
7676
|
{ type: Injectable, args: [{ providedIn: 'root' },] }
|
|
7647
7677
|
];
|
|
@@ -7866,7 +7896,7 @@ class MatPaginatorI18n extends MatPaginatorIntl {
|
|
|
7866
7896
|
this.previousPageLabel = this.translate.instant('COMMON.PAGINATOR.PREVIOUS_PAGE');
|
|
7867
7897
|
}
|
|
7868
7898
|
}
|
|
7869
|
-
MatPaginatorI18n.ɵprov =
|
|
7899
|
+
MatPaginatorI18n.ɵprov = i0.ɵɵdefineInjectable({ factory: function MatPaginatorI18n_Factory() { return new MatPaginatorI18n(i0.ɵɵinject(i1$1.TranslateService)); }, token: MatPaginatorI18n, providedIn: "root" });
|
|
7870
7900
|
MatPaginatorI18n.decorators = [
|
|
7871
7901
|
{ type: Injectable, args: [{ providedIn: 'root' },] }
|
|
7872
7902
|
];
|
|
@@ -7956,17 +7986,17 @@ function getColorContrast(color, bw) {
|
|
|
7956
7986
|
return rgbArrayToHex(rgb.map(v => 255 - v));
|
|
7957
7987
|
}
|
|
7958
7988
|
|
|
7959
|
-
const noop
|
|
7989
|
+
const noop = () => {
|
|
7960
7990
|
};
|
|
7961
|
-
const ɵ0$
|
|
7991
|
+
const ɵ0$3 = noop;
|
|
7962
7992
|
class AppFormField {
|
|
7963
7993
|
constructor(translate, cd, injector, formGroupDir) {
|
|
7964
7994
|
this.translate = translate;
|
|
7965
7995
|
this.cd = cd;
|
|
7966
7996
|
this.injector = injector;
|
|
7967
7997
|
this.formGroupDir = formGroupDir;
|
|
7968
|
-
this._onChangeCallback = noop
|
|
7969
|
-
this._onTouchedCallback = noop
|
|
7998
|
+
this._onChangeCallback = noop;
|
|
7999
|
+
this._onTouchedCallback = noop;
|
|
7970
8000
|
this.readonly = false;
|
|
7971
8001
|
this.compact = false;
|
|
7972
8002
|
this.floatLabel = 'auto';
|
|
@@ -8399,14 +8429,14 @@ class AudioProvider extends StartableService {
|
|
|
8399
8429
|
});
|
|
8400
8430
|
}
|
|
8401
8431
|
}
|
|
8402
|
-
AudioProvider.ɵprov =
|
|
8432
|
+
AudioProvider.ɵprov = i0.ɵɵdefineInjectable({ factory: function AudioProvider_Factory() { return new AudioProvider(i0.ɵɵinject(i1$4.Platform), i0.ɵɵinject(i2.NativeAudio, 8), i0.ɵɵinject(i3.Vibration, 8), i0.ɵɵinject(i4.AudioManagement, 8)); }, token: AudioProvider, providedIn: "root" });
|
|
8403
8433
|
AudioProvider.decorators = [
|
|
8404
8434
|
{ type: Injectable, args: [{ providedIn: 'root' },] }
|
|
8405
8435
|
];
|
|
8406
8436
|
AudioProvider.ctorParameters = () => [
|
|
8407
8437
|
{ type: Platform },
|
|
8408
|
-
{ type: NativeAudio
|
|
8409
|
-
{ type: Vibration
|
|
8438
|
+
{ type: NativeAudio, decorators: [{ type: Optional }] },
|
|
8439
|
+
{ type: Vibration, decorators: [{ type: Optional }] },
|
|
8410
8440
|
{ type: AudioManagement, decorators: [{ type: Optional }] }
|
|
8411
8441
|
];
|
|
8412
8442
|
|
|
@@ -8488,7 +8518,7 @@ class Hotkeys {
|
|
|
8488
8518
|
});
|
|
8489
8519
|
}
|
|
8490
8520
|
}
|
|
8491
|
-
Hotkeys.ɵprov =
|
|
8521
|
+
Hotkeys.ɵprov = i0.ɵɵdefineInjectable({ factory: function Hotkeys_Factory() { return new Hotkeys(i0.ɵɵinject(i1$5.EventManager), i0.ɵɵinject(i2$1.MatDialog), i0.ɵɵinject(i1$3.DOCUMENT), i0.ɵɵinject(i1$4.ModalController)); }, token: Hotkeys, providedIn: "root" });
|
|
8492
8522
|
Hotkeys.decorators = [
|
|
8493
8523
|
{ type: Injectable, args: [{
|
|
8494
8524
|
providedIn: 'root'
|
|
@@ -8662,7 +8692,7 @@ class Base64ImageReader {
|
|
|
8662
8692
|
}
|
|
8663
8693
|
}
|
|
8664
8694
|
|
|
8665
|
-
const uuidv4 = uuidv4Imported;
|
|
8695
|
+
const uuidv4$1 = uuidv4Imported;
|
|
8666
8696
|
class FileService {
|
|
8667
8697
|
constructor(platform,
|
|
8668
8698
|
//private transfer: FileTransfer,
|
|
@@ -8699,7 +8729,7 @@ class FileService {
|
|
|
8699
8729
|
const lastSlashIndex = source.lastIndexOf('/');
|
|
8700
8730
|
if (lastSlashIndex === -1)
|
|
8701
8731
|
throw new Error('Invalid URL: ' + source);
|
|
8702
|
-
const fileName = lastSlashIndex < (source.length - 1) && source.substring(lastSlashIndex + 1) || uuidv4();
|
|
8732
|
+
const fileName = lastSlashIndex < (source.length - 1) && source.substring(lastSlashIndex + 1) || uuidv4$1();
|
|
8703
8733
|
// Download into the file system
|
|
8704
8734
|
if (responseType === 'file' && this.canUseFileSystem) {
|
|
8705
8735
|
console.warn(`WARN: [file] Fetching image {${source}} in local file...`);
|
|
@@ -8755,7 +8785,7 @@ class FileService {
|
|
|
8755
8785
|
this._started = true;
|
|
8756
8786
|
}
|
|
8757
8787
|
}
|
|
8758
|
-
FileService.ɵprov =
|
|
8788
|
+
FileService.ɵprov = i0.ɵɵdefineInjectable({ factory: function FileService_Factory() { return new FileService(i0.ɵɵinject(i1$4.Platform), i0.ɵɵinject(i2$2.HttpClient), i0.ɵɵinject(ENVIRONMENT)); }, token: FileService, providedIn: "root" });
|
|
8759
8789
|
FileService.decorators = [
|
|
8760
8790
|
{ type: Injectable, args: [{
|
|
8761
8791
|
providedIn: 'root',
|
|
@@ -8921,7 +8951,7 @@ class Base58 {
|
|
|
8921
8951
|
Base58.alphabet = '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz';
|
|
8922
8952
|
|
|
8923
8953
|
const scrypt = require('scrypt-async');
|
|
8924
|
-
const sha256 = require('hash.js/lib/hash/sha/256');
|
|
8954
|
+
const sha256$1 = require('hash.js/lib/hash/sha/256');
|
|
8925
8955
|
const sha512 = require('hash.js/lib/hash/sha/512');
|
|
8926
8956
|
const nacl = {
|
|
8927
8957
|
sign,
|
|
@@ -9025,7 +9055,7 @@ class CryptoService {
|
|
|
9025
9055
|
* Hash (using SHA256) a message
|
|
9026
9056
|
*/
|
|
9027
9057
|
sha256(message) {
|
|
9028
|
-
return sha256().update(message).digest('hex');
|
|
9058
|
+
return sha256$1().update(message).digest('hex');
|
|
9029
9059
|
}
|
|
9030
9060
|
/**
|
|
9031
9061
|
* Hash (using SHA512) a message
|
|
@@ -9038,7 +9068,7 @@ class CryptoService {
|
|
|
9038
9068
|
return nacl.util.encodeBase64(m);
|
|
9039
9069
|
}
|
|
9040
9070
|
}
|
|
9041
|
-
CryptoService.ɵprov =
|
|
9071
|
+
CryptoService.ɵprov = i0.ɵɵdefineInjectable({ factory: function CryptoService_Factory() { return new CryptoService(); }, token: CryptoService, providedIn: "root" });
|
|
9042
9072
|
CryptoService.decorators = [
|
|
9043
9073
|
{ type: Injectable, args: [{ providedIn: 'root' },] }
|
|
9044
9074
|
];
|
|
@@ -10266,7 +10296,7 @@ class LocalSettingsService extends StartableService {
|
|
|
10266
10296
|
return page;
|
|
10267
10297
|
}
|
|
10268
10298
|
}
|
|
10269
|
-
LocalSettingsService.ɵprov =
|
|
10299
|
+
LocalSettingsService.ɵprov = i0.ɵɵdefineInjectable({ factory: function LocalSettingsService_Factory() { return new LocalSettingsService(i0.ɵɵinject(i1$1.TranslateService), i0.ɵɵinject(i1$4.Platform), i0.ɵɵinject(i3$1.Storage), i0.ɵɵinject(ENVIRONMENT), i0.ɵɵinject(APP_LOCAL_SETTINGS, 8), i0.ɵɵinject(APP_LOCAL_SETTINGS_OPTIONS, 8)); }, token: LocalSettingsService, providedIn: "root" });
|
|
10270
10300
|
LocalSettingsService.decorators = [
|
|
10271
10301
|
{ type: Injectable, args: [{
|
|
10272
10302
|
providedIn: 'root',
|
|
@@ -10924,7 +10954,7 @@ class NetworkService extends StartableService {
|
|
|
10924
10954
|
});
|
|
10925
10955
|
}
|
|
10926
10956
|
}
|
|
10927
|
-
NetworkService.ɵprov =
|
|
10957
|
+
NetworkService.ɵprov = i0.ɵɵdefineInjectable({ factory: function NetworkService_Factory() { return new NetworkService(i0.ɵɵinject(i1$3.DOCUMENT), i0.ɵɵinject(i1$4.Platform), i0.ɵɵinject(i1$4.ModalController), i0.ɵɵinject(CryptoService), i0.ɵɵinject(i3$1.Storage), i0.ɵɵinject(LocalSettingsService), i0.ɵɵinject(i6.CacheService), i0.ɵɵinject(i2$2.HttpClient), i0.ɵɵinject(ENVIRONMENT), i0.ɵɵinject(i9.Network, 8), i0.ɵɵinject(i10.SplashScreen, 8), i0.ɵɵinject(i1$1.TranslateService, 8), i0.ɵɵinject(i1$4.ToastController, 8)); }, token: NetworkService, providedIn: "root" });
|
|
10928
10958
|
NetworkService.decorators = [
|
|
10929
10959
|
{ type: Injectable, args: [{ providedIn: 'root' },] }
|
|
10930
10960
|
];
|
|
@@ -10935,16 +10965,16 @@ NetworkService.ctorParameters = () => [
|
|
|
10935
10965
|
{ type: CryptoService },
|
|
10936
10966
|
{ type: Storage },
|
|
10937
10967
|
{ type: LocalSettingsService },
|
|
10938
|
-
{ type: CacheService
|
|
10968
|
+
{ type: CacheService },
|
|
10939
10969
|
{ type: HttpClient },
|
|
10940
10970
|
{ type: undefined, decorators: [{ type: Inject, args: [ENVIRONMENT,] }] },
|
|
10941
|
-
{ type: Network
|
|
10942
|
-
{ type: SplashScreen
|
|
10971
|
+
{ type: Network, decorators: [{ type: Optional }] },
|
|
10972
|
+
{ type: SplashScreen, decorators: [{ type: Optional }] },
|
|
10943
10973
|
{ type: TranslateService, decorators: [{ type: Optional }] },
|
|
10944
10974
|
{ type: ToastController, decorators: [{ type: Optional }] }
|
|
10945
10975
|
];
|
|
10946
10976
|
|
|
10947
|
-
const ErrorCodes = {
|
|
10977
|
+
const ErrorCodes$2 = {
|
|
10948
10978
|
UNKNOWN_ERROR: 0,
|
|
10949
10979
|
LOAD_ACCOUNT_ERROR: 1,
|
|
10950
10980
|
BAD_PASSWORD: 2,
|
|
@@ -11296,7 +11326,7 @@ class EntityStore {
|
|
|
11296
11326
|
}
|
|
11297
11327
|
catch (err) {
|
|
11298
11328
|
console.error(err);
|
|
11299
|
-
throw { code: ErrorCodes.ENTITY_STORAGE_MIGRATION_FAILED, message: 'ERROR.ENTITY_STORAGE_MIGRATION_FAILED', details: err };
|
|
11329
|
+
throw { code: ErrorCodes$2.ENTITY_STORAGE_MIGRATION_FAILED, message: 'ERROR.ENTITY_STORAGE_MIGRATION_FAILED', details: err };
|
|
11300
11330
|
}
|
|
11301
11331
|
}
|
|
11302
11332
|
// Emit update event
|
|
@@ -11870,7 +11900,7 @@ class EntitiesStorage extends StartableService {
|
|
|
11870
11900
|
}
|
|
11871
11901
|
EntitiesStorage.TRASH_PREFIX = 'Trash#';
|
|
11872
11902
|
EntitiesStorage.REMOTE_PREFIX = 'Remote#';
|
|
11873
|
-
EntitiesStorage.ɵprov =
|
|
11903
|
+
EntitiesStorage.ɵprov = i0.ɵɵdefineInjectable({ factory: function EntitiesStorage_Factory() { return new EntitiesStorage(i0.ɵɵinject(i1$4.Platform), i0.ɵɵinject(ProgressBarService), i0.ɵɵinject(i3$1.Storage), i0.ɵɵinject(ENVIRONMENT), i0.ɵɵinject(APP_LOCAL_STORAGE_TYPE_POLICIES, 8)); }, token: EntitiesStorage, providedIn: "root" });
|
|
11874
11904
|
EntitiesStorage.decorators = [
|
|
11875
11905
|
{ type: Injectable, args: [{ providedIn: 'root' },] }
|
|
11876
11906
|
];
|
|
@@ -12007,10 +12037,10 @@ function referentialToString(obj, properties) {
|
|
|
12007
12037
|
function referentialsToString(values, properties, separator) {
|
|
12008
12038
|
return (values || []).map(v => referentialToString(v, properties)).join(separator || ', ');
|
|
12009
12039
|
}
|
|
12010
|
-
const ɵ0$
|
|
12040
|
+
const ɵ0$2 = StatusIds.ENABLE, ɵ1 = StatusIds.DISABLE, ɵ2 = StatusIds.TEMPORARY;
|
|
12011
12041
|
const StatusList = Object.freeze([
|
|
12012
12042
|
{
|
|
12013
|
-
id: ɵ0$
|
|
12043
|
+
id: ɵ0$2,
|
|
12014
12044
|
icon: 'checkmark',
|
|
12015
12045
|
label: 'REFERENTIAL.STATUS_ENUM.ENABLE'
|
|
12016
12046
|
},
|
|
@@ -12285,7 +12315,7 @@ function accountToString(data) {
|
|
|
12285
12315
|
(data.lastName || '')) || '';
|
|
12286
12316
|
}
|
|
12287
12317
|
|
|
12288
|
-
const uuidv4
|
|
12318
|
+
const uuidv4 = uuidv4Imported;
|
|
12289
12319
|
const _global = typeof global !== 'undefined' ? global : (typeof window !== 'undefined' ? window : {});
|
|
12290
12320
|
const NativeWebSocket = _global.WebSocket || _global.MozWebSocket;
|
|
12291
12321
|
/**
|
|
@@ -12329,7 +12359,7 @@ function createTrackerLink(opts) {
|
|
|
12329
12359
|
// Skip if not tracked
|
|
12330
12360
|
if (!context || !context.tracked)
|
|
12331
12361
|
return forward(operation);
|
|
12332
|
-
const id = context.serializationKey || uuidv4
|
|
12362
|
+
const id = context.serializationKey || uuidv4();
|
|
12333
12363
|
console.debug(`[apollo-tracker-link] Watching tracked query {${operation.operationName}#${id}}`);
|
|
12334
12364
|
// Clean context, before calling JSON.stringify (remove unused attributes)
|
|
12335
12365
|
const cleanContext = Object.assign(Object.assign({}, context), { optimisticResponse: null, cache: null });
|
|
@@ -12994,7 +13024,7 @@ class GraphqlService extends StartableService {
|
|
|
12994
13024
|
(err.networkError && ((err.networkError.error && this.toAppError(err.networkError.error))
|
|
12995
13025
|
|| this.toAppError(err.networkError)
|
|
12996
13026
|
|| (err.networkError.error && this.createAppErrorByCode(err.networkError.error.status))
|
|
12997
|
-
|| this.createAppErrorByCode(ErrorCodes.UNKNOWN_NETWORK_ERROR)))
|
|
13027
|
+
|| this.createAppErrorByCode(ErrorCodes$2.UNKNOWN_NETWORK_ERROR)))
|
|
12998
13028
|
// If graphQL: try to convert the first error found
|
|
12999
13029
|
|| (err.graphQLErrors && err.graphQLErrors.length && this.toAppError(err.graphQLErrors[0]))
|
|
13000
13030
|
|| this.toAppError(err)
|
|
@@ -13002,7 +13032,7 @@ class GraphqlService extends StartableService {
|
|
|
13002
13032
|
|| (err.graphQLErrors && err.graphQLErrors[0])
|
|
13003
13033
|
|| err;
|
|
13004
13034
|
console.error('[graphql] ' + (error && error.message || error), error.stack || '');
|
|
13005
|
-
if (error && error.code === ErrorCodes.UNKNOWN_NETWORK_ERROR && err.networkError && err.networkError.message) {
|
|
13035
|
+
if (error && error.code === ErrorCodes$2.UNKNOWN_NETWORK_ERROR && err.networkError && err.networkError.message) {
|
|
13006
13036
|
console.error('[graphql] original error: ' + err.networkError.message);
|
|
13007
13037
|
this.onNetworkError.next(error);
|
|
13008
13038
|
}
|
|
@@ -13038,7 +13068,7 @@ class GraphqlService extends StartableService {
|
|
|
13038
13068
|
return 'ERROR.UNAUTHORIZED';
|
|
13039
13069
|
case ServerErrorCodes.FORBIDDEN:
|
|
13040
13070
|
return 'ERROR.FORBIDDEN';
|
|
13041
|
-
case ErrorCodes.UNKNOWN_NETWORK_ERROR:
|
|
13071
|
+
case ErrorCodes$2.UNKNOWN_NETWORK_ERROR:
|
|
13042
13072
|
return 'ERROR.UNKNOWN_NETWORK_ERROR';
|
|
13043
13073
|
case ServerErrorCodes.BAD_UPDATE_DATE:
|
|
13044
13074
|
return 'ERROR.BAD_UPDATE_DATE';
|
|
@@ -13069,7 +13099,7 @@ class GraphqlService extends StartableService {
|
|
|
13069
13099
|
return undefined;
|
|
13070
13100
|
}
|
|
13071
13101
|
}
|
|
13072
|
-
GraphqlService.ɵprov =
|
|
13102
|
+
GraphqlService.ɵprov = i0.ɵɵdefineInjectable({ factory: function GraphqlService_Factory() { return new GraphqlService(i0.ɵɵinject(i1$4.Platform), i0.ɵɵinject(i2$3.Apollo), i0.ɵɵinject(i3$2.HttpLink), i0.ɵɵinject(NetworkService), i0.ɵɵinject(i3$1.Storage), i0.ɵɵinject(CryptoService), i0.ɵɵinject(ENVIRONMENT), i0.ɵɵinject(APP_GRAPHQL_TYPE_POLICIES, 8)); }, token: GraphqlService, providedIn: "root" });
|
|
13073
13103
|
GraphqlService.decorators = [
|
|
13074
13104
|
{ type: Injectable, args: [{
|
|
13075
13105
|
providedIn: 'root'
|
|
@@ -13086,7 +13116,7 @@ GraphqlService.ctorParameters = () => [
|
|
|
13086
13116
|
{ type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [APP_GRAPHQL_TYPE_POLICIES,] }] }
|
|
13087
13117
|
];
|
|
13088
13118
|
|
|
13089
|
-
const sha256
|
|
13119
|
+
const sha256 = require('hash.js/lib/hash/sha/256');
|
|
13090
13120
|
class BaseGraphqlServiceOptions {
|
|
13091
13121
|
}
|
|
13092
13122
|
// eslint-disable-next-line @angular-eslint/directive-class-suffix
|
|
@@ -13237,8 +13267,8 @@ class BaseGraphqlService extends StartableService {
|
|
|
13237
13267
|
}
|
|
13238
13268
|
/* -- protected methods -- */
|
|
13239
13269
|
computeMutableWatchQueryId(opts) {
|
|
13240
|
-
const queryName = opts.queryName || sha256
|
|
13241
|
-
const variablesKey = opts.variables && sha256
|
|
13270
|
+
const queryName = opts.queryName || sha256().update(JSON.stringify(opts.query)).digest('hex').substring(0, 8);
|
|
13271
|
+
const variablesKey = opts.variables && sha256().update(JSON.stringify(opts.variables)).digest('hex').substring(0, 8) || '';
|
|
13242
13272
|
return [queryName, opts.arrayFieldName, variablesKey].join('|');
|
|
13243
13273
|
}
|
|
13244
13274
|
findMutableWatchQueries(opts) {
|
|
@@ -13304,7 +13334,7 @@ const DEFAULT_AVATAR_IMAGE = 'assets/img/person.png';
|
|
|
13304
13334
|
/* ------------------------------------
|
|
13305
13335
|
* GraphQL queries
|
|
13306
13336
|
* ------------------------------------*/
|
|
13307
|
-
const Fragments = {
|
|
13337
|
+
const Fragments$1 = {
|
|
13308
13338
|
account: gql `
|
|
13309
13339
|
fragment AccountFragment on AccountVO {
|
|
13310
13340
|
id
|
|
@@ -13339,14 +13369,14 @@ const Fragments = {
|
|
|
13339
13369
|
}`
|
|
13340
13370
|
};
|
|
13341
13371
|
// Load account query
|
|
13342
|
-
const LoadQuery = gql `
|
|
13372
|
+
const LoadQuery$1 = gql `
|
|
13343
13373
|
query Account {
|
|
13344
13374
|
data: account {
|
|
13345
13375
|
...AccountFragment
|
|
13346
13376
|
}
|
|
13347
13377
|
}
|
|
13348
|
-
${Fragments.account}
|
|
13349
|
-
${Fragments.settings}
|
|
13378
|
+
${Fragments$1.account}
|
|
13379
|
+
${Fragments$1.settings}
|
|
13350
13380
|
`;
|
|
13351
13381
|
// Check email query
|
|
13352
13382
|
const IsEmailExistsQuery = gql `
|
|
@@ -13361,21 +13391,21 @@ const AccountMutations = {
|
|
|
13361
13391
|
...AccountFragment
|
|
13362
13392
|
}
|
|
13363
13393
|
}
|
|
13364
|
-
${Fragments.account}
|
|
13365
|
-
${Fragments.settings}`,
|
|
13394
|
+
${Fragments$1.account}
|
|
13395
|
+
${Fragments$1.settings}`,
|
|
13366
13396
|
create: gql `mutation CreateAccount($data:AccountVOInput){
|
|
13367
13397
|
data: createAccount(account: $data){
|
|
13368
13398
|
...AccountFragment
|
|
13369
13399
|
}
|
|
13370
13400
|
}
|
|
13371
|
-
${Fragments.account}
|
|
13372
|
-
${Fragments.settings}`,
|
|
13401
|
+
${Fragments$1.account}
|
|
13402
|
+
${Fragments$1.settings}`,
|
|
13373
13403
|
saveSettings: gql `mutation SaveSettings($data:UserSettingsVOInput){
|
|
13374
13404
|
data: saveSettings(settings: $data){
|
|
13375
13405
|
...UserSettingsFragment
|
|
13376
13406
|
}
|
|
13377
13407
|
}
|
|
13378
|
-
${Fragments.settings}`
|
|
13408
|
+
${Fragments$1.settings}`
|
|
13379
13409
|
};
|
|
13380
13410
|
// Sent confirmation email
|
|
13381
13411
|
const SendConfirmEmailMutation = gql `
|
|
@@ -13684,7 +13714,7 @@ class AccountService extends BaseGraphqlService {
|
|
|
13684
13714
|
catch (error) {
|
|
13685
13715
|
console.error(error);
|
|
13686
13716
|
this.resetData();
|
|
13687
|
-
throw { code: ErrorCodes.UNKNOWN_ERROR, message: 'ERROR.SCRYPT_ERROR' };
|
|
13717
|
+
throw { code: ErrorCodes$2.UNKNOWN_ERROR, message: 'ERROR.SCRYPT_ERROR' };
|
|
13688
13718
|
}
|
|
13689
13719
|
// Store pubkey+keypair
|
|
13690
13720
|
this._cache.pubkey = Base58.encode(keypair.publicKey);
|
|
@@ -13718,7 +13748,7 @@ class AccountService extends BaseGraphqlService {
|
|
|
13718
13748
|
}
|
|
13719
13749
|
catch (err) {
|
|
13720
13750
|
// If account not found, check if email is valid
|
|
13721
|
-
if (err && +(err.code) === ErrorCodes.LOAD_ACCOUNT_ERROR) {
|
|
13751
|
+
if (err && +(err.code) === ErrorCodes$2.LOAD_ACCOUNT_ERROR) {
|
|
13722
13752
|
// Check email exists
|
|
13723
13753
|
if (data.username.indexOf('@') !== -1) {
|
|
13724
13754
|
let isEmailExists;
|
|
@@ -13730,11 +13760,11 @@ class AccountService extends BaseGraphqlService {
|
|
|
13730
13760
|
}
|
|
13731
13761
|
// Email not exists (no account)
|
|
13732
13762
|
if (!isEmailExists) {
|
|
13733
|
-
throw { code: ErrorCodes.UNKNOWN_ACCOUNT_EMAIL, message: 'ERROR.UNKNOWN_ACCOUNT_EMAIL' };
|
|
13763
|
+
throw { code: ErrorCodes$2.UNKNOWN_ACCOUNT_EMAIL, message: 'ERROR.UNKNOWN_ACCOUNT_EMAIL' };
|
|
13734
13764
|
}
|
|
13735
13765
|
}
|
|
13736
13766
|
// Email exists, so error = 'bad password'
|
|
13737
|
-
throw { code: ErrorCodes.BAD_PASSWORD, message: 'ERROR.BAD_PASSWORD' };
|
|
13767
|
+
throw { code: ErrorCodes$2.BAD_PASSWORD, message: 'ERROR.BAD_PASSWORD' };
|
|
13738
13768
|
}
|
|
13739
13769
|
throw err; // resend the first error
|
|
13740
13770
|
}
|
|
@@ -13859,8 +13889,8 @@ class AccountService extends BaseGraphqlService {
|
|
|
13859
13889
|
// Load remotely
|
|
13860
13890
|
else {
|
|
13861
13891
|
const { data } = yield this.graphql.query({
|
|
13862
|
-
query: LoadQuery,
|
|
13863
|
-
error: { code: ErrorCodes.LOAD_ACCOUNT_ERROR, message: 'ERROR.LOAD_ACCOUNT_ERROR' },
|
|
13892
|
+
query: LoadQuery$1,
|
|
13893
|
+
error: { code: ErrorCodes$2.LOAD_ACCOUNT_ERROR, message: 'ERROR.LOAD_ACCOUNT_ERROR' },
|
|
13864
13894
|
fetchPolicy: opts && opts.fetchPolicy || 'no-cache' || undefined
|
|
13865
13895
|
});
|
|
13866
13896
|
json = data;
|
|
@@ -13887,7 +13917,7 @@ class AccountService extends BaseGraphqlService {
|
|
|
13887
13917
|
return __awaiter(this, void 0, void 0, function* () {
|
|
13888
13918
|
const isEmailExists = yield this.isEmailExists(email);
|
|
13889
13919
|
if (isEmailExists) {
|
|
13890
|
-
throw { code: ErrorCodes.EMAIL_ALREADY_REGISTERED, message: 'ERROR.EMAIL_ALREADY_REGISTERED' };
|
|
13920
|
+
throw { code: ErrorCodes$2.EMAIL_ALREADY_REGISTERED, message: 'ERROR.EMAIL_ALREADY_REGISTERED' };
|
|
13891
13921
|
}
|
|
13892
13922
|
});
|
|
13893
13923
|
}
|
|
@@ -13923,7 +13953,7 @@ class AccountService extends BaseGraphqlService {
|
|
|
13923
13953
|
locale
|
|
13924
13954
|
},
|
|
13925
13955
|
error: {
|
|
13926
|
-
code: ErrorCodes.SENT_CONFIRMATION_EMAIL_FAILED,
|
|
13956
|
+
code: ErrorCodes$2.SENT_CONFIRMATION_EMAIL_FAILED,
|
|
13927
13957
|
message: 'ERROR.SENT_ACCOUNT_CONFIRMATION_EMAIL_FAILED'
|
|
13928
13958
|
}
|
|
13929
13959
|
});
|
|
@@ -13939,7 +13969,7 @@ class AccountService extends BaseGraphqlService {
|
|
|
13939
13969
|
code
|
|
13940
13970
|
},
|
|
13941
13971
|
error: {
|
|
13942
|
-
code: ErrorCodes.CONFIRM_EMAIL_FAILED,
|
|
13972
|
+
code: ErrorCodes$2.CONFIRM_EMAIL_FAILED,
|
|
13943
13973
|
message: 'ERROR.CONFIRM_ACCOUNT_EMAIL_FAILED'
|
|
13944
13974
|
}
|
|
13945
13975
|
});
|
|
@@ -13957,7 +13987,7 @@ class AccountService extends BaseGraphqlService {
|
|
|
13957
13987
|
interval: 10
|
|
13958
13988
|
},
|
|
13959
13989
|
error: {
|
|
13960
|
-
code: ErrorCodes.SUBSCRIBE_ACCOUNT_ERROR,
|
|
13990
|
+
code: ErrorCodes$2.SUBSCRIBE_ACCOUNT_ERROR,
|
|
13961
13991
|
message: 'ERROR.ACCOUNT.SUBSCRIBE_ACCOUNT_ERROR'
|
|
13962
13992
|
}
|
|
13963
13993
|
}).subscribe({
|
|
@@ -14058,7 +14088,7 @@ class AccountService extends BaseGraphqlService {
|
|
|
14058
14088
|
throw error;
|
|
14059
14089
|
console.error(error);
|
|
14060
14090
|
throw {
|
|
14061
|
-
code: ErrorCodes.LOAD_ACCOUNT_ERROR,
|
|
14091
|
+
code: ErrorCodes$2.LOAD_ACCOUNT_ERROR,
|
|
14062
14092
|
message: 'ERROR.LOAD_ACCOUNT_ERROR'
|
|
14063
14093
|
};
|
|
14064
14094
|
}
|
|
@@ -14226,7 +14256,7 @@ class AccountService extends BaseGraphqlService {
|
|
|
14226
14256
|
if (!isNew) {
|
|
14227
14257
|
const existingAccount = yield this.load({ fetchPolicy: 'network-only' });
|
|
14228
14258
|
if (!existingAccount || !existingAccount.updateDate) {
|
|
14229
|
-
throw { code: ErrorCodes.ACCOUNT_NOT_EXISTS, message: 'ERROR.ACCOUNT_NOT_EXISTS' };
|
|
14259
|
+
throw { code: ErrorCodes$2.ACCOUNT_NOT_EXISTS, message: 'ERROR.ACCOUNT_NOT_EXISTS' };
|
|
14230
14260
|
}
|
|
14231
14261
|
this.copyIdAndUpdateDate(existingAccount, account);
|
|
14232
14262
|
}
|
|
@@ -14238,7 +14268,7 @@ class AccountService extends BaseGraphqlService {
|
|
|
14238
14268
|
mutation: isNew ? AccountMutations.create : AccountMutations.save,
|
|
14239
14269
|
variables: { data: json },
|
|
14240
14270
|
error: {
|
|
14241
|
-
code: ErrorCodes.SAVE_ACCOUNT_ERROR,
|
|
14271
|
+
code: ErrorCodes$2.SAVE_ACCOUNT_ERROR,
|
|
14242
14272
|
message: 'ERROR.SAVE_ACCOUNT_ERROR'
|
|
14243
14273
|
}
|
|
14244
14274
|
});
|
|
@@ -14265,7 +14295,7 @@ class AccountService extends BaseGraphqlService {
|
|
|
14265
14295
|
mutation: AccountMutations.saveSettings,
|
|
14266
14296
|
variables: { data: json },
|
|
14267
14297
|
error: {
|
|
14268
|
-
code: ErrorCodes.SAVE_SETTINGS_ERROR,
|
|
14298
|
+
code: ErrorCodes$2.SAVE_SETTINGS_ERROR,
|
|
14269
14299
|
message: 'ERROR.SAVE_SETTINGS_ERROR'
|
|
14270
14300
|
}
|
|
14271
14301
|
});
|
|
@@ -14287,7 +14317,7 @@ class AccountService extends BaseGraphqlService {
|
|
|
14287
14317
|
if (counter > 4) {
|
|
14288
14318
|
if (this._debug)
|
|
14289
14319
|
console.debug(`[account] Failed to authentication on pod (after ${counter} attempts)`);
|
|
14290
|
-
throw { code: ErrorCodes.AUTH_SERVER_ERROR, message: 'ERROR.AUTH_SERVER_ERROR' };
|
|
14320
|
+
throw { code: ErrorCodes$2.AUTH_SERVER_ERROR, message: 'ERROR.AUTH_SERVER_ERROR' };
|
|
14291
14321
|
}
|
|
14292
14322
|
// Check if valid
|
|
14293
14323
|
if (token) {
|
|
@@ -14297,7 +14327,7 @@ class AccountService extends BaseGraphqlService {
|
|
|
14297
14327
|
token
|
|
14298
14328
|
},
|
|
14299
14329
|
error: {
|
|
14300
|
-
code: ErrorCodes.UNAUTHORIZED,
|
|
14330
|
+
code: ErrorCodes$2.UNAUTHORIZED,
|
|
14301
14331
|
message: 'ERROR.UNAUTHORIZED'
|
|
14302
14332
|
},
|
|
14303
14333
|
fetchPolicy: 'no-cache'
|
|
@@ -14313,7 +14343,7 @@ class AccountService extends BaseGraphqlService {
|
|
|
14313
14343
|
}
|
|
14314
14344
|
// Generate a new token
|
|
14315
14345
|
const challengeError = {
|
|
14316
|
-
code: ErrorCodes.AUTH_CHALLENGE_ERROR,
|
|
14346
|
+
code: ErrorCodes$2.AUTH_CHALLENGE_ERROR,
|
|
14317
14347
|
message: 'ERROR.AUTH_CHALLENGE_ERROR'
|
|
14318
14348
|
};
|
|
14319
14349
|
const data = yield this.graphql.query({
|
|
@@ -14352,7 +14382,7 @@ class AccountService extends BaseGraphqlService {
|
|
|
14352
14382
|
target.updateDate = source.updateDate || target.updateDate;
|
|
14353
14383
|
}
|
|
14354
14384
|
}
|
|
14355
|
-
AccountService.ɵprov =
|
|
14385
|
+
AccountService.ɵprov = i0.ɵɵdefineInjectable({ factory: function AccountService_Factory() { return new AccountService(i0.ɵɵinject(CryptoService), i0.ɵɵinject(NetworkService), i0.ɵɵinject(GraphqlService), i0.ɵɵinject(LocalSettingsService), i0.ɵɵinject(i3$1.Storage), i0.ɵɵinject(FileService), i0.ɵɵinject(ENVIRONMENT)); }, token: AccountService, providedIn: "root" });
|
|
14356
14386
|
AccountService.decorators = [
|
|
14357
14387
|
{ type: Injectable, args: [{ providedIn: 'root' },] }
|
|
14358
14388
|
];
|
|
@@ -14612,7 +14642,7 @@ const CONFIGURATION_STORAGE_KEY = 'configuration';
|
|
|
14612
14642
|
/* ------------------------------------
|
|
14613
14643
|
* GraphQL queries
|
|
14614
14644
|
* ------------------------------------*/
|
|
14615
|
-
const Fragments
|
|
14645
|
+
const Fragments = {
|
|
14616
14646
|
config: gql `
|
|
14617
14647
|
fragment ConfigFragment on ConfigurationVO {
|
|
14618
14648
|
id
|
|
@@ -14639,13 +14669,13 @@ const Fragments$1 = {
|
|
|
14639
14669
|
}
|
|
14640
14670
|
`
|
|
14641
14671
|
};
|
|
14642
|
-
const LoadQuery
|
|
14672
|
+
const LoadQuery = gql `
|
|
14643
14673
|
query Configuration{
|
|
14644
14674
|
data: configuration{
|
|
14645
14675
|
...ConfigFragment
|
|
14646
14676
|
}
|
|
14647
14677
|
}
|
|
14648
|
-
${Fragments
|
|
14678
|
+
${Fragments.config}
|
|
14649
14679
|
`;
|
|
14650
14680
|
// Save (create or update) account mutation
|
|
14651
14681
|
const SaveMutation = gql `
|
|
@@ -14654,7 +14684,7 @@ const SaveMutation = gql `
|
|
|
14654
14684
|
...ConfigFragment
|
|
14655
14685
|
}
|
|
14656
14686
|
}
|
|
14657
|
-
${Fragments
|
|
14687
|
+
${Fragments.config}
|
|
14658
14688
|
`;
|
|
14659
14689
|
const ClearCache = gql `
|
|
14660
14690
|
query ClearCache($name: String) {
|
|
@@ -14704,12 +14734,12 @@ class ConfigService extends BaseGraphqlService {
|
|
|
14704
14734
|
return __awaiter(this, void 0, void 0, function* () {
|
|
14705
14735
|
const now = Date.now();
|
|
14706
14736
|
console.debug('[config] Loading Pod configuration...');
|
|
14707
|
-
const query = opts && opts.query || LoadQuery
|
|
14737
|
+
const query = opts && opts.query || LoadQuery;
|
|
14708
14738
|
const variables = opts && opts.variables || undefined;
|
|
14709
14739
|
const res = yield this.graphql.query({
|
|
14710
14740
|
query,
|
|
14711
14741
|
variables,
|
|
14712
|
-
error: { code: ErrorCodes.LOAD_CONFIG_ERROR, message: 'ERROR.LOAD_CONFIG_ERROR' },
|
|
14742
|
+
error: { code: ErrorCodes$2.LOAD_CONFIG_ERROR, message: 'ERROR.LOAD_CONFIG_ERROR' },
|
|
14713
14743
|
fetchPolicy: opts && opts.fetchPolicy || undefined /*default*/
|
|
14714
14744
|
});
|
|
14715
14745
|
const data = res && res.data ? Configuration.fromObject(res.data) : undefined;
|
|
@@ -14739,7 +14769,7 @@ class ConfigService extends BaseGraphqlService {
|
|
|
14739
14769
|
data: json
|
|
14740
14770
|
},
|
|
14741
14771
|
error: {
|
|
14742
|
-
code: ErrorCodes.SAVE_CONFIG_ERROR,
|
|
14772
|
+
code: ErrorCodes$2.SAVE_CONFIG_ERROR,
|
|
14743
14773
|
message: 'ERROR.SAVE_CONFIG_ERROR'
|
|
14744
14774
|
}
|
|
14745
14775
|
});
|
|
@@ -14765,7 +14795,7 @@ class ConfigService extends BaseGraphqlService {
|
|
|
14765
14795
|
const res = yield this.graphql.query({
|
|
14766
14796
|
query: CacheStatistics,
|
|
14767
14797
|
variables: null,
|
|
14768
|
-
error: { code: ErrorCodes.LOAD_CONFIG_ERROR, message: 'ERROR.LOAD_CONFIG_ERROR' },
|
|
14798
|
+
error: { code: ErrorCodes$2.LOAD_CONFIG_ERROR, message: 'ERROR.LOAD_CONFIG_ERROR' },
|
|
14769
14799
|
fetchPolicy: 'network-only'
|
|
14770
14800
|
});
|
|
14771
14801
|
const data = res && res.cacheStatistics || undefined;
|
|
@@ -14781,7 +14811,7 @@ class ConfigService extends BaseGraphqlService {
|
|
|
14781
14811
|
const res = yield this.graphql.query({
|
|
14782
14812
|
query: ClearCache,
|
|
14783
14813
|
variables,
|
|
14784
|
-
error: { code: ErrorCodes.LOAD_CONFIG_ERROR, message: 'ERROR.LOAD_CONFIG_ERROR' },
|
|
14814
|
+
error: { code: ErrorCodes$2.LOAD_CONFIG_ERROR, message: 'ERROR.LOAD_CONFIG_ERROR' },
|
|
14785
14815
|
fetchPolicy: 'network-only'
|
|
14786
14816
|
});
|
|
14787
14817
|
const data = res && res.clearCache || undefined;
|
|
@@ -14940,7 +14970,7 @@ class ConfigService extends BaseGraphqlService {
|
|
|
14940
14970
|
});
|
|
14941
14971
|
}
|
|
14942
14972
|
}
|
|
14943
|
-
ConfigService.ɵprov =
|
|
14973
|
+
ConfigService.ɵprov = i0.ɵɵdefineInjectable({ factory: function ConfigService_Factory() { return new ConfigService(i0.ɵɵinject(i1$4.Platform), i0.ɵɵinject(GraphqlService), i0.ɵɵinject(i3$1.Storage), i0.ɵɵinject(NetworkService), i0.ɵɵinject(FileService), i0.ɵɵinject(i1$4.ToastController), i0.ɵɵinject(i1$1.TranslateService), i0.ɵɵinject(ENVIRONMENT), i0.ɵɵinject(APP_CONFIG_OPTIONS, 8)); }, token: ConfigService, providedIn: "root" });
|
|
14944
14974
|
ConfigService.decorators = [
|
|
14945
14975
|
{ type: Injectable, args: [{
|
|
14946
14976
|
providedIn: 'root',
|
|
@@ -14959,7 +14989,7 @@ ConfigService.ctorParameters = () => [
|
|
|
14959
14989
|
{ type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [APP_CONFIG_OPTIONS,] }] }
|
|
14960
14990
|
];
|
|
14961
14991
|
|
|
14962
|
-
const moment$
|
|
14992
|
+
const moment$2 = momentImported;
|
|
14963
14993
|
class PlatformService extends StartableService {
|
|
14964
14994
|
constructor(platform, cdkPlatform, toastController, translate, dateAdapter, entitiesStorage, settings, networkService, accountService, configService, cache, storage, audioProvider, environment, statusBar, keyboard, splashScreen, browser, downloader) {
|
|
14965
14995
|
super(platform);
|
|
@@ -15163,16 +15193,16 @@ class PlatformService extends StartableService {
|
|
|
15163
15193
|
}
|
|
15164
15194
|
// config moment lib
|
|
15165
15195
|
try {
|
|
15166
|
-
moment$
|
|
15196
|
+
moment$2.locale(event.lang);
|
|
15167
15197
|
console.debug('[platform] Use locale {' + event.lang + '}');
|
|
15168
15198
|
}
|
|
15169
15199
|
// If error, fallback to en
|
|
15170
15200
|
catch (err) {
|
|
15171
|
-
moment$
|
|
15201
|
+
moment$2.locale('en');
|
|
15172
15202
|
console.warn('[platform] Unknown local for moment lib. Using default [en]');
|
|
15173
15203
|
}
|
|
15174
15204
|
// Config date adapter
|
|
15175
|
-
this.dateAdapter.setLocale(moment$
|
|
15205
|
+
this.dateAdapter.setLocale(moment$2.locale());
|
|
15176
15206
|
}
|
|
15177
15207
|
});
|
|
15178
15208
|
this.settings.onChange.subscribe(data => {
|
|
@@ -15306,7 +15336,7 @@ class PlatformService extends StartableService {
|
|
|
15306
15336
|
});
|
|
15307
15337
|
}
|
|
15308
15338
|
}
|
|
15309
|
-
PlatformService.ɵprov =
|
|
15339
|
+
PlatformService.ɵprov = i0.ɵɵdefineInjectable({ factory: function PlatformService_Factory() { return new PlatformService(i0.ɵɵinject(i1$4.Platform), i0.ɵɵinject(i2$4.Platform), i0.ɵɵinject(i1$4.ToastController), i0.ɵɵinject(i1$1.TranslateService), i0.ɵɵinject(i1.MomentDateAdapter), i0.ɵɵinject(EntitiesStorage), i0.ɵɵinject(LocalSettingsService), i0.ɵɵinject(NetworkService), i0.ɵɵinject(AccountService), i0.ɵɵinject(ConfigService), i0.ɵɵinject(i6.CacheService), i0.ɵɵinject(i3$1.Storage), i0.ɵɵinject(AudioProvider), i0.ɵɵinject(ENVIRONMENT), i0.ɵɵinject(i14.StatusBar, 8), i0.ɵɵinject(i15.Keyboard, 8), i0.ɵɵinject(i10.SplashScreen, 8), i0.ɵɵinject(i17.InAppBrowser, 8), i0.ɵɵinject(i18.Downloader, 8)); }, token: PlatformService, providedIn: "root" });
|
|
15310
15340
|
PlatformService.decorators = [
|
|
15311
15341
|
{ type: Injectable, args: [{ providedIn: 'root' },] }
|
|
15312
15342
|
];
|
|
@@ -15321,15 +15351,15 @@ PlatformService.ctorParameters = () => [
|
|
|
15321
15351
|
{ type: NetworkService },
|
|
15322
15352
|
{ type: AccountService },
|
|
15323
15353
|
{ type: ConfigService },
|
|
15324
|
-
{ type: CacheService
|
|
15354
|
+
{ type: CacheService },
|
|
15325
15355
|
{ type: Storage },
|
|
15326
15356
|
{ type: AudioProvider },
|
|
15327
15357
|
{ type: undefined, decorators: [{ type: Inject, args: [ENVIRONMENT,] }] },
|
|
15328
|
-
{ type: StatusBar
|
|
15358
|
+
{ type: StatusBar, decorators: [{ type: Optional }] },
|
|
15329
15359
|
{ type: Keyboard, decorators: [{ type: Optional }] },
|
|
15330
|
-
{ type: SplashScreen
|
|
15331
|
-
{ type: InAppBrowser
|
|
15332
|
-
{ type: Downloader
|
|
15360
|
+
{ type: SplashScreen, decorators: [{ type: Optional }] },
|
|
15361
|
+
{ type: InAppBrowser, decorators: [{ type: Optional }] },
|
|
15362
|
+
{ type: Downloader, decorators: [{ type: Optional }] }
|
|
15333
15363
|
];
|
|
15334
15364
|
|
|
15335
15365
|
class AppHelpModal {
|
|
@@ -15393,7 +15423,7 @@ class MatStepperI18n extends MatStepperIntl {
|
|
|
15393
15423
|
this.optionalLabel = this.translate.instant('COMMON.OPTIONAL');
|
|
15394
15424
|
}
|
|
15395
15425
|
}
|
|
15396
|
-
MatStepperI18n.ɵprov =
|
|
15426
|
+
MatStepperI18n.ɵprov = i0.ɵɵdefineInjectable({ factory: function MatStepperI18n_Factory() { return new MatStepperI18n(i0.ɵɵinject(i1$1.TranslateService)); }, token: MatStepperI18n, providedIn: "root" });
|
|
15397
15427
|
MatStepperI18n.decorators = [
|
|
15398
15428
|
{ type: Injectable, args: [{ providedIn: 'root' },] }
|
|
15399
15429
|
];
|
|
@@ -16395,7 +16425,7 @@ function state2side(state) {
|
|
|
16395
16425
|
return 1;
|
|
16396
16426
|
}
|
|
16397
16427
|
}
|
|
16398
|
-
const ɵ0$
|
|
16428
|
+
const ɵ0$1 = (defaultStateSize) => [
|
|
16399
16429
|
Math.round((rgbArrayMap.red[0] - 50) / defaultStateSize),
|
|
16400
16430
|
Math.round((255 - rgbArrayMap.red[1]) / defaultStateSize),
|
|
16401
16431
|
Math.round((255 - rgbArrayMap.red[2]) / defaultStateSize)
|
|
@@ -16403,7 +16433,7 @@ const ɵ0$a = (defaultStateSize) => [
|
|
|
16403
16433
|
const SCALE_OPTIONS_DEFAULT = {
|
|
16404
16434
|
startColor: rgbArrayMap.red,
|
|
16405
16435
|
startStates: [0, 2, 3],
|
|
16406
|
-
startStepsFn: ɵ0$
|
|
16436
|
+
startStepsFn: ɵ0$1
|
|
16407
16437
|
};
|
|
16408
16438
|
/**
|
|
16409
16439
|
* Internal function, that create a colors scale, using iteration
|
|
@@ -16495,21 +16525,21 @@ function linearColorGradient(count, options) {
|
|
|
16495
16525
|
return result;
|
|
16496
16526
|
}
|
|
16497
16527
|
|
|
16498
|
-
class EntityTestClass {
|
|
16528
|
+
class EntityTestClass$1 {
|
|
16499
16529
|
}
|
|
16500
|
-
const FAKE_ENTITIES = [
|
|
16530
|
+
const FAKE_ENTITIES$1 = [
|
|
16501
16531
|
{ id: 1, label: 'AAA', name: 'Item A', description: 'Very long description A', comments: 'Very very long comments... again for A' },
|
|
16502
16532
|
{ id: 2, label: 'BBB', name: 'Item B', description: 'Very long description B', comments: 'Very very long comments... again for B' },
|
|
16503
16533
|
{ id: 3, label: 'CCC', name: 'Item C', description: 'Very long description C', comments: 'Very very long comments... again for C' }
|
|
16504
16534
|
];
|
|
16505
|
-
function deepCopy(values, size) {
|
|
16535
|
+
function deepCopy$1(values, size) {
|
|
16506
16536
|
if (isNil(size)) {
|
|
16507
|
-
return (values || FAKE_ENTITIES).map(entity => Object.assign({}, entity));
|
|
16537
|
+
return (values || FAKE_ENTITIES$1).map(entity => Object.assign({}, entity));
|
|
16508
16538
|
}
|
|
16509
16539
|
let result = [];
|
|
16510
16540
|
let i = 1;
|
|
16511
16541
|
while (result.length < size) {
|
|
16512
|
-
result = result.concat((values || FAKE_ENTITIES).map(entity => {
|
|
16542
|
+
result = result.concat((values || FAKE_ENTITIES$1).map(entity => {
|
|
16513
16543
|
const name = entity.name + ' #' + i;
|
|
16514
16544
|
return Object.assign(Object.assign({}, entity), { id: i++, name });
|
|
16515
16545
|
}));
|
|
@@ -16519,7 +16549,7 @@ function deepCopy(values, size) {
|
|
|
16519
16549
|
class AutocompleteTestPage {
|
|
16520
16550
|
constructor(formBuilder) {
|
|
16521
16551
|
this.formBuilder = formBuilder;
|
|
16522
|
-
this._items = deepCopy(FAKE_ENTITIES, 100);
|
|
16552
|
+
this._items = deepCopy$1(FAKE_ENTITIES$1, 100);
|
|
16523
16553
|
this._$items = new BehaviorSubject(undefined);
|
|
16524
16554
|
this.autocompleteFields = new MatAutocompleteConfigHolder();
|
|
16525
16555
|
this.memoryHide = false;
|
|
@@ -16563,7 +16593,7 @@ class AutocompleteTestPage {
|
|
|
16563
16593
|
});
|
|
16564
16594
|
// From items
|
|
16565
16595
|
this.autocompleteFields.add('entity-items-large', {
|
|
16566
|
-
items: FAKE_ENTITIES.slice(),
|
|
16596
|
+
items: FAKE_ENTITIES$1.slice(),
|
|
16567
16597
|
attributes: ['label', 'name', 'description', 'comments'],
|
|
16568
16598
|
displayWith: this.entityToString
|
|
16569
16599
|
});
|
|
@@ -16573,12 +16603,12 @@ class AutocompleteTestPage {
|
|
|
16573
16603
|
loadData() {
|
|
16574
16604
|
return __awaiter(this, void 0, void 0, function* () {
|
|
16575
16605
|
const data = {
|
|
16576
|
-
entity: deepCopy(FAKE_ENTITIES)[0],
|
|
16606
|
+
entity: deepCopy$1(FAKE_ENTITIES$1)[0],
|
|
16577
16607
|
// This item is NOT in the items list => i should be displayed anyway
|
|
16578
16608
|
missingEntity: {
|
|
16579
16609
|
id: -1, label: '??', name: 'Missing item'
|
|
16580
16610
|
},
|
|
16581
|
-
disableEntity: deepCopy(FAKE_ENTITIES)[2]
|
|
16611
|
+
disableEntity: deepCopy$1(FAKE_ENTITIES$1)[2]
|
|
16582
16612
|
};
|
|
16583
16613
|
this.form.setValue(data);
|
|
16584
16614
|
// Load observables
|
|
@@ -16751,13 +16781,13 @@ MaterialTestingPage.ctorParameters = () => [
|
|
|
16751
16781
|
{ type: Array, decorators: [{ type: Optional }, { type: Inject, args: [APP_TESTING_PAGES,] }] }
|
|
16752
16782
|
];
|
|
16753
16783
|
|
|
16754
|
-
const moment$
|
|
16784
|
+
const moment$1 = momentImported;
|
|
16755
16785
|
class SwipeTestPage {
|
|
16756
16786
|
constructor(formBuilder, dateFormatPipe) {
|
|
16757
16787
|
this.formBuilder = formBuilder;
|
|
16758
16788
|
this.dateFormatPipe = dateFormatPipe;
|
|
16759
16789
|
this.$dates = new BehaviorSubject(undefined);
|
|
16760
|
-
this._today = moment$
|
|
16790
|
+
this._today = moment$1().startOf('day');
|
|
16761
16791
|
this.form = formBuilder.group({
|
|
16762
16792
|
empty: [null, Validators.required],
|
|
16763
16793
|
date: [null, Validators.compose([Validators.required, SharedValidators.validDate])],
|
|
@@ -16770,7 +16800,7 @@ class SwipeTestPage {
|
|
|
16770
16800
|
ngOnInit() {
|
|
16771
16801
|
const dates = [];
|
|
16772
16802
|
for (let d = 0; d < 7; d++) {
|
|
16773
|
-
dates[d] = moment$
|
|
16803
|
+
dates[d] = moment$1(this._today).add(d - 3, 'day');
|
|
16774
16804
|
}
|
|
16775
16805
|
this.$dates.next(dates);
|
|
16776
16806
|
this.loadData();
|
|
@@ -16811,7 +16841,7 @@ SwipeTestPage.ctorParameters = () => [
|
|
|
16811
16841
|
{ type: DateFormatPipe }
|
|
16812
16842
|
];
|
|
16813
16843
|
|
|
16814
|
-
const moment
|
|
16844
|
+
const moment = momentImported;
|
|
16815
16845
|
class DateTimeTestPage {
|
|
16816
16846
|
constructor(platform, formBuilder, cd) {
|
|
16817
16847
|
this.platform = platform;
|
|
@@ -16843,7 +16873,7 @@ class DateTimeTestPage {
|
|
|
16843
16873
|
// Load the form with data
|
|
16844
16874
|
loadData() {
|
|
16845
16875
|
return __awaiter(this, void 0, void 0, function* () {
|
|
16846
|
-
const now = moment
|
|
16876
|
+
const now = moment();
|
|
16847
16877
|
const data = {
|
|
16848
16878
|
empty: toDateISOString(now.clone().add(2, 'hours')),
|
|
16849
16879
|
enable: toDateISOString(now),
|
|
@@ -16904,9 +16934,9 @@ DateTimeTestPage.ctorParameters = () => [
|
|
|
16904
16934
|
{ type: ChangeDetectorRef }
|
|
16905
16935
|
];
|
|
16906
16936
|
|
|
16907
|
-
class EntityTestClass
|
|
16937
|
+
class EntityTestClass {
|
|
16908
16938
|
}
|
|
16909
|
-
const FAKE_ENTITIES
|
|
16939
|
+
const FAKE_ENTITIES = [
|
|
16910
16940
|
{ id: 1, label: 'AAA', name: 'Item A' },
|
|
16911
16941
|
{ id: 2, label: 'BBB', name: 'Item B' },
|
|
16912
16942
|
{ id: 3, label: 'CCC', name: 'Item C' },
|
|
@@ -16915,14 +16945,14 @@ const FAKE_ENTITIES$1 = [
|
|
|
16915
16945
|
{ id: 6, label: 'FFF', name: 'Item F' },
|
|
16916
16946
|
{ id: 7, label: 'GGG', name: 'Item G' }
|
|
16917
16947
|
];
|
|
16918
|
-
function deepCopy
|
|
16948
|
+
function deepCopy(values, size) {
|
|
16919
16949
|
if (isNil(size)) {
|
|
16920
|
-
return (values || FAKE_ENTITIES
|
|
16950
|
+
return (values || FAKE_ENTITIES).map(entity => Object.assign({}, entity));
|
|
16921
16951
|
}
|
|
16922
16952
|
let result = [];
|
|
16923
16953
|
let i = 1;
|
|
16924
16954
|
while (result.length < size) {
|
|
16925
|
-
result = result.concat((values || FAKE_ENTITIES
|
|
16955
|
+
result = result.concat((values || FAKE_ENTITIES).map(entity => {
|
|
16926
16956
|
const name = entity.name + ' #' + i;
|
|
16927
16957
|
return Object.assign(Object.assign({}, entity), { id: i++, name });
|
|
16928
16958
|
}));
|
|
@@ -16932,7 +16962,7 @@ function deepCopy$1(values, size) {
|
|
|
16932
16962
|
class ChipsTestPage {
|
|
16933
16963
|
constructor(formBuilder) {
|
|
16934
16964
|
this.formBuilder = formBuilder;
|
|
16935
|
-
this._items = deepCopy
|
|
16965
|
+
this._items = deepCopy(FAKE_ENTITIES, 100);
|
|
16936
16966
|
this._$items = new BehaviorSubject(undefined);
|
|
16937
16967
|
this.autocompleteFields = new MatAutocompleteConfigHolder();
|
|
16938
16968
|
this.form = formBuilder.group({
|
|
@@ -16971,7 +17001,7 @@ class ChipsTestPage {
|
|
|
16971
17001
|
// Load the form with data
|
|
16972
17002
|
loadData() {
|
|
16973
17003
|
return __awaiter(this, void 0, void 0, function* () {
|
|
16974
|
-
const items = deepCopy
|
|
17004
|
+
const items = deepCopy(FAKE_ENTITIES);
|
|
16975
17005
|
const data = {
|
|
16976
17006
|
entity: items.slice(0, 1),
|
|
16977
17007
|
entityInitial: items.slice(1, 2),
|
|
@@ -17041,7 +17071,7 @@ MatBadgeIconTestPage.decorators = [
|
|
|
17041
17071
|
},] }
|
|
17042
17072
|
];
|
|
17043
17073
|
|
|
17044
|
-
const routes = [
|
|
17074
|
+
const routes$1 = [
|
|
17045
17075
|
{
|
|
17046
17076
|
path: '',
|
|
17047
17077
|
pathMatch: 'full',
|
|
@@ -17093,7 +17123,7 @@ MaterialTestingModule.decorators = [
|
|
|
17093
17123
|
ReactiveFormsModule,
|
|
17094
17124
|
SharedMaterialModule,
|
|
17095
17125
|
TranslateModule.forChild(),
|
|
17096
|
-
RouterModule.forChild(routes)
|
|
17126
|
+
RouterModule.forChild(routes$1)
|
|
17097
17127
|
],
|
|
17098
17128
|
declarations: [
|
|
17099
17129
|
MaterialTestingPage,
|
|
@@ -18108,7 +18138,7 @@ class UserSettingsValidatorService extends AppValidatorService {
|
|
|
18108
18138
|
});
|
|
18109
18139
|
}
|
|
18110
18140
|
}
|
|
18111
|
-
UserSettingsValidatorService.ɵprov =
|
|
18141
|
+
UserSettingsValidatorService.ɵprov = i0.ɵɵdefineInjectable({ factory: function UserSettingsValidatorService_Factory() { return new UserSettingsValidatorService(i0.ɵɵinject(i1$6.FormBuilder)); }, token: UserSettingsValidatorService, providedIn: "root" });
|
|
18112
18142
|
UserSettingsValidatorService.decorators = [
|
|
18113
18143
|
{ type: Injectable, args: [{ providedIn: 'root' },] }
|
|
18114
18144
|
];
|
|
@@ -18152,7 +18182,7 @@ class AccountValidatorService extends AppValidatorService {
|
|
|
18152
18182
|
return validatorFns.length ? Validators.compose(validatorFns) : validatorFns.length === 1 ? validatorFns[0] : undefined;
|
|
18153
18183
|
}
|
|
18154
18184
|
}
|
|
18155
|
-
AccountValidatorService.ɵprov =
|
|
18185
|
+
AccountValidatorService.ɵprov = i0.ɵɵdefineInjectable({ factory: function AccountValidatorService_Factory() { return new AccountValidatorService(i0.ɵɵinject(i1$6.FormBuilder), i0.ɵɵinject(AccountService)); }, token: AccountValidatorService, providedIn: "root" });
|
|
18156
18186
|
AccountValidatorService.decorators = [
|
|
18157
18187
|
{ type: Injectable, args: [{ providedIn: 'root' },] }
|
|
18158
18188
|
];
|
|
@@ -18717,7 +18747,7 @@ class LocalSettingsValidatorService extends AppValidatorService {
|
|
|
18717
18747
|
});
|
|
18718
18748
|
}
|
|
18719
18749
|
}
|
|
18720
|
-
LocalSettingsValidatorService.ɵprov =
|
|
18750
|
+
LocalSettingsValidatorService.ɵprov = i0.ɵɵdefineInjectable({ factory: function LocalSettingsValidatorService_Factory() { return new LocalSettingsValidatorService(i0.ɵɵinject(i1$6.FormBuilder), i0.ɵɵinject(NetworkService)); }, token: LocalSettingsValidatorService, providedIn: "root" });
|
|
18721
18751
|
LocalSettingsValidatorService.decorators = [
|
|
18722
18752
|
{ type: Injectable, args: [{ providedIn: 'root' },] }
|
|
18723
18753
|
];
|
|
@@ -19336,7 +19366,7 @@ class IsOnFieldModePipe {
|
|
|
19336
19366
|
return value === 'FIELD';
|
|
19337
19367
|
}
|
|
19338
19368
|
}
|
|
19339
|
-
IsOnFieldModePipe.ɵprov =
|
|
19369
|
+
IsOnFieldModePipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function IsOnFieldModePipe_Factory() { return new IsOnFieldModePipe(); }, token: IsOnFieldModePipe, providedIn: "root" });
|
|
19340
19370
|
IsOnFieldModePipe.decorators = [
|
|
19341
19371
|
{ type: Pipe, args: [{
|
|
19342
19372
|
name: 'isOnField'
|
|
@@ -19348,7 +19378,7 @@ class IsNotOnFieldModePipe {
|
|
|
19348
19378
|
return value !== 'FIELD';
|
|
19349
19379
|
}
|
|
19350
19380
|
}
|
|
19351
|
-
IsNotOnFieldModePipe.ɵprov =
|
|
19381
|
+
IsNotOnFieldModePipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function IsNotOnFieldModePipe_Factory() { return new IsNotOnFieldModePipe(); }, token: IsNotOnFieldModePipe, providedIn: "root" });
|
|
19352
19382
|
IsNotOnFieldModePipe.decorators = [
|
|
19353
19383
|
{ type: Pipe, args: [{
|
|
19354
19384
|
name: 'isNotOnField'
|
|
@@ -19363,7 +19393,7 @@ class PersonToStringPipe {
|
|
|
19363
19393
|
return PersonUtils.personToString(value);
|
|
19364
19394
|
}
|
|
19365
19395
|
}
|
|
19366
|
-
PersonToStringPipe.ɵprov =
|
|
19396
|
+
PersonToStringPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function PersonToStringPipe_Factory() { return new PersonToStringPipe(); }, token: PersonToStringPipe, providedIn: "root" });
|
|
19367
19397
|
PersonToStringPipe.decorators = [
|
|
19368
19398
|
{ type: Pipe, args: [{
|
|
19369
19399
|
name: 'personToString'
|
|
@@ -19748,7 +19778,7 @@ class IsLoginAccountPipe {
|
|
|
19748
19778
|
return value && value.pubkey && true;
|
|
19749
19779
|
}
|
|
19750
19780
|
}
|
|
19751
|
-
IsLoginAccountPipe.ɵprov =
|
|
19781
|
+
IsLoginAccountPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function IsLoginAccountPipe_Factory() { return new IsLoginAccountPipe(); }, token: IsLoginAccountPipe, providedIn: "root" });
|
|
19752
19782
|
IsLoginAccountPipe.decorators = [
|
|
19753
19783
|
{ type: Pipe, args: [{
|
|
19754
19784
|
name: 'isLogin'
|
|
@@ -19760,7 +19790,7 @@ class AccountToStringPipe {
|
|
|
19760
19790
|
return accountToString(value);
|
|
19761
19791
|
}
|
|
19762
19792
|
}
|
|
19763
|
-
AccountToStringPipe.ɵprov =
|
|
19793
|
+
AccountToStringPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function AccountToStringPipe_Factory() { return new AccountToStringPipe(); }, token: AccountToStringPipe, providedIn: "root" });
|
|
19764
19794
|
AccountToStringPipe.decorators = [
|
|
19765
19795
|
{ type: Pipe, args: [{
|
|
19766
19796
|
name: 'accountToString'
|
|
@@ -19775,7 +19805,7 @@ class DepartmentToStringPipe {
|
|
|
19775
19805
|
return departmentToString(value);
|
|
19776
19806
|
}
|
|
19777
19807
|
}
|
|
19778
|
-
DepartmentToStringPipe.ɵprov =
|
|
19808
|
+
DepartmentToStringPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function DepartmentToStringPipe_Factory() { return new DepartmentToStringPipe(); }, token: DepartmentToStringPipe, providedIn: "root" });
|
|
19779
19809
|
DepartmentToStringPipe.decorators = [
|
|
19780
19810
|
{ type: Pipe, args: [{
|
|
19781
19811
|
name: 'departmentToString'
|
|
@@ -19801,7 +19831,7 @@ class MenuService {
|
|
|
19801
19831
|
this._visibleSubject.next(value);
|
|
19802
19832
|
}
|
|
19803
19833
|
}
|
|
19804
|
-
MenuService.ɵprov =
|
|
19834
|
+
MenuService.ɵprov = i0.ɵɵdefineInjectable({ factory: function MenuService_Factory() { return new MenuService(); }, token: MenuService, providedIn: "root" });
|
|
19805
19835
|
MenuService.decorators = [
|
|
19806
19836
|
{ type: Injectable, args: [{
|
|
19807
19837
|
providedIn: 'root'
|
|
@@ -20325,7 +20355,7 @@ class AuthGuardService {
|
|
|
20325
20355
|
}));
|
|
20326
20356
|
}
|
|
20327
20357
|
}
|
|
20328
|
-
AuthGuardService.ɵprov =
|
|
20358
|
+
AuthGuardService.ɵprov = i0.ɵɵdefineInjectable({ factory: function AuthGuardService_Factory() { return new AuthGuardService(i0.ɵɵinject(AccountService), i0.ɵɵinject(i1$4.ModalController), i0.ɵɵinject(i3$3.Router), i0.ɵɵinject(ENVIRONMENT)); }, token: AuthGuardService, providedIn: "root" });
|
|
20329
20359
|
AuthGuardService.decorators = [
|
|
20330
20360
|
{ type: Injectable, args: [{ providedIn: 'root' },] }
|
|
20331
20361
|
];
|
|
@@ -20367,7 +20397,7 @@ class BaseEntityService extends BaseGraphqlService {
|
|
|
20367
20397
|
query,
|
|
20368
20398
|
variables: { id },
|
|
20369
20399
|
fetchPolicy: opts && opts.fetchPolicy || undefined,
|
|
20370
|
-
error: { code: ErrorCodes.LOAD_DATA_ERROR, message: 'REFERENTIAL.ERROR.LOAD_DATA_ERROR' }
|
|
20400
|
+
error: { code: ErrorCodes$2.LOAD_DATA_ERROR, message: 'REFERENTIAL.ERROR.LOAD_DATA_ERROR' }
|
|
20371
20401
|
})
|
|
20372
20402
|
.pipe(map(({ data }) => (!opts || opts.toEntity !== false)
|
|
20373
20403
|
? (data && this.fromObject(data))
|
|
@@ -20382,7 +20412,7 @@ class BaseEntityService extends BaseGraphqlService {
|
|
|
20382
20412
|
query,
|
|
20383
20413
|
variables: { id },
|
|
20384
20414
|
fetchPolicy: opts && opts.fetchPolicy || undefined,
|
|
20385
|
-
error: { code: ErrorCodes.LOAD_DATA_ERROR, message: 'REFERENTIAL.ERROR.LOAD_DATA_ERROR' }
|
|
20415
|
+
error: { code: ErrorCodes$2.LOAD_DATA_ERROR, message: 'REFERENTIAL.ERROR.LOAD_DATA_ERROR' }
|
|
20386
20416
|
});
|
|
20387
20417
|
// Convert to entity
|
|
20388
20418
|
return (!opts || opts.toEntity !== false)
|
|
@@ -20413,7 +20443,7 @@ class BaseEntityService extends BaseGraphqlService {
|
|
|
20413
20443
|
totalFieldName: withTotal ? 'total' : undefined,
|
|
20414
20444
|
insertFilterFn: filter && filter.asFilterFn(),
|
|
20415
20445
|
variables,
|
|
20416
|
-
error: { code: ErrorCodes.LOAD_DATA_ERROR, message: 'REFERENTIAL.ERROR.LOAD_DATA_ERROR' },
|
|
20446
|
+
error: { code: ErrorCodes$2.LOAD_DATA_ERROR, message: 'REFERENTIAL.ERROR.LOAD_DATA_ERROR' },
|
|
20417
20447
|
fetchPolicy: opts && opts.fetchPolicy || undefined
|
|
20418
20448
|
})
|
|
20419
20449
|
.pipe(map(({ data, total }) => {
|
|
@@ -20449,7 +20479,7 @@ class BaseEntityService extends BaseGraphqlService {
|
|
|
20449
20479
|
const { data, total } = yield this.graphql.query({
|
|
20450
20480
|
query,
|
|
20451
20481
|
variables,
|
|
20452
|
-
error: { code: ErrorCodes.LOAD_DATA_ERROR, message: 'ERROR.LOAD_DATA_ERROR' },
|
|
20482
|
+
error: { code: ErrorCodes$2.LOAD_DATA_ERROR, message: 'ERROR.LOAD_DATA_ERROR' },
|
|
20453
20483
|
fetchPolicy: opts && opts.fetchPolicy || 'network-only'
|
|
20454
20484
|
});
|
|
20455
20485
|
const entities = (!opts || opts.toEntity !== false) ?
|
|
@@ -20488,7 +20518,7 @@ class BaseEntityService extends BaseGraphqlService {
|
|
|
20488
20518
|
variables: {
|
|
20489
20519
|
filter: filter && filter.asPodObject()
|
|
20490
20520
|
},
|
|
20491
|
-
error: { code: ErrorCodes.LOAD_DATA_ERROR, message: 'ERROR.COUNT_DATA_ERROR' },
|
|
20521
|
+
error: { code: ErrorCodes$2.LOAD_DATA_ERROR, message: 'ERROR.COUNT_DATA_ERROR' },
|
|
20492
20522
|
fetchPolicy: opts && opts.fetchPolicy || 'network-only'
|
|
20493
20523
|
});
|
|
20494
20524
|
return res.total;
|
|
@@ -20521,7 +20551,7 @@ class BaseEntityService extends BaseGraphqlService {
|
|
|
20521
20551
|
variables: {
|
|
20522
20552
|
data: json
|
|
20523
20553
|
},
|
|
20524
|
-
error: { code: ErrorCodes.SAVE_DATA_ERROR, message: 'ERROR.SAVE_DATA_ERROR' },
|
|
20554
|
+
error: { code: ErrorCodes$2.SAVE_DATA_ERROR, message: 'ERROR.SAVE_DATA_ERROR' },
|
|
20525
20555
|
update: (proxy, { data }) => {
|
|
20526
20556
|
const savedEntities = data && data.data;
|
|
20527
20557
|
if (savedEntities) {
|
|
@@ -20577,7 +20607,7 @@ class BaseEntityService extends BaseGraphqlService {
|
|
|
20577
20607
|
variables: {
|
|
20578
20608
|
data: json
|
|
20579
20609
|
},
|
|
20580
|
-
error: { code: ErrorCodes.SAVE_DATA_ERROR, message: 'ERROR.SAVE_DATA_ERROR' },
|
|
20610
|
+
error: { code: ErrorCodes$2.SAVE_DATA_ERROR, message: 'ERROR.SAVE_DATA_ERROR' },
|
|
20581
20611
|
update: (cache, { data }) => {
|
|
20582
20612
|
// Update entity
|
|
20583
20613
|
const savedEntity = data && data.data;
|
|
@@ -20625,7 +20655,7 @@ class BaseEntityService extends BaseGraphqlService {
|
|
|
20625
20655
|
refetchQueries: this.getRefetchQueriesForMutation(opts),
|
|
20626
20656
|
awaitRefetchQueries: opts && opts.awaitRefetchQueries,
|
|
20627
20657
|
variables: { ids },
|
|
20628
|
-
error: { code: ErrorCodes.DELETE_DATA_ERROR, message: 'ERROR.DELETE_DATA_ERROR' },
|
|
20658
|
+
error: { code: ErrorCodes$2.DELETE_DATA_ERROR, message: 'ERROR.DELETE_DATA_ERROR' },
|
|
20629
20659
|
update: (cache, res) => {
|
|
20630
20660
|
// Remove from cache
|
|
20631
20661
|
if (this.watchQueriesUpdatePolicy === 'update-cache') {
|
|
@@ -20666,7 +20696,7 @@ class BaseEntityService extends BaseGraphqlService {
|
|
|
20666
20696
|
refetchQueries: this.getRefetchQueriesForMutation(opts),
|
|
20667
20697
|
awaitRefetchQueries: opts && opts.awaitRefetchQueries,
|
|
20668
20698
|
variables: { id },
|
|
20669
|
-
error: { code: ErrorCodes.DELETE_DATA_ERROR, message: 'ERROR.DELETE_DATA_ERROR' },
|
|
20699
|
+
error: { code: ErrorCodes$2.DELETE_DATA_ERROR, message: 'ERROR.DELETE_DATA_ERROR' },
|
|
20670
20700
|
update: (proxy, res) => {
|
|
20671
20701
|
// Remove from cache
|
|
20672
20702
|
if (this.watchQueriesUpdatePolicy === 'update-cache') {
|
|
@@ -20699,7 +20729,7 @@ class BaseEntityService extends BaseGraphqlService {
|
|
|
20699
20729
|
query: opts && opts.query || this.subscriptions.listenChanges,
|
|
20700
20730
|
variables,
|
|
20701
20731
|
error: {
|
|
20702
|
-
code: ErrorCodes.SUBSCRIBE_DATA_ERROR,
|
|
20732
|
+
code: ErrorCodes$2.SUBSCRIBE_DATA_ERROR,
|
|
20703
20733
|
message: 'ERROR.SUBSCRIBE_DATA_ERROR'
|
|
20704
20734
|
}
|
|
20705
20735
|
})
|
|
@@ -20885,7 +20915,7 @@ class EntitiesTableDataSource extends TableDataSource {
|
|
|
20885
20915
|
if (this._debug)
|
|
20886
20916
|
invalidRows.forEach(row => AppTableUtils.logRowErrors(row, `[table-datasource] ${this._logTypeName} row #${row.id}`));
|
|
20887
20917
|
// Stop with an error
|
|
20888
|
-
throw { code: ErrorCodes.TABLE_INVALID_ROW_ERROR, message: 'ERROR.TABLE_INVALID_ROW_ERROR' };
|
|
20918
|
+
throw { code: ErrorCodes$2.TABLE_INVALID_ROW_ERROR, message: 'ERROR.TABLE_INVALID_ROW_ERROR' };
|
|
20889
20919
|
}
|
|
20890
20920
|
this._editingRowCount = 0;
|
|
20891
20921
|
let data;
|
|
@@ -21747,14 +21777,14 @@ class AppTable {
|
|
|
21747
21777
|
return __awaiter(this, void 0, void 0, function* () {
|
|
21748
21778
|
opts = Object.assign({ keepEditing: this.keepEditedRowOnSave }, opts);
|
|
21749
21779
|
if (this.readOnly) {
|
|
21750
|
-
throw { code: ErrorCodes.TABLE_READ_ONLY, message: 'ERROR.TABLE_READ_ONLY' };
|
|
21780
|
+
throw { code: ErrorCodes$2.TABLE_READ_ONLY, message: 'ERROR.TABLE_READ_ONLY' };
|
|
21751
21781
|
}
|
|
21752
21782
|
this.resetError();
|
|
21753
21783
|
// Keep edited row id (should be done BEFORE confirmEditCreate() )
|
|
21754
21784
|
this.previouslyEditedRowId = opts.keepEditing && ((_a = this.editedRow) === null || _a === void 0 ? void 0 : _a.editing) ? this.editedRow.id : undefined;
|
|
21755
21785
|
const previouslyEditedData = isNotNil(this.previouslyEditedRowId) && this.editedRow.currentData || ((_b = this.singleSelectedRow) === null || _b === void 0 ? void 0 : _b.currentData);
|
|
21756
21786
|
if (!this.confirmEditCreate()) {
|
|
21757
|
-
throw { code: ErrorCodes.TABLE_INVALID_ROW_ERROR, message: 'ERROR.TABLE_INVALID_ROW_ERROR' };
|
|
21787
|
+
throw { code: ErrorCodes$2.TABLE_INVALID_ROW_ERROR, message: 'ERROR.TABLE_INVALID_ROW_ERROR' };
|
|
21758
21788
|
}
|
|
21759
21789
|
// Mark as saving
|
|
21760
21790
|
this.markAsSaving();
|
|
@@ -21871,7 +21901,7 @@ class AppTable {
|
|
|
21871
21901
|
var _a;
|
|
21872
21902
|
return __awaiter(this, void 0, void 0, function* () {
|
|
21873
21903
|
if (this.readOnly) {
|
|
21874
|
-
throw { code: ErrorCodes.TABLE_READ_ONLY, message: 'ERROR.TABLE_READ_ONLY' };
|
|
21904
|
+
throw { code: ErrorCodes$2.TABLE_READ_ONLY, message: 'ERROR.TABLE_READ_ONLY' };
|
|
21875
21905
|
}
|
|
21876
21906
|
if (event === null || event === void 0 ? void 0 : event.defaultPrevented)
|
|
21877
21907
|
return 0; // SKip
|
|
@@ -23397,7 +23427,7 @@ class AppEntityEditor extends AppTabEditor {
|
|
|
23397
23427
|
try {
|
|
23398
23428
|
const data = yield this.dataService.load(id, opts);
|
|
23399
23429
|
if (!data)
|
|
23400
|
-
throw { code: ErrorCodes.DATA_NOT_FOUND_ERROR, message: 'ERROR.DATA_NO_FOUND' };
|
|
23430
|
+
throw { code: ErrorCodes$2.DATA_NOT_FOUND_ERROR, message: 'ERROR.DATA_NO_FOUND' };
|
|
23401
23431
|
this._usageMode = this.computeUsageMode(data);
|
|
23402
23432
|
yield this.onEntityLoaded(data, opts);
|
|
23403
23433
|
yield this.updateView(data, opts);
|
|
@@ -24302,7 +24332,7 @@ class UserEventService extends BaseGraphqlService {
|
|
|
24302
24332
|
EntityUtils.copyIdAndUpdateDate(source, target);
|
|
24303
24333
|
}
|
|
24304
24334
|
}
|
|
24305
|
-
UserEventService.ɵprov =
|
|
24335
|
+
UserEventService.ɵprov = i0.ɵɵdefineInjectable({ factory: function UserEventService_Factory() { return new UserEventService(i0.ɵɵinject(GraphqlService), i0.ɵɵinject(AccountService), i0.ɵɵinject(NetworkService), i0.ɵɵinject(i1$1.TranslateService), i0.ɵɵinject(i1$4.ToastController), i0.ɵɵinject(ENVIRONMENT)); }, token: UserEventService, providedIn: "root" });
|
|
24306
24336
|
UserEventService.decorators = [
|
|
24307
24337
|
{ type: Injectable, args: [{ providedIn: 'root' },] }
|
|
24308
24338
|
];
|
|
@@ -24687,7 +24717,7 @@ class PersonService extends BaseEntityService {
|
|
|
24687
24717
|
return target;
|
|
24688
24718
|
}
|
|
24689
24719
|
}
|
|
24690
|
-
PersonService.ɵprov =
|
|
24720
|
+
PersonService.ɵprov = i0.ɵɵdefineInjectable({ factory: function PersonService_Factory() { return new PersonService(i0.ɵɵinject(GraphqlService), i0.ɵɵinject(PlatformService), i0.ɵɵinject(NetworkService), i0.ɵɵinject(EntitiesStorage)); }, token: PersonService, providedIn: "root" });
|
|
24691
24721
|
PersonService.decorators = [
|
|
24692
24722
|
{ type: Injectable, args: [{ providedIn: 'root' },] }
|
|
24693
24723
|
];
|
|
@@ -24718,7 +24748,7 @@ class PersonValidatorService {
|
|
|
24718
24748
|
return this.formBuilder.group(formConfig);
|
|
24719
24749
|
}
|
|
24720
24750
|
}
|
|
24721
|
-
PersonValidatorService.ɵprov =
|
|
24751
|
+
PersonValidatorService.ɵprov = i0.ɵɵdefineInjectable({ factory: function PersonValidatorService_Factory() { return new PersonValidatorService(i0.ɵɵinject(i1$6.FormBuilder), i0.ɵɵinject(AccountValidatorService)); }, token: PersonValidatorService, providedIn: "root" });
|
|
24722
24752
|
PersonValidatorService.decorators = [
|
|
24723
24753
|
{ type: Injectable, args: [{ providedIn: 'root' },] }
|
|
24724
24754
|
];
|
|
@@ -24924,16 +24954,16 @@ AdminModule.decorators = [
|
|
|
24924
24954
|
];
|
|
24925
24955
|
AdminModule.ctorParameters = () => [];
|
|
24926
24956
|
|
|
24927
|
-
const ɵ0
|
|
24957
|
+
const ɵ0 = {
|
|
24928
24958
|
profile: 'ADMIN'
|
|
24929
24959
|
};
|
|
24930
|
-
const routes
|
|
24960
|
+
const routes = [
|
|
24931
24961
|
{
|
|
24932
24962
|
path: 'users',
|
|
24933
24963
|
pathMatch: 'full',
|
|
24934
24964
|
component: UsersPage,
|
|
24935
24965
|
canActivate: [AuthGuardService],
|
|
24936
|
-
data: ɵ0
|
|
24966
|
+
data: ɵ0
|
|
24937
24967
|
}
|
|
24938
24968
|
];
|
|
24939
24969
|
class AdminRoutingModule {
|
|
@@ -24943,13 +24973,13 @@ AdminRoutingModule.decorators = [
|
|
|
24943
24973
|
imports: [
|
|
24944
24974
|
SharedRoutingModule,
|
|
24945
24975
|
AdminModule,
|
|
24946
|
-
RouterModule.forChild(routes
|
|
24976
|
+
RouterModule.forChild(routes)
|
|
24947
24977
|
],
|
|
24948
24978
|
exports: [RouterModule]
|
|
24949
24979
|
},] }
|
|
24950
24980
|
];
|
|
24951
24981
|
|
|
24952
|
-
const ErrorCodes
|
|
24982
|
+
const ErrorCodes = {
|
|
24953
24983
|
LOAD_PERSONS_ERROR: 100,
|
|
24954
24984
|
SAVE_PERSONS_ERROR: 101,
|
|
24955
24985
|
DELETE_PERSONS_ERROR: 102,
|
|
@@ -24961,5 +24991,5 @@ const ErrorCodes$2 = {
|
|
|
24961
24991
|
* Generated bundle index. Do not edit.
|
|
24962
24992
|
*/
|
|
24963
24993
|
|
|
24964
|
-
export { APP_ABOUT_DEVELOPERS, APP_ABOUT_PARTNERS, APP_CONFIG_OPTIONS, APP_FORM_ERROR_I18N_KEYS, APP_GRAPHQL_TYPE_POLICIES, APP_HOME_BUTTONS, APP_LOCALES, APP_LOCAL_SETTINGS, APP_LOCAL_SETTINGS_OPTIONS, APP_LOCAL_STORAGE_TYPE_POLICIES, APP_MENU_ITEMS, APP_TESTING_PAGES, AboutModal, Account, AccountPage, AccountService, AccountToStringPipe, ActionsColumnComponent, AdminModule, AdminRoutingModule, Alerts, AnimationState, AppEditor, AppEditorOptions, AppEntityEditor, AppForm, AppFormField, AppFormProvider, AppFormUtils, AppGestureConfig, AppGraphQLModule, AppHelpModal, AppInMemoryTable, AppInstallUpgradeCard, AppListForm, AppLoadingSpinner, AppMenuModule, AppNullForm, AppPropertiesForm, AppTabEditor, AppTabEditorOptions, AppTable, AppTableDataSourceOptions, AppTableUtils, AppValidatorService, AppendToInputDirective, ArrayFilterPipe, ArrayFirstPipe, ArrayIncludesPipe, ArrayLengthPipe, ArrayPluckPipe, AudioProvider, AuthForm, AuthGuardService, AuthModal, AutocompleteTestPage, AutofocusDirective, Base58, BaseEntityService, BaseGraphqlService, BaseGraphqlServiceOptions, BaseReferential, Beans, CORE_CONFIG_OPTIONS, CellValueChangeListener, ChipsTestPage, Color, ColorScale, ComponentDirtyGuard, ConfigService, Configuration, CoreModule, CryptoService, DATE_ISO_PATTERN, DATE_UNIX_MS_TIMESTAMP, DATE_UNIX_TIMESTAMP, DEFAULT_PAGE_SIZE, DEFAULT_PAGE_SIZE_OPTIONS, DEFAULT_PLACEHOLDER_CHAR, DEFAULT_REQUIRED_COLUMNS, DateDiffDurationPipe, DateFormatPipe, DateFromNowPipe, DateTimeTestPage, DateUtils, Department, DepartmentToStringPipe, DurationPipe, ENTITIES_STORAGE_KEY_PREFIX, ENVIRONMENT, EmptyArrayPipe, EntitiesService, EntitiesStorage, EntitiesTableDataSource, Entity, EntityClass, EntityClasses, EntityFilter, EntityFilterUtils, EntityMetadataComponent, EntityStore, EntityUtils, Environment, ErrorCodes
|
|
24994
|
+
export { APP_ABOUT_DEVELOPERS, APP_ABOUT_PARTNERS, APP_CONFIG_OPTIONS, APP_FORM_ERROR_I18N_KEYS, APP_GRAPHQL_TYPE_POLICIES, APP_HOME_BUTTONS, APP_LOCALES, APP_LOCAL_SETTINGS, APP_LOCAL_SETTINGS_OPTIONS, APP_LOCAL_STORAGE_TYPE_POLICIES, APP_MENU_ITEMS, APP_TESTING_PAGES, AboutModal, Account, AccountPage, AccountService, AccountToStringPipe, ActionsColumnComponent, AdminModule, AdminRoutingModule, Alerts, AnimationState, AppEditor, AppEditorOptions, AppEntityEditor, AppForm, AppFormField, AppFormProvider, AppFormUtils, AppGestureConfig, AppGraphQLModule, AppHelpModal, AppInMemoryTable, AppInstallUpgradeCard, AppListForm, AppLoadingSpinner, AppMenuModule, AppNullForm, AppPropertiesForm, AppTabEditor, AppTabEditorOptions, AppTable, AppTableDataSourceOptions, AppTableUtils, AppValidatorService, AppendToInputDirective, ArrayFilterPipe, ArrayFirstPipe, ArrayIncludesPipe, ArrayLengthPipe, ArrayPluckPipe, AudioProvider, AuthForm, AuthGuardService, AuthModal, AutocompleteTestPage, AutofocusDirective, Base58, BaseEntityService, BaseGraphqlService, BaseGraphqlServiceOptions, BaseReferential, Beans, CORE_CONFIG_OPTIONS, CellValueChangeListener, ChipsTestPage, Color, ColorScale, ComponentDirtyGuard, ConfigService, Configuration, CoreModule, CryptoService, DATE_ISO_PATTERN, DATE_UNIX_MS_TIMESTAMP, DATE_UNIX_TIMESTAMP, DEFAULT_PAGE_SIZE, DEFAULT_PAGE_SIZE_OPTIONS, DEFAULT_PLACEHOLDER_CHAR, DEFAULT_REQUIRED_COLUMNS, DateDiffDurationPipe, DateFormatPipe, DateFromNowPipe, DateTimeTestPage, DateUtils, Department, DepartmentToStringPipe, DurationPipe, ENTITIES_STORAGE_KEY_PREFIX, ENVIRONMENT, EmptyArrayPipe, EntitiesService, EntitiesStorage, EntitiesTableDataSource, Entity, EntityClass, EntityClasses, EntityFilter, EntityFilterUtils, EntityMetadataComponent, EntityStore, EntityUtils, Environment, ErrorCodes, EvenPipe, FileService, FileSizePipe, FormArrayHelper, FormButtonsBarComponent, FormButtonsBarToken, FormErrorTranslatePipe, FormErrorTranslator, FormFieldValuesHolder, Fragments, GraphqlService, HAMMER_PRESS_TIME, HAMMER_TAP_TIME, HighlightPipe, HomePage, Hotkeys, HotkeysDialogComponent, InMemoryEntitiesService, IsLoginAccountPipe, IsNilOrBlankPipe, IsNotNilOrBlankPipe, IsNotOnFieldModePipe, IsOnFieldModePipe, JobUtils, KEYBOARD_HIDE_DELAY_MS, LAT_LONG_DEFAULT_MAX_DECIMALS, LAT_LONG_PATTERNS, LatLongFormatPipe, LatLongTestPage, LatitudeFormatPipe, LocalSettingsService, LongitudeFormatPipe, MINIFY_ENTITY_FOR_LOCAL_STORAGE, MINIFY_ENTITY_FOR_POD, MapGetPipe, MapKeysPipe, MapValuesPipe, MatAutocompleteConfigHolder, MatAutocompleteField, MatBooleanField, MatChipsField, MatDate, MatDateShort, MatDateTime, MatDuration, MatLatLongField, MatNumpadComponent, MatNumpadContainerComponent, MatNumpadContent, MatPaginatorI18n, MatStepperI18n, MatSwipeField, MaterialChipsModule, MaterialTestingModule, MaterialTestingPage, MathAbsPipe, MenuComponent, MenuItems, MenuService, ModalToolbarComponent, NetworkService, NgInitDirective, NotEmptyArrayPipe, NumberFormatPipe, NumpadDirective, OddPipe, PRIORITIZED_AUTHORITIES, PUBKEY_REGEXP, Peer, Person, PersonFilter, PersonFragments, PersonService, PersonToStringPipe, PersonUtils, PersonValidatorService, PlatformService, ProgressBarService, ProgressInterceptor, PropertyGetPipe, RESERVED_END_COLUMNS, RESERVED_START_COLUMNS, Referential, ReferentialRef, ReferentialUtils, RegisterConfirmPage, SETTINGS_DISPLAY_COLUMNS, SETTINGS_FILTER, SETTINGS_PAGE_SIZE, SETTINGS_SORTED_COLUMN, SETTINGS_STORAGE_KEY, SETTINGS_TRANSIENT_PROPERTIES, SPACE_PLACEHOLDER_CHAR, SelectPeerModal, SettingsPage, SharedDirectivesModule, SharedFormArrayValidators, SharedFormGroupValidators, SharedHotkeysModule, SharedMatAutocompleteModule, SharedMatBooleanModule, SharedMatDateTimeModule, SharedMatDurationModule, SharedMatLatLongModule, SharedMatNumpadModule, SharedMatSwipeModule, SharedMaterialModule, SharedModule, SharedPipesModule, SharedRoutingModule, SharedTestingModule, SharedValidators, SocialModule, Software, StartableService, StatusById, StatusIds, StatusList, StrLengthPipe, SwipeTestPage, TableSelectColumnsComponent, ToStringPipe, Toasts, ToolbarComponent, ToolbarToken, TranslatablePipe, TranslateContextPipe, TranslateContextService, UserEvent, UserEventFilter, UserEventService, UserEventTypes, UserEventsTable, UserSettings, UsersPage, accountToString, adaptValueToControl, addValueInArray, arrayDistinct, arrayGroupBy, arraySize, asInputElement, canHaveFocus, capitalizeFirstLetter, chainPromises, changeCaseToUnderscore, clearValueInArray, copyEntity2Form, createPromiseEvent, createPromiseEventEmitter, departmentToString, departmentsToString, disableControls, emitPromiseEvent, entityToString, equals, equalsOrNil, fadeInAnimation, fadeInOutAnimation, filterFalse, filterNotNil, filterNumberInput, filterTrue, firstArrayValue, firstFalse, firstFalsePromise, firstNotNil, firstNotNilPromise, firstTrue, firstTruePromise, focusInput, focusNextInput, focusPreviousInput, formatLatitude, formatLongitude, fromDateISOString, fromScrollEndEvent, fromUnixMsTimestamp, fromUnixTimestamp, getCaretPosition, getColorContrast, getColorShade, getColorTint, getConnectionType, getControlFromPath, getFocusableInputElements, getFormErrors, getFormValueFromEntity, getProperty, getPropertyByPath, getPropertyByPathAsString, getRandomImage, hexToRgb, hexToRgbArray, isControlHasInput, isEmptyArray, isInputElement, isInstanceOf, isInt, isNil, isNilOrBlank, isNilOrNaN, isNotEmptyArray, isNotNil, isNotNilOrBlank, isNotNilOrNaN, isNotNilString, isNumber, isNumberRange, joinProperties, joinPropertiesPath, logFormErrors, markAllAsTouched, markAsUntouched, markControlAsTouched, markFormGroupAsTouched, matchUpperCase, mergeLoadResult, mixHex, moveInputCaretToSeparator, noTrailingSlash, notNilOrDefault, nullIfUndefined, parseLatitudeOrLongitude, propertiesPathComparator, propertyComparator, propertyPathComparator, referentialToString, referentialsToString, remove, removeAll, removeDiacritics, removeDuplicatesFromArray, removeEnd, removeValueInArray, replaceAll, resetCalculatedValue, resizeArray, rgbArrayToHex, rgbToHex, round, scrollFactory, selectInputContent, selectInputRange, setCalculatedValue, setTabIndex, sleep, slideInOutAnimation, slideUpDownAnimation, sort, splitById, splitByProperty, startsWithUpperCase, suggestFromArray, suggestFromStringArray, tabindexComparator, toBoolean, toDateISOString, toDuration, toFloat, toInt, toNotNil, toNumber, trimEmptyToNull, uncapitalizeFirstLetter, updateValueAndValidity, waitFor, waitForTrue, waitIdle, waitWhilePending, CustomReuseStrategy as ɵa, MatNumpadDomService as ɵb, SharedMatBadgeIconModule as ɵc, MatBadgeIconDirective as ɵd, isFocusableElement as ɵe, MatBadgeIconTestPage as ɵf, RegisterForm as ɵg, AccountValidatorService as ɵh, RegisterModal as ɵi, UserSettingsValidatorService as ɵj, LocalSettingsValidatorService as ɵk, AppIconComponent as ɵl };
|
|
24965
24995
|
//# sourceMappingURL=sumaris-net.ngx-components.js.map
|