@sumaris-net/ngx-components 0.13.13 → 0.13.14

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, forwardRef, Component, ChangeDetectionStrategy, ChangeDetectorRef, Optional, Input, HostBinding, Output, ViewChild, Pipe, Injectable, Directive, NgModule, ElementRef, ViewChildren, HostListener, ComponentFactoryResolver, ApplicationRef, Injector, Inject, Renderer2 } from '@angular/core';
3
- import * as i1$3 from '@angular/common';
1
+ import { InjectionToken, EventEmitter, forwardRef, Component, ChangeDetectionStrategy, ChangeDetectorRef, Optional, Input, HostBinding, Output, ViewChild, ɵɵdefineInjectable, ɵɵinject, Pipe, Injectable, Directive, NgModule, ElementRef, ViewChildren, HostListener, ComponentFactoryResolver, ApplicationRef, INJECTOR, Injector, Inject, Renderer2 } 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 { MatAutocompleteModule, MatAutocompleteTrigger, 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, ReactiveFormsModule, AbstractControl, Validators, FormBuilder, FormControl, FormGroup, FormArray } from '@angular/forms';
39
34
  import { fromEvent, Subscription, BehaviorSubject, Subject, isObservable, merge, of, timer, noop as noop$8, Observable, defer, concat, combineLatest, EMPTY } from 'rxjs';
40
35
  import { filter, first, startWith, debounceTime, takeWhile, switchMap, tap, map, distinctUntilChanged, mergeMap, takeUntil, catchError, throttleTime } 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, IonicRouteStrategy, NavParams, AlertController, MenuController, IonContent } 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 { Keyboard } from '@ionic-native/keyboard/ngx';
50
42
  import { TextMaskModule } from 'angular2-text-mask';
@@ -54,38 +46,32 @@ import { trigger, state, style, transition, animate } from '@angular/animations'
54
46
  import { MatDividerModule } from '@angular/material/divider';
55
47
  import { MatTooltipModule } from '@angular/material/tooltip';
56
48
  import { MatChipsModule } from '@angular/material/chips';
57
- import * as i3$3 from '@angular/router';
58
49
  import { Router, RouterModule, RouteReuseStrategy, ActivatedRoute } from '@angular/router';
59
- import * as i1$5 from '@angular/platform-browser';
60
50
  import { HammerGestureConfig, EventManager } from '@angular/platform-browser';
61
- import * as i2$2 from '@angular/common/http';
62
51
  import { HttpResponse, HttpClient, HttpHeaders, HTTP_INTERCEPTORS, HttpClientModule } from '@angular/common/http';
63
52
  import { ColorPickerModule } from 'ngx-color-picker';
64
- import { NativeAudio } from '@ionic-native/native-audio/ngx';
65
- import { Vibration } from '@ionic-native/vibration/ngx';
53
+ import { NativeAudio as NativeAudio$1 } from '@ionic-native/native-audio/ngx';
54
+ import { Vibration as Vibration$1 } from '@ionic-native/vibration/ngx';
66
55
  import { AudioManagement } from '@ionic-native/audio-management/ngx';
67
- import * as i2 from '@ionic-native/native-audio/ngx/index';
68
- import * as i3 from '@ionic-native/vibration/ngx/index';
69
- import * as i4 from '@ionic-native/audio-management/ngx/index';
56
+ import { NativeAudio } from '@ionic-native/native-audio/ngx/index';
57
+ import { Vibration } from '@ionic-native/vibration/ngx/index';
58
+ import { AudioManagement as AudioManagement$1 } from '@ionic-native/audio-management/ngx/index';
70
59
  import * as uuidv4Imported from 'uuid/v4';
71
60
  import { DragDropModule } from '@angular/cdk/drag-drop';
72
61
  import { MarkdownModule } from 'ngx-markdown';
73
62
  import { sign, box, hash, verify } from 'tweetnacl';
74
- import * as i3$1 from '@ionic/storage';
75
63
  import { Storage, IonicStorageModule } from '@ionic/storage';
76
64
  import 'zone.js/dist/zone-error';
77
- import { SplashScreen } from '@ionic-native/splash-screen/ngx';
78
- import { Connection, Network } from '@ionic-native/network/ngx';
79
- import { CacheService, CacheModule } from 'ionic-cache';
80
- import * as i6 from 'ionic-cache/dist/cache.service';
81
- import * as i9 from '@ionic-native/network/ngx/index';
82
- import * as i10 from '@ionic-native/splash-screen/ngx/index';
83
- import { StatusBar } from '@ionic-native/status-bar/ngx';
84
- import * as i2$4 from '@angular/cdk/platform';
65
+ import { SplashScreen as SplashScreen$1 } from '@ionic-native/splash-screen/ngx';
66
+ import { Connection, Network as Network$1 } from '@ionic-native/network/ngx';
67
+ import { CacheService as CacheService$1, CacheModule } from 'ionic-cache';
68
+ import { CacheService } from 'ionic-cache/dist/cache.service';
69
+ import { Network } from '@ionic-native/network/ngx/index';
70
+ import { SplashScreen } from '@ionic-native/splash-screen/ngx/index';
71
+ import { StatusBar as StatusBar$1 } from '@ionic-native/status-bar/ngx';
85
72
  import { Platform as Platform$1 } from '@angular/cdk/platform';
86
- import { InAppBrowser } from '@ionic-native/in-app-browser/ngx';
73
+ import { InAppBrowser as InAppBrowser$1 } from '@ionic-native/in-app-browser/ngx';
87
74
  import { ApolloLink, NetworkStatus, InMemoryCache, ApolloClient, gql } from '@apollo/client/core';
88
- import * as i2$3 from 'apollo-angular';
89
75
  import { Apollo } from 'apollo-angular';
90
76
  import { WebSocketLink } from '@apollo/client/link/ws';
91
77
  import { getMainDefinition } from '@apollo/client/utilities';
@@ -93,12 +79,11 @@ import { RetryLink } from '@apollo/client/link/retry';
93
79
  import QueueLink from 'apollo-link-queue';
94
80
  import SerializingLink from 'apollo-link-serialize';
95
81
  import loggerLink from 'apollo-link-logger';
96
- import * as i3$2 from 'apollo-angular/http';
97
82
  import { HttpLink } from 'apollo-angular/http';
98
83
  import { IonicStorageWrapper, persistCache } from 'apollo3-cache-persist';
99
- import * as i14 from '@ionic-native/status-bar/ngx/index';
100
- import * as i15 from '@ionic-native/keyboard/ngx/index';
101
- import * as i17 from '@ionic-native/in-app-browser/ngx/index';
84
+ import { StatusBar } from '@ionic-native/status-bar/ngx/index';
85
+ import { Keyboard as Keyboard$1 } from '@ionic-native/keyboard/ngx/index';
86
+ import { InAppBrowser } from '@ionic-native/in-app-browser/ngx/index';
102
87
  import { ValidatorService, TableDataSource } from '@e-is/ngx-material-table';
103
88
  import { SelectionModel } from '@angular/cdk/collections';
104
89
  import { NgxJdenticonModule } from 'ngx-jdenticon';
@@ -865,19 +850,19 @@ class MatAutocompleteConfigHolder {
865
850
  return this.fields[fieldName] || this.add(fieldName);
866
851
  }
867
852
  }
868
- const DEFAULT_VALUE_ACCESSOR$6 = {
853
+ const DEFAULT_VALUE_ACCESSOR = {
869
854
  provide: NG_VALUE_ACCESSOR,
870
855
  useExisting: forwardRef(() => MatAutocompleteField),
871
856
  multi: true
872
857
  };
873
- const noop$7 = () => { };
874
- const ɵ0$a = noop$7;
858
+ const noop = () => { };
859
+ const ɵ0 = noop;
875
860
  class MatAutocompleteField {
876
861
  constructor(cd, formGroupDir) {
877
862
  this.cd = cd;
878
863
  this.formGroupDir = formGroupDir;
879
- this._onChangeCallback = noop$7;
880
- this._onTouchedCallback = noop$7;
864
+ this._onChangeCallback = noop;
865
+ this._onTouchedCallback = noop;
881
866
  this._subscription = new Subscription();
882
867
  this._filter$ = new BehaviorSubject(undefined);
883
868
  this._reload$ = new Subject();
@@ -1393,7 +1378,7 @@ MatAutocompleteField.decorators = [
1393
1378
  // eslint-disable-next-line @angular-eslint/component-selector
1394
1379
  selector: 'mat-autocomplete-field',
1395
1380
  template: "<ion-grid class=\"ion-no-padding\">\n <ion-row>\n <ion-col class=\"ion-no-padding\">\n <mat-form-field [floatLabel]=\"floatLabel\"\n [class.mat-form-field-disabled]=\"disabled\"\n [title]=\"displayValue\">\n\n <div matPrefix><ng-content select=\"[matPrefix]\"></ng-content></div>\n\n <!-- readonly -->\n <ng-container *ngIf=\"readonly; else writable\">\n <input matInput hidden type=\"text\"\n [placeholder]=\"placeholder\"\n [formControl]=\"formControl\"\n readonly>\n <ion-label>{{ displayWith(value) }}&nbsp;</ion-label>\n </ng-container>\n\n <ng-template #writable>\n\n <!-- Basic select -->\n <mat-select #matSelect\n *ngIf=\"!searchable; else searchableTemplate\"\n [placeholder]=\"placeholder\"\n [formControl]=\"formControl\"\n [tabindex]=\"_tabindex\"\n [panelClass]=\"classList\"\n [style.width]=\"panelWidth\"\n (focus)=\"filterMatSelectFocusEvent($event)\"\n (blur)=\"filterMatSelectBlurEvent($event)\"\n [compareWith]=\"compareWith\"\n [multiple]=\"multiple\">\n <mat-select-trigger>{{ displayWith(value) }}</mat-select-trigger>\n\n <!-- header -->\n <ion-row class=\"mat-autocomplete-header ion-no-padding\">\n <ion-col *ngFor=\"let attr of displayAttributes; index as i; last as isLast\" [size]=\"displayColumnSizes[i]\" >\n <ion-label [innerHTML]=\"displayColumnNames[i] | translate\"></ion-label>\n </ion-col>\n </ion-row>\n\n <!-- None option -->\n <mat-option *ngIf=\"!required\" class=\"ion-no-padding\">\n <ion-row class=\"ion-no-padding\">\n <ion-col class=\"ion-no-padding\">\n <ion-label><i translate>COMMON.EMPTY_OPTION</i></ion-label>\n </ion-col>\n </ion-row>\n </mat-option>\n\n <ng-container *ngIf=\"$filteredItems | async; let items\">\n <!-- No item option -->\n <mat-option *ngIf=\"items | isEmptyArray\" class=\"ion-padding text-italic\" disabled>\n <ion-label>{{noResultMessage | translate}}</ion-label>\n </mat-option>\n\n <!-- options -->\n <mat-option *ngFor=\"let item of items\" [value]=\"item\" class=\"ion-no-padding\">\n <ion-row [classList]=\"item.classList\">\n <ion-col *ngFor=\"let path of displayAttributes; index as i;\"\n [size]=\"displayColumnSizes[i]\">\n <ion-text>{{item | propertyGet: path }}</ion-text>\n </ion-col>\n </ion-row>\n </mat-option>\n\n <!-- More item -->\n <a class=\"ion-padding mat-option \"\n *ngIf=\"_moreItemsCount\"\n (click)=\"_fetchMore$.emit($event)\" >\n <ion-label color=\"primary\" style=\"width: 100%;\">\n <span translate>COMMON.BTN_SHOW_MORE</span>\n <mat-icon class=\"ion-color-primary\">expand_more</mat-icon>\n </ion-label>\n </a>\n </ng-container>\n </mat-select>\n </ng-template>\n\n <!--\n NOTE :\n - \"selectInputContent($event) || onFocus.emit($event)\" : call onFocus only when to the input is empty (nothing to select)\n -->\n <ng-template #searchableTemplate>\n <input matInput #matInputText type=\"text\"\n [matAutocomplete]=\"autoComplete\"\n [matAutocompletePosition]=\"matAutocompletePosition\"\n [formControl]=\"formControl\"\n [placeholder]=\"placeholder\"\n [appAutofocus]=\"autofocus\"\n [tabindex]=\"_tabindex\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n (click)=\"onClick.emit($event)\"\n (focus)=\"filterInputTextFocusInEvent($event)\"\n (blur)=\"filterInputTextBlurEvent($event)\"\n (keyup.arrowdown)=\"!autoComplete.showPanel && onDropButtonClick.emit($event)\">\n\n <!-- autocomplete -->\n <mat-autocomplete #autoComplete=\"matAutocomplete\"\n autoActiveFirstOption\n [displayWith]=\"displayWith\"\n [class]=\"classList\"\n [class.cdk-visually-hidden]=\"!searchable\"\n [panelWidth]=\"panelWidth\">\n\n <ion-row class=\"mat-autocomplete-header ion-no-padding\">\n <ion-col *ngFor=\"let attr of displayAttributes; index as i; last as last\" [size]=\"displayColumnSizes[i]\" >\n <ion-label [innerHTML]=\"displayColumnNames[i] | translate\"></ion-label>\n <ion-text color=\"light\" *ngIf=\"last && itemCount; let count \" class=\"ion-float-end ion-padding-end\"><i>{{'COMMON.RESULT_COUNT'|translate: {count: count} }}</i></ion-text>\n </ion-col>\n </ion-row>\n\n <ng-container *ngIf=\"$filteredItems | async; else loadingTemplate; let items\">\n <!-- No item option -->\n <mat-option *ngIf=\"items | isEmptyArray\" class=\"ion-padding text-italic\" disabled>\n <ion-label>{{noResultMessage | translate}}</ion-label>\n </mat-option>\n\n <mat-option *ngFor=\"let item of items\" [value]=\"item\" class=\"ion-no-padding\" >\n <ion-row [classList]=\"item.classList\">\n <ion-col *ngFor=\"let path of displayAttributes; index as i;\"\n [size]=\"displayColumnSizes[i]\">\n <ion-text [innerHTML]=\"item | propertyGet: path | highlight: { search: formControl.value, withAccent: highlightAccent }\"></ion-text>\n </ion-col>\n </ion-row>\n </mat-option>\n\n <!-- More item -->\n <mat-option *ngIf=\"_moreItemsCount\" (ngInit)=\"_initInfiniteScroll()\"\n class=\"ion-padding\" disabled>\n <ion-skeleton-text [animated]=\"true\" style=\"width: 100%\"></ion-skeleton-text>\n </mat-option>\n </ng-container>\n\n <!-- Loading spinner -->\n <ng-template #loadingTemplate>\n <mat-option *ngIf=\"(matInputText.value | strLength) >= suggestLengthThreshold; else waitMoreCharacterTemplate\"\n class=\"ion-padding\" disabled>\n <ion-skeleton-text [animated]=\"true\" style=\"width: 100%\"></ion-skeleton-text>\n </mat-option>\n </ng-template>\n\n <!-- Need more characters -->\n <ng-template #waitMoreCharacterTemplate>\n <mat-option class=\"ion-padding text-italic\" disabled>\n <ion-label>\n {{'INFO.PLEASE_TYPE_MORE_CHARACTERS'|translate:{minLength: suggestLengthThreshold} }}\n </ion-label>\n </mat-option>\n </ng-template>\n </mat-autocomplete>\n\n </ng-template>\n\n\n <button matSuffix mat-icon-button tabindex=\"-1\"\n type=\"button\"\n *ngIf=\"searchable\"\n (click)=\"onDropButtonClick.emit($event)\"\n [hidden]=\"disabled\">\n <mat-icon class=\"large select-arrow\">arrow_drop_down</mat-icon>\n </button>\n <button matSuffix type=\"button\" mat-icon-button tabindex=\"-1\"\n *ngIf=\"enabled && mobile && !searchable && !multiple\"\n [title]=\"'COMMON.BTN_SEARCH'|translate\"\n (click)=\"toggleSearch($event)\">\n <mat-icon>search</mat-icon>\n </button>\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 <ng-content matSuffix select=\"[matSuffix]\"></ng-content>\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 <ng-content select=\"[matError]\"></ng-content>\n\n </mat-form-field>\n </ion-col>\n <ion-col size=\"auto\" class=\"ion-align-self-center\">\n <ng-content select=\"[matAfter]\"></ng-content>\n </ion-col>\n </ion-row>\n\n</ion-grid>\n",
1396
- providers: [DEFAULT_VALUE_ACCESSOR$6],
1381
+ providers: [DEFAULT_VALUE_ACCESSOR],
1397
1382
  changeDetection: ChangeDetectionStrategy.OnPush,
1398
1383
  styles: [":host{display:inline-block;position:relative}:host.ion-text-wrap ion-label{white-space:normal!important}button[hidden]{display:none}mat-icon.select-arrow{color:rgba(0,0,0,.47);font-size:150%}.fact-scroll-viewport{height:100%;width:100%}.fact-item{height:54px;display:flex}.fact-item .fact-date{min-width:100px;text-align:center;font-size:24pt}.fact-item .fact-date,.fact-item .fact-text{height:100%;align-items:center;justify-content:center;display:flex}.fact-item .fact-text{border-radius:10px}cdk-virtual-scroll-viewport{border:1px solid #000}cdk-virtual-scroll-viewport li{list-style:none}"]
1399
1384
  },] }
@@ -1467,7 +1452,7 @@ class DateFormatPipe {
1467
1452
  return this.dateAdapter.format(date, displayFormat);
1468
1453
  }
1469
1454
  }
