@elderbyte/ngx-starter 15.3.4 → 15.4.0
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/_index.scss +6 -3
- package/esm2020/lib/common/data/data-context/data-context-active-page.mjs +2 -2
- package/esm2020/lib/common/data/data-context/data-context-base.mjs +46 -27
- package/esm2020/lib/common/data/data-context/data-context-builder.mjs +9 -8
- package/esm2020/lib/common/data/data-context/data-context-continuable-paged.mjs +7 -8
- package/esm2020/lib/common/data/data-context/data-context-continuable-token.mjs +2 -2
- package/esm2020/lib/common/data/data-context/data-context-life-cycle-binding.mjs +4 -2
- package/esm2020/lib/common/data/data-context/data-context-source-event-binding.mjs +46 -0
- package/esm2020/lib/common/data/data-context/data-context.mjs +1 -1
- package/esm2020/lib/common/data/data-context/indexed-entities.mjs +143 -0
- package/esm2020/lib/common/data/data-context/public_api.mjs +3 -2
- package/esm2020/lib/common/data/datasource/data-source-base.mjs +38 -0
- package/esm2020/lib/common/data/datasource/data-source-change-event.mjs +24 -0
- package/esm2020/lib/common/data/datasource/data-source.mjs +1 -1
- package/esm2020/lib/common/data/datasource/local/local-list-data-source.mjs +11 -19
- package/esm2020/lib/common/data/datasource/local/local-paged-data-source.mjs +8 -8
- package/esm2020/lib/common/data/datasource/public_api.mjs +3 -1
- package/esm2020/lib/common/data/datasource/rest/rest-client.mjs +23 -38
- package/fesm2015/elderbyte-ngx-starter.mjs +408 -178
- package/fesm2015/elderbyte-ngx-starter.mjs.map +1 -1
- package/fesm2020/elderbyte-ngx-starter.mjs +407 -178
- package/fesm2020/elderbyte-ngx-starter.mjs.map +1 -1
- package/lib/common/data/data-context/data-context-base.d.ts +12 -3
- package/lib/common/data/data-context/data-context-builder.d.ts +2 -1
- package/lib/common/data/data-context/data-context-source-event-binding.d.ts +31 -0
- package/lib/common/data/data-context/data-context.d.ts +14 -2
- package/lib/common/data/data-context/indexed-entities.d.ts +72 -0
- package/lib/common/data/data-context/public_api.d.ts +2 -1
- package/lib/common/data/datasource/data-source-base.d.ts +38 -0
- package/lib/common/data/datasource/data-source-change-event.d.ts +13 -0
- package/lib/common/data/datasource/data-source.d.ts +2 -1
- package/lib/common/data/datasource/local/local-list-data-source.d.ts +3 -7
- package/lib/common/data/datasource/local/local-paged-data-source.d.ts +5 -3
- package/lib/common/data/datasource/public_api.d.ts +2 -0
- package/lib/common/data/datasource/rest/rest-client.d.ts +10 -18
- package/package.json +1 -1
- package/theming/_elder-common.scss +14 -8
- package/theming/_elder-config.scss +37 -0
- package/theming/_elder-flex-layout.scss +231 -8
- package/esm2020/lib/common/data/data-context/data-context-source-auto-reloader.mjs +0 -12
- package/lib/common/data/data-context/data-context-source-auto-reloader.d.ts +0 -8
|
@@ -7,7 +7,7 @@ import { FilterContext } from '../filters/filter-context';
|
|
|
7
7
|
import { DataContextSnapshot, IDataContext } from './data-context';
|
|
8
8
|
import { SortContext } from '../sort-context';
|
|
9
9
|
import { IDataSource } from '../datasource/data-source';
|
|
10
|
-
export declare abstract class DataContextBase<T> extends DataSource<T> implements IDataContext<T> {
|
|
10
|
+
export declare abstract class DataContextBase<T, TId = any> extends DataSource<T> implements IDataContext<T> {
|
|
11
11
|
private _indexFn;
|
|
12
12
|
private _localApply;
|
|
13
13
|
private _localSort;
|
|
@@ -26,7 +26,7 @@ export declare abstract class DataContextBase<T> extends DataSource<T> implement
|
|
|
26
26
|
private readonly _status;
|
|
27
27
|
private readonly _started;
|
|
28
28
|
private readonly _closed;
|
|
29
|
-
private readonly
|
|
29
|
+
private readonly _customIndex;
|
|
30
30
|
private readonly _reloadQueue;
|
|
31
31
|
protected readonly unsubscribe$: Subject<void>;
|
|
32
32
|
/***************************************************************************
|
|
@@ -73,11 +73,13 @@ export declare abstract class DataContextBase<T> extends DataSource<T> implement
|
|
|
73
73
|
start(sorts?: Sort[], filters?: Filter[]): Observable<any>;
|
|
74
74
|
reload(): void;
|
|
75
75
|
findByIndex(key: any): T | undefined;
|
|
76
|
+
findById(id: any): T | undefined;
|
|
76
77
|
/**
|
|
77
78
|
* Closes this DataContext and cleans up all used resources.
|
|
78
79
|
*/
|
|
79
80
|
close(): void;
|
|
80
81
|
refresh(): void;
|
|
82
|
+
update(entities: T[]): void;
|
|
81
83
|
/***************************************************************************
|
|
82
84
|
* *
|
|
83
85
|
* Protected methods *
|
|
@@ -85,15 +87,21 @@ export declare abstract class DataContextBase<T> extends DataSource<T> implement
|
|
|
85
87
|
**************************************************************************/
|
|
86
88
|
protected reloadNow(): Observable<any>;
|
|
87
89
|
/**
|
|
88
|
-
* Append the given rows to
|
|
90
|
+
* Append the given rows to the existing ones.
|
|
89
91
|
*/
|
|
90
92
|
protected appendData(additionalData: T[]): void;
|
|
93
|
+
/**
|
|
94
|
+
* Insert the given rows at the given location.
|
|
95
|
+
*/
|
|
96
|
+
protected insertData(additionalData: T[], offset: number): void;
|
|
91
97
|
/**
|
|
92
98
|
* Replaces the existing data with the new set.
|
|
93
99
|
* @param newData The new data set.
|
|
94
100
|
* @param alreadyIndexed The rows will be indexed unless they already have been.
|
|
95
101
|
*/
|
|
96
102
|
protected setData(newData: T[], alreadyIndexed?: boolean): void;
|
|
103
|
+
protected clearData(): void;
|
|
104
|
+
private localApply;
|
|
97
105
|
protected setTotal(total: number | undefined): void;
|
|
98
106
|
/**
|
|
99
107
|
* Clears the current data-context cached data.
|
|
@@ -110,6 +118,7 @@ export declare abstract class DataContextBase<T> extends DataSource<T> implement
|
|
|
110
118
|
*/
|
|
111
119
|
protected indexAll(items: T[]): void;
|
|
112
120
|
protected getItemKey(item: T): any;
|
|
121
|
+
protected getItemId(item: T): TId;
|
|
113
122
|
/***************************************************************************
|
|
114
123
|
* *
|
|
115
124
|
* Event handler *
|
|
@@ -97,7 +97,8 @@ export declare class DataContextBuilder<T> {
|
|
|
97
97
|
* *
|
|
98
98
|
**************************************************************************/
|
|
99
99
|
buildLocal(items: T[], idProperty?: string): IDataContext<T>;
|
|
100
|
-
buildLocalActivePaged(
|
|
100
|
+
buildLocalActivePaged(items: T[], idProperty?: string): IDataContextActivePage<T>;
|
|
101
|
+
private localListSource;
|
|
101
102
|
/***************************************************************************
|
|
102
103
|
* *
|
|
103
104
|
* Empty Data Builder *
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { IDataContext } from './data-context';
|
|
2
|
+
import { IDataSource } from '../datasource/data-source';
|
|
3
|
+
import { DataContextLifeCycleBinding } from './data-context-life-cycle-binding';
|
|
4
|
+
export declare class DataContextSourceEventBinding<T = any> extends DataContextLifeCycleBinding {
|
|
5
|
+
private readonly dataApi;
|
|
6
|
+
private readonly reloadOnChanges;
|
|
7
|
+
/***************************************************************************
|
|
8
|
+
* *
|
|
9
|
+
* Fields *
|
|
10
|
+
* *
|
|
11
|
+
**************************************************************************/
|
|
12
|
+
/***************************************************************************
|
|
13
|
+
* *
|
|
14
|
+
* Constructor *
|
|
15
|
+
* *
|
|
16
|
+
**************************************************************************/
|
|
17
|
+
constructor(dataContext: IDataContext<T>, dataApi: IDataSource<T>, reloadOnChanges: boolean);
|
|
18
|
+
/***************************************************************************
|
|
19
|
+
* *
|
|
20
|
+
* Internal Impl *
|
|
21
|
+
* *
|
|
22
|
+
**************************************************************************/
|
|
23
|
+
protected subscribe(): void;
|
|
24
|
+
/***************************************************************************
|
|
25
|
+
* *
|
|
26
|
+
* Private methods *
|
|
27
|
+
* *
|
|
28
|
+
**************************************************************************/
|
|
29
|
+
private handleDataChangeEvent;
|
|
30
|
+
private isReloadDesirable;
|
|
31
|
+
}
|
|
@@ -99,11 +99,23 @@ export interface IDataContext<T> {
|
|
|
99
99
|
*/
|
|
100
100
|
close(): void;
|
|
101
101
|
/**
|
|
102
|
-
* Returns the item by
|
|
103
|
-
* Requires that index functionality is enabled.
|
|
102
|
+
* Returns the item by a custom index key.
|
|
103
|
+
* Requires that custom index functionality is enabled.
|
|
104
|
+
*
|
|
105
|
+
* For id based lookup, refer to findById().
|
|
106
|
+
*
|
|
104
107
|
* @param key
|
|
105
108
|
*/
|
|
106
109
|
findByIndex(key: any): T | undefined;
|
|
110
|
+
/**
|
|
111
|
+
* Lookup an entity by its id. This method is guaranteed to be backed by a fast index.
|
|
112
|
+
* @param id The Entity Id.
|
|
113
|
+
*/
|
|
114
|
+
findById(id: any): T | undefined;
|
|
115
|
+
/**
|
|
116
|
+
* Update the given entities in this data-context
|
|
117
|
+
*/
|
|
118
|
+
update(entities: T[]): void;
|
|
107
119
|
}
|
|
108
120
|
/**
|
|
109
121
|
* Represents a data-context which backs a infinite like data stream
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { Observable } from 'rxjs';
|
|
2
|
+
import { Sort } from '../sort';
|
|
3
|
+
import { SortContext } from '../sort-context';
|
|
4
|
+
export declare class IndexedEntities<T, TId = any> {
|
|
5
|
+
private readonly idFn;
|
|
6
|
+
private readonly localSortFn;
|
|
7
|
+
private readonly sortContext;
|
|
8
|
+
/***************************************************************************
|
|
9
|
+
* *
|
|
10
|
+
* Fields *
|
|
11
|
+
* *
|
|
12
|
+
**************************************************************************/
|
|
13
|
+
private readonly log;
|
|
14
|
+
private readonly _entities$;
|
|
15
|
+
private readonly _idToArrayIndex;
|
|
16
|
+
/***************************************************************************
|
|
17
|
+
* *
|
|
18
|
+
* Constructor *
|
|
19
|
+
* *
|
|
20
|
+
**************************************************************************/
|
|
21
|
+
constructor(idFn: (e: T) => TId, localSortFn: ((data: T[], sorts: Sort[]) => T[]) | undefined, sortContext?: SortContext);
|
|
22
|
+
/***************************************************************************
|
|
23
|
+
* *
|
|
24
|
+
* Properties *
|
|
25
|
+
* *
|
|
26
|
+
**************************************************************************/
|
|
27
|
+
get entities$(): Observable<T[]>;
|
|
28
|
+
get entitiesSnapshot(): T[];
|
|
29
|
+
/***************************************************************************
|
|
30
|
+
* *
|
|
31
|
+
* Public API *
|
|
32
|
+
* *
|
|
33
|
+
**************************************************************************/
|
|
34
|
+
/**
|
|
35
|
+
* Replaces all existing entities with the new ones.
|
|
36
|
+
* The index is rebuilt. O(n)
|
|
37
|
+
*/
|
|
38
|
+
replaceAll(newEntities?: T[]): void;
|
|
39
|
+
/**
|
|
40
|
+
* Keeps all existing entities, but replaces those which are updated with the new data.
|
|
41
|
+
* Provided updated entities which are currently not in this index are ignored.
|
|
42
|
+
* @param updated
|
|
43
|
+
*/
|
|
44
|
+
updateSome(updated: T[]): void;
|
|
45
|
+
append(append: T[]): void;
|
|
46
|
+
/**
|
|
47
|
+
* Appends the given entities to this index.
|
|
48
|
+
* The new appended entities are included in the index.
|
|
49
|
+
* O(n) where n = number of appended entities
|
|
50
|
+
* @param inserted
|
|
51
|
+
* @param offset
|
|
52
|
+
*/
|
|
53
|
+
insert(inserted: T[], offset: number): void;
|
|
54
|
+
/**
|
|
55
|
+
* Lookup an entity by its id.
|
|
56
|
+
* This will use an index O(1)
|
|
57
|
+
* @param id
|
|
58
|
+
*/
|
|
59
|
+
getById(id: TId): T | undefined;
|
|
60
|
+
notify(): void;
|
|
61
|
+
destroy(): void;
|
|
62
|
+
/***************************************************************************
|
|
63
|
+
* *
|
|
64
|
+
* Private methods *
|
|
65
|
+
* *
|
|
66
|
+
**************************************************************************/
|
|
67
|
+
private rebuildIndex;
|
|
68
|
+
private reIndexFrom;
|
|
69
|
+
private indexById;
|
|
70
|
+
private getItemId;
|
|
71
|
+
private setEntities;
|
|
72
|
+
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export * from './indexed-entities';
|
|
1
2
|
export * from './data-context-status';
|
|
2
3
|
export * from './data-context';
|
|
3
4
|
export * from './data-context-base';
|
|
@@ -9,5 +10,5 @@ export * from './data-context-active-page';
|
|
|
9
10
|
export * from './mat-table-data-context-binding';
|
|
10
11
|
export * from './data-context-life-cycle-binding';
|
|
11
12
|
export * from './data-context-auto-starter';
|
|
12
|
-
export * from './data-context-source-
|
|
13
|
+
export * from './data-context-source-event-binding';
|
|
13
14
|
export * from './data-context-builder';
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { IDataSource } from './data-source';
|
|
2
|
+
import { DataSourceChangeEvent } from './data-source-change-event';
|
|
3
|
+
import { Observable } from 'rxjs';
|
|
4
|
+
export declare abstract class DataSourceBase<T> implements IDataSource<T> {
|
|
5
|
+
protected readonly idProperty: string | null;
|
|
6
|
+
/***************************************************************************
|
|
7
|
+
* *
|
|
8
|
+
* Fields *
|
|
9
|
+
* *
|
|
10
|
+
**************************************************************************/
|
|
11
|
+
private readonly dataChangeEvents$;
|
|
12
|
+
/***************************************************************************
|
|
13
|
+
* *
|
|
14
|
+
* Constructor *
|
|
15
|
+
* *
|
|
16
|
+
**************************************************************************/
|
|
17
|
+
constructor(idProperty: string | null);
|
|
18
|
+
/***************************************************************************
|
|
19
|
+
* *
|
|
20
|
+
* Properties *
|
|
21
|
+
* *
|
|
22
|
+
**************************************************************************/
|
|
23
|
+
get dataChanged(): Observable<DataSourceChangeEvent<T>>;
|
|
24
|
+
/***************************************************************************
|
|
25
|
+
* *
|
|
26
|
+
* Public API *
|
|
27
|
+
* *
|
|
28
|
+
**************************************************************************/
|
|
29
|
+
publishChangeEvent(e: DataSourceChangeEvent<T>): void;
|
|
30
|
+
getId(entity: T): any;
|
|
31
|
+
/***************************************************************************
|
|
32
|
+
* *
|
|
33
|
+
* Abstract methods *
|
|
34
|
+
* *
|
|
35
|
+
**************************************************************************/
|
|
36
|
+
abstract findById(id: any): Observable<T>;
|
|
37
|
+
abstract findByIds(ids: any[]): Observable<T[]>;
|
|
38
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export declare enum DataSourceChangeType {
|
|
2
|
+
}
|
|
3
|
+
export declare class DataSourceChangeEvent<T, TId = any> {
|
|
4
|
+
readonly deletedIds: TId[];
|
|
5
|
+
readonly modified: T[];
|
|
6
|
+
readonly created: T[];
|
|
7
|
+
static unknownChanges<T>(): DataSourceChangeEvent<T>;
|
|
8
|
+
static deleted<TId>(ids: TId[]): DataSourceChangeEvent<any, TId>;
|
|
9
|
+
static modified<T>(modified: T[]): DataSourceChangeEvent<T>;
|
|
10
|
+
static created<T>(created: T[]): DataSourceChangeEvent<T>;
|
|
11
|
+
readonly unknownChanges: boolean;
|
|
12
|
+
constructor(deletedIds: TId[], modified: T[], created: T[]);
|
|
13
|
+
}
|
|
@@ -4,6 +4,7 @@ import { Filter } from '../filters/filter';
|
|
|
4
4
|
import { Page, Pageable } from '../page';
|
|
5
5
|
import { TokenChunkRequest } from '../token-chunk-request';
|
|
6
6
|
import { ContinuableListing } from '../continuable-listing';
|
|
7
|
+
import { DataSourceChangeEvent } from './data-source-change-event';
|
|
7
8
|
/***************************************************************************
|
|
8
9
|
* *
|
|
9
10
|
* Data Fetcher APIs *
|
|
@@ -27,7 +28,7 @@ export interface IDataSource<T> {
|
|
|
27
28
|
/**
|
|
28
29
|
* Notifies that this data source has modified elements.
|
|
29
30
|
*/
|
|
30
|
-
readonly dataChanged: Observable<
|
|
31
|
+
readonly dataChanged: Observable<DataSourceChangeEvent<T>>;
|
|
31
32
|
/**
|
|
32
33
|
* Return the entity with the given Id.
|
|
33
34
|
*/
|
|
@@ -2,7 +2,8 @@ import { Filter } from '../../filters/filter';
|
|
|
2
2
|
import { Sort } from '../../sort';
|
|
3
3
|
import { Observable } from 'rxjs';
|
|
4
4
|
import { IListDataSource } from '../data-source';
|
|
5
|
-
|
|
5
|
+
import { DataSourceBase } from '../data-source-base';
|
|
6
|
+
export declare class LocalListDataSource<T> extends DataSourceBase<T> implements IListDataSource<T> {
|
|
6
7
|
/***************************************************************************
|
|
7
8
|
* *
|
|
8
9
|
* Fields *
|
|
@@ -10,10 +11,8 @@ export declare class LocalListDataSource<T> implements IListDataSource<T> {
|
|
|
10
11
|
**************************************************************************/
|
|
11
12
|
private readonly logger;
|
|
12
13
|
private readonly data$;
|
|
13
|
-
private readonly dataChange$;
|
|
14
14
|
private readonly localSort;
|
|
15
15
|
private readonly localFilter;
|
|
16
|
-
private readonly idProperty;
|
|
17
16
|
/***************************************************************************
|
|
18
17
|
* *
|
|
19
18
|
* Static Builder *
|
|
@@ -39,11 +38,9 @@ export declare class LocalListDataSource<T> implements IListDataSource<T> {
|
|
|
39
38
|
* IDataSource API *
|
|
40
39
|
* *
|
|
41
40
|
**************************************************************************/
|
|
42
|
-
get dataChanged(): Observable<any>;
|
|
43
41
|
findById(id: any): Observable<T>;
|
|
44
42
|
findByIds(ids: any[]): Observable<T[]>;
|
|
45
43
|
findAllFiltered(filters?: Filter[], sorts?: Sort[]): Observable<T[]>;
|
|
46
|
-
getId(entity: T): any;
|
|
47
44
|
/***************************************************************************
|
|
48
45
|
* *
|
|
49
46
|
* Public API *
|
|
@@ -56,6 +53,5 @@ export declare class LocalListDataSource<T> implements IListDataSource<T> {
|
|
|
56
53
|
* Private methods *
|
|
57
54
|
* *
|
|
58
55
|
**************************************************************************/
|
|
59
|
-
|
|
60
|
-
private guessIdProperty;
|
|
56
|
+
private static guessIdProperty;
|
|
61
57
|
}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { Page, Pageable } from '../../page';
|
|
2
2
|
import { Filter } from '../../filters/filter';
|
|
3
3
|
import { Observable } from 'rxjs';
|
|
4
|
+
import { LocalListDataSource } from './local-list-data-source';
|
|
4
5
|
import { Sort } from '../../sort';
|
|
5
6
|
import { IPagedDataSource } from '../data-source';
|
|
7
|
+
import { DataSourceChangeEvent } from '../data-source-change-event';
|
|
6
8
|
export declare class LocalPagedDataSource<T> implements IPagedDataSource<T> {
|
|
7
9
|
/***************************************************************************
|
|
8
10
|
* *
|
|
@@ -23,19 +25,19 @@ export declare class LocalPagedDataSource<T> implements IPagedDataSource<T> {
|
|
|
23
25
|
* @param localFilter
|
|
24
26
|
*/
|
|
25
27
|
static empty<T>(idProperty: string | null, localSort?: ((data: T[], sorts: Sort[]) => T[]), localFilter?: ((data: T[], filters: Filter[]) => T[])): LocalPagedDataSource<T>;
|
|
26
|
-
static
|
|
28
|
+
static of<T>(listDataSource: LocalListDataSource<T>): LocalPagedDataSource<T>;
|
|
27
29
|
/***************************************************************************
|
|
28
30
|
* *
|
|
29
31
|
* Constructor *
|
|
30
32
|
* *
|
|
31
33
|
**************************************************************************/
|
|
32
|
-
constructor(
|
|
34
|
+
constructor(listDataSource: LocalListDataSource<T>);
|
|
33
35
|
/***************************************************************************
|
|
34
36
|
* *
|
|
35
37
|
* Public API *
|
|
36
38
|
* *
|
|
37
39
|
**************************************************************************/
|
|
38
|
-
get dataChanged(): Observable<
|
|
40
|
+
get dataChanged(): Observable<DataSourceChangeEvent<T>>;
|
|
39
41
|
findById(id: any): Observable<T>;
|
|
40
42
|
findByIds(ids: any[]): Observable<T[]>;
|
|
41
43
|
findAllPaged(pageable: Pageable, filters?: Filter[]): Observable<Page<T>>;
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
export * from './data-source';
|
|
2
|
+
export * from './data-source-base';
|
|
2
3
|
export * from './data-source-adapter';
|
|
3
4
|
export * from './data-source-processor';
|
|
4
5
|
export * from './rest/public_api';
|
|
5
6
|
export * from './local/local-list-data-source';
|
|
6
7
|
export * from './local/local-paged-data-source';
|
|
7
8
|
export * from './fetcher/delegate-data-source';
|
|
9
|
+
export * from './data-source-change-event';
|
|
@@ -6,6 +6,7 @@ import { Page, Pageable } from '../../page';
|
|
|
6
6
|
import { ContinuableListing } from '../../continuable-listing';
|
|
7
7
|
import { TokenChunkRequest } from '../../token-chunk-request';
|
|
8
8
|
import { IContinuableDataSource, IDataSource, IListDataSource, IPagedDataSource } from '../data-source';
|
|
9
|
+
import { DataSourceBase } from '../data-source-base';
|
|
9
10
|
export declare class InternalRestClientConfig {
|
|
10
11
|
idField: string;
|
|
11
12
|
idsParam: string;
|
|
@@ -24,7 +25,7 @@ export declare class RestClientConfig {
|
|
|
24
25
|
*/
|
|
25
26
|
idsParam?: string;
|
|
26
27
|
}
|
|
27
|
-
export declare class RestClient<T, TID> implements IDataSource<T> {
|
|
28
|
+
export declare class RestClient<T, TID> extends DataSourceBase<T> implements IDataSource<T> {
|
|
28
29
|
protected readonly restEndpoint: string;
|
|
29
30
|
protected readonly http: HttpClient;
|
|
30
31
|
/***************************************************************************
|
|
@@ -33,24 +34,13 @@ export declare class RestClient<T, TID> implements IDataSource<T> {
|
|
|
33
34
|
* *
|
|
34
35
|
**************************************************************************/
|
|
35
36
|
private readonly _logger;
|
|
36
|
-
private readonly localChangeSubject;
|
|
37
37
|
protected readonly config: InternalRestClientConfig;
|
|
38
38
|
/***************************************************************************
|
|
39
39
|
* *
|
|
40
40
|
* Constructor *
|
|
41
41
|
* *
|
|
42
42
|
**************************************************************************/
|
|
43
|
-
constructor(restEndpoint: string, http: HttpClient, config
|
|
44
|
-
/***************************************************************************
|
|
45
|
-
* *
|
|
46
|
-
* Properties *
|
|
47
|
-
* *
|
|
48
|
-
**************************************************************************/
|
|
49
|
-
get dataChanged(): Observable<T>;
|
|
50
|
-
/**
|
|
51
|
-
* @deprecated Use dataChanged
|
|
52
|
-
*/
|
|
53
|
-
get localChanged(): Observable<T>;
|
|
43
|
+
constructor(restEndpoint: string, http: HttpClient, config: InternalRestClientConfig);
|
|
54
44
|
/***************************************************************************
|
|
55
45
|
* *
|
|
56
46
|
* Public API *
|
|
@@ -63,11 +53,10 @@ export declare class RestClient<T, TID> implements IDataSource<T> {
|
|
|
63
53
|
*/
|
|
64
54
|
save(entity: T, params?: HttpParams): Observable<T>;
|
|
65
55
|
create<TC = T>(newEntity: TC, params?: HttpParams): Observable<T>;
|
|
66
|
-
update(
|
|
67
|
-
updateAll(updatedEntities:
|
|
56
|
+
update<TEntityUpdate>(update: TEntityUpdate, params?: HttpParams): Observable<T>;
|
|
57
|
+
updateAll<TEntityUpdate>(updatedEntities: TEntityUpdate[], params?: HttpParams): Observable<T[]>;
|
|
68
58
|
delete(entity: T, params?: HttpParams): Observable<any>;
|
|
69
59
|
deleteAll(entities: T[], params?: HttpParams): Observable<any>;
|
|
70
|
-
getId(entity: T): TID;
|
|
71
60
|
/***************************************************************************
|
|
72
61
|
* *
|
|
73
62
|
* Sub Resource Builder *
|
|
@@ -81,8 +70,11 @@ export declare class RestClient<T, TID> implements IDataSource<T> {
|
|
|
81
70
|
* Protected methods *
|
|
82
71
|
* *
|
|
83
72
|
**************************************************************************/
|
|
84
|
-
protected patchInternal<P
|
|
85
|
-
protected patchAllInternal<P
|
|
73
|
+
protected patchInternal<P>(id: TID, entityPatch: P, params?: HttpParams): Observable<T>;
|
|
74
|
+
protected patchAllInternal<P>(entityPatches: P[], params?: HttpParams): Observable<T[]>;
|
|
75
|
+
/**
|
|
76
|
+
* @deprecated Switch to publishChangeEvent
|
|
77
|
+
*/
|
|
86
78
|
protected onLocalChanged(entity?: T): void;
|
|
87
79
|
protected getEntityUrlBy(entity: T): string;
|
|
88
80
|
protected getEntityUrl(id: TID): string;
|
package/package.json
CHANGED
|
@@ -1,13 +1,19 @@
|
|
|
1
1
|
@use 'mat-icon-button-size' as icon-button-size;
|
|
2
2
|
|
|
3
|
-
$
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
3
|
+
@mixin elder-common-styles ($common-sizes) {
|
|
4
|
+
|
|
5
|
+
/***************************************************************************
|
|
6
|
+
* *
|
|
7
|
+
* Common Sizes *
|
|
8
|
+
* *
|
|
9
|
+
**************************************************************************/
|
|
10
|
+
|
|
11
|
+
$xs: map-get($common-sizes, xs);
|
|
12
|
+
$sm: map-get($common-sizes, sm);
|
|
13
|
+
$md: map-get($common-sizes, md);
|
|
14
|
+
$lg: map-get($common-sizes, lg);
|
|
15
|
+
$xl: map-get($common-sizes, xl);
|
|
16
|
+
$xxl:map-get($common-sizes, xxl);
|
|
11
17
|
|
|
12
18
|
/***************************************************************************
|
|
13
19
|
* *
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
|
|
2
|
+
/*
|
|
3
|
+
Builds an elder-config.
|
|
4
|
+
|
|
5
|
+
All arguments are optional which means all, none are only a part of the arguments can be passed.
|
|
6
|
+
In case no arguments are passed, the default elder-config will be returned.
|
|
7
|
+
|
|
8
|
+
@Examples:
|
|
9
|
+
elder-config.build(); // returns default config
|
|
10
|
+
elder-config.build($common-sizes: $custom-sizes); // returns config with custom sizes
|
|
11
|
+
*/
|
|
12
|
+
@function buildConfig($common-sizes: common-sizes()) {
|
|
13
|
+
@return (
|
|
14
|
+
common-sizes: $common-sizes
|
|
15
|
+
);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
/*
|
|
19
|
+
Returns a map of common-sizes.
|
|
20
|
+
*/
|
|
21
|
+
@function common-sizes(
|
|
22
|
+
$xs: 4px,
|
|
23
|
+
$sm: 8px,
|
|
24
|
+
$md: 12px,
|
|
25
|
+
$lg: 16px,
|
|
26
|
+
$xl: 24px,
|
|
27
|
+
$xxl: 32px
|
|
28
|
+
) {
|
|
29
|
+
@return (
|
|
30
|
+
xs: $xs,
|
|
31
|
+
sm: $sm,
|
|
32
|
+
md: $md,
|
|
33
|
+
lg: $lg,
|
|
34
|
+
xl: $xl,
|
|
35
|
+
xxl: $xxl
|
|
36
|
+
)
|
|
37
|
+
}
|