@sumaris-net/ngx-components 18.0.2-alpha4 → 18.0.2-alpha6
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/esm2022/src/app/admin/services/person.service.mjs +6 -3
- package/esm2022/src/app/core/account/account.page.mjs +1 -1
- package/esm2022/src/app/core/form/properties/properties.form.mjs +14 -4
- package/esm2022/src/app/core/form/properties/properties.utils.mjs +74 -31
- package/esm2022/src/app/core/form/properties/testing/properties-form.test.mjs +7 -13
- package/esm2022/src/app/core/graphql/graphql.service.mjs +1 -1
- package/esm2022/src/app/core/services/base-entity-service.class.mjs +1 -1
- package/esm2022/src/app/core/services/model/config.model.mjs +1 -1
- package/esm2022/src/app/core/services/model/entity.model.mjs +2 -2
- package/esm2022/src/app/core/services/model/settings.model.mjs +1 -1
- package/esm2022/src/app/core/services/storage/entities-storage.service.mjs +1 -1
- package/esm2022/src/app/core/services/storage/entity-store.class.mjs +1 -1
- package/esm2022/src/app/core/settings/settings.page.mjs +4 -5
- package/esm2022/src/app/shared/form/field.component.mjs +3 -3
- package/esm2022/src/app/shared/services/entity-service.class.mjs +1 -1
- package/esm2022/src/app/shared/services.mjs +25 -17
- package/esm2022/src/app/shared/types.mjs +1 -1
- package/fesm2022/sumaris-net.ngx-components.mjs +2691 -2633
- package/fesm2022/sumaris-net.ngx-components.mjs.map +1 -1
- package/package.json +3 -2
- package/src/app/admin/services/person.service.d.ts +3 -6
- package/src/app/core/form/properties/properties.form.d.ts +6 -5
- package/src/app/core/form/properties/properties.utils.d.ts +11 -9
- package/src/app/core/form/properties/testing/properties-form.test.d.ts +2 -1
- package/src/app/core/graphql/graphql.service.d.ts +2 -2
- package/src/app/core/services/base-entity-service.class.d.ts +1 -1
- package/src/app/core/services/model/config.model.d.ts +2 -2
- package/src/app/core/services/model/entity.model.d.ts +2 -2
- package/src/app/core/services/model/settings.model.d.ts +2 -2
- package/src/app/core/services/storage/entities-storage.service.d.ts +4 -4
- package/src/app/core/services/storage/entity-store.class.d.ts +4 -4
- package/src/app/shared/services/entity-service.class.d.ts +2 -0
- package/src/app/shared/services.d.ts +6 -1
- package/src/app/shared/types.d.ts +10 -5
- package/src/assets/i18n/en-US.json +7 -2
- package/src/assets/i18n/en.json +6 -1
- package/src/assets/i18n/fr.json +3 -2
- package/src/assets/manifest.json +1 -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": "18.0.2-
|
|
4
|
+
"version": "18.0.2-alpha6",
|
|
5
5
|
"author": "contact@e-is.pro",
|
|
6
6
|
"license": "AGPL-3.0",
|
|
7
7
|
"readmeFilename": "README.md",
|
|
@@ -35,7 +35,8 @@
|
|
|
35
35
|
"d3": "~7.6.1",
|
|
36
36
|
"localforage": "~1.10.0",
|
|
37
37
|
"rxjs": "~7.8.1",
|
|
38
|
-
"zone.js": "~0.14.10"
|
|
38
|
+
"zone.js": "~0.14.10",
|
|
39
|
+
"@typescript-eslint/utils": "7.2.0"
|
|
39
40
|
},
|
|
40
41
|
"optionalDependencies": {
|
|
41
42
|
"@awesome-cordova-plugins/core": "~6.4.0",
|
|
@@ -5,7 +5,7 @@ import { NetworkService } from '../../core/services/network.service';
|
|
|
5
5
|
import { EntitiesStorage } from '../../core/services/storage/entities-storage.service';
|
|
6
6
|
import { Person } from '../../core/services/model/person.model';
|
|
7
7
|
import { SortDirection } from '@angular/material/sort';
|
|
8
|
-
import { LoadResult, SuggestService } from '../../shared/services/entity-service.class';
|
|
8
|
+
import { EntitiesServiceLoadOptions, LoadResult, SuggestService } from '../../shared/services/entity-service.class';
|
|
9
9
|
import { PlatformService } from '../../core/services/platform.service';
|
|
10
10
|
import { PersonFilter } from './filter/person.filter';
|
|
11
11
|
import { BaseEntityService } from '../../core/services/base-entity-service.class';
|
|
@@ -19,12 +19,9 @@ export declare class PersonService extends BaseEntityService<Person, PersonFilte
|
|
|
19
19
|
protected network: NetworkService;
|
|
20
20
|
protected entities: EntitiesStorage;
|
|
21
21
|
constructor(graphql: GraphqlService, platform: PlatformService, network: NetworkService, entities: EntitiesStorage);
|
|
22
|
-
loadAll(offset: number, size: number, sortBy?: string, sortDirection?: SortDirection, filter?: Partial<PersonFilter>, opts?: {
|
|
22
|
+
loadAll(offset: number, size: number, sortBy?: keyof Person | string, sortDirection?: SortDirection, filter?: Partial<PersonFilter>, opts?: EntitiesServiceLoadOptions & {
|
|
23
23
|
[key: string]: any;
|
|
24
|
-
fetchPolicy?: FetchPolicy;
|
|
25
24
|
debug?: boolean;
|
|
26
|
-
withTotal?: boolean;
|
|
27
|
-
toEntity?: boolean;
|
|
28
25
|
}): Promise<LoadResult<Person>>;
|
|
29
26
|
loadAllLocally(offset: number, size: number, sortBy?: string, sortDirection?: SortDirection, filter?: Partial<PersonFilter>, opts?: {
|
|
30
27
|
[key: string]: any;
|
|
@@ -33,7 +30,7 @@ export declare class PersonService extends BaseEntityService<Person, PersonFilte
|
|
|
33
30
|
withTotal?: boolean;
|
|
34
31
|
toEntity?: boolean;
|
|
35
32
|
}): Promise<LoadResult<Person>>;
|
|
36
|
-
suggest(value: any, filter?: PersonFilter
|
|
33
|
+
suggest(value: any, filter?: Partial<PersonFilter>, sortBy?: keyof Person | string, sortDirection?: SortDirection, opts?: EntitiesServiceLoadOptions): Promise<LoadResult<Person>>;
|
|
37
34
|
executeImport(filter: Partial<PersonFilter>, opts: {
|
|
38
35
|
progression?: BehaviorSubject<number>;
|
|
39
36
|
maxProgression?: number;
|
|
@@ -4,7 +4,7 @@ import { FormFieldDefinition, FormFieldDefinitionMap } from '../../../shared/for
|
|
|
4
4
|
import { DateAdapter, ThemePalette } from '@angular/material/core';
|
|
5
5
|
import { Moment } from 'moment';
|
|
6
6
|
import { AppForm } from '../form.class';
|
|
7
|
-
import { Property } from '../../../shared/types';
|
|
7
|
+
import { Property, PropertyMap } from '../../../shared/types';
|
|
8
8
|
import { PropertyValidator } from './property.validator';
|
|
9
9
|
import { PredefinedColors } from '@ionic/core';
|
|
10
10
|
import { FormArrayHelper, FormArrayHelperOptions } from '../array/form-array';
|
|
@@ -17,7 +17,7 @@ export interface AppPropertiesFormState {
|
|
|
17
17
|
definitions: FormFieldDefinition[];
|
|
18
18
|
definitionKeys: Property[];
|
|
19
19
|
}
|
|
20
|
-
export declare class AppPropertiesForm<T = Property
|
|
20
|
+
export declare class AppPropertiesForm<O = any, T extends Property<O> = Property<O>, S extends AppPropertiesFormState = AppPropertiesFormState> extends AppForm<T[]> implements OnInit {
|
|
21
21
|
protected formBuilder: UntypedFormBuilder;
|
|
22
22
|
protected dateAdapter: DateAdapter<Moment>;
|
|
23
23
|
protected cd: ChangeDetectorRef;
|
|
@@ -61,12 +61,13 @@ export declare class AppPropertiesForm<T = Property, S extends AppPropertiesForm
|
|
|
61
61
|
emitEvent?: boolean;
|
|
62
62
|
}): FormFieldDefinition;
|
|
63
63
|
removeAt(index: number): void;
|
|
64
|
-
setValue(data: T[]
|
|
64
|
+
setValue(data: PropertyMap | T[]): Promise<void>;
|
|
65
|
+
getValueAsJson(): PropertyMap;
|
|
65
66
|
protected suggestDefinition(value: any, filter?: any): Promise<LoadResult<Property>>;
|
|
66
67
|
protected markForCheck(): void;
|
|
67
68
|
protected isEmptyProperty(obj: Property): boolean;
|
|
68
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AppPropertiesForm<any, any>, [null, null, null, null, null, { optional: true; }]>;
|
|
69
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AppPropertiesForm<any, any>, "app-properties-form", never, { "formArrayName": { "alias": "formArrayName"; "required": false; }; "formArray": { "alias": "formArray"; "required": false; }; "options": { "alias": "options"; "required": false; }; "chipColor": { "alias": "chipColor"; "required": false; }; "mobile": { "alias": "mobile"; "required": false; }; "appearance": { "alias": "appearance"; "required": false; }; "subscriptSizing": { "alias": "subscriptSizing"; "required": false; }; "showHintKey": { "alias": "showHintKey"; "required": false; }; "hintKeyPrefix": { "alias": "hintKeyPrefix"; "required": false; }; "showMoreButton": { "alias": "showMoreButton"; "required": false; }; "showMoreButtonTitle": { "alias": "showMoreButtonTitle"; "required": false; }; "showAddButton": { "alias": "showAddButton"; "required": false; }; "definitions": { "alias": "definitions"; "required": false; }; }, {}, never, never, false, never>;
|
|
69
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AppPropertiesForm<any, any, any>, [null, null, null, null, null, { optional: true; }]>;
|
|
70
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AppPropertiesForm<any, any, any>, "app-properties-form", never, { "formArrayName": { "alias": "formArrayName"; "required": false; }; "formArray": { "alias": "formArray"; "required": false; }; "options": { "alias": "options"; "required": false; }; "chipColor": { "alias": "chipColor"; "required": false; }; "mobile": { "alias": "mobile"; "required": false; }; "appearance": { "alias": "appearance"; "required": false; }; "subscriptSizing": { "alias": "subscriptSizing"; "required": false; }; "showHintKey": { "alias": "showHintKey"; "required": false; }; "hintKeyPrefix": { "alias": "hintKeyPrefix"; "required": false; }; "showMoreButton": { "alias": "showMoreButton"; "required": false; }; "showMoreButtonTitle": { "alias": "showMoreButtonTitle"; "required": false; }; "showAddButton": { "alias": "showAddButton"; "required": false; }; "definitions": { "alias": "definitions"; "required": false; }; }, {}, never, never, false, never>;
|
|
70
71
|
static ngAcceptInputType_mobile: unknown;
|
|
71
72
|
static ngAcceptInputType_showHintKey: unknown;
|
|
72
73
|
static ngAcceptInputType_showMoreButton: unknown;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Property, PropertyMap } from '../../../shared/types';
|
|
2
2
|
import { FormFieldDefinition } from '../../../shared/form/field.model';
|
|
3
3
|
import { EntitiesServiceLoadOptions, SuggestFn } from '../../../shared/services/entity-service.class';
|
|
4
4
|
export declare class AppPropertiesUtils {
|
|
@@ -9,22 +9,23 @@ export declare class AppPropertiesUtils {
|
|
|
9
9
|
* @param {FormFieldDefinition[]} [definitions] - An optional array of form field definitions to help with the conversion.
|
|
10
10
|
* @param {Object} [opts] - Optional configurations.
|
|
11
11
|
* @param {boolean} [opts.omitNilOrBlank] - If true, properties with nil or blank values will be omitted. Defaults to true.
|
|
12
|
-
* @return {
|
|
12
|
+
* @return {PropertyMap} - The resulting `PropertiesMap` object.
|
|
13
13
|
*/
|
|
14
|
-
static arrayAsObject(sources?: Property[], definitions?: FormFieldDefinition[], opts?: {
|
|
14
|
+
static arrayAsObject<T = any>(sources?: Property<T>[], definitions?: FormFieldDefinition[], opts?: {
|
|
15
15
|
omitNilOrBlank: boolean;
|
|
16
|
-
}):
|
|
16
|
+
}): PropertyMap;
|
|
17
17
|
/**
|
|
18
18
|
* Generates an array of properties from the given object, optionally applying definitions to the properties.
|
|
19
19
|
*
|
|
20
|
-
* @param {
|
|
20
|
+
* @param {PropertyMap} [sources] - The source object from which properties are to be extracted.
|
|
21
21
|
* @param {FormFieldDefinition[]} [definitions] - An optional array of definitions to be applied to the extracted properties.
|
|
22
22
|
* @return {Property[] | Promise<Property[]>} An array of properties generated from the source object, or a promise resolving to that array.
|
|
23
23
|
*/
|
|
24
|
-
static arrayFromObject(sources?:
|
|
24
|
+
static arrayFromObject<T>(sources?: PropertyMap | Property<T>[], definitions?: FormFieldDefinition[]): Property<T>[] | Promise<Property<T>[]>;
|
|
25
25
|
}
|
|
26
26
|
export declare class AppPropertyUtils {
|
|
27
|
-
static key(
|
|
27
|
+
static key(key: any): string;
|
|
28
|
+
static getPropertyKey(source: Property | any): string;
|
|
28
29
|
/**
|
|
29
30
|
* Converts the given source to an object that contains a key-value pair.
|
|
30
31
|
*
|
|
@@ -40,11 +41,12 @@ export declare class AppPropertyUtils {
|
|
|
40
41
|
key: string;
|
|
41
42
|
value: string;
|
|
42
43
|
} | undefined;
|
|
43
|
-
static fromObject(source: Property<
|
|
44
|
+
static fromObject<T = string>(source: Property | Property<T>, def: FormFieldDefinition, opts?: {
|
|
44
45
|
defaultSuggestFn: SuggestFn<any, any>;
|
|
45
46
|
defaultSuggestOptions?: EntitiesServiceLoadOptions;
|
|
46
47
|
defaultSerializeAttribute?: string;
|
|
47
|
-
}): Property<
|
|
48
|
+
}): Property<T> | Promise<Property<T>>;
|
|
48
49
|
private static resolveEntity;
|
|
49
50
|
private static resolveEntityBySuggest;
|
|
51
|
+
private static toString;
|
|
50
52
|
}
|
|
@@ -4,6 +4,7 @@ import { AppPropertiesForm } from '../properties.form';
|
|
|
4
4
|
import { LoadResult } from '../../../../shared/services/entity-service.class';
|
|
5
5
|
import { FormBuilder, FormGroup } from '@angular/forms';
|
|
6
6
|
import { PropertyValidator } from '../property.validator';
|
|
7
|
+
import { SortDirection } from '@angular/material/sort';
|
|
7
8
|
import * as i0 from "@angular/core";
|
|
8
9
|
export declare class PropertiesFormTestPage implements OnInit, AfterViewInit {
|
|
9
10
|
protected formBuilder: FormBuilder;
|
|
@@ -15,7 +16,7 @@ export declare class PropertiesFormTestPage implements OnInit, AfterViewInit {
|
|
|
15
16
|
constructor(formBuilder: FormBuilder, pv: PropertyValidator);
|
|
16
17
|
ngOnInit(): void;
|
|
17
18
|
ngAfterViewInit(): Promise<void>;
|
|
18
|
-
protected suggestEntity(value: any, filter: any): Promise<LoadResult<any>>;
|
|
19
|
+
protected suggestEntity(value: any, filter: any, sortBy: any | string, sortDirection: SortDirection, options: any): Promise<LoadResult<any>>;
|
|
19
20
|
static ɵfac: i0.ɵɵFactoryDeclaration<PropertiesFormTestPage, never>;
|
|
20
21
|
static ɵcmp: i0.ɵɵComponentDeclaration<PropertiesFormTestPage, "app-properties-form-test", never, {}, {}, never, never, false, never>;
|
|
21
22
|
}
|
|
@@ -12,7 +12,7 @@ import { HttpLink } from 'apollo-angular/http';
|
|
|
12
12
|
import { ErrorPolicy, MutationBaseOptions } from '@apollo/client/core/watchQueryOptions';
|
|
13
13
|
import { Cache } from '@apollo/client/cache/core/types/Cache';
|
|
14
14
|
import { Environment } from '../../../environments/environment.class';
|
|
15
|
-
import {
|
|
15
|
+
import { PropertyMap } from '../../shared/types';
|
|
16
16
|
import { StartableService } from '../../shared/services/startable-service.class';
|
|
17
17
|
import { StorageService } from '../../shared/storage/storage.service';
|
|
18
18
|
import { DocumentNode } from 'graphql';
|
|
@@ -133,7 +133,7 @@ export declare class GraphqlService extends StartableService<ApolloClient<any>>
|
|
|
133
133
|
equalsFn?: (d1: T, d2: T) => boolean;
|
|
134
134
|
}): void;
|
|
135
135
|
clearCache(client?: ApolloClient<any>): Promise<void>;
|
|
136
|
-
registerCustomError(error:
|
|
136
|
+
registerCustomError(error: PropertyMap): void;
|
|
137
137
|
protected ngOnStart(): Promise<ApolloClient<any>>;
|
|
138
138
|
protected ngOnStop(): Promise<void>;
|
|
139
139
|
protected resetClient(client?: ApolloClient<any>): Promise<void>;
|
|
@@ -72,7 +72,7 @@ export declare abstract class BaseEntityService<T extends Entity<T, ID>, F exten
|
|
|
72
72
|
watch(id: number, opts?: WO): Observable<T>;
|
|
73
73
|
load(id: ID, opts?: LO): Promise<T>;
|
|
74
74
|
watchAll(offset: number, size: number, sortBy?: string, sortDirection?: SortDirection, dataFilter?: F, opts?: WO): Observable<LoadResult<T>>;
|
|
75
|
-
loadAll(offset: number, size: number, sortBy?: string, sortDirection?: SortDirection, filter?: Partial<F>, opts?: LO & {
|
|
75
|
+
loadAll(offset: number, size: number, sortBy?: keyof T | string, sortDirection?: SortDirection, filter?: Partial<F>, opts?: LO & {
|
|
76
76
|
debug?: boolean;
|
|
77
77
|
}): Promise<LoadResult<T>>;
|
|
78
78
|
countAll(filter?: Partial<F>, opts?: LO): Promise<number>;
|
|
@@ -2,7 +2,7 @@ import { Moment } from 'moment';
|
|
|
2
2
|
import { FormFieldDefinition } from '../../../shared/form/field.model';
|
|
3
3
|
import { Entity, EntityAsObjectOptions, IEntity } from './entity.model';
|
|
4
4
|
import { Department } from './department.model';
|
|
5
|
-
import {
|
|
5
|
+
import { PropertyMap } from '../../../shared/types';
|
|
6
6
|
export declare class Software<T extends Software<any> = Software<any>> extends Entity<T, number> implements IEntity<T, number> {
|
|
7
7
|
static fromObject: (source: any, opts?: any) => Software;
|
|
8
8
|
label: string;
|
|
@@ -11,7 +11,7 @@ export declare class Software<T extends Software<any> = Software<any>> extends E
|
|
|
11
11
|
comments: string;
|
|
12
12
|
creationDate: Date | Moment;
|
|
13
13
|
statusId: number;
|
|
14
|
-
properties:
|
|
14
|
+
properties: PropertyMap;
|
|
15
15
|
constructor(__typename?: string);
|
|
16
16
|
asObject(options?: EntityAsObjectOptions): any;
|
|
17
17
|
fromObject(source: any): void;
|
|
@@ -55,8 +55,8 @@ export declare abstract class EntityUtils {
|
|
|
55
55
|
static fillLocalIds<T extends IEntity<T>>(items: T[], sequenceFactory: (firstEntity: T, incrementSize: number) => Promise<number>): Promise<void>;
|
|
56
56
|
static cleanIdAndUpdateDate<T extends IEntity<T>>(source: T): void;
|
|
57
57
|
static cleanIdsAndUpdateDates<T extends IEntity<T>>(items: T[]): void;
|
|
58
|
-
static sort<T extends IEntity<T> | any>(data: T[], sortBy?: string, sortDirection?: SortDirection): T[];
|
|
59
|
-
static sortComparator<T extends IEntity<T> | any>(sortBy?: string, sortDirection?: SortDirection): (a: T, b: T) => number;
|
|
58
|
+
static sort<T extends IEntity<T> | any>(data: T[], sortBy?: keyof T | string, sortDirection?: SortDirection): T[];
|
|
59
|
+
static sortComparator<T extends IEntity<T> | any>(sortBy?: keyof T | string, sortDirection?: SortDirection): (a: T, b: T) => number;
|
|
60
60
|
static compare<T extends IEntity<any>>(value1: T, value2: T, direction: 1 | -1, checkAttribute?: keyof T): number;
|
|
61
61
|
static compareValue<T>(value1: T, value2: T, direction: 1 | -1): number;
|
|
62
62
|
static filter<T extends IEntity<T> | any>(data: T[], searchAttribute: string, searchText: string): T[];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Property, PropertyMap } from '../../../shared/types';
|
|
2
2
|
import { InjectionToken } from '@angular/core';
|
|
3
3
|
import { HistoryPageReference } from './history.model';
|
|
4
4
|
export type UsageMode = 'DESK' | 'FIELD';
|
|
@@ -20,7 +20,7 @@ export declare interface LocalSettings {
|
|
|
20
20
|
locale: string;
|
|
21
21
|
usageMode?: UsageMode;
|
|
22
22
|
mobile?: boolean;
|
|
23
|
-
properties?:
|
|
23
|
+
properties?: PropertyMap | Property[];
|
|
24
24
|
pageHistory?: HistoryPageReference[];
|
|
25
25
|
offlineFeatures?: (string | OfflineFeature)[];
|
|
26
26
|
pageHistoryMaxSize: number;
|
|
@@ -35,17 +35,17 @@ export declare class EntitiesStorage extends StartableService<EntityStorageMap>
|
|
|
35
35
|
watchAll<T extends Entity<T>>(entityName: string, variables: {
|
|
36
36
|
offset?: number;
|
|
37
37
|
size?: number;
|
|
38
|
-
sortBy?: string;
|
|
38
|
+
sortBy?: keyof T | string;
|
|
39
39
|
sortDirection?: string;
|
|
40
40
|
trash?: boolean;
|
|
41
|
-
filter?: (
|
|
41
|
+
filter?: (data: T) => boolean;
|
|
42
42
|
}, opts?: EntityStorageLoadOptions): Observable<LoadResult<T>>;
|
|
43
43
|
loadAll<T extends Entity<T>>(entityName: string, variables?: {
|
|
44
44
|
offset?: number;
|
|
45
45
|
size?: number;
|
|
46
|
-
sortBy?: string;
|
|
46
|
+
sortBy?: keyof T | string;
|
|
47
47
|
sortDirection?: string;
|
|
48
|
-
filter?: (
|
|
48
|
+
filter?: (data: T) => boolean;
|
|
49
49
|
}, opts?: EntityStorageLoadOptions): Promise<LoadResult<T>>;
|
|
50
50
|
load<T extends Entity<T>>(id: number, entityName: string, opts?: EntityStorageLoadOptions): Promise<T>;
|
|
51
51
|
nextValue(entityOrName: string | any): Promise<number>;
|
|
@@ -42,9 +42,9 @@ export declare class EntityStore<T extends IEntity<T, ID>, ID = number, O extend
|
|
|
42
42
|
watchAll(variables: {
|
|
43
43
|
offset?: number;
|
|
44
44
|
size?: number;
|
|
45
|
-
sortBy?: string;
|
|
45
|
+
sortBy?: keyof T | string;
|
|
46
46
|
sortDirection?: string;
|
|
47
|
-
filter?: (
|
|
47
|
+
filter?: (data: T) => boolean;
|
|
48
48
|
}, opts?: O): Observable<LoadResult<T>>;
|
|
49
49
|
/**
|
|
50
50
|
* WIll apply a filter, then a sort, then a page slice
|
|
@@ -55,9 +55,9 @@ export declare class EntityStore<T extends IEntity<T, ID>, ID = number, O extend
|
|
|
55
55
|
loadAll(variables: {
|
|
56
56
|
offset?: number;
|
|
57
57
|
size?: number;
|
|
58
|
-
sortBy?: string;
|
|
58
|
+
sortBy?: keyof T | string;
|
|
59
59
|
sortDirection?: string;
|
|
60
|
-
filter?: (
|
|
60
|
+
filter?: (data: T) => boolean;
|
|
61
61
|
}, opts?: O): Promise<LoadResult<T>>;
|
|
62
62
|
save(entity: T, opts?: {
|
|
63
63
|
emitEvent?: boolean;
|
|
@@ -17,6 +17,8 @@ export declare interface LoadResult<T> {
|
|
|
17
17
|
}
|
|
18
18
|
export declare type SuggestFn<T, F> = (value: any, filter?: F, sortBy?: string | keyof T, sortDirection?: SortDirection, opts?: {
|
|
19
19
|
fetchPolicy?: FetchPolicy;
|
|
20
|
+
offset?: number;
|
|
21
|
+
size?: number;
|
|
20
22
|
[key: string]: any;
|
|
21
23
|
}) => Promise<T[] | LoadResult<T>>;
|
|
22
24
|
export declare interface SuggestService<T, F> {
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { LoadResult } from './services/entity-service.class';
|
|
2
|
-
|
|
2
|
+
import { SortDirection } from '@angular/material/sort';
|
|
3
|
+
export declare function suggestFromArray<T = any>(items: T[], value: any, filter?: {
|
|
3
4
|
id?: number;
|
|
4
5
|
offset?: number;
|
|
5
6
|
size?: number;
|
|
@@ -9,4 +10,8 @@ export declare function suggestFromArray<T = any>(items: T[], value: any, opts?:
|
|
|
9
10
|
excludedIds?: number[];
|
|
10
11
|
skipSort?: boolean;
|
|
11
12
|
anySearch?: boolean;
|
|
13
|
+
}, sortBy?: keyof T | string, sortDirection?: SortDirection, opts?: {
|
|
14
|
+
offset?: number;
|
|
15
|
+
size?: number;
|
|
16
|
+
[key: string]: any;
|
|
12
17
|
}): LoadResult<T>;
|
|
@@ -8,14 +8,19 @@ export declare type KeyValueType<T> = {
|
|
|
8
8
|
export declare type KeysEnum<T> = {
|
|
9
9
|
[P in keyof Required<T>]: boolean;
|
|
10
10
|
};
|
|
11
|
-
export declare interface ObjectMap<
|
|
12
|
-
[key: string]:
|
|
11
|
+
export declare interface ObjectMap<T = any> {
|
|
12
|
+
[key: string]: T;
|
|
13
13
|
}
|
|
14
|
-
export declare interface ObjectMapEntry<
|
|
14
|
+
export declare interface ObjectMapEntry<T = any> {
|
|
15
15
|
key: string;
|
|
16
|
-
value?:
|
|
16
|
+
value?: T;
|
|
17
17
|
}
|
|
18
|
-
export declare type
|
|
18
|
+
export declare type PropertyMap<T = string> = ObjectMap<T>;
|
|
19
|
+
/**
|
|
20
|
+
* Same as PropertyMap
|
|
21
|
+
* @deprecated Use PropertyMap instead
|
|
22
|
+
*/
|
|
23
|
+
export declare type PropertiesMap<T = string> = PropertyMap<T>;
|
|
19
24
|
export declare type Property<T = string> = ObjectMapEntry<T>;
|
|
20
25
|
export declare type PropertiesArray = Property[];
|
|
21
26
|
export declare type AppColors = PredefinedColors | ThemePalette | string;
|
|
@@ -201,7 +201,7 @@
|
|
|
201
201
|
"TOKEN": "Crypto",
|
|
202
202
|
"BASIC_AND_TOKEN": "Basic and crypto"
|
|
203
203
|
},
|
|
204
|
-
"ENABLE_AUTH_API_TOKENS": "API > Enable
|
|
204
|
+
"ENABLE_AUTH_API_TOKENS": "API > Enable authentication tokens?",
|
|
205
205
|
"ENABLE_AUTH_API_TOKENS_SCOPE": "API > Enable rights on auth tokens",
|
|
206
206
|
"DEFAULT_AUTH_API_TOKEN_SCOPE": "API > Default right on new auth token"
|
|
207
207
|
}
|
|
@@ -327,6 +327,10 @@
|
|
|
327
327
|
"DUMMY_3": "a - first",
|
|
328
328
|
"DUMMY_4": "e - fifth",
|
|
329
329
|
"DUMMY_5": "d - fourth",
|
|
330
|
+
"DUMMY_6": "f - sixth (enum)",
|
|
331
|
+
"DUMMY_7": "g - seventh (enum)",
|
|
332
|
+
"DUMMY_ENTITY": "h - eighth (entity)",
|
|
333
|
+
"DUMMY_ENTITIES": "i - ninth (entities)",
|
|
330
334
|
"OPTIONS": {
|
|
331
335
|
"TITLE": "Options",
|
|
332
336
|
"DEFINITION": "Option",
|
|
@@ -586,7 +590,8 @@
|
|
|
586
590
|
"FIELD_INCONSISTENT": "Inconsistent value",
|
|
587
591
|
"FIELD_NOT_VALID_DECIMAL": "Expected decimal value",
|
|
588
592
|
"FIELD_NOT_VALID_INTEGER": "Expected integer value",
|
|
589
|
-
"FIELD_NOT_VALID_PRECISION": "
|
|
593
|
+
"FIELD_NOT_VALID_PRECISION": "Minimum precision: {{precision}}",
|
|
594
|
+
"FIELD_NOT_VALID_PRECISION_COMPACT": "Min precision {{precision}}",
|
|
590
595
|
"FIELD_NOT_VALID_EMAIL": "Invalid email address",
|
|
591
596
|
"FIELD_NOT_VALID_DATE": "Invalid date",
|
|
592
597
|
"FIELD_NOT_VALID_DATE_AFTER": "Must be after {{minDate}}",
|
package/src/assets/i18n/en.json
CHANGED
|
@@ -326,6 +326,10 @@
|
|
|
326
326
|
"DUMMY_3": "a - first",
|
|
327
327
|
"DUMMY_4": "e - fifth",
|
|
328
328
|
"DUMMY_5": "d - fourth",
|
|
329
|
+
"DUMMY_6": "f - sixth (enum)",
|
|
330
|
+
"DUMMY_7": "g - seventh (enum)",
|
|
331
|
+
"DUMMY_ENTITY": "h - eighth (entity)",
|
|
332
|
+
"DUMMY_ENTITIES": "i - ninth (entities)",
|
|
329
333
|
"OPTIONS": {
|
|
330
334
|
"TITLE": "Options",
|
|
331
335
|
"DEFINITION": "Option",
|
|
@@ -585,7 +589,8 @@
|
|
|
585
589
|
"FIELD_INCONSISTENT": "Inconsistent value",
|
|
586
590
|
"FIELD_NOT_VALID_DECIMAL": "Expected decimal value",
|
|
587
591
|
"FIELD_NOT_VALID_INTEGER": "Expected integer value",
|
|
588
|
-
"FIELD_NOT_VALID_PRECISION": "
|
|
592
|
+
"FIELD_NOT_VALID_PRECISION": "Minimum precision: {{precision}}",
|
|
593
|
+
"FIELD_NOT_VALID_PRECISION_COMPACT": "Min precision {{precision}}",
|
|
589
594
|
"FIELD_NOT_VALID_EMAIL": "Invalid email address",
|
|
590
595
|
"FIELD_NOT_VALID_DATE": "Invalid date",
|
|
591
596
|
"FIELD_NOT_VALID_DATE_AFTER": "Must be after {{minDate}}",
|
package/src/assets/i18n/fr.json
CHANGED
|
@@ -327,8 +327,9 @@
|
|
|
327
327
|
"DUMMY_4": "e - cinquieme",
|
|
328
328
|
"DUMMY_5": "d - quatrieme",
|
|
329
329
|
"DUMMY_6": "f - sixième (enum)",
|
|
330
|
-
"DUMMY_7": "g - septième (
|
|
331
|
-
"
|
|
330
|
+
"DUMMY_7": "g - septième (enums)",
|
|
331
|
+
"DUMMY_ENTITY": "h - huitième (entity)",
|
|
332
|
+
"DUMMY_ENTITIES": "i - neuvième (entities)",
|
|
332
333
|
"OPTIONS": {
|
|
333
334
|
"TITLE": "Options",
|
|
334
335
|
"DEFINITION": "Option",
|
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.0.2-
|
|
5
|
+
"version": "18.0.2-alpha6",
|
|
6
6
|
"default_locale": "fr",
|
|
7
7
|
"description": "Angular components for building beautiful and responsive Apps",
|
|
8
8
|
"icons": [{
|