@sumaris-net/ngx-components 2.9.0 → 2.9.1-8.2
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 +29 -0
- package/esm2022/public_api.mjs +3 -3
- package/esm2022/src/app/admin/services/filter/person.filter.mjs +1 -1
- package/esm2022/src/app/core/account/new-token.modal.mjs +1 -1
- package/esm2022/src/app/core/form/entity/entity-editor-modal.class.mjs +1 -1
- package/esm2022/src/app/core/form/entity/entity-editor.class.mjs +1 -1
- package/esm2022/src/app/core/form/form.utils.mjs +9 -3
- package/esm2022/src/app/core/form/properties/properties.table.mjs +1 -1
- package/esm2022/src/app/core/home/home.mjs +49 -24
- package/esm2022/src/app/core/services/errors.mjs +1 -1
- package/esm2022/src/app/core/services/local-settings.service.mjs +9 -8
- package/esm2022/src/app/core/services/model/entity.model.mjs +1 -1
- package/esm2022/src/app/core/services/model/filter.model.mjs +1 -1
- package/esm2022/src/app/core/services/model/tree-item-entity.model.mjs +1 -1
- package/esm2022/src/app/core/services/testing/referential-filter.model.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/forms.mjs +25 -2
- package/esm2022/src/app/shared/functions.mjs +3 -3
- package/esm2022/src/app/shared/material/autocomplete/material.autocomplete.mjs +43 -66
- package/esm2022/src/app/shared/material/autocomplete/testing/autocomplete.test.mjs +1 -1
- package/esm2022/src/app/shared/material/chips/chips.module.mjs +6 -3
- package/esm2022/src/app/shared/material/chips/material.chips.mjs +77 -59
- package/esm2022/src/app/shared/material/chips/testing/chips.test.mjs +3 -6
- package/esm2022/src/app/shared/material/paginator/material.paginator-i18n.mjs +11 -2
- package/esm2022/src/app/shared/named-filter/named-filter-selector.component.mjs +2 -6
- package/esm2022/src/app/shared/services/entity-service.class.mjs +1 -1
- package/esm2022/src/app/shared/services/memory-entity-service.class.mjs +1 -1
- package/esm2022/src/app/shared/types.mjs +1 -1
- package/esm2022/src/app/social/message/message.form.mjs +1 -1
- package/esm2022/src/app/social/message/message.model.mjs +1 -1
- package/esm2022/src/app/social/user-event/notification/user-event-notification.list.mjs +3 -3
- package/esm2022/src/app/social/user-event/testing/user-event.testing.model.mjs +1 -1
- package/fesm2022/sumaris-net.ngx-components.mjs +221 -171
- package/fesm2022/sumaris-net.ngx-components.mjs.map +1 -1
- package/package.json +1 -1
- package/public_api.d.ts +2 -2
- package/src/app/admin/services/filter/person.filter.d.ts +1 -1
- package/src/app/core/form/entity/entity-editor-modal.class.d.ts +1 -1
- package/src/app/core/form/entity/entity-editor.class.d.ts +1 -10
- package/src/app/core/form/form.utils.d.ts +7 -1
- package/src/app/core/form/properties/properties.table.d.ts +1 -2
- package/src/app/core/home/home.d.ts +19 -5
- package/src/app/core/services/errors.d.ts +10 -0
- package/src/app/core/services/local-settings.service.d.ts +3 -1
- package/src/app/core/services/model/entity.model.d.ts +1 -2
- package/src/app/core/services/model/filter.model.d.ts +1 -1
- package/src/app/core/services/model/tree-item-entity.model.d.ts +1 -1
- package/src/app/core/services/testing/referential-filter.model.d.ts +1 -1
- package/src/app/shared/forms.d.ts +4 -0
- package/src/app/shared/material/autocomplete/material.autocomplete.d.ts +10 -11
- package/src/app/shared/material/chips/chips.module.d.ts +2 -1
- package/src/app/shared/material/chips/material.chips.d.ts +8 -4
- package/src/app/shared/services/entity-service.class.d.ts +0 -2
- package/src/app/shared/services/memory-entity-service.class.d.ts +2 -1
- package/src/app/shared/types.d.ts +3 -0
- package/src/app/social/message/message.model.d.ts +1 -1
- package/src/app/social/user-event/testing/user-event.testing.model.d.ts +2 -3
- package/src/assets/i18n/fr.json +3 -1
- package/src/assets/manifest.json +1 -1
- package/src/theme/_ngx-components.forms.scss +43 -3
- package/src/theme/_ngx-components.scss +4 -1
- package/src/theme/_responsive.scss +0 -31
package/package.json
CHANGED
package/public_api.d.ts
CHANGED
|
@@ -155,6 +155,8 @@ export * from './src/app/core/services/pipes/person-to-string.pipe';
|
|
|
155
155
|
export * from './src/app/core/services/pipes/usage-mode.pipes';
|
|
156
156
|
export * from './src/app/core/services/pipes/referential-to-string.pipe';
|
|
157
157
|
export * from './src/app/core/services/pipes/pipes.module';
|
|
158
|
+
export * from './src/app/core/services/base58';
|
|
159
|
+
export * from './src/app/core/services/errors';
|
|
158
160
|
export * from './src/app/core/services/platform.service';
|
|
159
161
|
export * from './src/app/core/services/network.service';
|
|
160
162
|
export * from './src/app/core/services/network.types';
|
|
@@ -164,7 +166,6 @@ export * from './src/app/core/services/local-settings.service';
|
|
|
164
166
|
export * from './src/app/core/services/account.service';
|
|
165
167
|
export * from './src/app/core/services/crypto.service';
|
|
166
168
|
export * from './src/app/core/services/auth-guard.service';
|
|
167
|
-
export * from './src/app/core/services/base58';
|
|
168
169
|
export * from './src/app/core/services/base-graphql-service.class';
|
|
169
170
|
export * from './src/app/core/services/base-entity-service.class';
|
|
170
171
|
export * from './src/app/core/services/storage/entities-storage.service';
|
|
@@ -288,7 +289,6 @@ export * from './src/app/shared/audio/audio.testing.module';
|
|
|
288
289
|
export * from './src/app/core/core.testing.module';
|
|
289
290
|
export * from './src/app/core/services/testing/referential-filter.model';
|
|
290
291
|
export * from './src/app/core/services/testing/referential.validator';
|
|
291
|
-
export * from './src/app/core/services/errors';
|
|
292
292
|
export * from './src/app/core/table/testing/table.testing.module';
|
|
293
293
|
export * from './src/app/core/table/testing/table.testing';
|
|
294
294
|
export * from './src/app/core/table/testing/table2.testing';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { EntityFilter } from '../../../core/services/model/filter.model';
|
|
2
2
|
import { Person } from '../../../core/services/model/person.model';
|
|
3
|
-
import { FilterFn } from '../../../shared/services/entity-service.class';
|
|
4
3
|
import { EntityAsObjectOptions } from '../../../core/services/model/entity.model';
|
|
5
4
|
import { StoreObject } from '@apollo/client/core';
|
|
5
|
+
import { FilterFn } from '../../../shared/types';
|
|
6
6
|
export declare class PersonFilter extends EntityFilter<PersonFilter, Person> {
|
|
7
7
|
static fromObject: (source: any, opts?: any) => PersonFilter;
|
|
8
8
|
static searchFilter(source: any): FilterFn<Person>;
|
|
@@ -6,10 +6,10 @@ import { Entity } from '../../services/model/entity.model';
|
|
|
6
6
|
import { UsageMode } from '../../services/model/settings.model';
|
|
7
7
|
import { FormGroup } from '@angular/forms';
|
|
8
8
|
import { AppTabEditor, AppTabEditorOptions } from './tab-editor.class';
|
|
9
|
+
import { AppErrorWithDetails } from '../../services/errors';
|
|
9
10
|
import { DateFormatService } from '../../../shared/pipes/date-format.pipe';
|
|
10
11
|
import { WaitForOptions } from '../../../shared/observables';
|
|
11
12
|
import { FormErrorTranslator } from '../../../shared/validator/form-error-adapter.class';
|
|
12
|
-
import { AppErrorWithDetails } from './entity-editor.class';
|
|
13
13
|
import * as i0 from "@angular/core";
|
|
14
14
|
export interface IEntityEditorModalOptions<T extends Entity<T, ID> = Entity<any, any>, ID = number> {
|
|
15
15
|
isNew: boolean;
|
|
@@ -6,13 +6,13 @@ import { Entity } from '../../services/model/entity.model';
|
|
|
6
6
|
import { UsageMode } from '../../services/model/settings.model';
|
|
7
7
|
import { FormGroup } from '@angular/forms';
|
|
8
8
|
import { AppTabEditor, AppTabEditorOptions, IAppTabEditor } from './tab-editor.class';
|
|
9
|
+
import { AppErrorWithDetails } from '../../services/errors';
|
|
9
10
|
import { EntityServiceLoadOptions, IEntityService } from '../../../shared/services/entity-service.class';
|
|
10
11
|
import { DateFormatService } from '../../../shared/pipes/date-format.pipe';
|
|
11
12
|
import { Environment } from '../../../../environments/environment.class';
|
|
12
13
|
import { HistoryPageReference } from '../../services/model/history.model';
|
|
13
14
|
import { WaitForOptions } from '../../../shared/observables';
|
|
14
15
|
import { FormErrorTranslator } from '../../../shared/validator/form-error-adapter.class';
|
|
15
|
-
import { FormErrors } from '../../../shared/forms';
|
|
16
16
|
import * as i0 from "@angular/core";
|
|
17
17
|
export interface IAppEntityEditor<T> extends IAppTabEditor<T> {
|
|
18
18
|
usageMode: UsageMode;
|
|
@@ -34,15 +34,6 @@ export declare class AppEditorOptions extends AppTabEditorOptions {
|
|
|
34
34
|
autoOpenNextTab?: boolean;
|
|
35
35
|
i18nPrefix?: string;
|
|
36
36
|
}
|
|
37
|
-
export interface AppError {
|
|
38
|
-
code?: number;
|
|
39
|
-
message?: string;
|
|
40
|
-
}
|
|
41
|
-
export interface AppErrorWithDetails extends AppError {
|
|
42
|
-
details: AppError & {
|
|
43
|
-
errors?: FormErrors;
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
37
|
export declare abstract class AppEntityEditor<T extends Entity<T, ID>, S extends IEntityService<T, ID> = IEntityService<T, any>, ID = number, LO extends EntityServiceLoadOptions = EntityServiceLoadOptions> extends AppTabEditor<T, ID, LO> implements OnInit, OnDestroy, AfterViewInit, IAppEntityEditor<T> {
|
|
47
38
|
protected dataType: new () => T;
|
|
48
39
|
protected dataService?: S;
|
|
@@ -2,7 +2,7 @@ import { AbstractControl, AbstractControlOptions, UntypedFormArray, UntypedFormB
|
|
|
2
2
|
import { Entity } from '../services/model/entity.model';
|
|
3
3
|
import { filterNumberInput, selectInputContent } from '../../shared/inputs';
|
|
4
4
|
import { WaitForOptions } from '../../shared/observables';
|
|
5
|
-
import { addValueInArray, clearValueInArray, copyEntity2Form, disableControls, getControlFromPath, getFormErrors, getFormValueFromEntity, logFormErrors, markAllAsTouched, markAsUntouched, removeValueInArray, resizeArray, updateValueAndValidity, waitIdle, waitWhilePending } from '../../shared/forms';
|
|
5
|
+
import { addValueInArray, clearValueInArray, copyEntity2Form, disableControls, filterFormErrors, filterFormErrorsByPath, filterFormErrorsByPrefix, getControlFromPath, getFormErrors, getFormValueFromEntity, logFormErrors, markAllAsTouched, markAsUntouched, removeValueInArray, resizeArray, updateValueAndValidity, waitIdle, waitWhilePending } from '../../shared/forms';
|
|
6
6
|
export declare type IAppFormGetter = () => IAppForm;
|
|
7
7
|
export declare interface OnReady {
|
|
8
8
|
ngOnReady(): any;
|
|
@@ -321,6 +321,9 @@ export declare class AppFormArray<T extends Entity<T>, C extends AbstractControl
|
|
|
321
321
|
removeAllEmpty(): void;
|
|
322
322
|
protected setAllowEmptyArray(value: boolean): void;
|
|
323
323
|
}
|
|
324
|
+
/**
|
|
325
|
+
* Helper class, for angular forms
|
|
326
|
+
*/
|
|
324
327
|
export declare class AppFormUtils {
|
|
325
328
|
static copyEntity2Form: typeof copyEntity2Form;
|
|
326
329
|
static getFormValueFromEntity: typeof getFormValueFromEntity;
|
|
@@ -354,6 +357,9 @@ export declare class AppFormUtils {
|
|
|
354
357
|
static isControlHasInput: typeof isControlHasInput;
|
|
355
358
|
static setCalculatedValue: typeof setCalculatedValue;
|
|
356
359
|
static resetCalculatedValue: typeof resetCalculatedValue;
|
|
360
|
+
static filterErrorsByPrefix: typeof filterFormErrorsByPrefix;
|
|
361
|
+
static filterErrorsByPath: typeof filterFormErrorsByPath;
|
|
362
|
+
static filterErrors: typeof filterFormErrors;
|
|
357
363
|
}
|
|
358
364
|
export declare function isControlHasInput(controls: {
|
|
359
365
|
[key: string]: AbstractControl;
|
|
@@ -4,11 +4,10 @@ import { Entity, EntityAsObjectOptions } from '../../services/model/entity.model
|
|
|
4
4
|
import { AppValidatorService } from '../../services/validator/base.validator.class';
|
|
5
5
|
import { AbstractControl, UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';
|
|
6
6
|
import { FormFieldDefinition, FormFieldDefinitionMap } from '../../../shared/form/field.model';
|
|
7
|
-
import { FilterFn } from '../../../shared/services/entity-service.class';
|
|
8
7
|
import { Environment } from '../../../../environments/environment.class';
|
|
9
8
|
import { TableElement } from '@e-is/ngx-material-table';
|
|
10
9
|
import { EntityFilter } from '../../services/model/filter.model';
|
|
11
|
-
import { ObjectMap } from '../../../shared/types';
|
|
10
|
+
import { FilterFn, ObjectMap } from '../../../shared/types';
|
|
12
11
|
import { MatExpansionPanel } from '@angular/material/expansion';
|
|
13
12
|
import * as i0 from "@angular/core";
|
|
14
13
|
interface TranslatedFormFieldDefinition extends FormFieldDefinition {
|
|
@@ -15,10 +15,17 @@ import { IMenuItem } from '../menu/menu.model';
|
|
|
15
15
|
import { ShowToastOptions } from '../../shared/toast/toasts';
|
|
16
16
|
import { Environment } from '../../../environments/environment.class';
|
|
17
17
|
import { HistoryPageReference } from '../services/model/history.model';
|
|
18
|
+
import { RxState } from '@rx-angular/state';
|
|
18
19
|
import * as i0 from "@angular/core";
|
|
19
20
|
export declare const getRandomImage: (files: string[]) => string;
|
|
20
21
|
export declare const APP_HOME_BUTTONS: InjectionToken<IMenuItem[]>;
|
|
21
|
-
export
|
|
22
|
+
export interface HomePageState {
|
|
23
|
+
loading: boolean;
|
|
24
|
+
showSpinner: boolean;
|
|
25
|
+
showPartnerBanner: boolean;
|
|
26
|
+
pageHistory: HistoryPageReference[];
|
|
27
|
+
}
|
|
28
|
+
export declare class HomePage extends RxState<HomePageState> implements OnDestroy {
|
|
22
29
|
private accountService;
|
|
23
30
|
private modalCtrl;
|
|
24
31
|
private translate;
|
|
@@ -34,13 +41,12 @@ export declare class HomePage implements OnDestroy {
|
|
|
34
41
|
private readonly _debug;
|
|
35
42
|
private _subscription;
|
|
36
43
|
private _config;
|
|
37
|
-
|
|
44
|
+
protected pageHistory$: import("rxjs").Observable<HistoryPageReference[]>;
|
|
45
|
+
protected loading$: import("rxjs").Observable<boolean>;
|
|
38
46
|
waitingNetwork: boolean;
|
|
39
|
-
showSpinner: boolean;
|
|
40
47
|
accountName: string;
|
|
41
48
|
isLogin: boolean;
|
|
42
49
|
$partners: BehaviorSubject<Department[]>;
|
|
43
|
-
loadingBanner: boolean;
|
|
44
50
|
logo: string;
|
|
45
51
|
description: string;
|
|
46
52
|
appName: string;
|
|
@@ -48,10 +54,17 @@ export declare class HomePage implements OnDestroy {
|
|
|
48
54
|
canRegister: boolean;
|
|
49
55
|
contentStyle: any;
|
|
50
56
|
contentCredits: string;
|
|
51
|
-
pageHistory: HistoryPageReference[];
|
|
52
57
|
offline: boolean;
|
|
53
58
|
$filteredButtons: BehaviorSubject<IMenuItem[]>;
|
|
54
59
|
readonly showAccountButton: boolean;
|
|
60
|
+
set pageHistory(value: HistoryPageReference[]);
|
|
61
|
+
get pageHistory(): HistoryPageReference[];
|
|
62
|
+
set loading(value: boolean);
|
|
63
|
+
get loading(): boolean;
|
|
64
|
+
set showSpinner(value: boolean);
|
|
65
|
+
get showSpinner(): boolean;
|
|
66
|
+
set showPartnerBanner(value: boolean);
|
|
67
|
+
get showPartnerBanner(): boolean;
|
|
55
68
|
get currentLocaleCode(): string;
|
|
56
69
|
constructor(accountService: AccountService, modalCtrl: ModalController, translate: TranslateService, toastController: ToastController, configService: ConfigService, platform: PlatformService, cd: ChangeDetectorRef, network: NetworkService, settings: LocalSettingsService, environment: Environment, locales: LocaleConfig[], buttons: IMenuItem[]);
|
|
57
70
|
ngOnDestroy(): void;
|
|
@@ -68,6 +81,7 @@ export declare class HomePage implements OnDestroy {
|
|
|
68
81
|
protected onLogin(account: Account): void;
|
|
69
82
|
protected onLogout(): void;
|
|
70
83
|
protected refreshButtons(account?: Account): void;
|
|
84
|
+
protected removePageHistory(path: string): Promise<void>;
|
|
71
85
|
protected markForCheck(): void;
|
|
72
86
|
static ɵfac: i0.ɵɵFactoryDeclaration<HomePage, [null, null, null, null, null, null, null, null, null, null, null, { optional: true; }]>;
|
|
73
87
|
static ɵcmp: i0.ɵɵComponentDeclaration<HomePage, "app-page-home", never, {}, {}, never, never, false, never>;
|
|
@@ -1,3 +1,13 @@
|
|
|
1
|
+
import { FormErrors } from '../../shared/forms';
|
|
2
|
+
export interface AppError {
|
|
3
|
+
code?: number;
|
|
4
|
+
message?: string;
|
|
5
|
+
}
|
|
6
|
+
export interface AppErrorWithDetails extends AppError {
|
|
7
|
+
details: AppError & {
|
|
8
|
+
errors?: FormErrors;
|
|
9
|
+
};
|
|
10
|
+
}
|
|
1
11
|
export declare interface ServiceError {
|
|
2
12
|
code: number;
|
|
3
13
|
message: string;
|
|
@@ -81,7 +81,9 @@ export declare class LocalSettingsService extends StartableService<LocalSettings
|
|
|
81
81
|
addToPageHistory(page: HistoryPageReference, opts?: AddToPageHistoryOptions, pageHistory?: HistoryPageReference[]): Promise<void>;
|
|
82
82
|
removePageHistory(path: string, opts?: {
|
|
83
83
|
emitEvent?: boolean;
|
|
84
|
-
|
|
84
|
+
persistImmediate?: boolean;
|
|
85
|
+
}, pageHistory?: HistoryPageReference[], // used for recursive call to children)
|
|
86
|
+
depth?: number): any;
|
|
85
87
|
clearPageHistory(): Promise<void>;
|
|
86
88
|
protected ngOnStop(): Promise<void>;
|
|
87
89
|
private resetData;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { Moment } from 'moment';
|
|
2
2
|
import { getPropertyByPath } from '../../../shared/functions';
|
|
3
|
-
import { FilterFn } from '../../../shared/
|
|
4
|
-
import { ObjectMap, ObjectMapEntry, PropertiesArray, PropertiesMap } from '../../../shared/types';
|
|
3
|
+
import { FilterFn, ObjectMap, ObjectMapEntry, PropertiesArray, PropertiesMap } from '../../../shared/types';
|
|
5
4
|
import { StoreObject } from '@apollo/client/core';
|
|
6
5
|
import { TreeItemEntityUtils } from './tree-item-entity.model';
|
|
7
6
|
import { SortDirection } from '@angular/material/sort';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Entity, EntityAsObjectOptions, IEntity } from './entity.model';
|
|
2
|
-
import { FilterFn } from '../../../shared/
|
|
2
|
+
import { FilterFn } from '../../../shared/types';
|
|
3
3
|
export interface IEntityFilter<F extends IEntityFilter<F, T, ID, AO, FO>, T extends IEntity<T, any>, ID = number, AO extends EntityAsObjectOptions = EntityAsObjectOptions, FO = any> extends IEntity<F, ID, AO, FO> {
|
|
4
4
|
asPodObject(): any;
|
|
5
5
|
asFilterFn(): FilterFn<T>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { IEntity } from './entity.model';
|
|
2
|
-
import { FilterFn } from '../../../shared/services/entity-service.class';
|
|
3
2
|
import { EntityFilter } from './filter.model';
|
|
3
|
+
import { FilterFn } from '../../../shared/types';
|
|
4
4
|
export declare interface ITreeItemEntity<T extends IEntity<T, ID>, ID = number> {
|
|
5
5
|
parentId: ID;
|
|
6
6
|
parent: T;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { EntityFilter } from '../model/filter.model';
|
|
2
2
|
import { Referential } from '../model/referential.model';
|
|
3
|
-
import { FilterFn } from '../../../shared/
|
|
3
|
+
import { FilterFn } from '../../../shared/types';
|
|
4
4
|
export declare class ReferentialFilter extends EntityFilter<ReferentialFilter, Referential> {
|
|
5
5
|
static fromObject: (source: any, opts?: any) => ReferentialFilter;
|
|
6
6
|
searchText: string;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { AbstractControl, UntypedFormArray, UntypedFormGroup, ValidationErrors } from '@angular/forms';
|
|
2
2
|
import { WaitForOptions } from './observables';
|
|
3
|
+
import { Predicate } from '@angular/core';
|
|
3
4
|
export interface FormErrors {
|
|
4
5
|
[key: string]: ValidationErrors;
|
|
5
6
|
}
|
|
@@ -91,3 +92,6 @@ export declare function waitWhilePending<T extends {
|
|
|
91
92
|
export declare function waitIdle<T extends {
|
|
92
93
|
loading: boolean;
|
|
93
94
|
}>(form: T, opts?: WaitForOptions): Promise<void>;
|
|
95
|
+
export declare function filterFormErrorsByPrefix(errors: FormErrors, ...prefixes: string[]): FormErrors;
|
|
96
|
+
export declare function filterFormErrorsByPath(errors: FormErrors, filter: Predicate<string>): FormErrors;
|
|
97
|
+
export declare function filterFormErrors(errors: FormErrors, filter: Predicate<[string, any]>): FormErrors;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, OnDestroy, OnInit, Renderer2
|
|
1
|
+
import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, OnDestroy, OnInit, Renderer2 } 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';
|
|
@@ -14,7 +14,6 @@ export declare class MatAutocompleteField implements OnInit, AfterViewInit, OnDe
|
|
|
14
14
|
protected cd: ChangeDetectorRef;
|
|
15
15
|
protected modalController: ModalController;
|
|
16
16
|
protected renderer: Renderer2;
|
|
17
|
-
private viewRef;
|
|
18
17
|
private formGroupDir;
|
|
19
18
|
private _onChangeCallback;
|
|
20
19
|
private _onTouchedCallback;
|
|
@@ -60,6 +59,7 @@ export declare class MatAutocompleteField implements OnInit, AfterViewInit, OnDe
|
|
|
60
59
|
noResultMessage: string;
|
|
61
60
|
panelClass: string;
|
|
62
61
|
panelWidth: string;
|
|
62
|
+
disableRipple: boolean;
|
|
63
63
|
matAutocompletePosition: 'auto' | 'above' | 'below';
|
|
64
64
|
multiple: boolean;
|
|
65
65
|
fetchMoreThreshold: string;
|
|
@@ -68,22 +68,21 @@ export declare class MatAutocompleteField implements OnInit, AfterViewInit, OnDe
|
|
|
68
68
|
debug: boolean;
|
|
69
69
|
showSearchBar: boolean;
|
|
70
70
|
stickySearchBar: boolean;
|
|
71
|
-
|
|
72
|
-
applyImplicitValue: boolean | (() => boolean);
|
|
71
|
+
applyImplicitValue: boolean | ((value: any) => boolean);
|
|
73
72
|
dropButtonTitle: string;
|
|
74
73
|
clearButtonTitle: string;
|
|
75
74
|
clicked: EventEmitter<MouseEvent>;
|
|
76
75
|
blurred: EventEmitter<FocusEvent>;
|
|
77
76
|
focused: EventEmitter<FocusEvent>;
|
|
78
77
|
dropButtonClick: EventEmitter<Event>;
|
|
79
|
-
keydownEscape: EventEmitter<
|
|
80
|
-
keyupEnter: EventEmitter<
|
|
78
|
+
keydownEscape: EventEmitter<Event>;
|
|
79
|
+
keyupEnter: EventEmitter<Event>;
|
|
81
80
|
matSelect: MatSelect;
|
|
82
81
|
ionSearchbar: IonSearchbar;
|
|
83
82
|
matInputText: ElementRef;
|
|
84
83
|
autocomplete: MatAutocomplete;
|
|
85
84
|
autocompleteTrigger: MatAutocompleteTrigger;
|
|
86
|
-
constructor(cd: ChangeDetectorRef, modalController: ModalController, renderer: Renderer2,
|
|
85
|
+
constructor(cd: ChangeDetectorRef, modalController: ModalController, renderer: Renderer2, formGroupDir: FormGroupDirective);
|
|
87
86
|
get itemCount(): number;
|
|
88
87
|
get canFetchMore(): boolean;
|
|
89
88
|
set filter(value: any);
|
|
@@ -98,7 +97,6 @@ export declare class MatAutocompleteField implements OnInit, AfterViewInit, OnDe
|
|
|
98
97
|
get disabled(): boolean;
|
|
99
98
|
get enabled(): boolean;
|
|
100
99
|
get loading(): boolean;
|
|
101
|
-
get desktop(): boolean;
|
|
102
100
|
ngOnInit(): void;
|
|
103
101
|
ngAfterViewInit(): void;
|
|
104
102
|
ngOnDestroy(): void;
|
|
@@ -140,8 +138,8 @@ export declare class MatAutocompleteField implements OnInit, AfterViewInit, OnDe
|
|
|
140
138
|
* @private
|
|
141
139
|
*/
|
|
142
140
|
private _fixSearchbarOverlay;
|
|
143
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<MatAutocompleteField, [null, null, null,
|
|
144
|
-
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; }; "
|
|
141
|
+
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>;
|
|
145
143
|
static ngAcceptInputType_required: unknown;
|
|
146
144
|
static ngAcceptInputType_mobile: unknown;
|
|
147
145
|
static ngAcceptInputType_clearable: unknown;
|
|
@@ -150,11 +148,12 @@ export declare class MatAutocompleteField implements OnInit, AfterViewInit, OnDe
|
|
|
150
148
|
static ngAcceptInputType_showAllOnFocus: unknown;
|
|
151
149
|
static ngAcceptInputType_showPanelOnFocus: unknown;
|
|
152
150
|
static ngAcceptInputType_autofocus: unknown;
|
|
151
|
+
static ngAcceptInputType_disableRipple: unknown;
|
|
153
152
|
static ngAcceptInputType_multiple: unknown;
|
|
154
153
|
static ngAcceptInputType_suggestLengthThreshold: unknown;
|
|
155
154
|
static ngAcceptInputType_showLoadingSpinner: unknown;
|
|
156
155
|
static ngAcceptInputType_debug: unknown;
|
|
157
156
|
static ngAcceptInputType_showSearchBar: unknown;
|
|
158
157
|
static ngAcceptInputType_stickySearchBar: unknown;
|
|
159
|
-
static
|
|
158
|
+
static ngAcceptInputType_readonly: unknown;
|
|
160
159
|
}
|
|
@@ -14,8 +14,9 @@ import * as i12 from "@angular/material/button";
|
|
|
14
14
|
import * as i13 from "@angular/material/select";
|
|
15
15
|
import * as i14 from "@angular/material/chips";
|
|
16
16
|
import * as i15 from "@ngx-translate/core";
|
|
17
|
+
import * as i16 from "../../rx-state.module";
|
|
17
18
|
export declare class SharedMatChipsModule {
|
|
18
19
|
static ɵfac: i0.ɵɵFactoryDeclaration<SharedMatChipsModule, never>;
|
|
19
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<SharedMatChipsModule, [typeof i1.MatChipsField], [typeof i2.CommonModule, typeof i3.IonicModule, typeof i4.ReactiveFormsModule, typeof i5.SharedPipesModule, typeof i6.SharedDirectivesModule, typeof i7.MatCommonModule, typeof i8.MatAutocompleteModule, typeof i9.MatFormFieldModule, typeof i10.MatInputModule, typeof i11.MatIconModule, typeof i12.MatButtonModule, typeof i13.MatSelectModule, typeof i14.MatChipsModule, typeof i15.TranslateModule], [typeof i1.MatChipsField]>;
|
|
20
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<SharedMatChipsModule, [typeof i1.MatChipsField], [typeof i2.CommonModule, typeof i3.IonicModule, typeof i4.ReactiveFormsModule, typeof i5.SharedPipesModule, typeof i6.SharedDirectivesModule, typeof i7.MatCommonModule, typeof i8.MatAutocompleteModule, typeof i9.MatFormFieldModule, typeof i10.MatInputModule, typeof i11.MatIconModule, typeof i12.MatButtonModule, typeof i13.MatSelectModule, typeof i14.MatChipsModule, typeof i15.TranslateModule, typeof i16.RxStateModule], [typeof i1.MatChipsField]>;
|
|
20
21
|
static ɵinj: i0.ɵɵInjectorDeclaration<SharedMatChipsModule>;
|
|
21
22
|
}
|
|
@@ -7,7 +7,7 @@ import { AppFloatLabelType, DisplayFn, EqualsFn } from '../../form/field.model';
|
|
|
7
7
|
import { ThemePalette } from '@angular/material/core';
|
|
8
8
|
import { MatAutocompleteFieldConfig } from '../autocomplete/material.autocomplete.config';
|
|
9
9
|
import { MatFormFieldAppearance, SubscriptSizing } from '@angular/material/form-field';
|
|
10
|
-
import { MatAutocomplete,
|
|
10
|
+
import { MatAutocomplete, MatAutocompleteTrigger } from '@angular/material/autocomplete';
|
|
11
11
|
import * as i0 from "@angular/core";
|
|
12
12
|
export declare class MatChipsField implements OnInit, OnDestroy, InputElement, ControlValueAccessor {
|
|
13
13
|
protected cd: ChangeDetectorRef;
|
|
@@ -55,6 +55,7 @@ export declare class MatChipsField implements OnInit, OnDestroy, InputElement, C
|
|
|
55
55
|
noResultMessage: string;
|
|
56
56
|
panelClass: string;
|
|
57
57
|
panelWidth: string;
|
|
58
|
+
disableRipple: boolean;
|
|
58
59
|
matAutocompletePosition: 'auto' | 'above' | 'below';
|
|
59
60
|
itemSize: string;
|
|
60
61
|
fetchMoreThreshold: string;
|
|
@@ -62,6 +63,7 @@ export declare class MatChipsField implements OnInit, OnDestroy, InputElement, C
|
|
|
62
63
|
showLoadingSpinner: boolean;
|
|
63
64
|
chipColor: ThemePalette;
|
|
64
65
|
debug: boolean;
|
|
66
|
+
applyImplicitValue: boolean | ((value: any) => boolean);
|
|
65
67
|
dropButtonTitle: string;
|
|
66
68
|
clearButtonTitle: string;
|
|
67
69
|
clicked: EventEmitter<MouseEvent>;
|
|
@@ -91,9 +93,9 @@ export declare class MatChipsField implements OnInit, OnDestroy, InputElement, C
|
|
|
91
93
|
/**
|
|
92
94
|
* Add item to chips
|
|
93
95
|
*
|
|
94
|
-
* @param
|
|
96
|
+
* @param item
|
|
95
97
|
*/
|
|
96
|
-
add(
|
|
98
|
+
add(item: any): void;
|
|
97
99
|
/**
|
|
98
100
|
* Remove item from chips
|
|
99
101
|
*
|
|
@@ -124,7 +126,7 @@ export declare class MatChipsField implements OnInit, OnDestroy, InputElement, C
|
|
|
124
126
|
private markForCheck;
|
|
125
127
|
private markAsLoading;
|
|
126
128
|
static ɵfac: i0.ɵɵFactoryDeclaration<MatChipsField, [null, { optional: true; }]>;
|
|
127
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<MatChipsField, "mat-chips-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; }; "readonly": { "alias": "readonly"; "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": "
|
|
129
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<MatChipsField, "mat-chips-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; }; "readonly": { "alias": "readonly"; "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; }; "itemSize": { "alias": "itemSize"; "required": false; }; "fetchMoreThreshold": { "alias": "fetchMoreThreshold"; "required": false; }; "suggestLengthThreshold": { "alias": "suggestLengthThreshold"; "required": false; }; "showLoadingSpinner": { "alias": "showLoadingSpinner"; "required": false; }; "chipColor": { "alias": "chipColor"; "required": false; }; "debug": { "alias": "debug"; "required": false; }; "applyImplicitValue": { "alias": "applyImplicitValue"; "required": false; }; "dropButtonTitle": { "alias": "dropButtonTitle"; "required": false; }; "clearButtonTitle": { "alias": "clearButtonTitle"; "required": false; }; "filter": { "alias": "filter"; "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>;
|
|
128
130
|
static ngAcceptInputType_required: unknown;
|
|
129
131
|
static ngAcceptInputType_mobile: unknown;
|
|
130
132
|
static ngAcceptInputType_readonly: unknown;
|
|
@@ -134,6 +136,8 @@ export declare class MatChipsField implements OnInit, OnDestroy, InputElement, C
|
|
|
134
136
|
static ngAcceptInputType_showAllOnFocus: unknown;
|
|
135
137
|
static ngAcceptInputType_showPanelOnFocus: unknown;
|
|
136
138
|
static ngAcceptInputType_autofocus: unknown;
|
|
139
|
+
static ngAcceptInputType_disableRipple: unknown;
|
|
140
|
+
static ngAcceptInputType_suggestLengthThreshold: unknown;
|
|
137
141
|
static ngAcceptInputType_showLoadingSpinner: unknown;
|
|
138
142
|
static ngAcceptInputType_debug: unknown;
|
|
139
143
|
}
|
|
@@ -22,8 +22,6 @@ export declare type SuggestFn<T, F> = (value: any, filter?: F, sortBy?: string |
|
|
|
22
22
|
export declare interface SuggestService<T, F> {
|
|
23
23
|
suggest: SuggestFn<T, F>;
|
|
24
24
|
}
|
|
25
|
-
export declare type FilterFn<T> = (data: T) => boolean;
|
|
26
|
-
export declare type FilterFnFactory<T, F> = (filter: F) => FilterFn<T>;
|
|
27
25
|
export declare interface EntityServiceLoadOptions {
|
|
28
26
|
fetchPolicy?: FetchPolicy;
|
|
29
27
|
trash?: boolean;
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { BehaviorSubject, Observable } from 'rxjs';
|
|
2
|
-
import { EntitiesServiceLoadOptions, EntitiesServiceWatchOptions,
|
|
2
|
+
import { EntitiesServiceLoadOptions, EntitiesServiceWatchOptions, IEntitiesService, LoadResult } from './entity-service.class';
|
|
3
3
|
import { SortDirection } from '@angular/material/sort';
|
|
4
4
|
import { OnDestroy } from '@angular/core';
|
|
5
5
|
import { IEntity } from '../../core/services/model/entity.model';
|
|
6
6
|
import { WaitForOptions } from '../observables';
|
|
7
7
|
import { StartableObservableService } from './startable-observable-service.class';
|
|
8
|
+
import { FilterFn, FilterFnFactory } from '../types';
|
|
8
9
|
import * as i0 from "@angular/core";
|
|
9
10
|
export interface InMemoryEntitiesServiceOptions<T, F> {
|
|
10
11
|
onSort?: (data: T[], sortBy?: string, sortDirection?: SortDirection) => T[];
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ThemePalette } from '@angular/material/core';
|
|
2
2
|
import { PredefinedColors } from '@ionic/core';
|
|
3
|
+
import { Predicate } from '@angular/core';
|
|
3
4
|
export declare type KeyType = string | number;
|
|
4
5
|
export declare type KeyValueType<T> = {
|
|
5
6
|
[key in KeyType]: T;
|
|
@@ -24,3 +25,5 @@ export declare interface IconRef {
|
|
|
24
25
|
matSvgIcon?: string;
|
|
25
26
|
color?: AppColors;
|
|
26
27
|
}
|
|
28
|
+
export declare type FilterFn<T> = Predicate<T>;
|
|
29
|
+
export declare type FilterFnFactory<T, F> = (filter: F) => FilterFn<T>;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Entity, EntityAsObjectOptions } from '../../core/services/model/entity.model';
|
|
2
2
|
import { StoreObject } from '@apollo/client/core';
|
|
3
3
|
import { EntityFilter } from '../../core/services/model/filter.model';
|
|
4
|
-
import { FilterFn } from '../../shared/services/entity-service.class';
|
|
5
4
|
import { Person } from '../../core/services/model/person.model';
|
|
6
5
|
import { PersonFilter } from '../../admin/services/filter/person.filter';
|
|
6
|
+
import { FilterFn } from '../../shared/types';
|
|
7
7
|
export declare const MessageTypes: {
|
|
8
8
|
INBOX_MESSAGE: string;
|
|
9
9
|
EMAIL: string;
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { Entity, EntityAsObjectOptions } from '../../../core/services/model/entity.model';
|
|
2
2
|
import { Moment } from 'moment';
|
|
3
|
-
import { IconRef } from '../../../shared/types';
|
|
4
|
-
import { EventLevel, IUserEvent,
|
|
3
|
+
import { FilterFn, IconRef } from '../../../shared/types';
|
|
4
|
+
import { EventLevel, IUserEvent, IUserEventAction, IUserEventFilter } from '../user-event.model';
|
|
5
5
|
import { EntityFilter } from '../../../core/services/model/filter.model';
|
|
6
|
-
import { FilterFn } from '../../../shared/services/entity-service.class';
|
|
7
6
|
import { StoreObject } from '@apollo/client/core';
|
|
8
7
|
export declare class UserEventTest extends Entity<UserEventTest> implements IUserEvent<UserEventTest> {
|
|
9
8
|
static fromObject: (source: any, opts?: any) => UserEventTest;
|
package/src/assets/i18n/fr.json
CHANGED
|
@@ -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é)"
|
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": "2.9.
|
|
5
|
+
"version": "2.9.18",
|
|
6
6
|
"default_locale": "fr",
|
|
7
7
|
"description": "Angular components for building beautiful and responsive Apps",
|
|
8
8
|
"icons": [{
|
|
@@ -191,24 +191,64 @@ ion-grid.form-container {
|
|
|
191
191
|
padding: 0;
|
|
192
192
|
|
|
193
193
|
& > ion-col {
|
|
194
|
-
|
|
195
194
|
// No top/bottom padding between grid cell
|
|
196
195
|
padding-bottom: 0;
|
|
197
196
|
padding-top: 0;
|
|
198
197
|
|
|
199
198
|
& > ion-label {
|
|
200
199
|
color: var(--ion-color-primary100);
|
|
201
|
-
padding-inline-end: 5px;
|
|
202
200
|
}
|
|
203
201
|
|
|
204
|
-
& > ion-label[text-wrap]
|
|
202
|
+
& > ion-label[text-wrap],
|
|
203
|
+
& > ion-label.ion-text-wrap {
|
|
205
204
|
word-wrap: normal;
|
|
206
205
|
white-space: normal;
|
|
206
|
+
line-height: 1rem !important;
|
|
207
207
|
}
|
|
208
208
|
}
|
|
209
209
|
}
|
|
210
210
|
}
|
|
211
211
|
|
|
212
|
+
|
|
213
|
+
// --------------------------------------------------
|
|
214
|
+
// Forms
|
|
215
|
+
// --------------------------------------------------
|
|
216
|
+
// On small screen, align label on left
|
|
217
|
+
@media screen and (max-width: $screen-sm-max) {
|
|
218
|
+
form.form-container > ion-grid,
|
|
219
|
+
ion-grid.form-container {
|
|
220
|
+
ion-col > ion-label.ion-float-center,
|
|
221
|
+
ion-col > ion-label.ion-float-end {
|
|
222
|
+
display: block;
|
|
223
|
+
width: 100%;
|
|
224
|
+
text-align: start !important;
|
|
225
|
+
line-height: 37px;
|
|
226
|
+
min-height: 37px;
|
|
227
|
+
margin-top: 0;
|
|
228
|
+
margin-bottom: 0;
|
|
229
|
+
margin-right: 0;
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
// On large screen, align label on right
|
|
235
|
+
@media screen and (min-width: $screen-md) {
|
|
236
|
+
|
|
237
|
+
form.form-container > ion-grid,
|
|
238
|
+
ion-grid.form-container {
|
|
239
|
+
ion-col > ion-label.ion-float-center,
|
|
240
|
+
ion-col > ion-label.ion-float-end {
|
|
241
|
+
display: block;
|
|
242
|
+
text-align: end !important;
|
|
243
|
+
min-height: var(--mat-form-field-container-height, 45px);
|
|
244
|
+
margin-top: 11px;
|
|
245
|
+
margin-bottom: 11px;
|
|
246
|
+
padding-inline-end: 5px;
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
|
|
212
252
|
// TODO: activer ce code et tester les mat-select en dark mode
|
|
213
253
|
//html {
|
|
214
254
|
// div.mat-mdc-select-panel {
|
|
@@ -255,7 +255,10 @@ mat-option:not(:last-of-type) {
|
|
|
255
255
|
|
|
256
256
|
// FIXME : This is a workaround find at : https://github.com/angular/components/issues/26000#issuecomment-1563107933
|
|
257
257
|
.cdk-overlay-pane.mat-select-panel-fit-content {
|
|
258
|
-
min-width: fit-content;
|
|
258
|
+
--min-width: fit-content;
|
|
259
|
+
--max-width: calc(100vw - 64px);
|
|
260
|
+
min-width: var(--min-width);
|
|
261
|
+
max-width: var(--max-width);
|
|
259
262
|
}
|
|
260
263
|
|
|
261
264
|
.mat-mdc-autocomplete-panel-center .mat-mdc-autocomplete-panel,
|