@sumaris-net/ngx-components 1.16.1 → 1.17.0

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.
@@ -1,12 +1,9 @@
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, TemplateRef, ViewContainerRef, HostBinding, HostListener, ViewChildren, ComponentFactoryResolver, ApplicationRef, Injector, Renderer2, ViewEncapsulation } from '@angular/core';
3
- import * as i1$3 from '@angular/common';
1
+ import { InjectionToken, EventEmitter, Component, forwardRef, ChangeDetectionStrategy, ChangeDetectorRef, Optional, Input, Output, ViewChild, ɵɵdefineInjectable, ɵɵinject, Pipe, Injectable, Directive, Inject, NgModule, ElementRef, TemplateRef, ViewContainerRef, HostBinding, HostListener, ViewChildren, ComponentFactoryResolver, ApplicationRef, INJECTOR, Injector, Renderer2, ViewEncapsulation } from '@angular/core';
4
2
  import { CommonModule, DOCUMENT, Location } from '@angular/common';
5
3
  import { CdkTableModule } from '@angular/cdk/table';
6
4
  import { A11yModule } from '@angular/cdk/a11y';
7
5
  import { OverlayModule, OverlayContainer, FullscreenOverlayContainer, Overlay } from '@angular/cdk/overlay';
8
6
  import { ScrollingModule } from '@angular/cdk/scrolling';
9
- import * as i1$2 from '@angular/material/core';
10
7
  import { DateAdapter, MatCommonModule, MatRippleModule } from '@angular/material/core';
11
8
  import { MatTableModule, MatTable, MatColumnDef } from '@angular/material/table';
12
9
  import { MatSortModule, MatSort } from '@angular/material/sort';
@@ -30,21 +27,16 @@ import { MatProgressBarModule } from '@angular/material/progress-bar';
30
27
  import { MatRadioModule } from '@angular/material/radio';
31
28
  import { MatBadgeModule } from '@angular/material/badge';
32
29
  import { MatSlideToggleModule } from '@angular/material/slide-toggle';
33
- import * as i2$1 from '@angular/material/dialog';
34
30
  import { MatDialogModule, MAT_DIALOG_DATA, MatDialog } from '@angular/material/dialog';
35
31
  import { MatAutocomplete, MatAutocompleteTrigger, MatAutocompleteModule, MAT_AUTOCOMPLETE_SCROLL_STRATEGY, MAT_AUTOCOMPLETE_DEFAULT_OPTIONS } from '@angular/material/autocomplete';
36
32
  import { __awaiter, __decorate } from 'tslib';
37
- import * as i1$6 from '@angular/forms';
38
33
  import { NG_VALUE_ACCESSOR, FormGroupDirective, AbstractControl, FormGroup, FormArray, FormControl, ReactiveFormsModule, Validators, FormBuilder } from '@angular/forms';
39
34
  import { timer, merge, fromEvent, BehaviorSubject, Subscription, Subject, isObservable, from, of, noop as noop$9, Observable, defer, forkJoin, combineLatest, EMPTY } from 'rxjs';
40
35
  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';
42
36
  import { TranslateService, TranslateModule } from '@ngx-translate/core';
43
- import * as i1$4 from '@ionic/angular';
44
37
  import { IonicModule, Platform, IonRouterOutlet, ModalController, IonicSafeString, createAnimation, ToastController, PopoverController, AlertController, IonicRouteStrategy, NavParams, MenuController, IonContent, IonInfiniteScroll } from '@ionic/angular';
45
38
  import * as momentImported from 'moment';
46
39
  import { isMoment } from 'moment';
47
- import * as i1 from '@angular/material-moment-adapter';
48
40
  import { MomentDateAdapter, MatMomentDateModule } from '@angular/material-moment-adapter';
49
41
  import * as momentTZImported from 'moment-timezone';
50
42
  import { Keyboard } from '@ionic-native/keyboard/ngx';
@@ -55,38 +47,32 @@ import { trigger, state, style, transition, animate } from '@angular/animations'
55
47
  import { MatDividerModule } from '@angular/material/divider';
56
48
  import { MatTooltipModule } from '@angular/material/tooltip';
57
49
  import { MatChipsModule } from '@angular/material/chips';
58
- import * as i3$3 from '@angular/router';
59
50
  import { Router, ActivatedRoute, RouterModule, RouteReuseStrategy } from '@angular/router';
60
- import * as i1$5 from '@angular/platform-browser';
61
51
  import { HammerGestureConfig, EventManager } from '@angular/platform-browser';
62
- import * as i2$2 from '@angular/common/http';
63
52
  import { HttpResponse, HttpClient, HttpHeaders, HttpEventType, HTTP_INTERCEPTORS, HttpClientModule } from '@angular/common/http';
64
53
  import { ColorPickerModule } from 'ngx-color-picker';
65
- import { NativeAudio } from '@ionic-native/native-audio/ngx';
66
- import { Vibration } from '@ionic-native/vibration/ngx';
54
+ import { NativeAudio as NativeAudio$1 } from '@ionic-native/native-audio/ngx';
55
+ import { Vibration as Vibration$1 } from '@ionic-native/vibration/ngx';
67
56
  import { AudioManagement } from '@ionic-native/audio-management/ngx';
68
- import * as i2 from '@ionic-native/native-audio/ngx/index';
69
- import * as i3 from '@ionic-native/vibration/ngx/index';
70
- import * as i4 from '@ionic-native/audio-management/ngx/index';
57
+ import { NativeAudio } from '@ionic-native/native-audio/ngx/index';
58
+ import { Vibration } from '@ionic-native/vibration/ngx/index';
59
+ import { AudioManagement as AudioManagement$1 } from '@ionic-native/audio-management/ngx/index';
71
60
  import * as uuidv4Imported from 'uuid/v4';
72
61
  import { DragDropModule } from '@angular/cdk/drag-drop';
73
62
  import { MarkdownModule } from 'ngx-markdown';
74
63
  import { sign, box, hash, verify } from 'tweetnacl';
75
- import * as i3$1 from '@ionic/storage';
76
64
  import { Storage, IonicStorageModule } from '@ionic/storage';
77
65
  import 'zone.js/dist/zone-error';
78
- import { SplashScreen } from '@ionic-native/splash-screen/ngx';
79
- import { Connection, Network } from '@ionic-native/network/ngx';
80
- import { CacheService, CacheModule } from 'ionic-cache';
81
- import * as i6 from 'ionic-cache/dist/cache.service';
82
- import * as i9 from '@ionic-native/network/ngx/index';
83
- import * as i10 from '@ionic-native/splash-screen/ngx/index';
84
- import { StatusBar } from '@ionic-native/status-bar/ngx';
85
- import * as i2$4 from '@angular/cdk/platform';
66
+ import { SplashScreen as SplashScreen$1 } from '@ionic-native/splash-screen/ngx';
67
+ import { Connection, Network as Network$1 } from '@ionic-native/network/ngx';
68
+ import { CacheService as CacheService$1, CacheModule } from 'ionic-cache';
69
+ import { CacheService } from 'ionic-cache/dist/cache.service';
70
+ import { Network } from '@ionic-native/network/ngx/index';
71
+ import { SplashScreen } from '@ionic-native/splash-screen/ngx/index';
72
+ import { StatusBar as StatusBar$1 } from '@ionic-native/status-bar/ngx';
86
73
  import { Platform as Platform$1 } from '@angular/cdk/platform';
87
- import { InAppBrowser } from '@ionic-native/in-app-browser/ngx';
74
+ import { InAppBrowser as InAppBrowser$1 } from '@ionic-native/in-app-browser/ngx';
88
75
  import { ApolloLink, NetworkStatus, InMemoryCache, ApolloClient, gql } from '@apollo/client/core';
89
- import * as i2$3 from 'apollo-angular';
90
76
  import { Apollo } from 'apollo-angular';
91
77
  import { WebSocketLink } from '@apollo/client/link/ws';
92
78
  import { getMainDefinition } from '@apollo/client/utilities';
@@ -94,14 +80,13 @@ import { RetryLink } from '@apollo/client/link/retry';
94
80
  import QueueLink from 'apollo-link-queue';
95
81
  import SerializingLink from 'apollo-link-serialize';
96
82
  import loggerLink from 'apollo-link-logger';
97
- import * as i3$2 from 'apollo-angular/http';
98
83
  import { HttpLink } from 'apollo-angular/http';
99
84
  import { IonicStorageWrapper, persistCache } from 'apollo3-cache-persist';
100
- import { NotificationVisibility, Downloader } from '@ionic-native/downloader/ngx';
101
- import * as i14 from '@ionic-native/status-bar/ngx/index';
102
- import * as i15 from '@ionic-native/keyboard/ngx/index';
103
- import * as i17 from '@ionic-native/in-app-browser/ngx/index';
104
- import * as i18 from '@ionic-native/downloader/ngx/index';
85
+ import { NotificationVisibility, Downloader as Downloader$1 } from '@ionic-native/downloader/ngx';
86
+ import { StatusBar } from '@ionic-native/status-bar/ngx/index';
87
+ import { Keyboard as Keyboard$1 } from '@ionic-native/keyboard/ngx/index';
88
+ import { InAppBrowser } from '@ionic-native/in-app-browser/ngx/index';
89
+ import { Downloader } from '@ionic-native/downloader/ngx/index';
105
90
  import { CdkTextareaAutosize } from '@angular/cdk/text-field';
106
91
  import { ValidatorService, TableDataSource } from '@e-is/ngx-material-table';
107
92
  import { SelectionModel } from '@angular/cdk/collections';
@@ -994,14 +979,14 @@ class MatAutocompleteConfigHolder {
994
979
  return this.fields[fieldName] || this.add(fieldName);
995
980
  }
996
981
  }
