@rentman/rm-core 8.0.1 → 8.0.3

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.
@@ -52,7 +52,7 @@ export declare class ChangesDelta extends ChangesDeltaBase {
52
52
  *
53
53
  * @internal
54
54
  */
55
- _setItemCreated<ItemTypeType extends ApiEnumItemType, Fields extends FieldMap<ItemTypeType>>(itemId: ItemId, fields: Fields, columns: ColumnSet<ItemTypeType>, parent?: EntryParentNull): this;
55
+ _setItemCreated<ItemTypeType extends ApiEnumItemType, Fields extends FieldMap<ItemTypeType>>(itemId: ItemId, fields: Fields, columns: ColumnSet<ItemTypeType>, parent?: EntryParentNull, isRoot?: boolean): this;
56
56
  /**
57
57
  * @description
58
58
  * Convenience function to assign the proper parent fields, will call {@link ChangesDeltaBase.setItemUpdated setItemUpdated} internally
@@ -1,5 +1,5 @@
1
- import { ApiRequestService, CollectionEntryService, ItemEntryService } from '../classes';
2
- import { ChangesCompilationFactory, ColumnExpansionFactory, CreateRequestFactory, RequestColumnExpansionFactory } from '../factories';
1
+ import { ApiRequestService, ItemEntryService } from '../classes';
2
+ import { ChangesCompilationFactory, CreateRequestFactory, RequestColumnExpansionFactory } from '../factories';
3
3
  import { ChangesDeltaFactory } from '../factories/ChangesDeltaFactory';
4
4
  import { ErrorHandlerInterface, PromiseLibraryInterface } from '../interfaces';
5
5
  import { ItemIdConversionMap, PromiseInterface } from '../types';
@@ -13,19 +13,17 @@ export declare class ChangesProcessor {
13
13
  private changesDeltaFactory;
14
14
  private apiRequestService;
15
15
  private changesCompilationFactory;
16
- private columnExpansionFactory;
17
16
  private createRequestFactory;
18
17
  private errorHandler;
19
18
  private promiseService;
20
19
  private requestColumnExpansionFactory;
21
- private collectionEntryService;
22
20
  private itemEntryService;
23
21
  private transaction;
24
22
  private breakUpByParent?;
25
23
  private onAfterCreateCallback?;
26
24
  private itemIdConversionMap;
27
25
  private serverCache;
28
- constructor(changesDeltaFactory: ChangesDeltaFactory, apiRequestService: ApiRequestService, changesCompilationFactory: ChangesCompilationFactory, columnExpansionFactory: ColumnExpansionFactory, createRequestFactory: CreateRequestFactory, errorHandler: ErrorHandlerInterface, promiseService: PromiseLibraryInterface, requestColumnExpansionFactory: RequestColumnExpansionFactory, collectionEntryService: CollectionEntryService, itemEntryService: ItemEntryService, transaction: TransactionCache, breakUpByParent?: boolean | undefined, onAfterCreateCallback?: OnAfterCreateCallback | undefined);
26
+ constructor(changesDeltaFactory: ChangesDeltaFactory, apiRequestService: ApiRequestService, changesCompilationFactory: ChangesCompilationFactory, createRequestFactory: CreateRequestFactory, errorHandler: ErrorHandlerInterface, promiseService: PromiseLibraryInterface, requestColumnExpansionFactory: RequestColumnExpansionFactory, itemEntryService: ItemEntryService, transaction: TransactionCache, breakUpByParent?: boolean | undefined, onAfterCreateCallback?: OnAfterCreateCallback | undefined);
29
27
  /**
30
28
  * @description
31
29
  * Executes the requests in the order of:
@@ -5,12 +5,13 @@ export declare type ChangesDeltaItemCreateDelta<ItemTypeType extends ApiEnumItem
5
5
  itemId: ItemId;
6
6
  fields: FieldMap<ItemTypeType>;
7
7
  columns: ColumnSet<ItemTypeType>;
8
+ isRoot: boolean;
8
9
  };
9
10
  export declare class CreatedChangesDelta {
10
11
  private tuples;
11
12
  constructor();
12
13
  remove(itemType: ApiEnumItemType, itemId: ItemId): boolean;
13
- add<ItemTypeType extends ApiEnumItemType>(itemId: ItemId, fields: FieldMap<ItemTypeType>, columns: ColumnSet<ItemTypeType>): void;
14
+ add<ItemTypeType extends ApiEnumItemType>(itemId: ItemId, fields: FieldMap<ItemTypeType>, columns: ColumnSet<ItemTypeType>, isRoot?: boolean): void;
14
15
  isEmpty(): boolean;
15
16
  forEach(callback: (tuple: ChangesDeltaItemCreateDelta, itemType: ApiEnumItemType, index: number) => void): void;
16
17
  contains(itemType: ApiEnumItemType): boolean;
@@ -20,6 +20,6 @@ export declare class ItemCreateService {
20
20
  * Fetches a new {@link Template template} and sets the items created on the passed {@link ChangesDelta}
21
21
  */
22
22
  createItemsFromValues<ItemTypeType extends ApiEnumItemType, ColumnIds extends Array<keyof ApiFields[ItemTypeType]> = Array<keyof ApiFields[ItemTypeType]>>(changesDelta: ChangesDelta, itemType: ItemTypeType, valuesArray: Array<Partial<FieldMap<ItemTypeType, ColumnIds>>>, parent?: EntryParentNull): PromiseInterface<void>;
23
- processTemplate<ItemTypeType extends ApiEnumItemType, ColumnIds extends Array<keyof ApiFields[ItemTypeType]> = Array<keyof ApiFields[ItemTypeType]>>(changesDelta: ChangesDelta, itemType: ItemTypeType, itemId: ItemId, parent: EntryParentNull, template: Template<ItemTypeType, ColumnIds>, filterItemEntryCallback?: FilterItemEntryCallback, modifyFieldsCallback?: ModifyFieldsCallback): void;
23
+ processTemplate<ItemTypeType extends ApiEnumItemType, ColumnIds extends Array<keyof ApiFields[ItemTypeType]> = Array<keyof ApiFields[ItemTypeType]>>(changesDelta: ChangesDelta, itemType: ItemTypeType, itemId: ItemId, parent: EntryParentNull, template: Template<ItemTypeType, ColumnIds>, filterItemEntryCallback?: FilterItemEntryCallback, modifyFieldsCallback?: ModifyFieldsCallback, isRoot?: boolean): void;
24
24
  processTemplateLinkItems<ParentItemType extends ApiEnumItemType>(changesDelta: ChangesDelta, parentType: ParentItemType, localParentId: ItemId, template: Template<ParentItemType>, itemIdConversion: ItemIdConversionMap, filterItemEntryCallback?: FilterItemEntryCallback, modifyFieldsCallback?: ModifyFieldsCallback): void;
25
25
  }
