@rentman/rm-core 7.0.5 → 7.0.6

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 (110) hide show
  1. package/changelog.md +820 -817
  2. package/dist/rm-core.js +9804 -9800
  3. package/dist/rm-core.min.js +1 -1
  4. package/dist/types/classes/ApiFormatter.d.ts +65 -65
  5. package/dist/types/classes/ApiRequestService.d.ts +20 -20
  6. package/dist/types/classes/ApiResponseProcessor.d.ts +31 -31
  7. package/dist/types/classes/ChangesCompilation.d.ts +34 -34
  8. package/dist/types/classes/ChangesDelta.d.ts +61 -61
  9. package/dist/types/classes/ChangesDeltaBase.d.ts +51 -51
  10. package/dist/types/classes/ChangesProcessor.d.ts +47 -47
  11. package/dist/types/classes/CollectionEntryService.d.ts +26 -26
  12. package/dist/types/classes/CollectionMatcherBase.d.ts +21 -21
  13. package/dist/types/classes/CollectionMatcherCachedCollectionProcessor.d.ts +31 -31
  14. package/dist/types/classes/CollectionResourceService.d.ts +7 -7
  15. package/dist/types/classes/ColumnCache.d.ts +21 -21
  16. package/dist/types/classes/ColumnExpansion.d.ts +22 -22
  17. package/dist/types/classes/ColumnHandler.d.ts +21 -21
  18. package/dist/types/classes/ColumnInfo.d.ts +14 -14
  19. package/dist/types/classes/ColumnSet.d.ts +38 -38
  20. package/dist/types/classes/ColumnSubsetCache.d.ts +10 -10
  21. package/dist/types/classes/ColumnUtil.d.ts +99 -99
  22. package/dist/types/classes/ConversionMapService.d.ts +27 -27
  23. package/dist/types/classes/CreateRequest.d.ts +19 -19
  24. package/dist/types/classes/CreatedChangesDelta.d.ts +16 -16
  25. package/dist/types/classes/InternalChangesDelta.d.ts +39 -39
  26. package/dist/types/classes/ItemCache.d.ts +29 -29
  27. package/dist/types/classes/ItemCreateService.d.ts +24 -24
  28. package/dist/types/classes/ItemEntryService.d.ts +34 -34
  29. package/dist/types/classes/KeyService.d.ts +17 -17
  30. package/dist/types/classes/LockService.d.ts +32 -32
  31. package/dist/types/classes/ModuleChangesCompilation.d.ts +18 -18
  32. package/dist/types/classes/QueryColumnExtractor.d.ts +20 -20
  33. package/dist/types/classes/QueryContainsLocalIdParser.d.ts +17 -17
  34. package/dist/types/classes/QueryLinkedToParser.d.ts +16 -16
  35. package/dist/types/classes/QueryLocallyMatchableParser.d.ts +19 -19
  36. package/dist/types/classes/QueryMatcher.d.ts +18 -18
  37. package/dist/types/classes/QueryParser.d.ts +24 -24
  38. package/dist/types/classes/QueryParserBase.d.ts +29 -29
  39. package/dist/types/classes/QueryParserIdUpdater.d.ts +16 -16
  40. package/dist/types/classes/QueryService.d.ts +18 -18
  41. package/dist/types/classes/RequestBuffer.d.ts +28 -28
  42. package/dist/types/classes/RequestBufferManager.d.ts +25 -25
  43. package/dist/types/classes/RequestColumnExpansion.d.ts +15 -15
  44. package/dist/types/classes/SocketMessageHandler.d.ts +39 -39
  45. package/dist/types/classes/TemplateCache.d.ts +66 -66
  46. package/dist/types/classes/Util.d.ts +31 -31
  47. package/dist/types/classes/cache/AbstractCache.d.ts +103 -103
  48. package/dist/types/classes/cache/CachedQueryHandlerBase.d.ts +74 -74
  49. package/dist/types/classes/cache/CollectionMatcherCachedQueryProcessor.d.ts +35 -35
  50. package/dist/types/classes/cache/ItemHandlerBase.d.ts +105 -105
  51. package/dist/types/classes/cache/server/ServerCache.d.ts +82 -82
  52. package/dist/types/classes/cache/server/ServerCachedQueryHandler.d.ts +34 -34
  53. package/dist/types/classes/cache/server/ServerItemHandler.d.ts +52 -52
  54. package/dist/types/classes/cache/transaction/TransactionCache.d.ts +324 -324
  55. package/dist/types/classes/cache/transaction/TransactionCachedQueryHandler.d.ts +23 -23
  56. package/dist/types/classes/cache/transaction/TransactionCollectionHandler.d.ts +28 -28
  57. package/dist/types/classes/cache/transaction/TransactionEventHandler.d.ts +24 -24
  58. package/dist/types/classes/cache/transaction/TransactionItemHandler.d.ts +90 -90
  59. package/dist/types/classes/cache/transaction/TransactionValidator.d.ts +34 -34
  60. package/dist/types/classes/index.d.ts +46 -46
  61. package/dist/types/constants.d.ts +7 -7
  62. package/dist/types/core.d.ts +51 -51
  63. package/dist/types/factories/ApiResponseProcessorFactory.d.ts +6 -6
  64. package/dist/types/factories/ChangesCompilationFactory.d.ts +6 -6
  65. package/dist/types/factories/ChangesDeltaFactory.d.ts +13 -13
  66. package/dist/types/factories/ChangesProcessorFactory.d.ts +22 -22
  67. package/dist/types/factories/CollectionEntryFactory.d.ts +14 -14
  68. package/dist/types/factories/CollectionMatcherFactory.d.ts +19 -19
  69. package/dist/types/factories/CollectionResourceFactory.d.ts +22 -22
  70. package/dist/types/factories/ColumnExpansionFactory.d.ts +8 -8
  71. package/dist/types/factories/ColumnInfoFactory.d.ts +7 -7
  72. package/dist/types/factories/ColumnSetFactory.d.ts +19 -19
  73. package/dist/types/factories/ColumnSubsetCacheFactory.d.ts +7 -7
  74. package/dist/types/factories/CreateRequestFactory.d.ts +11 -11
  75. package/dist/types/factories/ItemCacheFactory.d.ts +8 -8
  76. package/dist/types/factories/ItemEntryFactory.d.ts +15 -15
  77. package/dist/types/factories/ItemResourceFactory.d.ts +14 -14
  78. package/dist/types/factories/ModuleChangesCompilationFactory.d.ts +5 -5
  79. package/dist/types/factories/QueryMatcherFactory.d.ts +7 -7
  80. package/dist/types/factories/QueryParserFactory.d.ts +6 -6
  81. package/dist/types/factories/RequestColumnExpansionFactory.d.ts +6 -6
  82. package/dist/types/factories/TemplateFactory.d.ts +10 -10
  83. package/dist/types/factories/TransactionCacheFactory.d.ts +15 -15
  84. package/dist/types/factories/index.d.ts +21 -21
  85. package/dist/types/index.d.ts +7 -7
  86. package/dist/types/interfaces/AbstractCacheDependencyInterface.d.ts +43 -43
  87. package/dist/types/interfaces/ApiRequestServiceInterface.d.ts +11 -11
  88. package/dist/types/interfaces/AuthInterface.d.ts +9 -9
  89. package/dist/types/interfaces/ErrorHandlerInterface.d.ts +5 -5
  90. package/dist/types/interfaces/ExceptionHandlerInterface.d.ts +3 -3
  91. package/dist/types/interfaces/LinkTreeServiceInterface.d.ts +4 -4
  92. package/dist/types/interfaces/PromiseLibraryInterface.d.ts +25 -25
  93. package/dist/types/interfaces/ServerCacheDependencyInterface.d.ts +7 -7
  94. package/dist/types/interfaces/SocketMessageInterface.d.ts +3 -3
  95. package/dist/types/interfaces/TransactionCollectionHandlerDependencyInterface.d.ts +20 -20
  96. package/dist/types/interfaces/TransactionItemHandlerDependencyInterface.d.ts +26 -27
  97. package/dist/types/interfaces/index.d.ts +11 -11
  98. package/dist/types/models/CollectionEntry.d.ts +23 -23
  99. package/dist/types/models/CollectionOptions.d.ts +18 -18
  100. package/dist/types/models/CollectionResource.d.ts +72 -72
  101. package/dist/types/models/ItemEntry.d.ts +19 -19
  102. package/dist/types/models/ItemEntryOptions.d.ts +8 -8
  103. package/dist/types/models/ItemResource.d.ts +84 -84
  104. package/dist/types/models/Template.d.ts +11 -11
  105. package/dist/types/models/index.d.ts +7 -7
  106. package/dist/types/types/ItemTypesCollection.d.ts +262 -262
  107. package/dist/types/types/PromiseInterface.d.ts +2 -2
  108. package/dist/types/types/index.d.ts +2 -2
  109. package/package.json +36 -36
  110. package/readme.md +15 -15
