@rentman/rm-core 8.0.0 → 8.0.1-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/changelog.md +875 -865
- package/dist/rm-core.js +10027 -10055
- package/dist/rm-core.min.js +2 -2
- package/dist/types/classes/ApiFormatter.d.ts +66 -66
- package/dist/types/classes/ApiRequestService.d.ts +21 -21
- package/dist/types/classes/ApiResponseProcessor.d.ts +30 -30
- package/dist/types/classes/ChangesCompilation.d.ts +36 -36
- package/dist/types/classes/ChangesDelta.d.ts +62 -62
- package/dist/types/classes/ChangesDeltaBase.d.ts +51 -51
- package/dist/types/classes/ChangesProcessor.d.ts +47 -47
- package/dist/types/classes/CollectionEntryService.d.ts +27 -27
- package/dist/types/classes/CollectionMatcherBase.d.ts +22 -22
- package/dist/types/classes/CollectionMatcherCachedCollectionProcessor.d.ts +32 -32
- package/dist/types/classes/CollectionResourceService.d.ts +7 -7
- package/dist/types/classes/ColumnCache.d.ts +22 -22
- package/dist/types/classes/ColumnExpansion.d.ts +23 -23
- package/dist/types/classes/ColumnHandler.d.ts +22 -22
- package/dist/types/classes/ColumnInfo.d.ts +14 -14
- package/dist/types/classes/ColumnSet.d.ts +39 -39
- package/dist/types/classes/ColumnSubsetCache.d.ts +15 -15
- package/dist/types/classes/ColumnUtil.d.ts +101 -101
- package/dist/types/classes/ConversionMapService.d.ts +28 -28
- package/dist/types/classes/CreateRequest.d.ts +20 -20
- package/dist/types/classes/CreatedChangesDelta.d.ts +17 -17
- package/dist/types/classes/InternalChangesDelta.d.ts +40 -40
- package/dist/types/classes/ItemCache.d.ts +30 -30
- package/dist/types/classes/ItemCreateService.d.ts +25 -25
- package/dist/types/classes/ItemEntryService.d.ts +35 -35
- package/dist/types/classes/KeyService.d.ts +18 -18
- package/dist/types/classes/LockService.d.ts +32 -32
- package/dist/types/classes/ModuleChangesCompilation.d.ts +19 -19
- package/dist/types/classes/QueryColumnExtractor.d.ts +20 -20
- package/dist/types/classes/QueryContainsLocalIdParser.d.ts +17 -17
- package/dist/types/classes/QueryLinkedToParser.d.ts +16 -16
- package/dist/types/classes/QueryLocallyMatchableParser.d.ts +19 -19
- package/dist/types/classes/QueryMatcher.d.ts +19 -19
- package/dist/types/classes/QueryParser.d.ts +26 -26
- package/dist/types/classes/QueryParserBase.d.ts +20 -20
- package/dist/types/classes/QueryParserIdUpdater.d.ts +16 -16
- package/dist/types/classes/QueryService.d.ts +13 -13
- package/dist/types/classes/RequestBuffer.d.ts +29 -29
- package/dist/types/classes/RequestBufferManager.d.ts +26 -26
- package/dist/types/classes/RequestColumnExpansion.d.ts +16 -16
- package/dist/types/classes/SocketMessageHandler.d.ts +43 -43
- package/dist/types/classes/TemplateCache.d.ts +67 -67
- package/dist/types/classes/Util.d.ts +31 -31
- package/dist/types/classes/cache/AbstractCache.d.ts +103 -103
- package/dist/types/classes/cache/CachedQueryHandlerBase.d.ts +75 -75
- package/dist/types/classes/cache/CollectionMatcherCachedQueryProcessor.d.ts +36 -36
- package/dist/types/classes/cache/ItemHandlerBase.d.ts +108 -108
- package/dist/types/classes/cache/server/ServerCache.d.ts +83 -83
- package/dist/types/classes/cache/server/ServerCachedQueryHandler.d.ts +34 -34
- package/dist/types/classes/cache/server/ServerItemHandler.d.ts +53 -53
- package/dist/types/classes/cache/transaction/TransactionCache.d.ts +325 -325
- package/dist/types/classes/cache/transaction/TransactionCachedQueryHandler.d.ts +23 -23
- package/dist/types/classes/cache/transaction/TransactionCollectionHandler.d.ts +29 -29
- package/dist/types/classes/cache/transaction/TransactionEventHandler.d.ts +24 -24
- package/dist/types/classes/cache/transaction/TransactionItemHandler.d.ts +94 -94
- package/dist/types/classes/cache/transaction/TransactionValidator.d.ts +35 -35
- package/dist/types/classes/index.d.ts +46 -46
- package/dist/types/constants.d.ts +7 -7
- package/dist/types/core.d.ts +51 -51
- package/dist/types/factories/ApiResponseProcessorFactory.d.ts +6 -6
- package/dist/types/factories/ChangesCompilationFactory.d.ts +6 -6
- package/dist/types/factories/ChangesDeltaFactory.d.ts +13 -13
- package/dist/types/factories/ChangesProcessorFactory.d.ts +22 -22
- package/dist/types/factories/CollectionEntryFactory.d.ts +14 -14
- package/dist/types/factories/CollectionMatcherFactory.d.ts +19 -19
- package/dist/types/factories/CollectionResourceFactory.d.ts +22 -22
- package/dist/types/factories/ColumnExpansionFactory.d.ts +9 -9
- package/dist/types/factories/ColumnInfoFactory.d.ts +8 -8
- package/dist/types/factories/ColumnSetFactory.d.ts +20 -20
- package/dist/types/factories/ColumnSubsetCacheFactory.d.ts +9 -9
- package/dist/types/factories/CreateRequestFactory.d.ts +11 -11
- package/dist/types/factories/ItemCacheFactory.d.ts +8 -8
- package/dist/types/factories/ItemEntryFactory.d.ts +15 -15
- package/dist/types/factories/ItemResourceFactory.d.ts +14 -14
- package/dist/types/factories/ModuleChangesCompilationFactory.d.ts +5 -5
- package/dist/types/factories/QueryMatcherFactory.d.ts +8 -8
- package/dist/types/factories/QueryParserFactory.d.ts +6 -6
- package/dist/types/factories/RequestColumnExpansionFactory.d.ts +6 -6
- package/dist/types/factories/TemplateFactory.d.ts +11 -11
- package/dist/types/factories/TransactionCacheFactory.d.ts +15 -15
- package/dist/types/factories/index.d.ts +21 -21
- package/dist/types/index.d.ts +7 -7
- package/dist/types/interfaces/AbstractCacheDependencyInterface.d.ts +43 -43
- package/dist/types/interfaces/ApiRequestServiceInterface.d.ts +12 -12
- package/dist/types/interfaces/AuthInterface.d.ts +10 -10
- package/dist/types/interfaces/ErrorHandlerInterface.d.ts +5 -5
- package/dist/types/interfaces/ExceptionHandlerInterface.d.ts +3 -3
- package/dist/types/interfaces/LinkTreeServiceInterface.d.ts +4 -4
- package/dist/types/interfaces/PromiseLibraryInterface.d.ts +25 -25
- package/dist/types/interfaces/ServerCacheDependencyInterface.d.ts +7 -7
- package/dist/types/interfaces/SocketMessageInterface.d.ts +3 -3
- package/dist/types/interfaces/TransactionCollectionHandlerDependencyInterface.d.ts +20 -20
- package/dist/types/interfaces/TransactionItemHandlerDependencyInterface.d.ts +26 -26
- package/dist/types/interfaces/index.d.ts +11 -11
- package/dist/types/models/CollectionEntry.d.ts +24 -24
- package/dist/types/models/CollectionOptions.d.ts +24 -24
- package/dist/types/models/CollectionResource.d.ts +78 -78
- package/dist/types/models/ItemEntry.d.ts +19 -19
- package/dist/types/models/ItemEntryOptions.d.ts +8 -8
- package/dist/types/models/ItemResource.d.ts +88 -88
- package/dist/types/models/Template.d.ts +12 -12
- package/dist/types/models/index.d.ts +7 -7
- package/dist/types/types/ItemTypesCollection.d.ts +345 -345
- package/dist/types/types/PromiseInterface.d.ts +2 -2
- package/dist/types/types/index.d.ts +2 -2
- package/package.json +38 -38
- package/readme.md +15 -15
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
import { ApiEnumItemType, ItemId } from '@rentman/backend-types';
|
|
2
|
-
import { QueryService } from '../classes';
|
|
3
|
-
import { QueryParserFactory } from '../factories';
|
|
4
|
-
import { ItemEntry } from '../models';
|
|
5
|
-
import { CollectionOptions, CollectionOptionsInterface } from '../models/CollectionOptions';
|
|
6
|
-
import { ApiQuery, CollectionQuery, EntryParentNull } from '../types';
|
|
7
|
-
export declare class CollectionEntryService {
|
|
8
|
-
private queryParserFactory;
|
|
9
|
-
private queryService;
|
|
10
|
-
constructor(queryParserFactory: QueryParserFactory, queryService: QueryService);
|
|
11
|
-
createUnfoundLocalCollectionError(itemType: ApiEnumItemType): {
|
|
12
|
-
message: string;
|
|
13
|
-
};
|
|
14
|
-
cloneOptions(options: CollectionOptions, parent: EntryParentNull): CollectionOptions<any, (string | number | symbol)[]>;
|
|
15
|
-
processOptions<ItemTypeType extends ApiEnumItemType>(options: CollectionOptionsInterface<ItemTypeType>): CollectionOptions;
|
|
16
|
-
createQuery(query: ApiQuery): CollectionQuery;
|
|
17
|
-
createQueryFromOptions(options: CollectionOptions): CollectionQuery;
|
|
18
|
-
getIdArray(itemEntries: Array<ItemEntry<any>>, accumulator?: ItemId[]): ItemId[];
|
|
19
|
-
/**
|
|
20
|
-
* @description
|
|
21
|
-
* Filters an array of {@link ItemEntry ItemEntries} according to the callback function.
|
|
22
|
-
* Does an in-place replacement of the items in the array that do match the condition (keeping the array reference)
|
|
23
|
-
*
|
|
24
|
-
* @returns {@link ItemEntry ItemEntries} that failed the condition
|
|
25
|
-
*/
|
|
26
|
-
filterArray<T extends ItemEntry<any> = ItemEntry<any>>(itemEntries: T[], callback: (itemEntry: T) => boolean): T[];
|
|
27
|
-
}
|
|
1
|
+
import { ApiEnumItemType, ItemId } from '@rentman/backend-types';
|
|
2
|
+
import { QueryService } from '../classes';
|
|
3
|
+
import { QueryParserFactory } from '../factories';
|
|
4
|
+
import { ItemEntry } from '../models';
|
|
5
|
+
import { CollectionOptions, CollectionOptionsInterface } from '../models/CollectionOptions';
|
|
6
|
+
import { ApiQuery, CollectionQuery, EntryParentNull } from '../types';
|
|
7
|
+
export declare class CollectionEntryService {
|
|
8
|
+
private queryParserFactory;
|
|
9
|
+
private queryService;
|
|
10
|
+
constructor(queryParserFactory: QueryParserFactory, queryService: QueryService);
|
|
11
|
+
createUnfoundLocalCollectionError(itemType: ApiEnumItemType): {
|
|
12
|
+
message: string;
|
|
13
|
+
};
|
|
14
|
+
cloneOptions(options: CollectionOptions, parent: EntryParentNull): CollectionOptions<any, (string | number | symbol)[]>;
|
|
15
|
+
processOptions<ItemTypeType extends ApiEnumItemType>(options: CollectionOptionsInterface<ItemTypeType>): CollectionOptions;
|
|
16
|
+
createQuery(query: ApiQuery): CollectionQuery;
|
|
17
|
+
createQueryFromOptions(options: CollectionOptions): CollectionQuery;
|
|
18
|
+
getIdArray(itemEntries: Array<ItemEntry<any>>, accumulator?: ItemId[]): ItemId[];
|
|
19
|
+
/**
|
|
20
|
+
* @description
|
|
21
|
+
* Filters an array of {@link ItemEntry ItemEntries} according to the callback function.
|
|
22
|
+
* Does an in-place replacement of the items in the array that do match the condition (keeping the array reference)
|
|
23
|
+
*
|
|
24
|
+
* @returns {@link ItemEntry ItemEntries} that failed the condition
|
|
25
|
+
*/
|
|
26
|
+
filterArray<T extends ItemEntry<any> = ItemEntry<any>>(itemEntries: T[], callback: (itemEntry: T) => boolean): T[];
|
|
27
|
+
}
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
import { ApiEnumItemType } from '@rentman/backend-types';
|
|
2
|
-
import { AbstractCache, CollectionQuery, FieldMap, QueryService } from '../';
|
|
3
|
-
import { QueryMatcherFactory } from '../factories/';
|
|
4
|
-
import { ItemEntry } from '../models';
|
|
5
|
-
import { GroupedCollectionMatcherResult } from './cache/CollectionMatcherCachedQueryProcessor';
|
|
6
|
-
import { InternalChangesDelta } from './InternalChangesDelta';
|
|
7
|
-
export declare type CollectionMatcherMatches<ItemTypeType extends ApiEnumItemType = any> = {
|
|
8
|
-
[itemId: number]: {
|
|
9
|
-
item: ItemEntry<ItemTypeType>;
|
|
10
|
-
isMatch: boolean | 'maybe';
|
|
11
|
-
};
|
|
12
|
-
};
|
|
13
|
-
export declare abstract class CollectionMatcherBase {
|
|
14
|
-
protected queryService: QueryService;
|
|
15
|
-
protected queryMatcherFactory: QueryMatcherFactory;
|
|
16
|
-
protected transaction: AbstractCache;
|
|
17
|
-
protected constructor(queryService: QueryService, queryMatcherFactory: QueryMatcherFactory, transaction: AbstractCache);
|
|
18
|
-
expand<ItemEntryType extends ItemEntry>(itemEntry: ItemEntryType, fields: FieldMap<ItemEntryType['itemType']>): this;
|
|
19
|
-
processDelta(internalChangesDelta: InternalChangesDelta): this;
|
|
20
|
-
protected groupItemEntries<ItemTypeType extends ApiEnumItemType>(matches: CollectionMatcherMatches<ItemTypeType>): GroupedCollectionMatcherResult<ItemTypeType>;
|
|
21
|
-
protected abstract _expand<ItemTypeType extends ApiEnumItemType = any>(itemEntry: ItemEntry<ItemTypeType>, matchFunction: (itemType: ItemTypeType, parsedQuery: CollectionQuery) => boolean | 'maybe'): this;
|
|
22
|
-
}
|
|
1
|
+
import { ApiEnumItemType } from '@rentman/backend-types';
|
|
2
|
+
import { AbstractCache, CollectionQuery, FieldMap, QueryService } from '../';
|
|
3
|
+
import { QueryMatcherFactory } from '../factories/';
|
|
4
|
+
import { ItemEntry } from '../models';
|
|
5
|
+
import { GroupedCollectionMatcherResult } from './cache/CollectionMatcherCachedQueryProcessor';
|
|
6
|
+
import { InternalChangesDelta } from './InternalChangesDelta';
|
|
7
|
+
export declare type CollectionMatcherMatches<ItemTypeType extends ApiEnumItemType = any> = {
|
|
8
|
+
[itemId: number]: {
|
|
9
|
+
item: ItemEntry<ItemTypeType>;
|
|
10
|
+
isMatch: boolean | 'maybe';
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
export declare abstract class CollectionMatcherBase {
|
|
14
|
+
protected queryService: QueryService;
|
|
15
|
+
protected queryMatcherFactory: QueryMatcherFactory;
|
|
16
|
+
protected transaction: AbstractCache;
|
|
17
|
+
protected constructor(queryService: QueryService, queryMatcherFactory: QueryMatcherFactory, transaction: AbstractCache);
|
|
18
|
+
expand<ItemEntryType extends ItemEntry>(itemEntry: ItemEntryType, fields: FieldMap<ItemEntryType['itemType']>): this;
|
|
19
|
+
processDelta(internalChangesDelta: InternalChangesDelta): this;
|
|
20
|
+
protected groupItemEntries<ItemTypeType extends ApiEnumItemType>(matches: CollectionMatcherMatches<ItemTypeType>): GroupedCollectionMatcherResult<ItemTypeType>;
|
|
21
|
+
protected abstract _expand<ItemTypeType extends ApiEnumItemType = any>(itemEntry: ItemEntry<ItemTypeType>, matchFunction: (itemType: ItemTypeType, parsedQuery: CollectionQuery) => boolean | 'maybe'): this;
|
|
22
|
+
}
|
|
@@ -1,32 +1,32 @@
|
|
|
1
|
-
import { ApiEnumItemType } from '@rentman/backend-types';
|
|
2
|
-
import { QueryMatcherFactory } from '../factories';
|
|
3
|
-
import { PromiseLibraryInterface } from '../interfaces';
|
|
4
|
-
import { CollectionResource, ItemEntry } from '../models';
|
|
5
|
-
import { CollectionQuery, PromiseInterface } from '../types';
|
|
6
|
-
import { ApiRequestService } from './ApiRequestService';
|
|
7
|
-
import { AbstractCache } from './cache/AbstractCache';
|
|
8
|
-
import { ChangesDeltaBase } from './ChangesDeltaBase';
|
|
9
|
-
import { CollectionMatcherBase, CollectionMatcherMatches } from './CollectionMatcherBase';
|
|
10
|
-
import { QueryService } from './QueryService';
|
|
11
|
-
/**
|
|
12
|
-
* @description
|
|
13
|
-
* Processes all {@link CollectionResource CollectionResources} and adds/removes item entries that do/don't fit the query
|
|
14
|
-
*/
|
|
15
|
-
export declare class CollectionMatcherCachedCollectionProcessor extends CollectionMatcherBase {
|
|
16
|
-
private apiRequestService;
|
|
17
|
-
private promiseService;
|
|
18
|
-
private getCollections;
|
|
19
|
-
protected map: {
|
|
20
|
-
[itemTypeAndQueryString: string]: {
|
|
21
|
-
itemType: ApiEnumItemType;
|
|
22
|
-
query: CollectionQuery;
|
|
23
|
-
collectionResources: CollectionResource[];
|
|
24
|
-
matches: CollectionMatcherMatches;
|
|
25
|
-
};
|
|
26
|
-
};
|
|
27
|
-
constructor(apiRequestService: ApiRequestService, promiseService: PromiseLibraryInterface, queryService: QueryService, queryMatcherFactory: QueryMatcherFactory, transaction: AbstractCache, getCollections: <ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType) => {
|
|
28
|
-
[queryString: string]: Array<CollectionResource<ItemTypeType>>;
|
|
29
|
-
});
|
|
30
|
-
__removeFromAndAddToCollections(isCalledAfterSocketUpdate?: boolean, changesDelta?: ChangesDeltaBase): PromiseInterface<void[]>;
|
|
31
|
-
protected _expand<ItemTypeType extends ApiEnumItemType = any>(itemEntry: ItemEntry<ItemTypeType>, matchFunction: (itemType: ItemTypeType, parsedQuery: CollectionQuery) => boolean | 'maybe'): this;
|
|
32
|
-
}
|
|
1
|
+
import { ApiEnumItemType } from '@rentman/backend-types';
|
|
2
|
+
import { QueryMatcherFactory } from '../factories';
|
|
3
|
+
import { PromiseLibraryInterface } from '../interfaces';
|
|
4
|
+
import { CollectionResource, ItemEntry } from '../models';
|
|
5
|
+
import { CollectionQuery, PromiseInterface } from '../types';
|
|
6
|
+
import { ApiRequestService } from './ApiRequestService';
|
|
7
|
+
import { AbstractCache } from './cache/AbstractCache';
|
|
8
|
+
import { ChangesDeltaBase } from './ChangesDeltaBase';
|
|
9
|
+
import { CollectionMatcherBase, CollectionMatcherMatches } from './CollectionMatcherBase';
|
|
10
|
+
import { QueryService } from './QueryService';
|
|
11
|
+
/**
|
|
12
|
+
* @description
|
|
13
|
+
* Processes all {@link CollectionResource CollectionResources} and adds/removes item entries that do/don't fit the query
|
|
14
|
+
*/
|
|
15
|
+
export declare class CollectionMatcherCachedCollectionProcessor extends CollectionMatcherBase {
|
|
16
|
+
private apiRequestService;
|
|
17
|
+
private promiseService;
|
|
18
|
+
private getCollections;
|
|
19
|
+
protected map: {
|
|
20
|
+
[itemTypeAndQueryString: string]: {
|
|
21
|
+
itemType: ApiEnumItemType;
|
|
22
|
+
query: CollectionQuery;
|
|
23
|
+
collectionResources: CollectionResource[];
|
|
24
|
+
matches: CollectionMatcherMatches;
|
|
25
|
+
};
|
|
26
|
+
};
|
|
27
|
+
constructor(apiRequestService: ApiRequestService, promiseService: PromiseLibraryInterface, queryService: QueryService, queryMatcherFactory: QueryMatcherFactory, transaction: AbstractCache, getCollections: <ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType) => {
|
|
28
|
+
[queryString: string]: Array<CollectionResource<ItemTypeType>>;
|
|
29
|
+
});
|
|
30
|
+
__removeFromAndAddToCollections(isCalledAfterSocketUpdate?: boolean, changesDelta?: ChangesDeltaBase): PromiseInterface<void[]>;
|
|
31
|
+
protected _expand<ItemTypeType extends ApiEnumItemType = any>(itemEntry: ItemEntry<ItemTypeType>, matchFunction: (itemType: ItemTypeType, parsedQuery: CollectionQuery) => boolean | 'maybe'): this;
|
|
32
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { ApiEnumItemType, ItemId } from '@rentman/backend-types';
|
|
2
|
-
import { CollectionOptions, ItemResource } from '../models';
|
|
3
|
-
import { CollectionOptionsInterface } from '../models/CollectionOptions';
|
|
4
|
-
export declare class CollectionResourceService {
|
|
5
|
-
processOptions<ItemTypeType extends ApiEnumItemType>(options: CollectionOptionsInterface<ItemTypeType>): CollectionOptions<ItemTypeType>;
|
|
6
|
-
getIdArray(itemResources: ItemResource[]): ItemId[];
|
|
7
|
-
}
|
|
1
|
+
import { ApiEnumItemType, ItemId } from '@rentman/backend-types';
|
|
2
|
+
import { CollectionOptions, ItemResource } from '../models';
|
|
3
|
+
import { CollectionOptionsInterface } from '../models/CollectionOptions';
|
|
4
|
+
export declare class CollectionResourceService {
|
|
5
|
+
processOptions<ItemTypeType extends ApiEnumItemType>(options: CollectionOptionsInterface<ItemTypeType>): CollectionOptions<ItemTypeType>;
|
|
6
|
+
getIdArray(itemResources: ItemResource[]): ItemId[];
|
|
7
|
+
}
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
import { ApiEnumItemType, ResponseColumn } from '@rentman/backend-types';
|
|
2
|
-
import { ColumnUtil } from '../classes';
|
|
3
|
-
import { ApiRequestColumns, ResponseColumnItemTypeMap } from '../types';
|
|
4
|
-
export declare class ColumnCache {
|
|
5
|
-
private columnUtil;
|
|
6
|
-
cache: ResponseColumnItemTypeMap;
|
|
7
|
-
allColumns: {
|
|
8
|
-
[itemType: string]: boolean;
|
|
9
|
-
};
|
|
10
|
-
constructor(columnUtil: ColumnUtil);
|
|
11
|
-
setColumn(itemType: ApiEnumItemType, responseColumn: ResponseColumn): ResponseColumn;
|
|
12
|
-
setColumns(itemType: ApiEnumItemType, requestColumns: ApiRequestColumns, responseColumns: ResponseColumnItemTypeMap, columnFilter: string | false): ResponseColumnItemTypeMap;
|
|
13
|
-
retrieve(itemType: ApiEnumItemType, requestColumns: ApiRequestColumns): {
|
|
14
|
-
cached: ResponseColumnItemTypeMap;
|
|
15
|
-
missing: ApiRequestColumns;
|
|
16
|
-
};
|
|
17
|
-
containsAll(itemType: ApiEnumItemType): boolean;
|
|
18
|
-
getColumns(itemType: ApiEnumItemType): ResponseColumnItemTypeMap;
|
|
19
|
-
getColumn(itemType: ApiEnumItemType, columnId: string): ResponseColumn | undefined;
|
|
20
|
-
private retrieveColumns;
|
|
21
|
-
private retrieveColumn;
|
|
22
|
-
}
|
|
1
|
+
import { ApiEnumItemType, ResponseColumn } from '@rentman/backend-types';
|
|
2
|
+
import { ColumnUtil } from '../classes';
|
|
3
|
+
import { ApiRequestColumns, ResponseColumnItemTypeMap } from '../types';
|
|
4
|
+
export declare class ColumnCache {
|
|
5
|
+
private columnUtil;
|
|
6
|
+
cache: ResponseColumnItemTypeMap;
|
|
7
|
+
allColumns: {
|
|
8
|
+
[itemType: string]: boolean;
|
|
9
|
+
};
|
|
10
|
+
constructor(columnUtil: ColumnUtil);
|
|
11
|
+
setColumn(itemType: ApiEnumItemType, responseColumn: ResponseColumn): ResponseColumn;
|
|
12
|
+
setColumns(itemType: ApiEnumItemType, requestColumns: ApiRequestColumns, responseColumns: ResponseColumnItemTypeMap, columnFilter: string | false): ResponseColumnItemTypeMap;
|
|
13
|
+
retrieve(itemType: ApiEnumItemType, requestColumns: ApiRequestColumns): {
|
|
14
|
+
cached: ResponseColumnItemTypeMap;
|
|
15
|
+
missing: ApiRequestColumns;
|
|
16
|
+
};
|
|
17
|
+
containsAll(itemType: ApiEnumItemType): boolean;
|
|
18
|
+
getColumns(itemType: ApiEnumItemType): ResponseColumnItemTypeMap;
|
|
19
|
+
getColumn(itemType: ApiEnumItemType, columnId: string): ResponseColumn | undefined;
|
|
20
|
+
private retrieveColumns;
|
|
21
|
+
private retrieveColumn;
|
|
22
|
+
}
|
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
import { ApiEnumItemType } from '@rentman/backend-types';
|
|
2
|
-
import { ColumnInfo, ColumnSet } from '../classes';
|
|
3
|
-
import { ColumnInfoFactory } from '../factories';
|
|
4
|
-
import { ApiRequestColumn, ApiRequestColumns, ColumnExpansionResult, ResponseColumnItemTypeMap } from '../types';
|
|
5
|
-
/**
|
|
6
|
-
* @description
|
|
7
|
-
* A ColumnExpansion is used to make sure {@link ItemEntry ItemEntries} that have the same {@link ColumnSet ColumnSet} (matched on {@link ColumnSet.id ColumnSet.id}) will all get the same new expanded ColumnSet
|
|
8
|
-
*/
|
|
9
|
-
export declare class ColumnExpansion<ItemTypeType extends ApiEnumItemType> {
|
|
10
|
-
private columnInfoFactory;
|
|
11
|
-
itemType: ItemTypeType;
|
|
12
|
-
responseColumns: ResponseColumnItemTypeMap;
|
|
13
|
-
expansionMap: {
|
|
14
|
-
[columnSetId: string]: ColumnExpansionResult<ItemTypeType> | null;
|
|
15
|
-
};
|
|
16
|
-
expansionMapSize: number;
|
|
17
|
-
requestColumnsTrue: boolean;
|
|
18
|
-
requestColumns: ApiRequestColumn[];
|
|
19
|
-
constructor(columnInfoFactory: ColumnInfoFactory, itemType: ItemTypeType, requestColumns: ApiRequestColumns, responseColumns: ResponseColumnItemTypeMap);
|
|
20
|
-
run(columnSet: ColumnSet<ItemTypeType>): ColumnExpansionResult<ItemTypeType> | null;
|
|
21
|
-
aggregateRootColumns(): Array<ColumnInfo<ItemTypeType>>;
|
|
22
|
-
private expandRootColumnMap;
|
|
23
|
-
}
|
|
1
|
+
import { ApiEnumItemType } from '@rentman/backend-types';
|
|
2
|
+
import { ColumnInfo, ColumnSet } from '../classes';
|
|
3
|
+
import { ColumnInfoFactory } from '../factories';
|
|
4
|
+
import { ApiRequestColumn, ApiRequestColumns, ColumnExpansionResult, ResponseColumnItemTypeMap } from '../types';
|
|
5
|
+
/**
|
|
6
|
+
* @description
|
|
7
|
+
* A ColumnExpansion is used to make sure {@link ItemEntry ItemEntries} that have the same {@link ColumnSet ColumnSet} (matched on {@link ColumnSet.id ColumnSet.id}) will all get the same new expanded ColumnSet
|
|
8
|
+
*/
|
|
9
|
+
export declare class ColumnExpansion<ItemTypeType extends ApiEnumItemType> {
|
|
10
|
+
private columnInfoFactory;
|
|
11
|
+
itemType: ItemTypeType;
|
|
12
|
+
responseColumns: ResponseColumnItemTypeMap;
|
|
13
|
+
expansionMap: {
|
|
14
|
+
[columnSetId: string]: ColumnExpansionResult<ItemTypeType> | null;
|
|
15
|
+
};
|
|
16
|
+
expansionMapSize: number;
|
|
17
|
+
requestColumnsTrue: boolean;
|
|
18
|
+
requestColumns: ApiRequestColumn[];
|
|
19
|
+
constructor(columnInfoFactory: ColumnInfoFactory, itemType: ItemTypeType, requestColumns: ApiRequestColumns, responseColumns: ResponseColumnItemTypeMap);
|
|
20
|
+
run(columnSet: ColumnSet<ItemTypeType>): ColumnExpansionResult<ItemTypeType> | null;
|
|
21
|
+
aggregateRootColumns(): Array<ColumnInfo<ItemTypeType>>;
|
|
22
|
+
private expandRootColumnMap;
|
|
23
|
+
}
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
import { ApiEnumItemType, ResponseColumn } from '@rentman/backend-types';
|
|
2
|
-
import { ApiRequestService, ColumnCache, ColumnUtil } from '../classes';
|
|
3
|
-
import { ErrorHandlerInterface, PromiseLibraryInterface } from '../interfaces';
|
|
4
|
-
import { ApiRequestColumns, PromiseInterface, ResponseColumnItemTypeMap } from '../types';
|
|
5
|
-
export declare class ColumnHandler {
|
|
6
|
-
private apiRequestService;
|
|
7
|
-
private errorHandler;
|
|
8
|
-
private promiseService;
|
|
9
|
-
private cache;
|
|
10
|
-
private columnUtil;
|
|
11
|
-
constructor(apiRequestService: ApiRequestService, errorHandler: ErrorHandlerInterface, promiseService: PromiseLibraryInterface, cache: ColumnCache, columnUtil: ColumnUtil);
|
|
12
|
-
setColumn(itemType: ApiEnumItemType, responseColumn: ResponseColumn): ResponseColumn;
|
|
13
|
-
setColumns(itemType: ApiEnumItemType, requestColumns: ApiRequestColumns, responseColumns: ResponseColumnItemTypeMap, filter?: string | false): ResponseColumnItemTypeMap;
|
|
14
|
-
fetchItemTypeTranslations(itemTypes: ApiEnumItemType[]): PromiseInterface<{
|
|
15
|
-
[itemType: string]: string;
|
|
16
|
-
}>;
|
|
17
|
-
request(itemType: ApiEnumItemType, columns: ApiRequestColumns, params?: {
|
|
18
|
-
filter: string | false;
|
|
19
|
-
}): PromiseInterface<ResponseColumnItemTypeMap>;
|
|
20
|
-
fetch(itemType: ApiEnumItemType, requestColumns: ApiRequestColumns, params?: any): PromiseInterface<ResponseColumnItemTypeMap>;
|
|
21
|
-
fetchAll(itemType: ApiEnumItemType): PromiseInterface<ResponseColumnItemTypeMap>;
|
|
22
|
-
}
|
|
1
|
+
import { ApiEnumItemType, ResponseColumn } from '@rentman/backend-types';
|
|
2
|
+
import { ApiRequestService, ColumnCache, ColumnUtil } from '../classes';
|
|
3
|
+
import { ErrorHandlerInterface, PromiseLibraryInterface } from '../interfaces';
|
|
4
|
+
import { ApiRequestColumns, PromiseInterface, ResponseColumnItemTypeMap } from '../types';
|
|
5
|
+
export declare class ColumnHandler {
|
|
6
|
+
private apiRequestService;
|
|
7
|
+
private errorHandler;
|
|
8
|
+
private promiseService;
|
|
9
|
+
private cache;
|
|
10
|
+
private columnUtil;
|
|
11
|
+
constructor(apiRequestService: ApiRequestService, errorHandler: ErrorHandlerInterface, promiseService: PromiseLibraryInterface, cache: ColumnCache, columnUtil: ColumnUtil);
|
|
12
|
+
setColumn(itemType: ApiEnumItemType, responseColumn: ResponseColumn): ResponseColumn;
|
|
13
|
+
setColumns(itemType: ApiEnumItemType, requestColumns: ApiRequestColumns, responseColumns: ResponseColumnItemTypeMap, filter?: string | false): ResponseColumnItemTypeMap;
|
|
14
|
+
fetchItemTypeTranslations(itemTypes: ApiEnumItemType[]): PromiseInterface<{
|
|
15
|
+
[itemType: string]: string;
|
|
16
|
+
}>;
|
|
17
|
+
request(itemType: ApiEnumItemType, columns: ApiRequestColumns, params?: {
|
|
18
|
+
filter: string | false;
|
|
19
|
+
}): PromiseInterface<ResponseColumnItemTypeMap>;
|
|
20
|
+
fetch(itemType: ApiEnumItemType, requestColumns: ApiRequestColumns, params?: any): PromiseInterface<ResponseColumnItemTypeMap>;
|
|
21
|
+
fetchAll(itemType: ApiEnumItemType): PromiseInterface<ResponseColumnItemTypeMap>;
|
|
22
|
+
}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { ApiEnumItemType, ApiFields, GetColumnType } from '@rentman/backend-types';
|
|
2
|
-
export declare class ColumnInfo<ItemTypeType extends ApiEnumItemType = any, ColumnId extends keyof ApiFields[ItemTypeType] = any> {
|
|
3
|
-
readonly apiColumn: GetColumnType<ItemTypeType, ColumnId>;
|
|
4
|
-
readonly parent: ColumnInfo | null;
|
|
5
|
-
id: ColumnId;
|
|
6
|
-
level: number;
|
|
7
|
-
path: string;
|
|
8
|
-
tailPath: string;
|
|
9
|
-
itemType: ItemTypeType | null;
|
|
10
|
-
children: Array<ColumnInfo<ItemTypeType>>;
|
|
11
|
-
isLeaf: boolean;
|
|
12
|
-
constructor(apiColumn: GetColumnType<ItemTypeType, ColumnId>, parent?: ColumnInfo | null);
|
|
13
|
-
setChildren(itemType: ItemTypeType, children: Array<ColumnInfo<ItemTypeType>>): this;
|
|
14
|
-
}
|
|
1
|
+
import { ApiEnumItemType, ApiFields, GetColumnType } from '@rentman/backend-types';
|
|
2
|
+
export declare class ColumnInfo<ItemTypeType extends ApiEnumItemType = any, ColumnId extends keyof ApiFields[ItemTypeType] = any> {
|
|
3
|
+
readonly apiColumn: GetColumnType<ItemTypeType, ColumnId>;
|
|
4
|
+
readonly parent: ColumnInfo | null;
|
|
5
|
+
id: ColumnId;
|
|
6
|
+
level: number;
|
|
7
|
+
path: string;
|
|
8
|
+
tailPath: string;
|
|
9
|
+
itemType: ItemTypeType | null;
|
|
10
|
+
children: Array<ColumnInfo<ItemTypeType>>;
|
|
11
|
+
isLeaf: boolean;
|
|
12
|
+
constructor(apiColumn: GetColumnType<ItemTypeType, ColumnId>, parent?: ColumnInfo | null);
|
|
13
|
+
setChildren(itemType: ItemTypeType, children: Array<ColumnInfo<ItemTypeType>>): this;
|
|
14
|
+
}
|
|
@@ -1,39 +1,39 @@
|
|
|
1
|
-
import { ApiEnumItemType } from '@rentman/backend-types';
|
|
2
|
-
import { ColumnInfo, ColumnUtil, RequestColumnMergeResult } from '../classes';
|
|
3
|
-
import { ColumnSetFactory } from '../factories';
|
|
4
|
-
import { ApiRequestColumns, ColumnExpansionResult, ResponseColumnItemTypeMap } from '../types';
|
|
5
|
-
export declare class ColumnSet<ItemTypeType extends ApiEnumItemType = any> {
|
|
6
|
-
private columnUtil;
|
|
7
|
-
private columnSetFactory;
|
|
8
|
-
itemType: ItemTypeType;
|
|
9
|
-
id: number;
|
|
10
|
-
request: ApiRequestColumns;
|
|
11
|
-
requestColumnsTrue: boolean;
|
|
12
|
-
response: ResponseColumnItemTypeMap;
|
|
13
|
-
link: ColumnInfo<ItemTypeType> | null;
|
|
14
|
-
main: Array<ColumnInfo<ItemTypeType>>;
|
|
15
|
-
derived: Array<ColumnInfo<ItemTypeType>>;
|
|
16
|
-
root: Array<ColumnInfo<ItemTypeType>>;
|
|
17
|
-
leaf: Array<ColumnInfo<ItemTypeType>>;
|
|
18
|
-
formatted: {
|
|
19
|
-
main: Array<ColumnInfo<ItemTypeType>>;
|
|
20
|
-
derived: Array<ColumnInfo<ItemTypeType>>;
|
|
21
|
-
};
|
|
22
|
-
filtered: Array<ColumnInfo<ItemTypeType>>;
|
|
23
|
-
custom: Array<ColumnInfo<ItemTypeType>>;
|
|
24
|
-
searchable: Array<ColumnInfo<ItemTypeType>>;
|
|
25
|
-
item: Array<ColumnInfo<ItemTypeType>>;
|
|
26
|
-
notItem: Array<ColumnInfo<ItemTypeType>>;
|
|
27
|
-
constructor(columnUtil: ColumnUtil, columnSetFactory: ColumnSetFactory, itemType: ItemTypeType);
|
|
28
|
-
groupColumnInfo(columnInfo: ColumnInfo): void;
|
|
29
|
-
toJSON(): {
|
|
30
|
-
main: any[];
|
|
31
|
-
derived: any[];
|
|
32
|
-
};
|
|
33
|
-
isSupersetOf(columnsToCompare: ApiRequestColumns): boolean;
|
|
34
|
-
private getMergedColumnSet;
|
|
35
|
-
mergeRequestColumns(requestColumns: ApiRequestColumns): RequestColumnMergeResult;
|
|
36
|
-
mergeResponseColumns(responseColumns: ResponseColumnItemTypeMap): ResponseColumnItemTypeMap;
|
|
37
|
-
merge(columnSet: ColumnSet<ItemTypeType>): ColumnSet<ItemTypeType>;
|
|
38
|
-
expand(requestColumns: ApiRequestColumns, requestColumnsTrue: boolean, responseColumns: ResponseColumnItemTypeMap): ColumnExpansionResult<ItemTypeType>;
|
|
39
|
-
}
|
|
1
|
+
import { ApiEnumItemType } from '@rentman/backend-types';
|
|
2
|
+
import { ColumnInfo, ColumnUtil, RequestColumnMergeResult } from '../classes';
|
|
3
|
+
import { ColumnSetFactory } from '../factories';
|
|
4
|
+
import { ApiRequestColumns, ColumnExpansionResult, ResponseColumnItemTypeMap } from '../types';
|
|
5
|
+
export declare class ColumnSet<ItemTypeType extends ApiEnumItemType = any> {
|
|
6
|
+
private columnUtil;
|
|
7
|
+
private columnSetFactory;
|
|
8
|
+
itemType: ItemTypeType;
|
|
9
|
+
id: number;
|
|
10
|
+
request: ApiRequestColumns;
|
|
11
|
+
requestColumnsTrue: boolean;
|
|
12
|
+
response: ResponseColumnItemTypeMap;
|
|
13
|
+
link: ColumnInfo<ItemTypeType> | null;
|
|
14
|
+
main: Array<ColumnInfo<ItemTypeType>>;
|
|
15
|
+
derived: Array<ColumnInfo<ItemTypeType>>;
|
|
16
|
+
root: Array<ColumnInfo<ItemTypeType>>;
|
|
17
|
+
leaf: Array<ColumnInfo<ItemTypeType>>;
|
|
18
|
+
formatted: {
|
|
19
|
+
main: Array<ColumnInfo<ItemTypeType>>;
|
|
20
|
+
derived: Array<ColumnInfo<ItemTypeType>>;
|
|
21
|
+
};
|
|
22
|
+
filtered: Array<ColumnInfo<ItemTypeType>>;
|
|
23
|
+
custom: Array<ColumnInfo<ItemTypeType>>;
|
|
24
|
+
searchable: Array<ColumnInfo<ItemTypeType>>;
|
|
25
|
+
item: Array<ColumnInfo<ItemTypeType>>;
|
|
26
|
+
notItem: Array<ColumnInfo<ItemTypeType>>;
|
|
27
|
+
constructor(columnUtil: ColumnUtil, columnSetFactory: ColumnSetFactory, itemType: ItemTypeType);
|
|
28
|
+
groupColumnInfo(columnInfo: ColumnInfo): void;
|
|
29
|
+
toJSON(): {
|
|
30
|
+
main: any[];
|
|
31
|
+
derived: any[];
|
|
32
|
+
};
|
|
33
|
+
isSupersetOf(columnsToCompare: ApiRequestColumns): boolean;
|
|
34
|
+
private getMergedColumnSet;
|
|
35
|
+
mergeRequestColumns(requestColumns: ApiRequestColumns): RequestColumnMergeResult;
|
|
36
|
+
mergeResponseColumns(responseColumns: ResponseColumnItemTypeMap): ResponseColumnItemTypeMap;
|
|
37
|
+
merge(columnSet: ColumnSet<ItemTypeType>): ColumnSet<ItemTypeType>;
|
|
38
|
+
expand(requestColumns: ApiRequestColumns, requestColumnsTrue: boolean, responseColumns: ResponseColumnItemTypeMap): ColumnExpansionResult<ItemTypeType>;
|
|
39
|
+
}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { ApiEnumItemType } from '@rentman/backend-types';
|
|
2
|
-
import { ColumnCache, ColumnSet, ColumnUtil } from '../classes';
|
|
3
|
-
import { ApiRequestColumn, ApiRequestColumns } from '../types';
|
|
4
|
-
export declare class ColumnSubsetCache<ItemTypeType extends ApiEnumItemType> {
|
|
5
|
-
private columnUtil;
|
|
6
|
-
private columnCache;
|
|
7
|
-
itemType: ItemTypeType;
|
|
8
|
-
requestColumns: ApiRequestColumns;
|
|
9
|
-
aggregateColumns: ApiRequestColumn[];
|
|
10
|
-
private cache;
|
|
11
|
-
constructor(columnUtil: ColumnUtil, columnCache: ColumnCache, itemType: ItemTypeType, requestColumns: ApiRequestColumns);
|
|
12
|
-
run(columnSet: ColumnSet<ItemTypeType>): boolean;
|
|
13
|
-
runWithRequestColumns(cachedRequestColumns: ApiRequestColumns): boolean;
|
|
14
|
-
private extractAggregateColumns;
|
|
15
|
-
}
|
|
1
|
+
import { ApiEnumItemType } from '@rentman/backend-types';
|
|
2
|
+
import { ColumnCache, ColumnSet, ColumnUtil } from '../classes';
|
|
3
|
+
import { ApiRequestColumn, ApiRequestColumns } from '../types';
|
|
4
|
+
export declare class ColumnSubsetCache<ItemTypeType extends ApiEnumItemType> {
|
|
5
|
+
private columnUtil;
|
|
6
|
+
private columnCache;
|
|
7
|
+
itemType: ItemTypeType;
|
|
8
|
+
requestColumns: ApiRequestColumns;
|
|
9
|
+
aggregateColumns: ApiRequestColumn[];
|
|
10
|
+
private cache;
|
|
11
|
+
constructor(columnUtil: ColumnUtil, columnCache: ColumnCache, itemType: ItemTypeType, requestColumns: ApiRequestColumns);
|
|
12
|
+
run(columnSet: ColumnSet<ItemTypeType>): boolean;
|
|
13
|
+
runWithRequestColumns(cachedRequestColumns: ApiRequestColumns): boolean;
|
|
14
|
+
private extractAggregateColumns;
|
|
15
|
+
}
|