@@ -1,16 +1,16 @@
1
1
  import { ApiQueryConditionLinkedTo, ApiQueryConditionSubQuery } from '@rentman/backend-types';
2
2
  import { ApiQuery, ApiQueryConditionComparator, ApiQueryWithConditions, ItemIdConversionMap } from '../types';
3
3
  import { QueryParserBase } from './QueryParserBase';
4
- export declare class QueryParserIdUpdater extends QueryParserBase<void> {
4
+ export declare class QueryParserIdUpdater extends QueryParserBase<boolean> {
5
5
  private itemIdConversionMap;
6
6
  constructor(itemIdConversionMap: ItemIdConversionMap, query: ApiQuery);
7
- protected parseEmptyQuery(): void;
8
- protected parseSubQuery<T extends ApiQueryConditionSubQuery>(_key: T['key'], subQuery: T['query']): void;
9
- protected parseSubFieldQuery(): void;
10
- protected parseSearchQuery(): void;
11
- protected parseCustomQuery(): void;
12
- protected parseSimpleQuery<T extends ApiQueryConditionComparator>(_key: T['key'], value: T['value'], _comparator: T['comparator'], _not: T['not'], queryPart: T): void;
13
- protected parseLinkedToQuery<T extends ApiQueryConditionLinkedTo>(_linkedTo: T['linkedTo'], query?: T['query']): void;
14
- protected parseComplexQuery<T extends ApiQueryWithConditions>(conditions: T['conditions']): void;
7
+ protected parseEmptyQuery(): boolean;
8
+ protected parseSubQuery<T extends ApiQueryConditionSubQuery>(_key: T['key'], subQuery: T['query']): boolean;
9
+ protected parseSubFieldQuery(): boolean;
10
+ protected parseSearchQuery(): boolean;
11
+ protected parseCustomQuery(): boolean;
12
+ protected parseSimpleQuery<T extends ApiQueryConditionComparator>(_key: T['key'], value: T['value'], _comparator: T['comparator'], _not: T['not'], queryPart: T): boolean;
13
+ protected parseLinkedToQuery<T extends ApiQueryConditionLinkedTo>(_linkedTo: T['linkedTo'], query?: T['query']): boolean;
14
+ protected parseComplexQuery<T extends ApiQueryWithConditions>(conditions: T['conditions']): boolean;
15
15
  private parseConditions;
16
16
  }
@@ -8,6 +8,7 @@ import { ChangesDeltaBase, ChangesDeltaItemUpdateDelta } from '../ChangesDeltaBa
8
8
  import { ColumnInfo } from '../ColumnInfo';
9
9
  import { ColumnUtil } from '../ColumnUtil';
10
10
  import { ChangesDeltaItemCreateDelta } from '../CreatedChangesDelta';
11
+ import { InternalChangesDelta } from '../InternalChangesDelta';
11
12
  import { ItemCache } from '../ItemCache';
12
13
  import { AbstractCache } from './AbstractCache';
13
14
  import { ServerItemEntryChanges } from './server/ServerItemHandler';
@@ -58,12 +59,12 @@ export declare abstract class ItemHandlerBase {
58
59
  * @description
59
60
  * Fetches an ItemEntry with the given itemId
60
61
  */
61
- abstract fetchItemEntry<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, itemId: ItemId, options: ItemEntryOptions): PromiseInterface<ItemEntry<ItemTypeType>>;
62
+ abstract fetchItemEntry<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, itemId: ItemId, options: ItemEntryOptions, isRoot?: boolean): PromiseInterface<ItemEntry<ItemTypeType>>;
62
63
  /**
63
64
  * @description
64
65
  * Processes the passed {@link ChangesDeltaItemUpdateDelta update delta} on the transaction, if there are no {@link TransactionItemHandler.itemChanges itemChanges} the new values will not be processed
65
66
  */