1470
- DateFormatPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function DateFormatPipe_Factory() { return new DateFormatPipe(i0.ɵɵinject(i1.MomentDateAdapter), i0.ɵɵinject(i1$1.TranslateService)); }, token: DateFormatPipe, providedIn: "root" });
1455
+ DateFormatPipe.ɵprov = ɵɵdefineInjectable({ factory: function DateFormatPipe_Factory() { return new DateFormatPipe(ɵɵinject(MomentDateAdapter), ɵɵinject(TranslateService)); }, token: DateFormatPipe, providedIn: "root" });
1471
1456
  DateFormatPipe.decorators = [
1472
1457
  { type: Pipe, args: [{
1473
1458
  name: 'dateFormat'
@@ -1479,7 +1464,7 @@ DateFormatPipe.ctorParameters = () => [
1479
1464
  { type: TranslateService }
1480
1465
  ];
1481
1466
 
1482
- const moment$6 = momentImported;
1467
+ const moment = momentImported;
1483
1468
  class DateDiffDurationPipe {
1484
1469
  constructor(dateAdapter, translate) {
1485
1470
  this.dateAdapter = dateAdapter;
@@ -1495,17 +1480,17 @@ class DateDiffDurationPipe {
1495
1480
  return this.format(startDate, endDate);
1496
1481
  }
1497
1482
  format(startDate, endDate) {
1498
- const duration = moment$6.duration(endDate.diff(startDate));
1483
+ const duration = moment.duration(endDate.diff(startDate));
1499
1484
  if (duration.asMinutes() < 0)
1500
1485
  return '';
1501
- const timeDuration = moment$6(0)
1486
+ const timeDuration = moment(0)
1502
1487
  .hour(duration.hours())
1503
1488
  .minute(duration.minutes());
1504
1489
  const days = Math.floor(duration.asDays());
1505
1490
  return (days > 0 ? days.toString() + (this.dayUnit + ' ') : '') + timeDuration.format('HH:mm');
1506
1491
  }
1507
1492
  }
1508
- 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" });
1493
+ DateDiffDurationPipe.ɵprov = ɵɵdefineInjectable({ factory: function DateDiffDurationPipe_Factory() { return new DateDiffDurationPipe(ɵɵinject(DateAdapter), ɵɵinject(TranslateService)); }, token: DateDiffDurationPipe, providedIn: "root" });
1509
1494
  DateDiffDurationPipe.decorators = [
1510
1495
  { type: Pipe, args: [{
1511
1496
  name: 'dateDiffDuration'
@@ -1526,7 +1511,7 @@ class DateFromNowPipe {
1526
1511
  return date ? date.fromNow(args && args.withoutSuffix) : '';
1527
1512
  }
1528
1513
  }
1529
- DateFromNowPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function DateFromNowPipe_Factory() { return new DateFromNowPipe(i0.ɵɵinject(i1.MomentDateAdapter)); }, token: DateFromNowPipe, providedIn: "root" });
1514
+ DateFromNowPipe.ɵprov = ɵɵdefineInjectable({ factory: function DateFromNowPipe_Factory() { return new DateFromNowPipe(ɵɵinject(MomentDateAdapter)); }, token: DateFromNowPipe, providedIn: "root" });
1530
1515
  DateFromNowPipe.decorators = [
1531
1516
  { type: Pipe, args: [{
1532
1517
  name: 'dateFromNow'
@@ -1595,7 +1580,7 @@ function formatToDD(value, opts) {
1595
1580
  value *= -1;
1596
1581
  }
1597
1582
  }
1598
- let degrees = roundFloat$1(value, opts.maxDecimals).toString();
1583
+ let degrees = roundFloat(value, opts.maxDecimals).toString();
1599
1584
  // Add sign
1600
1585
  let sign = negative ? '-' : '+';
1601
1586
  if (opts.placeholderChar) {
@@ -1646,7 +1631,7 @@ function formatToDDMMSS(value, opts) {
1646
1631
  }
1647
1632
  let degrees = Math.trunc(value);
1648
1633
  let minutes = Math.trunc((value - degrees) * 60);
1649
- let seconds = roundFloat$1(((value - degrees) * 60 - minutes) * 60, opts.maxDecimals);
1634
+ let seconds = roundFloat(((value - degrees) * 60 - minutes) * 60, opts.maxDecimals);
1650
1635
  while (seconds >= 60) {
1651
1636
  seconds -= 60;
1652
1637
  minutes += 1;
@@ -1714,7 +1699,7 @@ function formatToDDMM(value, opts) {
1714
1699
  }
1715
1700
  }
1716
1701
  let degrees = Math.trunc(value);
1717
- let minutes = roundFloat$1((value - degrees) * 60, opts.maxDecimals);
1702
+ let minutes = roundFloat((value - degrees) * 60, opts.maxDecimals);
1718
1703
  while (minutes >= 60) {
1719
1704
  minutes -= 60;
1720
1705
  degrees += 1;
@@ -1765,15 +1750,15 @@ function parseLatitudeOrLongitude(input, pattern, maxDecimals, placeholderChar)
1765
1750
  return NaN;
1766
1751
  }
1767
1752
  if (pattern === 'DD')
1768
- return roundFloat$1(degrees, maxDecimals);
1753
+ return roundFloat(degrees, maxDecimals);
1769
1754
  const minutes = (pattern === 'DDMMSS' || pattern === 'DDMM') && parts[1] && parseFloat(parts[1].replace(/,/g, '.')) || 0;
1770
1755
  const seconds = (pattern === 'DDMMSS') && parts[2] && parseFloat(parts[2].replace(/,/g, '.')) || 0;
1771
1756
  const direction = ((pattern === 'DDMMSS') && parts[3]) || ((pattern === 'DDMM') && parts[2]) || undefined;
1772
1757
  const sign = (direction && (direction === 's' || direction === 'S' || direction === 'w' || direction === 'W')) ? -1 : 1;
1773
1758
  degrees = sign * (degrees + minutes / 60 + seconds / (60 * 60));
1774
- return roundFloat$1(degrees, maxDecimals);
1759
+ return roundFloat(degrees, maxDecimals);
1775
1760
  }
1776
- function roundFloat$1(input, maxDecimals) {
1761
+ function roundFloat(input, maxDecimals) {
1777
1762
  if (maxDecimals > 0) {
1778
1763
  const powDecimal = Math.pow(10, maxDecimals);
1779
1764
  return Math.trunc(input * powDecimal + 0.5) / powDecimal;
@@ -1793,7 +1778,7 @@ class LatLongFormatPipe {
1793
1778
  return ((!args.type || args.type !== 'latitude') ? formatLongitude : formatLatitude)(value, args);
1794
1779
  }
1795
1780
  }
1796
- LatLongFormatPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function LatLongFormatPipe_Factory() { return new LatLongFormatPipe(); }, token: LatLongFormatPipe, providedIn: "root" });
1781
+ LatLongFormatPipe.ɵprov = ɵɵdefineInjectable({ factory: function LatLongFormatPipe_Factory() { return new LatLongFormatPipe(); }, token: LatLongFormatPipe, providedIn: "root" });
1797
1782
  LatLongFormatPipe.decorators = [
1798
1783
  { type: Pipe, args: [{
1799
1784
  name: 'latLongFormat'
@@ -1805,7 +1790,7 @@ class LatitudeFormatPipe {
1805
1790
  this.transform = formatLatitude;
1806
1791
  }
1807
1792
  }
1808
- LatitudeFormatPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function LatitudeFormatPipe_Factory() { return new LatitudeFormatPipe(); }, token: LatitudeFormatPipe, providedIn: "root" });
1793
+ LatitudeFormatPipe.ɵprov = ɵɵdefineInjectable({ factory: function LatitudeFormatPipe_Factory() { return new LatitudeFormatPipe(); }, token: LatitudeFormatPipe, providedIn: "root" });
1809
1794
  LatitudeFormatPipe.decorators = [
1810
1795
  { type: Pipe, args: [{
1811
1796
  name: 'latitudeFormat'
@@ -1817,7 +1802,7 @@ class LongitudeFormatPipe {
1817
1802
  this.transform = formatLongitude;
1818
1803
  }
1819
1804
  }
1820
- LongitudeFormatPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function LongitudeFormatPipe_Factory() { return new LongitudeFormatPipe(); }, token: LongitudeFormatPipe, providedIn: "root" });
1805
+ LongitudeFormatPipe.ɵprov = ɵɵdefineInjectable({ factory: function LongitudeFormatPipe_Factory() { return new LongitudeFormatPipe(); }, token: LongitudeFormatPipe, providedIn: "root" });
1821
1806
  LongitudeFormatPipe.decorators = [
1822
1807
  { type: Pipe, args: [{
1823
1808
  name: 'longitudeFormat'
@@ -1837,7 +1822,7 @@ class NumberFormatPipe {
1837
1822
  }
1838
1823
  }
1839
1824
  }
1840
- NumberFormatPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function NumberFormatPipe_Factory() { return new NumberFormatPipe(); }, token: NumberFormatPipe, providedIn: "root" });
1825
+ NumberFormatPipe.ɵprov = ɵɵdefineInjectable({ factory: function NumberFormatPipe_Factory() { return new NumberFormatPipe(); }, token: NumberFormatPipe, providedIn: "root" });
1841
1826
  NumberFormatPipe.decorators = [
1842
1827
  { type: Pipe, args: [{
1843
1828
  name: 'numberFormat'
@@ -1877,7 +1862,7 @@ class HighlightPipe {
1877
1862
  }
1878
1863
  }
1879
1864
  }
1880
- HighlightPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function HighlightPipe_Factory() { return new HighlightPipe(); }, token: HighlightPipe, providedIn: "root" });
1865
+ HighlightPipe.ɵprov = ɵɵdefineInjectable({ factory: function HighlightPipe_Factory() { return new HighlightPipe(); }, token: HighlightPipe, providedIn: "root" });
1881
1866
  HighlightPipe.decorators = [
1882
1867
  { type: Pipe, args: [{
1883
1868
  name: 'highlight'
@@ -1942,7 +1927,7 @@ FileSizePipe.decorators = [
1942
1927
  { type: Pipe, args: [{ name: 'fileSize' },] }
1943
1928
  ];
1944
1929
 
1945
- const moment$5 = momentImported;
1930
+ const moment$1 = momentImported;
1946
1931
  const DATE_UNIX_TIMESTAMP = 'X';
1947
1932
  const DATE_UNIX_MS_TIMESTAMP = 'x';
1948
1933
  class DateUtils {
@@ -1976,32 +1961,32 @@ function fromDateISOString(value) {
1976
1961
  if (!value || isMoment(value))
1977
1962
  return value;
1978
1963
  // Parse the input value, as a ISO date time
1979
- const date = moment$5(value, DATE_ISO_PATTERN);
1964
+ const date = moment$1(value, DATE_ISO_PATTERN);
1980
1965
  if (date.isValid())
1981
1966
  return date;
1982
1967
  // Not valid: trying to convert from unix timestamp
1983
1968
  if (typeof value === 'string') {
1984
1969
  console.warn('Wrong date format - Trying to convert from local time: ' + value);
1985
1970
  if (value.length === 10) {
1986
- return moment$5(value, DATE_UNIX_TIMESTAMP);
1971
+ return moment$1(value, DATE_UNIX_TIMESTAMP);
1987
1972
  }
1988
1973
  else if (value.length === 13) {
1989
- return moment$5(value, DATE_UNIX_MS_TIMESTAMP);
1974
+ return moment$1(value, DATE_UNIX_MS_TIMESTAMP);
1990
1975
  }
1991
1976
  }
1992
1977
  console.warn('Unable to parse date: ' + value);
1993
1978
  return undefined;
1994
1979
  }
1995
1980
  function fromUnixTimestamp(timeInSec) {
1996
- return moment$5(timeInSec, DATE_UNIX_TIMESTAMP);
1981
+ return moment$1(timeInSec, DATE_UNIX_TIMESTAMP);
1997
1982
  }
1998
1983
  function fromUnixMsTimestamp(timeInMs) {
1999
- return moment$5(timeInMs, DATE_UNIX_MS_TIMESTAMP);
1984
+ return moment$1(timeInMs, DATE_UNIX_MS_TIMESTAMP);
2000
1985
  }
2001
1986
  function toDuration(value, unit) {
2002
1987
  if (!value)
2003
1988
  return undefined;
2004
- const duration = moment$5.duration(value, unit);
1989
+ const duration = moment$1.duration(value, unit);
2005
1990
  // fix 990+ ms
2006
1991
  if (duration.milliseconds() >= 990) {
2007
1992
  duration.add(1000 - duration.milliseconds(), 'ms');
@@ -2030,7 +2015,7 @@ class DurationPipe {
2030
2015
  return (days > 0 ? days.toString() + (this.dayUnit + ' ') : '') + hour + ':' + minute;
2031
2016
  }
2032
2017
  }
2033
- DurationPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function DurationPipe_Factory() { return new DurationPipe(i0.ɵɵinject(i1$1.TranslateService)); }, token: DurationPipe, providedIn: "root" });
2018
+ DurationPipe.ɵprov = ɵɵdefineInjectable({ factory: function DurationPipe_Factory() { return new DurationPipe(ɵɵinject(TranslateService)); }, token: DurationPipe, providedIn: "root" });
2034
2019
  DurationPipe.decorators = [
2035
2020
  { type: Pipe, args: [{
2036
2021
  name: 'duration'
@@ -2051,7 +2036,7 @@ class MathAbsPipe {
2051
2036
  }
2052
2037
  }
2053
2038
  }
2054
- MathAbsPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function MathAbsPipe_Factory() { return new MathAbsPipe(); }, token: MathAbsPipe, providedIn: "root" });
2039
+ MathAbsPipe.ɵprov = ɵɵdefineInjectable({ factory: function MathAbsPipe_Factory() { return new MathAbsPipe(); }, token: MathAbsPipe, providedIn: "root" });
2055
2040
  MathAbsPipe.decorators = [
2056
2041
  { type: Pipe, args: [{
2057
2042
  name: 'mathAbs'
@@ -2063,7 +2048,7 @@ class EvenPipe {
2063
2048
  return val % 2 === 0;
2064
2049
  }
2065
2050
  }
2066
- EvenPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function EvenPipe_Factory() { return new EvenPipe(); }, token: EvenPipe, providedIn: "root" });
2051
+ EvenPipe.ɵprov = ɵɵdefineInjectable({ factory: function EvenPipe_Factory() { return new EvenPipe(); }, token: EvenPipe, providedIn: "root" });
2067
2052
  EvenPipe.decorators = [
2068
2053
  { type: Pipe, args: [{
2069
2054
  name: 'even'
@@ -2075,7 +2060,7 @@ class OddPipe {
2075
2060
  return val % 2 !== 0;
2076
2061
  }
2077
2062
  }
2078
- OddPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function OddPipe_Factory() { return new OddPipe(); }, token: OddPipe, providedIn: "root" });
2063
+ OddPipe.ɵprov = ɵɵdefineInjectable({ factory: function OddPipe_Factory() { return new OddPipe(); }, token: OddPipe, providedIn: "root" });
2079
2064
  OddPipe.decorators = [
2080
2065
  { type: Pipe, args: [{
2081
2066
  name: 'odd'
@@ -2183,7 +2168,7 @@ class MapGetPipe {
2183
2168
  return val[key];
2184
2169
  }
2185
2170
  }
2186
- MapGetPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function MapGetPipe_Factory() { return new MapGetPipe(); }, token: MapGetPipe, providedIn: "root" });
2171
+ MapGetPipe.ɵprov = ɵɵdefineInjectable({ factory: function MapGetPipe_Factory() { return new MapGetPipe(); }, token: MapGetPipe, providedIn: "root" });
2187
2172
  MapGetPipe.decorators = [
2188
2173
  { type: Pipe, args: [{
2189
2174
  name: 'mapGet'
@@ -2197,7 +2182,7 @@ class MapKeysPipe {
2197
2182
  return Object.keys(map);
2198
2183
  }
2199
2184
  }
2200
- MapKeysPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function MapKeysPipe_Factory() { return new MapKeysPipe(); }, token: MapKeysPipe, providedIn: "root" });
2185
+ MapKeysPipe.ɵprov = ɵɵdefineInjectable({ factory: function MapKeysPipe_Factory() { return new MapKeysPipe(); }, token: MapKeysPipe, providedIn: "root" });
2201
2186
  MapKeysPipe.decorators = [
2202
2187
  { type: Pipe, args: [{
2203
2188
  name: 'mapKeys'
@@ -2211,7 +2196,7 @@ class MapValuesPipe {
2211
2196
  return Object.values(map);
2212
2197
  }
2213
2198
  }
2214
- MapValuesPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function MapValuesPipe_Factory() { return new MapValuesPipe(); }, token: MapValuesPipe, providedIn: "root" });
2199
+ MapValuesPipe.ɵprov = ɵɵdefineInjectable({ factory: function MapValuesPipe_Factory() { return new MapValuesPipe(); }, token: MapValuesPipe, providedIn: "root" });
2215
2200
  MapValuesPipe.decorators = [
2216
2201
  { type: Pipe, args: [{
2217
2202
  name: 'mapValues'
@@ -2224,7 +2209,7 @@ class IsNotNilOrBlankPipe {
2224
2209
  return isNotNilOrBlank(value);
2225
2210
  }
2226
2211
  }
2227
- IsNotNilOrBlankPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function IsNotNilOrBlankPipe_Factory() { return new IsNotNilOrBlankPipe(); }, token: IsNotNilOrBlankPipe, providedIn: "root" });
2212
+ IsNotNilOrBlankPipe.ɵprov = ɵɵdefineInjectable({ factory: function IsNotNilOrBlankPipe_Factory() { return new IsNotNilOrBlankPipe(); }, token: IsNotNilOrBlankPipe, providedIn: "root" });
2228
2213
  IsNotNilOrBlankPipe.decorators = [
2229
2214
  { type: Pipe, args: [{
2230
2215
  name: 'isNotNilOrBlank'
@@ -2236,7 +2221,7 @@ class IsNilOrBlankPipe {
2236
2221
  return isNilOrBlank(value);
2237
2222
  }
2238
2223
  }
2239
- IsNilOrBlankPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function IsNilOrBlankPipe_Factory() { return new IsNilOrBlankPipe(); }, token: IsNilOrBlankPipe, providedIn: "root" });
2224
+ IsNilOrBlankPipe.ɵprov = ɵɵdefineInjectable({ factory: function IsNilOrBlankPipe_Factory() { return new IsNilOrBlankPipe(); }, token: IsNilOrBlankPipe, providedIn: "root" });
2240
2225
  IsNilOrBlankPipe.decorators = [
2241
2226
  { type: Pipe, args: [{
2242
2227
  name: 'isNilOrBlank'
@@ -2248,7 +2233,7 @@ class ToStringPipe {
2248
2233
  return (value !== null && value !== undefined) ? value.toString() : '';
2249
2234
  }
2250
2235
  }
2251
- ToStringPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function ToStringPipe_Factory() { return new ToStringPipe(); }, token: ToStringPipe, providedIn: "root" });
2236
+ ToStringPipe.ɵprov = ɵɵdefineInjectable({ factory: function ToStringPipe_Factory() { return new ToStringPipe(); }, token: ToStringPipe, providedIn: "root" });
2252
2237
  ToStringPipe.decorators = [
2253
2238
  { type: Pipe, args: [{
2254
2239
  name: 'toString'
@@ -2260,7 +2245,7 @@ class StrLengthPipe {
2260
2245
  return value && value.length || 0;
2261
2246
  }
2262
2247
  }
2263
- StrLengthPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function StrLengthPipe_Factory() { return new StrLengthPipe(); }, token: StrLengthPipe, providedIn: "root" });
2248
+ StrLengthPipe.ɵprov = ɵɵdefineInjectable({ factory: function StrLengthPipe_Factory() { return new StrLengthPipe(); }, token: StrLengthPipe, providedIn: "root" });
2264
2249
  StrLengthPipe.decorators = [
2265
2250
  { type: Pipe, args: [{
2266
2251
  name: 'strLength'
@@ -2311,7 +2296,7 @@ class TranslateContextService {
2311
2296
  : parts.slice(0, parts.length - 1).concat(context + parts[parts.length - 1]).join('.');
2312
2297
  }
2313
2298
  }
2314
- TranslateContextService.ɵprov = i0.ɵɵdefineInjectable({ factory: function TranslateContextService_Factory() { return new TranslateContextService(i0.ɵɵinject(i1$1.TranslateService)); }, token: TranslateContextService, providedIn: "root" });
2299
+ TranslateContextService.ɵprov = ɵɵdefineInjectable({ factory: function TranslateContextService_Factory() { return new TranslateContextService(ɵɵinject(TranslateService)); }, token: TranslateContextService, providedIn: "root" });
2315
2300
  TranslateContextService.decorators = [
2316
2301
  { type: Injectable, args: [{ providedIn: 'root' },] }
2317
2302
  ];
@@ -2327,7 +2312,7 @@ class TranslateContextPipe {
2327
2312
  return this.translateContext.instant(key, context);
2328
2313
  }
2329
2314
  }
2330
- TranslateContextPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function TranslateContextPipe_Factory() { return new TranslateContextPipe(i0.ɵɵinject(TranslateContextService)); }, token: TranslateContextPipe, providedIn: "root" });
2315
+ TranslateContextPipe.ɵprov = ɵɵdefineInjectable({ factory: function TranslateContextPipe_Factory() { return new TranslateContextPipe(ɵɵinject(TranslateContextService)); }, token: TranslateContextPipe, providedIn: "root" });
2331
2316
  TranslateContextPipe.decorators = [
2332
2317
  { type: Pipe, args: [{
2333
2318
  name: 'translateContext'
@@ -2344,7 +2329,7 @@ class TranslatablePipe {
2344
2329
  return (_a = changeCaseToUnderscore(value)) === null || _a === void 0 ? void 0 : _a.toUpperCase();
2345
2330
  }
2346
2331
  }
2347
- TranslatablePipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function TranslatablePipe_Factory() { return new TranslatablePipe(); }, token: TranslatablePipe, providedIn: "root" });
2332
+ TranslatablePipe.ɵprov = ɵɵdefineInjectable({ factory: function TranslatablePipe_Factory() { return new TranslatablePipe(); }, token: TranslatablePipe, providedIn: "root" });
2348
2333
  TranslatablePipe.decorators = [
2349
2334
  { type: Pipe, args: [{
2350
2335
  name: 'translatable'
@@ -2361,7 +2346,7 @@ class PropertyGetPipe {
2361
2346
  args && args.defaultValue);
2362
2347
  }
2363
2348
  }
2364
- PropertyGetPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function PropertyGetPipe_Factory() { return new PropertyGetPipe(); }, token: PropertyGetPipe, providedIn: "root" });
2349
+ PropertyGetPipe.ɵprov = ɵɵdefineInjectable({ factory: function PropertyGetPipe_Factory() { return new PropertyGetPipe(); }, token: PropertyGetPipe, providedIn: "root" });
2365
2350
  PropertyGetPipe.decorators = [
2366
2351
  { type: Pipe, args: [{
2367
2352
  name: 'propertyGet'
@@ -2605,12 +2590,12 @@ SharedMatAutocompleteModule.decorators = [
2605
2590
  },] }
2606
2591
  ];
2607
2592
 
2608
- const moment$4 = momentImported;
2593
+ const moment$2 = momentImported;
2609
2594
  // @dynamic
2610
2595
  class SharedValidators {
2611
2596
  static validDate(control) {
2612
2597
  const value = control.value;
2613
- const date = !value || moment$4.isMoment(value) ? value : moment$4(control.value, DATE_ISO_PATTERN);
2598
+ const date = !value || moment$2.isMoment(value) ? value : moment$2(control.value, DATE_ISO_PATTERN);
2614
2599
  if (date && (!date.isValid() || date.year() < 1970)) {
2615
2600
  return { validDate: true };
2616
2601
  }
@@ -3013,9 +2998,9 @@ function parseDuration(input, maxDecimals, placeholderChar) {
3013
2998
  const hour = parseInt(durationParts[0] || '0');
3014
2999
  const minute = parseInt(durationParts[1] || '0');
3015
3000
  const value = hour + (minute + 0.5) / 60;
3016
- return roundFloat(value, maxDecimals);
3001
+ return roundFloat$1(value, maxDecimals);
3017
3002
  }
3018
- function roundFloat(input, maxDecimals) {
3003
+ function roundFloat$1(input, maxDecimals) {
3019
3004
  if (maxDecimals > 0) {
3020
3005
  const powDecimal = Math.pow(10, maxDecimals);
3021
3006
  return Math.trunc(input * powDecimal + 0.5) / powDecimal;
@@ -3039,9 +3024,9 @@ const MASKS = {
3039
3024
  DD: [/[+-]/, /\d/, /\d/, /\d/, '.', /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, '°']
3040
3025
  }
3041
3026
  };
3042
- const noop$6 = () => {
3027
+ const noop$1 = () => {
3043
3028
  };
3044
- const ɵ0$9 = noop$6;
3029
+ const ɵ0$1 = noop$1;
3045
3030
  class MatLatLongField {
3046
3031
  constructor(platform, translate, formBuilder, cd, formGroupDir) {
3047
3032
  this.platform = platform;
@@ -3049,8 +3034,8 @@ class MatLatLongField {
3049
3034
  this.formBuilder = formBuilder;
3050
3035
  this.cd = cd;
3051
3036
  this.formGroupDir = formGroupDir;
3052
- this._onChangeCallback = noop$6;
3053
- this._onTouchedCallback = noop$6;
3037
+ this._onChangeCallback = noop$1;
3038
+ this._onTouchedCallback = noop$1;
3054
3039
  this._subscription = new Subscription();
3055
3040
  this.disabling = false;
3056
3041
  this.writing = false;
@@ -3391,14 +3376,14 @@ SharedMatLatLongModule.decorators = [
3391
3376
  },] }
3392
3377
  ];
3393
3378
 
3394
- const DEFAULT_VALUE_ACCESSOR$5 = {
3379
+ const DEFAULT_VALUE_ACCESSOR$1 = {
3395
3380
  provide: NG_VALUE_ACCESSOR,
3396
3381
  useExisting: forwardRef(() => MatDate),
3397
3382
  multi: true
3398
3383
  };
3399
- const DAY_MASK$2 = [/\d/, /\d/, '/', /\d/, /\d/, '/', /\d/, /\d/, /\d/, /\d/];
3400
- const noop$5 = () => { };
3401
- const ɵ0$8 = noop$5;
3384
+ const DAY_MASK = [/\d/, /\d/, '/', /\d/, /\d/, '/', /\d/, /\d/, /\d/, /\d/];
3385
+ const noop$2 = () => { };
3386
+ const ɵ0$2 = noop$2;
3402
3387
  class MatDate {
3403
3388
  constructor(platform, dateAdapter, translate, formBuilder, cd, keyboard, formGroupDir) {
3404
3389
  this.dateAdapter = dateAdapter;
@@ -3407,12 +3392,12 @@ class MatDate {
3407
3392
  this.cd = cd;
3408
3393
  this.keyboard = keyboard;
3409
3394
  this.formGroupDir = formGroupDir;
3410
- this._onChangeCallback = noop$5;
3411
- this._onTouchedCallback = noop$5;
3395
+ this._onChangeCallback = noop$2;
3396
+ this._onTouchedCallback = noop$2;
3412
3397
  this._subscription = new Subscription();
3413
3398
  this.writing = true;
3414
3399
  this.disabling = false;
3415
- this.dayMask = DAY_MASK$2;
3400
+ this.dayMask = DAY_MASK;
3416
3401
  this.disabled = false;
3417
3402
  this.floatLabel = 'auto';
3418
3403
  this.readonly = false;
@@ -3649,7 +3634,7 @@ MatDate.decorators = [
3649
3634
  selector: 'mat-date-field',
3650
3635
  template: "<!-- readonly -->\n<mat-form-field *ngIf=\"readonly else writable\">\n <input matInput hidden type=\"text\" readonly=\"true\" [formControl]=\"formControl\">\n <ion-text>{{formControl.value|dateFormat: {pattern: displayPattern} }}</ion-text>\n</mat-form-field>\n\n<ng-template #writable>\n <mat-form-field [floatLabel]=\"floatLabel\">\n\n <mat-label>{{placeholder}}</mat-label>\n\n <div matPrefix><ng-content select=\"[matPrefix]\"></ng-content></div>\n\n <input matInput #matInput autocomplete=\"off\" type=\"text\"\n *ngIf=\"!mobile\"\n [formControl]=\"dayControl\"\n [textMask]=\"{mask: dayMask, keepCharPositions: true, placeholderChar: placeholderChar}\"\n [placeholder]=\"'COMMON.DATE_PLACEHOLDER'|translate\"\n (blur)=\"checkIfTouched()\"\n (keyup.arrowdown)=\"openDatePicker($event, datePicker)\"\n (keyup.escape)=\"preventEvent($event)\"\n [required]=\"required\"\n [tabindex]=\"tabindex\"\n [appAutofocus]=\"autofocus\">\n <input matInput #matInput autocomplete=\"off\" type=\"text\"\n *ngIf=\"mobile\"\n [formControl]=\"dayControl\"\n (click)=\"openDatePickerIfMobile($event, datePicker)\"\n [required]=\"required\"\n [tabindex]=\"tabindex\"\n readonly>\n\n <!-- Hide the final control -->\n <input matInput type=\"text\"\n [formControl]=\"formControl\"\n hidden\n [matDatepicker]=\"datePicker\"\n (dateChange)=\"onDatePickerChange($event)\">\n\n <button matSuffix mat-icon-button tabindex=\"-1\"\n type=\"button\"\n (click)=\"openDatePicker($event, datePicker)\"\n [disabled]=\"formControl.disabled\">\n <div *ngIf=\"mobile; then iconDate; else iconDesktop\"></div>\n </button>\n <button matSuffix mat-icon-button tabindex=\"-1\"\n type=\"button\"\n *ngIf=\"clearable\"\n (click)=\"writeValue(null)\"\n [hidden]=\"formControl.disabled || !formControl.value\">\n <mat-icon>close</mat-icon>\n </button>\n\n <mat-error *ngIf=\"formControl.hasError('required')\" translate>ERROR.FIELD_REQUIRED</mat-error>\n <mat-error *ngIf=\"formControl.hasError('validDate')\" translate>ERROR.FIELD_NOT_VALID_DATE</mat-error>\n <mat-error *ngIf=\"formControl.hasError('dateIsAfter')\">{{'ERROR.FIELD_NOT_VALID_DATE_AFTER' | translate: formControl.errors.dateIsAfter }}</mat-error>\n <mat-error *ngIf=\"formControl.hasError('dateRange')\" translate>ERROR.FIELD_NOT_VALID_DATE_RANGE</mat-error>\n <mat-error *ngIf=\"!formControl.hasError('dateRange') && formControl.hasError('dateMaxDuration')\" translate>ERROR.FIELD_NOT_VALID_DATE_MAX_DURATION</mat-error>\n <mat-error *ngIf=\"!formControl.hasError('dateRange') && formControl.hasError('dateMinDuration')\" translate>ERROR.FIELD_NOT_VALID_DATE_MIN_DURATION</mat-error>\n <mat-error *ngIf=\"formControl.hasError('msg')\">{{formControl.errors['msg']}}</mat-error>\n </mat-form-field>\n\n <mat-datepicker #datePicker\n [touchUi]=\"mobile\"\n [disabled]=\"formControl.disabled\"\n [startAt]=\"startDate\"></mat-datepicker>\n\n <ng-template #iconDesktop>\n <mat-icon>keyboard_arrow_down</mat-icon>\n </ng-template>\n\n <ng-template #iconDate>\n <mat-icon>date_range</mat-icon>\n </ng-template>\n\n</ng-template>\n\n",
3651
3636
  providers: [
3652
- DEFAULT_VALUE_ACCESSOR$5,
3637
+ DEFAULT_VALUE_ACCESSOR$1,
3653
3638
  ],
3654
3639
  changeDetection: ChangeDetectionStrategy.OnPush,
3655
3640
  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%}"]
@@ -3682,17 +3667,17 @@ MatDate.propDecorators = {
3682
3667
  matInputs: [{ type: ViewChildren, args: ['matInput',] }]
3683
3668
  };
3684
3669
 
3685
- const DEFAULT_VALUE_ACCESSOR$4 = {
3670
+ const DEFAULT_VALUE_ACCESSOR$2 = {
3686
3671
  provide: NG_VALUE_ACCESSOR,
3687
3672
  useExisting: forwardRef(() => MatDateTime),
3688
3673
  multi: true
3689
3674
  };
3690
3675
  const DAY_MASK$1 = [/\d/, /\d/, '/', /\d/, /\d/, '/', /\d/, /\d/, /\d/, /\d/];
3691
3676
  const HOUR_REGEXP = /^[012][0-9][:][012345][0-9]$/;
3692
- const HOUR_MASK$1 = [/[012]/, /\d/, ':', /[012345]/, /\d/];
3693
- const noop$4 = () => {
3677
+ const HOUR_MASK = [/[012]/, /\d/, ':', /[012345]/, /\d/];
3678
+ const noop$3 = () => {
3694
3679
  };
3695
- const ɵ0$7 = noop$4;
3680
+ const ɵ0$3 = noop$3;
3696
3681
  class MatDateTime {
3697
3682
  constructor(platform, dateAdapter, translate, formBuilder, keyboard, cd, formGroupDir) {
3698
3683
  this.platform = platform;
@@ -3702,14 +3687,14 @@ class MatDateTime {
3702
3687
  this.keyboard = keyboard;
3703
3688
  this.cd = cd;
3704
3689
  this.formGroupDir = formGroupDir;
3705
- this._onChangeCallback = noop$4;
3706
- this._onTouchedCallback = noop$4;
3690
+ this._onChangeCallback = noop$3;
3691
+ this._onTouchedCallback = noop$3;
3707
3692
  this._subscription = new Subscription();
3708
3693
  this.writing = true;
3709
3694
  this.disabling = false;
3710
3695
  this._onDestroy = new EventEmitter();
3711
3696
  this.dayMask = DAY_MASK$1;
3712
- this.hourMask = HOUR_MASK$1;
3697
+ this.hourMask = HOUR_MASK;
3713
3698
  this.floatLabel = 'auto';
3714
3699
  this.readonly = false;
3715
3700
  this.compact = false;
@@ -4015,7 +4000,7 @@ MatDateTime.decorators = [
4015
4000
  selector: 'mat-date-time-field',
4016
4001
  template: "<!-- readonly -->\n<mat-form-field *ngIf=\"readonly; else writable\"\n [floatLabel]=\"floatLabel\"\n class=\"mat-form-field-disabled\">\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><ng-content select=\"[matPrefix]\"></ng-content></div>\n\n <input matInput #matInput autocomplete=\"off\" type=\"text\"\n *ngIf=\"!mobile\"\n [formControl]=\"dateFormControl\"\n [textMask]=\"{mask: dayMask, keepCharPositions: true, placeholderChar: placeholderChar}\"\n [placeholder]=\"'COMMON.DATE_PLACEHOLDER'|translate\"\n (blur)=\"checkIfTouched()\"\n (keyup.arrowdown)=\"openDatePicker($event, datePicker)\"\n (keyup.escape)=\"preventEvent($event)\"\n [required]=\"required\"\n [tabindex]=\"tabindex\"\n [appAutofocus]=\"autofocus\">\n <input matInput #matInput autocomplete=\"off\" type=\"text\"\n *ngIf=\"mobile\"\n [formControl]=\"dateFormControl\"\n (click)=\"openDatePickerIfMobile($event, datePicker)\"\n [required]=\"required\"\n [tabindex]=\"tabindex\"\n readonly>\n <input matInput type=\"text\" [formControl]=\"formControl\"\n hidden\n [matDatepicker]=\"datePicker\"\n (dateChange)=\"onDatePickerChange($event)\">\n\n <button type=\"button\" mat-icon-button tabindex=\"-1\" matSuffix #datePickerButton2 (click)=\"openDatePicker($event, datePicker)\" [disabled]=\"formControl.disabled\">\n <div *ngIf=\"mobile; then iconDate; else iconDesktop\"></div>\n </button>\n <button matSuffix mat-icon-button tabindex=\"-1\"\n type=\"button\"\n *ngIf=\"clearable\"\n (click)=\"clear()\"\n [hidden]=\"formControl.disabled || !formControl.value\">\n <mat-icon>close</mat-icon>\n </button>\n </mat-form-field>\n <mat-datepicker #datePicker\n [touchUi]=\"mobile\"\n [disabled]=\"formControl.disabled\"\n [startAt]=\"startDate\"></mat-datepicker>\n <div class=\"mat-form-field-subscript mat-form-field-subscript-wrapper\" >\n <!-- errors -->\n <ng-container [ngSwitch]=\"formControl.touched && formControl.errors|mapKeys|arrayFirst\">\n <mat-error *ngSwitchCase=\"'required'\" translate>ERROR.FIELD_REQUIRED</mat-error>\n <mat-error *ngSwitchCase=\"'validDate'\" translate>ERROR.FIELD_NOT_VALID_DATE_TIME</mat-error>\n <mat-error *ngSwitchCase=\"'dateIsAfter'\">{{'ERROR.FIELD_NOT_VALID_DATE_AFTER' | translate: formControl.errors.dateIsAfter }}</mat-error>\n <mat-error *ngSwitchCase=\"'dateRange'\" translate>ERROR.FIELD_NOT_VALID_DATE_RANGE</mat-error>\n <mat-error *ngSwitchCase=\"'dateMaxDuration'\" translate>ERROR.FIELD_NOT_VALID_DATE_MAX_DURATION</mat-error>\n <mat-error *ngSwitchCase=\"'dateMinDuration'\" translate>ERROR.FIELD_NOT_VALID_DATE_MIN_DURATION</mat-error>\n <mat-error *ngSwitchCase=\"'msg'\">{{formControl.errors.msg}}</mat-error>\n </ng-container>\n <ng-content select=\"mat-error\"></ng-content>\n\n <!-- mat hint -->\n <div class=\"mat-form-field-hint-wrapper\" [class.cdk-visually-hidden]=\"formControl.invalid\">\n <div class=\"mat-form-field-hint-spacer\"></div>\n <ng-content select=\"mat-hint\"></ng-content>\n </div>\n </div>\n\n </ion-col>\n\n <!-- hour -->\n <ion-col class=\"hour ion-no-padding\">\n <mat-form-field [floatLabel]=\"floatLabel\"\n [class.mat-form-field-invalid]=\"formControl.touched && (timeFormControl.invalid || formControl.invalid)\">\n <mat-label *ngIf=\"placeholder && floatLabel != 'never'\" translate>COMMON.TIME</mat-label>\n <input matInput #matInput type=\"text\"\n *ngIf=\"!mobile\"\n [formControl]=\"timeFormControl\"\n autocomplete=\"off\"\n min=\"0\" max=\"23\"\n [textMask]=\"{mask: hourMask, keepCharPositions: true, placeholderChar: placeholderChar, guide: true}\"\n [placeholder]=\"'COMMON.TIME_PLACEHOLDER'|translate\"\n [required]=\"required\"\n (keyup.arrowdown)=\"openTimePicker($event)\"\n (keyup.escape)=\"preventEvent($event)\"\n (blur)=\"checkIfTouched()\"\n [tabindex]=\"tabindex !== undefined ? tabindex+1 : undefined\">\n\n <input matInput #matInput type=\"text\"\n *ngIf=\"mobile\"\n [formControl]=\"timeFormControl\"\n (click)=\"openTimePickerIfMobile($event)\"\n readonly>\n\n <input matInput type=\"text\"\n [formControl]=\"timeFormControl\"\n hidden\n [ngxTimepicker]=\"timePicker\"\n [format]=\"24\">\n\n <button matSuffix type=\"button\" mat-icon-button\n tabindex=\"-1\"\n *ngIf=\"!compact && !mobile\"\n [disabled]=\"formControl.disabled\"\n (click)=\"openTimePicker($event)\" >\n <mat-icon>keyboard_arrow_down</mat-icon>\n </button>\n <button matSuffix type=\"button\" mat-icon-button\n tabindex=\"-1\"\n *ngIf=\"!compact && mobile\"\n [disabled]=\"formControl.disabled\"\n (click)=\"openTimePickerIfMobile($event)\">\n <mat-icon>access_time</mat-icon>\n </button>\n\n <ngx-material-timepicker #timePicker [@.disabled]=\"true\"\n (timeSet)=\"onTimePickerChange($event)\"\n [ESC]=\"!mobile\"\n [defaultTime]=\"'00:00'\"\n [cancelBtnTmpl]=\"timePickerCancelButton\"\n [confirmBtnTmpl]=\"timePickerOkButton\"\n [preventOverlayClick]=\"mobile\"\n [enableKeyboardInput]=\"false\"\n [disableAnimation]=\"true\">\n <!-- cancel button -->\n <ng-template #timePickerCancelButton>\n <ion-button fill=\"clear\" color=\"dark\">\n <ion-label translate>COMMON.BTN_CANCEL</ion-label>\n </ion-button>\n </ng-template>\n\n <!-- confirm button -->\n <ng-template #timePickerOkButton>\n <ion-button fill=\"solid\" color=\"tertiary\">\n <ion-label translate>COMMON.BTN_VALIDATE</ion-label>\n </ion-button>\n </ng-template>\n\n </ngx-material-timepicker>\n </mat-form-field>\n </ion-col>\n </ion-row>\n </ion-grid>\n\n\n</ng-template>\n\n<ng-template #iconDesktop>\n <mat-icon>keyboard_arrow_down</mat-icon>\n</ng-template>\n\n<ng-template #iconDate>\n <mat-icon>date_range</mat-icon>\n</ng-template>\n",
4017
4002
  providers: [
4018
- DEFAULT_VALUE_ACCESSOR$4,
4003
+ DEFAULT_VALUE_ACCESSOR$2,
4019
4004
  ],
4020
4005
  changeDetection: ChangeDetectionStrategy.OnPush,
4021
4006
  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%}"]
@@ -4054,10 +4039,10 @@ const DEFAULT_VALUE_ACCESSOR$3 = {
4054
4039
  useExisting: forwardRef(() => MatDateShort),
4055
4040
  multi: true
4056
4041
  };
4057
- const DAY_MASK = [/\d/, /\d/, /\d/, /\d/];
4058
- const noop$3 = () => {
4042
+ const DAY_MASK$2 = [/\d/, /\d/, /\d/, /\d/];
4043
+ const noop$4 = () => {
4059
4044
  };
4060
- const ɵ0$6 = noop$3;
4045
+ const ɵ0$4 = noop$4;
4061
4046
  class MatDateShort {
4062
4047
  constructor(platform, dateAdapter, translate, formBuilder, cd, keyboard, formGroupDir) {
4063
4048
  this.dateAdapter = dateAdapter;
@@ -4066,11 +4051,11 @@ class MatDateShort {
4066
4051
  this.cd = cd;
4067
4052
  this.keyboard = keyboard;
4068
4053
  this.formGroupDir = formGroupDir;
4069
- this._onChangeCallback = noop$3;
4070
- this._onTouchedCallback = noop$3;
4054
+ this._onChangeCallback = noop$4;
4055
+ this._onTouchedCallback = noop$4;
4071
4056
  this.writing = true;
4072
4057
  this.disabling = false;
4073
- this.dayMask = DAY_MASK;
4058
+ this.dayMask = DAY_MASK$2;
4074
4059
  this.disabled = false;
4075
4060
  this.floatLabel = 'auto';
4076
4061
  this.readonly = false;
@@ -4383,16 +4368,16 @@ SharedMatDateTimeModule.decorators = [
4383
4368
  },] }
4384
4369
  ];
4385
4370
 
4386
- const DEFAULT_VALUE_ACCESSOR$2 = {
4371
+ const DEFAULT_VALUE_ACCESSOR$4 = {
4387
4372
  provide: NG_VALUE_ACCESSOR,
4388
4373
  useExisting: forwardRef(() => MatDuration),
4389
4374
  multi: true
4390
4375
  };
4391
4376
  const HOUR_TIME_PATTERN = /[0-9]\d\d:[0-5]\d/;
4392
- const HOUR_MASK = [/\d/, /\d/, /\d/, ':', /[0-5]/, /\d/];
4393
- const noop$2 = () => {
4377
+ const HOUR_MASK$1 = [/\d/, /\d/, /\d/, ':', /[0-5]/, /\d/];
4378
+ const noop$5 = () => {
4394
4379
  };
4395
- const ɵ0$5 = noop$2;
4380
+ const ɵ0$5 = noop$5;
4396
4381
  class MatDuration {
4397
4382
  constructor(platform, dateAdapter, translate, formBuilder, cd, formGroupDir) {
4398
4383
  this.dateAdapter = dateAdapter;
@@ -4401,11 +4386,11 @@ class MatDuration {
4401
4386
  this.cd = cd;
4402
4387
  this.formGroupDir = formGroupDir;
4403
4388
  this._subscription = new Subscription();
4404
- this._onChangeCallback = noop$2;
4405
- this._onTouchedCallback = noop$2;
4389
+ this._onChangeCallback = noop$5;
4390
+ this._onTouchedCallback = noop$5;
4406
4391
  this.writing = true;
4407
4392
  this.disabling = false;
4408
- this.hourMask = HOUR_MASK;
4393
+ this.hourMask = HOUR_MASK$1;
4409
4394
  this.disabled = false;
4410
4395
  this.floatLabel = 'auto';
4411
4396
  this.readonly = false;
@@ -4585,7 +4570,7 @@ MatDuration.decorators = [
4585
4570
  selector: 'mat-duration-field',
4586
4571
  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",
4587
4572
  providers: [
4588
- DEFAULT_VALUE_ACCESSOR$2,
4573
+ DEFAULT_VALUE_ACCESSOR$4,
4589
4574
  ],
4590
4575
  changeDetection: ChangeDetectionStrategy.OnPush,
4591
4576
  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%}"]
@@ -4642,22 +4627,22 @@ SharedMatDurationModule.decorators = [
4642
4627
  },] }
4643
4628
  ];
4644
4629
 
4645
- const DEFAULT_VALUE_ACCESSOR$1 = {
4630
+ const DEFAULT_VALUE_ACCESSOR$5 = {
4646
4631
  provide: NG_VALUE_ACCESSOR,
4647
4632
  useExisting: forwardRef(() => MatBooleanField),
4648
4633
  multi: true
4649
4634
  };
4650
- const noop$1 = () => {
4635
+ const noop$6 = () => {
4651
4636
  };
4652
- const ɵ0$4 = noop$1;
4637
+ const ɵ0$6 = noop$6;
4653
4638
  class MatBooleanField {
4654
4639
  constructor(translate, formBuilder, cd, formGroupDir) {
4655
4640
  this.translate = translate;
4656
4641
  this.formBuilder = formBuilder;
4657
4642
  this.cd = cd;
4658
4643
  this.formGroupDir = formGroupDir;
4659
- this._onChangeCallback = noop$1;
4660
- this._onTouchedCallback = noop$1;
4644
+ this._onChangeCallback = noop$6;
4645
+ this._onTouchedCallback = noop$6;
4661
4646
  this._writing = false;
4662
4647
  this.showRadio = false;
4663
4648
  this.disabled = false;
@@ -4821,7 +4806,7 @@ MatBooleanField.decorators = [
4821
4806
  selector: 'mat-boolean-field',
4822
4807
  template: "<mat-form-field *ngIf=\"readonly; else writable\"\n [floatLabel]=\"floatLabel\"\n class=\"mat-form-field-disabled\">\n <input matInput hidden type=\"text\" readonly\n [placeholder]=\"placeholder\"\n [formControl]=\"formControl\">\n <ion-text>{{(formControl.value ? 'COMMON.YES' : 'COMMON.NO') | translate }}</ion-text>\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\">\n <mat-label *ngIf=\"placeholder && floatLabel!=='never'\">\n {{placeholder}}\n <span [hidden]=\"showRadio\">({{'COMMON.YES'|translate}}/{{'COMMON.NO'|translate}})</span>\n </mat-label>\n\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 translate>COMMON.YES</span>\n </mat-radio-button>&nbsp;\n <mat-radio-button #noButton [value]=\"false\">\n <span translate>COMMON.NO</span>\n </mat-radio-button>\n </mat-radio-group>\n\n <div matSuffix #injectMatSuffix></div>\n\n <mat-error *ngIf=\"formControl.hasError('required')\" translate>ERROR.FIELD_REQUIRED</mat-error>\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\">\n <mat-label *ngIf=\"placeholder && !showRadio\">\n {{placeholder}}\n </mat-label>\n\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 <div matSuffix #injectMatSuffix></div>\n\n <mat-error *ngIf=\"formControl.hasError('required')\" translate>ERROR.FIELD_REQUIRED</mat-error>\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\">\n <input matInput type=\"text\" hidden\n [formControl]=\"formControl\"\n [placeholder]=\"placeholder\"\n [required]=\"required\">\n <ion-grid class=\"ion-no-padding\" *ngIf=\"!formControl.disabled; else disabledLabel\">\n <ion-row class=\"ion-no-padding\">\n <!-- Yes button -->\n <ion-col>\n <ion-button style=\"width: 100%;\"\n class=\"mat-form-field-button\"\n [tabindex]=\"_tabindex\"\n (click)=\"writeValue(true, $event)\"\n (keyup.enter)=\"writeValue(true, $event)\"\n [color]=\"_value == null ? 'danger' : (_value === true) ? 'accent' : 'light'\">\n <ion-icon slot=\"start\" name=\"checkmark\"></ion-icon>\n {{'COMMON.YES'|translate}}\n </ion-button>\n </ion-col>\n <!-- No button -->\n <ion-col>\n <ion-button style=\"width: 100%;\"\n 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 ? 'danger' : (_value === false) ? 'accent' : 'light'\">\n <ion-icon slot=\"start\" name=\"close\"></ion-icon>\n {{'COMMON.NO'|translate}}\n </ion-button>\n </ion-col>\n </ion-row>\n </ion-grid>\n <ng-template #disabledLabel>\n <ion-label><i translate>COMMON.EMPTY_OPTION</i></ion-label>\n </ng-template>\n\n <div matSuffix #injectMatSuffix></div>\n\n <mat-error *ngIf=\"formControl.hasError('required')\" translate>ERROR.FIELD_REQUIRED</mat-error>\n </mat-form-field>\n </ng-container>\n\n <div class=\"cdk-visually-hidden\">\n <div #suffix><ng-content select=\"[matSuffix]\"></ng-content></div>\n </div>\n\n</ng-template>\n\n\n",
4823
4808
  providers: [
4824
- DEFAULT_VALUE_ACCESSOR$1
4809
+ DEFAULT_VALUE_ACCESSOR$5
4825
4810
  ],
4826
4811
  changeDetection: ChangeDetectionStrategy.OnPush,
4827
4812
  styles: [":host{width:100%}"]
@@ -5062,7 +5047,7 @@ class MatNumpadDomService {
5062
5047
  this.appRef.detachView(this.componentRef.hostView);
5063
5048
  }
5064
5049
  }
5065
- 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" });
5050
+ MatNumpadDomService.ɵprov = ɵɵdefineInjectable({ factory: function MatNumpadDomService_Factory() { return new MatNumpadDomService(ɵɵinject(ComponentFactoryResolver), ɵɵinject(ApplicationRef), ɵɵinject(INJECTOR), ɵɵinject(DOCUMENT, 8)); }, token: MatNumpadDomService, providedIn: "root" });
5066
5051
  MatNumpadDomService.decorators = [
5067
5052
  { type: Injectable, args: [{
5068
5053
  providedIn: 'root'
@@ -5426,7 +5411,7 @@ SharedMatNumpadModule.decorators = [
5426
5411
  },] }
5427
5412
  ];
5428
5413
 
5429
- const DEFAULT_VALUE_ACCESSOR = {
5414
+ const DEFAULT_VALUE_ACCESSOR$6 = {
5430
5415
  provide: NG_VALUE_ACCESSOR,
5431
5416
  useExisting: forwardRef(() => MatSwipeField),
5432
5417
  multi: true
@@ -5689,7 +5674,7 @@ MatSwipeField.decorators = [
5689
5674
  { type: Component, args: [{
5690
5675
  selector: 'mat-swipe-field',
5691
5676
  template: "<mat-form-field [floatLabel]=\"showSlides && (!floatLabel || floatLabel === 'auto') ? 'always': floatLabel\"\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",
5692
- providers: [DEFAULT_VALUE_ACCESSOR],
5677
+ providers: [DEFAULT_VALUE_ACCESSOR$6],
5693
5678
  changeDetection: ChangeDetectionStrategy.OnPush,
5694
5679
  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}"]
5695
5680
  },] }
@@ -6184,7 +6169,7 @@ class ProgressBarService {
6184
6169
  }
6185
6170
  }
6186
6171
  }
6187
- ProgressBarService.ɵprov = i0.ɵɵdefineInjectable({ factory: function ProgressBarService_Factory() { return new ProgressBarService(); }, token: ProgressBarService, providedIn: "root" });
6172
+ ProgressBarService.ɵprov = ɵɵdefineInjectable({ factory: function ProgressBarService_Factory() { return new ProgressBarService(); }, token: ProgressBarService, providedIn: "root" });
6188
6173
  ProgressBarService.decorators = [
6189
6174
  { type: Injectable, args: [{ providedIn: 'root' },] }
6190
6175
  ];
@@ -6228,7 +6213,7 @@ class AppGestureConfig extends HammerGestureConfig {
6228
6213
  return mc;
6229
6214
  }
6230
6215
  }
6231
- AppGestureConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function AppGestureConfig_Factory() { return new AppGestureConfig(); }, token: AppGestureConfig, providedIn: "root" });
6216
+ AppGestureConfig.ɵprov = ɵɵdefineInjectable({ factory: function AppGestureConfig_Factory() { return new AppGestureConfig(); }, token: AppGestureConfig, providedIn: "root" });
6232
6217
  AppGestureConfig.decorators = [
6233
6218
  { type: Injectable, args: [{ providedIn: 'root' },] }
6234
6219
  ];
@@ -6451,7 +6436,7 @@ class MatPaginatorI18n extends MatPaginatorIntl {
6451
6436
  this.previousPageLabel = this.translate.instant('COMMON.PAGINATOR.PREVIOUS_PAGE');
6452
6437
  }
6453
6438
  }
6454
- MatPaginatorI18n.ɵprov = i0.ɵɵdefineInjectable({ factory: function MatPaginatorI18n_Factory() { return new MatPaginatorI18n(i0.ɵɵinject(i1$1.TranslateService)); }, token: MatPaginatorI18n, providedIn: "root" });
6439
+ MatPaginatorI18n.ɵprov = ɵɵdefineInjectable({ factory: function MatPaginatorI18n_Factory() { return new MatPaginatorI18n(ɵɵinject(TranslateService)); }, token: MatPaginatorI18n, providedIn: "root" });
6455
6440
  MatPaginatorI18n.decorators = [
6456
6441
  { type: Injectable, args: [{ providedIn: 'root' },] }
6457
6442
  ];
@@ -6541,17 +6526,17 @@ function getColorContrast(color, bw) {
6541
6526
  return rgbArrayToHex(rgb.map(v => 255 - v));
6542
6527
  }
6543
6528
 
6544
- const noop = () => {
6529
+ const noop$7 = () => {
6545
6530
  };
6546
- const ɵ0$3 = noop;
6531
+ const ɵ0$7 = noop$7;
6547
6532
  class AppFormField {
6548
6533
  constructor(translate, cd, injector, formGroupDir) {
6549
6534
  this.translate = translate;
6550
6535
  this.cd = cd;
6551
6536
  this.injector = injector;
6552
6537
  this.formGroupDir = formGroupDir;
6553
- this._onChangeCallback = noop;
6554
- this._onTouchedCallback = noop;
6538
+ this._onChangeCallback = noop$7;
6539
+ this._onTouchedCallback = noop$7;
6555
6540
  this.readonly = false;
6556
6541
  this.compact = false;
6557
6542
  this.floatLabel = 'auto';
@@ -6922,14 +6907,14 @@ class AudioProvider {
6922
6907
  });
6923
6908
  }
6924
6909
  }
6925
- 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" });
6910
+ 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" });
6926
6911
  AudioProvider.decorators = [
6927
6912
  { type: Injectable, args: [{ providedIn: 'root' },] }
6928
6913
  ];
6929
6914
  AudioProvider.ctorParameters = () => [
6930
6915
  { type: Platform },
6931
- { type: NativeAudio, decorators: [{ type: Optional }] },
6932
- { type: Vibration, decorators: [{ type: Optional }] },
6916
+ { type: NativeAudio$1, decorators: [{ type: Optional }] },
6917
+ { type: Vibration$1, decorators: [{ type: Optional }] },
6933
6918
  { type: AudioManagement, decorators: [{ type: Optional }] }
6934
6919
  ];
6935
6920
 
@@ -7011,7 +6996,7 @@ class Hotkeys {
7011
6996
  });
7012
6997
  }
7013
6998
  }
7014
- 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" });
6999
+ Hotkeys.ɵprov = ɵɵdefineInjectable({ factory: function Hotkeys_Factory() { return new Hotkeys(ɵɵinject(EventManager), ɵɵinject(MatDialog), ɵɵinject(DOCUMENT), ɵɵinject(ModalController)); }, token: Hotkeys, providedIn: "root" });
7015
7000
  Hotkeys.decorators = [
7016
7001
  { type: Injectable, args: [{
7017
7002
  providedIn: 'root'
@@ -7185,7 +7170,7 @@ class Base64ImageReader {
7185
7170
  }
7186
7171
  }
7187
7172
 
7188
- const uuidv4$1 = uuidv4Imported;
7173
+ const uuidv4 = uuidv4Imported;
7189
7174
  class FileService {
7190
7175
  constructor(platform,
7191
7176
  //private transfer: FileTransfer,
@@ -7222,7 +7207,7 @@ class FileService {
7222
7207
  const lastSlashIndex = source.lastIndexOf('/');
7223
7208
  if (lastSlashIndex === -1)
7224
7209
  throw new Error('Invalid URL: ' + source);
7225
- const fileName = lastSlashIndex < (source.length - 1) && source.substring(lastSlashIndex + 1) || uuidv4$1();
7210
+ const fileName = lastSlashIndex < (source.length - 1) && source.substring(lastSlashIndex + 1) || uuidv4();
7226
7211
  // Download into the file system
7227
7212
  if (responseType === 'file' && this.canUseFileSystem) {
7228
7213
  console.warn(`WARN: [file] Fetching image {${source}} in local file...`);
@@ -7278,7 +7263,7 @@ class FileService {
7278
7263
  this._started = true;
7279
7264
  }
7280
7265
  }
7281
- 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" });
7266
+ FileService.ɵprov = ɵɵdefineInjectable({ factory: function FileService_Factory() { return new FileService(ɵɵinject(Platform), ɵɵinject(HttpClient), ɵɵinject(ENVIRONMENT)); }, token: FileService, providedIn: "root" });
7282
7267
  FileService.decorators = [
7283
7268
  { type: Injectable, args: [{
7284
7269
  providedIn: 'root',
@@ -7440,7 +7425,7 @@ class Base58 {
7440
7425
  Base58.alphabet = '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz';
7441
7426
 
7442
7427
  const scrypt = require('scrypt-async');
7443
- const sha256$1 = require('hash.js/lib/hash/sha/256');
7428
+ const sha256 = require('hash.js/lib/hash/sha/256');
7444
7429
  const sha512 = require('hash.js/lib/hash/sha/512');
7445
7430
  const nacl = {
7446
7431
  sign,
@@ -7544,7 +7529,7 @@ class CryptoService {
7544
7529
  * Hash (using SHA256) a message
7545
7530
  */
7546
7531
  sha256(message) {
7547
- return sha256$1().update(message).digest('hex');
7532
+ return sha256().update(message).digest('hex');
7548
7533
  }
7549
7534
  /**
7550
7535
  * Hash (using SHA512) a message
@@ -7557,7 +7542,7 @@ class CryptoService {
7557
7542
  return nacl.util.encodeBase64(m);
7558
7543
  }
7559
7544
  }
7560
- CryptoService.ɵprov = i0.ɵɵdefineInjectable({ factory: function CryptoService_Factory() { return new CryptoService(); }, token: CryptoService, providedIn: "root" });
7545
+ CryptoService.ɵprov = ɵɵdefineInjectable({ factory: function CryptoService_Factory() { return new CryptoService(); }, token: CryptoService, providedIn: "root" });
7561
7546
  CryptoService.decorators = [
7562
7547
  { type: Injectable, args: [{ providedIn: 'root' },] }
7563
7548
  ];
@@ -7574,7 +7559,7 @@ class Entity {
7574
7559
  }
7575
7560
  clone(opts) {
7576
7561
  const target = new this.constructor();
7577
- this.copy(target);
7562
+ this.copy(target, opts);
7578
7563
  return target;
7579
7564
  }
7580
7565
  copy(target, opts) {
@@ -8764,7 +8749,7 @@ class LocalSettingsService {
8764
8749
  return page;
8765
8750
  }
8766
8751
  }
8767
- 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" });
8752
+ 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" });
8768
8753
  LocalSettingsService.decorators = [
8769
8754
  { type: Injectable, args: [{
8770
8755
  providedIn: 'root',
@@ -9460,7 +9445,7 @@ class NetworkService {
9460
9445
  });
9461
9446
  }
9462
9447
  }
9463
- 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" });
9448
+ 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" });
9464
9449
  NetworkService.decorators = [
9465
9450
  { type: Injectable, args: [{ providedIn: 'root' },] }
9466
9451
  ];
@@ -9471,16 +9456,16 @@ NetworkService.ctorParameters = () => [
9471
9456
  { type: CryptoService },
9472
9457
  { type: Storage },
9473
9458
  { type: LocalSettingsService },
9474
- { type: CacheService },
9459
+ { type: CacheService$1 },
9475
9460
  { type: HttpClient },
9476
9461
  { type: undefined, decorators: [{ type: Inject, args: [ENVIRONMENT,] }] },
9477
- { type: Network, decorators: [{ type: Optional }] },
9478
- { type: SplashScreen, decorators: [{ type: Optional }] },
9462
+ { type: Network$1, decorators: [{ type: Optional }] },
9463
+ { type: SplashScreen$1, decorators: [{ type: Optional }] },
9479
9464
  { type: TranslateService, decorators: [{ type: Optional }] },
9480
9465
  { type: ToastController, decorators: [{ type: Optional }] }
9481
9466
  ];
9482
9467
 
9483
- const ErrorCodes$2 = {
9468
+ const ErrorCodes = {
9484
9469
  UNKNOWN_ERROR: 0,
9485
9470
  LOAD_ACCOUNT_ERROR: 1,
9486
9471
  BAD_PASSWORD: 2,
@@ -9827,7 +9812,7 @@ class EntityStore {
9827
9812
  }
9828
9813
  catch (err) {
9829
9814
  console.error(err);
9830
- throw { code: ErrorCodes$2.ENTITY_STORAGE_MIGRATION_FAILED, message: 'ERROR.ENTITY_STORAGE_MIGRATION_FAILED', details: err };
9815
+ throw { code: ErrorCodes.ENTITY_STORAGE_MIGRATION_FAILED, message: 'ERROR.ENTITY_STORAGE_MIGRATION_FAILED', details: err };
9831
9816
  }
9832
9817
  }
9833
9818
  // Emit update event
@@ -10404,7 +10389,7 @@ class EntitiesStorage {
10404
10389
  }
10405
10390
  EntitiesStorage.TRASH_PREFIX = 'Trash#';
10406
10391
  EntitiesStorage.REMOTE_PREFIX = 'Remote#';
10407
- 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" });
10392
+ 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" });
10408
10393
  EntitiesStorage.decorators = [
10409
10394
  { type: Injectable, args: [{ providedIn: 'root' },] }
10410
10395
  ];
@@ -10501,10 +10486,10 @@ function referentialToString(obj, properties) {
10501
10486
  function referentialsToString(values, properties, separator) {
10502
10487
  return (values || []).map(v => referentialToString(v, properties)).join(separator || ', ');
10503
10488
  }
10504
- const ɵ0$2 = StatusIds.ENABLE, ɵ1 = StatusIds.DISABLE, ɵ2 = StatusIds.TEMPORARY;
10489
+ const ɵ0$8 = StatusIds.ENABLE, ɵ1 = StatusIds.DISABLE, ɵ2 = StatusIds.TEMPORARY;
10505
10490
  const StatusList = Object.freeze([
10506
10491
  {
10507
- id: ɵ0$2,
10492
+ id: ɵ0$8,
10508
10493
  icon: 'checkmark',
10509
10494
  label: 'REFERENTIAL.STATUS_ENUM.ENABLE'
10510
10495
  },
@@ -10775,7 +10760,7 @@ function accountToString(data) {
10775
10760
  (data.lastName || '')) || '';
10776
10761
  }
10777
10762
 
10778
- const uuidv4 = uuidv4Imported;
10763
+ const uuidv4$1 = uuidv4Imported;
10779
10764
  const _global = typeof global !== 'undefined' ? global : (typeof window !== 'undefined' ? window : {});
10780
10765
  const NativeWebSocket = _global.WebSocket || _global.MozWebSocket;
10781
10766
  /**
@@ -10819,7 +10804,7 @@ function createTrackerLink(opts) {
10819
10804
  // Skip if not tracked
10820
10805
  if (!context || !context.tracked)
10821
10806
  return forward(operation);
10822
- const id = context.serializationKey || uuidv4();
10807
+ const id = context.serializationKey || uuidv4$1();
10823
10808
  console.debug(`[apollo-tracker-link] Watching tracked query {${operation.operationName}#${id}}`);
10824
10809
  // Clean context, before calling JSON.stringify (remove unused attributes)
10825
10810
  const cleanContext = Object.assign(Object.assign({}, context), { optimisticResponse: null, cache: null });
@@ -11527,7 +11512,7 @@ class GraphqlService {
11527
11512
  (err.networkError && ((err.networkError.error && this.toAppError(err.networkError.error))
11528
11513
  || this.toAppError(err.networkError)
11529
11514
  || (err.networkError.error && this.createAppErrorByCode(err.networkError.error.status))
11530
- || this.createAppErrorByCode(ErrorCodes$2.UNKNOWN_NETWORK_ERROR)))
11515
+ || this.createAppErrorByCode(ErrorCodes.UNKNOWN_NETWORK_ERROR)))
11531
11516
  // If graphQL: try to convert the first error found
11532
11517
  || (err.graphQLErrors && err.graphQLErrors.length && this.toAppError(err.graphQLErrors[0]))
11533
11518
  || this.toAppError(err)
@@ -11535,7 +11520,7 @@ class GraphqlService {
11535
11520
  || (err.graphQLErrors && err.graphQLErrors[0])
11536
11521
  || err;
11537
11522
  console.error('[graphql] ' + (error && error.message || error), error.stack || '');
11538
- if (error && error.code === ErrorCodes$2.UNKNOWN_NETWORK_ERROR && err.networkError && err.networkError.message) {
11523
+ if (error && error.code === ErrorCodes.UNKNOWN_NETWORK_ERROR && err.networkError && err.networkError.message) {
11539
11524
  console.error('[graphql] original error: ' + err.networkError.message);
11540
11525
  this.onNetworkError.next(error);
11541
11526
  }
@@ -11571,7 +11556,7 @@ class GraphqlService {
11571
11556
  return 'ERROR.UNAUTHORIZED';
11572
11557
  case ServerErrorCodes.FORBIDDEN:
11573
11558
  return 'ERROR.FORBIDDEN';
11574
- case ErrorCodes$2.UNKNOWN_NETWORK_ERROR:
11559
+ case ErrorCodes.UNKNOWN_NETWORK_ERROR:
11575
11560
  return 'ERROR.UNKNOWN_NETWORK_ERROR';
11576
11561
  case ServerErrorCodes.BAD_UPDATE_DATE:
11577
11562
  return 'ERROR.BAD_UPDATE_DATE';
@@ -11608,7 +11593,7 @@ class GraphqlService {
11608
11593
  });
11609
11594
  }
11610
11595
  }
11611
- 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" });
11596
+ 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" });
11612
11597
  GraphqlService.decorators = [
11613
11598
  { type: Injectable, args: [{
11614
11599
  providedIn: 'root'
@@ -11625,7 +11610,7 @@ GraphqlService.ctorParameters = () => [
11625
11610
  { type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [APP_GRAPHQL_TYPE_POLICIES,] }] }
11626
11611
  ];
11627
11612
 
11628
- const sha256 = require('hash.js/lib/hash/sha/256');
11613
+ const sha256$1 = require('hash.js/lib/hash/sha/256');
11629
11614
  class BaseGraphqlServiceOptions {
11630
11615
  }
11631
11616
  // eslint-disable-next-line @angular-eslint/directive-class-suffix
@@ -11775,8 +11760,8 @@ class BaseGraphqlService {
11775
11760
  }
11776
11761
  /* -- protected methods -- */
11777
11762
  computeMutableWatchQueryId(opts) {
11778
- const queryName = opts.queryName || sha256().update(JSON.stringify(opts.query)).digest('hex').substring(0, 8);
11779
- const variablesKey = opts.variables && sha256().update(JSON.stringify(opts.variables)).digest('hex').substring(0, 8) || '';
11763
+ const queryName = opts.queryName || sha256$1().update(JSON.stringify(opts.query)).digest('hex').substring(0, 8);
11764
+ const variablesKey = opts.variables && sha256$1().update(JSON.stringify(opts.variables)).digest('hex').substring(0, 8) || '';
11780
11765
  return [queryName, opts.arrayFieldName, variablesKey].join('|');
11781
11766
  }
11782
11767
  findMutableWatchQueries(opts) {
@@ -11839,7 +11824,7 @@ const DEFAULT_AVATAR_IMAGE = 'assets/img/person.png';
11839
11824
  /* ------------------------------------
11840
11825
  * GraphQL queries
11841
11826
  * ------------------------------------*/
11842
- const Fragments$1 = {
11827
+ const Fragments = {
11843
11828
  account: gql `
11844
11829
  fragment AccountFragment on AccountVO {
11845
11830
  id
@@ -11872,13 +11857,13 @@ const Fragments$1 = {
11872
11857
  `
11873
11858
  };
11874
11859
  // Load account query
11875
- const LoadQuery$1 = gql `
11860
+ const LoadQuery = gql `
11876
11861
  query Account {
11877
11862
  account {
11878
11863
  ...AccountFragment
11879
11864
  }
11880
11865
  }
11881
- ${Fragments$1.account}
11866
+ ${Fragments.account}
11882
11867
  `;
11883
11868
  // Check email query
11884
11869
  const IsEmailExistsQuery = gql `
@@ -11887,13 +11872,13 @@ const IsEmailExistsQuery = gql `
11887
11872
  }
11888
11873
  `;
11889
11874
  // Save (create or update) account mutation
11890
- const SaveMutation$1 = gql `
11875
+ const SaveMutation = gql `
11891
11876
  mutation SaveAccount($account:AccountVOInput){
11892
11877
  saveAccount(account: $account){
11893
11878
  ...AccountFragment
11894
11879
  }
11895
11880
  }
11896
- ${Fragments$1.account}
11881
+ ${Fragments.account}
11897
11882
  `;
11898
11883
  // Create account mutation
11899
11884
  const CreateMutation = gql `
@@ -11902,7 +11887,7 @@ const CreateMutation = gql `
11902
11887
  ...AccountFragment
11903
11888
  }
11904
11889
  }
11905
- ${Fragments$1.account}
11890
+ ${Fragments.account}
11906
11891
  `;
11907
11892
  // Sent confirmation email
11908
11893
  const SendConfirmEmailMutation = gql `
@@ -12241,7 +12226,7 @@ class AccountService extends BaseGraphqlService {
12241
12226
  catch (error) {
12242
12227
  console.error(error);
12243
12228
  this.resetData();
12244
- throw { code: ErrorCodes$2.UNKNOWN_ERROR, message: 'ERROR.SCRYPT_ERROR' };
12229
+ throw { code: ErrorCodes.UNKNOWN_ERROR, message: 'ERROR.SCRYPT_ERROR' };
12245
12230
  }
12246
12231
  // Store pubkey+keypair
12247
12232
  this.data.pubkey = Base58.encode(keypair.publicKey);
@@ -12275,7 +12260,7 @@ class AccountService extends BaseGraphqlService {
12275
12260
  }
12276
12261
  catch (err) {
12277
12262
  // If account not found, check if email is valid
12278
- if (err && +(err.code) === ErrorCodes$2.LOAD_ACCOUNT_ERROR) {
12263
+ if (err && +(err.code) === ErrorCodes.LOAD_ACCOUNT_ERROR) {
12279
12264
  // Check email exists
12280
12265
  if (data.username.indexOf('@') !== -1) {
12281
12266
  let isEmailExists;
@@ -12287,11 +12272,11 @@ class AccountService extends BaseGraphqlService {
12287
12272
  }
12288
12273
  // Email not exists (no account)
12289
12274
  if (!isEmailExists) {
12290
- throw { code: ErrorCodes$2.UNKNOWN_ACCOUNT_EMAIL, message: 'ERROR.UNKNOWN_ACCOUNT_EMAIL' };
12275
+ throw { code: ErrorCodes.UNKNOWN_ACCOUNT_EMAIL, message: 'ERROR.UNKNOWN_ACCOUNT_EMAIL' };
12291
12276
  }
12292
12277
  }
12293
12278
  // Email exists, so error = 'bad password'
12294
- throw { code: ErrorCodes$2.BAD_PASSWORD, message: 'ERROR.BAD_PASSWORD' };
12279
+ throw { code: ErrorCodes.BAD_PASSWORD, message: 'ERROR.BAD_PASSWORD' };
12295
12280
  }
12296
12281
  throw err; // resend the first error
12297
12282
  }
@@ -12352,7 +12337,7 @@ class AccountService extends BaseGraphqlService {
12352
12337
  throw error;
12353
12338
  console.error(error);
12354
12339
  throw {
12355
- code: ErrorCodes$2.LOAD_ACCOUNT_ERROR,
12340
+ code: ErrorCodes.LOAD_ACCOUNT_ERROR,
12356
12341
  message: 'ERROR.LOAD_ACCOUNT_ERROR'
12357
12342
  };
12358
12343
  }
@@ -12564,8 +12549,8 @@ class AccountService extends BaseGraphqlService {
12564
12549
  }
12565
12550
  else {
12566
12551
  const res = yield this.graphql.query({
12567
- query: LoadQuery$1,
12568
- error: { code: ErrorCodes$2.LOAD_ACCOUNT_ERROR, message: 'ERROR.LOAD_ACCOUNT_ERROR' },
12552
+ query: LoadQuery,
12553
+ error: { code: ErrorCodes.LOAD_ACCOUNT_ERROR, message: 'ERROR.LOAD_ACCOUNT_ERROR' },
12569
12554
  fetchPolicy: opts && opts.fetchPolicy || 'no-cache' || undefined
12570
12555
  });
12571
12556
  accountJson = res && res.account;
@@ -12599,7 +12584,7 @@ class AccountService extends BaseGraphqlService {
12599
12584
  if (!isNew) {
12600
12585
  const existingAccount = yield this.loadAccount({ fetchPolicy: 'network-only' });
12601
12586
  if (!existingAccount || !existingAccount.updateDate) {
12602
- throw { code: ErrorCodes$2.ACCOUNT_NOT_EXISTS, message: 'ERROR.ACCOUNT_NOT_EXISTS' };
12587
+ throw { code: ErrorCodes.ACCOUNT_NOT_EXISTS, message: 'ERROR.ACCOUNT_NOT_EXISTS' };
12603
12588
  }
12604
12589
  account.updateDate = existingAccount.updateDate || account.updateDate;
12605
12590
  if (account.settings && existingAccount.settings) {
@@ -12612,12 +12597,12 @@ class AccountService extends BaseGraphqlService {
12612
12597
  delete json.mainProfile; // Not known on server
12613
12598
  // Execute mutation
12614
12599
  const res = yield this.graphql.mutate({
12615
- mutation: isNew ? CreateMutation : SaveMutation$1,
12600
+ mutation: isNew ? CreateMutation : SaveMutation,
12616
12601
  variables: {
12617
12602
  account: json
12618
12603
  },
12619
12604
  error: {
12620
- code: ErrorCodes$2.SAVE_ACCOUNT_ERROR,
12605
+ code: ErrorCodes.SAVE_ACCOUNT_ERROR,
12621
12606
  message: 'ERROR.SAVE_ACCOUNT_ERROR'
12622
12607
  }
12623
12608
  });
@@ -12642,7 +12627,7 @@ class AccountService extends BaseGraphqlService {
12642
12627
  return __awaiter(this, void 0, void 0, function* () {
12643
12628
  const isEmailExists = yield this.isEmailExists(email);
12644
12629
  if (isEmailExists) {
12645
- throw { code: ErrorCodes$2.EMAIL_ALREADY_REGISTERED, message: 'ERROR.EMAIL_ALREADY_REGISTERED' };
12630
+ throw { code: ErrorCodes.EMAIL_ALREADY_REGISTERED, message: 'ERROR.EMAIL_ALREADY_REGISTERED' };
12646
12631
  }
12647
12632
  });
12648
12633
  }
@@ -12678,7 +12663,7 @@ class AccountService extends BaseGraphqlService {
12678
12663
  locale
12679
12664
  },
12680
12665
  error: {
12681
- code: ErrorCodes$2.SENT_CONFIRMATION_EMAIL_FAILED,
12666
+ code: ErrorCodes.SENT_CONFIRMATION_EMAIL_FAILED,
12682
12667
  message: 'ERROR.SENT_ACCOUNT_CONFIRMATION_EMAIL_FAILED'
12683
12668
  }
12684
12669
  });
@@ -12694,7 +12679,7 @@ class AccountService extends BaseGraphqlService {
12694
12679
  code
12695
12680
  },
12696
12681
  error: {
12697
- code: ErrorCodes$2.CONFIRM_EMAIL_FAILED,
12682
+ code: ErrorCodes.CONFIRM_EMAIL_FAILED,
12698
12683
  message: 'ERROR.CONFIRM_ACCOUNT_EMAIL_FAILED'
12699
12684
  }
12700
12685
  });
@@ -12712,7 +12697,7 @@ class AccountService extends BaseGraphqlService {
12712
12697
  interval: 10
12713
12698
  },
12714
12699
  error: {
12715
- code: ErrorCodes$2.SUBSCRIBE_ACCOUNT_ERROR,
12700
+ code: ErrorCodes.SUBSCRIBE_ACCOUNT_ERROR,
12716
12701
  message: 'ERROR.ACCOUNT.SUBSCRIBE_ACCOUNT_ERROR'
12717
12702
  }
12718
12703
  }).subscribe({
@@ -12791,7 +12776,7 @@ class AccountService extends BaseGraphqlService {
12791
12776
  if (counter > 4) {
12792
12777
  if (this._debug)
12793
12778
  console.debug(`[account] Failed to authentication on pod (after ${counter} attempts)`);
12794
- throw { code: ErrorCodes$2.AUTH_SERVER_ERROR, message: 'ERROR.AUTH_SERVER_ERROR' };
12779
+ throw { code: ErrorCodes.AUTH_SERVER_ERROR, message: 'ERROR.AUTH_SERVER_ERROR' };
12795
12780
  }
12796
12781
  // Check if valid
12797
12782
  if (token) {
@@ -12801,7 +12786,7 @@ class AccountService extends BaseGraphqlService {
12801
12786
  token
12802
12787
  },
12803
12788
  error: {
12804
- code: ErrorCodes$2.UNAUTHORIZED,
12789
+ code: ErrorCodes.UNAUTHORIZED,
12805
12790
  message: 'ERROR.UNAUTHORIZED'
12806
12791
  },
12807
12792
  fetchPolicy: 'no-cache'
@@ -12817,7 +12802,7 @@ class AccountService extends BaseGraphqlService {
12817
12802
  }
12818
12803
  // Generate a new token
12819
12804
  const challengeError = {
12820
- code: ErrorCodes$2.AUTH_CHALLENGE_ERROR,
12805
+ code: ErrorCodes.AUTH_CHALLENGE_ERROR,
12821
12806
  message: 'ERROR.AUTH_CHALLENGE_ERROR'
12822
12807
  };
12823
12808
  const data = yield this.graphql.query({
@@ -12843,7 +12828,7 @@ class AccountService extends BaseGraphqlService {
12843
12828
  });
12844
12829
  }
12845
12830
  }
12846
- AccountService.ɵprov = i0.ɵɵdefineInjectable({ factory: function AccountService_Factory() { return new AccountService(i0.ɵɵinject(CryptoService), i0.ɵɵinject(NetworkService), i0.ɵɵinject(GraphqlService), i0.ɵɵinject(LocalSettingsService), i0.ɵɵinject(i3$1.Storage), i0.ɵɵinject(FileService), i0.ɵɵinject(ENVIRONMENT)); }, token: AccountService, providedIn: "root" });
12831
+ AccountService.ɵprov = ɵɵdefineInjectable({ factory: function AccountService_Factory() { return new AccountService(ɵɵinject(CryptoService), ɵɵinject(NetworkService), ɵɵinject(GraphqlService), ɵɵinject(LocalSettingsService), ɵɵinject(Storage), ɵɵinject(FileService), ɵɵinject(ENVIRONMENT)); }, token: AccountService, providedIn: "root" });
12847
12832
  AccountService.decorators = [
12848
12833
  { type: Injectable, args: [{ providedIn: 'root' },] }
12849
12834
  ];
@@ -13093,7 +13078,7 @@ const CONFIGURATION_STORAGE_KEY = 'configuration';
13093
13078
  /* ------------------------------------
13094
13079
  * GraphQL queries
13095
13080
  * ------------------------------------*/
13096
- const Fragments = {
13081
+ const Fragments$1 = {
13097
13082
  config: gql `
13098
13083
  fragment ConfigFragment on ConfigurationVO {
13099
13084
  id
@@ -13120,22 +13105,22 @@ const Fragments = {
13120
13105
  }
13121
13106
  `
13122
13107
  };
13123
- const LoadQuery = gql `
13108
+ const LoadQuery$1 = gql `
13124
13109
  query Configuration{
13125
13110
  data: configuration{
13126
13111
  ...ConfigFragment
13127
13112
  }
13128
13113
  }
13129
- ${Fragments.config}
13114
+ ${Fragments$1.config}
13130
13115
  `;
13131
13116
  // Save (create or update) account mutation
13132
- const SaveMutation = gql `
13117
+ const SaveMutation$1 = gql `
13133
13118
  mutation SaveConfiguration($data: ConfigurationVOInput){
13134
13119
  data: saveConfiguration(config: $data){
13135
13120
  ...ConfigFragment
13136
13121
  }
13137
13122
  }
13138
- ${Fragments.config}
13123
+ ${Fragments$1.config}
13139
13124
  `;
13140
13125
  const ClearCache = gql `
13141
13126
  query ClearCache($name: String) {
@@ -13223,12 +13208,12 @@ class ConfigService extends BaseGraphqlService {
13223
13208
  return __awaiter(this, void 0, void 0, function* () {
13224
13209
  const now = Date.now();
13225
13210
  console.debug('[config] Loading Pod configuration...');
13226
- const query = opts && opts.query || LoadQuery;
13211
+ const query = opts && opts.query || LoadQuery$1;
13227
13212
  const variables = opts && opts.variables || undefined;
13228
13213
  const res = yield this.graphql.query({
13229
13214
  query,
13230
13215
  variables,
13231
- error: { code: ErrorCodes$2.LOAD_CONFIG_ERROR, message: 'ERROR.LOAD_CONFIG_ERROR' },
13216
+ error: { code: ErrorCodes.LOAD_CONFIG_ERROR, message: 'ERROR.LOAD_CONFIG_ERROR' },
13232
13217
  fetchPolicy: opts && opts.fetchPolicy || undefined /*default*/
13233
13218
  });
13234
13219
  const data = res && res.data ? Configuration.fromObject(res.data) : undefined;
@@ -13253,12 +13238,12 @@ class ConfigService extends BaseGraphqlService {
13253
13238
  const json = config.asObject();
13254
13239
  // Execute mutation
13255
13240
  const res = yield this.graphql.mutate({
13256
- mutation: SaveMutation,
13241
+ mutation: SaveMutation$1,
13257
13242
  variables: {
13258
13243
  data: json
13259
13244
  },
13260
13245
  error: {
13261
- code: ErrorCodes$2.SAVE_CONFIG_ERROR,
13246
+ code: ErrorCodes.SAVE_CONFIG_ERROR,
13262
13247
  message: 'ERROR.SAVE_CONFIG_ERROR'
13263
13248
  }
13264
13249
  });
@@ -13284,7 +13269,7 @@ class ConfigService extends BaseGraphqlService {
13284
13269
  const res = yield this.graphql.query({
13285
13270
  query: CacheStatistics,
13286
13271
  variables: null,
13287
- error: { code: ErrorCodes$2.LOAD_CONFIG_ERROR, message: 'ERROR.LOAD_CONFIG_ERROR' },
13272
+ error: { code: ErrorCodes.LOAD_CONFIG_ERROR, message: 'ERROR.LOAD_CONFIG_ERROR' },
13288
13273
  fetchPolicy: 'network-only'
13289
13274
  });
13290
13275
  const data = res && res.cacheStatistics || undefined;
@@ -13300,7 +13285,7 @@ class ConfigService extends BaseGraphqlService {
13300
13285
  const res = yield this.graphql.query({
13301
13286
  query: ClearCache,
13302
13287
  variables,
13303
- error: { code: ErrorCodes$2.LOAD_CONFIG_ERROR, message: 'ERROR.LOAD_CONFIG_ERROR' },
13288
+ error: { code: ErrorCodes.LOAD_CONFIG_ERROR, message: 'ERROR.LOAD_CONFIG_ERROR' },
13304
13289
  fetchPolicy: 'network-only'
13305
13290
  });
13306
13291
  const data = res && res.clearCache || undefined;
@@ -13459,7 +13444,7 @@ class ConfigService extends BaseGraphqlService {
13459
13444
  });
13460
13445
  }
13461
13446
  }
13462
- ConfigService.ɵprov = i0.ɵɵdefineInjectable({ factory: function ConfigService_Factory() { return new ConfigService(i0.ɵɵinject(i1$4.Platform), i0.ɵɵinject(GraphqlService), i0.ɵɵinject(i3$1.Storage), i0.ɵɵinject(NetworkService), i0.ɵɵinject(FileService), i0.ɵɵinject(i1$4.ToastController), i0.ɵɵinject(i1$1.TranslateService), i0.ɵɵinject(ENVIRONMENT), i0.ɵɵinject(APP_CONFIG_OPTIONS, 8)); }, token: ConfigService, providedIn: "root" });
13447
+ 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(ENVIRONMENT), ɵɵinject(APP_CONFIG_OPTIONS, 8)); }, token: ConfigService, providedIn: "root" });
13463
13448
  ConfigService.decorators = [
13464
13449
  { type: Injectable, args: [{
13465
13450
  providedIn: 'root',
@@ -13478,7 +13463,7 @@ ConfigService.ctorParameters = () => [
13478
13463
  { type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [APP_CONFIG_OPTIONS,] }] }
13479
13464
  ];
13480
13465
 
13481
- const moment$2 = momentImported;
13466
+ const moment$4 = momentImported;
13482
13467
  class PlatformService {
13483
13468
  constructor(platform, cdkPlatform, toastController, translate, dateAdapter, entitiesStorage, settings, networkService, accountService, configService, cache, storage, audioProvider, environment, statusBar, keyboard, splashScreen, browser) {
13484
13469
  this.platform = platform;
@@ -13643,16 +13628,16 @@ class PlatformService {
13643
13628
  }
13644
13629
  // config moment lib
13645
13630
  try {
13646
- moment$2.locale(event.lang);
13631
+ moment$4.locale(event.lang);
13647
13632
  console.debug('[platform] Use locale {' + event.lang + '}');
13648
13633
  }
13649
13634
  // If error, fallback to en
13650
13635
  catch (err) {
13651
- moment$2.locale('en');
13636
+ moment$4.locale('en');
13652
13637
  console.warn('[platform] Unknown local for moment lib. Using default [en]');
13653
13638
  }
13654
13639
  // Config date adapter
13655
- this.dateAdapter.setLocale(moment$2.locale());
13640
+ this.dateAdapter.setLocale(moment$4.locale());
13656
13641
  }
13657
13642
  });
13658
13643
  this.settings.onChange.subscribe(data => {
@@ -13789,7 +13774,7 @@ class PlatformService {
13789
13774
  });
13790
13775
  }
13791
13776
  }
13792
- 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)); }, token: PlatformService, providedIn: "root" });
13777
+ 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)); }, token: PlatformService, providedIn: "root" });
13793
13778
  PlatformService.decorators = [
13794
13779
  { type: Injectable, args: [{ providedIn: 'root' },] }
13795
13780
  ];
@@ -13804,14 +13789,14 @@ PlatformService.ctorParameters = () => [
13804
13789
  { type: NetworkService },
13805
13790
  { type: AccountService },
13806
13791
  { type: ConfigService },
13807
- { type: CacheService },
13792
+ { type: CacheService$1 },
13808
13793
  { type: Storage },
13809
13794
  { type: AudioProvider },
13810
13795
  { type: undefined, decorators: [{ type: Inject, args: [ENVIRONMENT,] }] },
13811
- { type: StatusBar, decorators: [{ type: Optional }] },
13796
+ { type: StatusBar$1, decorators: [{ type: Optional }] },
13812
13797
  { type: Keyboard, decorators: [{ type: Optional }] },
13813
- { type: SplashScreen, decorators: [{ type: Optional }] },
13814
- { type: InAppBrowser, decorators: [{ type: Optional }] }
13798
+ { type: SplashScreen$1, decorators: [{ type: Optional }] },
13799
+ { type: InAppBrowser$1, decorators: [{ type: Optional }] }
13815
13800
  ];
13816
13801
 
13817
13802
  class AppHelpModal {
@@ -13875,7 +13860,7 @@ class MatStepperI18n extends MatStepperIntl {
13875
13860
  this.optionalLabel = this.translate.instant('COMMON.OPTIONAL');
13876
13861
  }
13877
13862
  }
13878
- MatStepperI18n.ɵprov = i0.ɵɵdefineInjectable({ factory: function MatStepperI18n_Factory() { return new MatStepperI18n(i0.ɵɵinject(i1$1.TranslateService)); }, token: MatStepperI18n, providedIn: "root" });
13863
+ MatStepperI18n.ɵprov = ɵɵdefineInjectable({ factory: function MatStepperI18n_Factory() { return new MatStepperI18n(ɵɵinject(TranslateService)); }, token: MatStepperI18n, providedIn: "root" });
13879
13864
  MatStepperI18n.decorators = [
13880
13865
  { type: Injectable, args: [{ providedIn: 'root' },] }
13881
13866
  ];
@@ -14783,7 +14768,7 @@ function state2side(state) {
14783
14768
  return 1;
14784
14769
  }
14785
14770
  }
14786
- const ɵ0$1 = (defaultStateSize) => [
14771
+ const ɵ0$9 = (defaultStateSize) => [
14787
14772
  Math.round((rgbArrayMap.red[0] - 50) / defaultStateSize),
14788
14773
  Math.round((255 - rgbArrayMap.red[1]) / defaultStateSize),
14789
14774
  Math.round((255 - rgbArrayMap.red[2]) / defaultStateSize)
@@ -14791,7 +14776,7 @@ const ɵ0$1 = (defaultStateSize) => [
14791
14776
  const SCALE_OPTIONS_DEFAULT = {
14792
14777
  startColor: rgbArrayMap.red,
14793
14778
  startStates: [0, 2, 3],
14794
- startStepsFn: ɵ0$1
14779
+ startStepsFn: ɵ0$9
14795
14780
  };
14796
14781
  /**
14797
14782
  * Internal function, that create a colors scale, using iteration
@@ -14883,21 +14868,21 @@ function linearColorGradient(count, options) {
14883
14868
  return result;
14884
14869
  }
14885
14870
 
14886
- class EntityTestClass$1 {
14871
+ class EntityTestClass {
14887
14872
  }
14888
- const FAKE_ENTITIES$1 = [
14873
+ const FAKE_ENTITIES = [
14889
14874
  { id: 1, label: 'AAA', name: 'Item A', description: 'Very long description A', comments: 'Very very long comments... again for A' },
14890
14875
  { id: 2, label: 'BBB', name: 'Item B', description: 'Very long description B', comments: 'Very very long comments... again for B' },
14891
14876
  { id: 3, label: 'CCC', name: 'Item C', description: 'Very long description C', comments: 'Very very long comments... again for C' }
14892
14877
  ];
14893
- function deepCopy$1(values, size) {
14878
+ function deepCopy(values, size) {
14894
14879
  if (isNil(size)) {
14895
- return (values || FAKE_ENTITIES$1).map(entity => Object.assign({}, entity));
14880
+ return (values || FAKE_ENTITIES).map(entity => Object.assign({}, entity));
14896
14881
  }
14897
14882
  let result = [];
14898
14883
  let i = 1;
14899
14884
  while (result.length < size) {
14900
- result = result.concat((values || FAKE_ENTITIES$1).map(entity => {
14885
+ result = result.concat((values || FAKE_ENTITIES).map(entity => {
14901
14886
  const name = entity.name + ' #' + i;
14902
14887
  return Object.assign(Object.assign({}, entity), { id: i++, name });
14903
14888
  }));
@@ -14907,7 +14892,7 @@ function deepCopy$1(values, size) {
14907
14892
  class AutocompleteTestPage {
14908
14893
  constructor(formBuilder) {
14909
14894
  this.formBuilder = formBuilder;
14910
- this._items = deepCopy$1(FAKE_ENTITIES$1, 100);
14895
+ this._items = deepCopy(FAKE_ENTITIES, 100);
14911
14896
  this.$items = new BehaviorSubject(undefined);
14912
14897
  this.autocompleteFields = new MatAutocompleteConfigHolder();
14913
14898
  this.memoryHide = false;
@@ -14951,7 +14936,7 @@ class AutocompleteTestPage {
14951
14936
  });
14952
14937
  // From items
14953
14938
  this.autocompleteFields.add('entity-items-large', {
14954
- items: FAKE_ENTITIES$1.slice(),
14939
+ items: FAKE_ENTITIES.slice(),
14955
14940
  attributes: ['label', 'name', 'description', 'comments'],
14956
14941
  displayWith: this.entityToString
14957
14942
  });
@@ -14961,12 +14946,12 @@ class AutocompleteTestPage {
14961
14946
  loadData() {
14962
14947
  return __awaiter(this, void 0, void 0, function* () {
14963
14948
  const data = {
14964
- entity: deepCopy$1(FAKE_ENTITIES$1)[1],
14949
+ entity: deepCopy(FAKE_ENTITIES)[1],
14965
14950
  // This item is NOT in the items list => i should be displayed anyway
14966
14951
  missingEntity: {
14967
14952
  id: -1, label: '??', name: 'Missing item'
14968
14953
  },
14969
- disableEntity: deepCopy$1(FAKE_ENTITIES$1)[2]
14954
+ disableEntity: deepCopy(FAKE_ENTITIES)[2]
14970
14955
  };
14971
14956
  this.form.setValue(data);
14972
14957
  // Load observables
@@ -15136,13 +15121,13 @@ MaterialTestingPage.ctorParameters = () => [
15136
15121
  { type: Array, decorators: [{ type: Optional }, { type: Inject, args: [APP_TESTING_PAGES,] }] }
15137
15122
  ];
15138
15123
 
15139
- const moment$1 = momentImported;
15124
+ const moment$5 = momentImported;
15140
15125
  class SwipeTestPage {
15141
15126
  constructor(formBuilder, dateFormatPipe) {
15142
15127
  this.formBuilder = formBuilder;
15143
15128
  this.dateFormatPipe = dateFormatPipe;
15144
15129
  this.$dates = new BehaviorSubject(undefined);
15145
- this._today = moment$1().startOf('day');
15130
+ this._today = moment$5().startOf('day');
15146
15131
  this.form = formBuilder.group({
15147
15132
  empty: [null, Validators.required],
15148
15133
  date: [null, Validators.compose([Validators.required, SharedValidators.validDate])],
@@ -15155,7 +15140,7 @@ class SwipeTestPage {
15155
15140
  ngOnInit() {
15156
15141
  const dates = [];
15157
15142
  for (let d = 0; d < 7; d++) {
15158
- dates[d] = moment$1(this._today).add(d - 3, 'day');
15143
+ dates[d] = moment$5(this._today).add(d - 3, 'day');
15159
15144
  }
15160
15145
  this.$dates.next(dates);
15161
15146
  this.loadData();
@@ -15756,7 +15741,7 @@ class FormArrayHelper {
15756
15741
  }
15757
15742
  }
15758
15743
 
15759
- const moment = momentImported;
15744
+ const moment$6 = momentImported;
15760
15745
  class DateTimeTestPage {
15761
15746
  constructor(platform, formBuilder, cd) {
15762
15747
  this.platform = platform;
@@ -15787,7 +15772,7 @@ class DateTimeTestPage {
15787
15772
  // Load the form with data
15788
15773
  loadData() {
15789
15774
  return __awaiter(this, void 0, void 0, function* () {
15790
- const now = moment();
15775
+ const now = moment$6();
15791
15776
  const data = {
15792
15777
  empty: toDateISOString(now.clone().add(2, 'hours')),
15793
15778
  enable: toDateISOString(now),
@@ -15847,20 +15832,20 @@ DateTimeTestPage.ctorParameters = () => [
15847
15832
  { type: ChangeDetectorRef }
15848
15833
  ];
15849
15834
 
15850
- class EntityTestClass {
15835
+ class EntityTestClass$1 {
15851
15836
  }
15852
- const FAKE_ENTITIES = [
15837
+ const FAKE_ENTITIES$1 = [
15853
15838
  { id: 1, label: 'AAA', name: 'Item A' },
15854
15839
  { id: 2, label: 'BBB', name: 'Item B' },
15855
15840
  { id: 3, label: 'CCC', name: 'Item C' }
15856
15841
  ];
15857
- function deepCopy(values) {
15858
- return (values || FAKE_ENTITIES).map(entity => Object.assign({}, entity));
15842
+ function deepCopy$1(values) {
15843
+ return (values || FAKE_ENTITIES$1).map(entity => Object.assign({}, entity));
15859
15844
  }
15860
15845
  class ChipsTestPage {
15861
15846
  constructor(formBuilder) {
15862
15847
  this.formBuilder = formBuilder;
15863
- this._items = deepCopy(FAKE_ENTITIES);
15848
+ this._items = deepCopy$1(FAKE_ENTITIES$1);
15864
15849
  this._$items = new BehaviorSubject(undefined);
15865
15850
  this.autocompleteFields = new MatAutocompleteConfigHolder();
15866
15851
  this.form = formBuilder.group({
@@ -15879,7 +15864,7 @@ class ChipsTestPage {
15879
15864
  });
15880
15865
  // From items
15881
15866
  this.autocompleteFields.add('entity-items', {
15882
- items: FAKE_ENTITIES.slice(),
15867
+ items: FAKE_ENTITIES$1.slice(),
15883
15868
  attributes: ['label', 'name'],
15884
15869
  displayWith: this.entityToString
15885
15870
  });
@@ -15900,15 +15885,15 @@ class ChipsTestPage {
15900
15885
  const data = {
15901
15886
  entity: [],
15902
15887
  // THis item is NOT in the items list => i should be displayed anyway
15903
- entityInitial: FAKE_ENTITIES.slice(1, 2),
15904
- disableEntity: FAKE_ENTITIES.slice(1, 2)
15888
+ entityInitial: FAKE_ENTITIES$1.slice(1, 2),
15889
+ disableEntity: FAKE_ENTITIES$1.slice(1, 2)
15905
15890
  };
15906
15891
  this.form.setValue(data);
15907
15892
  });
15908
15893
  }
15909
15894
  loadItems() {
15910
15895
  return __awaiter(this, void 0, void 0, function* () {
15911
- this._$items.next(deepCopy(FAKE_ENTITIES));
15896
+ this._$items.next(deepCopy$1(FAKE_ENTITIES$1));
15912
15897
  });
15913
15898
  }
15914
15899
  entityToString(item) {
@@ -15940,7 +15925,7 @@ ChipsTestPage.ctorParameters = () => [
15940
15925
  { type: FormBuilder }
15941
15926
  ];
15942
15927
 
15943
- const routes$1 = [
15928
+ const routes = [
15944
15929
  {
15945
15930
  path: '',
15946
15931
  pathMatch: 'full',
@@ -15987,7 +15972,7 @@ MaterialTestingModule.decorators = [
15987
15972
  ReactiveFormsModule,
15988
15973
  SharedMaterialModule,
15989
15974
  TranslateModule.forChild(),
15990
- RouterModule.forChild(routes$1)
15975
+ RouterModule.forChild(routes)
15991
15976
  ],
15992
15977
  declarations: [
15993
15978
  MaterialTestingPage,
@@ -16888,7 +16873,7 @@ class UserSettingsValidatorService extends AppValidatorService {
16888
16873
  });
16889
16874
  }
16890
16875
  }
16891
- UserSettingsValidatorService.ɵprov = i0.ɵɵdefineInjectable({ factory: function UserSettingsValidatorService_Factory() { return new UserSettingsValidatorService(i0.ɵɵinject(i1$6.FormBuilder)); }, token: UserSettingsValidatorService, providedIn: "root" });
16876
+ UserSettingsValidatorService.ɵprov = ɵɵdefineInjectable({ factory: function UserSettingsValidatorService_Factory() { return new UserSettingsValidatorService(ɵɵinject(FormBuilder)); }, token: UserSettingsValidatorService, providedIn: "root" });
16892
16877
  UserSettingsValidatorService.decorators = [
16893
16878
  { type: Injectable, args: [{ providedIn: 'root' },] }
16894
16879
  ];
@@ -16932,7 +16917,7 @@ class AccountValidatorService extends AppValidatorService {
16932
16917
  return validatorFns.length ? Validators.compose(validatorFns) : validatorFns.length === 1 ? validatorFns[0] : undefined;
16933
16918
  }
16934
16919
  }
16935
- AccountValidatorService.ɵprov = i0.ɵɵdefineInjectable({ factory: function AccountValidatorService_Factory() { return new AccountValidatorService(i0.ɵɵinject(i1$6.FormBuilder), i0.ɵɵinject(AccountService)); }, token: AccountValidatorService, providedIn: "root" });
16920
+ AccountValidatorService.ɵprov = ɵɵdefineInjectable({ factory: function AccountValidatorService_Factory() { return new AccountValidatorService(ɵɵinject(FormBuilder), ɵɵinject(AccountService)); }, token: AccountValidatorService, providedIn: "root" });
16936
16921
  AccountValidatorService.decorators = [
16937
16922
  { type: Injectable, args: [{ providedIn: 'root' },] }
16938
16923
  ];
@@ -17461,7 +17446,7 @@ class LocalSettingsValidatorService extends AppValidatorService {
17461
17446
  });
17462
17447
  }
17463
17448
  }
17464
- LocalSettingsValidatorService.ɵprov = i0.ɵɵdefineInjectable({ factory: function LocalSettingsValidatorService_Factory() { return new LocalSettingsValidatorService(i0.ɵɵinject(i1$6.FormBuilder), i0.ɵɵinject(NetworkService)); }, token: LocalSettingsValidatorService, providedIn: "root" });
17449
+ LocalSettingsValidatorService.ɵprov = ɵɵdefineInjectable({ factory: function LocalSettingsValidatorService_Factory() { return new LocalSettingsValidatorService(ɵɵinject(FormBuilder), ɵɵinject(NetworkService)); }, token: LocalSettingsValidatorService, providedIn: "root" });
17465
17450
  LocalSettingsValidatorService.decorators = [
17466
17451
  { type: Injectable, args: [{ providedIn: 'root' },] }
17467
17452
  ];
@@ -18069,7 +18054,7 @@ class IsOnFieldModePipe {
18069
18054
  return value === 'FIELD';
18070
18055
  }
18071
18056
  }
18072
- IsOnFieldModePipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function IsOnFieldModePipe_Factory() { return new IsOnFieldModePipe(); }, token: IsOnFieldModePipe, providedIn: "root" });
18057
+ IsOnFieldModePipe.ɵprov = ɵɵdefineInjectable({ factory: function IsOnFieldModePipe_Factory() { return new IsOnFieldModePipe(); }, token: IsOnFieldModePipe, providedIn: "root" });
18073
18058
  IsOnFieldModePipe.decorators = [
18074
18059
  { type: Pipe, args: [{
18075
18060
  name: 'isOnField'
@@ -18081,7 +18066,7 @@ class IsNotOnFieldModePipe {
18081
18066
  return value !== 'FIELD';
18082
18067
  }
18083
18068
  }
18084
- IsNotOnFieldModePipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function IsNotOnFieldModePipe_Factory() { return new IsNotOnFieldModePipe(); }, token: IsNotOnFieldModePipe, providedIn: "root" });
18069
+ IsNotOnFieldModePipe.ɵprov = ɵɵdefineInjectable({ factory: function IsNotOnFieldModePipe_Factory() { return new IsNotOnFieldModePipe(); }, token: IsNotOnFieldModePipe, providedIn: "root" });
18085
18070
  IsNotOnFieldModePipe.decorators = [
18086
18071
  { type: Pipe, args: [{
18087
18072
  name: 'isNotOnField'
@@ -18096,7 +18081,7 @@ class PersonToStringPipe {
18096
18081
  return PersonUtils.personToString(value);
18097
18082
  }
18098
18083
  }
18099
- PersonToStringPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function PersonToStringPipe_Factory() { return new PersonToStringPipe(); }, token: PersonToStringPipe, providedIn: "root" });
18084
+ PersonToStringPipe.ɵprov = ɵɵdefineInjectable({ factory: function PersonToStringPipe_Factory() { return new PersonToStringPipe(); }, token: PersonToStringPipe, providedIn: "root" });
18100
18085
  PersonToStringPipe.decorators = [
18101
18086
  { type: Pipe, args: [{
18102
18087
  name: 'personToString'
@@ -18313,7 +18298,7 @@ class IsLoginAccountPipe {
18313
18298
  return value && value.pubkey && true;
18314
18299
  }
18315
18300
  }
18316
- IsLoginAccountPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function IsLoginAccountPipe_Factory() { return new IsLoginAccountPipe(); }, token: IsLoginAccountPipe, providedIn: "root" });
18301
+ IsLoginAccountPipe.ɵprov = ɵɵdefineInjectable({ factory: function IsLoginAccountPipe_Factory() { return new IsLoginAccountPipe(); }, token: IsLoginAccountPipe, providedIn: "root" });
18317
18302
  IsLoginAccountPipe.decorators = [
18318
18303
  { type: Pipe, args: [{
18319
18304
  name: 'isLogin'
@@ -18325,7 +18310,7 @@ class AccountToStringPipe {
18325
18310
  return accountToString(value);
18326
18311
  }
18327
18312
  }
18328
- AccountToStringPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function AccountToStringPipe_Factory() { return new AccountToStringPipe(); }, token: AccountToStringPipe, providedIn: "root" });
18313
+ AccountToStringPipe.ɵprov = ɵɵdefineInjectable({ factory: function AccountToStringPipe_Factory() { return new AccountToStringPipe(); }, token: AccountToStringPipe, providedIn: "root" });
18329
18314
  AccountToStringPipe.decorators = [
18330
18315
  { type: Pipe, args: [{
18331
18316
  name: 'accountToString'
@@ -18340,7 +18325,7 @@ class DepartmentToStringPipe {
18340
18325
  return departmentToString(value);
18341
18326
  }
18342
18327
  }
18343
- DepartmentToStringPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function DepartmentToStringPipe_Factory() { return new DepartmentToStringPipe(); }, token: DepartmentToStringPipe, providedIn: "root" });
18328
+ DepartmentToStringPipe.ɵprov = ɵɵdefineInjectable({ factory: function DepartmentToStringPipe_Factory() { return new DepartmentToStringPipe(); }, token: DepartmentToStringPipe, providedIn: "root" });
18344
18329
  DepartmentToStringPipe.decorators = [
18345
18330
  { type: Pipe, args: [{
18346
18331
  name: 'departmentToString'
@@ -18366,7 +18351,7 @@ class MenuService {
18366
18351
  this._visibleSubject.next(value);
18367
18352
  }
18368
18353
  }
18369
- MenuService.ɵprov = i0.ɵɵdefineInjectable({ factory: function MenuService_Factory() { return new MenuService(); }, token: MenuService, providedIn: "root" });
18354
+ MenuService.ɵprov = ɵɵdefineInjectable({ factory: function MenuService_Factory() { return new MenuService(); }, token: MenuService, providedIn: "root" });
18370
18355
  MenuService.decorators = [
18371
18356
  { type: Injectable, args: [{
18372
18357
  providedIn: 'root'
@@ -18860,7 +18845,7 @@ class AuthGuardService {
18860
18845
  }));
18861
18846
  }
18862
18847
  }
18863
- 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" });
18848
+ AuthGuardService.ɵprov = ɵɵdefineInjectable({ factory: function AuthGuardService_Factory() { return new AuthGuardService(ɵɵinject(AccountService), ɵɵinject(ModalController), ɵɵinject(Router), ɵɵinject(ENVIRONMENT)); }, token: AuthGuardService, providedIn: "root" });
18864
18849
  AuthGuardService.decorators = [
18865
18850
  { type: Injectable, args: [{ providedIn: 'root' },] }
18866
18851
  ];
@@ -18908,7 +18893,7 @@ class BaseEntityService extends BaseGraphqlService {
18908
18893
  query,
18909
18894
  variables: { id },
18910
18895
  fetchPolicy: opts && opts.fetchPolicy || undefined,
18911
- error: { code: ErrorCodes$2.LOAD_DATA_ERROR, message: 'REFERENTIAL.ERROR.LOAD_DATA_ERROR' }
18896
+ error: { code: ErrorCodes.LOAD_DATA_ERROR, message: 'REFERENTIAL.ERROR.LOAD_DATA_ERROR' }
18912
18897
  })
18913
18898
  .pipe(map(({ data }) => (!opts || opts.toEntity !== false)
18914
18899
  ? (data && this.fromObject(data))
@@ -18923,7 +18908,7 @@ class BaseEntityService extends BaseGraphqlService {
18923
18908
  query,
18924
18909
  variables: { id },
18925
18910
  fetchPolicy: opts && opts.fetchPolicy || undefined,
18926
- error: { code: ErrorCodes$2.LOAD_DATA_ERROR, message: 'REFERENTIAL.ERROR.LOAD_DATA_ERROR' }
18911
+ error: { code: ErrorCodes.LOAD_DATA_ERROR, message: 'REFERENTIAL.ERROR.LOAD_DATA_ERROR' }
18927
18912
  });
18928
18913
  // Convert to entity
18929
18914
  return (!opts || opts.toEntity !== false)
@@ -18954,7 +18939,7 @@ class BaseEntityService extends BaseGraphqlService {
18954
18939
  totalFieldName: withTotal ? 'total' : undefined,
18955
18940
  insertFilterFn: filter && filter.asFilterFn(),
18956
18941
  variables,
18957
- error: { code: ErrorCodes$2.LOAD_DATA_ERROR, message: 'REFERENTIAL.ERROR.LOAD_DATA_ERROR' },
18942
+ error: { code: ErrorCodes.LOAD_DATA_ERROR, message: 'REFERENTIAL.ERROR.LOAD_DATA_ERROR' },
18958
18943
  fetchPolicy: opts && opts.fetchPolicy || undefined
18959
18944
  })
18960
18945
  .pipe(map(({ data, total }) => {
@@ -18990,7 +18975,7 @@ class BaseEntityService extends BaseGraphqlService {
18990
18975
  const { data, total } = yield this.graphql.query({
18991
18976
  query,
18992
18977
  variables,
18993
- error: { code: ErrorCodes$2.LOAD_DATA_ERROR, message: 'ERROR.LOAD_DATA_ERROR' },
18978
+ error: { code: ErrorCodes.LOAD_DATA_ERROR, message: 'ERROR.LOAD_DATA_ERROR' },
18994
18979
  fetchPolicy: opts && opts.fetchPolicy || 'network-only'
18995
18980
  });
18996
18981
  const entities = (!opts || opts.toEntity !== false) ?
@@ -19029,7 +19014,7 @@ class BaseEntityService extends BaseGraphqlService {
19029
19014
  variables: {
19030
19015
  filter: filter && filter.asPodObject()
19031
19016
  },
19032
- error: { code: ErrorCodes$2.LOAD_DATA_ERROR, message: 'ERROR.COUNT_DATA_ERROR' },
19017
+ error: { code: ErrorCodes.LOAD_DATA_ERROR, message: 'ERROR.COUNT_DATA_ERROR' },
19033
19018
  fetchPolicy: opts && opts.fetchPolicy || 'network-only'
19034
19019
  });
19035
19020
  return res.total;
@@ -19062,7 +19047,7 @@ class BaseEntityService extends BaseGraphqlService {
19062
19047
  variables: {
19063
19048
  data: json
19064
19049
  },
19065
- error: { code: ErrorCodes$2.SAVE_DATA_ERROR, message: 'ERROR.SAVE_DATA_ERROR' },
19050
+ error: { code: ErrorCodes.SAVE_DATA_ERROR, message: 'ERROR.SAVE_DATA_ERROR' },
19066
19051
  update: (proxy, { data }) => {
19067
19052
  const savedEntities = data && data.data;
19068
19053
  if (savedEntities) {
@@ -19118,7 +19103,7 @@ class BaseEntityService extends BaseGraphqlService {
19118
19103
  variables: {
19119
19104
  data: json
19120
19105
  },
19121
- error: { code: ErrorCodes$2.SAVE_DATA_ERROR, message: 'ERROR.SAVE_DATA_ERROR' },
19106
+ error: { code: ErrorCodes.SAVE_DATA_ERROR, message: 'ERROR.SAVE_DATA_ERROR' },
19122
19107
  update: (cache, { data }) => {
19123
19108
  // Update entity
19124
19109
  const savedEntity = data && data.data;
@@ -19166,7 +19151,7 @@ class BaseEntityService extends BaseGraphqlService {
19166
19151
  refetchQueries: this.getRefetchQueriesForMutation(opts),
19167
19152
  awaitRefetchQueries: opts && opts.awaitRefetchQueries,
19168
19153
  variables: { ids },
19169
- error: { code: ErrorCodes$2.DELETE_DATA_ERROR, message: 'ERROR.DELETE_DATA_ERROR' },
19154
+ error: { code: ErrorCodes.DELETE_DATA_ERROR, message: 'ERROR.DELETE_DATA_ERROR' },
19170
19155
  update: (cache, res) => {
19171
19156
  // Remove from cache
19172
19157
  if (this.watchQueriesUpdatePolicy === 'update-cache') {
@@ -19207,7 +19192,7 @@ class BaseEntityService extends BaseGraphqlService {
19207
19192
  refetchQueries: this.getRefetchQueriesForMutation(opts),
19208
19193
  awaitRefetchQueries: opts && opts.awaitRefetchQueries,
19209
19194
  variables: { id },
19210
- error: { code: ErrorCodes$2.DELETE_DATA_ERROR, message: 'ERROR.DELETE_DATA_ERROR' },
19195
+ error: { code: ErrorCodes.DELETE_DATA_ERROR, message: 'ERROR.DELETE_DATA_ERROR' },
19211
19196
  update: (proxy, res) => {
19212
19197
  // Remove from cache
19213
19198
  if (this.watchQueriesUpdatePolicy === 'update-cache') {
@@ -19240,7 +19225,7 @@ class BaseEntityService extends BaseGraphqlService {
19240
19225
  query: opts && opts.query || this.subscriptions.listenChanges,
19241
19226
  variables,
19242
19227
  error: {
19243
- code: ErrorCodes$2.SUBSCRIBE_DATA_ERROR,
19228
+ code: ErrorCodes.SUBSCRIBE_DATA_ERROR,
19244
19229
  message: 'ERROR.SUBSCRIBE_DATA_ERROR'
19245
19230
  }
19246
19231
  })
@@ -19402,7 +19387,7 @@ class EntitiesTableDataSource extends TableDataSource {
19402
19387
  if (this._debug)
19403
19388
  invalidRows.forEach(this.logRowErrors);
19404
19389
  // Stop with an error
19405
- throw { code: ErrorCodes$2.TABLE_INVALID_ROW_ERROR, message: 'ERROR.TABLE_INVALID_ROW_ERROR' };
19390
+ throw { code: ErrorCodes.TABLE_INVALID_ROW_ERROR, message: 'ERROR.TABLE_INVALID_ROW_ERROR' };
19406
19391
  }
19407
19392
  this._editingRowCount = 0;
19408
19393
  let data;
@@ -20219,13 +20204,13 @@ class AppTable {
20219
20204
  return __awaiter(this, void 0, void 0, function* () {
20220
20205
  opts = Object.assign({ keepEditing: this.keepEditedRowOnSave }, opts);
20221
20206
  if (this.readOnly) {
20222
- throw { code: ErrorCodes$2.TABLE_READ_ONLY, message: 'ERROR.TABLE_READ_ONLY' };
20207
+ throw { code: ErrorCodes.TABLE_READ_ONLY, message: 'ERROR.TABLE_READ_ONLY' };
20223
20208
  }
20224
20209
  this.resetError();
20225
20210
  // Keep edited row id (should be done BEFORE confirmEditCreate() )
20226
20211
  this.previouslySavedEditedRowId = opts.keepEditing && ((_a = this.editedRow) === null || _a === void 0 ? void 0 : _a.editing) ? this.editedRow.id : undefined;
20227
20212
  if (!this.confirmEditCreate()) {
20228
- throw { code: ErrorCodes$2.TABLE_INVALID_ROW_ERROR, message: 'ERROR.TABLE_INVALID_ROW_ERROR' };
20213
+ throw { code: ErrorCodes.TABLE_INVALID_ROW_ERROR, message: 'ERROR.TABLE_INVALID_ROW_ERROR' };
20229
20214
  }
20230
20215
  try {
20231
20216
  // Mark as saving
@@ -20350,7 +20335,7 @@ class AppTable {
20350
20335
  deleteRows(event, rows, opts) {
20351
20336
  return __awaiter(this, void 0, void 0, function* () {
20352
20337
  if (this.readOnly) {
20353
- throw { code: ErrorCodes$2.TABLE_READ_ONLY, message: 'ERROR.TABLE_READ_ONLY' };
20338
+ throw { code: ErrorCodes.TABLE_READ_ONLY, message: 'ERROR.TABLE_READ_ONLY' };
20354
20339
  }
20355
20340
  if (event === null || event === void 0 ? void 0 : event.defaultPrevented)
20356
20341
  return 0; // SKip
@@ -21749,7 +21734,7 @@ class AppEntityEditor extends AppTabEditor {
21749
21734
  try {
21750
21735
  const data = yield this.dataService.load(id, opts);
21751
21736
  if (!data)
21752
- throw { code: ErrorCodes$2.DATA_NOT_FOUND_ERROR, message: 'ERROR.DATA_NO_FOUND' };
21737
+ throw { code: ErrorCodes.DATA_NOT_FOUND_ERROR, message: 'ERROR.DATA_NO_FOUND' };
21753
21738
  this._usageMode = this.computeUsageMode(data);
21754
21739
  yield this.onEntityLoaded(data, opts);
21755
21740
  yield this.updateView(data, opts);
@@ -22650,7 +22635,7 @@ class UserEventService extends BaseGraphqlService {
22650
22635
  EntityUtils.copyIdAndUpdateDate(source, target);
22651
22636
  }
22652
22637
  }
22653
- 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" });
22638
+ 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" });
22654
22639
  UserEventService.decorators = [
22655
22640
  { type: Injectable, args: [{ providedIn: 'root' },] }
22656
22641
  ];
@@ -23032,7 +23017,7 @@ class PersonService extends BaseEntityService {
23032
23017
  return target;
23033
23018
  }
23034
23019
  }
23035
- 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" });
23020
+ PersonService.ɵprov = ɵɵdefineInjectable({ factory: function PersonService_Factory() { return new PersonService(ɵɵinject(GraphqlService), ɵɵinject(PlatformService), ɵɵinject(NetworkService), ɵɵinject(EntitiesStorage)); }, token: PersonService, providedIn: "root" });
23036
23021
  PersonService.decorators = [
23037
23022
  { type: Injectable, args: [{ providedIn: 'root' },] }
23038
23023
  ];
@@ -23063,7 +23048,7 @@ class PersonValidatorService {
23063
23048
  return this.formBuilder.group(formConfig);
23064
23049
  }
23065
23050
  }
23066
- PersonValidatorService.ɵprov = i0.ɵɵdefineInjectable({ factory: function PersonValidatorService_Factory() { return new PersonValidatorService(i0.ɵɵinject(i1$6.FormBuilder), i0.ɵɵinject(AccountValidatorService)); }, token: PersonValidatorService, providedIn: "root" });
23051
+ PersonValidatorService.ɵprov = ɵɵdefineInjectable({ factory: function PersonValidatorService_Factory() { return new PersonValidatorService(ɵɵinject(FormBuilder), ɵɵinject(AccountValidatorService)); }, token: PersonValidatorService, providedIn: "root" });
23067
23052
  PersonValidatorService.decorators = [
23068
23053
  { type: Injectable, args: [{ providedIn: 'root' },] }
23069
23054
  ];
@@ -23219,7 +23204,7 @@ UsersPage.decorators = [
23219
23204
  ],
23220
23205
  animations: [slideUpDownAnimation],
23221
23206
  changeDetection: ChangeDetectionStrategy.OnPush,
23222
- styles: [".mat-expansion-panel{margin-bottom:5px}.mat-expansion-panel .form-container mat-form-field{width:100%}.mat-expansion-panel mat-action-row ion-label{line-height:36px}.table-container{height:calc(100%)}.mat-table .mat-cell .avatar{height:40px;width:40px;margin:2px 0 0;background-size:cover;background-repeat:no-repeat;background-position:50%}.mat-table .mat-column-avatar{min-width:50px}.mat-table .mat-column-profile{min-width:110px}.mat-table .mat-column-status{min-width:130px}.mat-table .mat-column-department{min-width:150px}"]
23207
+ styles: [".mat-expansion-panel{margin-bottom:5px}.mat-expansion-panel .form-container mat-form-field{width:100%}.mat-expansion-panel mat-action-row ion-label{line-height:36px}.table-container{height:100%}.mat-table .mat-cell .avatar{height:40px;width:40px;margin:2px 0 0;background-size:cover;background-repeat:no-repeat;background-position:50%}.mat-table .mat-column-avatar{min-width:50px}.mat-table .mat-column-profile{min-width:110px}.mat-table .mat-column-status{min-width:130px}.mat-table .mat-column-department{min-width:150px}"]
23223
23208
  },] }
23224
23209
  ];
23225
23210
  UsersPage.ctorParameters = () => [
@@ -23267,16 +23252,16 @@ AdminModule.decorators = [
23267
23252
  ];
23268
23253
  AdminModule.ctorParameters = () => [];
23269
23254
 
23270
- const ɵ0 = {
23255
+ const ɵ0$a = {
23271
23256
  profile: 'ADMIN'
23272
23257
  };
23273
- const routes = [
23258
+ const routes$1 = [
23274
23259
  {
23275
23260
  path: 'users',
23276
23261
  pathMatch: 'full',
23277
23262
  component: UsersPage,
23278
23263
  canActivate: [AuthGuardService],
23279
- data: ɵ0
23264
+ data: ɵ0$a
23280
23265
  }
23281
23266
  ];
23282
23267
  class AdminRoutingModule {
@@ -23286,13 +23271,13 @@ AdminRoutingModule.decorators = [
23286
23271
  imports: [
23287
23272
  SharedRoutingModule,
23288
23273
  AdminModule,
23289
- RouterModule.forChild(routes)
23274
+ RouterModule.forChild(routes$1)
23290
23275
  ],
23291
23276
  exports: [RouterModule]
23292
23277
  },] }
23293
23278
  ];
23294
23279
 
23295
- const ErrorCodes = {
23280
+ const ErrorCodes$2 = {
23296
23281
  LOAD_PERSONS_ERROR: 100,
23297
23282
  SAVE_PERSONS_ERROR: 101,
23298
23283
  DELETE_PERSONS_ERROR: 102,
@@ -23304,5 +23289,5 @@ const ErrorCodes = {
23304
23289
  * Generated bundle index. Do not edit.
23305
23290
  */
23306
23291
 
23307
- export { APP_ABOUT_DEVELOPERS, APP_ABOUT_PARTNERS, APP_CONFIG_OPTIONS, APP_GRAPHQL_TYPE_POLICIES, APP_HOME_BUTTONS, APP_LOCALES, APP_LOCAL_SETTINGS, APP_LOCAL_SETTINGS_OPTIONS, APP_LOCAL_STORAGE_TYPE_POLICIES, APP_MENU_ITEMS, APP_TESTING_PAGES, AboutModal, Account, AccountPage, AccountService, AccountToStringPipe, ActionsColumnComponent, AdminModule, AdminRoutingModule, Alerts, AnimationState, AppEditorOptions, AppEntityEditor, AppForm, AppFormField, AppFormHolder, AppFormUtils, AppGestureConfig, AppGraphQLModule, AppHelpModal, AppInMemoryTable, AppInstallUpgradeCard, AppListForm, AppLoadingSpinner, AppMenuModule, AppNullForm, AppPropertiesForm, AppTabEditor, AppTabEditorOptions, AppTable, AppTableDataSourceOptions, AppTableUtils, AppValidatorService, AppendToInputDirective, ArrayFilterPipe, ArrayFirstPipe, ArrayIncludesPipe, ArrayLengthPipe, ArrayPluckPipe, AudioProvider, AuthForm, AuthGuardService, AuthModal, AutocompleteTestPage, AutofocusDirective, Base58, BaseEntityService, BaseGraphqlService, BaseGraphqlServiceOptions, BaseReferential, Beans, CORE_CONFIG_OPTIONS, CellValueChangeListener, ChipsTestPage, Color, ColorScale, ConfigService, Configuration, CoreModule, CryptoService, DATE_ISO_PATTERN, DATE_UNIX_MS_TIMESTAMP, DATE_UNIX_TIMESTAMP, DEFAULT_PAGE_SIZE, DEFAULT_PAGE_SIZE_OPTIONS, DEFAULT_PLACEHOLDER_CHAR, DEFAULT_REQUIRED_COLUMNS, DateDiffDurationPipe, DateFormatPipe, DateFromNowPipe, DateTimeTestPage, DateUtils, Department, DepartmentToStringPipe, DurationPipe, ENTITIES_STORAGE_KEY_PREFIX, ENVIRONMENT, EmptyArrayPipe, EntitiesService, EntitiesStorage, EntitiesTableDataSource, Entity, EntityClass, EntityClasses, EntityFilter, EntityFilterUtils, EntityMetadataComponent, EntityStore, EntityUtils, Environment, ErrorCodes, EvenPipe, FileService, FileSizePipe, FormArrayHelper, FormButtonsBarComponent, FormButtonsBarToken, FormFieldValuesHolder, Fragments, GraphqlService, HAMMER_PRESS_TIME, HAMMER_TAP_TIME, HighlightPipe, HomePage, Hotkeys, HotkeysDialogComponent, InMemoryEntitiesService, IsLoginAccountPipe, IsNilOrBlankPipe, IsNotNilOrBlankPipe, IsNotOnFieldModePipe, IsOnFieldModePipe, JobUtils, KEYBOARD_HIDE_DELAY_MS, LAT_LONG_DEFAULT_MAX_DECIMALS, LAT_LONG_PATTERNS, LatLongFormatPipe, LatLongTestPage, LatitudeFormatPipe, LocalSettingsService, LongitudeFormatPipe, MINIFY_ENTITY_FOR_LOCAL_STORAGE, MINIFY_ENTITY_FOR_POD, MapGetPipe, MapKeysPipe, MapValuesPipe, MatAutocompleteConfigHolder, MatAutocompleteField, MatBooleanField, MatChipsField, MatDate, MatDateShort, MatDateTime, MatDuration, MatLatLongField, MatNumpadComponent, MatNumpadContainerComponent, MatNumpadContent, MatPaginatorI18n, MatStepperI18n, MatSwipeField, MaterialChipsModule, MaterialTestingModule, MaterialTestingPage, MathAbsPipe, MenuComponent, MenuItems, MenuService, ModalToolbarComponent, NetworkService, NgInitDirective, NotEmptyArrayPipe, NumberFormatPipe, NumpadDirective, OddPipe, PRIORITIZED_AUTHORITIES, PUBKEY_REGEXP, Peer, Person, PersonFilter, PersonFragments, PersonService, PersonToStringPipe, PersonUtils, PersonValidatorService, PlatformService, ProgressBarService, ProgressInterceptor, PropertyGetPipe, RESERVED_END_COLUMNS, RESERVED_START_COLUMNS, Referential, ReferentialRef, ReferentialUtils, RegisterConfirmPage, SETTINGS_DISPLAY_COLUMNS, SETTINGS_FILTER, SETTINGS_PAGE_SIZE, SETTINGS_SORTED_COLUMN, SETTINGS_STORAGE_KEY, SETTINGS_TRANSIENT_PROPERTIES, SPACE_PLACEHOLDER_CHAR, SelectPeerModal, SettingsPage, SharedDirectivesModule, SharedFormArrayValidators, SharedFormGroupValidators, SharedHotkeysModule, SharedMatAutocompleteModule, SharedMatBooleanModule, SharedMatDateTimeModule, SharedMatDurationModule, SharedMatLatLongModule, SharedMatNumpadModule, SharedMatSwipeModule, SharedMaterialModule, SharedModule, SharedPipesModule, SharedRoutingModule, SharedTestingModule, SharedValidators, SocialModule, Software, StatusIds, StatusList, StrLengthPipe, SwipeTestPage, TableSelectColumnsComponent, ToStringPipe, Toasts, ToolbarComponent, ToolbarToken, TranslatablePipe, TranslateContextPipe, TranslateContextService, UserEvent, UserEventFilter, UserEventService, UserEventTypes, UserEventsTable, UserSettings, UsersPage, accountToString, addValueInArray, arrayDistinct, arrayGroupBy, arraySize, asInputElement, canHaveFocus, capitalizeFirstLetter, chainPromises, changeCaseToUnderscore, clearValueInArray, copyEntity2Form, copyForm2Entity, createPromiseEvent, createPromiseEventEmitter, departmentToString, departmentsToString, disableControls, emitPromiseEvent, entityToString, equalsOrNil, fadeInAnimation, fadeInOutAnimation, filterFalse, filterNotNil, filterNumberInput, filterTrue, firstArrayValue, firstFalsePromise, firstNotNil, firstNotNilPromise, 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, isArray, isControlHasInput, isEmptyArray, isInputElement, isInstanceOf, isInt, isNil, isNilOrBlank, isNilOrNaN, isNotEmptyArray, isNotNil, isNotNilOrBlank, isNotNilOrNaN, isNotNilString, isNumber, isNumberRange, joinProperties, joinPropertiesPath, logFormErrors, markAsTouched, markAsUntouched, markControlAsTouched, markFormGroupAsTouched, matchUpperCase, mixHex, moveInputCaretToSeparator, noTrailingSlash, notNilOrDefault, nullIfUndefined, parseLatitudeOrLongitude, propertiesPathComparator, propertyComparator, propertyPathComparator, referentialToString, referentialsToString, remove, removeAll, removeDiacritics, removeDuplicatesFromArray, removeEnd, removeValueInArray, replaceAll, resetCalculatedValue, resizeArray, rgbArrayToHex, rgbToHex, round, scrollFactory, selectInputContent, selectInputRange, setCalculatedValue, setTabIndex, sleep, slideInOutAnimation, slideUpDownAnimation, sort, splitById, splitByProperty, startsWithUpperCase, suggestFromArray, suggestFromStringArray, tabindexComparator, toBoolean, toDateISOString, toDuration, toFloat, toInt, toNotNil, toNumber, trimEmptyToNull, uncapitalizeFirstLetter, updateValueAndValidity, waitWhilePending, ɵ0$5 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 };
23292
+ export { APP_ABOUT_DEVELOPERS, APP_ABOUT_PARTNERS, APP_CONFIG_OPTIONS, APP_GRAPHQL_TYPE_POLICIES, APP_HOME_BUTTONS, APP_LOCALES, APP_LOCAL_SETTINGS, APP_LOCAL_SETTINGS_OPTIONS, APP_LOCAL_STORAGE_TYPE_POLICIES, APP_MENU_ITEMS, APP_TESTING_PAGES, AboutModal, Account, AccountPage, AccountService, AccountToStringPipe, ActionsColumnComponent, AdminModule, AdminRoutingModule, Alerts, AnimationState, AppEditorOptions, AppEntityEditor, AppForm, AppFormField, AppFormHolder, AppFormUtils, AppGestureConfig, AppGraphQLModule, AppHelpModal, AppInMemoryTable, AppInstallUpgradeCard, AppListForm, AppLoadingSpinner, AppMenuModule, AppNullForm, AppPropertiesForm, AppTabEditor, AppTabEditorOptions, AppTable, AppTableDataSourceOptions, AppTableUtils, AppValidatorService, AppendToInputDirective, ArrayFilterPipe, ArrayFirstPipe, ArrayIncludesPipe, ArrayLengthPipe, ArrayPluckPipe, AudioProvider, AuthForm, AuthGuardService, AuthModal, AutocompleteTestPage, AutofocusDirective, Base58, BaseEntityService, BaseGraphqlService, BaseGraphqlServiceOptions, BaseReferential, Beans, CORE_CONFIG_OPTIONS, CellValueChangeListener, ChipsTestPage, Color, ColorScale, ConfigService, Configuration, CoreModule, CryptoService, DATE_ISO_PATTERN, DATE_UNIX_MS_TIMESTAMP, DATE_UNIX_TIMESTAMP, DEFAULT_PAGE_SIZE, DEFAULT_PAGE_SIZE_OPTIONS, DEFAULT_PLACEHOLDER_CHAR, DEFAULT_REQUIRED_COLUMNS, DateDiffDurationPipe, DateFormatPipe, DateFromNowPipe, DateTimeTestPage, DateUtils, Department, DepartmentToStringPipe, DurationPipe, ENTITIES_STORAGE_KEY_PREFIX, ENVIRONMENT, EmptyArrayPipe, EntitiesService, EntitiesStorage, EntitiesTableDataSource, Entity, EntityClass, EntityClasses, EntityFilter, EntityFilterUtils, EntityMetadataComponent, EntityStore, EntityUtils, Environment, ErrorCodes$2 as ErrorCodes, EvenPipe, FileService, FileSizePipe, FormArrayHelper, FormButtonsBarComponent, FormButtonsBarToken, FormFieldValuesHolder, 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, MatBooleanField, MatChipsField, MatDate, MatDateShort, MatDateTime, MatDuration, MatLatLongField, MatNumpadComponent, MatNumpadContainerComponent, MatNumpadContent, MatPaginatorI18n, MatStepperI18n, MatSwipeField, MaterialChipsModule, MaterialTestingModule, MaterialTestingPage, MathAbsPipe, MenuComponent, MenuItems, MenuService, ModalToolbarComponent, NetworkService, NgInitDirective, NotEmptyArrayPipe, NumberFormatPipe, NumpadDirective, OddPipe, PRIORITIZED_AUTHORITIES, PUBKEY_REGEXP, Peer, Person, PersonFilter, PersonFragments, PersonService, PersonToStringPipe, PersonUtils, PersonValidatorService, PlatformService, ProgressBarService, ProgressInterceptor, PropertyGetPipe, RESERVED_END_COLUMNS, RESERVED_START_COLUMNS, Referential, ReferentialRef, ReferentialUtils, RegisterConfirmPage, SETTINGS_DISPLAY_COLUMNS, SETTINGS_FILTER, SETTINGS_PAGE_SIZE, SETTINGS_SORTED_COLUMN, SETTINGS_STORAGE_KEY, SETTINGS_TRANSIENT_PROPERTIES, SPACE_PLACEHOLDER_CHAR, SelectPeerModal, SettingsPage, SharedDirectivesModule, SharedFormArrayValidators, SharedFormGroupValidators, SharedHotkeysModule, SharedMatAutocompleteModule, SharedMatBooleanModule, SharedMatDateTimeModule, SharedMatDurationModule, SharedMatLatLongModule, SharedMatNumpadModule, SharedMatSwipeModule, SharedMaterialModule, SharedModule, SharedPipesModule, SharedRoutingModule, SharedTestingModule, SharedValidators, SocialModule, Software, StatusIds, StatusList, StrLengthPipe, SwipeTestPage, TableSelectColumnsComponent, ToStringPipe, Toasts, ToolbarComponent, ToolbarToken, TranslatablePipe, TranslateContextPipe, TranslateContextService, UserEvent, UserEventFilter, UserEventService, UserEventTypes, UserEventsTable, UserSettings, UsersPage, accountToString, addValueInArray, arrayDistinct, arrayGroupBy, arraySize, asInputElement, canHaveFocus, capitalizeFirstLetter, chainPromises, changeCaseToUnderscore, clearValueInArray, copyEntity2Form, copyForm2Entity, createPromiseEvent, createPromiseEventEmitter, departmentToString, departmentsToString, disableControls, emitPromiseEvent, entityToString, equalsOrNil, fadeInAnimation, fadeInOutAnimation, filterFalse, filterNotNil, filterNumberInput, filterTrue, firstArrayValue, firstFalsePromise, firstNotNil, firstNotNilPromise, 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, isArray, isControlHasInput, isEmptyArray, isInputElement, isInstanceOf, isInt, isNil, isNilOrBlank, isNilOrNaN, isNotEmptyArray, isNotNil, isNotNilOrBlank, isNotNilOrNaN, isNotNilString, isNumber, isNumberRange, joinProperties, joinPropertiesPath, logFormErrors, markAsTouched, markAsUntouched, markControlAsTouched, markFormGroupAsTouched, matchUpperCase, mixHex, moveInputCaretToSeparator, noTrailingSlash, notNilOrDefault, nullIfUndefined, parseLatitudeOrLongitude, propertiesPathComparator, propertyComparator, propertyPathComparator, referentialToString, referentialsToString, remove, removeAll, removeDiacritics, removeDuplicatesFromArray, removeEnd, removeValueInArray, replaceAll, resetCalculatedValue, resizeArray, rgbArrayToHex, rgbToHex, round, scrollFactory, selectInputContent, selectInputRange, setCalculatedValue, setTabIndex, sleep, slideInOutAnimation, slideUpDownAnimation, sort, splitById, splitByProperty, startsWithUpperCase, suggestFromArray, suggestFromStringArray, tabindexComparator, toBoolean, toDateISOString, toDuration, toFloat, toInt, toNotNil, toNumber, trimEmptyToNull, uncapitalizeFirstLetter, updateValueAndValidity, waitWhilePending, ɵ0$5 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 };
23308
23293
  //# sourceMappingURL=ngx-sumaris-components.js.map