@sumaris-net/ngx-components 2.9.18 → 2.9.19

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.
Files changed (23) hide show
  1. package/esm2022/public_api.mjs +3 -1
  2. package/esm2022/src/app/core/table/testing/table.testing.mjs +1 -1
  3. package/esm2022/src/app/core/table/testing/table2.testing.mjs +1 -1
  4. package/esm2022/src/app/shared/form/field.component.mjs +1 -1
  5. package/esm2022/src/app/shared/functions.mjs +2 -2
  6. package/esm2022/src/app/shared/material/autocomplete/material.autocomplete.mjs +8 -4
  7. package/esm2022/src/app/shared/material/autocomplete/testing/autocomplete.test.mjs +2 -2
  8. package/esm2022/src/app/shared/material/paginator/material.paginator-i18n.mjs +11 -2
  9. package/esm2022/src/app/shared/named-filter/named-filter-selector.component.mjs +12 -4
  10. package/esm2022/src/app/shared/named-filter/named-filter.service.mjs +1 -1
  11. package/esm2022/src/app/shared/named-filter/testing/named-filter-selector.testing.mjs +69 -0
  12. package/esm2022/src/app/shared/named-filter/testing/named-filter.testing.module.mjs +28 -0
  13. package/esm2022/src/app/shared/shared.testing.module.mjs +13 -5
  14. package/fesm2022/sumaris-net.ngx-components.mjs +152 -41
  15. package/fesm2022/sumaris-net.ngx-components.mjs.map +1 -1
  16. package/package.json +1 -1
  17. package/public_api.d.ts +2 -0
  18. package/src/app/shared/material/autocomplete/material.autocomplete.d.ts +3 -2
  19. package/src/app/shared/named-filter/named-filter-selector.component.d.ts +2 -1
  20. package/src/app/shared/named-filter/testing/named-filter-selector.testing.d.ts +31 -0
  21. package/src/app/shared/named-filter/testing/named-filter.testing.module.d.ts +10 -0
  22. package/src/app/shared/shared.testing.module.d.ts +2 -1
  23. package/src/assets/i18n/fr.json +3 -1
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@sumaris-net/ngx-components",
3
3
  "description": "SUMARiS Angular components",
4
- "version": "2.9.18",
4
+ "version": "2.9.19",
5
5
  "author": "contact@e-is.pro",
6
6
  "license": "AGPL-3.0",
7
7
  "readmeFilename": "README.md",
package/public_api.d.ts CHANGED
@@ -299,6 +299,8 @@ export * from './src/app/core/form/properties/testing/properties-form.testing.mo
299
299
  export * from './src/app/core/menu/testing/menu.testing';
300
300
  export * from './src/app/core/menu/testing/menu.testing.module';
301
301
  export * from './src/app/core/menu/testing/menu-other.testing';
302
+ export * from './src/app/shared/named-filter/testing/named-filter-selector.testing';
303
+ export * from './src/app/shared/named-filter/testing/named-filter.testing.module';
302
304
  export * from './src/app/social/social.testing.module';
303
305
  export * from './src/app/social/user-event/testing/user-event.testing.module';
304
306
  export * from './src/app/social/user-event/testing/user-event.testing';
@@ -6,7 +6,7 @@ import { InputElement } from '../../inputs';
6
6
  import { AppFloatLabelType, DisplayFn, EqualsFn } from '../../form/field.model';
7
7
  import { MatFormFieldAppearance, SubscriptSizing } from '@angular/material/form-field';
8
8
  import { MatSelect } from '@angular/material/select';
9
- import { MatAutocomplete, MatAutocompleteTrigger } from '@angular/material/autocomplete';
9
+ import { MatAutocomplete, MatAutocompleteSelectedEvent, MatAutocompleteTrigger } from '@angular/material/autocomplete';
10
10
  import { IonSearchbar, ModalController } from '@ionic/angular';
11
11
  import { MatAutocompleteFieldConfig } from './material.autocomplete.config';
12
12
  import * as i0 from "@angular/core";
@@ -77,6 +77,7 @@ export declare class MatAutocompleteField implements OnInit, AfterViewInit, OnDe
77
77
  dropButtonClick: EventEmitter<Event>;