66
- abstract processItemEntryChanges<ItemTypeType extends ApiEnumItemType>(itemEntryChangesTuple: ChangesDeltaItemUpdateDelta<ItemTypeType>, forceOverwrite: boolean, updateInitial: boolean, isCalledAfterSocketUpdate: boolean, createItemChangesIfNoneExist: boolean): ProcessItemEntryChangesResult<ItemTypeType>;
67
+ abstract processItemEntryChanges<ItemTypeType extends ApiEnumItemType>(itemEntryChangesTuple: ChangesDeltaItemUpdateDelta<ItemTypeType>, forceOverwrite: boolean, updateInitial: boolean, isCalledAfterSocketUpdate: boolean, createItemChangesIfNoneExist: boolean, changesDelta?: InternalChangesDelta): ProcessItemEntryChangesResult<ItemTypeType>;
67
68
  /**
68
69
  * @description
69
70
  * Traverses the column path and returns the fields of the derived item, returns undefined if the item isn't found
@@ -27,7 +27,7 @@ export declare class ServerCache extends AbstractCache {
27
27
  getServerCache(): ServerCache;
28
28
  createChild(id?: string, validatorFactory?: TransactionValidatorFactory): TransactionCache;
29
29
  expandCollectionResources<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, collections: CollectionResourceParentIdMap<ItemTypeType>, newRequestColumns: ApiRequestColumn[]): PromiseInterface<CollectionResourceParentIdMap>;
30
- processResponse(response: ApiResponseProcessor, requestColumnMap: ApiRequestColumnMap, isCalledAfterApiSave?: boolean, isCalledAfterSocketUpdate?: boolean, changesDelta?: ChangesDelta): PromiseInterface<ChangesDeltaResult>;
30
+ processResponse(response: ApiResponseProcessor, requestColumnMap: ApiRequestColumnMap, isCalledAfterApiSave?: boolean, isCalledAfterSocketUpdate?: boolean, changesDelta?: ChangesDelta, conversionMap?: ItemIdConversionMap): PromiseInterface<ChangesDeltaResult>;
31
31
  /**
32
32
  * @description
33
33
  * Applies the changes of the changesDelta created by the API call ({@link ChangesProcessor ChangesProcessor}/{@link SocketMessageHandler SocketMessageHandler}, or manually through a module function) on all caches
@@ -204,7 +204,7 @@ export declare class TransactionCache extends AbstractCache {
204
204
  * Rejects when another user is holding the lock, as opposed to {@link LockService.fetchLock}.
205
205
  */
