@rentman/rm-core 2.0.11 → 2.0.13

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.
Files changed (107) hide show
  1. package/changelog.md +605 -595
  2. package/dist/rm-core.js +9360 -9342
  3. package/dist/rm-core.min.js +1 -1
  4. package/dist/src/classes/ApiFormatter.d.ts +55 -55
  5. package/dist/src/classes/ApiRequestService.d.ts +20 -20
  6. package/dist/src/classes/ApiResponseProcessor.d.ts +30 -29
  7. package/dist/src/classes/ChangesCompilation.d.ts +34 -34
  8. package/dist/src/classes/ChangesDelta.d.ts +42 -42
  9. package/dist/src/classes/ChangesDeltaBase.d.ts +33 -33
  10. package/dist/src/classes/ChangesProcessor.d.ts +47 -47
  11. package/dist/src/classes/CollectionCache.d.ts +37 -37
  12. package/dist/src/classes/CollectionEntryService.d.ts +25 -25
  13. package/dist/src/classes/CollectionMatcher.d.ts +9 -9
  14. package/dist/src/classes/CollectionMatcherBase.d.ts +26 -26
  15. package/dist/src/classes/CollectionResourceService.d.ts +6 -6
  16. package/dist/src/classes/ColumnCache.d.ts +21 -21
  17. package/dist/src/classes/ColumnExpansion.d.ts +22 -22
  18. package/dist/src/classes/ColumnHandler.d.ts +21 -21
  19. package/dist/src/classes/ColumnInfo.d.ts +14 -14
  20. package/dist/src/classes/ColumnSet.d.ts +39 -39
  21. package/dist/src/classes/ColumnSubsetCache.d.ts +8 -8
  22. package/dist/src/classes/ColumnUtil.d.ts +99 -99
  23. package/dist/src/classes/CreateRequest.d.ts +19 -19
  24. package/dist/src/classes/InternalChangesDelta.d.ts +38 -38
  25. package/dist/src/classes/ItemCache.d.ts +29 -29
  26. package/dist/src/classes/ItemEntryService.d.ts +41 -41
  27. package/dist/src/classes/KeyService.d.ts +16 -16
  28. package/dist/src/classes/LockService.d.ts +32 -32
  29. package/dist/src/classes/ModuleChangesCompilation.d.ts +18 -18
  30. package/dist/src/classes/QueryColumnExtractor.d.ts +20 -20
  31. package/dist/src/classes/QueryMatcher.d.ts +14 -14
  32. package/dist/src/classes/QueryParser.d.ts +25 -25
  33. package/dist/src/classes/QueryParserBase.d.ts +29 -29
  34. package/dist/src/classes/QueryService.d.ts +14 -14
  35. package/dist/src/classes/RequestBuffer.d.ts +25 -25
  36. package/dist/src/classes/RequestBufferManager.d.ts +31 -31
  37. package/dist/src/classes/RequestColumnExpansion.d.ts +15 -15
  38. package/dist/src/classes/SocketMessageHandler.d.ts +31 -31
  39. package/dist/src/classes/TemplateCache.d.ts +63 -63
  40. package/dist/src/classes/Util.d.ts +28 -28
  41. package/dist/src/classes/cache/AbstractCache.d.ts +140 -140
  42. package/dist/src/classes/cache/CollectionHandlerBase.d.ts +64 -64
  43. package/dist/src/classes/cache/CollectionMatcherCacheProcessor.d.ts +26 -26
  44. package/dist/src/classes/cache/ItemHandlerBase.d.ts +95 -95
  45. package/dist/src/classes/cache/server/ServerCache.d.ts +98 -98
  46. package/dist/src/classes/cache/server/ServerCollectionHandler.d.ts +43 -43
  47. package/dist/src/classes/cache/server/ServerItemHandler.d.ts +50 -50
  48. package/dist/src/classes/cache/transaction/TransactionCache.d.ts +412 -412
  49. package/dist/src/classes/cache/transaction/TransactionCollectionHandler.d.ts +72 -72
  50. package/dist/src/classes/cache/transaction/TransactionEventHandler.d.ts +19 -19
  51. package/dist/src/classes/cache/transaction/TransactionItemHandler.d.ts +114 -114
  52. package/dist/src/classes/index.d.ts +41 -41
  53. package/dist/src/constants.d.ts +7 -7
  54. package/dist/src/core.d.ts +49 -49
  55. package/dist/src/factories/ApiResponseProcessorFactory.d.ts +6 -6
  56. package/dist/src/factories/ChangesCompilationFactory.d.ts +6 -6
  57. package/dist/src/factories/ChangesDeltaFactory.d.ts +9 -9
  58. package/dist/src/factories/ChangesProcessorFactory.d.ts +22 -22
  59. package/dist/src/factories/CollectionCacheFactory.d.ts +8 -8
  60. package/dist/src/factories/CollectionEntryFactory.d.ts +11 -11
  61. package/dist/src/factories/CollectionMatcherFactory.d.ts +9 -9
  62. package/dist/src/factories/CollectionResourceFactory.d.ts +34 -34
  63. package/dist/src/factories/ColumnExpansionFactory.d.ts +8 -8
  64. package/dist/src/factories/ColumnInfoFactory.d.ts +7 -7
  65. package/dist/src/factories/ColumnSetFactory.d.ts +19 -19
  66. package/dist/src/factories/ColumnSubsetCacheFactory.d.ts +6 -6
  67. package/dist/src/factories/CreateRequestFactory.d.ts +11 -11
  68. package/dist/src/factories/ItemCacheFactory.d.ts +8 -8
  69. package/dist/src/factories/ItemEntryFactory.d.ts +17 -17
  70. package/dist/src/factories/ItemResourceFactory.d.ts +32 -32
  71. package/dist/src/factories/ModuleChangesCompilationFactory.d.ts +5 -5
  72. package/dist/src/factories/QueryMatcherFactory.d.ts +7 -7
  73. package/dist/src/factories/QueryParserFactory.d.ts +6 -6
  74. package/dist/src/factories/RequestColumnExpansionFactory.d.ts +6 -6
  75. package/dist/src/factories/TemplateFactory.d.ts +10 -10
  76. package/dist/src/factories/TransactionCacheFactory.d.ts +55 -55
  77. package/dist/src/factories/index.d.ts +22 -22
  78. package/dist/src/index.d.ts +7 -7
  79. package/dist/src/interfaces/ApiRequestServiceInterface.d.ts +11 -11
  80. package/dist/src/interfaces/AuthInterface.d.ts +9 -9
  81. package/dist/src/interfaces/ErrorHandlerInterface.d.ts +5 -5
  82. package/dist/src/interfaces/ExceptionHandlerInterface.d.ts +3 -3
  83. package/dist/src/interfaces/LinkTreeServiceInterface.d.ts +4 -4
  84. package/dist/src/interfaces/PromiseLibraryInterface.d.ts +25 -25
  85. package/dist/src/interfaces/SocketMessageInterface.d.ts +3 -3
  86. package/dist/src/interfaces/index.d.ts +7 -7
  87. package/dist/src/models/CollectionEditResource.d.ts +17 -17
  88. package/dist/src/models/CollectionEntry.d.ts +27 -27
  89. package/dist/src/models/CollectionEntryOptions.d.ts +13 -13
  90. package/dist/src/models/CollectionResource.d.ts +52 -52
  91. package/dist/src/models/CollectionResourceOptions.d.ts +27 -27
  92. package/dist/src/models/CollectionViewResource.d.ts +7 -7
  93. package/dist/src/models/EditResource.d.ts +16 -16
  94. package/dist/src/models/ItemEntry.d.ts +19 -19
  95. package/dist/src/models/ItemEntryOptions.d.ts +9 -9
  96. package/dist/src/models/ItemResource.d.ts +87 -87
  97. package/dist/src/models/ItemResourceOptions.d.ts +9 -9
  98. package/dist/src/models/LocalViewResource.d.ts +7 -7
  99. package/dist/src/models/RemoteViewResource.d.ts +7 -7
  100. package/dist/src/models/Template.d.ts +11 -11
  101. package/dist/src/models/ViewResource.d.ts +8 -8
  102. package/dist/src/models/index.d.ts +15 -15
  103. package/dist/src/types/ItemTypesCollection.d.ts +262 -262
  104. package/dist/src/types/PromiseInterface.d.ts +2 -2
  105. package/dist/src/types/index.d.ts +2 -2
  106. package/package.json +36 -36
  107. package/readme.md +15 -15
