@sumaris-net/ngx-components 0.11.3-beta1 → 0.11.3

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.
@@ -487,6 +487,9 @@
487
487
  return value;
488
488
  return value.replace(/([a-z])([A-Z])/g, '$1_$2').toLowerCase();
489
489
  }
490
+ function removeDiacritics(text) {
491
+ return text.normalize('NFD').replace(/[\u0300-\u036f]/g, '');
492
+ }
490
493
  function suggestFromArray(items, value, opts) {
491
494
  if (isNotNil(value) && typeof value === 'object')
492
495
  return { data: [value] };
@@ -1123,6 +1126,7 @@
1123
1126
  this.readonly = false;
1124
1127
  this.clearable = false;
1125
1128
  this.debounceTime = null;
1129
+ this.highlightAccent = false;
1126
1130
  this.i18nPrefix = 'REFERENTIAL.';
1127
1131
  this.noResultMessage = 'COMMON.NO_RESULT';
1128
1132
  this.matAutocompletePosition = 'auto';
@@ -1663,7 +1667,7 @@
1663
1667
  { type: i0.Component, args: [{
1664
1668
  // eslint-disable-next-line @angular-eslint/component-selector
1665
1669
  selector: 'mat-autocomplete-field',
1666
- 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]=\"appAutofocus\"\n [tabindex]=\"_tabindex\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n (click)=\"onClick.emit($event)\"\n (blur)=\"onBlur.emit($event)\"\n (focus)=\"filterInputTextFocusEvent($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: formControl.value\"></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",
1670
+ 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]=\"appAutofocus\"\n [tabindex]=\"_tabindex\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n (click)=\"onClick.emit($event)\"\n (blur)=\"onBlur.emit($event)\"\n (focus)=\"filterInputTextFocusEvent($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",
1667
1671
  providers: [DEFAULT_VALUE_ACCESSOR],
1668
1672
  changeDetection: i0.ChangeDetectionStrategy.OnPush,
1669
1673
  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}"]
@@ -1690,6 +1694,7 @@
1690
1694
  displayAttributes: [{ type: i0.Input }],
1691
1695
  displayColumnSizes: [{ type: i0.Input }],
1692
1696
  displayColumnNames: [{ type: i0.Input }],
1697
+ highlightAccent: [{ type: i0.Input }],
1693
1698
  showAllOnFocus: [{ type: i0.Input }],
1694
1699
  showPanelOnFocus: [{ type: i0.Input }],
1695
1700
  appAutofocus: [{ type: i0.Input }],
@@ -2130,10 +2135,12 @@
2130
2135
  var HighlightPipe = /** @class */ (function () {
2131
2136
  function HighlightPipe() {
2132
2137
  }
2138
+ // Replace search text by bold representation
2133
2139
  HighlightPipe.prototype.transform = function (value, args) {
2134
2140
  if (typeof value !== 'string' || !args)
2135
2141
  return value;
2136
2142
  var searchText = (typeof args === 'string' ? args : args.search);
2143
+ var withAccent = (typeof args !== 'string') ? toBoolean(args === null || args === void 0 ? void 0 : args.withAccent, false) : false;
2137
2144
  if (typeof searchText !== 'string')
2138
2145
  return value;
2139
2146
  var searchRegexp = searchText
@@ -2141,12 +2148,22 @@
2141
2148
  .replace(/[*]+/g, '.*');
2142
2149
  if (searchRegexp === '.*')
2143
2150
  return value; // skip if can match everything
2144
- var cleanedRegexp = this.removeDiacritics(searchRegexp).replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&');
2145
- var regexp = new RegExp('[ ]?' + cleanedRegexp, 'gi');
2146
- return this.removeDiacritics('' + value).replace(regexp, '<b>$&</b>');
2147
- };
2148
- HighlightPipe.prototype.removeDiacritics = function (text) {
2149
- return text.normalize('NFD').replace(/[\u0300-\u036f]/g, '');
2151
+ if (withAccent) {
2152
+ // Remove all accent characters to allow versatile comparison
2153
+ var cleanedSearchText = removeDiacritics(searchRegexp).toUpperCase();
2154
+ var index = removeDiacritics(value.toUpperCase()).indexOf(cleanedSearchText);
2155
+ if (index !== -1) {
2156
+ return value.substr(0, index - 1) +
2157
+ '<b>' + value.substr(index, cleanedSearchText.length) + '</b>' +
2158
+ value.substr(index + cleanedSearchText.length);
2159
+ }
2160
+ return value;
2161
+ }
2162
+ else {
2163
+ // Default behaviour
2164
+ var regexp = new RegExp('[ ]?' + searchRegexp, 'gi');
2165
+ return ('' + value).replace(regexp, '<b>$&</b>');
2166
+ }
2150
2167
  };
2151
2168
  return HighlightPipe;
2152
2169
  }());
@@ -5438,12 +5455,12 @@
5438
5455
  AnimationState["ENTER"] = "enter";
5439
5456
  AnimationState["ENTER_INPUT"] = "enter-input";
5440
5457
  AnimationState["LEAVE"] = "leave";
5441
- })(exports.ɵbd || (exports.ɵbd = {}));
5458
+ })(exports.AnimationState || (exports.AnimationState = {}));
5442
5459
  var MatNumpadContainerComponent = /** @class */ (function () {
5443
5460
  function MatNumpadContainerComponent(cd) {
5444
5461
  this.cd = cd;
5445
5462
  this.debug = true;
5446
- this.backdropState = exports.ɵbd.LEAVE;
5463
+ this.backdropState = exports.AnimationState.LEAVE;
5447
5464
  this.columnCount = 4;
5448
5465
  this.filteredKeymap = new rxjs.BehaviorSubject(undefined);
5449
5466
  if (this.debug)
@@ -5455,15 +5472,15 @@
5455
5472
  }
5456
5473
  if (!this.disableAnimation) {
5457
5474
  if (this.appendToInput) {
5458
- this.panelState = exports.ɵbd.ENTER;
5475
+ this.panelState = exports.AnimationState.ENTER;
5459
5476
  }
5460
5477
  else {
5461
- this.modalState = exports.ɵbd.ENTER;
5478
+ this.modalState = exports.AnimationState.ENTER;
5462
5479
  }
5463
5480
  }
5464
5481
  this.noBackdrop = this.noBackdrop || this.appendToInput;
5465
5482
  if (!this.noBackdrop) {
5466
- this.backdropState = exports.ɵbd.ENTER;
5483
+ this.backdropState = exports.AnimationState.ENTER;
5467
5484
  }
5468
5485
  var keymap = this.defineFilteredKeymap();
5469
5486
  this.filteredKeymap.next(keymap);
@@ -5496,15 +5513,15 @@
5496
5513
  return;
5497
5514
  }
5498
5515
  if (this.modalState)
5499
- this.modalState = exports.ɵbd.LEAVE;
5516
+ this.modalState = exports.AnimationState.LEAVE;
5500
5517
  if (this.panelState)
5501
- this.panelState = exports.ɵbd.LEAVE;
5518
+ this.panelState = exports.AnimationState.LEAVE;
5502
5519
  if (this.backdropState)
5503
- this.backdropState = exports.ɵbd.LEAVE;
5520
+ this.backdropState = exports.AnimationState.LEAVE;
5504
5521
  this.markForCheck();
5505
5522
  };