@@ -1,18 +1,18 @@
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
- /**
11
- * @remark
12
- * When changing this code also change {@link QueryLocallyMatchableParser QueryLocallyMatchableParser}
13
- */
14
- matchQuery(query: ApiQuery): boolean | 'maybe';
15
- private matchLinkedToQuery;
16
- private matchComplexQuery;
17
- private matchSimpleQuery;
18
- }
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
+ /**
11
+ * @remark
12
+ * When changing this code also change {@link QueryLocallyMatchableParser QueryLocallyMatchableParser}
13
+ */
14
+ matchQuery(query: ApiQuery): boolean | 'maybe';
15
+ private matchLinkedToQuery;
16
+ private matchComplexQuery;
17
+ private matchSimpleQuery;
18
+ }
@@ -1,24 +1,24 @@
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
- constructor(query: ApiQuery);
11
- protected parseEmptyQuery(): [object, string];
12
- protected parseSubQuery(key: string, subQuery: object, not?: boolean): [object, string];
13
- protected parseSubFieldQuery(key: string | undefined, itemType: string | undefined, field: string | undefined, query: ApiQuery, not?: boolean): [object, string];
14
- protected parseSearchQuery(value: any, not?: boolean): [object, string];
15
- protected parseCustomQuery(custom: string, parameters: any, not?: boolean): [object, string];
16
- protected parseCustomParameters(parameters: any): [object, string];
17
- protected parseSimpleQuery(key: string, value: any, comparator?: COMPARATORS_TYPE, not?: boolean): [object, string];
18
- protected parseLinkedToQuery(linkedTo: any, query?: ApiQuery, reverse?: boolean, not?: boolean): [object, string];
19
- protected parseComplexQuery(conditions: any[], operator?: OPERATORS_TYPE, not?: boolean): [object, string];
20
- private parseConditions;
21
- private formatValue;
22
- private processValue;
23
- private compareParsedQueries;
24
- }
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
+ constructor(query: ApiQuery);
11
+ protected parseEmptyQuery(): [object, string];
12
+ protected parseSubQuery(key: string, subQuery: object, not?: boolean): [object, string];
13
+ protected parseSubFieldQuery(key: string | undefined, itemType: string | undefined, field: string | undefined, query: ApiQuery, not?: boolean): [object, string];
14
+ protected parseSearchQuery(value: any, not?: boolean): [object, string];
15
+ protected parseCustomQuery(custom: string, parameters: any, not?: boolean): [object, string];
16
+ protected parseCustomParameters(parameters: any): [object, string];
17
+ protected parseSimpleQuery(key: string, value: any, comparator?: COMPARATORS_TYPE, not?: boolean): [object, string];
18
+ protected parseLinkedToQuery(linkedTo: any, query?: ApiQuery, reverse?: boolean, not?: boolean): [object, string];
19
+ protected parseComplexQuery(conditions: any[], operator?: OPERATORS_TYPE, not?: boolean): [object, string];
20
+ private parseConditions;
21
+ private formatValue;
22
+ private processValue;
23
+ private compareParsedQueries;
24
+ }
@@ -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, queryPart: ApiQuery): ReturnType;
23
- protected abstract parseSubFieldQuery(key: string, itemType: ItemType, field: string, query: ApiQuery, not: boolean, queryPart: ApiQuery): ReturnType;
24
- protected abstract parseSearchQuery(value: any, not: boolean, queryPart: ApiQuery): ReturnType;
25
- protected abstract parseCustomQuery(custom: string, parameters: any, not: boolean, queryPart: ApiQuery): ReturnType;
26
- protected abstract parseSimpleQuery(key: string, value: any, comparator: COMPARATORS_TYPE, not: boolean, queryPart: ApiQuery): ReturnType;
27
- protected abstract parseLinkedToQuery(linkedTo: any, query: ApiQuery, reverse: boolean, not: boolean, queryPart: ApiQuery): ReturnType;
28
- protected abstract parseComplexQuery(conditions: any[], operator: OPERATORS_TYPE, not: boolean, queryPart: ApiQuery): 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, queryPart: ApiQuery): ReturnType;
23
+ protected abstract parseSubFieldQuery(key: string, itemType: ItemType, field: string, query: ApiQuery, not: boolean, queryPart: ApiQuery): ReturnType;
24
+ protected abstract parseSearchQuery(value: any, not: boolean, queryPart: ApiQuery): ReturnType;
25
+ protected abstract parseCustomQuery(custom: string, parameters: any, not: boolean, queryPart: ApiQuery): ReturnType;
26
+ protected abstract parseSimpleQuery(key: string, value: any, comparator: COMPARATORS_TYPE, not: boolean, queryPart: ApiQuery): ReturnType;
27
+ protected abstract parseLinkedToQuery(linkedTo: any, query: ApiQuery, reverse: boolean, not: boolean, queryPart: ApiQuery): ReturnType;
28
+ protected abstract parseComplexQuery(conditions: any[], operator: OPERATORS_TYPE, not: boolean, queryPart: ApiQuery): ReturnType;
29
+ }
@@ -1,16 +1,16 @@
1
- import { ApiQuery, ItemIdConversionMap, ItemType } from '../types';
2
- import { COMPARATORS_TYPE } from './QueryParser';
3
- import { OPERATORS_TYPE, QueryParserBase } from './QueryParserBase';
4
- export declare class QueryParserIdUpdater extends QueryParserBase<void> {
5
- private itemIdConversionMap;
6
- constructor(itemIdConversionMap: ItemIdConversionMap, query: ApiQuery);
7
- protected parseEmptyQuery(): void;
8
- protected parseSubQuery(_key: string, subQuery: object, _not?: boolean): void;
9
- protected parseSubFieldQuery(_key: string, _itemType: ItemType, _field: string, _query: ApiQuery, _not: boolean): void;
10
- protected parseSearchQuery(_value: any, _not: boolean): void;
11
- protected parseCustomQuery(_custom: string, _parameters: any, _not?: boolean): void;
12
- protected parseSimpleQuery(_key: string, value: any, _comparator: COMPARATORS_TYPE, _not: boolean, queryPart: ApiQuery): void;
13
- protected parseLinkedToQuery(_linkedTo: ItemType, query?: ApiQuery, _reverse?: boolean, _not?: boolean): void;
14
- protected parseComplexQuery(conditions: any[], _operator?: OPERATORS_TYPE, _not?: boolean): void;
15
- private parseConditions;
16
- }
1
+ import { ApiQuery, ItemIdConversionMap, ItemType } from '../types';
2
+ import { COMPARATORS_TYPE } from './QueryParser';
3
+ import { OPERATORS_TYPE, QueryParserBase } from './QueryParserBase';
4
+ export declare class QueryParserIdUpdater extends QueryParserBase<void> {
5
+ private itemIdConversionMap;
6
+ constructor(itemIdConversionMap: ItemIdConversionMap, query: ApiQuery);
7
+ protected parseEmptyQuery(): void;
8
+ protected parseSubQuery(_key: string, subQuery: object, _not?: boolean): void;
9
+ protected parseSubFieldQuery(_key: string, _itemType: ItemType, _field: string, _query: ApiQuery, _not: boolean): void;
10
+ protected parseSearchQuery(_value: any, _not: boolean): void;
11
+ protected parseCustomQuery(_custom: string, _parameters: any, _not?: boolean): void;
12
+ protected parseSimpleQuery(_key: string, value: any, _comparator: COMPARATORS_TYPE, _not: boolean, queryPart: ApiQuery): void;
13
+ protected parseLinkedToQuery(_linkedTo: ItemType, query?: ApiQuery, _reverse?: boolean, _not?: boolean): void;
14
+ protected parseComplexQuery(conditions: any[], _operator?: OPERATORS_TYPE, _not?: boolean): void;
15
+ private parseConditions;
16
+ }
@@ -1,18 +1,18 @@
1
- import { ApiQuery, EntryParentNull, ItemId, ItemType } from '../types';
2
- import { KeyService } from './KeyService';
3
- import { COMPARATORS } from './QueryParserBase';
4
- export declare class QueryService {
5
- private keyService;
6
- constructor(keyService: KeyService);
7
- containsLinkedTo(query: ApiQuery, matchItemType: ItemType, matchItemId: ItemId): boolean;
8
- containsLocalId(query: ApiQuery): boolean;
9
- addAndCondition(query: ApiQuery, condition: ApiQuery): ApiQuery;
10
- addOrCondition(query: ApiQuery, condition: ApiQuery): ApiQuery;
11
- addParentCondition(query: ApiQuery, parent: EntryParentNull): ApiQuery;
12
- createNotIn(idArray: ItemId[]): {
13
- comparator: COMPARATORS;
14
- key: string;
15
- value: number[];
16
- not: boolean;
17
- };
18
- }
1
+ import { ApiQuery, EntryParentNull, ItemId, ItemType } from '../types';
2
+ import { KeyService } from './KeyService';
3
+ import { COMPARATORS } from './QueryParserBase';
4
+ export declare class QueryService {
5
+ private keyService;
6
+ constructor(keyService: KeyService);
7
+ containsLinkedTo(query: ApiQuery, matchItemType: ItemType, matchItemId: ItemId): boolean;
8
+ containsLocalId(query: ApiQuery): boolean;
9
+ addAndCondition(query: ApiQuery, condition: ApiQuery): ApiQuery;
10
+ addOrCondition(query: ApiQuery, condition: ApiQuery): ApiQuery;
11
+ addParentCondition(query: ApiQuery, parent: EntryParentNull): ApiQuery;
12
+ createNotIn(idArray: ItemId[]): {
13
+ comparator: COMPARATORS;
14
+ key: string;
15
+ value: number[];
16
+ not: boolean;
17
+ };
18
+ }
@@ -1,28 +1,28 @@
1
- import { ChangesDeltaFactory, RequestColumnExpansionFactory } from '../factories';
2
- import { PromiseLibraryInterface } from '../interfaces';
3
- import { ApiRequestColumns, ItemId, ItemType, PromiseInterface } from '../types';
4
- import { ApiRequestService } from './ApiRequestService';
5
- import { ApiResponseProcessor } from './ApiResponseProcessor';
6
- import { ServerCache } from './cache/server/ServerCache';
7
- export declare type RequestBufferResponse<ItemTypeType extends ItemType = any> = ApiResponseProcessor<ItemTypeType>;
8
- export declare class RequestBuffer<ItemTypeType extends ItemType = any> {
9
- private promiseLibrary;
10
- private apiRequestService;
11
- private requestColumnExpansionFactory;
12
- private changesDeltaFactory;
13
- private serverCache;
14
- private itemType;
15
- private deferred;
16
- private requestColumnExpansion;
17
- private singleItemIds;
18
- private queries;
19
- constructor(promiseLibrary: PromiseLibraryInterface, apiRequestService: ApiRequestService, requestColumnExpansionFactory: RequestColumnExpansionFactory, changesDeltaFactory: ChangesDeltaFactory, serverCache: ServerCache, itemType: ItemTypeType);
20
- containsId(itemId: ItemId): boolean;
21
- containsQuery(queryString: string): boolean;
22
- addSingleItem(itemId: ItemId, requestColumns: ApiRequestColumns): PromiseInterface<RequestBufferResponse<ItemTypeType>>;
23
- addQuery(query: [object, string], requestColumns: ApiRequestColumns): PromiseInterface<RequestBufferResponse<ItemTypeType>>;
24
- flush(): PromiseInterface<RequestBufferResponse<ItemTypeType>>;
25
- getPromise(): PromiseInterface<RequestBufferResponse<ItemTypeType>>;
26
- private hasMultipleQueries;
27
- private getFirstQueryString;
28
- }
1
+ import { ChangesDeltaFactory, RequestColumnExpansionFactory } from '../factories';
2
+ import { PromiseLibraryInterface } from '../interfaces';
3
+ import { ApiRequestColumns, ItemId, ItemType, PromiseInterface } from '../types';
4
+ import { ApiRequestService } from './ApiRequestService';
5
+ import { ApiResponseProcessor } from './ApiResponseProcessor';
6
+ import { ServerCache } from './cache/server/ServerCache';
7
+ export declare type RequestBufferResponse<ItemTypeType extends ItemType = any> = ApiResponseProcessor<ItemTypeType>;
8
+ export declare class RequestBuffer<ItemTypeType extends ItemType = any> {
9
+ private promiseLibrary;
10
+ private apiRequestService;
11
+ private requestColumnExpansionFactory;
12
+ private changesDeltaFactory;
13
+ private serverCache;
14
+ private itemType;
15
+ private deferred;
16
+ private requestColumnExpansion;
17
+ private singleItemIds;
18
+ private queries;
19
+ constructor(promiseLibrary: PromiseLibraryInterface, apiRequestService: ApiRequestService, requestColumnExpansionFactory: RequestColumnExpansionFactory, changesDeltaFactory: ChangesDeltaFactory, serverCache: ServerCache, itemType: ItemTypeType);
20
+ containsId(itemId: ItemId): boolean;
21
+ containsQuery(queryString: string): boolean;
22
+ addSingleItem(itemId: ItemId, requestColumns: ApiRequestColumns): PromiseInterface<RequestBufferResponse<ItemTypeType>>;
23
+ addQuery(query: [object, string], requestColumns: ApiRequestColumns): PromiseInterface<RequestBufferResponse<ItemTypeType>>;
24
+ flush(): PromiseInterface<RequestBufferResponse<ItemTypeType>>;
25
+ getPromise(): PromiseInterface<RequestBufferResponse<ItemTypeType>>;
26
+ private hasMultipleQueries;
27
+ private getFirstQueryString;
28
+ }
@@ -1,25 +1,25 @@
1
- import { ChangesDeltaFactory, RequestColumnExpansionFactory } from '../factories';
2
- import { PromiseLibraryInterface } from '../interfaces';
3
- import { ApiRequestColumns, ItemId, ItemType, PromiseInterface } from '../types';
4
- import { ApiRequestService } from './ApiRequestService';
5
- import { ServerCache } from './cache/server/ServerCache';
6
- import { KeyService } from './KeyService';
7
- import { RequestBufferResponse } from './RequestBuffer';
8
- export declare class RequestBufferManager {
9
- private promiseLibrary;
10
- private apiRequestService;
11
- private requestColumnExpansionFactory;
12
- private keyService;
13
- private changesDeltaFactory;
14
- private pendingBufferMap;
15
- private pendingTrueBufferMap;
16
- private serverCache;
17
- constructor(promiseLibrary: PromiseLibraryInterface, apiRequestService: ApiRequestService, requestColumnExpansionFactory: RequestColumnExpansionFactory, keyService: KeyService, changesDeltaFactory: ChangesDeltaFactory);
18
- setServerCache(serverCache: ServerCache): void;
19
- fetchByIds(itemType: ItemType, itemIds: ItemId[], requestColumns: ApiRequestColumns): PromiseInterface<RequestBufferResponse>;
20
- fetchById(itemType: ItemType, itemId: ItemId, requestColumns: ApiRequestColumns): PromiseInterface<RequestBufferResponse>;
21
- fetchByQuery(itemType: ItemType, query: [object, string], // queryParser result
22
- requestColumns: ApiRequestColumns): PromiseInterface<RequestBufferResponse>;
23
- private constructBuffer;
24
- private _constructBuffer;
25
- }
1
+ import { ChangesDeltaFactory, RequestColumnExpansionFactory } from '../factories';
2
+ import { PromiseLibraryInterface } from '../interfaces';
3
+ import { ApiRequestColumns, ItemId, ItemType, PromiseInterface } from '../types';
4
+ import { ApiRequestService } from './ApiRequestService';
5
+ import { ServerCache } from './cache/server/ServerCache';
6
+ import { KeyService } from './KeyService';
7
+ import { RequestBufferResponse } from './RequestBuffer';
8
+ export declare class RequestBufferManager {
9
+ private promiseLibrary;
10
+ private apiRequestService;
11
+ private requestColumnExpansionFactory;
12
+ private keyService;
13
+ private changesDeltaFactory;
14
+ private pendingBufferMap;
15
+ private pendingTrueBufferMap;
16
+ private serverCache;
17
+ constructor(promiseLibrary: PromiseLibraryInterface, apiRequestService: ApiRequestService, requestColumnExpansionFactory: RequestColumnExpansionFactory, keyService: KeyService, changesDeltaFactory: ChangesDeltaFactory);
18
+ setServerCache(serverCache: ServerCache): void;
19
+ fetchByIds(itemType: ItemType, itemIds: ItemId[], requestColumns: ApiRequestColumns): PromiseInterface<RequestBufferResponse>;
20
+ fetchById(itemType: ItemType, itemId: ItemId, requestColumns: ApiRequestColumns): PromiseInterface<RequestBufferResponse>;
21
+ fetchByQuery(itemType: ItemType, query: [object, string], // queryParser result
22
+ requestColumns: ApiRequestColumns): PromiseInterface<RequestBufferResponse>;
23
+ private constructBuffer;
24
+ private _constructBuffer;
25
+ }
@@ -1,15 +1,15 @@
1
- import { ColumnSet, ColumnUtil, RequestColumnMergeResult } from '../classes';
2
- import { ApiRequestColumns, ItemType } from '../types';
3
- declare type RequestColumnMap = {
4
- [itemType: string]: ApiRequestColumns;
5
- };
6
- export declare class RequestColumnExpansion {
7
- private columnUtil;
8
- private columns;
9
- private columnSetIdMap;
10
- constructor(columnUtil: ColumnUtil);
11
- expandWithRequestColumns(itemType: ItemType, requestColumns: ApiRequestColumns): RequestColumnMergeResult;
12
- expand<T extends ColumnSet<ItemType>>(columnSet: T): void;
13
- get(): RequestColumnMap;
14
- }
15
- export {};
1
+ import { ColumnSet, ColumnUtil, RequestColumnMergeResult } from '../classes';
2
+ import { ApiRequestColumns, ItemType } from '../types';
3
+ declare type RequestColumnMap = {
4
+ [itemType: string]: ApiRequestColumns;
5
+ };
6
+ export declare class RequestColumnExpansion {
7
+ private columnUtil;
8
+ private columns;
9
+ private columnSetIdMap;
10
+ constructor(columnUtil: ColumnUtil);
11
+ expandWithRequestColumns(itemType: ItemType, requestColumns: ApiRequestColumns): RequestColumnMergeResult;
12
+ expand<T extends ColumnSet<ItemType>>(columnSet: T): void;
13
+ get(): RequestColumnMap;
14
+ }
15
+ export {};
@@ -1,39 +1,39 @@
1
- import { ApiFormatter, ApiRequestService } from '../classes';
2
- import { QueryMatcherFactory, RequestColumnExpansionFactory, TransactionCacheFactory } from '../factories';
3
- import { ChangesDeltaFactory } from '../factories/ChangesDeltaFactory';
4
- import { ErrorHandlerInterface, PromiseLibraryInterface } from '../interfaces';
5
- import { ItemType, SocketMessage } from '../types';
6
- import { CachedQueryItem } from './cache/CachedQueryHandlerBase';
7
- import { RequestBufferManager } from './RequestBufferManager';
8
- export declare type CachedQueryMatchingResult<ItemTypeType extends ItemType> = {
9
- fitting: Array<CachedQueryItem<ItemTypeType>>;
10
- notfitting: Array<CachedQueryItem<ItemTypeType>>;
11
- maybe: Array<CachedQueryItem<ItemTypeType>>;
12
- };
13
- export declare type CachedQueryMatchingResultItemIdMap<ItemTypeType extends ItemType> = {
14
- [itemId: number]: CachedQueryMatchingResult<ItemTypeType>;
15
- };
16
- export declare class SocketMessageHandler {
17
- private requestBufferManager;
18
- private changesDeltaFactory;
19
- private apiFormatter;
20
- private errorHandler;
21
- private transactionCacheFactory;
22
- private promiseService;
23
- private requestColumnExpansionFactory;
24
- private apiRequestService;
25
- private queryMatcherFactory;
26
- constructor(requestBufferManager: RequestBufferManager, changesDeltaFactory: ChangesDeltaFactory, apiFormatter: ApiFormatter, errorHandler: ErrorHandlerInterface, transactionCacheFactory: TransactionCacheFactory, promiseService: PromiseLibraryInterface, requestColumnExpansionFactory: RequestColumnExpansionFactory, apiRequestService: ApiRequestService, queryMatcherFactory: QueryMatcherFactory);
27
- onMessageReceived(message: SocketMessage): any;
28
- private formatMessageValues;
29
- private createQueriesWithFittingItemsMap;
30
- private getCachedQueriesByFittingItem;
31
- private getRequestColumns;
32
- private processMessage;
33
- private processFunctionChangesResolve;
34
- private isFunctionChangesResolveMessage;
35
- private handleCreate;
36
- private handleUpdate;
37
- private handleDelete;
38
- private handleLinkMove;
39
- }
1
+ import { ApiFormatter, ApiRequestService } from '../classes';
2
+ import { QueryMatcherFactory, RequestColumnExpansionFactory, TransactionCacheFactory } from '../factories';
3
+ import { ChangesDeltaFactory } from '../factories/ChangesDeltaFactory';
4
+ import { ErrorHandlerInterface, PromiseLibraryInterface } from '../interfaces';
5
+ import { ItemType, SocketMessage } from '../types';
6
+ import { CachedQueryItem } from './cache/CachedQueryHandlerBase';
7
+ import { RequestBufferManager } from './RequestBufferManager';
8
+ export declare type CachedQueryMatchingResult<ItemTypeType extends ItemType> = {
9
+ fitting: Array<CachedQueryItem<ItemTypeType>>;
10
+ notfitting: Array<CachedQueryItem<ItemTypeType>>;
11
+ maybe: Array<CachedQueryItem<ItemTypeType>>;
12
+ };
13
+ export declare type CachedQueryMatchingResultItemIdMap<ItemTypeType extends ItemType> = {
14
+ [itemId: number]: CachedQueryMatchingResult<ItemTypeType>;
15
+ };
16
+ export declare class SocketMessageHandler {
17
+ private requestBufferManager;
18
+ private changesDeltaFactory;
19
+ private apiFormatter;
20
+ private errorHandler;
21
+ private transactionCacheFactory;
22
+ private promiseService;
23
+ private requestColumnExpansionFactory;
24
+ private apiRequestService;
25
+ private queryMatcherFactory;
26
+ constructor(requestBufferManager: RequestBufferManager, changesDeltaFactory: ChangesDeltaFactory, apiFormatter: ApiFormatter, errorHandler: ErrorHandlerInterface, transactionCacheFactory: TransactionCacheFactory, promiseService: PromiseLibraryInterface, requestColumnExpansionFactory: RequestColumnExpansionFactory, apiRequestService: ApiRequestService, queryMatcherFactory: QueryMatcherFactory);
27
+ onMessageReceived(message: SocketMessage): any;
28
+ private formatMessageValues;
29
+ private createQueriesWithFittingItemsMap;
30
+ private getCachedQueriesByFittingItem;
31
+ private getRequestColumns;
32
+ private processMessage;
33
+ private processFunctionChangesResolve;
34
+ private isFunctionChangesResolveMessage;
35
+ private handleCreate;
36
+ private handleUpdate;
37
+ private handleDelete;
38
+ private handleLinkMove;
39
+ }
@@ -1,66 +1,66 @@
1
- import { RequestColumnExpansionFactory, TemplateFactory } from '../factories';
2
- import { ErrorHandlerInterface, PromiseLibraryInterface } from '../interfaces';
3
- import { Template } from '../models';
4
- import { ColumnIdTypeMap, EntryParentNull, ItemId, ItemType, PromiseInterface } from '../types';
5
- import { ApiRequestService } from './ApiRequestService';
6
- import { ColumnHandler } from './ColumnHandler';
7
- import { ColumnUtil } from './ColumnUtil';
8
- export declare class TemplateCache {
9
- private columnUtil;
10
- private promiseService;
11
- private columnHandler;
12
- private templateFactory;
13
- private errorHandler;
14
- private requestColumnExpansionFactory;
15
- private apiRequestService;
16
- private pendingTemplateBufferMap;
17
- templates: {
18
- [itemType: string]: Template<any>;
19
- };
20
- constructor(columnUtil: ColumnUtil, promiseService: PromiseLibraryInterface, columnHandler: ColumnHandler, templateFactory: TemplateFactory, errorHandler: ErrorHandlerInterface, requestColumnExpansionFactory: RequestColumnExpansionFactory, apiRequestService: ApiRequestService);
21
- /**
22
- * @description
23
- * Fetches a {@link Template template}, {@link TransactionItemHandler.createItems TransactionItemHandler.createItems} is a convenience function for this
24
- *
25
- * @param itemType The {@link ItemType ItemType} of the template item
26
- * @param itemId Used for caching, multiple concurrent template calls for the same itemId will return the same template
27
- * @param templateOptions
28
- * @param templateColumns Additional columns to be fetched, will be stored in the template - warning - the Template won't have values for those columns
29
- * @param entryParentOrParentItemType An optional {@link EntryParentNull entry parent} or {@link ItemType parent itemType}, if the parent is passed the templateColumns will be expanded with the proper link columns (Through {@link ColumnUtil.getColumnsFromLink ColumnUtil.getColumnsFromLink})
30
- *
31
- * @example
32
- * ```
33
- * const parent: EntryParent = {
34
- * itemType: 'Functie',
35
- * itemId: 10,
36
- * };
37
- *
38
- * return core.templateCache
39
- * .fetchTemplate(
40
- * 'Planningpersoneel',
41
- * undefined,
42
- * {},
43
- * {},
44
- * parent,
45
- * )
46
- * .then(
47
- * (template: Template<'Planningpersoneel'>) => {
48
- * const changesDelta = transaction.createChangesDelta();
49
- *
50
- * for (const itemResource of selectedItems) {
51
- * changesDelta.setItemCreated(
52
- * core.keyService.getLocalId(),
53
- * template.fields,
54
- * template.columns,
55
- * parent,
56
- * );
57
- * }
58
- *
59
- * transaction.applyChangesDelta(changesDelta);
60
- * );
61
- * ```
62
- */
63
- fetchTemplate<ItemTypeType extends ItemType, Fields extends ColumnIdTypeMap>(itemType: ItemTypeType, itemId?: ItemId, templateOptions?: any, templateColumns?: any, entryParentOrParentItemType?: EntryParentNull | ItemType): PromiseInterface<Template<ItemTypeType, Fields>>;
64
- private fetchTemplateById;
65
- private constructTemplateBuffer;
66
- }
1
+ import { RequestColumnExpansionFactory, TemplateFactory } from '../factories';
2
+ import { ErrorHandlerInterface, PromiseLibraryInterface } from '../interfaces';
3
+ import { Template } from '../models';
4
+ import { ColumnIdTypeMap, EntryParentNull, ItemId, ItemType, PromiseInterface } from '../types';
5
+ import { ApiRequestService } from './ApiRequestService';
6
+ import { ColumnHandler } from './ColumnHandler';
7
+ import { ColumnUtil } from './ColumnUtil';
8
+ export declare class TemplateCache {
9
+ private columnUtil;
10
+ private promiseService;
11
+ private columnHandler;
12
+ private templateFactory;
13
+ private errorHandler;
14
+ private requestColumnExpansionFactory;
15
+ private apiRequestService;
16
+ private pendingTemplateBufferMap;
17
+ templates: {
18
+ [itemType: string]: Template<any>;
19
+ };
20
+ constructor(columnUtil: ColumnUtil, promiseService: PromiseLibraryInterface, columnHandler: ColumnHandler, templateFactory: TemplateFactory, errorHandler: ErrorHandlerInterface, requestColumnExpansionFactory: RequestColumnExpansionFactory, apiRequestService: ApiRequestService);
21
+ /**
22
+ * @description
23
+ * Fetches a {@link Template template}, {@link TransactionItemHandler.createItems TransactionItemHandler.createItems} is a convenience function for this
24
+ *
25
+ * @param itemType The {@link ItemType ItemType} of the template item
26
+ * @param itemId Used for caching, multiple concurrent template calls for the same itemId will return the same template
27
+ * @param templateOptions
28
+ * @param templateColumns Additional columns to be fetched, will be stored in the template - warning - the Template won't have values for those columns
29
+ * @param entryParentOrParentItemType An optional {@link EntryParentNull entry parent} or {@link ItemType parent itemType}, if the parent is passed the templateColumns will be expanded with the proper link columns (Through {@link ColumnUtil.getColumnsFromLink ColumnUtil.getColumnsFromLink})
30
+ *
31
+ * @example
32
+ * ```
33
+ * const parent: EntryParent = {
34
+ * itemType: 'Functie',
35
+ * itemId: 10,
36
+ * };
37
+ *
38
+ * return core.templateCache
39
+ * .fetchTemplate(
40
+ * 'Planningpersoneel',
41
+ * undefined,
42
+ * {},
43
+ * {},
44
+ * parent,
45
+ * )
46
+ * .then(
47
+ * (template: Template<'Planningpersoneel'>) => {
48
+ * const changesDelta = transaction.createChangesDelta();
49
+ *
50
+ * for (const itemResource of selectedItems) {
51
+ * changesDelta.setItemCreated(
52
+ * core.keyService.getLocalId(),
53
+ * template.fields,
54
+ * template.columns,
55
+ * parent,
56
+ * );
57
+ * }
58
+ *
59
+ * transaction.applyChangesDelta(changesDelta);
60
+ * );
61
+ * ```
62
+ */
63
+ fetchTemplate<ItemTypeType extends ItemType, Fields extends ColumnIdTypeMap>(itemType: ItemTypeType, itemId?: ItemId, templateOptions?: any, templateColumns?: any, entryParentOrParentItemType?: EntryParentNull | ItemType): PromiseInterface<Template<ItemTypeType, Fields>>;
64
+ private fetchTemplateById;
65
+ private constructTemplateBuffer;
66
+ }