206
206
  fetchLock(): PromiseInterface<void>;
207
- detectChanges(): boolean;
207
+ detectChanges(force?: boolean): boolean;
208
208
  /**
209
209
  * @description
210
210
  * Removes an {@link ItemEntry ItemEntry} through an {@link ItemResource ItemResource} from the {@link TransactionCache TransactionCache} which means that changes on this entry will no longer be tracked.
@@ -309,7 +309,7 @@ export declare class TransactionCache extends AbstractCache {
309
309
  * won't be included
310
310
  */
311
311
  getDelta(): InternalChangesDelta;
312
- createItemResource<ItemTypeType extends ApiEnumItemType>(itemEntry: ItemEntry<ItemTypeType>, isRoot?: boolean, isNew?: boolean): ItemResource<ItemTypeType>;
312
+ createItemResource<ItemTypeType extends ApiEnumItemType>(itemEntry: ItemEntry<ItemTypeType>, isNew?: boolean): ItemResource<ItemTypeType>;
313
313
  createItemResources<ItemTypeType extends ApiEnumItemType, ColumnIds extends Array<keyof ApiFields[ItemTypeType]> = Array<keyof ApiFields[ItemTypeType]>>(itemEntries: Array<ItemEntry<ItemTypeType>>): Array<ItemResource<ItemTypeType, ColumnIds>>;
314
314
  processLinkedItems<ItemTypeType extends ApiEnumItemType>(linkedEntries: ItemTypeMap<ItemEntry[]>): ItemResourcesItemTypeMap<ItemResource<ItemTypeType>>;
315
315
  createCollectionResource<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, options: CollectionOptionsInterface<ItemTypeType>, initialEntries: Array<ItemEntry<ItemTypeType>>): CollectionResource<ItemTypeType>;
@@ -321,5 +321,6 @@ export declare class TransactionCache extends AbstractCache {
321
321
  private expandItemsFromDelta;
322
322
  private clearGlobalError;
323
323
  clearItemError(itemEntryId?: ItemEntry['id'], columnId?: string, errorKey?: string): void;
324
+ private handleRemovedItemEntry;
324
325
  }
325
326
  export {};
@@ -1,5 +1,5 @@
1
1
  import { ApiEnumItemType, ItemId } from '@rentman/backend-types';
2
- import { ApiQuery, ApiRequestColumns, CollectionQuery, ColumnSubsetCache, ItemEntryOptions, ParentIdMap, PromiseInterface, TransactionCollectionHandlerDependencyInterface, TransactionItemHandler } from '../../../index';
2
+ import { ApiQuery, ApiRequestColumns, CollectionQuery, ColumnSubsetCache, ItemEntryOptions, ItemIdConversionMap, ParentIdMap, PromiseInterface, TransactionCollectionHandlerDependencyInterface, TransactionItemHandler } from '../../../index';
3
3
  import { ItemEntry } from '../../../models';
4
4
  import { CollectionOptions } from '../../../models/CollectionOptions';
5
5
  import { CachedQueryHandlerBase, CachedQueryItem } from '../CachedQueryHandlerBase';