@@ -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,38 +1,38 @@
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
- }
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
+ }
@@ -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): ItemEntry<ItemTypeType>[];
17
- getLocalByQuery<ItemTypeType extends ItemType>(itemType: ItemTypeType, query: CollectionQuery): 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: any): ItemEntryParentIdMap<ItemTypeType>;
20
- forEach(callback: (itemEntry: ItemEntry<ItemType>) => 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): 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): ItemEntry<ItemTypeType>[];
17
+ getLocalByQuery<ItemTypeType extends ItemType>(itemType: ItemTypeType, query: CollectionQuery): 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: any): ItemEntryParentIdMap<ItemTypeType>;
20
+ forEach(callback: (itemEntry: ItemEntry<ItemType>) => 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): boolean;
29
+ }
@@ -1,41 +1,41 @@
1
- import { KeyService } from '../classes';
2
- import { AuthInterface } from '../interfaces';
3
- import { LinkTreeServiceInterface } from '../interfaces/LinkTreeServiceInterface';
4
- import { ItemEntry, ItemEntryOptions } from '../models';
5
- import { ApiResponse, EntryParent, EntryParentNull, FieldMap, ItemError, ItemId, ItemIdConversionMap, ItemOptionsInterface, ItemType } from '../types';
6
- export declare class ItemEntryService {
7
- private authInterface;
8
- private keyService;
9
- private linkTreeService;
10
- constructor(authInterface: AuthInterface, keyService: KeyService, linkTreeService: LinkTreeServiceInterface);
11
- matchParent(oldParent: EntryParentNull, newParent: EntryParentNull): boolean;
12
- /**
13
- * @description
14
- * Gets the fields required to set the parent
15
- *
16
- * @remark
17
- * Opposite of {@link ItemEntryService.getParentByFields ItemEntryService.getParentByFields}
18
- */
19
- getLinkFieldsByParent<ItemTypeType extends ItemType>(parent: EntryParent, itemType: ItemTypeType): Partial<FieldMap<ItemTypeType>>;
20
- /**
21
- * @description
22
- * Gets an {@link EntryParent EntryParent} object from the fields
23
- *
24
- * @remark
25
- * Opposite of {@link ItemEntryService.getLinkFieldsByParent ItemEntryService.getLinkFieldsByParent}
26
- */
27
- getParentByFields<ItemTypeType extends ItemType>(parentType: ItemType, itemEntry: ItemEntry<ItemTypeType>, fields: FieldMap<ItemTypeType>): Partial<FieldMap<ItemTypeType>>;
28
- getDisplayName<ItemEntryType extends ItemEntry>(itemEntry: ItemEntryType, fields: FieldMap<ItemEntryType['itemType']>): string;
29
- processOptions(options: ItemOptionsInterface): ItemEntryOptions;
30
- createUnfoundRemoteItemError(): ItemError;
31
- createUnfoundLocalItemError(itemType: ItemType): ItemError;
32
- createExistingLocalItemError(itemType: ItemType): ItemError;
33
- createLocalConversionMap(itemType: ItemType, itemId: ItemId, doExtend: boolean | undefined, apiResponse: ApiResponse): ItemIdConversionMap;
34
- expandLocalConversionMap(parentType: ItemType, parentId: ItemId, apiResponse: ApiResponse, conversionMap: ItemIdConversionMap): void;
35
- expandConversionMap(itemEntry: ItemEntry<any>, conversionMap: ItemIdConversionMap, newItemId?: ItemId): ItemId;
36
- batchExpandConversionMap(itemEntries: Array<ItemEntry<any>>, conversionMap: ItemIdConversionMap): ItemIdConversionMap;
37
- getConversionValue(itemType: ItemType, itemId: ItemId, map: ItemIdConversionMap): ItemId | undefined;
38
- getFullName(firstName?: string, infix?: string, lastName?: string): string;
39
- getTitleField(itemType: ItemType): string;
40
- getLocalDefaultValues(): FieldMap;
41
- }
1
+ import { KeyService } from '../classes';
2
+ import { AuthInterface } from '../interfaces';
3
+ import { LinkTreeServiceInterface } from '../interfaces/LinkTreeServiceInterface';
4
+ import { ItemEntry, ItemEntryOptions } from '../models';
5
+ import { ApiResponse, EntryParent, EntryParentNull, FieldMap, ItemError, ItemId, ItemIdConversionMap, ItemOptionsInterface, ItemType } from '../types';
6
+ export declare class ItemEntryService {
7
+ private authInterface;
8
+ private keyService;
9
+ private linkTreeService;
10
+ constructor(authInterface: AuthInterface, keyService: KeyService, linkTreeService: LinkTreeServiceInterface);
11
+ matchParent(oldParent: EntryParentNull, newParent: EntryParentNull): boolean;
12
+ /**
13
+ * @description
14
+ * Gets the fields required to set the parent
15
+ *
16
+ * @remark
17
+ * Opposite of {@link ItemEntryService.getParentByFields ItemEntryService.getParentByFields}
18
+ */
19
+ getLinkFieldsByParent<ItemTypeType extends ItemType>(parent: EntryParent, itemType: ItemTypeType): Partial<FieldMap<ItemTypeType>>;
20
+ /**
21
+ * @description
22
+ * Gets an {@link EntryParent EntryParent} object from the fields
23
+ *
24
+ * @remark
25
+ * Opposite of {@link ItemEntryService.getLinkFieldsByParent ItemEntryService.getLinkFieldsByParent}
26
+ */
27
+ getParentByFields<ItemTypeType extends ItemType>(parentType: ItemType, itemEntry: ItemEntry<ItemTypeType>, fields: FieldMap<ItemTypeType>): Partial<FieldMap<ItemTypeType>>;
28
+ getDisplayName<ItemEntryType extends ItemEntry>(itemEntry: ItemEntryType, fields: FieldMap<ItemEntryType['itemType']>): string;
29
+ processOptions(options: ItemOptionsInterface): ItemEntryOptions;
30
+ createUnfoundRemoteItemError(): ItemError;
31
+ createUnfoundLocalItemError(itemType: ItemType): ItemError;
32
+ createExistingLocalItemError(itemType: ItemType): ItemError;
33
+ createLocalConversionMap(itemType: ItemType, itemId: ItemId, doExtend: boolean | undefined, apiResponse: ApiResponse): ItemIdConversionMap;
34
+ expandLocalConversionMap(parentType: ItemType, parentId: ItemId, apiResponse: ApiResponse, conversionMap: ItemIdConversionMap): void;
35
+ expandConversionMap(itemEntry: ItemEntry<any>, conversionMap: ItemIdConversionMap, newItemId?: ItemId): ItemId;
36
+ batchExpandConversionMap(itemEntries: Array<ItemEntry<any>>, conversionMap: ItemIdConversionMap): ItemIdConversionMap;
37
+ getConversionValue(itemType: ItemType, itemId: ItemId, map: ItemIdConversionMap): ItemId | undefined;
38
+ getFullName(firstName?: string, infix?: string, lastName?: string): string;
39
+ getTitleField(itemType: ItemType): string;
40
+ getLocalDefaultValues(): FieldMap;
41
+ }
@@ -1,16 +1,16 @@
1
- import { ItemId, StateKey } from '../types';
2
- export declare class KeyService {
3
- separator: string;
4
- constructor();
5
- getSingleKey(itemType: string, itemId: number | string): string;
6
- getCssKey(...args: any[]): string;
7
- parseStateKey(stateKey: string): StateKey | null;
8
- getDuplicateStateKey(itemId: string | number): string;
9
- getNewStateKey(templateType: string): string;
10
- getLocalId(): ItemId;
11
- getLocalDuplicateId(): ItemId;
12
- getRandomString(): string;
13
- isLocalId(itemId: ItemId | string): boolean;
14
- isNewId(itemId: ItemId | string): boolean;
15
- isDuplicateId(itemId: ItemId | string): boolean;
16
- }
1
+ import { ItemId, StateKey } from '../types';
2
+ export declare class KeyService {
3
+ separator: string;
4
+ constructor();
5
+ getSingleKey(itemType: string, itemId: number | string): string;
6
+ getCssKey(...args: any[]): string;
7
+ parseStateKey(stateKey: string): StateKey | null;
8
+ getDuplicateStateKey(itemId: string | number): string;
9
+ getNewStateKey(templateType: string): string;
10
+ getLocalId(): ItemId;
11
+ getLocalDuplicateId(): ItemId;
12
+ getRandomString(): string;
13
+ isLocalId(itemId: ItemId | string): boolean;
14
+ isNewId(itemId: ItemId | string): boolean;
15
+ isDuplicateId(itemId: ItemId | string): boolean;
16
+ }
@@ -1,32 +1,32 @@
1
- import { ApiRequestService, KeyService } from '../classes';
2
- import { ErrorHandlerInterface, PromiseLibraryInterface } from '../interfaces';
3
- import { ItemEntry } from '../models';
4
- import { ItemId, PromiseInterface } from '../types';
5
- export declare type LockToken = {
6
- isForeign: false;
7
- id: number;
8
- token: string;
9
- } | {
10
- isForeign: true;
11
- message: string;
12
- };
13
- export declare class LockService {
14
- private apiRequestService;
15
- private errorHandler;
16
- private keyService;
17
- private promiseService;
18
- private lockItems;
19
- private promises;
20
- constructor(apiRequestService: ApiRequestService, errorHandler: ErrorHandlerInterface, keyService: KeyService, promiseService: PromiseLibraryInterface);
21
- getLocks(): LockService['lockItems'];
22
- hasLock(lockTokenId: ItemId): boolean;
23
- isLocked(itemEntry: ItemEntry<any>): boolean;
24
- getMessage(itemEntry: ItemEntry<any>): undefined | string;
25
- fetchCachedLock(itemEntry: ItemEntry<any>): PromiseInterface<undefined | LockToken>;
26
- fetchLock(itemEntry: ItemEntry<any>): PromiseInterface<string>;
27
- requestLock(itemEntry: ItemEntry<any>): PromiseInterface<LockToken>;
28
- deleteLock(itemEntry: ItemEntry<any>): PromiseInterface<void>;
29
- clearLock(itemEntry: ItemEntry<any>): boolean;
30
- private getValue;
31
- private setValue;
32
- }
1
+ import { ApiRequestService, KeyService } from '../classes';
2
+ import { ErrorHandlerInterface, PromiseLibraryInterface } from '../interfaces';
3
+ import { ItemEntry } from '../models';
4
+ import { ItemId, PromiseInterface } from '../types';
5
+ export declare type LockToken = {
6
+ isForeign: false;
7
+ id: number;
8
+ token: string;
9
+ } | {
10
+ isForeign: true;
11
+ message: string;
12
+ };
13
+ export declare class LockService {
14
+ private apiRequestService;
15
+ private errorHandler;
16
+ private keyService;
17
+ private promiseService;
18
+ private lockItems;
19
+ private promises;
20
+ constructor(apiRequestService: ApiRequestService, errorHandler: ErrorHandlerInterface, keyService: KeyService, promiseService: PromiseLibraryInterface);
21
+ getLocks(): LockService['lockItems'];
22
+ hasLock(lockTokenId: ItemId): boolean;
23
+ isLocked(itemEntry: ItemEntry<any>): boolean;
24
+ getMessage(itemEntry: ItemEntry<any>): undefined | string;
25
+ fetchCachedLock(itemEntry: ItemEntry<any>): PromiseInterface<undefined | LockToken>;
26
+ fetchLock(itemEntry: ItemEntry<any>): PromiseInterface<string>;
27
+ requestLock(itemEntry: ItemEntry<any>): PromiseInterface<LockToken>;
28
+ deleteLock(itemEntry: ItemEntry<any>): PromiseInterface<void>;
29
+ clearLock(itemEntry: ItemEntry<any>): boolean;
30
+ private getValue;
31
+ private setValue;
32
+ }
@@ -1,18 +1,18 @@
1
- import { ApiRequestItemMap, ItemId, ItemType } from '../types';
2
- import { TransactionCache } from './cache/transaction/TransactionCache';
3
- export declare type ModuleChangesCompilationResult = {
4
- itemType: ItemType;
5
- itemId: ItemId;
6
- items: ApiRequestItemMap;
7
- };
8
- export declare class ModuleChangesCompilation {
9
- private transaction;
10
- parentMap: any;
11
- destination: ApiRequestItemMap;
12
- constructor(transaction: TransactionCache);
13
- process(): ModuleChangesCompilationResult;
14
- private createParentMap;
15
- private processItems;
16
- private processItem;
17
- private getItemsByParent;
18
- }
1
+ import { ApiRequestItemMap, ItemId, ItemType } from '../types';
2
+ import { TransactionCache } from './cache/transaction/TransactionCache';
3
+ export declare type ModuleChangesCompilationResult = {
4
+ itemType: ItemType;
5
+ itemId: ItemId;
6
+ items: ApiRequestItemMap;
7
+ };
8
+ export declare class ModuleChangesCompilation {
9
+ private transaction;
10
+ parentMap: any;
11
+ destination: ApiRequestItemMap;
12
+ constructor(transaction: TransactionCache);
13
+ process(): ModuleChangesCompilationResult;
14
+ private createParentMap;
15
+ private processItems;
16
+ private processItem;
17
+ private getItemsByParent;
18
+ }
@@ -1,20 +1,20 @@
1
- import { ApiQuery, ApiRequestColumn, ItemType } from '../types';
2
- import { ColumnUtil } from './ColumnUtil';
3
- import { COMPARATORS_TYPE } from './QueryParser';
4
- import { OPERATORS_TYPE, QueryParserBase } from './QueryParserBase';
5
- export declare class QueryColumnExtractor extends QueryParserBase<ApiRequestColumn[]> {
6
- private columnUtil;
7
- private itemType;
8
- constructor(columnUtil: ColumnUtil, itemType: ItemType, query: ApiQuery);
9
- protected parseEmptyQuery(): never[];
10
- protected parseSubQuery(key: string, subQuery: object, _not?: boolean): {
11
- [x: string]: ApiRequestColumn[];
12
- }[];
13
- protected parseSubFieldQuery(_key: string, _itemType: ItemType, _field: string, _query: ApiQuery, _not: boolean): never[];
14
- protected parseSearchQuery(_value: any, _not: boolean): never[];
15
- protected parseCustomQuery(_custom: string, _parameters: any, _not?: boolean): never[];
16
- protected parseSimpleQuery(key: string, _value: any, _comparator?: COMPARATORS_TYPE, _not?: boolean): string[];
17
- protected parseLinkedToQuery(linkedTo: any, _query?: ApiQuery, _reverse?: boolean, _not?: boolean): ApiRequestColumn[];
18
- protected parseComplexQuery(conditions: any[], _operator?: OPERATORS_TYPE, _not?: boolean): any;
19
- private parseConditions;
20
- }
1
+ import { ApiQuery, ApiRequestColumn, ItemType } from '../types';
2
+ import { ColumnUtil } from './ColumnUtil';
3
+ import { COMPARATORS_TYPE } from './QueryParser';
4
+ import { OPERATORS_TYPE, QueryParserBase } from './QueryParserBase';
5
+ export declare class QueryColumnExtractor extends QueryParserBase<ApiRequestColumn[]> {
6
+ private columnUtil;
7
+ private itemType;
8
+ constructor(columnUtil: ColumnUtil, itemType: ItemType, query: ApiQuery);
9
+ protected parseEmptyQuery(): never[];
10
+ protected parseSubQuery(key: string, subQuery: object, _not?: boolean): {
11
+ [x: string]: ApiRequestColumn[];
12
+ }[];
13
+ protected parseSubFieldQuery(_key: string, _itemType: ItemType, _field: string, _query: ApiQuery, _not: boolean): never[];
14
+ protected parseSearchQuery(_value: any, _not: boolean): never[];
15
+ protected parseCustomQuery(_custom: string, _parameters: any, _not?: boolean): never[];
16
+ protected parseSimpleQuery(key: string, _value: any, _comparator?: COMPARATORS_TYPE, _not?: boolean): string[];
17
+ protected parseLinkedToQuery(linkedTo: any, _query?: ApiQuery, _reverse?: boolean, _not?: boolean): ApiRequestColumn[];
18
+ protected parseComplexQuery(conditions: any[], _operator?: OPERATORS_TYPE, _not?: boolean): any;
19
+ private parseConditions;
20
+ }
@@ -1,14 +1,14 @@
1
- import { ApiFormatter } from '../classes';
2
- import { ApiQuery, EntryParentNull, FieldMap, ItemType } from '../types';
3
- export declare class QueryMatcher {
4
- private apiFormatter;
5
- itemType: ItemType;
6
- fields: FieldMap;
7
- parent: EntryParentNull;
8
- constructor(apiFormatter: ApiFormatter, itemType: ItemType, fields: FieldMap, parent?: EntryParentNull);
9
- private compareValues;
10
- matchQuery(query: ApiQuery): boolean | 'maybe';
11
- private matchLinkedToQuery;
12
- private matchComplexQuery;
13
- private matchSimpleQuery;
14
- }
1
+ import { ApiFormatter } from '../classes';
2
+ import { ApiQuery, EntryParentNull, FieldMap, ItemType } from '../types';
3
+ export declare class QueryMatcher {
4
+ private apiFormatter;
5
+ itemType: ItemType;
6
+ fields: FieldMap;
7
+ parent: EntryParentNull;
8
+ constructor(apiFormatter: ApiFormatter, itemType: ItemType, fields: FieldMap, parent?: EntryParentNull);
9
+ private compareValues;
10
+ matchQuery(query: ApiQuery): boolean | 'maybe';
11
+ private matchLinkedToQuery;
12
+ private matchComplexQuery;
13
+ private matchSimpleQuery;
14
+ }
@@ -1,25 +1,25 @@
1
- import { ApiQuery } from '../types';
2
- import { COMPARATORS, OPERATORS_TYPE, QueryParserBase } from './QueryParserBase';
3
- export declare enum CONSTANTS {
4
- OBJ = 0,
5
- STR = 1,
6
- SEP = ":"
7
- }
8
- export declare type COMPARATORS_TYPE = '=' | '!=' | '<' | '>' | '<=' | '>=' | 'IN' | COMPARATORS;
9
- export declare class QueryParser extends QueryParserBase<[object, string]> {
10
- private parameters;
11
- constructor(query: ApiQuery, parameters: object);
12
- protected parseEmptyQuery(): [object, string];
13
- protected parseSubQuery(key: string, subQuery: object, not?: boolean): [object, string];
14
- protected parseSubFieldQuery(key: string | undefined, itemType: string | undefined, field: string | undefined, query: ApiQuery, not?: boolean): [object, string];
15
- protected parseSearchQuery(value: any, not?: boolean): [object, string];
16
- protected parseCustomQuery(custom: string, parameters: any, not?: boolean): [object, string];
17
- protected parseCustomParameters(parameters: any): [object, string];
18
- protected parseSimpleQuery(key: string, value: any, comparator?: COMPARATORS_TYPE, not?: boolean): [object, string];
19
- protected parseLinkedToQuery(linkedTo: any, query?: ApiQuery, reverse?: boolean, not?: boolean): [object, string];
20
- protected parseComplexQuery(conditions: any[], operator?: OPERATORS_TYPE, not?: boolean): [object, string];
21
- private parseConditions;
22
- private formatValue;
23
- private processValue;
24
- private compareParsedQueries;
25
- }
1
+ import { ApiQuery } from '../types';
2
+ import { COMPARATORS, OPERATORS_TYPE, QueryParserBase } from './QueryParserBase';
3
+ export declare enum CONSTANTS {
4
+ OBJ = 0,
5
+ STR = 1,
6
+ SEP = ":"
7
+ }
8
+ export declare type COMPARATORS_TYPE = '=' | '!=' | '<' | '>' | '<=' | '>=' | 'IN' | COMPARATORS;
9
+ export declare class QueryParser extends QueryParserBase<[object, string]> {
10
+ private parameters;
11
+ constructor(query: ApiQuery, parameters: object);
12
+ protected parseEmptyQuery(): [object, string];
13
+ protected parseSubQuery(key: string, subQuery: object, not?: boolean): [object, string];
14
+ protected parseSubFieldQuery(key: string | undefined, itemType: string | undefined, field: string | undefined, query: ApiQuery, not?: boolean): [object, string];
15
+ protected parseSearchQuery(value: any, not?: boolean): [object, string];
16
+ protected parseCustomQuery(custom: string, parameters: any, not?: boolean): [object, string];
17
+ protected parseCustomParameters(parameters: any): [object, string];
18
+ protected parseSimpleQuery(key: string, value: any, comparator?: COMPARATORS_TYPE, not?: boolean): [object, string];
19
+ protected parseLinkedToQuery(linkedTo: any, query?: ApiQuery, reverse?: boolean, not?: boolean): [object, string];
20
+ protected parseComplexQuery(conditions: any[], operator?: OPERATORS_TYPE, not?: boolean): [object, string];
21
+ private parseConditions;
22
+ private formatValue;
23
+ private processValue;
24
+ private compareParsedQueries;
25
+ }
@@ -1,29 +1,29 @@
1
- import { ApiQuery, ItemType } from '../types';
2
- export declare enum OPERATORS {
3
- OR = "OR",
4
- AND = "AND"
5
- }
6
- export declare type OPERATORS_TYPE = 'OR' | 'AND' | 'or' | 'and' | OPERATORS;
7
- export declare enum COMPARATORS {
8
- EQUALS = "=",
9
- NOT_EQUALS = "!=",
10
- LESS_THAN = "<",
11
- MORE_THAN = ">",
12
- LESS_OR_EQUAL_THAN = "<=",
13
- EQUAL_OR_MORE_THAN = ">=",
14
- IN = "IN"
15
- }
16
- export declare type COMPARATORS_TYPE = '=' | '!=' | '<' | '>' | '<=' | '>=' | 'IN' | COMPARATORS;
17
- export declare abstract class QueryParserBase<ReturnType extends any> {
18
- protected query: ApiQuery;
19
- protected constructor(query: ApiQuery);
20
- parse(query?: ApiQuery): ReturnType;
21
- protected abstract parseEmptyQuery(): ReturnType;
22
- protected abstract parseSubQuery(key: string, subQuery: object, not: boolean): ReturnType;
23
- protected abstract parseSubFieldQuery(key: string, itemType: ItemType, field: string, query: ApiQuery, not: boolean): ReturnType;
24
- protected abstract parseSearchQuery(value: any, not: boolean): ReturnType;
25
- protected abstract parseCustomQuery(custom: string, parameters: any, not: boolean): ReturnType;
26
- protected abstract parseSimpleQuery(key: string, value: any, comparator: COMPARATORS_TYPE, not?: boolean): ReturnType;
27
- protected abstract parseLinkedToQuery(linkedTo: any, query: ApiQuery, reverse: boolean, not: boolean): ReturnType;
28
- protected abstract parseComplexQuery(conditions: any[], operator: OPERATORS_TYPE, not: boolean): ReturnType;
29
- }
1
+ import { ApiQuery, ItemType } from '../types';
2
+ export declare enum OPERATORS {
3
+ OR = "OR",
4
+ AND = "AND"
5
+ }
6
+ export declare type OPERATORS_TYPE = 'OR' | 'AND' | 'or' | 'and' | OPERATORS;
7
+ export declare enum COMPARATORS {
8
+ EQUALS = "=",
9
+ NOT_EQUALS = "!=",
10
+ LESS_THAN = "<",
11
+ MORE_THAN = ">",
12
+ LESS_OR_EQUAL_THAN = "<=",
13
+ EQUAL_OR_MORE_THAN = ">=",
14
+ IN = "IN"
15
+ }
16
+ export declare type COMPARATORS_TYPE = '=' | '!=' | '<' | '>' | '<=' | '>=' | 'IN' | COMPARATORS;
17
+ export declare abstract class QueryParserBase<ReturnType extends any> {
18
+ protected query: ApiQuery;
19
+ protected constructor(query: ApiQuery);
20
+ parse(query?: ApiQuery): ReturnType;
21
+ protected abstract parseEmptyQuery(): ReturnType;
22
+ protected abstract parseSubQuery(key: string, subQuery: object, not: boolean): ReturnType;
23
+ protected abstract parseSubFieldQuery(key: string, itemType: ItemType, field: string, query: ApiQuery, not: boolean): ReturnType;
24
+ protected abstract parseSearchQuery(value: any, not: boolean): ReturnType;
25
+ protected abstract parseCustomQuery(custom: string, parameters: any, not: boolean): ReturnType;
26
+ protected abstract parseSimpleQuery(key: string, value: any, comparator: COMPARATORS_TYPE, not?: boolean): ReturnType;
27
+ protected abstract parseLinkedToQuery(linkedTo: any, query: ApiQuery, reverse: boolean, not: boolean): ReturnType;
28
+ protected abstract parseComplexQuery(conditions: any[], operator: OPERATORS_TYPE, not: boolean): ReturnType;
29
+ }
@@ -1,14 +1,14 @@
1
- import { ApiQuery, EntryParentNull, ItemId } from '../types';
2
- import { COMPARATORS } from './QueryParserBase';
3
- export declare class QueryService {
4
- constructor();
5
- addAndCondition(query: ApiQuery, condition: ApiQuery): ApiQuery;
6
- addOrCondition(query: ApiQuery, condition: ApiQuery): ApiQuery;
7
- addParentCondition(query: ApiQuery, parent: EntryParentNull): ApiQuery;
8
- createNotIn(idArray: ItemId[]): {
9
- comparator: COMPARATORS;
10
- key: string;
11
- value: number[];
12
- not: boolean;
13
- };
14
- }
1
+ import { ApiQuery, EntryParentNull, ItemId } from '../types';
2
+ import { COMPARATORS } from './QueryParserBase';
3
+ export declare class QueryService {
4
+ constructor();
5
+ addAndCondition(query: ApiQuery, condition: ApiQuery): ApiQuery;
6
+ addOrCondition(query: ApiQuery, condition: ApiQuery): ApiQuery;
7
+ addParentCondition(query: ApiQuery, parent: EntryParentNull): ApiQuery;
8
+ createNotIn(idArray: ItemId[]): {
9
+ comparator: COMPARATORS;
10
+ key: string;
11
+ value: number[];
12
+ not: boolean;
13
+ };
14
+ }