@rentman/rm-core 7.0.0 → 7.0.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 +807 -801
- package/dist/rm-core.js +9901 -9890
- package/dist/rm-core.min.js +2 -2
- package/dist/types/classes/ApiFormatter.d.ts +65 -65
- package/dist/types/classes/ApiRequestService.d.ts +20 -20
- package/dist/types/classes/ApiResponseProcessor.d.ts +31 -31
- package/dist/types/classes/ChangesCompilation.d.ts +34 -34
- package/dist/types/classes/ChangesDelta.d.ts +61 -61
- 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 +26 -26
- package/dist/types/classes/CollectionMatcherBase.d.ts +21 -21
- package/dist/types/classes/CollectionMatcherCachedCollectionProcessor.d.ts +31 -31
- package/dist/types/classes/CollectionResourceService.d.ts +7 -7
- package/dist/types/classes/ColumnCache.d.ts +21 -21
- package/dist/types/classes/ColumnExpansion.d.ts +22 -22
- package/dist/types/classes/ColumnHandler.d.ts +21 -21
- package/dist/types/classes/ColumnInfo.d.ts +14 -14
- package/dist/types/classes/ColumnSet.d.ts +38 -38
- package/dist/types/classes/ColumnSubsetCache.d.ts +10 -10
- package/dist/types/classes/ColumnUtil.d.ts +99 -99
- package/dist/types/classes/ConversionMapService.d.ts +27 -27
- package/dist/types/classes/CreateRequest.d.ts +19 -19
- package/dist/types/classes/CreatedChangesDelta.d.ts +16 -16
- package/dist/types/classes/InternalChangesDelta.d.ts +39 -39
- package/dist/types/classes/ItemCache.d.ts +29 -29
- package/dist/types/classes/ItemCreateService.d.ts +24 -24
- package/dist/types/classes/ItemEntryService.d.ts +34 -34
- package/dist/types/classes/KeyService.d.ts +17 -17
- package/dist/types/classes/LockService.d.ts +32 -32
- package/dist/types/classes/ModuleChangesCompilation.d.ts +18 -18
- 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 +18 -18
- package/dist/types/classes/QueryParser.d.ts +24 -24
- package/dist/types/classes/QueryParserBase.d.ts +29 -29
- package/dist/types/classes/QueryParserIdUpdater.d.ts +16 -16
- package/dist/types/classes/QueryService.d.ts +18 -18
- package/dist/types/classes/RequestBuffer.d.ts +28 -28
- package/dist/types/classes/RequestBufferManager.d.ts +25 -25
- package/dist/types/classes/RequestColumnExpansion.d.ts +15 -15
- package/dist/types/classes/SocketMessageHandler.d.ts +39 -39
- package/dist/types/classes/TemplateCache.d.ts +66 -66
- 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 +74 -74
- package/dist/types/classes/cache/CollectionMatcherCachedQueryProcessor.d.ts +35 -35
- package/dist/types/classes/cache/ItemHandlerBase.d.ts +105 -105
- package/dist/types/classes/cache/server/ServerCache.d.ts +82 -82
- package/dist/types/classes/cache/server/ServerCachedQueryHandler.d.ts +34 -34
- package/dist/types/classes/cache/server/ServerItemHandler.d.ts +52 -52
- package/dist/types/classes/cache/transaction/TransactionCache.d.ts +324 -324
- package/dist/types/classes/cache/transaction/TransactionCachedQueryHandler.d.ts +23 -23
- package/dist/types/classes/cache/transaction/TransactionCollectionHandler.d.ts +28 -28
- package/dist/types/classes/cache/transaction/TransactionEventHandler.d.ts +24 -24
- package/dist/types/classes/cache/transaction/TransactionItemHandler.d.ts +90 -90
- package/dist/types/classes/cache/transaction/TransactionValidator.d.ts +34 -34
- 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 +8 -8
- package/dist/types/factories/ColumnInfoFactory.d.ts +7 -7
- package/dist/types/factories/ColumnSetFactory.d.ts +19 -19
- package/dist/types/factories/ColumnSubsetCacheFactory.d.ts +7 -7
- 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 +7 -7
- 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 +10 -10
- 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 +11 -11
- package/dist/types/interfaces/AuthInterface.d.ts +9 -9
- 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 +27 -27
- package/dist/types/interfaces/index.d.ts +11 -11
- package/dist/types/models/CollectionEntry.d.ts +23 -23
- package/dist/types/models/CollectionOptions.d.ts +18 -18
- package/dist/types/models/CollectionResource.d.ts +72 -72
- 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 +84 -84
- package/dist/types/models/Template.d.ts +11 -11
- package/dist/types/models/index.d.ts +7 -7
- package/dist/types/types/ItemTypesCollection.d.ts +262 -262
- package/dist/types/types/PromiseInterface.d.ts +2 -2
- package/dist/types/types/index.d.ts +2 -2
- package/package.json +36 -36
- package/readme.md +15 -15
|
@@ -1,99 +1,99 @@
|
|
|
1
|
-
import { LinkTreeServiceInterface } from '../interfaces/LinkTreeServiceInterface';
|
|
2
|
-
import { ApiRequestColumn, ApiRequestColumns, ItemType, ResponseColumn, ResponseColumnItemTypeMap, ResponseColumnMap } from '../types';
|
|
3
|
-
export declare type RequestColumnMergeResult<T extends ApiRequestColumns = ApiRequestColumns, U extends ApiRequestColumns = ApiRequestColumns> = {
|
|
4
|
-
merged: T;
|
|
5
|
-
difference: U;
|
|
6
|
-
};
|
|
7
|
-
export declare class ColumnUtil {
|
|
8
|
-
private linkTreeService;
|
|
9
|
-
constructor(linkTreeService: LinkTreeServiceInterface);
|
|
10
|
-
/**
|
|
11
|
-
* @description
|
|
12
|
-
* Checks the {@link ApiLinkTree LinkTree} and returns the link columnIds for the given ItemType
|
|
13
|
-
*
|
|
14
|
-
* @remark
|
|
15
|
-
* - For {@link ApiLinkTreeType.DIRECT direct links} it will be a columnId
|
|
16
|
-
* - For {@link ApiLinkTreeType.ITEMTABLE itemtable links} it will be 'itemtype' and 'item'
|
|
17
|
-
*/
|
|
18
|
-
getColumnsFromLink(parentType: ItemType, itemType: ItemType): ApiRequestColumn[];
|
|
19
|
-
getColumnPath(columns: ResponseColumn[], renderAs: null | string): string;
|
|
20
|
-
getDateFormatOptions(columnType?: 'datetime'): {
|
|
21
|
-
'J-M-Y': string;
|
|
22
|
-
'J-M': string;
|
|
23
|
-
'j+F+Y': string;
|
|
24
|
-
'D+j+F+Y': string;
|
|
25
|
-
'F': string;
|
|
26
|
-
'f': string;
|
|
27
|
-
'D': string;
|
|
28
|
-
'd': string;
|
|
29
|
-
};
|
|
30
|
-
isStringColumn(column: ResponseColumn): boolean;
|
|
31
|
-
isFloatColumn(column: ResponseColumn): boolean;
|
|
32
|
-
isIntColumn(column: ResponseColumn): boolean;
|
|
33
|
-
isNumberColumn(column: ResponseColumn): boolean;
|
|
34
|
-
isCustomColumn(column: ResponseColumn): boolean;
|
|
35
|
-
isItemColumn(column: ResponseColumn, includeId?: boolean): boolean;
|
|
36
|
-
isDateColumn(column: ResponseColumn): boolean;
|
|
37
|
-
isRenderedColumn(column: ResponseColumn): boolean;
|
|
38
|
-
isFilteredColumn(column: ResponseColumn): boolean;
|
|
39
|
-
isFormattedColumn(column: ResponseColumn): boolean;
|
|
40
|
-
isSelectableColumn(column: ResponseColumn): boolean;
|
|
41
|
-
hasLocationProperty(column: ResponseColumn, location: number): boolean;
|
|
42
|
-
isEditableColumn(column: ResponseColumn): boolean;
|
|
43
|
-
isSearchableColumn(column: ResponseColumn): boolean;
|
|
44
|
-
getDefaultWeight(column: ResponseColumn): number;
|
|
45
|
-
getComparators(column: ResponseColumn & {
|
|
46
|
-
type: 'dimension' | 'weight' | 'price';
|
|
47
|
-
}): ['=', '>', '<'];
|
|
48
|
-
getComparators(column: ResponseColumn & {
|
|
49
|
-
type: 'date' | 'datetime' | 'time' | 'duration';
|
|
50
|
-
}): ['>', '<'];
|
|
51
|
-
getComparators(column: ResponseColumn): ['=', '!='];
|
|
52
|
-
containsColumn(requestColumn: ApiRequestColumn, destination: ApiRequestColumn[]): boolean;
|
|
53
|
-
containsDerivedColumns(requestColumns: ApiRequestColumn[]): boolean;
|
|
54
|
-
responseColumnsAvailable(itemType: ItemType, requestColumns: ApiRequestColumn[], responseColumnMap: ResponseColumnItemTypeMap): boolean;
|
|
55
|
-
copyRequestColumns(columns: true): true;
|
|
56
|
-
copyRequestColumns(columns: ApiRequestColumn[]): ApiRequestColumn[];
|
|
57
|
-
copyRequestColumn(requestColumn: ApiRequestColumn): ApiRequestColumn;
|
|
58
|
-
mergeRequestColumns(first: true, second: ApiRequestColumns): RequestColumnMergeResult<true, []>;
|
|
59
|
-
mergeRequestColumns(first: ApiRequestColumn[], second: true): RequestColumnMergeResult<true, true>;
|
|
60
|
-
mergeRequestColumns(first: ApiRequestColumn[], second: ApiRequestColumn[]): RequestColumnMergeResult<ApiRequestColumn[], ApiRequestColumn[]>;
|
|
61
|
-
mergeRequestColumns(first: ApiRequestColumns, second: ApiRequestColumns): RequestColumnMergeResult;
|
|
62
|
-
mergeRequestColumn(requestColumn: ApiRequestColumn, destination: ApiRequestColumn[]): string | {
|
|
63
|
-
[columnId: string]: ApiRequestColumn[];
|
|
64
|
-
} | null;
|
|
65
|
-
getRequestColumnId(requestColumn: ApiRequestColumn): string;
|
|
66
|
-
parseRequestColumn(requestColumn: ApiRequestColumn): {
|
|
67
|
-
id: string;
|
|
68
|
-
children: ApiRequestColumn[];
|
|
69
|
-
};
|
|
70
|
-
/**
|
|
71
|
-
* @description
|
|
72
|
-
* Merges two sets of {@link ResponseColumnItemTypeMap ResponseColumnItemTypeMaps}.
|
|
73
|
-
*
|
|
74
|
-
* @returns
|
|
75
|
-
* - Merged: The merged set of columns
|
|
76
|
-
* - Difference: Columns that are in second, but not in first
|
|
77
|
-
*/
|
|
78
|
-
mergeResponseColumns(first: ResponseColumnItemTypeMap, second: ResponseColumnItemTypeMap): {
|
|
79
|
-
merged: ResponseColumnItemTypeMap;
|
|
80
|
-
difference: ResponseColumnItemTypeMap;
|
|
81
|
-
};
|
|
82
|
-
/**
|
|
83
|
-
* @description
|
|
84
|
-
* Merges two sets of {@link ResponseColumnMap response columns}.
|
|
85
|
-
*
|
|
86
|
-
* @returns
|
|
87
|
-
* - Merged: The merged set of columns
|
|
88
|
-
* - Difference: Columns that are in second, but not in first
|
|
89
|
-
*/
|
|
90
|
-
mergeResponseColumnMap(first: ResponseColumnMap, second: ResponseColumnMap): {
|
|
91
|
-
merged: ResponseColumnMap;
|
|
92
|
-
difference: ResponseColumnMap;
|
|
93
|
-
};
|
|
94
|
-
isLocalColumnId(columnId: string): boolean;
|
|
95
|
-
processConfigColumns(configColumns: string[]): ApiRequestColumn[];
|
|
96
|
-
parseConfigColumn(configColumn: string): string[];
|
|
97
|
-
processConfigColumn(parsedConfigColumn: string[], destination: ApiRequestColumn[]): void;
|
|
98
|
-
findRequestColumn(columnId: string, requestColumns: ApiRequestColumn[]): number;
|
|
99
|
-
}
|
|
1
|
+
import { LinkTreeServiceInterface } from '../interfaces/LinkTreeServiceInterface';
|
|
2
|
+
import { ApiRequestColumn, ApiRequestColumns, ItemType, ResponseColumn, ResponseColumnItemTypeMap, ResponseColumnMap } from '../types';
|
|
3
|
+
export declare type RequestColumnMergeResult<T extends ApiRequestColumns = ApiRequestColumns, U extends ApiRequestColumns = ApiRequestColumns> = {
|
|
4
|
+
merged: T;
|
|
5
|
+
difference: U;
|
|
6
|
+
};
|
|
7
|
+
export declare class ColumnUtil {
|
|
8
|
+
private linkTreeService;
|
|
9
|
+
constructor(linkTreeService: LinkTreeServiceInterface);
|
|
10
|
+
/**
|
|
11
|
+
* @description
|
|
12
|
+
* Checks the {@link ApiLinkTree LinkTree} and returns the link columnIds for the given ItemType
|
|
13
|
+
*
|
|
14
|
+
* @remark
|
|
15
|
+
* - For {@link ApiLinkTreeType.DIRECT direct links} it will be a columnId
|
|
16
|
+
* - For {@link ApiLinkTreeType.ITEMTABLE itemtable links} it will be 'itemtype' and 'item'
|
|
17
|
+
*/
|
|
18
|
+
getColumnsFromLink(parentType: ItemType, itemType: ItemType): ApiRequestColumn[];
|
|
19
|
+
getColumnPath(columns: ResponseColumn[], renderAs: null | string): string;
|
|
20
|
+
getDateFormatOptions(columnType?: 'datetime'): {
|
|
21
|
+
'J-M-Y': string;
|
|
22
|
+
'J-M': string;
|
|
23
|
+
'j+F+Y': string;
|
|
24
|
+
'D+j+F+Y': string;
|
|
25
|
+
'F': string;
|
|
26
|
+
'f': string;
|
|
27
|
+
'D': string;
|
|
28
|
+
'd': string;
|
|
29
|
+
};
|
|
30
|
+
isStringColumn(column: ResponseColumn): boolean;
|
|
31
|
+
isFloatColumn(column: ResponseColumn): boolean;
|
|
32
|
+
isIntColumn(column: ResponseColumn): boolean;
|
|
33
|
+
isNumberColumn(column: ResponseColumn): boolean;
|
|
34
|
+
isCustomColumn(column: ResponseColumn): boolean;
|
|
35
|
+
isItemColumn(column: ResponseColumn, includeId?: boolean): boolean;
|
|
36
|
+
isDateColumn(column: ResponseColumn): boolean;
|
|
37
|
+
isRenderedColumn(column: ResponseColumn): boolean;
|
|
38
|
+
isFilteredColumn(column: ResponseColumn): boolean;
|
|
39
|
+
isFormattedColumn(column: ResponseColumn): boolean;
|
|
40
|
+
isSelectableColumn(column: ResponseColumn): boolean;
|
|
41
|
+
hasLocationProperty(column: ResponseColumn, location: number): boolean;
|
|
42
|
+
isEditableColumn(column: ResponseColumn): boolean;
|
|
43
|
+
isSearchableColumn(column: ResponseColumn): boolean;
|
|
44
|
+
getDefaultWeight(column: ResponseColumn): number;
|
|
45
|
+
getComparators(column: ResponseColumn & {
|
|
46
|
+
type: 'dimension' | 'weight' | 'price';
|
|
47
|
+
}): ['=', '>', '<'];
|
|
48
|
+
getComparators(column: ResponseColumn & {
|
|
49
|
+
type: 'date' | 'datetime' | 'time' | 'duration';
|
|
50
|
+
}): ['>', '<'];
|
|
51
|
+
getComparators(column: ResponseColumn): ['=', '!='];
|
|
52
|
+
containsColumn(requestColumn: ApiRequestColumn, destination: ApiRequestColumn[]): boolean;
|
|
53
|
+
containsDerivedColumns(requestColumns: ApiRequestColumn[]): boolean;
|
|
54
|
+
responseColumnsAvailable(itemType: ItemType, requestColumns: ApiRequestColumn[], responseColumnMap: ResponseColumnItemTypeMap): boolean;
|
|
55
|
+
copyRequestColumns(columns: true): true;
|
|
56
|
+
copyRequestColumns(columns: ApiRequestColumn[]): ApiRequestColumn[];
|
|
57
|
+
copyRequestColumn(requestColumn: ApiRequestColumn): ApiRequestColumn;
|
|
58
|
+
mergeRequestColumns(first: true, second: ApiRequestColumns): RequestColumnMergeResult<true, []>;
|
|
59
|
+
mergeRequestColumns(first: ApiRequestColumn[], second: true): RequestColumnMergeResult<true, true>;
|
|
60
|
+
mergeRequestColumns(first: ApiRequestColumn[], second: ApiRequestColumn[]): RequestColumnMergeResult<ApiRequestColumn[], ApiRequestColumn[]>;
|
|
61
|
+
mergeRequestColumns(first: ApiRequestColumns, second: ApiRequestColumns): RequestColumnMergeResult;
|
|
62
|
+
mergeRequestColumn(requestColumn: ApiRequestColumn, destination: ApiRequestColumn[]): string | {
|
|
63
|
+
[columnId: string]: ApiRequestColumn[];
|
|
64
|
+
} | null;
|
|
65
|
+
getRequestColumnId(requestColumn: ApiRequestColumn): string;
|
|
66
|
+
parseRequestColumn(requestColumn: ApiRequestColumn): {
|
|
67
|
+
id: string;
|
|
68
|
+
children: ApiRequestColumn[];
|
|
69
|
+
};
|
|
70
|
+
/**
|
|
71
|
+
* @description
|
|
72
|
+
* Merges two sets of {@link ResponseColumnItemTypeMap ResponseColumnItemTypeMaps}.
|
|
73
|
+
*
|
|
74
|
+
* @returns
|
|
75
|
+
* - Merged: The merged set of columns
|
|
76
|
+
* - Difference: Columns that are in second, but not in first
|
|
77
|
+
*/
|
|
78
|
+
mergeResponseColumns(first: ResponseColumnItemTypeMap, second: ResponseColumnItemTypeMap): {
|
|
79
|
+
merged: ResponseColumnItemTypeMap;
|
|
80
|
+
difference: ResponseColumnItemTypeMap;
|
|
81
|
+
};
|
|
82
|
+
/**
|
|
83
|
+
* @description
|
|
84
|
+
* Merges two sets of {@link ResponseColumnMap response columns}.
|
|
85
|
+
*
|
|
86
|
+
* @returns
|
|
87
|
+
* - Merged: The merged set of columns
|
|
88
|
+
* - Difference: Columns that are in second, but not in first
|
|
89
|
+
*/
|
|
90
|
+
mergeResponseColumnMap(first: ResponseColumnMap, second: ResponseColumnMap): {
|
|
91
|
+
merged: ResponseColumnMap;
|
|
92
|
+
difference: ResponseColumnMap;
|
|
93
|
+
};
|
|
94
|
+
isLocalColumnId(columnId: string): boolean;
|
|
95
|
+
processConfigColumns(configColumns: string[]): ApiRequestColumn[];
|
|
96
|
+
parseConfigColumn(configColumn: string): string[];
|
|
97
|
+
processConfigColumn(parsedConfigColumn: string[], destination: ApiRequestColumn[]): void;
|
|
98
|
+
findRequestColumn(columnId: string, requestColumns: ApiRequestColumn[]): number;
|
|
99
|
+
}
|
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
import { ItemEntry } from '../models';
|
|
2
|
-
import { ApiResponse, EntryParentNull, FieldMap, ItemId, ItemIdConversionMap, ItemType } from '../types';
|
|
3
|
-
import { ColumnInfo } from './ColumnInfo';
|
|
4
|
-
import { KeyService } from './KeyService';
|
|
5
|
-
/**
|
|
6
|
-
* @description A 'ConversionMap' is used to update a set of item IDs to another. This happens when processing back-end
|
|
7
|
-
* responses (create / template) or cloning items in the front-end. A conversion map is grouped by item type, as item
|
|
8
|
-
* ID's are not unique across types.
|
|
9
|
-
*
|
|
10
|
-
* TODO: In the future, we should create a class and a 'ConversionMapFactory'.
|
|
11
|
-
*/
|
|
12
|
-
export declare class ConversionMapService {
|
|
13
|
-
private keyService;
|
|
14
|
-
constructor(keyService: KeyService);
|
|
15
|
-
createLocalConversionMap(itemType: ItemType, itemId: ItemId, doExtend: boolean | undefined, apiResponse: ApiResponse): ItemIdConversionMap;
|
|
16
|
-
expandLocalConversionMap(parentType: ItemType, parentId: ItemId, apiResponse: ApiResponse, conversionMap: ItemIdConversionMap): void;
|
|
17
|
-
expandConversionMap(itemEntry: ItemEntry, conversionMap: ItemIdConversionMap, newItemId?: ItemId): ItemId;
|
|
18
|
-
batchExpandConversionMap(itemEntries: Array<ItemEntry<any>>, conversionMap: ItemIdConversionMap): ItemIdConversionMap;
|
|
19
|
-
getConversionValue(itemType: ItemType, itemId: ItemId, map: ItemIdConversionMap): ItemId | undefined;
|
|
20
|
-
/**
|
|
21
|
-
* @description
|
|
22
|
-
* Updates the columns in `fields` using the `parent` and `conversionMap`.
|
|
23
|
-
* @param parent - When retrieving an item the 'link' column is not present in the template response, and is
|
|
24
|
-
* added at a later stage. The value for this column can be read from this parameter.
|
|
25
|
-
*/
|
|
26
|
-
updateItemValues<ItemTypeType extends ItemType>(source: FieldMap<ItemTypeType>, destination: FieldMap<ItemTypeType>, itemColumns: Array<ColumnInfo<ItemTypeType>>, conversionMap: ItemIdConversionMap, parent?: EntryParentNull): void;
|
|
27
|
-
}
|
|
1
|
+
import { ItemEntry } from '../models';
|
|
2
|
+
import { ApiResponse, EntryParentNull, FieldMap, ItemId, ItemIdConversionMap, ItemType } from '../types';
|
|
3
|
+
import { ColumnInfo } from './ColumnInfo';
|
|
4
|
+
import { KeyService } from './KeyService';
|
|
5
|
+
/**
|
|
6
|
+
* @description A 'ConversionMap' is used to update a set of item IDs to another. This happens when processing back-end
|
|
7
|
+
* responses (create / template) or cloning items in the front-end. A conversion map is grouped by item type, as item
|
|
8
|
+
* ID's are not unique across types.
|
|
9
|
+
*
|
|
10
|
+
* TODO: In the future, we should create a class and a 'ConversionMapFactory'.
|
|
11
|
+
*/
|
|
12
|
+
export declare class ConversionMapService {
|
|
13
|
+
private keyService;
|
|
14
|
+
constructor(keyService: KeyService);
|
|
15
|
+
createLocalConversionMap(itemType: ItemType, itemId: ItemId, doExtend: boolean | undefined, apiResponse: ApiResponse): ItemIdConversionMap;
|
|
16
|
+
expandLocalConversionMap(parentType: ItemType, parentId: ItemId, apiResponse: ApiResponse, conversionMap: ItemIdConversionMap): void;
|
|
17
|
+
expandConversionMap(itemEntry: ItemEntry, conversionMap: ItemIdConversionMap, newItemId?: ItemId): ItemId;
|
|
18
|
+
batchExpandConversionMap(itemEntries: Array<ItemEntry<any>>, conversionMap: ItemIdConversionMap): ItemIdConversionMap;
|
|
19
|
+
getConversionValue(itemType: ItemType, itemId: ItemId, map: ItemIdConversionMap): ItemId | undefined;
|
|
20
|
+
/**
|
|
21
|
+
* @description
|
|
22
|
+
* Updates the columns in `fields` using the `parent` and `conversionMap`.
|
|
23
|
+
* @param parent - When retrieving an item the 'link' column is not present in the template response, and is
|
|
24
|
+
* added at a later stage. The value for this column can be read from this parameter.
|
|
25
|
+
*/
|
|
26
|
+
updateItemValues<ItemTypeType extends ItemType>(source: FieldMap<ItemTypeType>, destination: FieldMap<ItemTypeType>, itemColumns: Array<ColumnInfo<ItemTypeType>>, conversionMap: ItemIdConversionMap, parent?: EntryParentNull): void;
|
|
27
|
+
}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
import { ApiFormatter, CreateCompilation, KeyService } from '../classes';
|
|
2
|
-
import { RequestColumnExpansionFactory } from '../factories';
|
|
3
|
-
import { CreateRequestEntry, ItemType } from '../types';
|
|
4
|
-
import { TransactionCache } from './cache/transaction/TransactionCache';
|
|
5
|
-
export declare class CreateRequest<ItemTypeType extends ItemType> {
|
|
6
|
-
private apiFormatter;
|
|
7
|
-
private keyService;
|
|
8
|
-
private requestColumnExpansionFactory;
|
|
9
|
-
private compilation;
|
|
10
|
-
private transaction;
|
|
11
|
-
private breakupByParent;
|
|
12
|
-
requests: Array<CreateRequestEntry<ItemTypeType>>;
|
|
13
|
-
constructor(apiFormatter: ApiFormatter, keyService: KeyService, requestColumnExpansionFactory: RequestColumnExpansionFactory, compilation: CreateCompilation, transaction: TransactionCache, breakupByParent?: boolean);
|
|
14
|
-
finalizeRequest(requestResource: CreateRequestEntry<ItemTypeType>): CreateRequestEntry<ItemTypeType>;
|
|
15
|
-
setRequestParent(parentType: ItemType, requestEntry: CreateRequestEntry<ItemTypeType>): boolean;
|
|
16
|
-
run(): CreateRequestEntry<ItemTypeType>[];
|
|
17
|
-
initializeRequest(): CreateRequestEntry<ItemTypeType>;
|
|
18
|
-
private extendRequest;
|
|
19
|
-
}
|
|
1
|
+
import { ApiFormatter, CreateCompilation, KeyService } from '../classes';
|
|
2
|
+
import { RequestColumnExpansionFactory } from '../factories';
|
|
3
|
+
import { CreateRequestEntry, ItemType } from '../types';
|
|
4
|
+
import { TransactionCache } from './cache/transaction/TransactionCache';
|
|
5
|
+
export declare class CreateRequest<ItemTypeType extends ItemType> {
|
|
6
|
+
private apiFormatter;
|
|
7
|
+
private keyService;
|
|
8
|
+
private requestColumnExpansionFactory;
|
|
9
|
+
private compilation;
|
|
10
|
+
private transaction;
|
|
11
|
+
private breakupByParent;
|
|
12
|
+
requests: Array<CreateRequestEntry<ItemTypeType>>;
|
|
13
|
+
constructor(apiFormatter: ApiFormatter, keyService: KeyService, requestColumnExpansionFactory: RequestColumnExpansionFactory, compilation: CreateCompilation, transaction: TransactionCache, breakupByParent?: boolean);
|
|
14
|
+
finalizeRequest(requestResource: CreateRequestEntry<ItemTypeType>): CreateRequestEntry<ItemTypeType>;
|
|
15
|
+
setRequestParent(parentType: ItemType, requestEntry: CreateRequestEntry<ItemTypeType>): boolean;
|
|
16
|
+
run(): CreateRequestEntry<ItemTypeType>[];
|
|
17
|
+
initializeRequest(): CreateRequestEntry<ItemTypeType>;
|
|
18
|
+
private extendRequest;
|
|
19
|
+
}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { FieldMap, ItemId, ItemType } from '../types';
|
|
2
|
-
import { ColumnSet } from './ColumnSet';
|
|
3
|
-
export declare type ChangesDeltaItemCreateDelta<ItemTypeType extends ItemType = any> = {
|
|
4
|
-
itemId: ItemId;
|
|
5
|
-
fields: FieldMap<ItemTypeType>;
|
|
6
|
-
columns: ColumnSet<ItemTypeType>;
|
|
7
|
-
};
|
|
8
|
-
export declare class CreatedChangesDelta {
|
|
9
|
-
private tuples;
|
|
10
|
-
constructor();
|
|
11
|
-
remove(itemType: ItemType, itemId: ItemId): boolean;
|
|
12
|
-
add<ItemTypeType extends ItemType>(itemId: ItemId, fields: FieldMap<ItemTypeType>, columns: ColumnSet<ItemTypeType>): void;
|
|
13
|
-
isEmpty(): boolean;
|
|
14
|
-
forEach(callback: (tuple: ChangesDeltaItemCreateDelta, itemType: ItemType, index: number) => void): void;
|
|
15
|
-
contains(itemType: ItemType): boolean;
|
|
16
|
-
}
|
|
1
|
+
import { FieldMap, ItemId, ItemType } from '../types';
|
|
2
|
+
import { ColumnSet } from './ColumnSet';
|
|
3
|
+
export declare type ChangesDeltaItemCreateDelta<ItemTypeType extends ItemType = any> = {
|
|
4
|
+
itemId: ItemId;
|
|
5
|
+
fields: FieldMap<ItemTypeType>;
|
|
6
|
+
columns: ColumnSet<ItemTypeType>;
|
|
7
|
+
};
|
|
8
|
+
export declare class CreatedChangesDelta {
|
|
9
|
+
private tuples;
|
|
10
|
+
constructor();
|
|
11
|
+
remove(itemType: ItemType, itemId: ItemId): boolean;
|
|
12
|
+
add<ItemTypeType extends ItemType>(itemId: ItemId, fields: FieldMap<ItemTypeType>, columns: ColumnSet<ItemTypeType>): void;
|
|
13
|
+
isEmpty(): boolean;
|
|
14
|
+
forEach(callback: (tuple: ChangesDeltaItemCreateDelta, itemType: ItemType, index: number) => void): void;
|
|
15
|
+
contains(itemType: ItemType): boolean;
|
|
16
|
+
}
|
|
@@ -1,39 +1,39 @@
|
|
|
1
|
-
import { ItemEntry } from '../models';
|
|
2
|
-
import { EntryParent, FieldMap, ItemIdConversionMap, ItemType } from '../types';
|
|
3
|
-
import { ChangesDeltaBase } from './ChangesDeltaBase';
|
|
4
|
-
import { ItemEntryService } from './ItemEntryService';
|
|
5
|
-
export declare type InternalCreateDelta<ItemTypeType extends ItemType = any> = {
|
|
6
|
-
entry: ItemEntry<ItemTypeType>;
|
|
7
|
-
fields: FieldMap<ItemTypeType>;
|
|
8
|
-
};
|
|
9
|
-
/**
|
|
10
|
-
* @description
|
|
11
|
-
* ChangesDelta used internally by the core
|
|
12
|
-
*
|
|
13
|
-
* ----------
|
|
14
|
-
*
|
|
15
|
-
* The difference between {@link InternalChangesDelta InternalChangesDelta} and {@link ChangesDelta ChangesDelta} is that the InternalChangesDelta
|
|
16
|
-
* assumes 'created' entries are already existing, so it has a different format.
|
|
17
|
-
*
|
|
18
|
-
* Use this when calling {@link TransactionCache.applyChangesFromParent applyChangesFromParent} and {@link TransactionCache.applyChangesFromChild applyChangesFromChild}
|
|
19
|
-
*/
|
|
20
|
-
export declare class InternalChangesDelta extends ChangesDeltaBase {
|
|
21
|
-
created: {
|
|
22
|
-
[itemEntryId: string]: InternalCreateDelta;
|
|
23
|
-
};
|
|
24
|
-
moved: {
|
|
25
|
-
[itemEntryId: number]: {
|
|
26
|
-
entry: ItemEntry;
|
|
27
|
-
to: EntryParent;
|
|
28
|
-
};
|
|
29
|
-
};
|
|
30
|
-
itemIdConversionMap: ItemIdConversionMap;
|
|
31
|
-
constructor(itemEntryService: ItemEntryService);
|
|
32
|
-
setItemCreated<ItemTypeType extends ItemType>(itemEntry: ItemEntry<ItemTypeType>, fields: FieldMap<ItemTypeType>): void;
|
|
33
|
-
/**
|
|
34
|
-
* @remark
|
|
35
|
-
* Parent fields are non-writable so we need to keep track of moved entries another way (to do a linkTo request)
|
|
36
|
-
*/
|
|
37
|
-
setItemMoved(entry: ItemEntry, to: EntryParent): void;
|
|
38
|
-
isEmpty(): boolean;
|
|
39
|
-
}
|
|
1
|
+
import { ItemEntry } from '../models';
|
|
2
|
+
import { EntryParent, FieldMap, ItemIdConversionMap, ItemType } from '../types';
|
|
3
|
+
import { ChangesDeltaBase } from './ChangesDeltaBase';
|
|
4
|
+
import { ItemEntryService } from './ItemEntryService';
|
|
5
|
+
export declare type InternalCreateDelta<ItemTypeType extends ItemType = any> = {
|
|
6
|
+
entry: ItemEntry<ItemTypeType>;
|
|
7
|
+
fields: FieldMap<ItemTypeType>;
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* @description
|
|
11
|
+
* ChangesDelta used internally by the core
|
|
12
|
+
*
|
|
13
|
+
* ----------
|
|
14
|
+
*
|
|
15
|
+
* The difference between {@link InternalChangesDelta InternalChangesDelta} and {@link ChangesDelta ChangesDelta} is that the InternalChangesDelta
|
|
16
|
+
* assumes 'created' entries are already existing, so it has a different format.
|
|
17
|
+
*
|
|
18
|
+
* Use this when calling {@link TransactionCache.applyChangesFromParent applyChangesFromParent} and {@link TransactionCache.applyChangesFromChild applyChangesFromChild}
|
|
19
|
+
*/
|
|
20
|
+
export declare class InternalChangesDelta extends ChangesDeltaBase {
|
|
21
|
+
created: {
|
|
22
|
+
[itemEntryId: string]: InternalCreateDelta;
|
|
23
|
+
};
|
|
24
|
+
moved: {
|
|
25
|
+
[itemEntryId: number]: {
|
|
26
|
+
entry: ItemEntry;
|
|
27
|
+
to: EntryParent;
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
itemIdConversionMap: ItemIdConversionMap;
|
|
31
|
+
constructor(itemEntryService: ItemEntryService);
|
|
32
|
+
setItemCreated<ItemTypeType extends ItemType>(itemEntry: ItemEntry<ItemTypeType>, fields: FieldMap<ItemTypeType>): void;
|
|
33
|
+
/**
|
|
34
|
+
* @remark
|
|
35
|
+
* Parent fields are non-writable so we need to keep track of moved entries another way (to do a linkTo request)
|
|
36
|
+
*/
|
|
37
|
+
setItemMoved(entry: ItemEntry, to: EntryParent): void;
|
|
38
|
+
isEmpty(): boolean;
|
|
39
|
+
}
|
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
import { QueryMatcherFactory } from '../factories';
|
|
2
|
-
import { ItemEntry } from '../models';
|
|
3
|
-
import { CollectionQuery, ItemEntryParentIdMap, ItemId, ItemType } from '../types';
|
|
4
|
-
import { AbstractCache } from './cache/AbstractCache';
|
|
5
|
-
export declare class ItemCache {
|
|
6
|
-
private queryMatcherFactory;
|
|
7
|
-
private transaction;
|
|
8
|
-
private entries;
|
|
9
|
-
entriesByEntryId: {
|
|
10
|
-
[itemEntryId: number]: ItemEntry;
|
|
11
|
-
};
|
|
12
|
-
constructor(queryMatcherFactory: QueryMatcherFactory, transaction: AbstractCache);
|
|
13
|
-
getByEntryId(itemEntryId: ItemEntry['id']): ItemEntry | undefined;
|
|
14
|
-
some(callback: (itemEntry: ItemEntry<ItemType>) => boolean): boolean;
|
|
15
|
-
getByItemType<ItemTypeType extends ItemType>(itemType: ItemTypeType): ItemEntry<ItemTypeType>[];
|
|
16
|
-
getByQuery<ItemTypeType extends ItemType>(itemType: ItemTypeType, query: CollectionQuery['object']): ItemEntry<ItemTypeType>[];
|
|
17
|
-
getLocalByQuery<ItemTypeType extends ItemType>(itemType: ItemTypeType, query: CollectionQuery['object']): ItemEntry<ItemTypeType>[];
|
|
18
|
-
getByParent<ItemTypeType extends ItemType>(parentType: ItemType, parentId: ItemId, itemType: ItemTypeType): ItemEntry<ItemTypeType>[];
|
|
19
|
-
batchGetLocalByParent<ItemTypeType extends ItemType>(parentType: ItemType, parentIds: ItemId[], itemType: ItemTypeType, additionalQuery: CollectionQuery['object']): ItemEntryParentIdMap<ItemTypeType>;
|
|
20
|
-
forEach(callback: (itemEntry: ItemEntry) => void): void;
|
|
21
|
-
toArray(): ItemEntry<string>[];
|
|
22
|
-
add<ItemTypeType extends ItemType>(itemEntry: ItemEntry<ItemTypeType>): ItemEntry<ItemTypeType>;
|
|
23
|
-
get<ItemTypeType extends ItemType>(itemType: ItemTypeType, itemId: string | ItemId): undefined | ItemEntry<ItemTypeType>;
|
|
24
|
-
contains(itemType: ItemType, itemId: string | ItemId): boolean;
|
|
25
|
-
updateItemId<T extends ItemEntry<any>>(itemEntry: T, oldItemId: string | ItemId): T;
|
|
26
|
-
clear(itemEntry?: ItemEntry<any>): boolean;
|
|
27
|
-
clearByItemId(itemType: ItemType, itemId: ItemId): boolean;
|
|
28
|
-
matchQuery(itemEntry: ItemEntry<any>, query: CollectionQuery['object']): boolean;
|
|
29
|
-
}
|
|
1
|
+
import { QueryMatcherFactory } from '../factories';
|
|
2
|
+
import { ItemEntry } from '../models';
|
|
3
|
+
import { CollectionQuery, ItemEntryParentIdMap, ItemId, ItemType } from '../types';
|
|
4
|
+
import { AbstractCache } from './cache/AbstractCache';
|
|
5
|
+
export declare class ItemCache {
|
|
6
|
+
private queryMatcherFactory;
|
|
7
|
+
private transaction;
|
|
8
|
+
private entries;
|
|
9
|
+
entriesByEntryId: {
|
|
10
|
+
[itemEntryId: number]: ItemEntry;
|
|
11
|
+
};
|
|
12
|
+
constructor(queryMatcherFactory: QueryMatcherFactory, transaction: AbstractCache);
|
|
13
|
+
getByEntryId(itemEntryId: ItemEntry['id']): ItemEntry | undefined;
|
|
14
|
+
some(callback: (itemEntry: ItemEntry<ItemType>) => boolean): boolean;
|
|
15
|
+
getByItemType<ItemTypeType extends ItemType>(itemType: ItemTypeType): ItemEntry<ItemTypeType>[];
|
|
16
|
+
getByQuery<ItemTypeType extends ItemType>(itemType: ItemTypeType, query: CollectionQuery['object']): ItemEntry<ItemTypeType>[];
|
|
17
|
+
getLocalByQuery<ItemTypeType extends ItemType>(itemType: ItemTypeType, query: CollectionQuery['object']): ItemEntry<ItemTypeType>[];
|
|
18
|
+
getByParent<ItemTypeType extends ItemType>(parentType: ItemType, parentId: ItemId, itemType: ItemTypeType): ItemEntry<ItemTypeType>[];
|
|
19
|
+
batchGetLocalByParent<ItemTypeType extends ItemType>(parentType: ItemType, parentIds: ItemId[], itemType: ItemTypeType, additionalQuery: CollectionQuery['object']): ItemEntryParentIdMap<ItemTypeType>;
|
|
20
|
+
forEach(callback: (itemEntry: ItemEntry) => void): void;
|
|
21
|
+
toArray(): ItemEntry<string>[];
|
|
22
|
+
add<ItemTypeType extends ItemType>(itemEntry: ItemEntry<ItemTypeType>): ItemEntry<ItemTypeType>;
|
|
23
|
+
get<ItemTypeType extends ItemType>(itemType: ItemTypeType, itemId: string | ItemId): undefined | ItemEntry<ItemTypeType>;
|
|
24
|
+
contains(itemType: ItemType, itemId: string | ItemId): boolean;
|
|
25
|
+
updateItemId<T extends ItemEntry<any>>(itemEntry: T, oldItemId: string | ItemId): T;
|
|
26
|
+
clear(itemEntry?: ItemEntry<any>): boolean;
|
|
27
|
+
clearByItemId(itemType: ItemType, itemId: ItemId): boolean;
|
|
28
|
+
matchQuery(itemEntry: ItemEntry<any>, query: CollectionQuery['object']): boolean;
|
|
29
|
+
}
|
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
import { ColumnSetFactory } from '../factories';
|
|
2
|
-
import { ErrorHandlerInterface, PromiseLibraryInterface } from '../interfaces';
|
|
3
|
-
import { Template } from '../models';
|
|
4
|
-
import { ColumnIdTypeMap, EntryParentNull, FieldMap, FilterItemEntryCallback, ItemId, ItemIdConversionMap, ItemType, ModifyFieldsCallback, PromiseInterface } from '../types';
|
|
5
|
-
import { ChangesDelta } from './ChangesDelta';
|
|
6
|
-
import { ConversionMapService } from './ConversionMapService';
|
|
7
|
-
import { KeyService } from './KeyService';
|
|
8
|
-
import { TemplateCache } from './TemplateCache';
|
|
9
|
-
export declare class ItemCreateService {
|
|
10
|
-
private columnSetFactory;
|
|
11
|
-
private conversionMapService;
|
|
12
|
-
private errorHandler;
|
|
13
|
-
private keyService;
|
|
14
|
-
private promiseService;
|
|
15
|
-
private templateCache;
|
|
16
|
-
constructor(columnSetFactory: ColumnSetFactory, conversionMapService: ConversionMapService, errorHandler: ErrorHandlerInterface, keyService: KeyService, promiseService: PromiseLibraryInterface, templateCache: TemplateCache);
|
|
17
|
-
/**
|
|
18
|
-
* @description
|
|
19
|
-
* Fetches a new {@link Template template} and sets the items created on the passed {@link ChangesDelta}
|
|
20
|
-
*/
|
|
21
|
-
createItemsFromValues<ItemTypeType extends ItemType, Fields extends ColumnIdTypeMap>(changesDelta: ChangesDelta, itemType: ItemTypeType, valuesArray: Array<FieldMap<ItemTypeType, Fields>>, parent?: EntryParentNull): PromiseInterface<void>;
|
|
22
|
-
processTemplate<ItemTypeType extends ItemType, Fields extends ColumnIdTypeMap>(changesDelta: ChangesDelta, itemType: ItemTypeType, itemId: ItemId, parent: EntryParentNull, template: Template<ItemTypeType, Fields>, filterItemEntryCallback?: FilterItemEntryCallback, modifyFieldsCallback?: ModifyFieldsCallback): void;
|
|
23
|
-
processTemplateLinkItems<ParentItemType extends ItemType>(changesDelta: ChangesDelta, parentType: ParentItemType, localParentId: ItemId, template: Template<ParentItemType>, itemIdConversion: ItemIdConversionMap, filterItemEntryCallback?: FilterItemEntryCallback, modifyFieldsCallback?: ModifyFieldsCallback): void;
|
|
24
|
-
}
|
|
1
|
+
import { ColumnSetFactory } from '../factories';
|
|
2
|
+
import { ErrorHandlerInterface, PromiseLibraryInterface } from '../interfaces';
|
|
3
|
+
import { Template } from '../models';
|
|
4
|
+
import { ColumnIdTypeMap, EntryParentNull, FieldMap, FilterItemEntryCallback, ItemId, ItemIdConversionMap, ItemType, ModifyFieldsCallback, PromiseInterface } from '../types';
|
|
5
|
+
import { ChangesDelta } from './ChangesDelta';
|
|
6
|
+
import { ConversionMapService } from './ConversionMapService';
|
|
7
|
+
import { KeyService } from './KeyService';
|
|
8
|
+
import { TemplateCache } from './TemplateCache';
|
|
9
|
+
export declare class ItemCreateService {
|
|
10
|
+
private columnSetFactory;
|
|
11
|
+
private conversionMapService;
|
|
12
|
+
private errorHandler;
|
|
13
|
+
private keyService;
|
|
14
|
+
private promiseService;
|
|
15
|
+
private templateCache;
|
|
16
|
+
constructor(columnSetFactory: ColumnSetFactory, conversionMapService: ConversionMapService, errorHandler: ErrorHandlerInterface, keyService: KeyService, promiseService: PromiseLibraryInterface, templateCache: TemplateCache);
|
|
17
|
+
/**
|
|
18
|
+
* @description
|
|
19
|
+
* Fetches a new {@link Template template} and sets the items created on the passed {@link ChangesDelta}
|
|
20
|
+
*/
|
|
21
|
+
createItemsFromValues<ItemTypeType extends ItemType, Fields extends ColumnIdTypeMap>(changesDelta: ChangesDelta, itemType: ItemTypeType, valuesArray: Array<FieldMap<ItemTypeType, Fields>>, parent?: EntryParentNull): PromiseInterface<void>;
|
|
22
|
+
processTemplate<ItemTypeType extends ItemType, Fields extends ColumnIdTypeMap>(changesDelta: ChangesDelta, itemType: ItemTypeType, itemId: ItemId, parent: EntryParentNull, template: Template<ItemTypeType, Fields>, filterItemEntryCallback?: FilterItemEntryCallback, modifyFieldsCallback?: ModifyFieldsCallback): void;
|
|
23
|
+
processTemplateLinkItems<ParentItemType extends ItemType>(changesDelta: ChangesDelta, parentType: ParentItemType, localParentId: ItemId, template: Template<ParentItemType>, itemIdConversion: ItemIdConversionMap, filterItemEntryCallback?: FilterItemEntryCallback, modifyFieldsCallback?: ModifyFieldsCallback): void;
|
|
24
|
+
}
|
|
@@ -1,34 +1,34 @@
|
|
|
1
|
-
import { AuthInterface } from '../interfaces';
|
|
2
|
-
import { LinkTreeServiceInterface } from '../interfaces/LinkTreeServiceInterface';
|
|
3
|
-
import { ItemEntry, ItemEntryOptions } from '../models';
|
|
4
|
-
import { EntryParent, EntryParentNull, FieldMap, ItemError, ItemOptionsInterface, ItemType } from '../types';
|
|
5
|
-
export declare class ItemEntryService {
|
|
6
|
-
private authInterface;
|
|
7
|
-
private linkTreeService;
|
|
8
|
-
constructor(authInterface: AuthInterface, linkTreeService: LinkTreeServiceInterface);
|
|
9
|
-
matchParent(oldParent: EntryParentNull, newParent: EntryParentNull): boolean;
|
|
10
|
-
/**
|
|
11
|
-
* @description
|
|
12
|
-
* Gets the fields required to set the parent
|
|
13
|
-
*
|
|
14
|
-
* @remark
|
|
15
|
-
* Opposite of {@link ItemEntryService.getParentByFields ItemEntryService.getParentByFields}
|
|
16
|
-
*/
|
|
17
|
-
getLinkFieldsByParent<ItemTypeType extends ItemType>(parent: EntryParent, itemType: ItemTypeType): Partial<FieldMap<ItemTypeType>>;
|
|
18
|
-
/**
|
|
19
|
-
* @description
|
|
20
|
-
* Gets an {@link EntryParent EntryParent} object from the fields
|
|
21
|
-
*
|
|
22
|
-
* @remark
|
|
23
|
-
* Opposite of {@link ItemEntryService.getLinkFieldsByParent ItemEntryService.getLinkFieldsByParent}
|
|
24
|
-
*/
|
|
25
|
-
getParentByFields<ItemTypeType extends ItemType>(parentType: ItemType, itemEntry: ItemEntry<ItemTypeType>, fields: FieldMap<ItemTypeType>): Partial<FieldMap<ItemTypeType>>;
|
|
26
|
-
getDisplayName<ItemEntryType extends ItemEntry>(itemEntry: ItemEntryType, fields: FieldMap<ItemEntryType['itemType']>): string;
|
|
27
|
-
processOptions(options: ItemOptionsInterface): ItemEntryOptions;
|
|
28
|
-
createUnfoundRemoteItemError(): ItemError;
|
|
29
|
-
createUnfoundLocalItemError(itemType: ItemType): ItemError;
|
|
30
|
-
createExistingLocalItemError(itemType: ItemType): ItemError;
|
|
31
|
-
getFullName(firstName?: string, infix?: string, lastName?: string): string;
|
|
32
|
-
getTitleField(itemType: ItemType): string;
|
|
33
|
-
getLocalDefaultValues(): FieldMap;
|
|
34
|
-
}
|
|
1
|
+
import { AuthInterface } from '../interfaces';
|
|
2
|
+
import { LinkTreeServiceInterface } from '../interfaces/LinkTreeServiceInterface';
|
|
3
|
+
import { ItemEntry, ItemEntryOptions } from '../models';
|
|
4
|
+
import { EntryParent, EntryParentNull, FieldMap, ItemError, ItemOptionsInterface, ItemType } from '../types';
|
|
5
|
+
export declare class ItemEntryService {
|
|
6
|
+
private authInterface;
|
|
7
|
+
private linkTreeService;
|
|
8
|
+
constructor(authInterface: AuthInterface, linkTreeService: LinkTreeServiceInterface);
|
|
9
|
+
matchParent(oldParent: EntryParentNull, newParent: EntryParentNull): boolean;
|
|
10
|
+
/**
|
|
11
|
+
* @description
|
|
12
|
+
* Gets the fields required to set the parent
|
|
13
|
+
*
|
|
14
|
+
* @remark
|
|
15
|
+
* Opposite of {@link ItemEntryService.getParentByFields ItemEntryService.getParentByFields}
|
|
16
|
+
*/
|
|
17
|
+
getLinkFieldsByParent<ItemTypeType extends ItemType>(parent: EntryParent, itemType: ItemTypeType): Partial<FieldMap<ItemTypeType>>;
|
|
18
|
+
/**
|
|
19
|
+
* @description
|
|
20
|
+
* Gets an {@link EntryParent EntryParent} object from the fields
|
|
21
|
+
*
|
|
22
|
+
* @remark
|
|
23
|
+
* Opposite of {@link ItemEntryService.getLinkFieldsByParent ItemEntryService.getLinkFieldsByParent}
|
|
24
|
+
*/
|
|
25
|
+
getParentByFields<ItemTypeType extends ItemType>(parentType: ItemType, itemEntry: ItemEntry<ItemTypeType>, fields: FieldMap<ItemTypeType>): Partial<FieldMap<ItemTypeType>>;
|
|
26
|
+
getDisplayName<ItemEntryType extends ItemEntry>(itemEntry: ItemEntryType, fields: FieldMap<ItemEntryType['itemType']>): string;
|
|
27
|
+
processOptions(options: ItemOptionsInterface): ItemEntryOptions;
|
|
28
|
+
createUnfoundRemoteItemError(): ItemError;
|
|
29
|
+
createUnfoundLocalItemError(itemType: ItemType): ItemError;
|
|
30
|
+
createExistingLocalItemError(itemType: ItemType): ItemError;
|
|
31
|
+
getFullName(firstName?: string, infix?: string, lastName?: string): string;
|
|
32
|
+
getTitleField(itemType: ItemType): string;
|
|
33
|
+
getLocalDefaultValues(): FieldMap;
|
|
34
|
+
}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import { ItemId, StateKey } from '../types';
|
|
2
|
-
export declare class KeyService {
|
|
3
|
-
private separator;
|
|
4
|
-
private idCounter;
|
|
5
|
-
constructor();
|
|
6
|
-
getSingleKey(itemType: string, itemId: number | string): string;
|
|
7
|
-
getCssKey(...args: any[]): string;
|
|
8
|
-
parseStateKey(stateKey: string): StateKey | null;
|
|
9
|
-
getDuplicateStateKey(itemId: string | number): string;
|
|
10
|
-
getNewStateKey(templateType: string): string;
|
|
11
|
-
getLocalId(): ItemId;
|
|
12
|
-
getLocalDuplicateId(): ItemId;
|
|
13
|
-
getRandomString(): string;
|
|
14
|
-
isLocalId(itemId: ItemId | string): boolean;
|
|
15
|
-
isNewId(itemId: ItemId | string): boolean;
|
|
16
|
-
isDuplicateId(itemId: ItemId | string): boolean;
|
|
17
|
-
}
|
|
1
|
+
import { ItemId, StateKey } from '../types';
|
|
2
|
+
export declare class KeyService {
|
|
3
|
+
private separator;
|
|
4
|
+
private idCounter;
|
|
5
|
+
constructor();
|
|
6
|
+
getSingleKey(itemType: string, itemId: number | string): string;
|
|
7
|
+
getCssKey(...args: any[]): string;
|
|
8
|
+
parseStateKey(stateKey: string): StateKey | null;
|
|
9
|
+
getDuplicateStateKey(itemId: string | number): string;
|
|
10
|
+
getNewStateKey(templateType: string): string;
|
|
11
|
+
getLocalId(): ItemId;
|
|
12
|
+
getLocalDuplicateId(): ItemId;
|
|
13
|
+
getRandomString(): string;
|
|
14
|
+
isLocalId(itemId: ItemId | string): boolean;
|
|
15
|
+
isNewId(itemId: ItemId | string): boolean;
|
|
16
|
+
isDuplicateId(itemId: ItemId | string): boolean;
|
|
17
|
+
}
|