5506
5523
  MatNumpadContainerComponent.prototype.animationDone = function (event) {
5507
- if (event.phaseName === 'done' && event.toState === exports.ɵbd.LEAVE) {
5524
+ if (event.phaseName === 'done' && event.toState === exports.AnimationState.LEAVE) {
5508
5525
  this.numpadRef.close();
5509
5526
  }
5510
5527
  };
@@ -5530,13 +5547,13 @@
5530
5547
  // Backdrop animation
5531
5548
  animations.trigger('numpadBackdrop', [
5532
5549
  animations.state('*', animations.style({ opacity: 0, background: 'transparent' })),
5533
- animations.state(exports.ɵbd.ENTER, animations.style({ opacity: 1 })),
5534
- animations.state(exports.ɵbd.LEAVE, animations.style({ opacity: 0 })),
5535
- animations.transition("* => " + exports.ɵbd.ENTER, [
5550
+ animations.state(exports.AnimationState.ENTER, animations.style({ opacity: 1 })),
5551
+ animations.state(exports.AnimationState.LEAVE, animations.style({ opacity: 0 })),
5552
+ animations.transition("* => " + exports.AnimationState.ENTER, [
5536
5553
  animations.style({ opacity: 0 }),
5537
5554
  animations.animate('0.4s cubic-bezier(0.25, 0.8, 0.25, 1)')
5538
5555
  ]),
5539
- animations.transition(exports.ɵbd.ENTER + " => " + exports.ɵbd.LEAVE, [
5556
+ animations.transition(exports.AnimationState.ENTER + " => " + exports.AnimationState.LEAVE, [
5540
5557
  animations.style({ opacity: 1 }),
5541
5558
  animations.animate('0.2s cubic-bezier(0.25, 0.8, 0.25, 1)')
5542
5559
  ])
@@ -5544,27 +5561,27 @@
5544
5561
  // Fade in
5545
5562
  animations.trigger('numpadFadeIn', [
5546
5563
  animations.state('*', animations.style({ opacity: 1, transform: 'scale(1)' })),
5547
- animations.state(exports.ɵbd.ENTER, animations.style({ opacity: 1, transform: 'scale(1)' })),
5548
- animations.state(exports.ɵbd.LEAVE, animations.style({ opacity: 0, transform: 'scale(0.9)' })),
5564
+ animations.state(exports.AnimationState.ENTER, animations.style({ opacity: 1, transform: 'scale(1)' })),
5565
+ animations.state(exports.AnimationState.LEAVE, animations.style({ opacity: 0, transform: 'scale(0.9)' })),
5549
5566
  // Modal
5550
- animations.transition("* => " + exports.ɵbd.ENTER, [
5567
+ animations.transition("* => " + exports.AnimationState.ENTER, [
5551
5568
  animations.style({ opacity: 0, transform: 'scale(0.6)' }),
5552
5569
  animations.animate('0.2s ease-out')
5553
5570
  ]),
5554
- animations.transition(exports.ɵbd.ENTER + " => " + exports.ɵbd.LEAVE, [
5571
+ animations.transition(exports.AnimationState.ENTER + " => " + exports.AnimationState.LEAVE, [
5555
5572
  animations.animate('0.2s ease-out')
5556
5573
  ])
5557
5574
  ]),
5558
5575
  // Panel expansion
5559
5576
  animations.trigger('numpadPanelExpansion', [
5560
5577
  animations.state('*', animations.style({ opacity: 1, transform: 'scaleY(0) translateY(-50%)' })),
5561
- animations.state(exports.ɵbd.ENTER, animations.style({ opacity: 1, transform: 'scale(1) translateY(0)' })),
5562
- animations.state(exports.ɵbd.LEAVE, animations.style({ opacity: 0, transform: 'scale(1) translateY(0)' })),
5578
+ animations.state(exports.AnimationState.ENTER, animations.style({ opacity: 1, transform: 'scale(1) translateY(0)' })),
5579
+ animations.state(exports.AnimationState.LEAVE, animations.style({ opacity: 0, transform: 'scale(1) translateY(0)' })),
5563
5580
  // Attach to input
5564
- animations.transition("* => " + exports.ɵbd.ENTER, [
5581
+ animations.transition("* => " + exports.AnimationState.ENTER, [
5565
5582
  animations.animate('0.2s ease-out')
5566
5583
  ]),
5567
- animations.transition(exports.ɵbd.ENTER + " => " + exports.ɵbd.LEAVE, [
5584
+ animations.transition(exports.AnimationState.ENTER + " => " + exports.AnimationState.LEAVE, [
5568
5585
  animations.animate('0.2s ease-out')
5569
5586
  ])
5570
5587
  ])
@@ -6399,6 +6416,7 @@
6399
6416
  this.readonly = false;
6400
6417
  this.clearable = false;
6401
6418
  this.debounceTime = 250;
6419
+ this.highlightAccent = false;
6402
6420
  this.i18nPrefix = 'REFERENTIAL.';
6403
6421
  this.noResultMessage = 'COMMON.NO_RESULT';
6404
6422
  this.debug = false;
@@ -6721,7 +6739,7 @@
6721
6739
  { type: i0.Component, args: [{
6722
6740
  // eslint-disable-next-line @angular-eslint/component-selector
6723
6741
  selector: 'mat-chips-field',
6724
- template: "<ion-grid class=\"ion-no-padding\">\n <ion-row>\n <ion-col class=\"ion-no-padding\">\n <mat-form-field [floatLabel]=\"floatLabel\" class=\"material-chips\" [class.mat-form-field-disabled]=\"disabled\">\n <div matPrefix>\n <ng-content select=\"[matPrefix]\"></ng-content>\n </div>\n <mat-label>{{placeholder}}</mat-label>\n <mat-chip-list #chipList>\n <mat-chip\n *ngFor=\"let item of value\"\n [selectable]=\"false\"\n [removable]=\"!disabled\"\n (removed)=\"remove(item)\">\n {{displayWith(item)}}\n <mat-icon matChipRemove *ngIf=\"!disabled\">cancel</mat-icon>\n </mat-chip>\n\n <input matInput #matInputText type=\"text\"\n [matAutocomplete]=\"autoCombo\"\n [formControl]=\"inputControl\"\n [appAutofocus]=\"appAutofocus\"\n [tabindex]=\"_tabindex\"\n [readonly]=\"disabled\"\n [hidden]=\"disabled\"\n [required]=\"required\"\n (click)=\"clicked.emit($event)\"\n (blur)=\"blurred.emit($event)\"\n (focus)=\"filterInputTextFocusEvent($event)\"\n (keyup.arrowdown)=\"!autoCombo.showPanel && onDropButtonClick.emit($event)\"\n [matChipInputFor]=\"chipList\"\n >\n </mat-chip-list>\n\n <!-- autocomplete -->\n <mat-autocomplete #autoCombo=\"matAutocomplete\"\n (optionSelected)=\"add($event)\"\n autoActiveFirstOption\n [displayWith]=\"displayWith\"\n [class]=\"class\">\n <ng-container *ngIf=\"(filteredItems$ | async) as items\">\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-text color=\"light\" *ngIf=\"isLast\" class=\"ion-float-end ion-padding-end\"><i>{{'COMMON.RESULT_COUNT'|translate: {count: itemCount} }}</i></ion-text>\n </ion-col>\n </ion-row>\n\n <!-- No item option -->\n <mat-option *ngIf=\"!items.length\" class=\"ion-no-padding\" [disabled]=\"true\">\n <ion-row class=\"ion-no-padding\">\n <ion-col class=\"ion-no-padding\">\n <ion-label><i>{{noResultMessage | translate}}</i></ion-label>\n </ion-col>\n </ion-row>\n </mat-option>\n\n <mat-option *ngFor=\"let item of items\" [value]=\"item\" class=\"ion-no-padding\">\n <ion-row>\n <ion-col *ngFor=\"let attr of displayAttributes; index as i;\"\n [size]=\"displayColumnSizes[i]\">\n <ion-text [innerHTML]=\"getPropertyByPath(item, attr) | highlight: inputControl.value\"></ion-text>\n </ion-col>\n </ion-row>\n </mat-option>\n </ng-container>\n </mat-autocomplete>\n\n <button matSuffix mat-icon-button tabindex=\"-1\"\n type=\"button\"\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 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 <ng-content matSuffix select=\"[matSuffix]\"></ng-content>\n\n <mat-error *ngIf=\"formControl.hasError('required')\" translate>ERROR.FIELD_REQUIRED</mat-error>\n\n </mat-form-field>\n\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</ion-grid>\n",
6742
+ template: "<ion-grid class=\"ion-no-padding\">\n <ion-row>\n <ion-col class=\"ion-no-padding\">\n <mat-form-field [floatLabel]=\"floatLabel\" class=\"material-chips\" [class.mat-form-field-disabled]=\"disabled\">\n <div matPrefix>\n <ng-content select=\"[matPrefix]\"></ng-content>\n </div>\n <mat-label>{{placeholder}}</mat-label>\n <mat-chip-list #chipList>\n <mat-chip\n *ngFor=\"let item of value\"\n [selectable]=\"false\"\n [removable]=\"!disabled\"\n (removed)=\"remove(item)\">\n {{displayWith(item)}}\n <mat-icon matChipRemove *ngIf=\"!disabled\">cancel</mat-icon>\n </mat-chip>\n\n <input matInput #matInputText type=\"text\"\n [matAutocomplete]=\"autoCombo\"\n [formControl]=\"inputControl\"\n [appAutofocus]=\"appAutofocus\"\n [tabindex]=\"_tabindex\"\n [readonly]=\"disabled\"\n [hidden]=\"disabled\"\n [required]=\"required\"\n (click)=\"clicked.emit($event)\"\n (blur)=\"blurred.emit($event)\"\n (focus)=\"filterInputTextFocusEvent($event)\"\n (keyup.arrowdown)=\"!autoCombo.showPanel && onDropButtonClick.emit($event)\"\n [matChipInputFor]=\"chipList\"\n >\n </mat-chip-list>\n\n <!-- autocomplete -->\n <mat-autocomplete #autoCombo=\"matAutocomplete\"\n (optionSelected)=\"add($event)\"\n autoActiveFirstOption\n [displayWith]=\"displayWith\"\n [class]=\"class\">\n <ng-container *ngIf=\"(filteredItems$ | async) as items\">\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-text color=\"light\" *ngIf=\"isLast\" class=\"ion-float-end ion-padding-end\"><i>{{'COMMON.RESULT_COUNT'|translate: {count: itemCount} }}</i></ion-text>\n </ion-col>\n </ion-row>\n\n <!-- No item option -->\n <mat-option *ngIf=\"!items.length\" class=\"ion-no-padding\" [disabled]=\"true\">\n <ion-row class=\"ion-no-padding\">\n <ion-col class=\"ion-no-padding\">\n <ion-label><i>{{noResultMessage | translate}}</i></ion-label>\n </ion-col>\n </ion-row>\n </mat-option>\n\n <mat-option *ngFor=\"let item of items\" [value]=\"item\" class=\"ion-no-padding\">\n <ion-row>\n <ion-col *ngFor=\"let attr of displayAttributes; index as i;\"\n [size]=\"displayColumnSizes[i]\">\n <ion-text [innerHTML]=\"getPropertyByPath(item, attr) | highlight: { search: inputControl.value, withAccent: highlightAccent } \"></ion-text>\n </ion-col>\n </ion-row>\n </mat-option>\n </ng-container>\n </mat-autocomplete>\n\n <button matSuffix mat-icon-button tabindex=\"-1\"\n type=\"button\"\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 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 <ng-content matSuffix select=\"[matSuffix]\"></ng-content>\n\n <mat-error *ngIf=\"formControl.hasError('required')\" translate>ERROR.FIELD_REQUIRED</mat-error>\n\n </mat-form-field>\n\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</ion-grid>\n",
6725
6743
  providers: [
6726
6744
  {
6727
6745
  provide: i1.NG_VALUE_ACCESSOR,
@@ -6754,6 +6772,7 @@
6754
6772
  displayAttributes: [{ type: i0.Input }],
6755
6773
  displayColumnSizes: [{ type: i0.Input }],
6756
6774
  displayColumnNames: [{ type: i0.Input }],
6775
+ highlightAccent: [{ type: i0.Input }],
6757
6776
  showAllOnFocus: [{ type: i0.Input }],
6758
6777
  showPanelOnFocus: [{ type: i0.Input }],
6759
6778
  appAutofocus: [{ type: i0.Input }],
@@ -16970,10 +16989,10 @@
16970
16989
  return result;
16971
16990
  }
16972
16991
 
16973
- var Entity$1 = /** @class */ (function () {
16974
- function Entity() {
16992
+ var EntityTestClass = /** @class */ (function () {
16993
+ function EntityTestClass() {
16975
16994
  }
16976
- return Entity;
16995
+ return EntityTestClass;
16977
16996
  }());
16978
16997
  var FAKE_ENTITIES = [
16979
16998
  { id: 1, label: 'AAA', name: 'Item A', description: 'Very long description A', comments: 'Very very long comments... again for A' },
@@ -18041,10 +18060,10 @@
18041
18060
  { type: i0.ChangeDetectorRef }
18042
18061
  ]; };
18043
18062
 
18044
- var Entity$2 = /** @class */ (function () {
18045
- function Entity() {
18063
+ var EntityTestClass$1 = /** @class */ (function () {
18064
+ function EntityTestClass() {
18046
18065
  }
18047
- return Entity;
18066
+ return EntityTestClass;
18048
18067
  }());
18049
18068
  var FAKE_ENTITIES$1 = [
18050
18069
  { id: 1, label: 'AAA', name: 'Item A' },
@@ -26706,6 +26725,7 @@
26706
26725
  exports.AppGraphQLModule = AppGraphQLModule;
26707
26726
  exports.AppHelpModal = AppHelpModal;
26708
26727
  exports.AppInMemoryTable = AppInMemoryTable;
26728
+ exports.AppInstallUpgradeCard = AppInstallUpgradeCard;
26709
26729
  exports.AppListForm = AppListForm;
26710
26730
  exports.AppLoadingSpinner = AppLoadingSpinner;
26711
26731
  exports.AppMenuModule = AppMenuModule;
@@ -26717,8 +26737,17 @@
26717
26737
  exports.AppTableDataSourceOptions = AppTableDataSourceOptions;
26718
26738
  exports.AppTableUtils = AppTableUtils;
26719
26739
  exports.AppValidatorService = AppValidatorService;
26740
+ exports.AppendToInputDirective = AppendToInputDirective;
26741
+ exports.ArrayFilterPipe = ArrayFilterPipe;
26742
+ exports.ArrayFirstPipe = ArrayFirstPipe;
26743
+ exports.ArrayIncludesPipe = ArrayIncludesPipe;
26744
+ exports.ArrayLengthPipe = ArrayLengthPipe;
26745
+ exports.ArrayPluckPipe = ArrayPluckPipe;
26720
26746
  exports.AudioProvider = AudioProvider;
26747
+ exports.AuthForm = AuthForm;
26721
26748
  exports.AuthGuardService = AuthGuardService;
26749
+ exports.AuthModal = AuthModal;
26750
+ exports.AutocompleteTestPage = AutocompleteTestPage;
26722
26751
  exports.AutofocusDirective = AutofocusDirective;
26723
26752
  exports.Base58 = Base58;
26724
26753
  exports.BaseEntityService = BaseEntityService;
@@ -26728,6 +26757,7 @@
26728
26757
  exports.Beans = Beans;
26729
26758
  exports.CORE_CONFIG_OPTIONS = CORE_CONFIG_OPTIONS;
26730
26759
  exports.CellValueChangeListener = CellValueChangeListener;
26760
+ exports.ChipsTestPage = ChipsTestPage;
26731
26761
  exports.Color = Color;
26732
26762
  exports.ColorScale = ColorScale;
26733
26763
  exports.ConfigService = ConfigService;
@@ -26743,11 +26773,13 @@
26743
26773
  exports.DateDiffDurationPipe = DateDiffDurationPipe;
26744
26774
  exports.DateFormatPipe = DateFormatPipe;
26745
26775
  exports.DateFromNowPipe = DateFromNowPipe;
26776
+ exports.DateTimeTestPage = DateTimeTestPage;
26746
26777
  exports.DateUtils = DateUtils;
26747
26778
  exports.DepartmentToStringPipe = DepartmentToStringPipe;
26748
26779
  exports.DurationPipe = DurationPipe;
26749
26780
  exports.ENTITIES_STORAGE_KEY_PREFIX = ENTITIES_STORAGE_KEY_PREFIX;
26750
26781
  exports.ENVIRONMENT = ENVIRONMENT;
26782
+ exports.EmptyArrayPipe = EmptyArrayPipe;
26751
26783
  exports.EntitiesService = EntitiesService;
26752
26784
  exports.EntitiesStorage = EntitiesStorage;
26753
26785
  exports.EntitiesTableDataSource = EntitiesTableDataSource;
@@ -26756,11 +26788,14 @@
26756
26788
  exports.EntityClasses = EntityClasses;
26757
26789
  exports.EntityFilter = EntityFilter;
26758
26790
  exports.EntityFilterUtils = EntityFilterUtils;
26791
+ exports.EntityMetadataComponent = EntityMetadataComponent;
26759
26792
  exports.EntityStore = EntityStore;
26760
26793
  exports.EntityUtils = EntityUtils;
26761
26794
  exports.Environment = Environment;
26762
26795
  exports.ErrorCodes = ErrorCodes$2;
26796
+ exports.EvenPipe = EvenPipe;
26763
26797
  exports.FileService = FileService;
26798
+ exports.FileSizePipe = FileSizePipe;
26764
26799
  exports.FormArrayHelper = FormArrayHelper;
26765
26800
  exports.FormButtonsBarComponent = FormButtonsBarComponent;
26766
26801
  exports.FormButtonsBarToken = FormButtonsBarToken;
@@ -26775,6 +26810,8 @@
26775
26810
  exports.HotkeysDialogComponent = HotkeysDialogComponent;
26776
26811
  exports.InMemoryEntitiesService = InMemoryEntitiesService;
26777
26812
  exports.IsLoginAccountPipe = IsLoginAccountPipe;
26813
+ exports.IsNilOrBlankPipe = IsNilOrBlankPipe;
26814
+ exports.IsNotNilOrBlankPipe = IsNotNilOrBlankPipe;
26778
26815
  exports.IsNotOnFieldModePipe = IsNotOnFieldModePipe;
26779
26816
  exports.IsOnFieldModePipe = IsOnFieldModePipe;
26780
26817
  exports.JobUtils = JobUtils;
@@ -26782,11 +26819,15 @@
26782
26819
  exports.LAT_LONG_DEFAULT_MAX_DECIMALS = LAT_LONG_DEFAULT_MAX_DECIMALS;
26783
26820
  exports.LAT_LONG_PATTERNS = LAT_LONG_PATTERNS;
26784
26821
  exports.LatLongFormatPipe = LatLongFormatPipe;
26822
+ exports.LatLongTestPage = LatLongTestPage;
26785
26823
  exports.LatitudeFormatPipe = LatitudeFormatPipe;
26786
26824
  exports.LocalSettingsService = LocalSettingsService;
26787
26825
  exports.LongitudeFormatPipe = LongitudeFormatPipe;
26788
26826
  exports.MINIFY_ENTITY_FOR_LOCAL_STORAGE = MINIFY_ENTITY_FOR_LOCAL_STORAGE;
26789
26827
  exports.MINIFY_ENTITY_FOR_POD = MINIFY_ENTITY_FOR_POD;
26828
+ exports.MapGetPipe = MapGetPipe;
26829
+ exports.MapKeysPipe = MapKeysPipe;
26830
+ exports.MapValuesPipe = MapValuesPipe;
26790
26831
  exports.MatAutocompleteConfigHolder = MatAutocompleteConfigHolder;
26791
26832
  exports.MatAutocompleteField = MatAutocompleteField;
26792
26833
  exports.MatBooleanField = MatBooleanField;
@@ -26794,18 +26835,28 @@
26794
26835
  exports.MatDate = MatDate;
26795
26836
  exports.MatDateShort = MatDateShort;
26796
26837
  exports.MatDateTime = MatDateTime;
26838
+ exports.MatDuration = MatDuration;
26797
26839
  exports.MatLatLongField = MatLatLongField;
26840
+ exports.MatNumpadComponent = MatNumpadComponent;
26841
+ exports.MatNumpadContainerComponent = MatNumpadContainerComponent;
26842
+ exports.MatNumpadContent = MatNumpadContent;
26798
26843
  exports.MatPaginatorI18n = MatPaginatorI18n;
26799
26844
  exports.MatStepperI18n = MatStepperI18n;
26845
+ exports.MatSwipeField = MatSwipeField;
26800
26846
  exports.MaterialChipsModule = MaterialChipsModule;
26801
26847
  exports.MaterialTestingModule = MaterialTestingModule;
26802
26848
  exports.MaterialTestingPage = MaterialTestingPage;
26849
+ exports.MathAbsPipe = MathAbsPipe;
26803
26850
  exports.MenuComponent = MenuComponent;
26804
26851
  exports.MenuItems = MenuItems;
26805
26852
  exports.MenuService = MenuService;
26806
26853
  exports.ModalToolbarComponent = ModalToolbarComponent;
26807
26854
  exports.NetworkService = NetworkService;
26855
+ exports.NgInitDirective = NgInitDirective;
26856
+ exports.NotEmptyArrayPipe = NotEmptyArrayPipe;
26808
26857
  exports.NumberFormatPipe = NumberFormatPipe;
26858
+ exports.NumpadDirective = NumpadDirective;
26859
+ exports.OddPipe = OddPipe;
26809
26860
  exports.PRIORITIZED_AUTHORITIES = PRIORITIZED_AUTHORITIES;
26810
26861
  exports.PUBKEY_REGEXP = PUBKEY_REGEXP;
26811
26862
  exports.PersonFragments = PersonFragments;
@@ -26836,7 +26887,11 @@
26836
26887
  exports.SharedHotkeysModule = SharedHotkeysModule;
26837
26888
  exports.SharedMatAutocompleteModule = SharedMatAutocompleteModule;
26838
26889
  exports.SharedMatBooleanModule = SharedMatBooleanModule;
26890
+ exports.SharedMatDateTimeModule = SharedMatDateTimeModule;
26891
+ exports.SharedMatDurationModule = SharedMatDurationModule;
26839
26892
  exports.SharedMatLatLongModule = SharedMatLatLongModule;
26893
+ exports.SharedMatNumpadModule = SharedMatNumpadModule;
26894
+ exports.SharedMatSwipeModule = SharedMatSwipeModule;
26840
26895
  exports.SharedMaterialModule = SharedMaterialModule;
26841
26896
  exports.SharedModule = SharedModule;
26842
26897
  exports.SharedPipesModule = SharedPipesModule;
@@ -26846,10 +26901,15 @@
26846
26901
  exports.SocialModule = SocialModule;
26847
26902
  exports.StatusIds = StatusIds;
26848
26903
  exports.StatusList = StatusList;
26904
+ exports.StrLengthPipe = StrLengthPipe;
26905
+ exports.SwipeTestPage = SwipeTestPage;
26849
26906
  exports.TableSelectColumnsComponent = TableSelectColumnsComponent;
26907
+ exports.ToStringPipe = ToStringPipe;
26850
26908
  exports.Toasts = Toasts;
26851
26909
  exports.ToolbarComponent = ToolbarComponent;
26852
26910
  exports.ToolbarToken = ToolbarToken;
26911
+ exports.TranslatablePipe = TranslatablePipe;
26912
+ exports.TranslateContextPipe = TranslateContextPipe;
26853
26913
  exports.TranslateContextService = TranslateContextService;
26854
26914
  exports.UserEventService = UserEventService;
26855
26915
  exports.UserEventTypes = UserEventTypes;
@@ -26947,6 +27007,7 @@
26947
27007
  exports.referentialsToString = referentialsToString;
26948
27008
  exports.remove = remove;
26949
27009
  exports.removeAll = removeAll;
27010
+ exports.removeDiacritics = removeDiacritics;
26950
27011
  exports.removeDuplicatesFromArray = removeDuplicatesFromArray;
26951
27012
  exports.removeEnd = removeEnd;
26952
27013
  exports.removeValueInArray = removeValueInArray;
@@ -26982,55 +27043,15 @@
26982
27043
  exports.uncapitalizeFirstLetter = uncapitalizeFirstLetter;
26983
27044
  exports.updateValueAndValidity = updateValueAndValidity;
26984
27045
  exports.waitWhilePending = waitWhilePending;
27046
+ exports.ɵ0 = ɵ0$5;
26985
27047
  exports.ɵa = CustomReuseStrategy;
26986
- exports.ɵb = FileSizePipe;
26987
- exports.ɵba = MatNumpadComponent;
26988
- exports.ɵbb = MatNumpadDomService;
26989
- exports.ɵbc = NumpadDirective;
26990
- exports.ɵbe = MatNumpadContainerComponent;
26991
- exports.ɵbf = MatNumpadContent;
26992
- exports.ɵbg = AppendToInputDirective;
26993
- exports.ɵbh = SharedMatSwipeModule;
26994
- exports.ɵbi = MatSwipeField;
26995
- exports.ɵbj = isFocusableElement;
26996
- exports.ɵbk = AutocompleteTestPage;
26997
- exports.ɵbl = DateTimeTestPage;
26998
- exports.ɵbm = LatLongTestPage;
26999
- exports.ɵbn = SwipeTestPage;
27000
- exports.ɵbo = ChipsTestPage;
27001
- exports.ɵbp = AuthForm;
27002
- exports.ɵbq = AuthModal;
27003
- exports.ɵbr = RegisterForm;
27004
- exports.ɵbs = AccountValidatorService;
27005
- exports.ɵbt = RegisterModal;
27006
- exports.ɵbu = UserSettingsValidatorService;
27007
- exports.ɵbv = LocalSettingsValidatorService;
27008
- exports.ɵbw = AppInstallUpgradeCard;
27009
- exports.ɵbx = EntityMetadataComponent;
27010
- exports.ɵc = MathAbsPipe;
27011
- exports.ɵd = EvenPipe;
27012
- exports.ɵe = OddPipe;
27013
- exports.ɵf = NotEmptyArrayPipe;
27014
- exports.ɵg = EmptyArrayPipe;
27015
- exports.ɵh = ArrayLengthPipe;
27016
- exports.ɵi = ArrayFirstPipe;
27017
- exports.ɵj = ArrayPluckPipe;
27018
- exports.ɵk = ArrayIncludesPipe;
27019
- exports.ɵl = ArrayFilterPipe;
27020
- exports.ɵm = MapGetPipe;
27021
- exports.ɵn = MapKeysPipe;
27022
- exports.ɵo = MapValuesPipe;
27023
- exports.ɵp = IsNotNilOrBlankPipe;
27024
- exports.ɵq = IsNilOrBlankPipe;
27025
- exports.ɵr = ToStringPipe;
27026
- exports.ɵs = StrLengthPipe;
27027
- exports.ɵt = TranslateContextPipe;
27028
- exports.ɵu = TranslatablePipe;
27029
- exports.ɵv = NgInitDirective;
27030
- exports.ɵw = SharedMatDateTimeModule;
27031
- exports.ɵx = SharedMatDurationModule;
27032
- exports.ɵy = MatDuration;
27033
- exports.ɵz = SharedMatNumpadModule;
27048
+ exports.ɵb = MatNumpadDomService;
27049
+ exports.ɵc = isFocusableElement;
27050
+ exports.ɵd = RegisterForm;
27051
+ exports.ɵe = AccountValidatorService;
27052
+ exports.ɵf = RegisterModal;
27053
+ exports.ɵg = UserSettingsValidatorService;
27054
+ exports.ɵh = LocalSettingsValidatorService;
27034
27055
 
27035
27056
  Object.defineProperty(exports, '__esModule', { value: true });
27036
27057