@@ -9,6 +9,7 @@ export declare class TransactionCachedQueryHandler extends CachedQueryHandlerBas
9
9
  private itemHandler;
10
10
  protected transaction: TransactionCache;
11
11
  constructor(dependencies: TransactionCollectionHandlerDependencyInterface, itemHandler: TransactionItemHandler, transaction: TransactionCache);
12
+ updateLocalItemIdReferences(conversionMap: ItemIdConversionMap, isCalledAfterSave: boolean): void;
12
13
  __fetchCachedQueryItem<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, options: CollectionOptions): PromiseInterface<CachedQueryItem<ItemTypeType>>;
13
14
  __expandCachedQuery<ItemTypeType extends ApiEnumItemType>(cachedQuery: CachedQueryItem<ItemTypeType>, newColumns: ApiRequestColumns, force?: boolean): PromiseInterface<CachedQueryItem<ItemTypeType>>;
14
15
  __addItemEntriesToCachedQueries<ItemTypeType extends ApiEnumItemType = any>(itemType: ItemTypeType, parsedQuery: CollectionQuery, itemEntries: Array<ItemEntry<ItemTypeType>>): void;
@@ -17,6 +17,7 @@ export declare class TransactionCollectionHandler {
17
17
  };
18
18
  };
19
19
  constructor(itemHandler: TransactionItemHandler, cachedQueryHandler: TransactionCachedQueryHandler, dependencies: TransactionCollectionHandlerDependencyInterface, transaction: TransactionCache);
20
+ updateLocalItemIdReferences(conversionMap: ItemIdConversionMap): void;
20
21
  expandCollectionResource<ItemTypeType extends ApiEnumItemType = any>(collectionResource: CollectionResource<ItemTypeType>, newColumns: ApiRequestColumns): PromiseInterface<void>;
21
22
  addResource(resource: CollectionResource): void;
22
23
  clearResource(resource: CollectionResource): void;
@@ -4,7 +4,7 @@ import { ItemEntry, ItemEntryOptions } from '../../../models';
4
4
  import { ApiQuery, ApiRequestColumns, DeregFunction, FieldChangeCallback, FieldMap, ItemIdConversionMap, ItemTypeMap, ModifyFieldsCallback, PromiseInterface, ResponseColumnItemTypeMap } from '../../../types';
5
5
  import { ChangesDelta } from '../../ChangesDelta';
6
6
  import { ChangesDeltaBase, ChangesDeltaItemUpdateDelta, ChangesDeltaResult } from '../../ChangesDeltaBase';
7
- import { ChangesDeltaItemCreateDelta, ColumnSubsetCache } from '../../index';
7
+ import { ChangesDeltaItemCreateDelta, ColumnSubsetCache, InternalChangesDelta } from '../../index';
8
8
  import { ItemHandlerBase, ProcessItemEntryChangesResult } from '../ItemHandlerBase';
9
9
  import { TransactionCache } from './TransactionCache';
10
10
  import { TransactionValidator } from './TransactionValidator';