78
78
  keydownEscape: EventEmitter<Event>;
79
79
  keyupEnter: EventEmitter<Event>;
80
+ optionSelected: EventEmitter<MatAutocompleteSelectedEvent>;
80
81
  matSelect: MatSelect;
81
82
  ionSearchbar: IonSearchbar;
82
83
  matInputText: ElementRef;
@@ -139,7 +140,7 @@ export declare class MatAutocompleteField implements OnInit, AfterViewInit, OnDe
139
140
  */
140
141
  private _fixSearchbarOverlay;
141
142
  static ɵfac: i0.ɵɵFactoryDeclaration<MatAutocompleteField, [null, null, null, { optional: true; }]>;
142
- static ɵcmp: i0.ɵɵComponentDeclaration<MatAutocompleteField, "mat-autocomplete-field", never, { "equals": { "alias": "equals"; "required": false; }; "logPrefix": { "alias": "logPrefix"; "required": false; }; "formControl": { "alias": "formControl"; "required": false; }; "formControlName": { "alias": "formControlName"; "required": false; }; "floatLabel": { "alias": "floatLabel"; "required": false; }; "appearance": { "alias": "appearance"; "required": false; }; "subscriptSizing": { "alias": "subscriptSizing"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "suggestFn": { "alias": "suggestFn"; "required": false; }; "required": { "alias": "required"; "required": false; }; "mobile": { "alias": "mobile"; "required": false; }; "clearable": { "alias": "clearable"; "required": false; }; "debounceTime": { "alias": "debounceTime"; "required": false; }; "displayWith": { "alias": "displayWith"; "required": false; }; "displayAttributes": { "alias": "displayAttributes"; "required": false; }; "displayColumnSizes": { "alias": "displayColumnSizes"; "required": false; }; "displayColumnNames": { "alias": "displayColumnNames"; "required": false; }; "highlightAccent": { "alias": "highlightAccent"; "required": false; }; "showAllOnFocus": { "alias": "showAllOnFocus"; "required": false; }; "showPanelOnFocus": { "alias": "showPanelOnFocus"; "required": false; }; "autofocus": { "alias": "autofocus"; "required": false; }; "config": { "alias": "config"; "required": false; }; "i18nPrefix": { "alias": "i18nPrefix"; "required": false; }; "noResultMessage": { "alias": "noResultMessage"; "required": false; }; "panelClass": { "alias": "panelClass"; "required": false; }; "panelWidth": { "alias": "panelWidth"; "required": false; }; "disableRipple": { "alias": "disableRipple"; "required": false; }; "matAutocompletePosition": { "alias": "matAutocompletePosition"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "fetchMoreThreshold": { "alias": "fetchMoreThreshold"; "required": false; }; "suggestLengthThreshold": { "alias": "suggestLengthThreshold"; "required": false; }; "showLoadingSpinner": { "alias": "showLoadingSpinner"; "required": false; }; "debug": { "alias": "debug"; "required": false; }; "showSearchBar": { "alias": "showSearchBar"; "required": false; }; "stickySearchBar": { "alias": "stickySearchBar"; "required": false; }; "applyImplicitValue": { "alias": "applyImplicitValue"; "required": false; }; "dropButtonTitle": { "alias": "dropButtonTitle"; "required": false; }; "clearButtonTitle": { "alias": "clearButtonTitle"; "required": false; }; "filter": { "alias": "filter"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "tabindex": { "alias": "tabindex"; "required": false; }; "items": { "alias": "items"; "required": false; }; }, { "clicked": "click"; "blurred": "blur"; "focused": "focus"; "dropButtonClick": "dropButtonClick"; "keydownEscape": "keydown.escape"; "keyupEnter": "keyup.enter"; }, never, ["[matAfter]", "[matPrefix]", "[matSuffix]", "mat-error,[matError]", "mat-hint:not([align='end']),[matHint]", "mat-hint[align='end']"], false, never>;
143
+ static ɵcmp: i0.ɵɵComponentDeclaration<MatAutocompleteField, "mat-autocomplete-field", never, { "equals": { "alias": "equals"; "required": false; }; "logPrefix": { "alias": "logPrefix"; "required": false; }; "formControl": { "alias": "formControl"; "required": false; }; "formControlName": { "alias": "formControlName"; "required": false; }; "floatLabel": { "alias": "floatLabel"; "required": false; }; "appearance": { "alias": "appearance"; "required": false; }; "subscriptSizing": { "alias": "subscriptSizing"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "suggestFn": { "alias": "suggestFn"; "required": false; }; "required": { "alias": "required"; "required": false; }; "mobile": { "alias": "mobile"; "required": false; }; "clearable": { "alias": "clearable"; "required": false; }; "debounceTime": { "alias": "debounceTime"; "required": false; }; "displayWith": { "alias": "displayWith"; "required": false; }; "displayAttributes": { "alias": "displayAttributes"; "required": false; }; "displayColumnSizes": { "alias": "displayColumnSizes"; "required": false; }; "displayColumnNames": { "alias": "displayColumnNames"; "required": false; }; "highlightAccent": { "alias": "highlightAccent"; "required": false; }; "showAllOnFocus": { "alias": "showAllOnFocus"; "required": false; }; "showPanelOnFocus": { "alias": "showPanelOnFocus"; "required": false; }; "autofocus": { "alias": "autofocus"; "required": false; }; "config": { "alias": "config"; "required": false; }; "i18nPrefix": { "alias": "i18nPrefix"; "required": false; }; "noResultMessage": { "alias": "noResultMessage"; "required": false; }; "panelClass": { "alias": "panelClass"; "required": false; }; "panelWidth": { "alias": "panelWidth"; "required": false; }; "disableRipple": { "alias": "disableRipple"; "required": false; }; "matAutocompletePosition": { "alias": "matAutocompletePosition"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "fetchMoreThreshold": { "alias": "fetchMoreThreshold"; "required": false; }; "suggestLengthThreshold": { "alias": "suggestLengthThreshold"; "required": false; }; "showLoadingSpinner": { "alias": "showLoadingSpinner"; "required": false; }; "debug": { "alias": "debug"; "required": false; }; "showSearchBar": { "alias": "showSearchBar"; "required": false; }; "stickySearchBar": { "alias": "stickySearchBar"; "required": false; }; "applyImplicitValue": { "alias": "applyImplicitValue"; "required": false; }; "dropButtonTitle": { "alias": "dropButtonTitle"; "required": false; }; "clearButtonTitle": { "alias": "clearButtonTitle"; "required": false; }; "filter": { "alias": "filter"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "tabindex": { "alias": "tabindex"; "required": false; }; "items": { "alias": "items"; "required": false; }; }, { "clicked": "click"; "blurred": "blur"; "focused": "focus"; "dropButtonClick": "dropButtonClick"; "keydownEscape": "keydown.escape"; "keyupEnter": "keyup.enter"; "optionSelected": "optionSelected"; }, never, ["[matAfter]", "[matPrefix]", "[matSuffix]", "mat-error,[matError]", "mat-hint:not([align='end']),[matHint]", "mat-hint[align='end']"], false, never>;
143
144
  static ngAcceptInputType_required: unknown;
144
145
  static ngAcceptInputType_mobile: unknown;
145
146
  static ngAcceptInputType_clearable: unknown;
@@ -31,6 +31,7 @@ export declare class NamedFilterSelector extends AppForm<any> implements OnInit
31
31
  autocompleteConfig: MatAutocompleteFieldConfig;
32
32
  dropButtonTitle: string;
33
33
  clearButtonTitle: string;
34
+ detectChangeOnSelectFilter: boolean;
34
35
  filterSelected: EventEmitter<any>;
35
36
  filterDeleted: EventEmitter<NamedFilter<NamedFilter<any>>>;
36
37
  autocompleteField: MatAutocompleteField;
@@ -49,5 +50,5 @@ export declare class NamedFilterSelector extends AppForm<any> implements OnInit
49
50
  protected onFilterChanges(value: NamedFilter | string): Promise<void>;
50
51
  protected setControlValue(value: NamedFilter): void;
51
52
  static ɵfac: i0.ɵɵFactoryDeclaration<NamedFilterSelector, never>;
52
- static ɵcmp: i0.ɵɵComponentDeclaration<NamedFilterSelector, "app-named-filter-selector", never, { "entityName": { "alias": "entityName"; "required": false; }; "appearance": { "alias": "appearance"; "required": false; }; "subscriptSizing": { "alias": "subscriptSizing"; "required": false; }; "filterContentProvider": { "alias": "filterContentProvider"; "required": false; }; "filterImportCallback": { "alias": "filterImportCallback"; "required": false; }; "filterFormDirty": { "alias": "filterFormDirty"; "required": false; }; "showButtons": { "alias": "showButtons"; "required": false; }; "exportFileNamePrefix": { "alias": "exportFileNamePrefix"; "required": false; }; "autocompleteConfig": { "alias": "autocompleteConfig"; "required": false; }; "dropButtonTitle": { "alias": "dropButtonTitle"; "required": false; }; "clearButtonTitle": { "alias": "clearButtonTitle"; "required": false; }; }, { "filterSelected": "filterSelected"; "filterDeleted": "filterDeleted"; }, never, never, false, never>;
53
+ static ɵcmp: i0.ɵɵComponentDeclaration<NamedFilterSelector, "app-named-filter-selector", never, { "entityName": { "alias": "entityName"; "required": false; }; "appearance": { "alias": "appearance"; "required": false; }; "subscriptSizing": { "alias": "subscriptSizing"; "required": false; }; "filterContentProvider": { "alias": "filterContentProvider"; "required": false; }; "filterImportCallback": { "alias": "filterImportCallback"; "required": false; }; "filterFormDirty": { "alias": "filterFormDirty"; "required": false; }; "showButtons": { "alias": "showButtons"; "required": false; }; "exportFileNamePrefix": { "alias": "exportFileNamePrefix"; "required": false; }; "autocompleteConfig": { "alias": "autocompleteConfig"; "required": false; }; "dropButtonTitle": { "alias": "dropButtonTitle"; "required": false; }; "clearButtonTitle": { "alias": "clearButtonTitle"; "required": false; }; "detectChangeOnSelectFilter": { "alias": "detectChangeOnSelectFilter"; "required": false; }; }, { "filterSelected": "filterSelected"; "filterDeleted": "filterDeleted"; }, never, never, false, never>;
53
54
  }
@@ -0,0 +1,31 @@
1
+ import { ChangeDetectorRef, OnDestroy } from '@angular/core';
2
+ import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';
3
+ import { MatAutocompleteFieldConfig } from '../../material/autocomplete/material.autocomplete.config';
4
+ import { NamedFilter } from '../named-filter.model';
5
+ import * as i0 from "@angular/core";
6
+ declare class DummyFilter {
7
+ filterA: string;
8
+ filterB: string;
9
+ filterC: string;
10
+ }
11
+ export declare class NamedFilterSelectorTestingPage implements OnDestroy {
12
+ protected cd: ChangeDetectorRef;
13
+ private _subscription;
14
+ protected _filterForm: UntypedFormGroup;
15
+ protected namedFilterContentProvider: () => object;
16
+ protected namedFilterAutocompleteConfig: MatAutocompleteFieldConfig;
17
+ set filterForm(value: UntypedFormGroup);
18
+ get filterForm(): UntypedFormGroup;
19
+ constructor(cd: ChangeDetectorRef, formBuilder: UntypedFormBuilder);
20
+ ngOnDestroy(): void;
21
+ setFilterForm(filterForm: UntypedFormGroup): void;
22
+ getFilterValue(): any;
23
+ protected markForCheck(): void;
24
+ protected filterImportCallback: (namedFilter: NamedFilter) => Promise<NamedFilter>;
25
+ setFilter(filter: Partial<DummyFilter>, opts?: {
26
+ emitEvent: boolean;
27
+ }): Promise<void>;
28
+ static ɵfac: i0.ɵɵFactoryDeclaration<NamedFilterSelectorTestingPage, never>;
29
+ static ɵcmp: i0.ɵɵComponentDeclaration<NamedFilterSelectorTestingPage, "app-name-filter-selector-testing", never, { "filterForm": { "alias": "filterForm"; "required": false; }; }, {}, never, never, false, never>;
30
+ }
31
+ export {};
@@ -0,0 +1,10 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./named-filter-selector.testing";
3
+ import * as i2 from "@angular/common";
4
+ import * as i3 from "@angular/router";
5
+ import * as i4 from "../../shared.module";
6
+ export declare class NamedFilterSelectorTestingModule {
7
+ static ɵfac: i0.ɵɵFactoryDeclaration<NamedFilterSelectorTestingModule, never>;
8
+ static ɵmod: i0.ɵɵNgModuleDeclaration<NamedFilterSelectorTestingModule, [typeof i1.NamedFilterSelectorTestingPage], [typeof i2.CommonModule, typeof i3.RouterModule, typeof i4.SharedModule], [typeof i3.RouterModule, typeof i1.NamedFilterSelectorTestingPage]>;
9
+ static ɵinj: i0.ɵɵInjectorDeclaration<NamedFilterSelectorTestingModule>;
10
+ }
@@ -10,9 +10,10 @@ import * as i7 from "./image/gallery/testing/gallery.testing.module";
10
10
  import * as i8 from "./audio/audio.testing.module";
11
11
  import * as i9 from "./storage/storage-explorer.testing.module";
12
12
  import * as i10 from "../core/menu/testing/menu.testing.module";
13
+ import * as i11 from "./named-filter/testing/named-filter.testing.module";
13
14
  export declare const SHARED_TESTING_PAGES: TestingPage[];
14
15
  export declare class SharedTestingModule {
15
16
  static ɵfac: i0.ɵɵFactoryDeclaration<SharedTestingModule, never>;
16
- static ɵmod: i0.ɵɵNgModuleDeclaration<SharedTestingModule, never, [typeof i1.CommonModule, typeof i2.IonicModule, typeof i3.TranslateModule, typeof i4.MaterialTestingModule, typeof i5.ToastTestingModule, typeof i6.UploadFileTestingModule, typeof i7.ImageGalleryTestingModule, typeof i8.AudioTestingModule, typeof i9.StorageExplorerTestingModule, typeof i10.MenuTestingModule], [typeof i4.MaterialTestingModule, typeof i5.ToastTestingModule, typeof i6.UploadFileTestingModule, typeof i7.ImageGalleryTestingModule, typeof i8.AudioTestingModule, typeof i9.StorageExplorerTestingModule, typeof i10.MenuTestingModule]>;
17
+ static ɵmod: i0.ɵɵNgModuleDeclaration<SharedTestingModule, never, [typeof i1.CommonModule, typeof i2.IonicModule, typeof i3.TranslateModule, typeof i4.MaterialTestingModule, typeof i5.ToastTestingModule, typeof i6.UploadFileTestingModule, typeof i7.ImageGalleryTestingModule, typeof i8.AudioTestingModule, typeof i9.StorageExplorerTestingModule, typeof i10.MenuTestingModule, typeof i11.NamedFilterSelectorTestingModule], [typeof i4.MaterialTestingModule, typeof i5.ToastTestingModule, typeof i6.UploadFileTestingModule, typeof i7.ImageGalleryTestingModule, typeof i8.AudioTestingModule, typeof i9.StorageExplorerTestingModule, typeof i10.MenuTestingModule, typeof i11.NamedFilterSelectorTestingModule]>;
17
18
  static ɵinj: i0.ɵɵInjectorDeclaration<SharedTestingModule>;
18
19
  }
@@ -125,7 +125,9 @@
125
125
  "ITEMS_PER_PAGE": "Nombre de lignes",
126
126
  "NEXT_PAGE": "Page suivante",
127
127
  "PREVIOUS_PAGE": "Page précédente",
128
- "OF": "sur"
128
+ "OF": "sur",
129
+ "FIRST_PAGE": "Première page",
130
+ "LAST_PAGE": "Dernière page"
129
131
  },
130
132
  "TABLE": {
131
133
  "FILTERED_PARENTHESIS": "(filtré)"