997
- const noop$8 = (_) => { };
998
- const ɵ0$c = noop$8;
982
+ const noop = (_) => { };
983
+ const ɵ0 = noop;
999
984
  class MatAutocompleteField {
1000
985
  constructor(cd, formGroupDir) {
1001
986
  this.cd = cd;
1002
987
  this.formGroupDir = formGroupDir;
1003
- this._onChangeCallback = noop$8;
1004
- this._onTouchedCallback = noop$8;
988
+ this._onChangeCallback = noop;
989
+ this._onTouchedCallback = noop;
1005
990
  this.logPrefix = '[mat-autocomplete] ';
1006
991
  this.formControlName = null;
1007
992
  this.required = false;
@@ -1721,7 +1706,7 @@ class DateFormatPipe {
1721
1706
  return this.dateAdapter.format(date, displayFormat);
1722
1707
  }
1723
1708
  }
1724
- DateFormatPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function DateFormatPipe_Factory() { return new DateFormatPipe(i0.ɵɵinject(i1.MomentDateAdapter), i0.ɵɵinject(i1$1.TranslateService)); }, token: DateFormatPipe, providedIn: "root" });
1709
+ DateFormatPipe.ɵprov = ɵɵdefineInjectable({ factory: function DateFormatPipe_Factory() { return new DateFormatPipe(ɵɵinject(MomentDateAdapter), ɵɵinject(TranslateService)); }, token: DateFormatPipe, providedIn: "root" });
1725
1710
  DateFormatPipe.decorators = [
1726
1711
  { type: Pipe, args: [{
1727
1712
  name: 'dateFormat'
@@ -1733,7 +1718,7 @@ DateFormatPipe.ctorParameters = () => [
1733
1718
  { type: TranslateService }
1734
1719
  ];
1735
1720
 
1736
- const moment$7 = momentImported;
1721
+ const moment = momentImported;
1737
1722
  class DateDiffDurationPipe {
1738
1723
  constructor(dateAdapter, translate) {
1739
1724
  this.dateAdapter = dateAdapter;
@@ -1749,17 +1734,17 @@ class DateDiffDurationPipe {
1749
1734
  return this.format(startDate, endDate);
1750
1735
  }
1751
1736
  format(startDate, endDate) {
1752
- const duration = moment$7.duration(endDate.diff(startDate));
1737
+ const duration = moment.duration(endDate.diff(startDate));
1753
1738
  if (duration.asMinutes() < 0)
1754
1739
  return '';
1755
- const timeDuration = moment$7(0)
1740
+ const timeDuration = moment(0)
1756
1741
  .hour(duration.hours())
1757
1742
  .minute(duration.minutes());
1758
1743
  const days = Math.floor(duration.asDays());
1759
1744
  return (days > 0 ? days.toString() + (this.dayUnit + ' ') : '') + timeDuration.format('HH:mm');
1760
1745
  }
1761
1746
  }
1762
- 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" });
1747
+ DateDiffDurationPipe.ɵprov = ɵɵdefineInjectable({ factory: function DateDiffDurationPipe_Factory() { return new DateDiffDurationPipe(ɵɵinject(DateAdapter), ɵɵinject(TranslateService)); }, token: DateDiffDurationPipe, providedIn: "root" });
1763
1748
  DateDiffDurationPipe.decorators = [
1764
1749
  { type: Pipe, args: [{
1765
1750
  name: 'dateDiffDuration'
@@ -1780,7 +1765,7 @@ class DateFromNowPipe {
1780
1765
  return date ? date.fromNow(args && args.withoutSuffix) : '';
1781
1766
  }
1782
1767
  }
1783
- DateFromNowPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function DateFromNowPipe_Factory() { return new DateFromNowPipe(i0.ɵɵinject(i1.MomentDateAdapter)); }, token: DateFromNowPipe, providedIn: "root" });
1768
+ DateFromNowPipe.ɵprov = ɵɵdefineInjectable({ factory: function DateFromNowPipe_Factory() { return new DateFromNowPipe(ɵɵinject(MomentDateAdapter)); }, token: DateFromNowPipe, providedIn: "root" });
1784
1769
  DateFromNowPipe.decorators = [
1785
1770
  { type: Pipe, args: [{
1786
1771
  name: 'dateFromNow'
@@ -1849,7 +1834,7 @@ function formatToDD(value, opts) {
1849
1834
  value *= -1;
1850
1835
  }
1851
1836
  }
1852
- let degrees = roundFloat$1(value, opts.maxDecimals).toString();
1837
+ let degrees = roundFloat(value, opts.maxDecimals).toString();
1853
1838
  // Add sign
1854
1839
  let sign = negative ? '-' : '+';
1855
1840
  if (opts.placeholderChar) {
@@ -1900,7 +1885,7 @@ function formatToDDMMSS(value, opts) {
1900
1885
  }
1901
1886
  let degrees = Math.trunc(value);
1902
1887
  let minutes = Math.trunc((value - degrees) * 60);
1903
- let seconds = roundFloat$1(((value - degrees) * 60 - minutes) * 60, opts.maxDecimals);
1888
+ let seconds = roundFloat(((value - degrees) * 60 - minutes) * 60, opts.maxDecimals);
1904
1889
  while (seconds >= 60) {
1905
1890
  seconds -= 60;
1906
1891
  minutes += 1;
@@ -1968,7 +1953,7 @@ function formatToDDMM(value, opts) {
1968
1953
  }
1969
1954
  }
1970
1955
  let degrees = Math.trunc(value);
1971
- let minutes = roundFloat$1((value - degrees) * 60, opts.maxDecimals);
1956
+ let minutes = roundFloat((value - degrees) * 60, opts.maxDecimals);
1972
1957
  while (minutes >= 60) {
1973
1958
  minutes -= 60;
1974
1959
  degrees += 1;
@@ -2019,15 +2004,15 @@ function parseLatitudeOrLongitude(input, pattern, maxDecimals, placeholderChar)
2019
2004
  return NaN;
2020
2005
  }
2021
2006
  if (pattern === 'DD')
2022
- return roundFloat$1(degrees, maxDecimals);
2007
+ return roundFloat(degrees, maxDecimals);
2023
2008
  const minutes = (pattern === 'DDMMSS' || pattern === 'DDMM') && parts[1] && parseFloat(parts[1].replace(/,/g, '.')) || 0;
2024
2009
  const seconds = (pattern === 'DDMMSS') && parts[2] && parseFloat(parts[2].replace(/,/g, '.')) || 0;
2025
2010
  const direction = ((pattern === 'DDMMSS') && parts[3]) || ((pattern === 'DDMM') && parts[2]) || undefined;
2026
2011
  const sign = (direction && (direction === 's' || direction === 'S' || direction === 'w' || direction === 'W')) ? -1 : 1;
2027
2012
  degrees = sign * (degrees + minutes / 60 + seconds / (60 * 60));
2028
- return roundFloat$1(degrees, maxDecimals);
2013
+ return roundFloat(degrees, maxDecimals);
2029
2014
  }
2030
- function roundFloat$1(input, maxDecimals) {
2015
+ function roundFloat(input, maxDecimals) {
2031
2016
  if (maxDecimals > 0) {
2032
2017
  const powDecimal = Math.pow(10, maxDecimals);
2033
2018
  return Math.trunc(input * powDecimal + 0.5) / powDecimal;
@@ -2047,7 +2032,7 @@ class LatLongFormatPipe {
2047
2032
  return ((!args.type || args.type !== 'latitude') ? formatLongitude : formatLatitude)(value, args);
2048
2033
  }
2049
2034
  }
2050
- LatLongFormatPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function LatLongFormatPipe_Factory() { return new LatLongFormatPipe(); }, token: LatLongFormatPipe, providedIn: "root" });
2035
+ LatLongFormatPipe.ɵprov = ɵɵdefineInjectable({ factory: function LatLongFormatPipe_Factory() { return new LatLongFormatPipe(); }, token: LatLongFormatPipe, providedIn: "root" });
2051
2036
  LatLongFormatPipe.decorators = [
2052
2037
  { type: Pipe, args: [{
2053
2038
  name: 'latLongFormat'
@@ -2059,7 +2044,7 @@ class LatitudeFormatPipe {
2059
2044
  this.transform = formatLatitude;
2060
2045
  }
2061
2046
  }
2062
- LatitudeFormatPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function LatitudeFormatPipe_Factory() { return new LatitudeFormatPipe(); }, token: LatitudeFormatPipe, providedIn: "root" });
2047
+ LatitudeFormatPipe.ɵprov = ɵɵdefineInjectable({ factory: function LatitudeFormatPipe_Factory() { return new LatitudeFormatPipe(); }, token: LatitudeFormatPipe, providedIn: "root" });
2063
2048
  LatitudeFormatPipe.decorators = [
2064
2049
  { type: Pipe, args: [{
2065
2050
  name: 'latitudeFormat'
@@ -2071,7 +2056,7 @@ class LongitudeFormatPipe {
2071
2056
  this.transform = formatLongitude;
2072
2057
  }
2073
2058
  }
2074
- LongitudeFormatPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function LongitudeFormatPipe_Factory() { return new LongitudeFormatPipe(); }, token: LongitudeFormatPipe, providedIn: "root" });
2059
+ LongitudeFormatPipe.ɵprov = ɵɵdefineInjectable({ factory: function LongitudeFormatPipe_Factory() { return new LongitudeFormatPipe(); }, token: LongitudeFormatPipe, providedIn: "root" });
2075
2060
  LongitudeFormatPipe.decorators = [
2076
2061
  { type: Pipe, args: [{
2077
2062
  name: 'longitudeFormat'
@@ -2091,7 +2076,7 @@ class NumberFormatPipe {
2091
2076
  }
2092
2077
  }
2093
2078
  }
2094
- NumberFormatPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function NumberFormatPipe_Factory() { return new NumberFormatPipe(); }, token: NumberFormatPipe, providedIn: "root" });
2079
+ NumberFormatPipe.ɵprov = ɵɵdefineInjectable({ factory: function NumberFormatPipe_Factory() { return new NumberFormatPipe(); }, token: NumberFormatPipe, providedIn: "root" });
2095
2080
  NumberFormatPipe.decorators = [
2096
2081
  { type: Pipe, args: [{
2097
2082
  name: 'numberFormat'
@@ -2131,7 +2116,7 @@ class HighlightPipe {
2131
2116
  }
2132
2117
  }
2133
2118
  }
2134
- HighlightPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function HighlightPipe_Factory() { return new HighlightPipe(); }, token: HighlightPipe, providedIn: "root" });
2119
+ HighlightPipe.ɵprov = ɵɵdefineInjectable({ factory: function HighlightPipe_Factory() { return new HighlightPipe(); }, token: HighlightPipe, providedIn: "root" });
2135
2120
  HighlightPipe.decorators = [
2136
2121
  { type: Pipe, args: [{
2137
2122
  name: 'highlight'
@@ -2196,7 +2181,7 @@ FileSizePipe.decorators = [
2196
2181
  { type: Pipe, args: [{ name: 'fileSize' },] }
2197
2182
  ];
2198
2183
 
2199
- const moment$6 = momentImported;
2184
+ const moment$1 = momentImported;
2200
2185
  const tz = momentTZImported;
2201
2186
  const DATE_UNIX_TIMESTAMP = 'X';
2202
2187
  const DATE_UNIX_MS_TIMESTAMP = 'x';
@@ -2273,32 +2258,32 @@ function fromDateISOString(value) {
2273
2258
  if (!value || isMoment(value))
2274
2259
  return value;
2275
2260
  // Parse the input value, as a ISO date time
2276
- const date = moment$6(value, DATE_ISO_PATTERN);
2261
+ const date = moment$1(value, DATE_ISO_PATTERN);
2277
2262
  if (date.isValid())
2278
2263
  return date;
2279
2264
  // Not valid: trying to convert from unix timestamp
2280
2265
  if (typeof value === 'string') {
2281
2266
  console.warn('Wrong date format - Trying to convert from local time: ' + value);
2282
2267
  if (value.length === 10) {
2283
- return moment$6(value, DATE_UNIX_TIMESTAMP);
2268
+ return moment$1(value, DATE_UNIX_TIMESTAMP);
2284
2269
  }
2285
2270
  else if (value.length === 13) {
2286
- return moment$6(value, DATE_UNIX_MS_TIMESTAMP);
2271
+ return moment$1(value, DATE_UNIX_MS_TIMESTAMP);
2287
2272
  }
2288
2273
  }
2289
2274
  console.warn('Unable to parse date: ' + value);
2290
2275
  return undefined;
2291
2276
  }
2292
2277
  function fromUnixTimestamp(timeInSec) {
2293
- return moment$6(timeInSec, DATE_UNIX_TIMESTAMP);
2278
+ return moment$1(timeInSec, DATE_UNIX_TIMESTAMP);
2294
2279
  }
2295
2280
  function fromUnixMsTimestamp(timeInMs) {
2296
- return moment$6(timeInMs, DATE_UNIX_MS_TIMESTAMP);
2281
+ return moment$1(timeInMs, DATE_UNIX_MS_TIMESTAMP);
2297
2282
  }
2298
2283
  function toDuration(value, unit) {
2299
2284
  if (!value)
2300
2285
  return undefined;
2301
- const duration = moment$6.duration(value, unit);
2286
+ const duration = moment$1.duration(value, unit);
2302
2287
  // fix 990+ ms
2303
2288
  if (duration.milliseconds() >= 990) {
2304
2289
  duration.add(1000 - duration.milliseconds(), 'ms');
@@ -2327,7 +2312,7 @@ class DurationPipe {
2327
2312
  return (days > 0 ? days.toString() + (this.dayUnit + ' ') : '') + hour + ':' + minute;
2328
2313
  }
2329
2314
  }
2330
- DurationPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function DurationPipe_Factory() { return new DurationPipe(i0.ɵɵinject(i1$1.TranslateService)); }, token: DurationPipe, providedIn: "root" });
2315
+ DurationPipe.ɵprov = ɵɵdefineInjectable({ factory: function DurationPipe_Factory() { return new DurationPipe(ɵɵinject(TranslateService)); }, token: DurationPipe, providedIn: "root" });
2331
2316
  DurationPipe.decorators = [
2332
2317
  { type: Pipe, args: [{
2333
2318
  name: 'duration'
@@ -2348,7 +2333,7 @@ class MathAbsPipe {
2348
2333
  }
2349
2334
  }
2350
2335
  }
2351
- MathAbsPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function MathAbsPipe_Factory() { return new MathAbsPipe(); }, token: MathAbsPipe, providedIn: "root" });
2336
+ MathAbsPipe.ɵprov = ɵɵdefineInjectable({ factory: function MathAbsPipe_Factory() { return new MathAbsPipe(); }, token: MathAbsPipe, providedIn: "root" });
2352
2337
  MathAbsPipe.decorators = [
2353
2338
  { type: Pipe, args: [{
2354
2339
  name: 'mathAbs'
@@ -2360,7 +2345,7 @@ class EvenPipe {
2360
2345
  return val % 2 === 0;
2361
2346
  }
2362
2347
  }
2363
- EvenPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function EvenPipe_Factory() { return new EvenPipe(); }, token: EvenPipe, providedIn: "root" });
2348
+ EvenPipe.ɵprov = ɵɵdefineInjectable({ factory: function EvenPipe_Factory() { return new EvenPipe(); }, token: EvenPipe, providedIn: "root" });
2364
2349
  EvenPipe.decorators = [
2365
2350
  { type: Pipe, args: [{
2366
2351
  name: 'even'
@@ -2372,7 +2357,7 @@ class OddPipe {
2372
2357
  return val % 2 !== 0;
2373
2358
  }
2374
2359
  }
2375
- OddPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function OddPipe_Factory() { return new OddPipe(); }, token: OddPipe, providedIn: "root" });
2360
+ OddPipe.ɵprov = ɵɵdefineInjectable({ factory: function OddPipe_Factory() { return new OddPipe(); }, token: OddPipe, providedIn: "root" });
2376
2361
  OddPipe.decorators = [
2377
2362
  { type: Pipe, args: [{
2378
2363
  name: 'odd'
@@ -2480,7 +2465,7 @@ class MapGetPipe {
2480
2465
  return val[key];
2481
2466
  }
2482
2467
  }
2483
- MapGetPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function MapGetPipe_Factory() { return new MapGetPipe(); }, token: MapGetPipe, providedIn: "root" });
2468
+ MapGetPipe.ɵprov = ɵɵdefineInjectable({ factory: function MapGetPipe_Factory() { return new MapGetPipe(); }, token: MapGetPipe, providedIn: "root" });
2484
2469
  MapGetPipe.decorators = [
2485
2470
  { type: Pipe, args: [{
2486
2471
  name: 'mapGet'
@@ -2494,7 +2479,7 @@ class MapKeysPipe {
2494
2479
  return Object.keys(map);
2495
2480
  }
2496
2481
  }
2497
- MapKeysPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function MapKeysPipe_Factory() { return new MapKeysPipe(); }, token: MapKeysPipe, providedIn: "root" });
2482
+ MapKeysPipe.ɵprov = ɵɵdefineInjectable({ factory: function MapKeysPipe_Factory() { return new MapKeysPipe(); }, token: MapKeysPipe, providedIn: "root" });
2498
2483
  MapKeysPipe.decorators = [
2499
2484
  { type: Pipe, args: [{
2500
2485
  name: 'mapKeys'
@@ -2508,7 +2493,7 @@ class MapValuesPipe {
2508
2493
  return Object.values(map);
2509
2494
  }
2510
2495
  }
2511
- MapValuesPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function MapValuesPipe_Factory() { return new MapValuesPipe(); }, token: MapValuesPipe, providedIn: "root" });
2496
+ MapValuesPipe.ɵprov = ɵɵdefineInjectable({ factory: function MapValuesPipe_Factory() { return new MapValuesPipe(); }, token: MapValuesPipe, providedIn: "root" });
2512
2497
  MapValuesPipe.decorators = [
2513
2498
  { type: Pipe, args: [{
2514
2499
  name: 'mapValues'
@@ -2521,7 +2506,7 @@ class IsNotNilOrBlankPipe {
2521
2506
  return isNotNilOrBlank(value);
2522
2507
  }
2523
2508
  }
2524
- IsNotNilOrBlankPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function IsNotNilOrBlankPipe_Factory() { return new IsNotNilOrBlankPipe(); }, token: IsNotNilOrBlankPipe, providedIn: "root" });
2509
+ IsNotNilOrBlankPipe.ɵprov = ɵɵdefineInjectable({ factory: function IsNotNilOrBlankPipe_Factory() { return new IsNotNilOrBlankPipe(); }, token: IsNotNilOrBlankPipe, providedIn: "root" });
2525
2510
  IsNotNilOrBlankPipe.decorators = [
2526
2511
  { type: Pipe, args: [{
2527
2512
  name: 'isNotNilOrBlank'
@@ -2533,7 +2518,7 @@ class IsNilOrBlankPipe {
2533
2518
  return isNilOrBlank(value);
2534
2519
  }
2535
2520
  }
2536
- IsNilOrBlankPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function IsNilOrBlankPipe_Factory() { return new IsNilOrBlankPipe(); }, token: IsNilOrBlankPipe, providedIn: "root" });
2521
+ IsNilOrBlankPipe.ɵprov = ɵɵdefineInjectable({ factory: function IsNilOrBlankPipe_Factory() { return new IsNilOrBlankPipe(); }, token: IsNilOrBlankPipe, providedIn: "root" });
2537
2522
  IsNilOrBlankPipe.decorators = [
2538
2523
  { type: Pipe, args: [{
2539
2524
  name: 'isNilOrBlank'
@@ -2545,7 +2530,7 @@ class ToStringPipe {
2545
2530
  return (value !== null && value !== undefined) ? value.toString() : '';
2546
2531
  }
2547
2532
  }
2548
- ToStringPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function ToStringPipe_Factory() { return new ToStringPipe(); }, token: ToStringPipe, providedIn: "root" });
2533
+ ToStringPipe.ɵprov = ɵɵdefineInjectable({ factory: function ToStringPipe_Factory() { return new ToStringPipe(); }, token: ToStringPipe, providedIn: "root" });
2549
2534
  ToStringPipe.decorators = [
2550
2535
  { type: Pipe, args: [{
2551
2536
  name: 'toString'
@@ -2557,7 +2542,7 @@ class StrLengthPipe {
2557
2542
  return value && value.length || 0;
2558
2543
  }
2559
2544
  }
2560
- StrLengthPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function StrLengthPipe_Factory() { return new StrLengthPipe(); }, token: StrLengthPipe, providedIn: "root" });
2545
+ StrLengthPipe.ɵprov = ɵɵdefineInjectable({ factory: function StrLengthPipe_Factory() { return new StrLengthPipe(); }, token: StrLengthPipe, providedIn: "root" });
2561
2546
  StrLengthPipe.decorators = [
2562
2547
  { type: Pipe, args: [{
2563
2548
  name: 'strLength'
@@ -2569,7 +2554,7 @@ class StrIncludesPipe {
2569
2554
  return (value === null || value === void 0 ? void 0 : value.includes(searchString, position)) || false;
2570
2555
  }
2571
2556
  }
2572
- StrIncludesPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function StrIncludesPipe_Factory() { return new StrIncludesPipe(); }, token: StrIncludesPipe, providedIn: "root" });
2557
+ StrIncludesPipe.ɵprov = ɵɵdefineInjectable({ factory: function StrIncludesPipe_Factory() { return new StrIncludesPipe(); }, token: StrIncludesPipe, providedIn: "root" });
2573
2558
  StrIncludesPipe.decorators = [
2574
2559
  { type: Pipe, args: [{
2575
2560
  name: 'strIncludes'
@@ -2646,7 +2631,7 @@ class TranslateContextService {
2646
2631
  return translations[keys[keys.length - 1]]; // Return the last keys translation
2647
2632
  }
2648
2633
  }
2649
- TranslateContextService.ɵprov = i0.ɵɵdefineInjectable({ factory: function TranslateContextService_Factory() { return new TranslateContextService(i0.ɵɵinject(i1$1.TranslateService)); }, token: TranslateContextService, providedIn: "root" });
2634
+ TranslateContextService.ɵprov = ɵɵdefineInjectable({ factory: function TranslateContextService_Factory() { return new TranslateContextService(ɵɵinject(TranslateService)); }, token: TranslateContextService, providedIn: "root" });
2650
2635
  TranslateContextService.decorators = [
2651
2636
  { type: Injectable, args: [{ providedIn: 'root' },] }
2652
2637
  ];
@@ -2696,7 +2681,7 @@ class PropertyGetPipe {
2696
2681
  args && args.defaultValue);
2697
2682
  }
2698
2683
  }
2699
- PropertyGetPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function PropertyGetPipe_Factory() { return new PropertyGetPipe(); }, token: PropertyGetPipe, providedIn: "root" });
2684
+ PropertyGetPipe.ɵprov = ɵɵdefineInjectable({ factory: function PropertyGetPipe_Factory() { return new PropertyGetPipe(); }, token: PropertyGetPipe, providedIn: "root" });
2700
2685
  PropertyGetPipe.decorators = [
2701
2686
  { type: Pipe, args: [{
2702
2687
  name: 'propertyGet'
@@ -2721,7 +2706,7 @@ NgInitDirective.propDecorators = {
2721
2706
  ngInit: [{ type: Output }]
2722
2707
  };
2723
2708
 
2724
- const moment$5 = momentImported;
2709
+ const moment$2 = momentImported;
2725
2710
  // @dynamic
2726
2711
  class SharedValidators {
2727
2712
  static getDoubleRegexp(maxDecimals) {
@@ -2802,7 +2787,7 @@ class SharedValidators {
2802
2787
  }
2803
2788
  static validDate(control) {
2804
2789
  const value = control.value;
2805
- const date = !value || moment$5.isMoment(value) ? value : moment$5(control.value, DATE_ISO_PATTERN);
2790
+ const date = !value || moment$2.isMoment(value) ? value : moment$2(control.value, DATE_ISO_PATTERN);
2806
2791
  if (date && (!date.isValid() || date.year() < 1970)) {
2807
2792
  return { validDate: true };
2808
2793
  }
@@ -3914,7 +3899,7 @@ class FormErrorTranslator {
3914
3899
  return errorKey;
3915
3900
  }
3916
3901
  }
3917
- 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" });
3902
+ FormErrorTranslator.ɵprov = ɵɵdefineInjectable({ factory: function FormErrorTranslator_Factory() { return new FormErrorTranslator(ɵɵinject(TranslateService), ɵɵinject(APP_FORM_ERROR_I18N_KEYS, 8)); }, token: FormErrorTranslator, providedIn: "root" });
3918
3903
  FormErrorTranslator.decorators = [
3919
3904
  { type: Injectable, args: [{ providedIn: 'root' },] }
3920
3905
  ];
@@ -3994,7 +3979,7 @@ class FormGetPipe {
3994
3979
  return form.get(path);
3995
3980
  }
3996
3981
  }
3997
- FormGetPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function FormGetPipe_Factory() { return new FormGetPipe(); }, token: FormGetPipe, providedIn: "root" });
3982
+ FormGetPipe.ɵprov = ɵɵdefineInjectable({ factory: function FormGetPipe_Factory() { return new FormGetPipe(); }, token: FormGetPipe, providedIn: "root" });
3998
3983
  FormGetPipe.decorators = [
3999
3984
  { type: Pipe, args: [{
4000
3985
  name: 'formGet'
@@ -4006,7 +3991,7 @@ class FormGetControlPipe {
4006
3991
  return form.get(path);
4007
3992
  }
4008
3993
  }
4009
- FormGetControlPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function FormGetControlPipe_Factory() { return new FormGetControlPipe(); }, token: FormGetControlPipe, providedIn: "root" });
3994
+ FormGetControlPipe.ɵprov = ɵɵdefineInjectable({ factory: function FormGetControlPipe_Factory() { return new FormGetControlPipe(); }, token: FormGetControlPipe, providedIn: "root" });
4010
3995
  FormGetControlPipe.decorators = [
4011
3996
  { type: Pipe, args: [{
4012
3997
  name: 'formGetControl'
@@ -4018,7 +4003,7 @@ class FormGetArrayPipe {
4018
4003
  return form.get(path);
4019
4004
  }
4020
4005
  }
4021
- FormGetArrayPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function FormGetArrayPipe_Factory() { return new FormGetArrayPipe(); }, token: FormGetArrayPipe, providedIn: "root" });
4006
+ FormGetArrayPipe.ɵprov = ɵɵdefineInjectable({ factory: function FormGetArrayPipe_Factory() { return new FormGetArrayPipe(); }, token: FormGetArrayPipe, providedIn: "root" });
4022
4007
  FormGetArrayPipe.decorators = [
4023
4008
  { type: Pipe, args: [{
4024
4009
  name: 'formGetArray'
@@ -4030,7 +4015,7 @@ class FormGetGroupPipe {
4030
4015
  return form.get(path);
4031
4016
  }
4032
4017
  }
4033
- FormGetGroupPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function FormGetGroupPipe_Factory() { return new FormGetGroupPipe(); }, token: FormGetGroupPipe, providedIn: "root" });
4018
+ FormGetGroupPipe.ɵprov = ɵɵdefineInjectable({ factory: function FormGetGroupPipe_Factory() { return new FormGetGroupPipe(); }, token: FormGetGroupPipe, providedIn: "root" });
4034
4019
  FormGetGroupPipe.decorators = [
4035
4020
  { type: Pipe, args: [{
4036
4021
  name: 'formGetGroup'
@@ -4150,7 +4135,7 @@ const isIpad = (win) => {
4150
4135
  }
4151
4136
  return false;
4152
4137
  };
4153
- const ɵ0$b = isIpad;
4138
+ const ɵ0$1 = isIpad;
4154
4139
  const isIOS = (win) => testUserAgent(win, /iPhone|iPod/i) || isIpad(win);
4155
4140
  const isAndroid = (win) => testUserAgent(win, /android|sink/i);
4156
4141
  const isCordova = (win) => !!(win['cordova'] || win['phonegap'] || win['PhoneGap']);
@@ -4385,9 +4370,9 @@ function parseDuration(input, maxDecimals, placeholderChar) {
4385
4370
  const hour = parseInt(durationParts[0] || '0');
4386
4371
  const minute = parseInt(durationParts[1] || '0');
4387
4372
  const value = hour + (minute + 0.5) / 60;
4388
- return roundFloat(value, maxDecimals);
4373
+ return roundFloat$1(value, maxDecimals);
4389
4374
  }
4390
- function roundFloat(input, maxDecimals) {
4375
+ function roundFloat$1(input, maxDecimals) {
4391
4376
  if (maxDecimals > 0) {
4392
4377
  const powDecimal = Math.pow(10, maxDecimals);
4393
4378
  return Math.trunc(input * powDecimal + 0.5) / powDecimal;
@@ -4411,9 +4396,9 @@ const MASKS = {
4411
4396
  DD: [/[+-]/, /\d/, /\d/, /\d/, '.', /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, '°']
4412
4397
  }
4413
4398
  };
4414
- const noop$7 = () => {
4399
+ const noop$1 = () => {
4415
4400
  };
4416
- const ɵ0$a = noop$7;
4401
+ const ɵ0$2 = noop$1;
4417
4402
  class MatLatLongField {
4418
4403
  constructor(platform, translate, formBuilder, cd, formGroupDir) {
4419
4404
  this.platform = platform;
@@ -4421,8 +4406,8 @@ class MatLatLongField {
4421
4406
  this.formBuilder = formBuilder;
4422
4407
  this.cd = cd;
4423
4408
  this.formGroupDir = formGroupDir;
4424
- this._onChangeCallback = noop$7;
4425
- this._onTouchedCallback = noop$7;
4409
+ this._onChangeCallback = noop$1;
4410
+ this._onTouchedCallback = noop$1;
4426
4411
  this._subscription = new Subscription();
4427
4412
  this.disabling = false;
4428
4413
  this.writing = false;
@@ -4759,14 +4744,14 @@ SharedMatLatLongModule.decorators = [
4759
4744
  },] }
4760
4745
  ];
4761
4746
 
4762
- const DEFAULT_VALUE_ACCESSOR$5 = {
4747
+ const DEFAULT_VALUE_ACCESSOR = {
4763
4748
  provide: NG_VALUE_ACCESSOR,
4764
4749
  useExisting: forwardRef(() => MatDate),
4765
4750
  multi: true
4766
4751
  };
4767
- const DAY_MASK$2 = [/\d/, /\d/, '/', /\d/, /\d/, '/', /\d/, /\d/, /\d/, /\d/];
4768
- const noop$6 = () => { };
4769
- const ɵ0$9 = noop$6;
4752
+ const DAY_MASK = [/\d/, /\d/, '/', /\d/, /\d/, '/', /\d/, /\d/, /\d/, /\d/];
4753
+ const noop$2 = () => { };
4754
+ const ɵ0$3 = noop$2;
4770
4755
  class MatDate {
4771
4756
  constructor(platform, dateAdapter, translate, formBuilder, cd, keyboard, formGroupDir) {
4772
4757
  this.platform = platform;
@@ -4776,13 +4761,13 @@ class MatDate {
4776
4761
  this.cd = cd;
4777
4762
  this.keyboard = keyboard;
4778
4763
  this.formGroupDir = formGroupDir;
4779
- this._onChangeCallback = noop$6;
4780
- this._onTouchedCallback = noop$6;
4764
+ this._onChangeCallback = noop$2;
4765
+ this._onTouchedCallback = noop$2;
4781
4766
  this._subscription = new Subscription();
4782
4767
  this._writing = true;
4783
4768
  this._disabling = false;
4784
4769
  this._readonly = false;
4785
- this.dayMask = DAY_MASK$2;
4770
+ this.dayMask = DAY_MASK;
4786
4771
  this.floatLabel = 'auto';
4787
4772
  this.compact = false;
4788
4773
  this.placeholderChar = DEFAULT_PLACEHOLDER_CHAR;
@@ -5069,7 +5054,7 @@ MatDate.decorators = [
5069
5054
  selector: 'mat-date-field',
5070
5055
  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 -->\n<ng-template #writable>\n <mat-form-field [floatLabel]=\"floatLabel\">\n\n <mat-label>{{placeholder}}</mat-label>\n\n <div matPrefix>\n <ng-container *ngTemplateOutlet=\"matPrefixTemplate\"></ng-container>\n </div>\n\n <input matInput #matInput autocomplete=\"off\" type=\"text\"\n *ngIf=\"!mobile\"\n [formControl]=\"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 input -->\n <input matInput type=\"text\" [formControl]=\"formControl\"\n hidden\n [matDatepicker]=\"datePicker\"\n [matDatepickerFilter]=\"datePickerFilter\"\n (dateChange)=\"onDatePickerChange($event)\">\n\n <button type=\"button\" mat-icon-button tabindex=\"-1\" matSuffix\n (click)=\"openDatePicker($event, datePicker)\"\n [disabled]=\"formControl.disabled\">\n <div *ngIf=\"mobile; then iconDate; else iconDesktop\"></div>\n </button>\n <button matSuffix mat-icon-button tabindex=\"-1\"\n type=\"button\"\n *ngIf=\"clearable\"\n (click)=\"clear()\"\n [hidden]=\"formControl.disabled || !formControl.value\">\n <mat-icon>close</mat-icon>\n </button>\n\n <!-- errors -->\n <mat-error *ngIf=\"formControl.touched && formControl.errors|mapKeys|arrayFirst; let errorKey\">\n <ng-container [ngSwitch]=\"errorKey\">\n <span *ngSwitchCase=\"'required'\" translate>ERROR.FIELD_REQUIRED</span>\n <span *ngSwitchCase=\"'validDate'\" translate>ERROR.FIELD_NOT_VALID_DATE_TIME</span>\n <span *ngSwitchCase=\"'dateIsAfter'\">{{'ERROR.FIELD_NOT_VALID_DATE_AFTER' | translate: formControl.errors.dateIsAfter }}</span>\n <span *ngSwitchCase=\"'dateIsBefore'\">{{'ERROR.FIELD_NOT_VALID_DATE_BEFORE' | translate: formControl.errors.dateIsBefore }}</span>\n <span *ngSwitchCase=\"'dateRange'\" translate>ERROR.FIELD_NOT_VALID_DATE_RANGE</span>\n <span *ngSwitchCase=\"'dateMaxDuration'\" translate>ERROR.FIELD_NOT_VALID_DATE_MAX_DURATION</span>\n <span *ngSwitchCase=\"'dateMinDuration'\" translate>ERROR.FIELD_NOT_VALID_DATE_MIN_DURATION</span>\n <span *ngSwitchCase=\"'msg'\">{{(formControl.errors.msg?.key || formControl.errors.msg) | translate: formControl.errors.msg?.params}}</span>\n </ng-container>\n </mat-error>\n <ng-content select=\"mat-error\"></ng-content>\n\n <!-- mat hint -->\n <div class=\"mat-form-field-hint-wrapper\" [class.cdk-visually-hidden]=\"formControl.invalid\">\n <div class=\"mat-form-field-hint-spacer\"></div>\n <ng-content select=\"mat-hint\"></ng-content>\n </div>\n </mat-form-field>\n\n <mat-datepicker #datePicker\n [touchUi]=\"mobile\"\n [disabled]=\"formControl.disabled\"\n [startAt]=\"startDate\"\n ></mat-datepicker>\n\n\n\n</ng-template>\n\n<ng-template #iconDesktop>\n <mat-icon>keyboard_arrow_down</mat-icon>\n</ng-template>\n\n<ng-template #iconDate>\n <mat-icon>date_range</mat-icon>\n</ng-template>\n\n<ng-template #matPrefixTemplate>\n <ng-content select=\"[matPrefix]\"></ng-content>\n</ng-template>\n",
5071
5056
  providers: [
5072
- DEFAULT_VALUE_ACCESSOR$5,
5057
+ DEFAULT_VALUE_ACCESSOR,
5073
5058
  ],
5074
5059
  changeDetection: ChangeDetectionStrategy.OnPush,
5075
5060
  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%}"]
@@ -5104,16 +5089,16 @@ MatDate.propDecorators = {
5104
5089
  matInputs: [{ type: ViewChildren, args: ['matInput',] }]
5105
5090
  };
5106
5091
 
5107
- const DEFAULT_VALUE_ACCESSOR$4 = {
5092
+ const DEFAULT_VALUE_ACCESSOR$1 = {
5108
5093
  provide: NG_VALUE_ACCESSOR,
5109
5094
  useExisting: forwardRef(() => MatDateTime),
5110
5095
  multi: true
5111
5096
  };
5112
5097
  const DAY_MASK$1 = [/\d/, /\d/, '/', /\d/, /\d/, '/', /\d/, /\d/, /\d/, /\d/];
5113
5098
  const HOUR_REGEXP = /^[012][0-9][:][012345][0-9]$/;
5114
- const HOUR_MASK$1 = [/[012]/, /\d/, ':', /[012345]/, /\d/];
5115
- const noop$5 = () => { };
5116
- const ɵ0$8 = noop$5;
5099
+ const HOUR_MASK = [/[012]/, /\d/, ':', /[012345]/, /\d/];
5100
+ const noop$3 = () => { };
5101
+ const ɵ0$4 = noop$3;
5117
5102
  class MatDateTime {
5118
5103
  constructor(platform, dateAdapter, translate, formBuilder, cd, keyboard, formGroupDir) {
5119
5104
  this.platform = platform;
@@ -5123,14 +5108,14 @@ class MatDateTime {
5123
5108
  this.cd = cd;
5124
5109
  this.keyboard = keyboard;
5125
5110
  this.formGroupDir = formGroupDir;
5126
- this._onChangeCallback = noop$5;
5127
- this._onTouchedCallback = noop$5;
5111
+ this._onChangeCallback = noop$3;
5112
+ this._onTouchedCallback = noop$3;
5128
5113
  this._subscription = new Subscription();
5129
5114
  this._writing = true;
5130
5115
  this._disabling = false;
5131
5116
  this._readonly = false;
5132
5117
  this.dayMask = DAY_MASK$1;
5133
- this.hourMask = HOUR_MASK$1;
5118
+ this.hourMask = HOUR_MASK;
5134
5119
  this.floatLabel = 'auto';
5135
5120
  this.compact = false;
5136
5121
  this.placeholderChar = DEFAULT_PLACEHOLDER_CHAR;
@@ -5443,7 +5428,7 @@ MatDateTime.decorators = [
5443
5428
  selector: 'mat-date-time-field',
5444
5429
  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]=\"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 input -->\n <input matInput type=\"text\" [formControl]=\"formControl\"\n hidden\n [matDatepicker]=\"datePicker\"\n [matDatepickerFilter]=\"datePickerFilter\"\n (dateChange)=\"onDatePickerChange($event)\">\n\n <button type=\"button\" mat-icon-button tabindex=\"-1\" matSuffix\n (click)=\"openDatePicker($event, datePicker)\"\n [disabled]=\"formControl.disabled\">\n <div *ngIf=\"mobile; then iconDate; else iconDesktop\"></div>\n </button>\n <button matSuffix mat-icon-button tabindex=\"-1\"\n type=\"button\"\n *ngIf=\"clearable\"\n (click)=\"clear()\"\n [hidden]=\"formControl.disabled || !formControl.value\">\n <mat-icon>close</mat-icon>\n </button>\n </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=\"'dateIsBefore'\">{{'ERROR.FIELD_NOT_VALID_DATE_BEFORE' | translate: formControl.errors.dateIsBefore }}</mat-error>\n <mat-error *ngSwitchCase=\"'dateRange'\" translate>ERROR.FIELD_NOT_VALID_DATE_RANGE</mat-error>\n <mat-error *ngSwitchCase=\"'dateMaxDuration'\" translate>ERROR.FIELD_NOT_VALID_DATE_MAX_DURATION</mat-error>\n <mat-error *ngSwitchCase=\"'dateMinDuration'\" translate>ERROR.FIELD_NOT_VALID_DATE_MIN_DURATION</mat-error>\n <mat-error *ngSwitchCase=\"'msg'\">{{(formControl.errors.msg?.key || formControl.errors.msg) | translate: formControl.errors.msg?.params}}</mat-error>\n </ng-container>\n <ng-content select=\"mat-error\"></ng-content>\n\n <!-- mat hint -->\n <div class=\"mat-form-field-hint-wrapper\" [class.cdk-visually-hidden]=\"formControl.invalid\">\n <div class=\"mat-form-field-hint-spacer\"></div>\n <ng-content select=\"mat-hint\"></ng-content>\n </div>\n </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 && (hourControl.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]=\"hourControl\"\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]=\"hourControl\"\n (click)=\"openTimePickerIfMobile($event)\"\n readonly>\n\n <input matInput type=\"text\"\n [formControl]=\"hourControl\"\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",
5445
5430
  providers: [
5446
- DEFAULT_VALUE_ACCESSOR$4,
5431
+ DEFAULT_VALUE_ACCESSOR$1,
5447
5432
  ],
5448
5433
  changeDetection: ChangeDetectionStrategy.OnPush,
5449
5434
  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%}"]
@@ -5478,15 +5463,15 @@ MatDateTime.propDecorators = {
5478
5463
  matInputs: [{ type: ViewChildren, args: ['matInput',] }]
5479
5464
  };
5480
5465
 
5481
- const DEFAULT_VALUE_ACCESSOR$3 = {
5466
+ const DEFAULT_VALUE_ACCESSOR$2 = {
5482
5467
  provide: NG_VALUE_ACCESSOR,
5483
5468
  useExisting: forwardRef(() => MatDateShort),
5484
5469
  multi: true
5485
5470
  };
5486
- const DAY_MASK = [/\d/, /\d/, /\d/, /\d/];
5471
+ const DAY_MASK$2 = [/\d/, /\d/, /\d/, /\d/];
5487
5472
  const noop$4 = () => {
5488
5473
  };
5489
- const ɵ0$7 = noop$4;
5474
+ const ɵ0$5 = noop$4;
5490
5475
  class MatDateShort {
5491
5476
  constructor(platform, dateAdapter, translate, formBuilder, cd, keyboard, formGroupDir) {
5492
5477
  this.dateAdapter = dateAdapter;
@@ -5499,7 +5484,7 @@ class MatDateShort {
5499
5484
  this._onTouchedCallback = noop$4;
5500
5485
  this.writing = true;
5501
5486
  this.disabling = false;
5502
- this.dayMask = DAY_MASK;
5487
+ this.dayMask = DAY_MASK$2;
5503
5488
  this.disabled = false;
5504
5489
  this.floatLabel = 'auto';
5505
5490
  this.readonly = false;
@@ -5744,7 +5729,7 @@ MatDateShort.decorators = [
5744
5729
  selector: 'mat-date-short-field',
5745
5730
  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",
5746
5731
  providers: [
5747
- DEFAULT_VALUE_ACCESSOR$3,
5732
+ DEFAULT_VALUE_ACCESSOR$2,
5748
5733
  ],
5749
5734
  changeDetection: ChangeDetectionStrategy.OnPush,
5750
5735
  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%}"]
@@ -5812,16 +5797,16 @@ SharedMatDateTimeModule.decorators = [
5812
5797
  },] }
5813
5798
  ];
5814
5799
 
5815
- const DEFAULT_VALUE_ACCESSOR$2 = {
5800
+ const DEFAULT_VALUE_ACCESSOR$3 = {
5816
5801
  provide: NG_VALUE_ACCESSOR,
5817
5802
  useExisting: forwardRef(() => MatDuration),
5818
5803
  multi: true
5819
5804
  };
5820
5805
  const HOUR_TIME_PATTERN = /[0-9]\d\d:[0-5]\d/;
5821
- const HOUR_MASK = [/\d/, /\d/, /\d/, ':', /[0-5]/, /\d/];
5822
- const noop$3 = () => {
5806
+ const HOUR_MASK$1 = [/\d/, /\d/, /\d/, ':', /[0-5]/, /\d/];
5807
+ const noop$5 = () => {
5823
5808
  };
5824
- const ɵ0$6 = noop$3;
5809
+ const ɵ0$6 = noop$5;
5825
5810
  class MatDuration {
5826
5811
  constructor(platform, dateAdapter, translate, formBuilder, cd, formGroupDir) {
5827
5812
  this.dateAdapter = dateAdapter;
@@ -5830,11 +5815,11 @@ class MatDuration {
5830
5815
  this.cd = cd;
5831
5816
  this.formGroupDir = formGroupDir;
5832
5817
  this._subscription = new Subscription();
5833
- this._onChangeCallback = noop$3;
5834
- this._onTouchedCallback = noop$3;
5818
+ this._onChangeCallback = noop$5;
5819
+ this._onTouchedCallback = noop$5;
5835
5820
  this.writing = true;
5836
5821
  this.disabling = false;
5837
- this.hourMask = HOUR_MASK;
5822
+ this.hourMask = HOUR_MASK$1;
5838
5823
  this.disabled = false;
5839
5824
  this.floatLabel = 'auto';
5840
5825
  this.readonly = false;
@@ -6014,7 +5999,7 @@ MatDuration.decorators = [
6014
5999
  selector: 'mat-duration-field',
6015
6000
  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",
6016
6001
  providers: [
6017
- DEFAULT_VALUE_ACCESSOR$2,
6002
+ DEFAULT_VALUE_ACCESSOR$3,
6018
6003
  ],
6019
6004
  changeDetection: ChangeDetectionStrategy.OnPush,
6020
6005
  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%}"]
@@ -6071,22 +6056,22 @@ SharedMatDurationModule.decorators = [
6071
6056
  },] }
6072
6057
  ];
6073
6058
 
6074
- const DEFAULT_VALUE_ACCESSOR$1 = {
6059
+ const DEFAULT_VALUE_ACCESSOR$4 = {
6075
6060
  provide: NG_VALUE_ACCESSOR,
6076
6061
  useExisting: forwardRef(() => MatBooleanField),
6077
6062
  multi: true
6078
6063
  };
6079
- const noop$2 = () => {
6064
+ const noop$6 = () => {
6080
6065
  };
6081
- const ɵ0$5 = noop$2;
6066
+ const ɵ0$7 = noop$6;
6082
6067
  class MatBooleanField {
6083
6068
  constructor(translate, formBuilder, cd, formGroupDir) {
6084
6069
  this.translate = translate;
6085
6070
  this.formBuilder = formBuilder;
6086
6071
  this.cd = cd;
6087
6072
  this.formGroupDir = formGroupDir;
6088
- this._onChangeCallback = noop$2;
6089
- this._onTouchedCallback = noop$2;
6073
+ this._onChangeCallback = noop$6;
6074
+ this._onTouchedCallback = noop$6;
6090
6075
  this._writing = false;
6091
6076
  this.showRadio = false;
6092
6077
  this.disabled = false;
@@ -6249,7 +6234,7 @@ MatBooleanField.decorators = [
6249
6234
  selector: 'mat-boolean-field',
6250
6235
  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>&nbsp;\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>&nbsp;</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",
6251
6236
  providers: [
6252
- DEFAULT_VALUE_ACCESSOR$1
6237
+ DEFAULT_VALUE_ACCESSOR$4
6253
6238
  ],
6254
6239
  changeDetection: ChangeDetectionStrategy.OnPush,
6255
6240
  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}"]
@@ -6495,7 +6480,7 @@ class MatNumpadDomService {
6495
6480
  this.appRef.detachView(this.componentRef.hostView);
6496
6481
  }
6497
6482
  }
6498
- 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" });
6483
+ MatNumpadDomService.ɵprov = ɵɵdefineInjectable({ factory: function MatNumpadDomService_Factory() { return new MatNumpadDomService(ɵɵinject(ComponentFactoryResolver), ɵɵinject(ApplicationRef), ɵɵinject(INJECTOR), ɵɵinject(DOCUMENT, 8)); }, token: MatNumpadDomService, providedIn: "root" });
6499
6484
  MatNumpadDomService.decorators = [
6500
6485
  { type: Injectable, args: [{
6501
6486
  providedIn: 'root'
@@ -6859,7 +6844,7 @@ SharedMatNumpadModule.decorators = [
6859
6844
  },] }
6860
6845
  ];
6861
6846
 
6862
- const DEFAULT_VALUE_ACCESSOR = {
6847
+ const DEFAULT_VALUE_ACCESSOR$5 = {
6863
6848
  provide: NG_VALUE_ACCESSOR,
6864
6849
  useExisting: forwardRef(() => MatSwipeField),
6865
6850
  multi: true
@@ -7122,7 +7107,7 @@ MatSwipeField.decorators = [
7122
7107
  { type: Component, args: [{
7123
7108
  selector: 'mat-swipe-field',
7124
7109
  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",
7125
- providers: [DEFAULT_VALUE_ACCESSOR],
7110
+ providers: [DEFAULT_VALUE_ACCESSOR$5],
7126
7111
  changeDetection: ChangeDetectionStrategy.OnPush,
7127
7112
  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}"]
7128
7113
  },] }
@@ -7180,14 +7165,14 @@ SharedMatSwipeModule.decorators = [
7180
7165
  },] }
7181
7166
  ];
7182
7167
 
7183
- const noop$1 = () => { };
7184
- const ɵ0$4 = noop$1;
7168
+ const noop$7 = () => { };
7169
+ const ɵ0$8 = noop$7;
7185
7170
  class MatChipsField {
7186
7171
  constructor(cd, formGroupDir) {
7187
7172
  this.cd = cd;
7188
7173
  this.formGroupDir = formGroupDir;
7189
- this._onChangeCallback = noop$1;
7190
- this._onTouchedCallback = noop$1;
7174
+ this._onChangeCallback = noop$7;
7175
+ this._onTouchedCallback = noop$7;
7191
7176
  this.logPrefix = '[mat-chips] ';
7192
7177
  this.formControlName = null;
7193
7178
  this.required = false;
@@ -8056,7 +8041,7 @@ class ProgressBarService {
8056
8041
  }
8057
8042
  }
8058
8043
  }
8059
- ProgressBarService.ɵprov = i0.ɵɵdefineInjectable({ factory: function ProgressBarService_Factory() { return new ProgressBarService(); }, token: ProgressBarService, providedIn: "root" });
8044
+ ProgressBarService.ɵprov = ɵɵdefineInjectable({ factory: function ProgressBarService_Factory() { return new ProgressBarService(); }, token: ProgressBarService, providedIn: "root" });
8060
8045
  ProgressBarService.decorators = [
8061
8046
  { type: Injectable, args: [{ providedIn: 'root' },] }
8062
8047
  ];
@@ -8100,7 +8085,7 @@ class AppGestureConfig extends HammerGestureConfig {
8100
8085
  return mc;
8101
8086
  }
8102
8087
  }
8103
- AppGestureConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function AppGestureConfig_Factory() { return new AppGestureConfig(); }, token: AppGestureConfig, providedIn: "root" });
8088
+ AppGestureConfig.ɵprov = ɵɵdefineInjectable({ factory: function AppGestureConfig_Factory() { return new AppGestureConfig(); }, token: AppGestureConfig, providedIn: "root" });
8104
8089
  AppGestureConfig.decorators = [
8105
8090
  { type: Injectable, args: [{ providedIn: 'root' },] }
8106
8091
  ];
@@ -8325,7 +8310,7 @@ class MatPaginatorI18n extends MatPaginatorIntl {
8325
8310
  this.previousPageLabel = this.translate.instant('COMMON.PAGINATOR.PREVIOUS_PAGE');
8326
8311
  }
8327
8312
  }
8328
- MatPaginatorI18n.ɵprov = i0.ɵɵdefineInjectable({ factory: function MatPaginatorI18n_Factory() { return new MatPaginatorI18n(i0.ɵɵinject(i1$1.TranslateService)); }, token: MatPaginatorI18n, providedIn: "root" });
8313
+ MatPaginatorI18n.ɵprov = ɵɵdefineInjectable({ factory: function MatPaginatorI18n_Factory() { return new MatPaginatorI18n(ɵɵinject(TranslateService)); }, token: MatPaginatorI18n, providedIn: "root" });
8329
8314
  MatPaginatorI18n.decorators = [
8330
8315
  { type: Injectable, args: [{ providedIn: 'root' },] }
8331
8316
  ];
@@ -8415,17 +8400,17 @@ function getColorContrast(color, bw) {
8415
8400
  return rgbArrayToHex(rgb.map(v => 255 - v));
8416
8401
  }
8417
8402
 
8418
- const noop = () => {
8403
+ const noop$8 = () => {
8419
8404
  };
8420
- const ɵ0$3 = noop;
8405
+ const ɵ0$9 = noop$8;
8421
8406
  class AppFormField {
8422
8407
  constructor(translate, cd, injector, formGroupDir) {
8423
8408
  this.translate = translate;
8424
8409
  this.cd = cd;
8425
8410
  this.injector = injector;
8426
8411
  this.formGroupDir = formGroupDir;
8427
- this._onChangeCallback = noop;
8428
- this._onTouchedCallback = noop;
8412
+ this._onChangeCallback = noop$8;
8413
+ this._onTouchedCallback = noop$8;
8429
8414
  this.readonly = false;
8430
8415
  this.compact = false;
8431
8416
  this.floatLabel = 'auto';
@@ -8861,14 +8846,14 @@ class AudioProvider extends StartableService {
8861
8846
  });
8862
8847
  }
8863
8848
  }
8864
- 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" });
8849
+ AudioProvider.ɵprov = ɵɵdefineInjectable({ factory: function AudioProvider_Factory() { return new AudioProvider(ɵɵinject(Platform), ɵɵinject(NativeAudio, 8), ɵɵinject(Vibration, 8), ɵɵinject(AudioManagement$1, 8)); }, token: AudioProvider, providedIn: "root" });
8865
8850
  AudioProvider.decorators = [
8866
8851
  { type: Injectable, args: [{ providedIn: 'root' },] }
8867
8852
  ];
8868
8853
  AudioProvider.ctorParameters = () => [
8869
8854
  { type: Platform },
8870
- { type: NativeAudio, decorators: [{ type: Optional }] },
8871
- { type: Vibration, decorators: [{ type: Optional }] },
8855
+ { type: NativeAudio$1, decorators: [{ type: Optional }] },
8856
+ { type: Vibration$1, decorators: [{ type: Optional }] },
8872
8857
  { type: AudioManagement, decorators: [{ type: Optional }] }
8873
8858
  ];
8874
8859
 
@@ -8950,7 +8935,7 @@ class Hotkeys {
8950
8935
  });
8951
8936
  }
8952
8937
  }
8953
- 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" });
8938
+ Hotkeys.ɵprov = ɵɵdefineInjectable({ factory: function Hotkeys_Factory() { return new Hotkeys(ɵɵinject(EventManager), ɵɵinject(MatDialog), ɵɵinject(DOCUMENT), ɵɵinject(ModalController)); }, token: Hotkeys, providedIn: "root" });
8954
8939
  Hotkeys.decorators = [
8955
8940
  { type: Injectable, args: [{
8956
8941
  providedIn: 'root'
@@ -9124,7 +9109,7 @@ class Base64ImageReader {
9124
9109
  }
9125
9110
  }
9126
9111
 
9127
- const uuidv4$1 = uuidv4Imported;
9112
+ const uuidv4 = uuidv4Imported;
9128
9113
  class FileService {
9129
9114
  constructor(platform,
9130
9115
  //private transfer: FileTransfer,
@@ -9161,7 +9146,7 @@ class FileService {
9161
9146
  const lastSlashIndex = source.lastIndexOf('/');
9162
9147
  if (lastSlashIndex === -1)
9163
9148
  throw new Error('Invalid URL: ' + source);
9164
- const fileName = lastSlashIndex < (source.length - 1) && source.substring(lastSlashIndex + 1) || uuidv4$1();
9149
+ const fileName = lastSlashIndex < (source.length - 1) && source.substring(lastSlashIndex + 1) || uuidv4();
9165
9150
  // Download into the file system
9166
9151
  if (responseType === 'file' && this.canUseFileSystem) {
9167
9152
  console.warn(`WARN: [file] Fetching image {${source}} in local file...`);
@@ -9217,7 +9202,7 @@ class FileService {
9217
9202
  this._started = true;
9218
9203
  }
9219
9204
  }
9220
- 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" });
9205
+ FileService.ɵprov = ɵɵdefineInjectable({ factory: function FileService_Factory() { return new FileService(ɵɵinject(Platform), ɵɵinject(HttpClient), ɵɵinject(ENVIRONMENT)); }, token: FileService, providedIn: "root" });
9221
9206
  FileService.decorators = [
9222
9207
  { type: Injectable, args: [{
9223
9208
  providedIn: 'root',
@@ -9383,7 +9368,7 @@ class Base58 {
9383
9368
  Base58.alphabet = '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz';
9384
9369
 
9385
9370
  const scrypt = require('scrypt-async');
9386
- const sha256$1 = require('hash.js/lib/hash/sha/256');
9371
+ const sha256 = require('hash.js/lib/hash/sha/256');
9387
9372
  const sha512 = require('hash.js/lib/hash/sha/512');
9388
9373
  const nacl = {
9389
9374
  sign,
@@ -9487,7 +9472,7 @@ class CryptoService {
9487
9472
  * Hash (using SHA256) a message
9488
9473
  */
9489
9474
  sha256(message) {
9490
- return sha256$1().update(message).digest('hex');
9475
+ return sha256().update(message).digest('hex');
9491
9476
  }
9492
9477
  /**
9493
9478
  * Hash (using SHA512) a message
@@ -9500,7 +9485,7 @@ class CryptoService {
9500
9485
  return nacl.util.encodeBase64(m);
9501
9486
  }
9502
9487
  }
9503
- CryptoService.ɵprov = i0.ɵɵdefineInjectable({ factory: function CryptoService_Factory() { return new CryptoService(); }, token: CryptoService, providedIn: "root" });
9488
+ CryptoService.ɵprov = ɵɵdefineInjectable({ factory: function CryptoService_Factory() { return new CryptoService(); }, token: CryptoService, providedIn: "root" });
9504
9489
  CryptoService.decorators = [
9505
9490
  { type: Injectable, args: [{ providedIn: 'root' },] }
9506
9491
  ];
@@ -10360,7 +10345,7 @@ SelectPeerModal.propDecorators = {
10360
10345
  onRefresh: [{ type: Input }]
10361
10346
  };
10362
10347
 
10363
- const moment$4 = momentImported;
10348
+ const moment$3 = momentImported;
10364
10349
  const SETTINGS_STORAGE_KEY = 'settings';
10365
10350
  const SETTINGS_TRANSIENT_PROPERTIES = ['mobile', 'touchUi' /*deprecated*/];
10366
10351
  // fixme: this constant points to static environment
@@ -10603,11 +10588,11 @@ class LocalSettingsService extends StartableService {
10603
10588
  if (!feature) {
10604
10589
  feature = {
10605
10590
  name: featureName.toLowerCase(),
10606
- lastSyncDate: moment$4().toISOString()
10591
+ lastSyncDate: moment$3().toISOString()
10607
10592
  };
10608
10593
  }
10609
10594
  else {
10610
- feature.lastSyncDate = moment$4().toISOString();
10595
+ feature.lastSyncDate = moment$3().toISOString();
10611
10596
  }
10612
10597
  this.saveOfflineFeature(feature);
10613
10598
  }
@@ -10768,7 +10753,7 @@ class LocalSettingsService extends StartableService {
10768
10753
  if (!page || !page.title || !page.path)
10769
10754
  throw Error('Missing required argument \'page\', \'page.path\' or \'page.title\'');
10770
10755
  // Set time
10771
- page.time = page.time || moment$4();
10756
+ page.time = page.time || moment$3();
10772
10757
  // Clean the title (remove <small> tags)
10773
10758
  if (!opts || opts.removeTitleSmallTag !== false) {
10774
10759
  const tagIndex = page.title.indexOf('</small>');
@@ -10784,7 +10769,7 @@ class LocalSettingsService extends StartableService {
10784
10769
  return page;
10785
10770
  }
10786
10771
  }
10787
- 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" });
10772
+ LocalSettingsService.ɵprov = ɵɵdefineInjectable({ factory: function LocalSettingsService_Factory() { return new LocalSettingsService(ɵɵinject(TranslateService), ɵɵinject(Platform), ɵɵinject(Storage), ɵɵinject(ENVIRONMENT), ɵɵinject(APP_LOCAL_SETTINGS, 8), ɵɵinject(APP_LOCAL_SETTINGS_OPTIONS, 8)); }, token: LocalSettingsService, providedIn: "root" });
10788
10773
  LocalSettingsService.decorators = [
10789
10774
  { type: Injectable, args: [{
10790
10775
  providedIn: 'root',
@@ -11501,7 +11486,7 @@ class NetworkService extends StartableService {
11501
11486
  });
11502
11487
  }
11503
11488
  }
11504
- 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" });
11489
+ NetworkService.ɵprov = ɵɵdefineInjectable({ factory: function NetworkService_Factory() { return new NetworkService(ɵɵinject(DOCUMENT), ɵɵinject(Platform), ɵɵinject(ModalController), ɵɵinject(CryptoService), ɵɵinject(Storage), ɵɵinject(LocalSettingsService), ɵɵinject(CacheService), ɵɵinject(HttpClient), ɵɵinject(ENVIRONMENT), ɵɵinject(Network, 8), ɵɵinject(SplashScreen, 8), ɵɵinject(TranslateService, 8), ɵɵinject(ToastController, 8)); }, token: NetworkService, providedIn: "root" });
11505
11490
  NetworkService.decorators = [
11506
11491
  { type: Injectable, args: [{ providedIn: 'root' },] }
11507
11492
  ];
@@ -11512,16 +11497,16 @@ NetworkService.ctorParameters = () => [
11512
11497
  { type: CryptoService },
11513
11498
  { type: Storage },
11514
11499
  { type: LocalSettingsService },
11515
- { type: CacheService },
11500
+ { type: CacheService$1 },
11516
11501
  { type: HttpClient },
11517
11502
  { type: undefined, decorators: [{ type: Inject, args: [ENVIRONMENT,] }] },
11518
- { type: Network, decorators: [{ type: Optional }] },
11519
- { type: SplashScreen, decorators: [{ type: Optional }] },
11503
+ { type: Network$1, decorators: [{ type: Optional }] },
11504
+ { type: SplashScreen$1, decorators: [{ type: Optional }] },
11520
11505
  { type: TranslateService, decorators: [{ type: Optional }] },
11521
11506
  { type: ToastController, decorators: [{ type: Optional }] }
11522
11507
  ];
11523
11508
 
11524
- const ErrorCodes$2 = {
11509
+ const ErrorCodes = {
11525
11510
  UNKNOWN_ERROR: 0,
11526
11511
  LOAD_ACCOUNT_ERROR: 1,
11527
11512
  BAD_PASSWORD: 2,
@@ -11873,7 +11858,7 @@ class EntityStore {
11873
11858
  }
11874
11859
  catch (err) {
11875
11860
  console.error(err);
11876
- throw { code: ErrorCodes$2.ENTITY_STORAGE_MIGRATION_FAILED, message: 'ERROR.ENTITY_STORAGE_MIGRATION_FAILED', details: err };
11861
+ throw { code: ErrorCodes.ENTITY_STORAGE_MIGRATION_FAILED, message: 'ERROR.ENTITY_STORAGE_MIGRATION_FAILED', details: err };
11877
11862
  }
11878
11863
  }
11879
11864
  // Emit update event
@@ -12447,7 +12432,7 @@ class EntitiesStorage extends StartableService {
12447
12432
  }
12448
12433
  EntitiesStorage.TRASH_PREFIX = 'Trash#';
12449
12434
  EntitiesStorage.REMOTE_PREFIX = 'Remote#';
12450
- 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" });
12435
+ EntitiesStorage.ɵprov = ɵɵdefineInjectable({ factory: function EntitiesStorage_Factory() { return new EntitiesStorage(ɵɵinject(Platform), ɵɵinject(ProgressBarService), ɵɵinject(Storage), ɵɵinject(ENVIRONMENT), ɵɵinject(APP_LOCAL_STORAGE_TYPE_POLICIES, 8)); }, token: EntitiesStorage, providedIn: "root" });
12451
12436
  EntitiesStorage.decorators = [
12452
12437
  { type: Injectable, args: [{ providedIn: 'root' },] }
12453
12438
  ];
@@ -12584,10 +12569,10 @@ function referentialToString(obj, properties) {
12584
12569
  function referentialsToString(values, properties, separator) {
12585
12570
  return (values || []).map(v => referentialToString(v, properties)).join(separator || ', ');
12586
12571
  }
12587
- const ɵ0$2 = StatusIds.ENABLE, ɵ1 = StatusIds.DISABLE, ɵ2 = StatusIds.TEMPORARY;
12572
+ const ɵ0$a = StatusIds.ENABLE, ɵ1 = StatusIds.DISABLE, ɵ2 = StatusIds.TEMPORARY;
12588
12573
  const StatusList = Object.freeze([
12589
12574
  {
12590
- id: ɵ0$2,
12575
+ id: ɵ0$a,
12591
12576
  icon: 'checkmark',
12592
12577
  label: 'REFERENTIAL.STATUS_ENUM.ENABLE'
12593
12578
  },
@@ -12862,7 +12847,7 @@ function accountToString(data) {
12862
12847
  (data.lastName || '')) || '';
12863
12848
  }
12864
12849
 
12865
- const uuidv4 = uuidv4Imported;
12850
+ const uuidv4$1 = uuidv4Imported;
12866
12851
  const _global = typeof global !== 'undefined' ? global : (typeof window !== 'undefined' ? window : {});
12867
12852
  const NativeWebSocket = _global.WebSocket || _global.MozWebSocket;
12868
12853
  /**
@@ -12906,7 +12891,7 @@ function createTrackerLink(opts) {
12906
12891
  // Skip if not tracked
12907
12892
  if (!context || !context.tracked)
12908
12893
  return forward(operation);
12909
- const id = context.serializationKey || uuidv4();
12894
+ const id = context.serializationKey || uuidv4$1();
12910
12895
  console.debug(`[apollo-tracker-link] Watching tracked query {${operation.operationName}#${id}}`);
12911
12896
  // Clean context, before calling JSON.stringify (remove unused attributes)
12912
12897
  const cleanContext = Object.assign(Object.assign({}, context), { optimisticResponse: null, cache: null });
@@ -13569,7 +13554,7 @@ class GraphqlService extends StartableService {
13569
13554
  (err.networkError && ((err.networkError.error && this.toAppError(err.networkError.error))
13570
13555
  || this.toAppError(err.networkError)
13571
13556
  || (err.networkError.error && this.createAppErrorByCode(err.networkError.error.status))
13572
- || this.createAppErrorByCode(ErrorCodes$2.UNKNOWN_NETWORK_ERROR)))
13557
+ || this.createAppErrorByCode(ErrorCodes.UNKNOWN_NETWORK_ERROR)))
13573
13558
  // If graphQL: try to convert the first error found
13574
13559
  || (err.graphQLErrors && err.graphQLErrors.length && this.toAppError(err.graphQLErrors[0]))
13575
13560
  || this.toAppError(err)
@@ -13577,7 +13562,7 @@ class GraphqlService extends StartableService {
13577
13562
  || (err.graphQLErrors && err.graphQLErrors[0])
13578
13563
  || err;
13579
13564
  console.error('[graphql] ' + (error && error.message || error), error.stack || '');
13580
- if (error && error.code === ErrorCodes$2.UNKNOWN_NETWORK_ERROR && err.networkError && err.networkError.message) {
13565
+ if (error && error.code === ErrorCodes.UNKNOWN_NETWORK_ERROR && err.networkError && err.networkError.message) {
13581
13566
  console.error('[graphql] original error: ' + err.networkError.message);
13582
13567
  this.onNetworkError.next(error);
13583
13568
  }
@@ -13588,7 +13573,7 @@ class GraphqlService extends StartableService {
13588
13573
  data: null,
13589
13574
  errors: [error],
13590
13575
  loading: false,
13591
- networkStatus: null
13576
+ networkStatus: NetworkStatus.error
13592
13577
  };
13593
13578
  }
13594
13579
  createAppErrorByCode(errorCode) {
@@ -13613,7 +13598,7 @@ class GraphqlService extends StartableService {
13613
13598
  return 'ERROR.UNAUTHORIZED';
13614
13599
  case ServerErrorCodes.FORBIDDEN:
13615
13600
  return 'ERROR.FORBIDDEN';
13616
- case ErrorCodes$2.UNKNOWN_NETWORK_ERROR:
13601
+ case ErrorCodes.UNKNOWN_NETWORK_ERROR:
13617
13602
  return 'ERROR.UNKNOWN_NETWORK_ERROR';
13618
13603
  case ServerErrorCodes.BAD_UPDATE_DATE:
13619
13604
  return 'ERROR.BAD_UPDATE_DATE';
@@ -13644,7 +13629,7 @@ class GraphqlService extends StartableService {
13644
13629
  return undefined;
13645
13630
  }
13646
13631
  }
13647
- 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" });
13632
+ GraphqlService.ɵprov = ɵɵdefineInjectable({ factory: function GraphqlService_Factory() { return new GraphqlService(ɵɵinject(Platform), ɵɵinject(Apollo), ɵɵinject(HttpLink), ɵɵinject(NetworkService), ɵɵinject(Storage), ɵɵinject(CryptoService), ɵɵinject(ENVIRONMENT), ɵɵinject(APP_GRAPHQL_TYPE_POLICIES, 8)); }, token: GraphqlService, providedIn: "root" });
13648
13633
  GraphqlService.decorators = [
13649
13634
  { type: Injectable, args: [{
13650
13635
  providedIn: 'root'
@@ -13661,7 +13646,7 @@ GraphqlService.ctorParameters = () => [
13661
13646
  { type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [APP_GRAPHQL_TYPE_POLICIES,] }] }
13662
13647
  ];
13663
13648
 
13664
- const sha256 = require('hash.js/lib/hash/sha/256');
13649
+ const sha256$1 = require('hash.js/lib/hash/sha/256');
13665
13650
  class BaseGraphqlServiceOptions {
13666
13651
  }
13667
13652
  // eslint-disable-next-line @angular-eslint/directive-class-suffix
@@ -13812,8 +13797,8 @@ class BaseGraphqlService extends StartableService {
13812
13797
  }
13813
13798
  /* -- protected methods -- */
13814
13799
  computeMutableWatchQueryId(opts) {
13815
- const queryName = opts.queryName || sha256().update(JSON.stringify(opts.query)).digest('hex').substring(0, 8);
13816
- const variablesKey = opts.variables && sha256().update(JSON.stringify(opts.variables)).digest('hex').substring(0, 8) || '';
13800
+ const queryName = opts.queryName || sha256$1().update(JSON.stringify(opts.query)).digest('hex').substring(0, 8);
13801
+ const variablesKey = opts.variables && sha256$1().update(JSON.stringify(opts.variables)).digest('hex').substring(0, 8) || '';
13817
13802
  return [queryName, opts.arrayFieldName, variablesKey].join('|');
13818
13803
  }
13819
13804
  findMutableWatchQueries(opts) {
@@ -13883,7 +13868,7 @@ const DEFAULT_AVATAR_IMAGE = 'assets/img/person.png';
13883
13868
  /* ------------------------------------
13884
13869
  * GraphQL queries
13885
13870
  * ------------------------------------*/
13886
- const Fragments$1 = {
13871
+ const Fragments = {
13887
13872
  account: gql `
13888
13873
  fragment AccountFragment on AccountVO {
13889
13874
  id
@@ -13918,14 +13903,14 @@ const Fragments$1 = {
13918
13903
  }`
13919
13904
  };
13920
13905
  // Load account query
13921
- const LoadQuery$1 = gql `
13906
+ const LoadQuery = gql `
13922
13907
  query Account {
13923
13908
  data: account {
13924
13909
  ...AccountFragment
13925
13910
  }
13926
13911
  }
13927
- ${Fragments$1.account}
13928
- ${Fragments$1.settings}
13912
+ ${Fragments.account}
13913
+ ${Fragments.settings}
13929
13914
  `;
13930
13915
  // Check email query
13931
13916
  const IsEmailExistsQuery = gql `
@@ -13940,21 +13925,21 @@ const AccountMutations = {
13940
13925
  ...AccountFragment
13941
13926
  }
13942
13927
  }
13943
- ${Fragments$1.account}
13944
- ${Fragments$1.settings}`,
13928
+ ${Fragments.account}
13929
+ ${Fragments.settings}`,
13945
13930
  create: gql `mutation CreateAccount($data:AccountVOInput){
13946
13931
  data: createAccount(account: $data){
13947
13932
  ...AccountFragment
13948
13933
  }
13949
13934
  }
13950
- ${Fragments$1.account}
13951
- ${Fragments$1.settings}`,
13935
+ ${Fragments.account}
13936
+ ${Fragments.settings}`,
13952
13937
  saveSettings: gql `mutation SaveSettings($data:UserSettingsVOInput){
13953
13938
  data: saveSettings(settings: $data){
13954
13939
  ...UserSettingsFragment
13955
13940
  }
13956
13941
  }
13957
- ${Fragments$1.settings}`
13942
+ ${Fragments.settings}`
13958
13943
  };
13959
13944
  // Sent confirmation email
13960
13945
  const SendConfirmEmailMutation = gql `
@@ -14269,7 +14254,7 @@ class AccountService extends BaseGraphqlService {
14269
14254
  catch (error) {
14270
14255
  console.error(error);
14271
14256
  this.resetData();
14272
- throw { code: ErrorCodes$2.UNKNOWN_ERROR, message: 'ERROR.SCRYPT_ERROR' };
14257
+ throw { code: ErrorCodes.UNKNOWN_ERROR, message: 'ERROR.SCRYPT_ERROR' };
14273
14258
  }
14274
14259
  // Store pubkey+keypair
14275
14260
  this._cache.pubkey = Base58.encode(keypair.publicKey);
@@ -14303,7 +14288,7 @@ class AccountService extends BaseGraphqlService {
14303
14288
  }
14304
14289
  catch (err) {
14305
14290
  // If account not found, check if email is valid
14306
- if (err && +(err.code) === ErrorCodes$2.LOAD_ACCOUNT_ERROR) {
14291
+ if (err && +(err.code) === ErrorCodes.LOAD_ACCOUNT_ERROR) {
14307
14292
  // Check email exists
14308
14293
  if (data.username.indexOf('@') !== -1) {
14309
14294
  let isEmailExists;
@@ -14315,11 +14300,11 @@ class AccountService extends BaseGraphqlService {
14315
14300
  }
14316
14301
  // Email not exists (no account)
14317
14302
  if (!isEmailExists) {
14318
- throw { code: ErrorCodes$2.UNKNOWN_ACCOUNT_EMAIL, message: 'ERROR.UNKNOWN_ACCOUNT_EMAIL' };
14303
+ throw { code: ErrorCodes.UNKNOWN_ACCOUNT_EMAIL, message: 'ERROR.UNKNOWN_ACCOUNT_EMAIL' };
14319
14304
  }
14320
14305
  }
14321
14306
  // Email exists, so error = 'bad password'
14322
- throw { code: ErrorCodes$2.BAD_PASSWORD, message: 'ERROR.BAD_PASSWORD' };
14307
+ throw { code: ErrorCodes.BAD_PASSWORD, message: 'ERROR.BAD_PASSWORD' };
14323
14308
  }
14324
14309
  throw err; // resend the first error
14325
14310
  }
@@ -14465,8 +14450,8 @@ class AccountService extends BaseGraphqlService {
14465
14450
  // Load remotely
14466
14451
  else {
14467
14452
  const { data } = yield this.graphql.query({
14468
- query: LoadQuery$1,
14469
- error: { code: ErrorCodes$2.LOAD_ACCOUNT_ERROR, message: 'ERROR.LOAD_ACCOUNT_ERROR' },
14453
+ query: LoadQuery,
14454
+ error: { code: ErrorCodes.LOAD_ACCOUNT_ERROR, message: 'ERROR.LOAD_ACCOUNT_ERROR' },
14470
14455
  fetchPolicy: opts && opts.fetchPolicy || 'no-cache' || undefined
14471
14456
  });
14472
14457
  json = data;
@@ -14493,7 +14478,7 @@ class AccountService extends BaseGraphqlService {
14493
14478
  return __awaiter(this, void 0, void 0, function* () {
14494
14479
  const isEmailExists = yield this.isEmailExists(email);
14495
14480
  if (isEmailExists) {
14496
- throw { code: ErrorCodes$2.EMAIL_ALREADY_REGISTERED, message: 'ERROR.EMAIL_ALREADY_REGISTERED' };
14481
+ throw { code: ErrorCodes.EMAIL_ALREADY_REGISTERED, message: 'ERROR.EMAIL_ALREADY_REGISTERED' };
14497
14482
  }
14498
14483
  });
14499
14484
  }
@@ -14529,7 +14514,7 @@ class AccountService extends BaseGraphqlService {
14529
14514
  locale
14530
14515
  },
14531
14516
  error: {
14532
- code: ErrorCodes$2.SENT_CONFIRMATION_EMAIL_FAILED,
14517
+ code: ErrorCodes.SENT_CONFIRMATION_EMAIL_FAILED,
14533
14518
  message: 'ERROR.SENT_ACCOUNT_CONFIRMATION_EMAIL_FAILED'
14534
14519
  }
14535
14520
  });
@@ -14545,7 +14530,7 @@ class AccountService extends BaseGraphqlService {
14545
14530
  code
14546
14531
  },
14547
14532
  error: {
14548
- code: ErrorCodes$2.CONFIRM_EMAIL_FAILED,
14533
+ code: ErrorCodes.CONFIRM_EMAIL_FAILED,
14549
14534
  message: 'ERROR.CONFIRM_ACCOUNT_EMAIL_FAILED'
14550
14535
  }
14551
14536
  });
@@ -14624,7 +14609,7 @@ class AccountService extends BaseGraphqlService {
14624
14609
  throw error;
14625
14610
  console.error(error);
14626
14611
  throw {
14627
- code: ErrorCodes$2.LOAD_ACCOUNT_ERROR,
14612
+ code: ErrorCodes.LOAD_ACCOUNT_ERROR,
14628
14613
  message: 'ERROR.LOAD_ACCOUNT_ERROR'
14629
14614
  };
14630
14615
  }
@@ -14794,7 +14779,7 @@ class AccountService extends BaseGraphqlService {
14794
14779
  if (!isNew) {
14795
14780
  const existingAccount = yield this.load({ fetchPolicy: 'network-only' });
14796
14781
  if (!existingAccount || !existingAccount.updateDate) {
14797
- throw { code: ErrorCodes$2.ACCOUNT_NOT_EXISTS, message: 'ERROR.ACCOUNT_NOT_EXISTS' };
14782
+ throw { code: ErrorCodes.ACCOUNT_NOT_EXISTS, message: 'ERROR.ACCOUNT_NOT_EXISTS' };
14798
14783
  }
14799
14784
  this.copyIdAndUpdateDate(existingAccount, account);
14800
14785
  }
@@ -14806,7 +14791,7 @@ class AccountService extends BaseGraphqlService {
14806
14791
  mutation: isNew ? AccountMutations.create : AccountMutations.save,
14807
14792
  variables: { data: json },
14808
14793
  error: {
14809
- code: ErrorCodes$2.SAVE_ACCOUNT_ERROR,
14794
+ code: ErrorCodes.SAVE_ACCOUNT_ERROR,
14810
14795
  message: 'ERROR.SAVE_ACCOUNT_ERROR'
14811
14796
  }
14812
14797
  });
@@ -14833,7 +14818,7 @@ class AccountService extends BaseGraphqlService {
14833
14818
  mutation: AccountMutations.saveSettings,
14834
14819
  variables: { data: json },
14835
14820
  error: {
14836
- code: ErrorCodes$2.SAVE_SETTINGS_ERROR,
14821
+ code: ErrorCodes.SAVE_SETTINGS_ERROR,
14837
14822
  message: 'ERROR.SAVE_SETTINGS_ERROR'
14838
14823
  }
14839
14824
  });
@@ -14855,7 +14840,7 @@ class AccountService extends BaseGraphqlService {
14855
14840
  if (counter > 4) {
14856
14841
  if (this._debug)
14857
14842
  console.debug(`[account] Failed to authentication on pod (after ${counter} attempts)`);
14858
- throw { code: ErrorCodes$2.AUTH_SERVER_ERROR, message: 'ERROR.AUTH_SERVER_ERROR' };
14843
+ throw { code: ErrorCodes.AUTH_SERVER_ERROR, message: 'ERROR.AUTH_SERVER_ERROR' };
14859
14844
  }
14860
14845
  // Check if valid
14861
14846
  if (token) {
@@ -14865,7 +14850,7 @@ class AccountService extends BaseGraphqlService {
14865
14850
  token
14866
14851
  },
14867
14852
  error: {
14868
- code: ErrorCodes$2.UNAUTHORIZED,
14853
+ code: ErrorCodes.UNAUTHORIZED,
14869
14854
  message: 'ERROR.UNAUTHORIZED'
14870
14855
  },
14871
14856
  fetchPolicy: 'no-cache'
@@ -14881,7 +14866,7 @@ class AccountService extends BaseGraphqlService {
14881
14866
  }
14882
14867
  // Generate a new token
14883
14868
  const challengeError = {
14884
- code: ErrorCodes$2.AUTH_CHALLENGE_ERROR,
14869
+ code: ErrorCodes.AUTH_CHALLENGE_ERROR,
14885
14870
  message: 'ERROR.AUTH_CHALLENGE_ERROR'
14886
14871
  };
14887
14872
  const data = yield this.graphql.query({
@@ -14959,7 +14944,7 @@ class AccountService extends BaseGraphqlService {
14959
14944
  query: AccountSubscriptions.listenChanges,
14960
14945
  variables,
14961
14946
  error: {
14962
- code: ErrorCodes$2.SUBSCRIBE_ACCOUNT_ERROR,
14947
+ code: ErrorCodes.SUBSCRIBE_ACCOUNT_ERROR,
14963
14948
  message: 'ERROR.ACCOUNT.SUBSCRIBE_ERROR'
14964
14949
  }
14965
14950
  }).pipe(map(({ data }) => data),
@@ -14988,7 +14973,7 @@ class AccountService extends BaseGraphqlService {
14988
14973
  return Toasts.show(this.toastController, this.translate, opts);
14989
14974
  }
14990
14975
  }
14991
- 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(i1$1.TranslateService, 8), i0.ɵɵinject(i1$4.ToastController, 8), i0.ɵɵinject(ENVIRONMENT)); }, token: AccountService, providedIn: "root" });
14976
+ AccountService.ɵprov = ɵɵdefineInjectable({ factory: function AccountService_Factory() { return new AccountService(ɵɵinject(CryptoService), ɵɵinject(NetworkService), ɵɵinject(GraphqlService), ɵɵinject(LocalSettingsService), ɵɵinject(Storage), ɵɵinject(FileService), ɵɵinject(TranslateService, 8), ɵɵinject(ToastController, 8), ɵɵinject(ENVIRONMENT)); }, token: AccountService, providedIn: "root" });
14992
14977
  AccountService.decorators = [
14993
14978
  { type: Injectable, args: [{ providedIn: 'root', deps: [ENVIRONMENT] },] }
14994
14979
  ];
@@ -15256,7 +15241,7 @@ const CONFIGURATION_STORAGE_KEY = 'configuration';
15256
15241
  /* ------------------------------------
15257
15242
  * GraphQL queries
15258
15243
  * ------------------------------------*/
15259
- const Fragments = {
15244
+ const Fragments$1 = {
15260
15245
  config: gql `
15261
15246
  fragment ConfigFragment on ConfigurationVO {
15262
15247
  id
@@ -15283,13 +15268,13 @@ const Fragments = {
15283
15268
  }
15284
15269
  `
15285
15270
  };
15286
- const LoadQuery = gql `
15271
+ const LoadQuery$1 = gql `
15287
15272
  query Configuration{
15288
15273
  data: configuration{
15289
15274
  ...ConfigFragment
15290
15275
  }
15291
15276
  }
15292
- ${Fragments.config}
15277
+ ${Fragments$1.config}
15293
15278
  `;
15294
15279
  // Save (create or update) account mutation
15295
15280
  const SaveMutation = gql `
@@ -15298,7 +15283,7 @@ const SaveMutation = gql `
15298
15283
  ...ConfigFragment
15299
15284
  }
15300
15285
  }
15301
- ${Fragments.config}
15286
+ ${Fragments$1.config}
15302
15287
  `;
15303
15288
  const ClearCache = gql `
15304
15289
  query ClearCache($name: String) {
@@ -15349,12 +15334,12 @@ class ConfigService extends BaseGraphqlService {
15349
15334
  return __awaiter(this, void 0, void 0, function* () {
15350
15335
  const now = Date.now();
15351
15336
  console.debug('[config] Loading Pod configuration...');
15352
- const query = opts && opts.query || LoadQuery;
15337
+ const query = opts && opts.query || LoadQuery$1;
15353
15338
  const variables = opts && opts.variables || undefined;
15354
15339
  const res = yield this.graphql.query({
15355
15340
  query,
15356
15341
  variables,
15357
- error: { code: ErrorCodes$2.LOAD_CONFIG_ERROR, message: 'ERROR.LOAD_CONFIG_ERROR' },
15342
+ error: { code: ErrorCodes.LOAD_CONFIG_ERROR, message: 'ERROR.LOAD_CONFIG_ERROR' },
15358
15343
  fetchPolicy: opts && opts.fetchPolicy || undefined /*default*/
15359
15344
  });
15360
15345
  const data = res && res.data ? Configuration.fromObject(res.data) : undefined;
@@ -15387,7 +15372,7 @@ class ConfigService extends BaseGraphqlService {
15387
15372
  data: json
15388
15373
  },
15389
15374
  error: {
15390
- code: ErrorCodes$2.SAVE_CONFIG_ERROR,
15375
+ code: ErrorCodes.SAVE_CONFIG_ERROR,
15391
15376
  message: 'ERROR.SAVE_CONFIG_ERROR'
15392
15377
  }
15393
15378
  });
@@ -15413,7 +15398,7 @@ class ConfigService extends BaseGraphqlService {
15413
15398
  const res = yield this.graphql.query({
15414
15399
  query: CacheStatistics,
15415
15400
  variables: null,
15416
- error: { code: ErrorCodes$2.LOAD_CONFIG_ERROR, message: 'ERROR.LOAD_CONFIG_ERROR' },
15401
+ error: { code: ErrorCodes.LOAD_CONFIG_ERROR, message: 'ERROR.LOAD_CONFIG_ERROR' },
15417
15402
  fetchPolicy: 'network-only'
15418
15403
  });
15419
15404
  const data = res && res.cacheStatistics || undefined;
@@ -15429,7 +15414,7 @@ class ConfigService extends BaseGraphqlService {
15429
15414
  const res = yield this.graphql.query({
15430
15415
  query: ClearCache,
15431
15416
  variables,
15432
- error: { code: ErrorCodes$2.LOAD_CONFIG_ERROR, message: 'ERROR.LOAD_CONFIG_ERROR' },
15417
+ error: { code: ErrorCodes.LOAD_CONFIG_ERROR, message: 'ERROR.LOAD_CONFIG_ERROR' },
15433
15418
  fetchPolicy: 'no-cache'
15434
15419
  });
15435
15420
  const data = res && res.clearCache || undefined;
@@ -15588,7 +15573,7 @@ class ConfigService extends BaseGraphqlService {
15588
15573
  });
15589
15574
  }
15590
15575
  }
15591
- 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(AccountService), i0.ɵɵinject(ENVIRONMENT), i0.ɵɵinject(APP_CONFIG_OPTIONS, 8)); }, token: ConfigService, providedIn: "root" });
15576
+ ConfigService.ɵprov = ɵɵdefineInjectable({ factory: function ConfigService_Factory() { return new ConfigService(ɵɵinject(Platform), ɵɵinject(GraphqlService), ɵɵinject(Storage), ɵɵinject(NetworkService), ɵɵinject(FileService), ɵɵinject(ToastController), ɵɵinject(TranslateService), ɵɵinject(AccountService), ɵɵinject(ENVIRONMENT), ɵɵinject(APP_CONFIG_OPTIONS, 8)); }, token: ConfigService, providedIn: "root" });
15592
15577
  ConfigService.decorators = [
15593
15578
  { type: Injectable, args: [{
15594
15579
  providedIn: 'root',
@@ -15608,7 +15593,7 @@ ConfigService.ctorParameters = () => [
15608
15593
  { type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [APP_CONFIG_OPTIONS,] }] }
15609
15594
  ];
15610
15595
 
15611
- const moment$3 = momentImported;
15596
+ const moment$4 = momentImported;
15612
15597
  const AndroidOsEnvironment = Object.freeze({
15613
15598
  DIRECTORY_DOWNLOADS: 'Download',
15614
15599
  DIRECTORY_DOWNLOADS_OLD: 'Downloads',
@@ -15842,16 +15827,16 @@ class PlatformService extends StartableService {
15842
15827
  }
15843
15828
  // config moment lib
15844
15829
  try {
15845
- moment$3.locale(event.lang);
15830
+ moment$4.locale(event.lang);
15846
15831
  console.debug('[platform] Use locale {' + event.lang + '}');
15847
15832
  }
15848
15833
  // If error, fallback to en
15849
15834
  catch (err) {
15850
- moment$3.locale('en');
15835
+ moment$4.locale('en');
15851
15836
  console.warn('[platform] Unknown local for moment lib. Using default [en]');
15852
15837
  }
15853
15838
  // Config date adapter
15854
- this.dateAdapter.setLocale(moment$3.locale());
15839
+ this.dateAdapter.setLocale(moment$4.locale());
15855
15840
  }
15856
15841
  });
15857
15842
  this.settings.onChange.subscribe(data => {
@@ -16052,7 +16037,7 @@ class PlatformService extends StartableService {
16052
16037
  });
16053
16038
  }
16054
16039
  }
16055
- 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" });
16040
+ PlatformService.ɵprov = ɵɵdefineInjectable({ factory: function PlatformService_Factory() { return new PlatformService(ɵɵinject(Platform), ɵɵinject(Platform$1), ɵɵinject(ToastController), ɵɵinject(TranslateService), ɵɵinject(MomentDateAdapter), ɵɵinject(EntitiesStorage), ɵɵinject(LocalSettingsService), ɵɵinject(NetworkService), ɵɵinject(AccountService), ɵɵinject(ConfigService), ɵɵinject(CacheService), ɵɵinject(Storage), ɵɵinject(AudioProvider), ɵɵinject(ENVIRONMENT), ɵɵinject(StatusBar, 8), ɵɵinject(Keyboard$1, 8), ɵɵinject(SplashScreen, 8), ɵɵinject(InAppBrowser, 8), ɵɵinject(Downloader, 8)); }, token: PlatformService, providedIn: "root" });
16056
16041
  PlatformService.decorators = [
16057
16042
  { type: Injectable, args: [{ providedIn: 'root' },] }
16058
16043
  ];
@@ -16067,15 +16052,15 @@ PlatformService.ctorParameters = () => [
16067
16052
  { type: NetworkService },
16068
16053
  { type: AccountService },
16069
16054
  { type: ConfigService },
16070
- { type: CacheService },
16055
+ { type: CacheService$1 },
16071
16056
  { type: Storage },
16072
16057
  { type: AudioProvider },
16073
16058
  { type: undefined, decorators: [{ type: Inject, args: [ENVIRONMENT,] }] },
16074
- { type: StatusBar, decorators: [{ type: Optional }] },
16059
+ { type: StatusBar$1, decorators: [{ type: Optional }] },
16075
16060
  { type: Keyboard, decorators: [{ type: Optional }] },
16076
- { type: SplashScreen, decorators: [{ type: Optional }] },
16077
- { type: InAppBrowser, decorators: [{ type: Optional }] },
16078
- { type: Downloader, decorators: [{ type: Optional }] }
16061
+ { type: SplashScreen$1, decorators: [{ type: Optional }] },
16062
+ { type: InAppBrowser$1, decorators: [{ type: Optional }] },
16063
+ { type: Downloader$1, decorators: [{ type: Optional }] }
16079
16064
  ];
16080
16065
 
16081
16066
  class AppHelpModal {
@@ -16139,7 +16124,7 @@ class MatStepperI18n extends MatStepperIntl {
16139
16124
  this.optionalLabel = this.translate.instant('COMMON.OPTIONAL');
16140
16125
  }
16141
16126
  }
16142
- MatStepperI18n.ɵprov = i0.ɵɵdefineInjectable({ factory: function MatStepperI18n_Factory() { return new MatStepperI18n(i0.ɵɵinject(i1$1.TranslateService)); }, token: MatStepperI18n, providedIn: "root" });
16127
+ MatStepperI18n.ɵprov = ɵɵdefineInjectable({ factory: function MatStepperI18n_Factory() { return new MatStepperI18n(ɵɵinject(TranslateService)); }, token: MatStepperI18n, providedIn: "root" });
16143
16128
  MatStepperI18n.decorators = [
16144
16129
  { type: Injectable, args: [{ providedIn: 'root' },] }
16145
16130
  ];
@@ -17747,7 +17732,7 @@ class JobUtils {
17747
17732
  }
17748
17733
  // Or increment once
17749
17734
  else if (opts && opts.progression && opts.maxProgression) {
17750
- opts.progression.next(opts.maxProgression);
17735
+ opts.progression.next(opts.progression.value + opts.maxProgression);
17751
17736
  }
17752
17737
  return {
17753
17738
  data,
@@ -17965,7 +17950,7 @@ function state2side(state) {
17965
17950
  return 1;
17966
17951
  }
17967
17952
  }
17968
- const ɵ0$1 = (defaultStateSize) => [
17953
+ const ɵ0$b = (defaultStateSize) => [
17969
17954
  Math.round((rgbArrayMap.red[0] - 50) / defaultStateSize),
17970
17955
  Math.round((255 - rgbArrayMap.red[1]) / defaultStateSize),
17971
17956
  Math.round((255 - rgbArrayMap.red[2]) / defaultStateSize)
@@ -17973,7 +17958,7 @@ const ɵ0$1 = (defaultStateSize) => [
17973
17958
  const SCALE_OPTIONS_DEFAULT = {
17974
17959
  startColor: rgbArrayMap.red,
17975
17960
  startStates: [0, 2, 3],
17976
- startStepsFn: ɵ0$1
17961
+ startStepsFn: ɵ0$b
17977
17962
  };
17978
17963
  /**
17979
17964
  * Internal function, that create a colors scale, using iteration
@@ -18770,7 +18755,7 @@ class UserSettingsValidatorService extends AppValidatorService {
18770
18755
  });
18771
18756
  }
18772
18757
  }
18773
- UserSettingsValidatorService.ɵprov = i0.ɵɵdefineInjectable({ factory: function UserSettingsValidatorService_Factory() { return new UserSettingsValidatorService(i0.ɵɵinject(i1$6.FormBuilder)); }, token: UserSettingsValidatorService, providedIn: "root" });
18758
+ UserSettingsValidatorService.ɵprov = ɵɵdefineInjectable({ factory: function UserSettingsValidatorService_Factory() { return new UserSettingsValidatorService(ɵɵinject(FormBuilder)); }, token: UserSettingsValidatorService, providedIn: "root" });
18774
18759
  UserSettingsValidatorService.decorators = [
18775
18760
  { type: Injectable, args: [{ providedIn: 'root' },] }
18776
18761
  ];
@@ -18814,7 +18799,7 @@ class AccountValidatorService extends AppValidatorService {
18814
18799
  return validatorFns.length ? Validators.compose(validatorFns) : validatorFns.length === 1 ? validatorFns[0] : undefined;
18815
18800
  }
18816
18801
  }
18817
- AccountValidatorService.ɵprov = i0.ɵɵdefineInjectable({ factory: function AccountValidatorService_Factory() { return new AccountValidatorService(i0.ɵɵinject(i1$6.FormBuilder), i0.ɵɵinject(AccountService)); }, token: AccountValidatorService, providedIn: "root" });
18802
+ AccountValidatorService.ɵprov = ɵɵdefineInjectable({ factory: function AccountValidatorService_Factory() { return new AccountValidatorService(ɵɵinject(FormBuilder), ɵɵinject(AccountService)); }, token: AccountValidatorService, providedIn: "root" });
18818
18803
  AccountValidatorService.decorators = [
18819
18804
  { type: Injectable, args: [{ providedIn: 'root' },] }
18820
18805
  ];
@@ -19379,7 +19364,7 @@ class LocalSettingsValidatorService extends AppValidatorService {
19379
19364
  });
19380
19365
  }
19381
19366
  }
19382
- LocalSettingsValidatorService.ɵprov = i0.ɵɵdefineInjectable({ factory: function LocalSettingsValidatorService_Factory() { return new LocalSettingsValidatorService(i0.ɵɵinject(i1$6.FormBuilder), i0.ɵɵinject(NetworkService)); }, token: LocalSettingsValidatorService, providedIn: "root" });
19367
+ LocalSettingsValidatorService.ɵprov = ɵɵdefineInjectable({ factory: function LocalSettingsValidatorService_Factory() { return new LocalSettingsValidatorService(ɵɵinject(FormBuilder), ɵɵinject(NetworkService)); }, token: LocalSettingsValidatorService, providedIn: "root" });
19383
19368
  LocalSettingsValidatorService.decorators = [
19384
19369
  { type: Injectable, args: [{ providedIn: 'root' },] }
19385
19370
  ];
@@ -19998,7 +19983,7 @@ class IsOnFieldModePipe {
19998
19983
  return value === 'FIELD';
19999
19984
  }
20000
19985
  }
20001
- IsOnFieldModePipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function IsOnFieldModePipe_Factory() { return new IsOnFieldModePipe(); }, token: IsOnFieldModePipe, providedIn: "root" });
19986
+ IsOnFieldModePipe.ɵprov = ɵɵdefineInjectable({ factory: function IsOnFieldModePipe_Factory() { return new IsOnFieldModePipe(); }, token: IsOnFieldModePipe, providedIn: "root" });
20002
19987
  IsOnFieldModePipe.decorators = [
20003
19988
  { type: Pipe, args: [{
20004
19989
  name: 'isOnField'
@@ -20010,7 +19995,7 @@ class IsNotOnFieldModePipe {
20010
19995
  return value !== 'FIELD';
20011
19996
  }
20012
19997
  }
20013
- IsNotOnFieldModePipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function IsNotOnFieldModePipe_Factory() { return new IsNotOnFieldModePipe(); }, token: IsNotOnFieldModePipe, providedIn: "root" });
19998
+ IsNotOnFieldModePipe.ɵprov = ɵɵdefineInjectable({ factory: function IsNotOnFieldModePipe_Factory() { return new IsNotOnFieldModePipe(); }, token: IsNotOnFieldModePipe, providedIn: "root" });
20014
19999
  IsNotOnFieldModePipe.decorators = [
20015
20000
  { type: Pipe, args: [{
20016
20001
  name: 'isNotOnField'
@@ -20025,7 +20010,7 @@ class PersonToStringPipe {
20025
20010
  return PersonUtils.personToString(value);
20026
20011
  }
20027
20012
  }
20028
- PersonToStringPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function PersonToStringPipe_Factory() { return new PersonToStringPipe(); }, token: PersonToStringPipe, providedIn: "root" });
20013
+ PersonToStringPipe.ɵprov = ɵɵdefineInjectable({ factory: function PersonToStringPipe_Factory() { return new PersonToStringPipe(); }, token: PersonToStringPipe, providedIn: "root" });
20029
20014
  PersonToStringPipe.decorators = [
20030
20015
  { type: Pipe, args: [{
20031
20016
  name: 'personToString'
@@ -20410,7 +20395,7 @@ class IsLoginAccountPipe {
20410
20395
  return value && value.pubkey && true;
20411
20396
  }
20412
20397
  }
20413
- IsLoginAccountPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function IsLoginAccountPipe_Factory() { return new IsLoginAccountPipe(); }, token: IsLoginAccountPipe, providedIn: "root" });
20398
+ IsLoginAccountPipe.ɵprov = ɵɵdefineInjectable({ factory: function IsLoginAccountPipe_Factory() { return new IsLoginAccountPipe(); }, token: IsLoginAccountPipe, providedIn: "root" });
20414
20399
  IsLoginAccountPipe.decorators = [
20415
20400
  { type: Pipe, args: [{
20416
20401
  name: 'isLogin'
@@ -20422,7 +20407,7 @@ class AccountToStringPipe {
20422
20407
  return accountToString(value);
20423
20408
  }
20424
20409
  }
20425
- AccountToStringPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function AccountToStringPipe_Factory() { return new AccountToStringPipe(); }, token: AccountToStringPipe, providedIn: "root" });
20410
+ AccountToStringPipe.ɵprov = ɵɵdefineInjectable({ factory: function AccountToStringPipe_Factory() { return new AccountToStringPipe(); }, token: AccountToStringPipe, providedIn: "root" });
20426
20411
  AccountToStringPipe.decorators = [
20427
20412
  { type: Pipe, args: [{
20428
20413
  name: 'accountToString'
@@ -20437,7 +20422,7 @@ class DepartmentToStringPipe {
20437
20422
  return departmentToString(value);
20438
20423
  }
20439
20424
  }
20440
- DepartmentToStringPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function DepartmentToStringPipe_Factory() { return new DepartmentToStringPipe(); }, token: DepartmentToStringPipe, providedIn: "root" });
20425
+ DepartmentToStringPipe.ɵprov = ɵɵdefineInjectable({ factory: function DepartmentToStringPipe_Factory() { return new DepartmentToStringPipe(); }, token: DepartmentToStringPipe, providedIn: "root" });
20441
20426
  DepartmentToStringPipe.decorators = [
20442
20427
  { type: Pipe, args: [{
20443
20428
  name: 'departmentToString'
@@ -20533,7 +20518,7 @@ class MenuService {
20533
20518
  this._visibleSubject.next(value);
20534
20519
  }
20535
20520
  }
20536
- MenuService.ɵprov = i0.ɵɵdefineInjectable({ factory: function MenuService_Factory() { return new MenuService(); }, token: MenuService, providedIn: "root" });
20521
+ MenuService.ɵprov = ɵɵdefineInjectable({ factory: function MenuService_Factory() { return new MenuService(); }, token: MenuService, providedIn: "root" });
20537
20522
  MenuService.decorators = [
20538
20523
  { type: Injectable, args: [{
20539
20524
  providedIn: 'root'
@@ -20995,7 +20980,7 @@ class AuthGuardService {
20995
20980
  }));
20996
20981
  }
20997
20982
  }
20998
- 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" });
20983
+ AuthGuardService.ɵprov = ɵɵdefineInjectable({ factory: function AuthGuardService_Factory() { return new AuthGuardService(ɵɵinject(AccountService), ɵɵinject(ModalController), ɵɵinject(Router), ɵɵinject(ENVIRONMENT)); }, token: AuthGuardService, providedIn: "root" });
20999
20984
  AuthGuardService.decorators = [
21000
20985
  { type: Injectable, args: [{ providedIn: 'root' },] }
21001
20986
  ];
@@ -21037,7 +21022,7 @@ class BaseEntityService extends BaseGraphqlService {
21037
21022
  query,
21038
21023
  variables: { id },
21039
21024
  fetchPolicy: opts && opts.fetchPolicy || undefined,
21040
- error: { code: ErrorCodes$2.LOAD_DATA_ERROR, message: 'REFERENTIAL.ERROR.LOAD_DATA_ERROR' }
21025
+ error: { code: ErrorCodes.LOAD_DATA_ERROR, message: 'REFERENTIAL.ERROR.LOAD_DATA_ERROR' }
21041
21026
  })
21042
21027
  .pipe(map(({ data }) => (!opts || opts.toEntity !== false)
21043
21028
  ? (data && this.fromObject(data))
@@ -21052,7 +21037,7 @@ class BaseEntityService extends BaseGraphqlService {
21052
21037
  query,
21053
21038
  variables: { id },
21054
21039
  fetchPolicy: opts && opts.fetchPolicy || undefined,
21055
- error: { code: ErrorCodes$2.LOAD_DATA_ERROR, message: 'REFERENTIAL.ERROR.LOAD_DATA_ERROR' }
21040
+ error: { code: ErrorCodes.LOAD_DATA_ERROR, message: 'REFERENTIAL.ERROR.LOAD_DATA_ERROR' }
21056
21041
  });
21057
21042
  // Convert to entity
21058
21043
  return (!opts || opts.toEntity !== false)
@@ -21083,7 +21068,7 @@ class BaseEntityService extends BaseGraphqlService {
21083
21068
  totalFieldName: withTotal ? 'total' : undefined,
21084
21069
  insertFilterFn: filter && filter.asFilterFn(),
21085
21070
  variables,
21086
- error: { code: ErrorCodes$2.LOAD_DATA_ERROR, message: 'REFERENTIAL.ERROR.LOAD_DATA_ERROR' },
21071
+ error: { code: ErrorCodes.LOAD_DATA_ERROR, message: 'REFERENTIAL.ERROR.LOAD_DATA_ERROR' },
21087
21072
  fetchPolicy: opts && opts.fetchPolicy || undefined
21088
21073
  })
21089
21074
  .pipe(map(({ data, total }) => {
@@ -21119,7 +21104,7 @@ class BaseEntityService extends BaseGraphqlService {
21119
21104
  const { data, total } = yield this.graphql.query({
21120
21105
  query,
21121
21106
  variables,
21122
- error: { code: ErrorCodes$2.LOAD_DATA_ERROR, message: 'ERROR.LOAD_DATA_ERROR' },
21107
+ error: { code: ErrorCodes.LOAD_DATA_ERROR, message: 'ERROR.LOAD_DATA_ERROR' },
21123
21108
  fetchPolicy: opts && opts.fetchPolicy || 'network-only'
21124
21109
  });
21125
21110
  const entities = (!opts || opts.toEntity !== false) ?
@@ -21158,7 +21143,7 @@ class BaseEntityService extends BaseGraphqlService {
21158
21143
  variables: {
21159
21144
  filter: filter && filter.asPodObject()
21160
21145
  },
21161
- error: { code: ErrorCodes$2.LOAD_DATA_ERROR, message: 'ERROR.COUNT_DATA_ERROR' },
21146
+ error: { code: ErrorCodes.LOAD_DATA_ERROR, message: 'ERROR.COUNT_DATA_ERROR' },
21162
21147
  fetchPolicy: opts && opts.fetchPolicy || 'network-only'
21163
21148
  });
21164
21149
  return res.total;
@@ -21194,7 +21179,7 @@ class BaseEntityService extends BaseGraphqlService {
21194
21179
  variables: {
21195
21180
  data: json
21196
21181
  },
21197
- error: { code: ErrorCodes$2.SAVE_DATA_ERROR, message: 'ERROR.SAVE_DATA_ERROR' },
21182
+ error: { code: ErrorCodes.SAVE_DATA_ERROR, message: 'ERROR.SAVE_DATA_ERROR' },
21198
21183
  update: (proxy, { data }) => {
21199
21184
  const savedEntities = data && data.data;
21200
21185
  if (savedEntities) {
@@ -21250,7 +21235,7 @@ class BaseEntityService extends BaseGraphqlService {
21250
21235
  variables: {
21251
21236
  data: json
21252
21237
  },
21253
- error: { code: ErrorCodes$2.SAVE_DATA_ERROR, message: 'ERROR.SAVE_DATA_ERROR' },
21238
+ error: { code: ErrorCodes.SAVE_DATA_ERROR, message: 'ERROR.SAVE_DATA_ERROR' },
21254
21239
  update: (cache, { data }) => {
21255
21240
  // Update entity
21256
21241
  const savedEntity = data && data.data;
@@ -21298,7 +21283,7 @@ class BaseEntityService extends BaseGraphqlService {
21298
21283
  refetchQueries: this.getRefetchQueriesForMutation(opts),
21299
21284
  awaitRefetchQueries: opts && opts.awaitRefetchQueries,
21300
21285
  variables: { ids },
21301
- error: { code: ErrorCodes$2.DELETE_DATA_ERROR, message: 'ERROR.DELETE_DATA_ERROR' },
21286
+ error: { code: ErrorCodes.DELETE_DATA_ERROR, message: 'ERROR.DELETE_DATA_ERROR' },
21302
21287
  update: (cache, res) => {
21303
21288
  // Remove from cache
21304
21289
  if (this.watchQueriesUpdatePolicy === 'update-cache') {
@@ -21339,7 +21324,7 @@ class BaseEntityService extends BaseGraphqlService {
21339
21324
  refetchQueries: this.getRefetchQueriesForMutation(opts),
21340
21325
  awaitRefetchQueries: opts && opts.awaitRefetchQueries,
21341
21326
  variables: { id },
21342
- error: { code: ErrorCodes$2.DELETE_DATA_ERROR, message: 'ERROR.DELETE_DATA_ERROR' },
21327
+ error: { code: ErrorCodes.DELETE_DATA_ERROR, message: 'ERROR.DELETE_DATA_ERROR' },
21343
21328
  update: (proxy, res) => {
21344
21329
  // Remove from cache
21345
21330
  if (this.watchQueriesUpdatePolicy === 'update-cache') {
@@ -21375,7 +21360,7 @@ class BaseEntityService extends BaseGraphqlService {
21375
21360
  fetchPolicy: opts && opts.fetchPolicy || 'no-cache',
21376
21361
  variables,
21377
21362
  error: {
21378
- code: ErrorCodes$2.SUBSCRIBE_DATA_ERROR,
21363
+ code: ErrorCodes.SUBSCRIBE_DATA_ERROR,
21379
21364
  message: 'ERROR.SUBSCRIBE_DATA_ERROR'
21380
21365
  }
21381
21366
  })
@@ -21561,7 +21546,7 @@ class EntitiesTableDataSource extends TableDataSource {
21561
21546
  if (this._debug)
21562
21547
  invalidRows.forEach(row => AppTableUtils.logRowErrors(row, `[table-datasource] ${this._logTypeName} row #${row.id}`));
21563
21548
  // Stop with an error
21564
- throw { code: ErrorCodes$2.TABLE_INVALID_ROW_ERROR, message: 'ERROR.TABLE_INVALID_ROW_ERROR' };
21549
+ throw { code: ErrorCodes.TABLE_INVALID_ROW_ERROR, message: 'ERROR.TABLE_INVALID_ROW_ERROR' };
21565
21550
  }
21566
21551
  this._editingRowCount = 0;
21567
21552
  let data;
@@ -22432,14 +22417,14 @@ class AppTable {
22432
22417
  return __awaiter(this, void 0, void 0, function* () {
22433
22418
  opts = Object.assign({ keepEditing: this.keepEditedRowOnSave }, opts);
22434
22419
  if (this.readOnly) {
22435
- throw { code: ErrorCodes$2.TABLE_READ_ONLY, message: 'ERROR.TABLE_READ_ONLY' };
22420
+ throw { code: ErrorCodes.TABLE_READ_ONLY, message: 'ERROR.TABLE_READ_ONLY' };
22436
22421
  }
22437
22422
  this.resetError();
22438
22423
  // Keep edited row id (should be done BEFORE confirmEditCreate() )
22439
22424
  this.previouslyEditedRowId = opts.keepEditing ? ((((_a = this.editedRow) === null || _a === void 0 ? void 0 : _a.editing) ? this.editedRow.id : undefined) || ((_b = this.singleSelectedRow) === null || _b === void 0 ? void 0 : _b.id)) : undefined;
22440
22425
  const previouslyEditedData = opts.keepEditing ? (isNotNil(this.previouslyEditedRowId) && ((_c = this.editedRow) === null || _c === void 0 ? void 0 : _c.currentData) || ((_d = this.singleSelectedRow) === null || _d === void 0 ? void 0 : _d.currentData)) : undefined;
22441
22426
  if (!this.confirmEditCreate()) {
22442
- throw { code: ErrorCodes$2.TABLE_INVALID_ROW_ERROR, message: 'ERROR.TABLE_INVALID_ROW_ERROR' };
22427
+ throw { code: ErrorCodes.TABLE_INVALID_ROW_ERROR, message: 'ERROR.TABLE_INVALID_ROW_ERROR' };
22443
22428
  }
22444
22429
  // Mark as saving
22445
22430
  this.markAsSaving();
@@ -22558,7 +22543,7 @@ class AppTable {
22558
22543
  var _a;
22559
22544
  return __awaiter(this, void 0, void 0, function* () {
22560
22545
  if (this.readOnly) {
22561
- throw { code: ErrorCodes$2.TABLE_READ_ONLY, message: 'ERROR.TABLE_READ_ONLY' };
22546
+ throw { code: ErrorCodes.TABLE_READ_ONLY, message: 'ERROR.TABLE_READ_ONLY' };
22562
22547
  }
22563
22548
  if (event === null || event === void 0 ? void 0 : event.defaultPrevented)
22564
22549
  return 0; // SKip
@@ -24138,7 +24123,7 @@ class AppEntityEditor extends AppTabEditor {
24138
24123
  try {
24139
24124
  const data = yield this.dataService.load(id, opts);
24140
24125
  if (!data)
24141
- throw { code: ErrorCodes$2.DATA_NOT_FOUND_ERROR, message: 'ERROR.DATA_NO_FOUND' };
24126
+ throw { code: ErrorCodes.DATA_NOT_FOUND_ERROR, message: 'ERROR.DATA_NO_FOUND' };
24142
24127
  this._usageMode = this.computeUsageMode(data);
24143
24128
  yield this.onEntityLoaded(data, opts);
24144
24129
  yield this.updateView(data, opts);
@@ -25090,7 +25075,7 @@ class UserEventService extends BaseGraphqlService {
25090
25075
  EntityUtils.copyIdAndUpdateDate(source, target);
25091
25076
  }
25092
25077
  }
25093
- 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" });
25078
+ UserEventService.ɵprov = ɵɵdefineInjectable({ factory: function UserEventService_Factory() { return new UserEventService(ɵɵinject(GraphqlService), ɵɵinject(AccountService), ɵɵinject(NetworkService), ɵɵinject(TranslateService), ɵɵinject(ToastController), ɵɵinject(ENVIRONMENT)); }, token: UserEventService, providedIn: "root" });
25094
25079
  UserEventService.decorators = [
25095
25080
  { type: Injectable, args: [{ providedIn: 'root' },] }
25096
25081
  ];
@@ -25471,7 +25456,7 @@ class PersonService extends BaseEntityService {
25471
25456
  return target;
25472
25457
  }
25473
25458
  }
25474
- 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" });
25459
+ PersonService.ɵprov = ɵɵdefineInjectable({ factory: function PersonService_Factory() { return new PersonService(ɵɵinject(GraphqlService), ɵɵinject(PlatformService), ɵɵinject(NetworkService), ɵɵinject(EntitiesStorage)); }, token: PersonService, providedIn: "root" });
25475
25460
  PersonService.decorators = [
25476
25461
  { type: Injectable, args: [{ providedIn: 'root' },] }
25477
25462
  ];
@@ -25502,7 +25487,7 @@ class PersonValidatorService {
25502
25487
  return this.formBuilder.group(formConfig);
25503
25488
  }
25504
25489
  }
25505
- PersonValidatorService.ɵprov = i0.ɵɵdefineInjectable({ factory: function PersonValidatorService_Factory() { return new PersonValidatorService(i0.ɵɵinject(i1$6.FormBuilder), i0.ɵɵinject(AccountValidatorService)); }, token: PersonValidatorService, providedIn: "root" });
25490
+ PersonValidatorService.ɵprov = ɵɵdefineInjectable({ factory: function PersonValidatorService_Factory() { return new PersonValidatorService(ɵɵinject(FormBuilder), ɵɵinject(AccountValidatorService)); }, token: PersonValidatorService, providedIn: "root" });
25506
25491
  PersonValidatorService.decorators = [
25507
25492
  { type: Injectable, args: [{ providedIn: 'root' },] }
25508
25493
  ];
@@ -25696,16 +25681,16 @@ AdminModule.decorators = [
25696
25681
  ];
25697
25682
  AdminModule.ctorParameters = () => [];
25698
25683
 
25699
- const ɵ0 = {
25684
+ const ɵ0$c = {
25700
25685
  profile: 'ADMIN'
25701
25686
  };
25702
- const routes$5 = [
25687
+ const routes = [
25703
25688
  {
25704
25689
  path: 'users',
25705
25690
  pathMatch: 'full',
25706
25691
  component: UsersPage,
25707
25692
  canActivate: [AuthGuardService],
25708
- data: ɵ0
25693
+ data: ɵ0$c
25709
25694
  }
25710
25695
  ];
25711
25696
  class AdminRoutingModule {
@@ -25715,33 +25700,33 @@ AdminRoutingModule.decorators = [
25715
25700
  imports: [
25716
25701
  SharedRoutingModule,
25717
25702
  AdminModule,
25718
- RouterModule.forChild(routes$5)
25703
+ RouterModule.forChild(routes)
25719
25704
  ],
25720
25705
  exports: [RouterModule]
25721
25706
  },] }
25722
25707
  ];
25723
25708
 
25724
- const ErrorCodes = {
25709
+ const ErrorCodes$2 = {
25725
25710
  LOAD_PERSONS_ERROR: 100,
25726
25711
  SAVE_PERSONS_ERROR: 101,
25727
25712
  DELETE_PERSONS_ERROR: 102,
25728
25713
  };
25729
25714
 
25730
- class EntityTestClass$1 {
25715
+ class EntityTestClass {
25731
25716
  }
25732
- const FAKE_ENTITIES$1 = [
25717
+ const FAKE_ENTITIES = [
25733
25718
  { id: 1, label: 'AAA', name: 'Item A', description: 'Very long description A', comments: 'Very very long comments... again for A' },
25734
25719
  { id: 2, label: 'BBB', name: 'Item B', description: 'Very long description B', comments: 'Very very long comments... again for B' },
25735
25720
  { id: 3, label: 'CCC', name: 'Item C', description: 'Very long description C', comments: 'Very very long comments... again for C' }
25736
25721
  ];
25737
- function deepCopy$1(values, size) {
25722
+ function deepCopy(values, size) {
25738
25723
  if (isNil(size)) {
25739
- return (values || FAKE_ENTITIES$1).map(entity => Object.assign({}, entity));
25724
+ return (values || FAKE_ENTITIES).map(entity => Object.assign({}, entity));
25740
25725
  }
25741
25726
  let result = [];
25742
25727
  let i = 1;
25743
25728
  while (result.length < size) {
25744
- result = result.concat((values || FAKE_ENTITIES$1).map(entity => {
25729
+ result = result.concat((values || FAKE_ENTITIES).map(entity => {
25745
25730
  const name = entity.name + ' #' + i;
25746
25731
  return Object.assign(Object.assign({}, entity), { id: i++, name });
25747
25732
  }));
@@ -25751,7 +25736,7 @@ function deepCopy$1(values, size) {
25751
25736
  class AutocompleteTestPage {
25752
25737
  constructor(formBuilder) {
25753
25738
  this.formBuilder = formBuilder;
25754
- this._items = deepCopy$1(FAKE_ENTITIES$1, 100);
25739
+ this._items = deepCopy(FAKE_ENTITIES, 100);
25755
25740
  this._$items = new BehaviorSubject(undefined);
25756
25741
  this.autocompleteFields = new MatAutocompleteConfigHolder();
25757
25742
  this.memoryHide = false;
@@ -25795,7 +25780,7 @@ class AutocompleteTestPage {
25795
25780
  });
25796
25781
  // From items
25797
25782
  this.autocompleteFields.add('entity-items-large', {
25798
- items: FAKE_ENTITIES$1.slice(),
25783
+ items: FAKE_ENTITIES.slice(),
25799
25784
  attributes: ['label', 'name', 'description', 'comments'],
25800
25785
  displayWith: this.entityToString
25801
25786
  });
@@ -25805,12 +25790,12 @@ class AutocompleteTestPage {
25805
25790
  loadData() {
25806
25791
  return __awaiter(this, void 0, void 0, function* () {
25807
25792
  const data = {
25808
- entity: deepCopy$1(FAKE_ENTITIES$1)[0],
25793
+ entity: deepCopy(FAKE_ENTITIES)[0],
25809
25794
  // This item is NOT in the items list => i should be displayed anyway
25810
25795
  missingEntity: {
25811
25796
  id: -1, label: '??', name: 'Missing item'
25812
25797
  },
25813
- disableEntity: deepCopy$1(FAKE_ENTITIES$1)[2]
25798
+ disableEntity: deepCopy(FAKE_ENTITIES)[2]
25814
25799
  };
25815
25800
  this.form.setValue(data);
25816
25801
  // Load observables
@@ -25953,13 +25938,13 @@ LatLongTestPage.ctorParameters = () => [
25953
25938
  { type: FormBuilder }
25954
25939
  ];
25955
25940
 
25956
- const moment$2 = momentImported;
25941
+ const moment$5 = momentImported;
25957
25942
  class SwipeTestPage {
25958
25943
  constructor(formBuilder, dateFormatPipe) {
25959
25944
  this.formBuilder = formBuilder;
25960
25945
  this.dateFormatPipe = dateFormatPipe;
25961
25946
  this.$dates = new BehaviorSubject(undefined);
25962
- this._today = moment$2().startOf('day');
25947
+ this._today = moment$5().startOf('day');
25963
25948
  this.form = formBuilder.group({
25964
25949
  empty: [null, Validators.required],
25965
25950
  date: [null, Validators.compose([Validators.required, SharedValidators.validDate])],
@@ -25972,7 +25957,7 @@ class SwipeTestPage {
25972
25957
  ngOnInit() {
25973
25958
  const dates = [];
25974
25959
  for (let d = 0; d < 7; d++) {
25975
- dates[d] = moment$2(this._today).add(d - 3, 'day');
25960
+ dates[d] = moment$5(this._today).add(d - 3, 'day');
25976
25961
  }
25977
25962
  this.$dates.next(dates);
25978
25963
  this.loadData();
@@ -26013,7 +25998,7 @@ SwipeTestPage.ctorParameters = () => [
26013
25998
  { type: DateFormatPipe }
26014
25999
  ];
26015
26000
 
26016
- const moment$1 = momentImported;
26001
+ const moment$6 = momentImported;
26017
26002
  class DateTimeTestPage {
26018
26003
  constructor(platform, formBuilder, cd) {
26019
26004
  this.platform = platform;
@@ -26045,7 +26030,7 @@ class DateTimeTestPage {
26045
26030
  // Load the form with data
26046
26031
  loadData() {
26047
26032
  return __awaiter(this, void 0, void 0, function* () {
26048
- const now = moment$1();
26033
+ const now = moment$6();
26049
26034
  const data = {
26050
26035
  empty: toDateISOString(now.clone().add(2, 'hours')),
26051
26036
  enable: toDateISOString(now),
@@ -26106,9 +26091,9 @@ DateTimeTestPage.ctorParameters = () => [
26106
26091
  { type: ChangeDetectorRef }
26107
26092
  ];
26108
26093
 
26109
- class EntityTestClass {
26094
+ class EntityTestClass$1 {
26110
26095
  }
26111
- const FAKE_ENTITIES = [
26096
+ const FAKE_ENTITIES$1 = [
26112
26097
  { id: 1, label: 'AAA', name: 'Item A' },
26113
26098
  { id: 2, label: 'BBB', name: 'Item B' },
26114
26099
  { id: 3, label: 'CCC', name: 'Item C' },
@@ -26117,14 +26102,14 @@ const FAKE_ENTITIES = [
26117
26102
  { id: 6, label: 'FFF', name: 'Item F' },
26118
26103
  { id: 7, label: 'GGG', name: 'Item G' }
26119
26104
  ];
26120
- function deepCopy(values, size) {
26105
+ function deepCopy$1(values, size) {
26121
26106
  if (isNil(size)) {
26122
- return (values || FAKE_ENTITIES).map(entity => Object.assign({}, entity));
26107
+ return (values || FAKE_ENTITIES$1).map(entity => Object.assign({}, entity));
26123
26108
  }
26124
26109
  let result = [];
26125
26110
  let i = 1;
26126
26111
  while (result.length < size) {
26127
- result = result.concat((values || FAKE_ENTITIES).map(entity => {
26112
+ result = result.concat((values || FAKE_ENTITIES$1).map(entity => {
26128
26113
  const name = entity.name + ' #' + i;
26129
26114
  return Object.assign(Object.assign({}, entity), { id: i++, name });
26130
26115
  }));
@@ -26134,7 +26119,7 @@ function deepCopy(values, size) {
26134
26119
  class ChipsTestPage {
26135
26120
  constructor(formBuilder) {
26136
26121
  this.formBuilder = formBuilder;
26137
- this._items = deepCopy(FAKE_ENTITIES, 100);
26122
+ this._items = deepCopy$1(FAKE_ENTITIES$1, 100);
26138
26123
  this._$items = new BehaviorSubject(undefined);
26139
26124
  this.autocompleteFields = new MatAutocompleteConfigHolder();
26140
26125
  this.form = formBuilder.group({
@@ -26173,7 +26158,7 @@ class ChipsTestPage {
26173
26158
  // Load the form with data
26174
26159
  loadData() {
26175
26160
  return __awaiter(this, void 0, void 0, function* () {
26176
- const items = deepCopy(FAKE_ENTITIES);
26161
+ const items = deepCopy$1(FAKE_ENTITIES$1);
26177
26162
  const data = {
26178
26163
  entity: items.slice(0, 1),
26179
26164
  entityInitial: items.slice(1, 2),
@@ -26289,7 +26274,7 @@ NumpadTestPage.ctorParameters = () => [
26289
26274
  { type: FormBuilder }
26290
26275
  ];
26291
26276
 
26292
- const moment = momentImported;
26277
+ const moment$7 = momentImported;
26293
26278
  class DateTestPage {
26294
26279
  constructor(platform, formBuilder, cd) {
26295
26280
  this.platform = platform;
@@ -26323,7 +26308,7 @@ class DateTestPage {
26323
26308
  // Load the form with data
26324
26309
  loadData() {
26325
26310
  return __awaiter(this, void 0, void 0, function* () {
26326
- const now = moment();
26311
+ const now = moment$7();
26327
26312
  const nowAtMahe = now.clone().tz(this.timezone).startOf('day');
26328
26313
  const data = {
26329
26314
  empty: toDateISOString(now.clone().add(2, 'hours')),
@@ -26401,7 +26386,7 @@ const SHARED_MATERIAL_TESTING_PAGES = [
26401
26386
  { label: 'Shared directives', divider: true },
26402
26387
  { label: 'Badge icon directive', page: '/testing/shared/badge-icon' }
26403
26388
  ];
26404
- const routes$4 = [
26389
+ const routes$1 = [
26405
26390
  {
26406
26391
  path: '',
26407
26392
  pathMatch: 'full',
@@ -26458,7 +26443,7 @@ MaterialTestingModule.decorators = [
26458
26443
  ReactiveFormsModule,
26459
26444
  SharedMaterialModule,
26460
26445
  TranslateModule.forChild(),
26461
- RouterModule.forChild(routes$4)
26446
+ RouterModule.forChild(routes$1)
26462
26447
  ],
26463
26448
  declarations: [
26464
26449
  DateTimeTestPage,
@@ -26519,7 +26504,7 @@ ToastTestingPage.ctorParameters = () => [
26519
26504
  { type: TranslateService }
26520
26505
  ];
26521
26506
 
26522
- const routes$3 = [
26507
+ const routes$2 = [
26523
26508
  {
26524
26509
  path: 'toast',
26525
26510
  pathMatch: 'full',
@@ -26534,7 +26519,7 @@ ToastTestingModule.decorators = [
26534
26519
  CommonModule,
26535
26520
  IonicModule,
26536
26521
  TranslateModule.forChild(),
26537
- RouterModule.forChild(routes$3)
26522
+ RouterModule.forChild(routes$2)
26538
26523
  ],
26539
26524
  declarations: [
26540
26525
  ToastTestingPage
@@ -26597,7 +26582,7 @@ UploadFileTestingPage.ctorParameters = () => [
26597
26582
  { type: PopoverController }
26598
26583
  ];
26599
26584
 
26600
- const routes$2 = [
26585
+ const routes$3 = [
26601
26586
  {
26602
26587
  path: 'upload-file',
26603
26588
  pathMatch: 'full',
@@ -26612,7 +26597,7 @@ UploadFileTestingModule.decorators = [
26612
26597
  CommonModule,
26613
26598
  IonicModule,
26614
26599
  TranslateModule.forChild(),
26615
- RouterModule.forChild(routes$2)
26600
+ RouterModule.forChild(routes$3)
26616
26601
  ],
26617
26602
  declarations: [
26618
26603
  UploadFileTestingPage
@@ -26993,7 +26978,7 @@ TextPopoverTestingPage.ctorParameters = () => [
26993
26978
  { type: PopoverController }
26994
26979
  ];
26995
26980
 
26996
- const routes$1 = [
26981
+ const routes$4 = [
26997
26982
  {
26998
26983
  path: 'text-popover',
26999
26984
  pathMatch: 'full',
@@ -27008,7 +26993,7 @@ TextPopoverTestingModule.decorators = [
27008
26993
  CommonModule,
27009
26994
  IonicModule,
27010
26995
  TranslateModule.forChild(),
27011
- RouterModule.forChild(routes$1)
26996
+ RouterModule.forChild(routes$4)
27012
26997
  ],
27013
26998
  declarations: [
27014
26999
  TextPopoverTestingPage
@@ -27025,7 +27010,7 @@ const CORE_TESTING_PAGES = [
27025
27010
  { label: 'Table', page: '/testing/core/table' },
27026
27011
  { label: 'Text popover', page: '/testing/core/text-popover' }
27027
27012
  ];
27028
- const routes = [
27013
+ const routes$5 = [
27029
27014
  {
27030
27015
  path: '',
27031
27016
  pathMatch: 'full',
@@ -27049,7 +27034,7 @@ CoreTestingModule.decorators = [
27049
27034
  imports: [
27050
27035
  CommonModule,
27051
27036
  TranslateModule.forChild(),
27052
- RouterModule.forChild(routes),
27037
+ RouterModule.forChild(routes$5),
27053
27038
  // Sub modules
27054
27039
  TableTestingModule,
27055
27040
  TextPopoverTestingModule
@@ -27069,5 +27054,5 @@ CoreTestingModule.decorators = [
27069
27054
  * Generated bundle index. Do not edit.
27070
27055
  */
27071
27056
 
27072
- 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, AndroidOsEnvironment, 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, CORE_TESTING_PAGES, CellValueChangeListener, ChipsTestPage, Color, ColorScale, ComponentDirtyGuard, ConfigService, Configuration, CoreModule, CoreTestingModule, 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, DragAndDropDirective, DurationPipe, ENTITIES_STORAGE_KEY_PREFIX, ENVIRONMENT, EmptyArrayPipe, EntitiesService, EntitiesStorage, EntitiesTableDataSource, Entity, EntityClass, EntityClasses, EntityFilter, EntityFilterUtils, EntityMetadataComponent, EntityStore, EntityUtils, Environment, ErrorCodes, EvenPipe, FileResponse, FileService, FileSizePipe, FilesUtils, FormArrayHelper, FormButtonsBarComponent, FormButtonsBarToken, FormErrorTranslatePipe, FormErrorTranslator, FormFieldValuesHolder, FormGetArrayPipe, FormGetControlPipe, FormGetGroupPipe, FormGetPipe, 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, MatBadgeIconDirective, MatBooleanField, MatChipsField, MatDate, MatDateShort, MatDateTime, MatDuration, MatLatLongField, MatNumpadComponent, MatNumpadContainerComponent, MatNumpadContent, MatPaginatorI18n, MatStepperI18n, MatSwipeField, MaterialTestingModule, MathAbsPipe, MenuComponent, MenuItems, MenuService, ModalToolbarComponent, NetworkService, NgInitDirective, NgVarDirective, 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, ReferentialFilter, ReferentialRef, ReferentialUtils, ReferentialValidatorService, RegisterConfirmPage, SETTINGS_DISPLAY_COLUMNS, SETTINGS_FILTER, SETTINGS_PAGE_SIZE, SETTINGS_SORTED_COLUMN, SETTINGS_STORAGE_KEY, SETTINGS_TRANSIENT_PROPERTIES, SHARED_MATERIAL_TESTING_PAGES, SHARED_TESTING_PAGES, SPACE_PLACEHOLDER_CHAR, SelectPeerModal, SettingsPage, SharedAsyncValidators, SharedDirectivesModule, SharedFormArrayValidators, SharedFormGroupValidators, SharedHotkeysModule, SharedMatAutocompleteModule, SharedMatBadgeIconModule, SharedMatBooleanModule, SharedMatChipsModule, SharedMatDateTimeModule, SharedMatDurationModule, SharedMatLatLongModule, SharedMatNumpadModule, SharedMatSwipeModule, SharedMaterialModule, SharedModule, SharedPipesModule, SharedRoutingModule, SharedTestingModule, SharedTestsPage, SharedValidators, SocialModule, Software, StartableService, StatusById, StatusIds, StatusList, StrIncludesPipe, StrLengthPipe, SwipeTestPage, TableSelectColumnsComponent, TableTestPage, TableTestingModule, TextForm, TextPopover, TextPopoverTestingModule, TextPopoverTestingPage, ToStringPipe, Toasts, ToolbarComponent, ToolbarToken, TranslatablePipe, TranslateContextPipe, TranslateContextService, UploadFile, UploadFileComponent, UploadFilePopover, UploadFileTestingModule, UploadFileTestingPage, 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, isAndroid, isControlHasInput, isCordova, isEmptyArray, isIOS, isInputElement, isInstanceOf, isInt, isMobile, isNil, isNilOrBlank, isNilOrNaN, isNotEmptyArray, isNotNil, isNotNilOrBlank, isNotNilOrNaN, isNotNilString, isNumber, isNumberRange, isProgressEvent, isResponseEvent, isTouchUi, isWindows, joinProperties, joinPropertiesPath, logFormErrors, markAllAsTouched, markAsUntouched, markControlAsTouched, markFormGroupAsTouched, matchMedia, 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, testUserAgent, toBoolean, toDateISOString, toDuration, toFloat, toInt, toNotNil, toNumber, trimEmptyToNull, uncapitalizeFirstLetter, updateValueAndValidity, waitFor, waitForTrue, waitIdle, waitWhilePending, ɵ0$b as ɵ0, CustomReuseStrategy as ɵa, MatNumpadDomService as ɵb, isFocusableElement as ɵc, RegisterForm as ɵd, AccountValidatorService as ɵe, RegisterModal as ɵf, UserSettingsValidatorService as ɵg, LocalSettingsValidatorService as ɵh, AppIconComponent as ɵi, DateTestPage as ɵj, NumpadTestPage as ɵk, MatBadgeIconTestPage as ɵl, ToastTestingModule as ɵm, ToastTestingPage as ɵn };
27057
+ 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, AndroidOsEnvironment, 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, CORE_TESTING_PAGES, CellValueChangeListener, ChipsTestPage, Color, ColorScale, ComponentDirtyGuard, ConfigService, Configuration, CoreModule, CoreTestingModule, 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, DragAndDropDirective, DurationPipe, ENTITIES_STORAGE_KEY_PREFIX, ENVIRONMENT, EmptyArrayPipe, EntitiesService, EntitiesStorage, EntitiesTableDataSource, Entity, EntityClass, EntityClasses, EntityFilter, EntityFilterUtils, EntityMetadataComponent, EntityStore, EntityUtils, Environment, ErrorCodes$2 as ErrorCodes, EvenPipe, FileResponse, FileService, FileSizePipe, FilesUtils, FormArrayHelper, FormButtonsBarComponent, FormButtonsBarToken, FormErrorTranslatePipe, FormErrorTranslator, FormFieldValuesHolder, FormGetArrayPipe, FormGetControlPipe, FormGetGroupPipe, FormGetPipe, Fragments$1 as 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, MatBadgeIconDirective, MatBooleanField, MatChipsField, MatDate, MatDateShort, MatDateTime, MatDuration, MatLatLongField, MatNumpadComponent, MatNumpadContainerComponent, MatNumpadContent, MatPaginatorI18n, MatStepperI18n, MatSwipeField, MaterialTestingModule, MathAbsPipe, MenuComponent, MenuItems, MenuService, ModalToolbarComponent, NetworkService, NgInitDirective, NgVarDirective, 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, ReferentialFilter, ReferentialRef, ReferentialUtils, ReferentialValidatorService, RegisterConfirmPage, SETTINGS_DISPLAY_COLUMNS, SETTINGS_FILTER, SETTINGS_PAGE_SIZE, SETTINGS_SORTED_COLUMN, SETTINGS_STORAGE_KEY, SETTINGS_TRANSIENT_PROPERTIES, SHARED_MATERIAL_TESTING_PAGES, SHARED_TESTING_PAGES, SPACE_PLACEHOLDER_CHAR, SelectPeerModal, SettingsPage, SharedAsyncValidators, SharedDirectivesModule, SharedFormArrayValidators, SharedFormGroupValidators, SharedHotkeysModule, SharedMatAutocompleteModule, SharedMatBadgeIconModule, SharedMatBooleanModule, SharedMatChipsModule, SharedMatDateTimeModule, SharedMatDurationModule, SharedMatLatLongModule, SharedMatNumpadModule, SharedMatSwipeModule, SharedMaterialModule, SharedModule, SharedPipesModule, SharedRoutingModule, SharedTestingModule, SharedTestsPage, SharedValidators, SocialModule, Software, StartableService, StatusById, StatusIds, StatusList, StrIncludesPipe, StrLengthPipe, SwipeTestPage, TableSelectColumnsComponent, TableTestPage, TableTestingModule, TextForm, TextPopover, TextPopoverTestingModule, TextPopoverTestingPage, ToStringPipe, Toasts, ToolbarComponent, ToolbarToken, TranslatablePipe, TranslateContextPipe, TranslateContextService, UploadFile, UploadFileComponent, UploadFilePopover, UploadFileTestingModule, UploadFileTestingPage, 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, isAndroid, isControlHasInput, isCordova, isEmptyArray, isIOS, isInputElement, isInstanceOf, isInt, isMobile, isNil, isNilOrBlank, isNilOrNaN, isNotEmptyArray, isNotNil, isNotNilOrBlank, isNotNilOrNaN, isNotNilString, isNumber, isNumberRange, isProgressEvent, isResponseEvent, isTouchUi, isWindows, joinProperties, joinPropertiesPath, logFormErrors, markAllAsTouched, markAsUntouched, markControlAsTouched, markFormGroupAsTouched, matchMedia, 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, testUserAgent, toBoolean, toDateISOString, toDuration, toFloat, toInt, toNotNil, toNumber, trimEmptyToNull, uncapitalizeFirstLetter, updateValueAndValidity, waitFor, waitForTrue, waitIdle, waitWhilePending, ɵ0$1 as ɵ0, CustomReuseStrategy as ɵa, MatNumpadDomService as ɵb, isFocusableElement as ɵc, RegisterForm as ɵd, AccountValidatorService as ɵe, RegisterModal as ɵf, UserSettingsValidatorService as ɵg, LocalSettingsValidatorService as ɵh, AppIconComponent as ɵi, DateTestPage as ɵj, NumpadTestPage as ɵk, MatBadgeIconTestPage as ɵl, ToastTestingModule as ɵm, ToastTestingPage as ɵn };
27073
27058
  //# sourceMappingURL=sumaris-net.ngx-components.js.map