@@ -21,6 +21,10 @@ export declare class TransactionItemHandler extends ItemHandlerBase {
21
21
  private dependencies;
22
22
  protected transaction: TransactionCache;
23
23
  private validator?;
24
+ /**
25
+ * @warning
26
+ * Can contain both local and non-local {@link ItemEntry itemEntries}
27
+ */
24
28
  deletedItems: ItemTypeMap<ItemEntry[]>;
25
29
  itemChanges: {
26
30
  [itemEntryId: number]: TransactionItemEntryChanges;
@@ -60,20 +64,21 @@ export declare class TransactionItemHandler extends ItemHandlerBase {
60
64
  * @param updateInitial Should be `true` if called by applyChangesFromParent
61
65
  * @param isCalledAfterSocketUpdate Indicates that the change is done by a different user
62
66
  * @param createItemChangesIfNoneExist Is `true` when called from `applyChangesDelta`, we can assume that when you call `applyChangesDelta` with updates that aren't on the transaction yet you want to add those
67
+ * @param changesDelta Will be used to check which items should/shouldn't be updated when updating local ID references
63
68
  *
64
69
  * @returns
65
70
  * The previous changes {@link FieldMap FieldMap}, returns `null` when the item was not cached or no fields were changed.
66
71
  */
67
- processItemEntryChanges<ItemTypeType extends ApiEnumItemType = any>(itemEntryChangesTuple: ChangesDeltaItemUpdateDelta<ItemTypeType>, forceOverwrite?: boolean, updateInitial?: boolean, isCalledAfterSocketUpdate?: boolean, createItemChangesIfNoneExist?: boolean): ProcessItemEntryChangesResult<ItemTypeType>;
72
+ processItemEntryChanges<ItemTypeType extends ApiEnumItemType = any>(itemEntryChangesTuple: ChangesDeltaItemUpdateDelta<ItemTypeType>, forceOverwrite?: boolean, updateInitial?: boolean, isCalledAfterSocketUpdate?: boolean, createItemChangesIfNoneExist?: boolean, changesDelta?: InternalChangesDelta): ProcessItemEntryChangesResult<ItemTypeType>;
68
73
  cloneItemEntries<ItemTypeType extends ApiEnumItemType>(changesDelta: ChangesDelta, itemEntries: Array<ItemEntry<ItemTypeType>>, conversionMap?: ItemIdConversionMap, modifyFieldsCallback?: ModifyFieldsCallback): ItemId[];
69
74
  cloneItemEntry<ItemTypeType extends ApiEnumItemType>(changesDelta: ChangesDelta, sourceEntry: ItemEntry<ItemTypeType>, conversionMap?: ItemIdConversionMap, modifyFieldsCallback?: ModifyFieldsCallback): ItemId;
70
75
  fetchItemEntriesByQuery<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, query: ApiQuery, entryOptions: ItemEntryOptions): PromiseInterface<Array<ItemEntry<ItemTypeType>>>;
71
- fetchItemEntry<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, itemId: ItemId, options: ItemEntryOptions): PromiseInterface<ItemEntry<ItemTypeType>>;
76
+ fetchItemEntry<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, itemId: ItemId, options: ItemEntryOptions, isRoot?: boolean): PromiseInterface<ItemEntry<ItemTypeType>>;
72
77
  /**
73
78
  * @description
74
79
  * Fetches a template and creates a new {@link ItemEntry ItemEntry}, will error if the ItemEntry with the given ItemId already exists
75
80
  */
76
- fetchNewItemEntry<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, itemId: ItemId, options: ItemEntryOptions): PromiseInterface<ChangesDeltaResult>;
81
+ fetchNewItemEntry<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, itemId: ItemId, options: ItemEntryOptions, isRoot?: boolean): PromiseInterface<ChangesDeltaResult>;
77
82
  fetchItemEntries<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, itemIds: ItemId[], options: ItemEntryOptions): PromiseInterface<Array<ItemEntry<ItemTypeType>>>;
78
83
  fetchTitle(itemType: ApiEnumItemType, itemId: ItemId): PromiseInterface<string>;
79
84
  resolveLocalItemEntry<ItemTypeType extends ApiEnumItemType>(changesDelta: ChangesDelta, itemEntry: ItemEntry<ItemTypeType>, columnSubsetCache: ColumnSubsetCache<ItemTypeType>, options: ItemEntryOptions): PromiseInterface<ItemEntry<ItemTypeType>>;
@@ -1,22 +1,19 @@
1
- import { ApiRequestService, ChangesProcessor, CollectionEntryService, ItemEntryService, OnAfterCreateCallback } from '../classes';
1
+ import { ApiRequestService, ChangesProcessor, ItemEntryService, OnAfterCreateCallback } from '../classes';
2
2
  import { TransactionCache } from '../classes/cache/transaction/TransactionCache';
3
3
  import { ErrorHandlerInterface, PromiseLibraryInterface } from '../interfaces';
4
4
  import { ChangesCompilationFactory } from './ChangesCompilationFactory';
5
5
  import { ChangesDeltaFactory } from './ChangesDeltaFactory';
