@sumaris-net/ngx-components 18.25.3 → 18.25.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/doc/changelog.md +7 -0
- package/esm2022/public_api.mjs +2 -1
- package/esm2022/src/app/core/form/properties/properties.form.mjs +1 -1
- package/esm2022/src/app/core/table/async-table.class.mjs +41 -40
- package/esm2022/src/app/core/table/testing/nested-table.testing.mjs +1 -1
- package/esm2022/src/app/core/table/testing/table.testing.mjs +1 -1
- package/esm2022/src/app/core/table/testing/table2.testing.mjs +1 -1
- package/esm2022/src/app/shared/form/field.component.mjs +1 -1
- package/esm2022/src/app/shared/material/autocomplete/material.autocomplete.directive.mjs +25 -0
- package/esm2022/src/app/shared/material/autocomplete/material.autocomplete.mjs +20 -18
- package/esm2022/src/app/shared/material/autocomplete/material.autocomplete.module.mjs +6 -5
- package/esm2022/src/app/shared/material/autocomplete/testing/autocomplete.test.mjs +5 -4
- package/esm2022/src/app/shared/named-filter/named-filter-selector.component.mjs +1 -1
- package/fesm2022/sumaris-net.ngx-components.mjs +91 -65
- package/fesm2022/sumaris-net.ngx-components.mjs.map +1 -1
- package/package.json +1 -1
- package/public_api.d.ts +1 -0
- package/src/app/core/table/async-table.class.d.ts +1 -0
- package/src/app/shared/material/autocomplete/material.autocomplete.d.ts +8 -9
- package/src/app/shared/material/autocomplete/material.autocomplete.directive.d.ts +9 -0
- package/src/app/shared/material/autocomplete/material.autocomplete.module.d.ts +18 -17
- package/src/assets/manifest.json +1 -1
- package/src/theme/_ngx-components.scss +15 -5
package/package.json
CHANGED
package/public_api.d.ts
CHANGED
|
@@ -13,6 +13,7 @@ export * from './src/app/shared/material/boolean/boolean.module';
|
|
|
13
13
|
export { MatBooleanField } from './src/app/shared/material/boolean/material.boolean';
|
|
14
14
|
export * from './src/app/shared/material/autocomplete/material.autocomplete.module';
|
|
15
15
|
export * from './src/app/shared/material/autocomplete/material.autocomplete';
|
|
16
|
+
export * from './src/app/shared/material/autocomplete/material.autocomplete.directive';
|
|
16
17
|
export * from './src/app/shared/material/autocomplete/material.autocomplete.config';
|
|
17
18
|
export * from './src/app/shared/material/autocomplete/material.autocomplete.utils';
|
|
18
19
|
export * from './src/app/shared/material/chips/chips.module';
|
|
@@ -50,6 +50,7 @@ export declare abstract class AppAsyncTable<T extends IEntity<T, ID>, F = any, I
|
|
|
50
50
|
protected previouslyEditedRowId: number;
|
|
51
51
|
protected formErrorAdapter: FormErrorTranslator;
|
|
52
52
|
protected readonly destroySubject: Subject<void>;
|
|
53
|
+
protected logPrefix: string;
|
|
53
54
|
excludesColumns: string[];
|
|
54
55
|
displayedColumns: string[];
|
|
55
56
|
errorTranslateOptions: FormErrorTranslateOptions;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, Injector, OnDestroy, OnInit, Renderer2 } from '@angular/core';
|
|
1
|
+
import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, Injector, OnDestroy, OnInit, Renderer2, TemplateRef } from '@angular/core';
|
|
2
2
|
import { ControlValueAccessor, FormGroupDirective, UntypedFormControl } from '@angular/forms';
|
|
3
3
|
import { BehaviorSubject, Observable } from 'rxjs';
|
|
4
4
|
import { SuggestFn } from '../../services/entity-service.class';
|
|
@@ -9,7 +9,6 @@ import { MatAutocomplete, MatAutocompleteSelectedEvent, MatAutocompleteTrigger }
|
|
|
9
9
|
import { IonSearchbar, ModalController } from '@ionic/angular';
|
|
10
10
|
import { MatAutocompleteFieldConfig } from './material.autocomplete.config';
|
|
11
11
|
import { AppFloatLabelType, DisplayFn, EqualsFn } from '../../types';
|
|
12
|
-
import { TemplateRef } from '@angular/core';
|
|
13
12
|
import * as i0 from "@angular/core";
|
|
14
13
|
export interface MatAutocompleteFieldSelectChange {
|
|
15
14
|
source: MatSelect | MatAutocomplete;
|
|
@@ -63,8 +62,8 @@ export declare class MatAutocompleteField implements OnInit, AfterViewInit, OnDe
|
|
|
63
62
|
required: boolean;
|
|
64
63
|
hideRequiredMarker: boolean;
|
|
65
64
|
mobile: boolean;
|
|
66
|
-
|
|
67
|
-
|
|
65
|
+
showPanelHeader: boolean;
|
|
66
|
+
showPanelFooter: boolean;
|
|
68
67
|
clearable: boolean;
|
|
69
68
|
debounceTime: number;
|
|
70
69
|
displaySeparator: string | null;
|
|
@@ -130,8 +129,8 @@ export declare class MatAutocompleteField implements OnInit, AfterViewInit, OnDe
|
|
|
130
129
|
matInputText: ElementRef<HTMLInputElement>;
|
|
131
130
|
autocomplete: MatAutocomplete;
|
|
132
131
|
autocompleteTrigger: MatAutocompleteTrigger;
|
|
133
|
-
|
|
134
|
-
|
|
132
|
+
panelHeaderTemplate?: TemplateRef<any>;
|
|
133
|
+
panelFooterTemplate?: TemplateRef<any>;
|
|
135
134
|
showTooltip: boolean;
|
|
136
135
|
constructor(injector: Injector, el: ElementRef<HTMLElement>, cd: ChangeDetectorRef, modalController: ModalController, renderer: Renderer2, formGroupDir: FormGroupDirective);
|
|
137
136
|
get itemCount(): number;
|
|
@@ -201,12 +200,12 @@ export declare class MatAutocompleteField implements OnInit, AfterViewInit, OnDe
|
|
|
201
200
|
protected onBackspace(event: Event): void;
|
|
202
201
|
protected toggleFavoriteClick(event: UIEvent, value: any): void;
|
|
203
202
|
static ɵfac: i0.ɵɵFactoryDeclaration<MatAutocompleteField, [null, null, null, null, null, { optional: true; }]>;
|
|
204
|
-
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; }; "label": { "alias": "label"; "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; }; "hideRequiredMarker": { "alias": "hideRequiredMarker"; "required": false; }; "mobile": { "alias": "mobile"; "required": false; }; "
|
|
203
|
+
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; }; "label": { "alias": "label"; "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; }; "hideRequiredMarker": { "alias": "hideRequiredMarker"; "required": false; }; "mobile": { "alias": "mobile"; "required": false; }; "showPanelHeader": { "alias": "showPanelHeader"; "required": false; }; "showPanelFooter": { "alias": "showPanelFooter"; "required": false; }; "clearable": { "alias": "clearable"; "required": false; }; "debounceTime": { "alias": "debounceTime"; "required": false; }; "displaySeparator": { "alias": "displaySeparator"; "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; }; "reloadItemsOnFocus": { "alias": "reloadItemsOnFocus"; "required": false; }; "clearInvalidValueOnBlur": { "alias": "clearInvalidValueOnBlur"; "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; }; "trimSearchText": { "alias": "trimSearchText"; "required": false; }; "splitSearchText": { "alias": "splitSearchText"; "required": false; }; "selectInputContentOnFocus": { "alias": "selectInputContentOnFocus"; "required": false; }; "selectInputContentOnFocusDelay": { "alias": "selectInputContentOnFocusDelay"; "required": false; }; "previewImplicitValue": { "alias": "previewImplicitValue"; "required": false; }; "showFavorites": { "alias": "showFavorites"; "required": false; }; "toggleFavoriteTitle": { "alias": "toggleFavoriteTitle"; "required": false; }; "favoriteItems": { "alias": "favoriteItems"; "required": false; }; "colSizes": { "alias": "colSizes"; "required": false; }; "classList": { "alias": "class"; "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"; "keydownBackspace": "keydown.backspace"; "keyupEnter": "keyup.enter"; "arrowUp": "arrowUp"; "arrowDown": "arrowDown"; "enter": "enter"; "selectionChange": "selectionChange"; "openedChange": "openedChange"; "toggleFavorite": "toggleFavorite"; }, ["panelHeaderTemplate", "panelFooterTemplate"], ["[matAfter]", "[matPrefix]", "[matSuffix]", "mat-error,[matError]", "mat-hint:not([align='end']),[matHint]", "mat-hint[align='end']"], false, never>;
|
|
205
204
|
static ngAcceptInputType_required: unknown;
|
|
206
205
|
static ngAcceptInputType_hideRequiredMarker: unknown;
|
|
207
206
|
static ngAcceptInputType_mobile: unknown;
|
|
208
|
-
static
|
|
209
|
-
static
|
|
207
|
+
static ngAcceptInputType_showPanelHeader: unknown;
|
|
208
|
+
static ngAcceptInputType_showPanelFooter: unknown;
|
|
210
209
|
static ngAcceptInputType_clearable: unknown;
|
|
211
210
|
static ngAcceptInputType_debounceTime: unknown;
|
|
212
211
|
static ngAcceptInputType_highlightAccent: unknown;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
export declare class MaterialAutocompleteHeaderDirective {
|
|
3
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<MaterialAutocompleteHeaderDirective, never>;
|
|
4
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<MaterialAutocompleteHeaderDirective, "ng-template[panelHeader]", never, {}, {}, never, never, false, never>;
|
|
5
|
+
}
|
|
6
|
+
export declare class MaterialAutocompleteFooterDirective {
|
|
7
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<MaterialAutocompleteFooterDirective, never>;
|
|
8
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<MaterialAutocompleteFooterDirective, "ng-template[panelFooter]", never, {}, {}, never, never, false, never>;
|
|
9
|
+
}
|
|
@@ -1,23 +1,24 @@
|
|
|
1
1
|
import * as i0 from "@angular/core";
|
|
2
2
|
import * as i1 from "./material.autocomplete";
|
|
3
|
-
import * as i2 from "
|
|
4
|
-
import * as i3 from "@
|
|
5
|
-
import * as i4 from "@angular
|
|
6
|
-
import * as i5 from "@angular/
|
|
7
|
-
import * as i6 from "
|
|
8
|
-
import * as i7 from "../../
|
|
9
|
-
import * as i8 from "../../
|
|
10
|
-
import * as i9 from "
|
|
11
|
-
import * as i10 from "@angular/material/
|
|
12
|
-
import * as i11 from "@angular/material/
|
|
13
|
-
import * as i12 from "@angular/material/
|
|
14
|
-
import * as i13 from "@angular/material/
|
|
15
|
-
import * as i14 from "@angular/material/
|
|
16
|
-
import * as i15 from "@angular/material/
|
|
17
|
-
import * as i16 from "@
|
|
18
|
-
import * as i17 from "@
|
|
3
|
+
import * as i2 from "./material.autocomplete.directive";
|
|
4
|
+
import * as i3 from "@angular/common";
|
|
5
|
+
import * as i4 from "@ionic/angular";
|
|
6
|
+
import * as i5 from "@angular/cdk/scrolling";
|
|
7
|
+
import * as i6 from "@angular/forms";
|
|
8
|
+
import * as i7 from "../../pipes/pipes.module";
|
|
9
|
+
import * as i8 from "../../directives/directives.module";
|
|
10
|
+
import * as i9 from "../../rx-state/rx-state.module";
|
|
11
|
+
import * as i10 from "@angular/material/core";
|
|
12
|
+
import * as i11 from "@angular/material/autocomplete";
|
|
13
|
+
import * as i12 from "@angular/material/form-field";
|
|
14
|
+
import * as i13 from "@angular/material/input";
|
|
15
|
+
import * as i14 from "@angular/material/icon";
|
|
16
|
+
import * as i15 from "@angular/material/button";
|
|
17
|
+
import * as i16 from "@angular/material/select";
|
|
18
|
+
import * as i17 from "@ngx-translate/core";
|
|
19
|
+
import * as i18 from "@angular/material/tooltip";
|
|
19
20
|
export declare class SharedMatAutocompleteModule {
|
|
20
21
|
static ɵfac: i0.ɵɵFactoryDeclaration<SharedMatAutocompleteModule, never>;
|
|
21
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<SharedMatAutocompleteModule, [typeof i1.MatAutocompleteField], [typeof
|
|
22
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<SharedMatAutocompleteModule, [typeof i1.MatAutocompleteField, typeof i2.MaterialAutocompleteHeaderDirective, typeof i2.MaterialAutocompleteFooterDirective], [typeof i3.CommonModule, typeof i4.IonicModule, typeof i5.ScrollingModule, typeof i6.ReactiveFormsModule, typeof i7.SharedPipesModule, typeof i8.SharedDirectivesModule, typeof i9.RxStateModule, typeof i10.MatCommonModule, typeof i11.MatAutocompleteModule, typeof i12.MatFormFieldModule, typeof i13.MatInputModule, typeof i14.MatIconModule, typeof i15.MatButtonModule, typeof i16.MatSelectModule, typeof i10.MatRippleModule, typeof i17.TranslateModule, typeof i18.MatTooltip], [typeof i11.MatAutocompleteModule, typeof i1.MatAutocompleteField, typeof i2.MaterialAutocompleteHeaderDirective, typeof i2.MaterialAutocompleteFooterDirective]>;
|
|
22
23
|
static ɵinj: i0.ɵɵInjectorDeclaration<SharedMatAutocompleteModule>;
|
|
23
24
|
}
|
package/src/assets/manifest.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "ngx-sumaris-components",
|
|
3
3
|
"short_name": "ngx-sumaris-components",
|
|
4
4
|
"manifest_version": 1,
|
|
5
|
-
"version": "18.25.
|
|
5
|
+
"version": "18.25.5",
|
|
6
6
|
"default_locale": "fr",
|
|
7
7
|
"description": "Angular components for building beautiful and responsive Apps",
|
|
8
8
|
"icons": [{
|
|
@@ -194,6 +194,12 @@ mat-option {
|
|
|
194
194
|
padding: 0 !important;
|
|
195
195
|
}
|
|
196
196
|
}
|
|
197
|
+
|
|
198
|
+
/* hide pseudo checkbox, in the footer*/
|
|
199
|
+
&.mat-pseudo-checkbox-hidden mat-pseudo-checkbox {
|
|
200
|
+
visibility: hidden;
|
|
201
|
+
display: none;
|
|
202
|
+
}
|
|
197
203
|
}
|
|
198
204
|
|
|
199
205
|
mat-option:not(:last-of-type) {
|
|
@@ -389,12 +395,14 @@ ion-list,
|
|
|
389
395
|
/* Offset due to mat-pseudo-checkbox */
|
|
390
396
|
padding-left: 32px;
|
|
391
397
|
}
|
|
392
|
-
&.
|
|
398
|
+
&.sticky {
|
|
393
399
|
/* Set header as sticky*/
|
|
394
400
|
position: -webkit-sticky;
|
|
395
401
|
position: sticky;
|
|
396
|
-
top: 0;
|
|
402
|
+
top: var(--top, 0);
|
|
397
403
|
z-index: 1001;
|
|
404
|
+
}
|
|
405
|
+
&.column {
|
|
398
406
|
background-color: var(--ion-color-secondary);
|
|
399
407
|
border-bottom: 1px solid #{$app-select-option-border-color};
|
|
400
408
|
color: var(--ion-color-secondary-contrast);
|
|
@@ -402,16 +410,16 @@ ion-list,
|
|
|
402
410
|
@include font-size(12px);
|
|
403
411
|
font-weight: 500;
|
|
404
412
|
height: 20px;
|
|
413
|
+
--top: var(--header-column-top, 0);
|
|
405
414
|
ion-col {
|
|
406
415
|
white-space: nowrap;
|
|
407
416
|
text-overflow: ellipsis;
|
|
408
417
|
}
|
|
409
418
|
&.mat-select-searchbar-sticky {
|
|
410
419
|
/* offset because of the searchbar height */
|
|
411
|
-
top: var(--ion-searchbar-height, 58px);
|
|
420
|
+
--header-column-top: var(--ion-searchbar-height, 58px);
|
|
412
421
|
}
|
|
413
422
|
}
|
|
414
|
-
|
|
415
423
|
}
|
|
416
424
|
|
|
417
425
|
ion-row.ion-list-footer,
|
|
@@ -422,7 +430,7 @@ ion-list,
|
|
|
422
430
|
/* Set footer as sticky*/
|
|
423
431
|
position: -webkit-sticky;
|
|
424
432
|
position: sticky;
|
|
425
|
-
bottom: 0;
|
|
433
|
+
bottom: var(--footer-bottom, 0);
|
|
426
434
|
z-index: 1001;
|
|
427
435
|
border-top: 1px solid #{$app-select-option-border-color};
|
|
428
436
|
background-color: var(--ion-toolbar-background, #{$ion-toolbar-background});
|
|
@@ -438,6 +446,8 @@ ion-list,
|
|
|
438
446
|
white-space: nowrap;
|
|
439
447
|
text-overflow: ellipsis;
|
|
440
448
|
}
|
|
449
|
+
|
|
450
|
+
|
|
441
451
|
}
|
|
442
452
|
|
|
443
453
|
ion-row {
|