@rentman/rm-core 9.2.2 → 9.2.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.
- package/changelog.md +1341 -1008
- package/dist/rm-core.js +981 -928
- package/dist/rm-core.min.js +1 -1
- package/dist/types/classes/ApiFormatter.d.ts +73 -73
- package/dist/types/classes/ApiRequestService.d.ts +18 -18
- package/dist/types/classes/ApiResponseProcessor.d.ts +29 -29
- package/dist/types/classes/CacheSyncer.d.ts +44 -44
- package/dist/types/classes/ChangesCompilation.d.ts +33 -33
- package/dist/types/classes/ChangesDelta.d.ts +61 -61
- package/dist/types/classes/ChangesDeltaBase.d.ts +78 -78
- package/dist/types/classes/ChangesProcessor.d.ts +40 -40
- package/dist/types/classes/CollectionEntryService.d.ts +24 -24
- package/dist/types/classes/CollectionResourceService.d.ts +6 -6
- package/dist/types/classes/ColumnCache.d.ts +19 -19
- package/dist/types/classes/ColumnExpansion.d.ts +19 -19
- package/dist/types/classes/ColumnHandler.d.ts +20 -20
- package/dist/types/classes/ColumnInfo.d.ts +15 -15
- package/dist/types/classes/ColumnSet.d.ts +37 -37
- package/dist/types/classes/ColumnSubsetCache.d.ts +14 -14
- package/dist/types/classes/ColumnUtil.d.ts +108 -101
- package/dist/types/classes/ConversionMapService.d.ts +25 -25
- package/dist/types/classes/CreateRequest.d.ts +17 -17
- package/dist/types/classes/CreatedChangesDelta.d.ts +17 -17
- package/dist/types/classes/InternalChangesDelta.d.ts +43 -43
- package/dist/types/classes/ItemCache.d.ts +27 -27
- package/dist/types/classes/ItemCreateService.d.ts +18 -18
- package/dist/types/classes/ItemEntryService.d.ts +32 -32
- package/dist/types/classes/KeyService.d.ts +18 -18
- package/dist/types/classes/LockService.d.ts +29 -29
- package/dist/types/classes/ModuleChangesCompilation.d.ts +18 -18
- package/dist/types/classes/ParentChangesDelta.d.ts +39 -39
- package/dist/types/classes/QueryColumnExtractor.d.ts +18 -18
- package/dist/types/classes/QueryContainsLocalIdParser.d.ts +17 -17
- package/dist/types/classes/QueryLinkedToParser.d.ts +17 -17
- package/dist/types/classes/QueryLocallyMatchableParser.d.ts +20 -20
- package/dist/types/classes/QueryMatcher.d.ts +24 -24
- package/dist/types/classes/QueryParser.d.ts +25 -25
- package/dist/types/classes/QueryParserBase.d.ts +20 -20
- package/dist/types/classes/QueryParserIdUpdater.d.ts +17 -17
- package/dist/types/classes/QueryService.d.ts +12 -12
- package/dist/types/classes/RequestBuffer.d.ts +24 -24
- package/dist/types/classes/RequestBufferManager.d.ts +32 -32
- package/dist/types/classes/RequestColumnExpansion.d.ts +15 -15
- package/dist/types/classes/SocketMessageHandler.d.ts +34 -34
- package/dist/types/classes/TemplateCache.d.ts +62 -62
- package/dist/types/classes/Util.d.ts +28 -28
- package/dist/types/classes/cache/AbstractCache.d.ts +85 -85
- package/dist/types/classes/cache/CachedQueryHandlerBase.d.ts +68 -68
- package/dist/types/classes/cache/ItemHandlerBase.d.ts +102 -102
- package/dist/types/classes/cache/server/ServerCache.d.ts +78 -78
- package/dist/types/classes/cache/server/ServerCachedQueryHandler.d.ts +25 -25
- package/dist/types/classes/cache/server/ServerItemHandler.d.ts +43 -43
- package/dist/types/classes/cache/transaction/TransactionCache.d.ts +318 -318
- package/dist/types/classes/cache/transaction/TransactionCachedQueryHandler.d.ts +37 -37
- package/dist/types/classes/cache/transaction/TransactionCollectionHandler.d.ts +24 -24
- package/dist/types/classes/cache/transaction/TransactionEventHandler.d.ts +21 -21
- package/dist/types/classes/cache/transaction/TransactionItemHandler.d.ts +90 -90
- package/dist/types/classes/cache/transaction/TransactionValidator.d.ts +33 -33
- package/dist/types/constants.d.ts +7 -7
- package/dist/types/core.d.ts +45 -45
- package/dist/types/factories/ApiResponseProcessorFactory.d.ts +6 -6
- package/dist/types/factories/CacheSyncerFactory.d.ts +10 -10
- package/dist/types/factories/ChangesCompilationFactory.d.ts +5 -5
- package/dist/types/factories/ChangesDeltaFactory.d.ts +13 -13
- package/dist/types/factories/ChangesProcessorFactory.d.ts +13 -13
- package/dist/types/factories/CollectionEntryFactory.d.ts +11 -11
- package/dist/types/factories/CollectionResourceFactory.d.ts +18 -18
- package/dist/types/factories/ColumnExpansionFactory.d.ts +7 -7
- package/dist/types/factories/ColumnInfoFactory.d.ts +7 -7
- package/dist/types/factories/ColumnSetFactory.d.ts +18 -18
- package/dist/types/factories/ColumnSubsetCacheFactory.d.ts +8 -8
- package/dist/types/factories/CreateRequestFactory.d.ts +9 -9
- package/dist/types/factories/ItemCacheFactory.d.ts +6 -6
- package/dist/types/factories/ItemEntryFactory.d.ts +12 -12
- package/dist/types/factories/ItemResourceFactory.d.ts +11 -11
- package/dist/types/factories/ModuleChangesCompilationFactory.d.ts +4 -4
- package/dist/types/factories/QueryMatcherFactory.d.ts +7 -7
- package/dist/types/factories/QueryParserFactory.d.ts +5 -5
- package/dist/types/factories/RequestColumnExpansionFactory.d.ts +8 -8
- package/dist/types/factories/TemplateFactory.d.ts +8 -8
- package/dist/types/factories/TransactionCacheFactory.d.ts +13 -13
- package/dist/types/index.d.ts +1 -1
- package/dist/types/interfaces/AbstractCacheDependencyInterface.d.ts +36 -36
- 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 +5 -5
- package/dist/types/interfaces/SocketMessageInterface.d.ts +3 -3
- package/dist/types/interfaces/TransactionCollectionHandlerDependencyInterface.d.ts +17 -17
- package/dist/types/interfaces/TransactionItemHandlerDependencyInterface.d.ts +22 -22
- package/dist/types/internal.d.ts +104 -104
- package/dist/types/models/CachedQueryItem.d.ts +19 -19
- package/dist/types/models/CollectionEntry.d.ts +21 -21
- package/dist/types/models/CollectionOptions.d.ts +44 -44
- package/dist/types/models/CollectionResource.d.ts +87 -87
- package/dist/types/models/ItemEntry.d.ts +18 -18
- package/dist/types/models/ItemEntryOptions.d.ts +8 -8
- package/dist/types/models/ItemResource.d.ts +90 -90
- package/dist/types/models/Template.d.ts +11 -11
- package/dist/types/types/ItemTypesCollection.d.ts +345 -345
- package/dist/types/types/PromiseInterface.d.ts +2 -2
- package/package.json +50 -50
- package/readme.md +15 -15
|
@@ -1,37 +1,37 @@
|
|
|
1
|
-
import { ApiEnumItemType, ItemId } from '@rentman/backend-types';
|
|
2
|
-
import { ApiQuery, ApiRequestColumns, CachedQueryHandlerBase, CachedQueryItem, CachedQueryItemTree, ChildCollectionOptions, CollectionOptions, CollectionQuery, ColumnSubsetCache, ItemEntry, ItemEntryOptions, ItemIdConversionMap, ItemTypeMap, ParentIdMap, ParentItemMap, PromiseInterface, TransactionCache, TransactionCollectionHandlerDependencyInterface, TransactionItemHandler } from '../../../internal';
|
|
3
|
-
export declare class TransactionCachedQueryHandler extends CachedQueryHandlerBase {
|
|
4
|
-
private dependencies;
|
|
5
|
-
private itemHandler;
|
|
6
|
-
protected transaction: TransactionCache;
|
|
7
|
-
constructor(dependencies: TransactionCollectionHandlerDependencyInterface, itemHandler: TransactionItemHandler, transaction: TransactionCache);
|
|
8
|
-
/**
|
|
9
|
-
* @description
|
|
10
|
-
* Updates all cached queries which references one of the updated IDs in the conversionMap
|
|
11
|
-
*
|
|
12
|
-
* @param conversionMap ConversionMap with the updated IDs
|
|
13
|
-
*/
|
|
14
|
-
updateLocalItemIdReferences(conversionMap: ItemIdConversionMap): void;
|
|
15
|
-
__fetchCachedQueryItem<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, options: CollectionOptions, batchedLinkedToQuery?: CollectionQuery): PromiseInterface<CachedQueryItem<ItemTypeType>>;
|
|
16
|
-
__expandCachedQuery<ItemTypeType extends ApiEnumItemType>(cachedQuery: CachedQueryItem<ItemTypeType>, newColumns: ApiRequestColumns, force?: boolean): PromiseInterface<CachedQueryItem<ItemTypeType>>;
|
|
17
|
-
__addItemEntriesToCachedQueries<ItemTypeType extends ApiEnumItemType = any>(itemType: ItemTypeType, parsedQuery: CollectionQuery, itemEntries: ItemEntry<ItemTypeType>[]): void;
|
|
18
|
-
/**
|
|
19
|
-
* @remark
|
|
20
|
-
* todo not only linkedTo should be checked, but it should check if there's a local ID anywhere in the query
|
|
21
|
-
* ({<field>: <localId>}) is also a local query
|
|
22
|
-
*/
|
|
23
|
-
isLocal(options: CollectionOptions | ItemEntryOptions, query: ApiQuery): boolean;
|
|
24
|
-
__fetchItemEntriesByQueryData<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, options: CollectionOptions<ItemTypeType>, columnSubsetCache: ColumnSubsetCache<ItemTypeType>, collectionQuery: CollectionQuery, batchedLinkedToQuery?: CollectionQuery): PromiseInterface<CachedQueryItem<ItemTypeType>>;
|
|
25
|
-
__fetchLinkedCachedQueryItems<ItemTypeType extends ApiEnumItemType>(parentType: ApiEnumItemType, parentIdArray: ItemId[] | (() => ItemId[]), itemType: ItemTypeType, options: CollectionOptions): PromiseInterface<ParentIdMap<CachedQueryItem<ItemTypeType>>>;
|
|
26
|
-
__fetchParentCachedQueryItem<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, options: CollectionOptions): PromiseInterface<CachedQueryItemTree<ItemTypeType>>;
|
|
27
|
-
__fetchChildCachedQueryItems(parentItemType: ApiEnumItemType, parentItemIds: ItemId[], collectionOptions: ChildCollectionOptions, batchQueries?: ItemTypeMap<CollectionQuery>): PromiseInterface<ParentItemMap<CachedQueryItemTree>>;
|
|
28
|
-
private createBatchQueryMap;
|
|
29
|
-
private resolveLocalCachedQueryItem;
|
|
30
|
-
/**
|
|
31
|
-
* @param itemType - The itemType of the entries you want to expand
|
|
32
|
-
* @param itemEntries - All item entries passed to this function should be local.
|
|
33
|
-
* @param requestColumns - Columns to expand with
|
|
34
|
-
*/
|
|
35
|
-
private expandLocalItemEntries;
|
|
36
|
-
private syncCachedQueryWithLocalItems;
|
|
37
|
-
}
|
|
1
|
+
import { ApiEnumItemType, ItemId } from '@rentman/backend-types';
|
|
2
|
+
import { ApiQuery, ApiRequestColumns, CachedQueryHandlerBase, CachedQueryItem, CachedQueryItemTree, ChildCollectionOptions, CollectionOptions, CollectionQuery, ColumnSubsetCache, ItemEntry, ItemEntryOptions, ItemIdConversionMap, ItemTypeMap, ParentIdMap, ParentItemMap, PromiseInterface, TransactionCache, TransactionCollectionHandlerDependencyInterface, TransactionItemHandler } from '../../../internal';
|
|
3
|
+
export declare class TransactionCachedQueryHandler extends CachedQueryHandlerBase {
|
|
4
|
+
private dependencies;
|
|
5
|
+
private itemHandler;
|
|
6
|
+
protected transaction: TransactionCache;
|
|
7
|
+
constructor(dependencies: TransactionCollectionHandlerDependencyInterface, itemHandler: TransactionItemHandler, transaction: TransactionCache);
|
|
8
|
+
/**
|
|
9
|
+
* @description
|
|
10
|
+
* Updates all cached queries which references one of the updated IDs in the conversionMap
|
|
11
|
+
*
|
|
12
|
+
* @param conversionMap ConversionMap with the updated IDs
|
|
13
|
+
*/
|
|
14
|
+
updateLocalItemIdReferences(conversionMap: ItemIdConversionMap): void;
|
|
15
|
+
__fetchCachedQueryItem<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, options: CollectionOptions, batchedLinkedToQuery?: CollectionQuery): PromiseInterface<CachedQueryItem<ItemTypeType>>;
|
|
16
|
+
__expandCachedQuery<ItemTypeType extends ApiEnumItemType>(cachedQuery: CachedQueryItem<ItemTypeType>, newColumns: ApiRequestColumns, force?: boolean): PromiseInterface<CachedQueryItem<ItemTypeType>>;
|
|
17
|
+
__addItemEntriesToCachedQueries<ItemTypeType extends ApiEnumItemType = any>(itemType: ItemTypeType, parsedQuery: CollectionQuery, itemEntries: ItemEntry<ItemTypeType>[]): void;
|
|
18
|
+
/**
|
|
19
|
+
* @remark
|
|
20
|
+
* todo not only linkedTo should be checked, but it should check if there's a local ID anywhere in the query
|
|
21
|
+
* ({<field>: <localId>}) is also a local query
|
|
22
|
+
*/
|
|
23
|
+
isLocal(options: CollectionOptions | ItemEntryOptions, query: ApiQuery): boolean;
|
|
24
|
+
__fetchItemEntriesByQueryData<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, options: CollectionOptions<ItemTypeType>, columnSubsetCache: ColumnSubsetCache<ItemTypeType>, collectionQuery: CollectionQuery, batchedLinkedToQuery?: CollectionQuery): PromiseInterface<CachedQueryItem<ItemTypeType>>;
|
|
25
|
+
__fetchLinkedCachedQueryItems<ItemTypeType extends ApiEnumItemType>(parentType: ApiEnumItemType, parentIdArray: ItemId[] | (() => ItemId[]), itemType: ItemTypeType, options: CollectionOptions): PromiseInterface<ParentIdMap<CachedQueryItem<ItemTypeType>>>;
|
|
26
|
+
__fetchParentCachedQueryItem<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, options: CollectionOptions): PromiseInterface<CachedQueryItemTree<ItemTypeType>>;
|
|
27
|
+
__fetchChildCachedQueryItems(parentItemType: ApiEnumItemType, parentItemIds: ItemId[], collectionOptions: ChildCollectionOptions, batchQueries?: ItemTypeMap<CollectionQuery>): PromiseInterface<ParentItemMap<CachedQueryItemTree>>;
|
|
28
|
+
private createBatchQueryMap;
|
|
29
|
+
private resolveLocalCachedQueryItem;
|
|
30
|
+
/**
|
|
31
|
+
* @param itemType - The itemType of the entries you want to expand
|
|
32
|
+
* @param itemEntries - All item entries passed to this function should be local.
|
|
33
|
+
* @param requestColumns - Columns to expand with
|
|
34
|
+
*/
|
|
35
|
+
private expandLocalItemEntries;
|
|
36
|
+
private syncCachedQueryWithLocalItems;
|
|
37
|
+
}
|
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
import { ApiEnumItemType } from '@rentman/backend-types';
|
|
2
|
-
import { ApiRequestColumns, ChangesDelta, CollectionEntry, CollectionResource, ItemEntry, ItemIdConversionMap, ModifyFieldsCallback, PromiseInterface, TransactionCache, TransactionCachedQueryHandler, TransactionCollectionHandlerDependencyInterface, TransactionItemHandler } from '../../../internal';
|
|
3
|
-
export declare class TransactionCollectionHandler {
|
|
4
|
-
protected itemHandler: TransactionItemHandler;
|
|
5
|
-
protected cachedQueryHandler: TransactionCachedQueryHandler;
|
|
6
|
-
private dependencies;
|
|
7
|
-
private transaction;
|
|
8
|
-
collectionResources: {
|
|
9
|
-
[itemType: string]: {
|
|
10
|
-
[queryString: string]: CollectionResource[];
|
|
11
|
-
};
|
|
12
|
-
};
|
|
13
|
-
constructor(itemHandler: TransactionItemHandler, cachedQueryHandler: TransactionCachedQueryHandler, dependencies: TransactionCollectionHandlerDependencyInterface, transaction: TransactionCache);
|
|
14
|
-
updateLocalItemIdReferences(conversionMap: ItemIdConversionMap): void;
|
|
15
|
-
expandCollectionResource<ItemTypeType extends ApiEnumItemType = any>(collectionResource: CollectionResource<ItemTypeType>, newColumns: ApiRequestColumns): PromiseInterface<void>;
|
|
16
|
-
addResource(resource: CollectionResource): CollectionResource;
|
|
17
|
-
clearResource(resource: CollectionResource): void;
|
|
18
|
-
/**
|
|
19
|
-
* @description
|
|
20
|
-
* Updates the parents of the passed {@link ItemEntry ItemEntries}, returns `void` because you should use the {@link CollectionOptions.onAdd onAdd} and {@link CollectionOptions.onRemove onRemove} callbacks
|
|
21
|
-
*/
|
|
22
|
-
moveItems<CollectionEntryType extends CollectionEntry>(sourceCollectionEntry: CollectionEntryType, destinationCollectionEntry: CollectionEntryType, itemEntries: ItemEntry<CollectionEntryType['itemType']>[]): void;
|
|
23
|
-
cloneCollectionEntry<CollectionEntryType extends CollectionEntry>(changesDelta: ChangesDelta, sourceEntry: CollectionEntryType, conversionMap?: ItemIdConversionMap, modifyFieldsCallback?: ModifyFieldsCallback): void;
|
|
24
|
-
}
|
|
1
|
+
import { ApiEnumItemType } from '@rentman/backend-types';
|
|
2
|
+
import { ApiRequestColumns, ChangesDelta, CollectionEntry, CollectionResource, ItemEntry, ItemIdConversionMap, ModifyFieldsCallback, PromiseInterface, TransactionCache, TransactionCachedQueryHandler, TransactionCollectionHandlerDependencyInterface, TransactionItemHandler } from '../../../internal';
|
|
3
|
+
export declare class TransactionCollectionHandler {
|
|
4
|
+
protected itemHandler: TransactionItemHandler;
|
|
5
|
+
protected cachedQueryHandler: TransactionCachedQueryHandler;
|
|
6
|
+
private dependencies;
|
|
7
|
+
private transaction;
|
|
8
|
+
collectionResources: {
|
|
9
|
+
[itemType: string]: {
|
|
10
|
+
[queryString: string]: CollectionResource[];
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
constructor(itemHandler: TransactionItemHandler, cachedQueryHandler: TransactionCachedQueryHandler, dependencies: TransactionCollectionHandlerDependencyInterface, transaction: TransactionCache);
|
|
14
|
+
updateLocalItemIdReferences(conversionMap: ItemIdConversionMap): void;
|
|
15
|
+
expandCollectionResource<ItemTypeType extends ApiEnumItemType = any>(collectionResource: CollectionResource<ItemTypeType>, newColumns: ApiRequestColumns): PromiseInterface<void>;
|
|
16
|
+
addResource(resource: CollectionResource): CollectionResource;
|
|
17
|
+
clearResource(resource: CollectionResource): void;
|
|
18
|
+
/**
|
|
19
|
+
* @description
|
|
20
|
+
* Updates the parents of the passed {@link ItemEntry ItemEntries}, returns `void` because you should use the {@link CollectionOptions.onAdd onAdd} and {@link CollectionOptions.onRemove onRemove} callbacks
|
|
21
|
+
*/
|
|
22
|
+
moveItems<CollectionEntryType extends CollectionEntry>(sourceCollectionEntry: CollectionEntryType, destinationCollectionEntry: CollectionEntryType, itemEntries: ItemEntry<CollectionEntryType['itemType']>[]): void;
|
|
23
|
+
cloneCollectionEntry<CollectionEntryType extends CollectionEntry>(changesDelta: ChangesDelta, sourceEntry: CollectionEntryType, conversionMap?: ItemIdConversionMap, modifyFieldsCallback?: ModifyFieldsCallback): void;
|
|
24
|
+
}
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
import { ErrorHandlerInterface, ExceptionHandlerInterface, ItemEntry, ItemIdConversionMap, PromiseInterface, PromiseLibraryInterface, TransactionCache, TransactionErrorLevel } from '../../../internal';
|
|
2
|
-
export declare type TransactionCacheCallbackCondition = 'always' | 'onClose' | 'skipOnClose';
|
|
3
|
-
export declare type TransactionCacheCallbackType = {
|
|
4
|
-
onBeforeSave: (transaction: TransactionCache) => any;
|
|
5
|
-
onSaveSuccess: (transaction: TransactionCache, conversionMap: ItemIdConversionMap) => any;
|
|
6
|
-
onSetItemError: (itemEntryId: ItemEntry['id'], columnId: string, key: string) => void;
|
|
7
|
-
onClearItemError: (itemEntryId: ItemEntry['id'], columnId: string, key: string) => void;
|
|
8
|
-
onSetGlobalError: (key: string, level: TransactionErrorLevel) => void;
|
|
9
|
-
onClearGlobalError: (key: string) => void;
|
|
10
|
-
};
|
|
11
|
-
export declare class TransactionEventHandler {
|
|
12
|
-
private errorHandler;
|
|
13
|
-
private exceptionHandler;
|
|
14
|
-
private promiseService;
|
|
15
|
-
private callbacks;
|
|
16
|
-
constructor(errorHandler: ErrorHandlerInterface, exceptionHandler: ExceptionHandlerInterface, promiseService: PromiseLibraryInterface);
|
|
17
|
-
registerCallback<T extends keyof TransactionCacheCallbackType>(type: T, key: string, callback: TransactionCacheCallbackType[T], condition?: TransactionCacheCallbackCondition, priority?: number): () => void;
|
|
18
|
-
executeCallbacks<T extends keyof TransactionCacheCallbackType>(type: T, execute: (callback: TransactionCacheCallbackType[T]) => any, closeTab: boolean): PromiseInterface<any>;
|
|
19
|
-
private getPriorityLevel;
|
|
20
|
-
private executeCallbacksPriorityLevel;
|
|
21
|
-
}
|
|
1
|
+
import { ErrorHandlerInterface, ExceptionHandlerInterface, ItemEntry, ItemIdConversionMap, PromiseInterface, PromiseLibraryInterface, TransactionCache, TransactionErrorLevel } from '../../../internal';
|
|
2
|
+
export declare type TransactionCacheCallbackCondition = 'always' | 'onClose' | 'skipOnClose';
|
|
3
|
+
export declare type TransactionCacheCallbackType = {
|
|
4
|
+
onBeforeSave: (transaction: TransactionCache) => any;
|
|
5
|
+
onSaveSuccess: (transaction: TransactionCache, conversionMap: ItemIdConversionMap) => any;
|
|
6
|
+
onSetItemError: (itemEntryId: ItemEntry['id'], columnId: string, key: string) => void;
|
|
7
|
+
onClearItemError: (itemEntryId: ItemEntry['id'], columnId: string, key: string) => void;
|
|
8
|
+
onSetGlobalError: (key: string, level: TransactionErrorLevel) => void;
|
|
9
|
+
onClearGlobalError: (key: string) => void;
|
|
10
|
+
};
|
|
11
|
+
export declare class TransactionEventHandler {
|
|
12
|
+
private errorHandler;
|
|
13
|
+
private exceptionHandler;
|
|
14
|
+
private promiseService;
|
|
15
|
+
private callbacks;
|
|
16
|
+
constructor(errorHandler: ErrorHandlerInterface, exceptionHandler: ExceptionHandlerInterface, promiseService: PromiseLibraryInterface);
|
|
17
|
+
registerCallback<T extends keyof TransactionCacheCallbackType>(type: T, key: string, callback: TransactionCacheCallbackType[T], condition?: TransactionCacheCallbackCondition, priority?: number): () => void;
|
|
18
|
+
executeCallbacks<T extends keyof TransactionCacheCallbackType>(type: T, execute: (callback: TransactionCacheCallbackType[T]) => any, closeTab: boolean): PromiseInterface<any>;
|
|
19
|
+
private getPriorityLevel;
|
|
20
|
+
private executeCallbacksPriorityLevel;
|
|
21
|
+
}
|
|
@@ -1,90 +1,90 @@
|
|
|
1
|
-
import { ApiEnumItemType, ItemId } from '@rentman/backend-types';
|
|
2
|
-
import { ApiQuery, ApiRequestColumns, ChangesDelta, ChangesDeltaBase, ChangesDeltaItemCreateDelta, ChangesDeltaItemUpdateDelta, ChangesDeltaResult, ColumnSubsetCache, DeregFunction, FieldChangeCallback, FieldMap, ItemEntry, ItemEntryChanges, ItemEntryChangesTuple, ItemEntryOptions, ItemHandlerBase, ItemIdConversionMap, ItemTypeMap, ModifyFieldsCallback, ProcessItemEntryChangesResult, PromiseInterface, ResponseColumnItemTypeMap, TransactionCache, TransactionItemHandlerDependencyInterface, TransactionValidator } from '../../../internal';
|
|
3
|
-
export interface TransactionItemEntryChanges<ItemTypeType extends ApiEnumItemType> extends ItemEntryChanges<ItemTypeType> {
|
|
4
|
-
initial: FieldMap<ItemTypeType>;
|
|
5
|
-
}
|
|
6
|
-
export interface TransactionItemEntryChangesTuple<ItemTypeType extends ApiEnumItemType> extends ItemEntryChangesTuple<ItemTypeType> {
|
|
7
|
-
changes: TransactionItemEntryChanges<ItemTypeType>;
|
|
8
|
-
}
|
|
9
|
-
/**
|
|
10
|
-
* @description
|
|
11
|
-
* In a {@link TransactionCache Transaction} only local items can be stored, so all entries in {@link TransactionItemHandler.entries this.entries} are local
|
|
12
|
-
* If a non-local entry is requested it should be passed on to the {@link ServerItemHandler ServerItemHandler} which will __fetchCachedQueryItem the entry from the server
|
|
13
|
-
*/
|
|
14
|
-
export declare class TransactionItemHandler extends ItemHandlerBase {
|
|
15
|
-
private dependencies;
|
|
16
|
-
protected transaction: TransactionCache;
|
|
17
|
-
private validator?;
|
|
18
|
-
/**
|
|
19
|
-
* @warning
|
|
20
|
-
* Can contain both local and non-local {@link ItemEntry itemEntries}
|
|
21
|
-
*/
|
|
22
|
-
deletedItems: ItemTypeMap<ItemEntry[]>;
|
|
23
|
-
itemChanges: {
|
|
24
|
-
[itemEntryId: string]: TransactionItemEntryChanges<any>;
|
|
25
|
-
};
|
|
26
|
-
fieldChangeCallbacks: {
|
|
27
|
-
[itemType: string]: {
|
|
28
|
-
[itemId: string]: FieldChangeCallback[];
|
|
29
|
-
};
|
|
30
|
-
};
|
|
31
|
-
constructor(dependencies: TransactionItemHandlerDependencyInterface, transaction: TransactionCache, validator?: TransactionValidator | undefined);
|
|
32
|
-
updateLocalItemIdReferences(itemType: ApiEnumItemType, oldItemId: ItemId, newItemId: ItemId, changesDelta?: ChangesDeltaBase): void;
|
|
33
|
-
registerFieldChangeCallback<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, itemId: ItemId, callback: FieldChangeCallback<ItemTypeType>): DeregFunction;
|
|
34
|
-
copyTransactionItemEntryChanges<ItemTypeType extends ApiEnumItemType>(itemEntryChanges: TransactionItemEntryChanges<ItemTypeType>, entry: ItemEntry<ItemTypeType>): TransactionItemEntryChanges<ItemTypeType>;
|
|
35
|
-
createItemEntry(createTuple: ChangesDeltaItemCreateDelta): ItemEntry;
|
|
36
|
-
/**
|
|
37
|
-
* @description
|
|
38
|
-
* Gets the local {@link FieldMap changes} of the {@link ItemEntry entry} on the {@link TransactionCache transaction} in a formatted way the API accepts
|
|
39
|
-
*/
|
|
40
|
-
formatRequest<ItemEntryType extends ItemEntry>(entry: ItemEntryType): {
|
|
41
|
-
[columnId: string]: any;
|
|
42
|
-
};
|
|
43
|
-
detectChanges(): boolean;
|
|
44
|
-
/**
|
|
45
|
-
* @description
|
|
46
|
-
* Checks if the transaction has changes for the passed {@link ItemEntry.id ItemEntryId}
|
|
47
|
-
*
|
|
48
|
-
* -----
|
|
49
|
-
* @remarks
|
|
50
|
-
* Compares every field (of the entry) in {@link TransactionItemHandler.itemChanges itemChanges} with the initial fields, because fields are copied over when creating a resource having something in itemChanges doesn't actually mean that there are changes (just that a resource has been made)
|
|
51
|
-
*/
|
|
52
|
-
detectEntryChanges(itemEntryId: ItemEntry['id']): boolean;
|
|
53
|
-
/**
|
|
54
|
-
* @description
|
|
55
|
-
* Processes on a cached entry, if there are no {@link TransactionItemHandler.itemChanges itemChanges} the new values will not be processed unless `createItemChangesIfNoneExist` is set
|
|
56
|
-
*
|
|
57
|
-
* @param itemEntryChangesTuple The changes tuple
|
|
58
|
-
* @param isCalledAfterSocketUpdate Indicates that the change is done by a different user
|
|
59
|
-
* @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
|
|
60
|
-
*
|
|
61
|
-
* @returns
|
|
62
|
-
* The previous changes {@link FieldMap FieldMap}, returns `null` when the item was not cached or no fields were changed.
|
|
63
|
-
*/
|
|
64
|
-
processItemEntryChanges<ItemTypeType extends ApiEnumItemType = any>(itemEntryChangesTuple: ChangesDeltaItemUpdateDelta<ItemTypeType>, isCalledAfterSocketUpdate?: boolean, createItemChangesIfNoneExist?: boolean): ProcessItemEntryChangesResult<ItemTypeType>;
|
|
65
|
-
cloneItemEntries<ItemTypeType extends ApiEnumItemType>(changesDelta: ChangesDelta, itemEntries: ItemEntry<ItemTypeType>[], conversionMap?: ItemIdConversionMap, modifyFieldsCallback?: ModifyFieldsCallback): ItemId[];
|
|
66
|
-
cloneItemEntry<ItemTypeType extends ApiEnumItemType>(changesDelta: ChangesDelta, sourceEntry: ItemEntry<ItemTypeType>, conversionMap?: ItemIdConversionMap, modifyFieldsCallback?: ModifyFieldsCallback): ItemId;
|
|
67
|
-
fetchItemEntriesByQuery<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, query: ApiQuery, entryOptions: ItemEntryOptions): PromiseInterface<ItemEntry<ItemTypeType>[]>;
|
|
68
|
-
fetchItemEntry<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, itemId: ItemId, options: ItemEntryOptions, isRoot?: boolean): PromiseInterface<ItemEntry<ItemTypeType>>;
|
|
69
|
-
/**
|
|
70
|
-
* @description
|
|
71
|
-
* Fetches a template and creates a new {@link ItemEntry ItemEntry}, will error if the ItemEntry with the given ItemId already exists
|
|
72
|
-
*/
|
|
73
|
-
fetchNewItemEntry<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, itemId: ItemId, options: ItemEntryOptions, isRoot?: boolean): PromiseInterface<ChangesDeltaResult>;
|
|
74
|
-
fetchItemEntries<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, itemIds: ItemId[], options: ItemEntryOptions): PromiseInterface<ItemEntry<ItemTypeType>[]>;
|
|
75
|
-
fetchTitle(itemType: ApiEnumItemType, itemId: ItemId): PromiseInterface<string>;
|
|
76
|
-
resolveLocalItemEntry<ItemTypeType extends ApiEnumItemType>(changesDelta: ChangesDelta, itemEntry: ItemEntry<ItemTypeType>, columnSubsetCache: ColumnSubsetCache<ItemTypeType>, options: ItemEntryOptions): PromiseInterface<ItemEntry<ItemTypeType>>;
|
|
77
|
-
expandLocalItemEntries<ItemTypeType extends ApiEnumItemType>(changesDelta: ChangesDeltaBase, itemType: ItemTypeType, itemEntries: ItemEntry<ItemTypeType>[], requestColumns: ApiRequestColumns, responseColumns: ResponseColumnItemTypeMap): PromiseInterface<ItemEntry<ItemTypeType>[]>;
|
|
78
|
-
/**
|
|
79
|
-
* @description
|
|
80
|
-
* Fetches the data for the passed ItemType/ItemId/columns, is able to __fetchCachedQueryItem non-local derived values.
|
|
81
|
-
*
|
|
82
|
-
* @remark
|
|
83
|
-
* Assumes the the ItemEntry with the given ItemType-ItemId is already cached
|
|
84
|
-
*/
|
|
85
|
-
fetchLocalItemEntryData<ItemTypeType extends ApiEnumItemType>(changesDelta: ChangesDelta, itemType: ItemTypeType, itemId: ItemId, columnSubsetCache: ColumnSubsetCache<ItemTypeType>, options: ItemEntryOptions): PromiseInterface<ItemEntry<ItemTypeType>>;
|
|
86
|
-
fetchLocalItemEntries<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, itemIds: ItemId[], options: ItemEntryOptions): PromiseInterface<ItemEntry<ItemTypeType>[]>;
|
|
87
|
-
private getColumnDifference;
|
|
88
|
-
private expandLocalItemEntry;
|
|
89
|
-
private getLocalValues;
|
|
90
|
-
}
|
|
1
|
+
import { ApiEnumItemType, ItemId } from '@rentman/backend-types';
|
|
2
|
+
import { ApiQuery, ApiRequestColumns, ChangesDelta, ChangesDeltaBase, ChangesDeltaItemCreateDelta, ChangesDeltaItemUpdateDelta, ChangesDeltaResult, ColumnSubsetCache, DeregFunction, FieldChangeCallback, FieldMap, ItemEntry, ItemEntryChanges, ItemEntryChangesTuple, ItemEntryOptions, ItemHandlerBase, ItemIdConversionMap, ItemTypeMap, ModifyFieldsCallback, ProcessItemEntryChangesResult, PromiseInterface, ResponseColumnItemTypeMap, TransactionCache, TransactionItemHandlerDependencyInterface, TransactionValidator } from '../../../internal';
|
|
3
|
+
export interface TransactionItemEntryChanges<ItemTypeType extends ApiEnumItemType> extends ItemEntryChanges<ItemTypeType> {
|
|
4
|
+
initial: FieldMap<ItemTypeType>;
|
|
5
|
+
}
|
|
6
|
+
export interface TransactionItemEntryChangesTuple<ItemTypeType extends ApiEnumItemType> extends ItemEntryChangesTuple<ItemTypeType> {
|
|
7
|
+
changes: TransactionItemEntryChanges<ItemTypeType>;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* @description
|
|
11
|
+
* In a {@link TransactionCache Transaction} only local items can be stored, so all entries in {@link TransactionItemHandler.entries this.entries} are local
|
|
12
|
+
* If a non-local entry is requested it should be passed on to the {@link ServerItemHandler ServerItemHandler} which will __fetchCachedQueryItem the entry from the server
|
|
13
|
+
*/
|
|
14
|
+
export declare class TransactionItemHandler extends ItemHandlerBase {
|
|
15
|
+
private dependencies;
|
|
16
|
+
protected transaction: TransactionCache;
|
|
17
|
+
private validator?;
|
|
18
|
+
/**
|
|
19
|
+
* @warning
|
|
20
|
+
* Can contain both local and non-local {@link ItemEntry itemEntries}
|
|
21
|
+
*/
|
|
22
|
+
deletedItems: ItemTypeMap<ItemEntry[]>;
|
|
23
|
+
itemChanges: {
|
|
24
|
+
[itemEntryId: string]: TransactionItemEntryChanges<any>;
|
|
25
|
+
};
|
|
26
|
+
fieldChangeCallbacks: {
|
|
27
|
+
[itemType: string]: {
|
|
28
|
+
[itemId: string]: FieldChangeCallback[];
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
constructor(dependencies: TransactionItemHandlerDependencyInterface, transaction: TransactionCache, validator?: TransactionValidator | undefined);
|
|
32
|
+
updateLocalItemIdReferences(itemType: ApiEnumItemType, oldItemId: ItemId, newItemId: ItemId, changesDelta?: ChangesDeltaBase): void;
|
|
33
|
+
registerFieldChangeCallback<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, itemId: ItemId, callback: FieldChangeCallback<ItemTypeType>): DeregFunction;
|
|
34
|
+
copyTransactionItemEntryChanges<ItemTypeType extends ApiEnumItemType>(itemEntryChanges: TransactionItemEntryChanges<ItemTypeType>, entry: ItemEntry<ItemTypeType>): TransactionItemEntryChanges<ItemTypeType>;
|
|
35
|
+
createItemEntry(createTuple: ChangesDeltaItemCreateDelta): ItemEntry;
|
|
36
|
+
/**
|
|
37
|
+
* @description
|
|
38
|
+
* Gets the local {@link FieldMap changes} of the {@link ItemEntry entry} on the {@link TransactionCache transaction} in a formatted way the API accepts
|
|
39
|
+
*/
|
|
40
|
+
formatRequest<ItemEntryType extends ItemEntry>(entry: ItemEntryType): {
|
|
41
|
+
[columnId: string]: any;
|
|
42
|
+
};
|
|
43
|
+
detectChanges(): boolean;
|
|
44
|
+
/**
|
|
45
|
+
* @description
|
|
46
|
+
* Checks if the transaction has changes for the passed {@link ItemEntry.id ItemEntryId}
|
|
47
|
+
*
|
|
48
|
+
* -----
|
|
49
|
+
* @remarks
|
|
50
|
+
* Compares every field (of the entry) in {@link TransactionItemHandler.itemChanges itemChanges} with the initial fields, because fields are copied over when creating a resource having something in itemChanges doesn't actually mean that there are changes (just that a resource has been made)
|
|
51
|
+
*/
|
|
52
|
+
detectEntryChanges(itemEntryId: ItemEntry['id']): boolean;
|
|
53
|
+
/**
|
|
54
|
+
* @description
|
|
55
|
+
* Processes on a cached entry, if there are no {@link TransactionItemHandler.itemChanges itemChanges} the new values will not be processed unless `createItemChangesIfNoneExist` is set
|
|
56
|
+
*
|
|
57
|
+
* @param itemEntryChangesTuple The changes tuple
|
|
58
|
+
* @param isCalledAfterSocketUpdate Indicates that the change is done by a different user
|
|
59
|
+
* @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
|
|
60
|
+
*
|
|
61
|
+
* @returns
|
|
62
|
+
* The previous changes {@link FieldMap FieldMap}, returns `null` when the item was not cached or no fields were changed.
|
|
63
|
+
*/
|
|
64
|
+
processItemEntryChanges<ItemTypeType extends ApiEnumItemType = any>(itemEntryChangesTuple: ChangesDeltaItemUpdateDelta<ItemTypeType>, isCalledAfterSocketUpdate?: boolean, createItemChangesIfNoneExist?: boolean): ProcessItemEntryChangesResult<ItemTypeType>;
|
|
65
|
+
cloneItemEntries<ItemTypeType extends ApiEnumItemType>(changesDelta: ChangesDelta, itemEntries: ItemEntry<ItemTypeType>[], conversionMap?: ItemIdConversionMap, modifyFieldsCallback?: ModifyFieldsCallback): ItemId[];
|
|
66
|
+
cloneItemEntry<ItemTypeType extends ApiEnumItemType>(changesDelta: ChangesDelta, sourceEntry: ItemEntry<ItemTypeType>, conversionMap?: ItemIdConversionMap, modifyFieldsCallback?: ModifyFieldsCallback): ItemId;
|
|
67
|
+
fetchItemEntriesByQuery<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, query: ApiQuery, entryOptions: ItemEntryOptions): PromiseInterface<ItemEntry<ItemTypeType>[]>;
|
|
68
|
+
fetchItemEntry<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, itemId: ItemId, options: ItemEntryOptions, isRoot?: boolean): PromiseInterface<ItemEntry<ItemTypeType>>;
|
|
69
|
+
/**
|
|
70
|
+
* @description
|
|
71
|
+
* Fetches a template and creates a new {@link ItemEntry ItemEntry}, will error if the ItemEntry with the given ItemId already exists
|
|
72
|
+
*/
|
|
73
|
+
fetchNewItemEntry<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, itemId: ItemId, options: ItemEntryOptions, isRoot?: boolean): PromiseInterface<ChangesDeltaResult>;
|
|
74
|
+
fetchItemEntries<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, itemIds: ItemId[], options: ItemEntryOptions): PromiseInterface<ItemEntry<ItemTypeType>[]>;
|
|
75
|
+
fetchTitle(itemType: ApiEnumItemType, itemId: ItemId): PromiseInterface<string>;
|
|
76
|
+
resolveLocalItemEntry<ItemTypeType extends ApiEnumItemType>(changesDelta: ChangesDelta, itemEntry: ItemEntry<ItemTypeType>, columnSubsetCache: ColumnSubsetCache<ItemTypeType>, options: ItemEntryOptions): PromiseInterface<ItemEntry<ItemTypeType>>;
|
|
77
|
+
expandLocalItemEntries<ItemTypeType extends ApiEnumItemType>(changesDelta: ChangesDeltaBase, itemType: ItemTypeType, itemEntries: ItemEntry<ItemTypeType>[], requestColumns: ApiRequestColumns, responseColumns: ResponseColumnItemTypeMap): PromiseInterface<ItemEntry<ItemTypeType>[]>;
|
|
78
|
+
/**
|
|
79
|
+
* @description
|
|
80
|
+
* Fetches the data for the passed ItemType/ItemId/columns, is able to __fetchCachedQueryItem non-local derived values.
|
|
81
|
+
*
|
|
82
|
+
* @remark
|
|
83
|
+
* Assumes the the ItemEntry with the given ItemType-ItemId is already cached
|
|
84
|
+
*/
|
|
85
|
+
fetchLocalItemEntryData<ItemTypeType extends ApiEnumItemType>(changesDelta: ChangesDelta, itemType: ItemTypeType, itemId: ItemId, columnSubsetCache: ColumnSubsetCache<ItemTypeType>, options: ItemEntryOptions): PromiseInterface<ItemEntry<ItemTypeType>>;
|
|
86
|
+
fetchLocalItemEntries<ItemTypeType extends ApiEnumItemType>(itemType: ItemTypeType, itemIds: ItemId[], options: ItemEntryOptions): PromiseInterface<ItemEntry<ItemTypeType>[]>;
|
|
87
|
+
private getColumnDifference;
|
|
88
|
+
private expandLocalItemEntry;
|
|
89
|
+
private getLocalValues;
|
|
90
|
+
}
|
|
@@ -1,33 +1,33 @@
|
|
|
1
|
-
import { ApiEnumItemType } from '@rentman/backend-types';
|
|
2
|
-
import { FieldMap, ItemEntry, PromiseInterface, TransactionCache, TransactionErrorLevel } from '../../../internal';
|
|
3
|
-
export interface TransactionValidatorFactory {
|
|
4
|
-
construct(transaction: TransactionCache): TransactionValidator;
|
|
5
|
-
}
|
|
6
|
-
export declare abstract class TransactionValidator {
|
|
7
|
-
protected transaction: TransactionCache;
|
|
8
|
-
private lastCallIdMap;
|
|
9
|
-
private _lastCallId;
|
|
10
|
-
protected constructor(transaction: TransactionCache);
|
|
11
|
-
/**
|
|
12
|
-
* @description
|
|
13
|
-
* Will return `true` if there are any validators pending
|
|
14
|
-
*/
|
|
15
|
-
isPending(): boolean;
|
|
16
|
-
/**
|
|
17
|
-
* @description
|
|
18
|
-
* Will be called after {@link TransactionCache.applyChangesFromParent applyChangesFromParent}, {@link TransactionCache.applyChangesFromChild applyChangesFromChild} or {@link TransactionCache.applyChangesDelta applyChangesDelta} is called
|
|
19
|
-
* Allows you to set {@link TransactionCache.errors global errors}
|
|
20
|
-
*/
|
|
21
|
-
abstract validateTransaction(): void;
|
|
22
|
-
/**
|
|
23
|
-
* @description
|
|
24
|
-
* Will be called whenever an item is changed, allows you to set errors on the transaction
|
|
25
|
-
* @param itemEntry
|
|
26
|
-
* @param fields
|
|
27
|
-
* @param previous
|
|
28
|
-
*/
|
|
29
|
-
abstract validateItem<ItemTypeType extends ApiEnumItemType>(itemEntry: ItemEntry<ItemTypeType>, fields: FieldMap<ItemTypeType>, previous: FieldMap<ItemTypeType>): void;
|
|
30
|
-
protected setGlobalError(key: string, isInvalid: boolean | PromiseInterface<boolean>, saveButtonErrorTranslationFn: () => string, level: TransactionErrorLevel): void;
|
|
31
|
-
protected setItemError(itemEntryId: ItemEntry['id'], columnId: string, errorKey: string, isInvalid: boolean | PromiseInterface<boolean>, fieldErrorTranslationFn: () => string, saveButtonErrorTranslationFn: () => string, level: TransactionErrorLevel): void;
|
|
32
|
-
private getHash;
|
|
33
|
-
}
|
|
1
|
+
import { ApiEnumItemType } from '@rentman/backend-types';
|
|
2
|
+
import { FieldMap, ItemEntry, PromiseInterface, TransactionCache, TransactionErrorLevel } from '../../../internal';
|
|
3
|
+
export interface TransactionValidatorFactory {
|
|
4
|
+
construct(transaction: TransactionCache): TransactionValidator;
|
|
5
|
+
}
|
|
6
|
+
export declare abstract class TransactionValidator {
|
|
7
|
+
protected transaction: TransactionCache;
|
|
8
|
+
private lastCallIdMap;
|
|
9
|
+
private _lastCallId;
|
|
10
|
+
protected constructor(transaction: TransactionCache);
|
|
11
|
+
/**
|
|
12
|
+
* @description
|
|
13
|
+
* Will return `true` if there are any validators pending
|
|
14
|
+
*/
|
|
15
|
+
isPending(): boolean;
|
|
16
|
+
/**
|
|
17
|
+
* @description
|
|
18
|
+
* Will be called after {@link TransactionCache.applyChangesFromParent applyChangesFromParent}, {@link TransactionCache.applyChangesFromChild applyChangesFromChild} or {@link TransactionCache.applyChangesDelta applyChangesDelta} is called
|
|
19
|
+
* Allows you to set {@link TransactionCache.errors global errors}
|
|
20
|
+
*/
|
|
21
|
+
abstract validateTransaction(): void;
|
|
22
|
+
/**
|
|
23
|
+
* @description
|
|
24
|
+
* Will be called whenever an item is changed, allows you to set errors on the transaction
|
|
25
|
+
* @param itemEntry
|
|
26
|
+
* @param fields
|
|
27
|
+
* @param previous
|
|
28
|
+
*/
|
|
29
|
+
abstract validateItem<ItemTypeType extends ApiEnumItemType>(itemEntry: ItemEntry<ItemTypeType>, fields: FieldMap<ItemTypeType>, previous: FieldMap<ItemTypeType>): void;
|
|
30
|
+
protected setGlobalError(key: string, isInvalid: boolean | PromiseInterface<boolean>, saveButtonErrorTranslationFn: () => string, level: TransactionErrorLevel): void;
|
|
31
|
+
protected setItemError(itemEntryId: ItemEntry['id'], columnId: string, errorKey: string, isInvalid: boolean | PromiseInterface<boolean>, fieldErrorTranslationFn: () => string, saveButtonErrorTranslationFn: () => string, level: TransactionErrorLevel): void;
|
|
32
|
+
private getHash;
|
|
33
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export declare const ALL_PERMISSIONS = 7;
|
|
2
|
-
export declare const COLUMN_SEPERATOR = ">";
|
|
3
|
-
export declare const RENDER_AS_SEPERATOR = ":";
|
|
4
|
-
export declare const NEW_PREFIX: string;
|
|
5
|
-
export declare const DUPLICATE_PREFIX: string;
|
|
6
|
-
export declare const NEW_KEYWORD: string;
|
|
7
|
-
export declare const DUPLICATE_KEYWORD: string;
|
|
1
|
+
export declare const ALL_PERMISSIONS = 7;
|
|
2
|
+
export declare const COLUMN_SEPERATOR = ">";
|
|
3
|
+
export declare const RENDER_AS_SEPERATOR = ":";
|
|
4
|
+
export declare const NEW_PREFIX: string;
|
|
5
|
+
export declare const DUPLICATE_PREFIX: string;
|
|
6
|
+
export declare const NEW_KEYWORD: string;
|
|
7
|
+
export declare const DUPLICATE_KEYWORD: string;
|
package/dist/types/core.d.ts
CHANGED
|
@@ -1,45 +1,45 @@
|
|
|
1
|
-
import { ApiFormatter, ApiRequestService, ApiRequestServiceInterface, ApiResponseProcessorFactory, AuthInterface, CacheSyncerFactory, ChangesCompilationFactory, ChangesDeltaFactory, ChangesProcessorFactory, CollectionEntryFactory, CollectionEntryService, CollectionResourceFactory, CollectionResourceService, ColumnCache, ColumnExpansionFactory, ColumnHandler, ColumnInfoFactory, ColumnSetFactory, ColumnSubsetCacheFactory, ColumnUtil, ConversionMapService, CreateRequestFactory, ErrorHandlerInterface, ExceptionHandlerInterface, ItemCacheFactory, ItemCreateService, ItemEntryFactory, ItemEntryService, ItemResourceFactory, KeyService, LinkTreeServiceInterface, LockService, ModuleChangesCompilationFactory, PromiseLibraryInterface, QueryMatcherFactory, QueryParserFactory, QueryService, RequestColumnExpansionFactory, SocketMessageHandler, TemplateCache, TemplateFactory, TransactionCacheFactory } from './internal';
|
|
2
|
-
export declare class RmCore {
|
|
3
|
-
version: string;
|
|
4
|
-
noop: typeof noop;
|
|
5
|
-
apiFormatter: ApiFormatter;
|
|
6
|
-
apiRequestService: ApiRequestService;
|
|
7
|
-
apiResponseProcessorFactory: ApiResponseProcessorFactory;
|
|
8
|
-
changesCompilationFactory: ChangesCompilationFactory;
|
|
9
|
-
changesDeltaFactory: ChangesDeltaFactory;
|
|
10
|
-
changesProcessorFactory: ChangesProcessorFactory;
|
|
11
|
-
collectionEntryFactory: CollectionEntryFactory;
|
|
12
|
-
collectionEntryService: CollectionEntryService;
|
|
13
|
-
collectionMatcherFactory: CacheSyncerFactory;
|
|
14
|
-
collectionResourceFactory: CollectionResourceFactory;
|
|
15
|
-
collectionResourceService: CollectionResourceService;
|
|
16
|
-
columnCache: ColumnCache;
|
|
17
|
-
columnExpansionFactory: ColumnExpansionFactory;
|
|
18
|
-
columnHandler: ColumnHandler;
|
|
19
|
-
columnInfoFactory: ColumnInfoFactory;
|
|
20
|
-
columnSetFactory: ColumnSetFactory;
|
|
21
|
-
columnSubsetCacheFactory: ColumnSubsetCacheFactory;
|
|
22
|
-
columnUtil: ColumnUtil;
|
|
23
|
-
conversionMapService: ConversionMapService;
|
|
24
|
-
createRequestFactory: CreateRequestFactory;
|
|
25
|
-
itemCacheFactory: ItemCacheFactory;
|
|
26
|
-
itemCreateService: ItemCreateService;
|
|
27
|
-
itemEntryFactory: ItemEntryFactory;
|
|
28
|
-
itemEntryService: ItemEntryService;
|
|
29
|
-
itemResourceFactory: ItemResourceFactory;
|
|
30
|
-
keyService: KeyService;
|
|
31
|
-
lockService: LockService;
|
|
32
|
-
moduleChangesCompilationFactory: ModuleChangesCompilationFactory;
|
|
33
|
-
queryMatcherFactory: QueryMatcherFactory;
|
|
34
|
-
queryParserFactory: QueryParserFactory;
|
|
35
|
-
queryService: QueryService;
|
|
36
|
-
requestColumnExpansionFactory: RequestColumnExpansionFactory;
|
|
37
|
-
socketMessageHandler: SocketMessageHandler;
|
|
38
|
-
templateCache: TemplateCache;
|
|
39
|
-
templateFactory: TemplateFactory;
|
|
40
|
-
transactionCacheFactory: TransactionCacheFactory;
|
|
41
|
-
constructor(_apiRequestService: ApiRequestServiceInterface, authInterface: AuthInterface, errorHandler: ErrorHandlerInterface, exceptionHandler: ExceptionHandlerInterface, promiseLibrary: PromiseLibraryInterface, linkTreeService: LinkTreeServiceInterface);
|
|
42
|
-
}
|
|
43
|
-
export declare function noop(): void;
|
|
44
|
-
export declare function identity<T extends any>(value: T): T;
|
|
45
|
-
export declare function nullFunction(): null;
|
|
1
|
+
import { ApiFormatter, ApiRequestService, ApiRequestServiceInterface, ApiResponseProcessorFactory, AuthInterface, CacheSyncerFactory, ChangesCompilationFactory, ChangesDeltaFactory, ChangesProcessorFactory, CollectionEntryFactory, CollectionEntryService, CollectionResourceFactory, CollectionResourceService, ColumnCache, ColumnExpansionFactory, ColumnHandler, ColumnInfoFactory, ColumnSetFactory, ColumnSubsetCacheFactory, ColumnUtil, ConversionMapService, CreateRequestFactory, ErrorHandlerInterface, ExceptionHandlerInterface, ItemCacheFactory, ItemCreateService, ItemEntryFactory, ItemEntryService, ItemResourceFactory, KeyService, LinkTreeServiceInterface, LockService, ModuleChangesCompilationFactory, PromiseLibraryInterface, QueryMatcherFactory, QueryParserFactory, QueryService, RequestColumnExpansionFactory, SocketMessageHandler, TemplateCache, TemplateFactory, TransactionCacheFactory } from './internal';
|
|
2
|
+
export declare class RmCore {
|
|
3
|
+
version: string;
|
|
4
|
+
noop: typeof noop;
|
|
5
|
+
apiFormatter: ApiFormatter;
|
|
6
|
+
apiRequestService: ApiRequestService;
|
|
7
|
+
apiResponseProcessorFactory: ApiResponseProcessorFactory;
|
|
8
|
+
changesCompilationFactory: ChangesCompilationFactory;
|
|
9
|
+
changesDeltaFactory: ChangesDeltaFactory;
|
|
10
|
+
changesProcessorFactory: ChangesProcessorFactory;
|
|
11
|
+
collectionEntryFactory: CollectionEntryFactory;
|
|
12
|
+
collectionEntryService: CollectionEntryService;
|
|
13
|
+
collectionMatcherFactory: CacheSyncerFactory;
|
|
14
|
+
collectionResourceFactory: CollectionResourceFactory;
|
|
15
|
+
collectionResourceService: CollectionResourceService;
|
|
16
|
+
columnCache: ColumnCache;
|
|
17
|
+
columnExpansionFactory: ColumnExpansionFactory;
|
|
18
|
+
columnHandler: ColumnHandler;
|
|
19
|
+
columnInfoFactory: ColumnInfoFactory;
|
|
20
|
+
columnSetFactory: ColumnSetFactory;
|
|
21
|
+
columnSubsetCacheFactory: ColumnSubsetCacheFactory;
|
|
22
|
+
columnUtil: ColumnUtil;
|
|
23
|
+
conversionMapService: ConversionMapService;
|
|
24
|
+
createRequestFactory: CreateRequestFactory;
|
|
25
|
+
itemCacheFactory: ItemCacheFactory;
|
|
26
|
+
itemCreateService: ItemCreateService;
|
|
27
|
+
itemEntryFactory: ItemEntryFactory;
|
|
28
|
+
itemEntryService: ItemEntryService;
|
|
29
|
+
itemResourceFactory: ItemResourceFactory;
|
|
30
|
+
keyService: KeyService;
|
|
31
|
+
lockService: LockService;
|
|
32
|
+
moduleChangesCompilationFactory: ModuleChangesCompilationFactory;
|
|
33
|
+
queryMatcherFactory: QueryMatcherFactory;
|
|
34
|
+
queryParserFactory: QueryParserFactory;
|
|
35
|
+
queryService: QueryService;
|
|
36
|
+
requestColumnExpansionFactory: RequestColumnExpansionFactory;
|
|
37
|
+
socketMessageHandler: SocketMessageHandler;
|
|
38
|
+
templateCache: TemplateCache;
|
|
39
|
+
templateFactory: TemplateFactory;
|
|
40
|
+
transactionCacheFactory: TransactionCacheFactory;
|
|
41
|
+
constructor(_apiRequestService: ApiRequestServiceInterface, authInterface: AuthInterface, errorHandler: ErrorHandlerInterface, exceptionHandler: ExceptionHandlerInterface, promiseLibrary: PromiseLibraryInterface, linkTreeService: LinkTreeServiceInterface);
|
|
42
|
+
}
|
|
43
|
+
export declare function noop(): void;
|
|
44
|
+
export declare function identity<T extends any>(value: T): T;
|
|
45
|
+
export declare function nullFunction(): null;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { ApiFormatter, ApiResponse, ApiResponseProcessor } from '../internal';
|
|
2
|
-
export declare class ApiResponseProcessorFactory {
|
|
3
|
-
private apiFormatter;
|
|
4
|
-
constructor(apiFormatter: ApiFormatter);
|
|
5
|
-
construct(response: ApiResponse): ApiResponseProcessor;
|
|
6
|
-
}
|
|
1
|
+
import { ApiFormatter, ApiResponse, ApiResponseProcessor } from '../internal';
|
|
2
|
+
export declare class ApiResponseProcessorFactory {
|
|
3
|
+
private apiFormatter;
|
|
4
|
+
constructor(apiFormatter: ApiFormatter);
|
|
5
|
+
construct(response: ApiResponse): ApiResponseProcessor;
|
|
6
|
+
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { AbstractCache, ApiRequestService, CacheSyncer, CacheSyncerQueryMap, PromiseLibraryInterface, QueryMatcherFactory, QueryService } from '../internal';
|
|
2
|
-
export declare class CacheSyncerFactory {
|
|
3
|
-
private queryMatcherFactory;
|
|
4
|
-
private queryService;
|
|
5
|
-
private apiRequestService;
|
|
6
|
-
private promiseService;
|
|
7
|
-
constructor(queryMatcherFactory: QueryMatcherFactory, queryService: QueryService, apiRequestService: ApiRequestService, promiseService: PromiseLibraryInterface);
|
|
8
|
-
construct(transaction: AbstractCache, queryStringMap?: CacheSyncerQueryMap): CacheSyncer;
|
|
9
|
-
private collectQueries;
|
|
10
|
-
}
|
|
1
|
+
import { AbstractCache, ApiRequestService, CacheSyncer, CacheSyncerQueryMap, PromiseLibraryInterface, QueryMatcherFactory, QueryService } from '../internal';
|
|
2
|
+
export declare class CacheSyncerFactory {
|
|
3
|
+
private queryMatcherFactory;
|
|
4
|
+
private queryService;
|
|
5
|
+
private apiRequestService;
|
|
6
|
+
private promiseService;
|
|
7
|
+
constructor(queryMatcherFactory: QueryMatcherFactory, queryService: QueryService, apiRequestService: ApiRequestService, promiseService: PromiseLibraryInterface);
|
|
8
|
+
construct(transaction: AbstractCache, queryStringMap?: CacheSyncerQueryMap): CacheSyncer;
|
|
9
|
+
private collectQueries;
|
|
10
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ChangesCompilation, TransactionCache } from '../internal';
|
|
2
|
-
export declare class ChangesCompilationFactory {
|
|
3
|
-
constructor();
|
|
4
|
-
construct(transaction: TransactionCache): ChangesCompilation;
|
|
5
|
-
}
|
|
1
|
+
import { ChangesCompilation, TransactionCache } from '../internal';
|
|
2
|
+
export declare class ChangesCompilationFactory {
|
|
3
|
+
constructor();
|
|
4
|
+
construct(transaction: TransactionCache): ChangesCompilation;
|
|
5
|
+
}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { ApiFormatter, ChangesDelta, ConversionMapService, ErrorHandlerInterface, InternalChangesDelta, ItemCreateService, ItemEntryService, ParentChangesDelta } from '../internal';
|
|
2
|
-
export declare class ChangesDeltaFactory {
|
|
3
|
-
private apiFormatter;
|
|
4
|
-
private conversionMapService;
|
|
5
|
-
private errorHandler;
|
|
6
|
-
private itemCreateService;
|
|
7
|
-
private itemEntryService;
|
|
8
|
-
constructor(apiFormatter: ApiFormatter, conversionMapService: ConversionMapService, errorHandler: ErrorHandlerInterface, itemCreateService: ItemCreateService, itemEntryService: ItemEntryService);
|
|
9
|
-
construct(): ChangesDelta;
|
|
10
|
-
cloneCreatedChanges(sourceChangesDelta: ChangesDelta, destinationChangesDelta?: ChangesDelta): ChangesDelta;
|
|
11
|
-
constructInternalDelta(): InternalChangesDelta;
|
|
12
|
-
constructParentDelta(): ParentChangesDelta;
|
|
13
|
-
}
|
|
1
|
+
import { ApiFormatter, ChangesDelta, ConversionMapService, ErrorHandlerInterface, InternalChangesDelta, ItemCreateService, ItemEntryService, ParentChangesDelta } from '../internal';
|
|
2
|
+
export declare class ChangesDeltaFactory {
|
|
3
|
+
private apiFormatter;
|
|
4
|
+
private conversionMapService;
|
|
5
|
+
private errorHandler;
|
|
6
|
+
private itemCreateService;
|
|
7
|
+
private itemEntryService;
|
|
8
|
+
constructor(apiFormatter: ApiFormatter, conversionMapService: ConversionMapService, errorHandler: ErrorHandlerInterface, itemCreateService: ItemCreateService, itemEntryService: ItemEntryService);
|
|
9
|
+
construct(): ChangesDelta;
|
|
10
|
+
cloneCreatedChanges(sourceChangesDelta: ChangesDelta, destinationChangesDelta?: ChangesDelta): ChangesDelta;
|
|
11
|
+
constructInternalDelta(): InternalChangesDelta;
|
|
12
|
+
constructParentDelta(): ParentChangesDelta;
|
|
13
|
+
}
|