6
- import { ColumnExpansionFactory } from './ColumnExpansionFactory';
7
6
  import { CreateRequestFactory } from './CreateRequestFactory';
8
7
  import { RequestColumnExpansionFactory } from './RequestColumnExpansionFactory';
9
8
  export declare class ChangesProcessorFactory {
10
9
  private changesDeltaFactory;
11
10
  private apiRequestService;
12
11
  private changesCompilationFactory;
13
- private columnExpansionFactory;
14
12
  private createRequestFactory;
15
13
  private errorHandler;
16
14
  private promiseService;
17
15
  private requestColumnExpansionFactory;
18
- private collectionEntryService;
19
16
  private itemEntryService;
20
- constructor(changesDeltaFactory: ChangesDeltaFactory, apiRequestService: ApiRequestService, changesCompilationFactory: ChangesCompilationFactory, columnExpansionFactory: ColumnExpansionFactory, createRequestFactory: CreateRequestFactory, errorHandler: ErrorHandlerInterface, promiseService: PromiseLibraryInterface, requestColumnExpansionFactory: RequestColumnExpansionFactory, collectionEntryService: CollectionEntryService, itemEntryService: ItemEntryService);
17
+ constructor(changesDeltaFactory: ChangesDeltaFactory, apiRequestService: ApiRequestService, changesCompilationFactory: ChangesCompilationFactory, createRequestFactory: CreateRequestFactory, errorHandler: ErrorHandlerInterface, promiseService: PromiseLibraryInterface, requestColumnExpansionFactory: RequestColumnExpansionFactory, itemEntryService: ItemEntryService);
21
18
  construct(transaction: TransactionCache, breakUpByParent?: boolean, onAfterCreateCallback?: OnAfterCreateCallback): ChangesProcessor;
22
19
  }
@@ -1,4 +1,4 @@
1
- import { ApiFormatter, ColumnHandler, ColumnUtil, ConversionMapService, ItemCreateService, ItemEntryService, KeyService } from '../classes';
1
+ import { ApiFormatter, CollectionEntryService, ColumnHandler, ColumnUtil, ConversionMapService, ItemCreateService, ItemEntryService, KeyService } from '../classes';
2
2
  import { TemplateCache } from '../classes/TemplateCache';
3
3
  import { ChangesDeltaFactory, ColumnExpansionFactory, ColumnSetFactory, ColumnSubsetCacheFactory, ItemCacheFactory, ItemEntryFactory, RequestColumnExpansionFactory } from '../factories';
4
4
  import { ErrorHandlerInterface } from './ErrorHandlerInterface';
@@ -23,4 +23,5 @@ export interface TransactionItemHandlerDependencyInterface {
23
23
  promiseService: PromiseLibraryInterface;
24
24
  requestColumnExpansionFactory: RequestColumnExpansionFactory;
25
25
  templateCache: TemplateCache;
26
+ collectionEntryService: CollectionEntryService;
26
27
  }
@@ -211,7 +211,7 @@ export declare type CollectionQuery = {
211
211
  object: BackendApiQuery;
212
212
  string: string;
213
213
  };
214
- export declare type CollectionResourceParentIdMap<ItemTypeType extends ApiEnumItemType = any> = ParentIdMap<CollectionResource<ItemTypeType>>;
214
+ export declare type CollectionResourceParentIdMap<ItemTypeType extends ApiEnumItemType = any, ColumnIds extends Array<keyof ApiFields[ItemTypeType]> = any> = ParentIdMap<CollectionResource<ItemTypeType, ColumnIds>>;
215
215
  export declare type ResponseColumnMap<ItemTypeType extends ApiEnumItemType = any, ColumnIds extends Array<keyof ApiFields[ItemTypeType]> = any> = {
216
216
  [ColumnId in ColumnIds[number]]: GetColumnType<ItemTypeType, ColumnId>;
217
217
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rentman/rm-core",
3
- "version": "8.0.1",
3
+ "version": "8.0.3",
4
4
  "description": "Rentman core functionalities",
5
5
  "main": "./dist/rm-core.js",
6
6
  "types": "./dist/types/index.d.ts",