@rentman/rm-core 1.7.1 → 1.7.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (93) hide show
  1. package/changelog.md +518 -512
  2. package/dist/rm-core.js +7477 -7473
  3. package/dist/rm-core.min.js +1 -1
  4. package/dist/src/classes/ApiFormatter.d.ts +39 -39
  5. package/dist/src/classes/ApiRequestService.d.ts +20 -20
  6. package/dist/src/classes/ApiResponseProcessor.d.ts +41 -41
  7. package/dist/src/classes/BatchStatus.d.ts +27 -27
  8. package/dist/src/classes/ChangesCompilation.d.ts +51 -51
  9. package/dist/src/classes/ChangesProcessor.d.ts +33 -33
  10. package/dist/src/classes/CollectionCache.d.ts +34 -34
  11. package/dist/src/classes/CollectionEntryService.d.ts +23 -23
  12. package/dist/src/classes/CollectionHandler.d.ts +54 -54
  13. package/dist/src/classes/CollectionMatcher.d.ts +42 -42
  14. package/dist/src/classes/CollectionResourceService.d.ts +6 -6
  15. package/dist/src/classes/ColumnCache.d.ts +21 -21
  16. package/dist/src/classes/ColumnExpansion.d.ts +18 -18
  17. package/dist/src/classes/ColumnHandler.d.ts +21 -21
  18. package/dist/src/classes/ColumnInfo.d.ts +14 -14
  19. package/dist/src/classes/ColumnSet.d.ts +46 -46
  20. package/dist/src/classes/ColumnSubsetCache.d.ts +8 -8
  21. package/dist/src/classes/ColumnUtil.d.ts +89 -89
  22. package/dist/src/classes/CreateRequest.d.ts +20 -20
  23. package/dist/src/classes/ItemAdministrator.d.ts +238 -238
  24. package/dist/src/classes/ItemCache.d.ts +23 -23
  25. package/dist/src/classes/ItemEntryService.d.ts +24 -24
  26. package/dist/src/classes/ItemHandler.d.ts +60 -60
  27. package/dist/src/classes/ItemRequestService.d.ts +23 -23
  28. package/dist/src/classes/KeyService.d.ts +16 -16
  29. package/dist/src/classes/LocalCache.d.ts +97 -97
  30. package/dist/src/classes/LockService.d.ts +32 -32
  31. package/dist/src/classes/ModuleChangesCompilation.d.ts +21 -21
  32. package/dist/src/classes/QueryMatcher.d.ts +14 -14
  33. package/dist/src/classes/QueryParser.d.ts +34 -34
  34. package/dist/src/classes/QueryService.d.ts +14 -14
  35. package/dist/src/classes/RequestColumnExpansion.d.ts +14 -14
  36. package/dist/src/classes/ResourceCache.d.ts +25 -25
  37. package/dist/src/classes/SocketMessageHandler.d.ts +41 -41
  38. package/dist/src/classes/Util.d.ts +28 -28
  39. package/dist/src/classes/index.d.ts +35 -35
  40. package/dist/src/constants.d.ts +18 -18
  41. package/dist/src/core.d.ts +48 -48
  42. package/dist/src/factories/ApiResponseProcessorFactory.d.ts +6 -6
  43. package/dist/src/factories/BatchStatusFactory.d.ts +8 -8
  44. package/dist/src/factories/ChangesCompilationFactory.d.ts +9 -9
  45. package/dist/src/factories/CollectionCacheFactory.d.ts +8 -8
  46. package/dist/src/factories/CollectionEntryFactory.d.ts +23 -23
  47. package/dist/src/factories/CollectionMatcherFactory.d.ts +7 -7
  48. package/dist/src/factories/CollectionResourceFactory.d.ts +32 -32
  49. package/dist/src/factories/ColumnExpansionFactory.d.ts +8 -8
  50. package/dist/src/factories/ColumnInfoFactory.d.ts +7 -7
  51. package/dist/src/factories/ColumnSetFactory.d.ts +11 -11
  52. package/dist/src/factories/ColumnSubsetCacheFactory.d.ts +6 -6
  53. package/dist/src/factories/CreateRequestFactory.d.ts +11 -11
  54. package/dist/src/factories/ItemCacheFactory.d.ts +7 -7
  55. package/dist/src/factories/ItemEntryFactory.d.ts +21 -21
  56. package/dist/src/factories/ItemResourceFactory.d.ts +29 -29
  57. package/dist/src/factories/LocalCacheFactory.d.ts +16 -16
  58. package/dist/src/factories/ModuleChangesCompilationFactory.d.ts +5 -5
  59. package/dist/src/factories/QueryMatcherFactory.d.ts +7 -7
  60. package/dist/src/factories/QueryParserFactory.d.ts +6 -6
  61. package/dist/src/factories/RequestColumnExpansionFactory.d.ts +6 -6
  62. package/dist/src/factories/TemplateFactory.d.ts +10 -10
  63. package/dist/src/factories/index.d.ts +21 -21
  64. package/dist/src/index.d.ts +7 -7
  65. package/dist/src/interfaces/ApiRequestServiceInterface.d.ts +11 -11
  66. package/dist/src/interfaces/AuthInterface.d.ts +9 -9
  67. package/dist/src/interfaces/ErrorHandlerInterface.d.ts +5 -5
  68. package/dist/src/interfaces/ExceptionHandlerInterface.d.ts +3 -3
  69. package/dist/src/interfaces/LocalCacheManagerInterface.d.ts +5 -5
  70. package/dist/src/interfaces/PromiseLibraryInterface.d.ts +25 -25
  71. package/dist/src/interfaces/SocketMessageInterface.d.ts +3 -3
  72. package/dist/src/interfaces/index.d.ts +7 -7
  73. package/dist/src/models/CollectionEditResource.d.ts +14 -14
  74. package/dist/src/models/CollectionEntry.d.ts +82 -82
  75. package/dist/src/models/CollectionEntryOptions.d.ts +12 -12
  76. package/dist/src/models/CollectionResource.d.ts +41 -41
  77. package/dist/src/models/CollectionResourceOptions.d.ts +22 -22
  78. package/dist/src/models/CollectionViewResource.d.ts +6 -6
  79. package/dist/src/models/EditResource.d.ts +18 -18
  80. package/dist/src/models/ItemEntry.d.ts +70 -70
  81. package/dist/src/models/ItemEntryOptions.d.ts +11 -11
  82. package/dist/src/models/ItemResource.d.ts +27 -27
  83. package/dist/src/models/ItemResourceOptions.d.ts +8 -8
  84. package/dist/src/models/LocalViewResource.d.ts +6 -6
  85. package/dist/src/models/RemoteViewResource.d.ts +6 -6
  86. package/dist/src/models/Template.d.ts +11 -11
  87. package/dist/src/models/ViewResource.d.ts +8 -8
  88. package/dist/src/models/index.d.ts +15 -15
  89. package/dist/src/types/ItemTypesCollection.d.ts +213 -213
  90. package/dist/src/types/PromiseInterface.d.ts +2 -2
  91. package/dist/src/types/index.d.ts +2 -2
  92. package/package.json +1 -1
  93. package/readme.md +15 -15
@@ -1,14 +1,14 @@
1
- import { LocalCache } from '../classes';
2
- import { CollectionResourceFactory } from '../factories';
3
- import { CollectionEntry, CollectionResource, CollectionResourceOptions, ItemResource, LocalViewResource } from '../models';
4
- import { FieldMap, ItemId, ItemIdConversionMap, PromiseInterface } from '../types';
5
- export declare class CollectionEditResource<T extends ItemResource = LocalViewResource> extends CollectionResource<T> {
6
- constructor(factory: CollectionResourceFactory, collectionEntry: CollectionEntry, options: CollectionResourceOptions, level: number, localCache: LocalCache | null);
7
- save(): PromiseInterface<ItemIdConversionMap>;
8
- moveItems(idArray: ItemId[], destination: CollectionResource, enableCallbacks?: boolean): T[];
9
- removeItems(idArray: ItemId[], callOnRemove?: boolean): PromiseInterface<T[]>;
10
- removeItem(itemId: ItemId, callOnRemove?: boolean): PromiseInterface<T>;
11
- addItems(valuesArray: FieldMap[], callOnAdd?: boolean, callOnActivate?: boolean): PromiseInterface<T[]>;
12
- addItem(values: FieldMap, callOnAdd?: boolean, callOnActivate?: boolean): PromiseInterface<T>;
13
- clear(enableCallbacks: boolean): this["items"];
14
- }
1
+ import { LocalCache } from '../classes';
2
+ import { CollectionResourceFactory } from '../factories';
3
+ import { CollectionEntry, CollectionResource, CollectionResourceOptions, ItemResource, LocalViewResource } from '../models';
4
+ import { FieldMap, ItemId, ItemIdConversionMap, PromiseInterface } from '../types';
5
+ export declare class CollectionEditResource<T extends ItemResource = LocalViewResource> extends CollectionResource<T> {
6
+ constructor(factory: CollectionResourceFactory, collectionEntry: CollectionEntry, options: CollectionResourceOptions, level: number, localCache: LocalCache | null);
7
+ save(): PromiseInterface<ItemIdConversionMap>;
8
+ moveItems(idArray: ItemId[], destination: CollectionResource, enableCallbacks?: boolean): T[];
9
+ removeItems(idArray: ItemId[], callOnRemove?: boolean): PromiseInterface<T[]>;
10
+ removeItem(itemId: ItemId, callOnRemove?: boolean): PromiseInterface<T>;
11
+ addItems(valuesArray: FieldMap[], callOnAdd?: boolean, callOnActivate?: boolean): PromiseInterface<T[]>;
12
+ addItem(values: FieldMap, callOnAdd?: boolean, callOnActivate?: boolean): PromiseInterface<T>;
13
+ clear(enableCallbacks: boolean): this["items"];
14
+ }
@@ -1,82 +1,82 @@
1
- import { ColumnExpansion, ColumnInfo, ColumnSet, ItemCache } from '../classes';
2
- import { CollectionEntryFactory } from '../factories';
3
- import { Deferred } from '../interfaces';
4
- import { CollectionEntryOptions, CollectionResource, ItemEntry } from '../models';
5
- import { ApiRequestColumns, CollectionQuery, ConversionMap, EntryParentNull, FieldMap, ItemId, ItemIdConversionMap, ItemType, PromiseInterface, QueryCallback } from '../types';
6
- export declare class CollectionEntry {
7
- private factory;
8
- itemType: ItemType;
9
- options: CollectionEntryOptions;
10
- id: number;
11
- parent: EntryParentNull;
12
- query: CollectionQuery;
13
- columns: ColumnSet;
14
- private templateColumns;
15
- initial: ItemEntry[];
16
- items: ItemEntry[];
17
- deferred?: Deferred<this>;
18
- promise: PromiseInterface<this>;
19
- reloadQueued: boolean;
20
- hasEditResources: boolean;
21
- hasItemEditResources: boolean;
22
- constructor(factory: CollectionEntryFactory, itemType: ItemType, options: CollectionEntryOptions);
23
- private getResources;
24
- defer(): this;
25
- isDeferred(): boolean;
26
- _resolve(): this;
27
- resolve(itemEntryCompound: {
28
- columns: ColumnSet;
29
- initial: ItemEntry[];
30
- modified?: ItemEntry[];
31
- }): this;
32
- isLocal(): boolean;
33
- matchParent(itemType: ItemType, itemId: ItemId): boolean;
34
- forEach(callback: (itemEntry: ItemEntry) => void): void;
35
- getItemById(itemId: ItemId): ItemEntry | undefined;
36
- getIdArray(accumulator?: ItemId[]): ItemId[];
37
- createItems(valuesArray: FieldMap[]): PromiseInterface<ItemEntry[]>;
38
- resolveDerivedValues(itemEntries: ItemEntry[], localItemCache: ItemCache): PromiseInterface<ItemEntry[]>;
39
- addItems<U extends CollectionResource>(itemEntries: ItemEntry[], resultResource: U, updateInitial?: boolean, callOnAdd?: boolean, callOnActivate?: boolean): U['items'];
40
- addItems(itemEntries: ItemEntry[], resultResource?: null, updateInitial?: boolean, callOnAdd?: boolean, callOnActivate?: boolean): null;
41
- addItems<U extends CollectionResource>(itemEntries: ItemEntry[], resultResource?: U | null, updateInitial?: boolean, callOnAdd?: boolean, callOnActivate?: boolean): U['items'] | null;
42
- private handleAddedItemCallbacks;
43
- removeItems<U extends CollectionResource>(idArray: ItemId[], resultResource: U, updateInitial?: boolean, callOnRemove?: boolean): U['items'];
44
- removeItems(idArray: ItemId[], resultResource?: null, updateInitial?: boolean, callOnRemove?: boolean): null;
45
- removeItems<U extends CollectionResource>(idArray: ItemId[], resultResource?: U | null, updateInitial?: boolean, callOnRemove?: boolean): U['items'] | null;
46
- clear<U extends CollectionResource>(resultResource: U, updateInitial?: boolean, callOnRemove?: boolean): U['items'];
47
- clear(resultResource?: null, updateInitial?: boolean, callOnRemove?: boolean): null;
48
- handleRemovedItems<U extends CollectionResource>(filterFunction: (itemEntry: ItemEntry) => boolean, resultResource: U, updateInitial?: boolean, callOnRemove?: boolean): U['items'];
49
- handleRemovedItems(filterFunction: (itemEntry: ItemEntry) => boolean, resultResource?: null, updateInitial?: boolean, callOnRemove?: boolean): null;
50
- handleRemovedItems<U extends CollectionResource>(filterFunction: (itemEntry: ItemEntry) => boolean, resultResource?: U | null, updateInitial?: boolean, callOnRemove?: boolean): U['items'] | null;
51
- private handleRemovedItemCallbacks;
52
- private createBatchStatus;
53
- private expandLocal;
54
- private expandRemote;
55
- expand(newColumns: ApiRequestColumns, localItemCache: ItemCache): PromiseInterface<this>;
56
- extendQuery(callback?: QueryCallback): CollectionQuery;
57
- extend<U extends CollectionResource>(queryCallback: QueryCallback, collectionResource?: U, callOnAdd?: boolean): PromiseInterface<U['items']>;
58
- extend(queryCallback: QueryCallback, collectionResource?: null, callOnAdd?: boolean): PromiseInterface<null>;
59
- queueReload(): void;
60
- expandColumns(columnExpansion: ColumnExpansion): void;
61
- expandRequestColumns(requestColumns: ApiRequestColumns): void;
62
- getAddedItems(returnItemIds: true): ItemId[];
63
- getAddedItems(returnItemIds?: boolean): ItemEntry[];
64
- getRemovedItems(returnItemIds: true): ItemId[];
65
- getRemovedItems(returnItemIds?: boolean): ItemEntry[];
66
- getUpdatedItems(): ItemEntry[];
67
- hasAddedItems(): boolean;
68
- hasRemovedItems(): boolean;
69
- hasUpdatedItems(): boolean;
70
- /**
71
- * @description
72
- * this doesn't revert updates
73
- */
74
- revertChanges(): void;
75
- onItemsCreated(conversionMap: ConversionMap): void;
76
- private onAddInitial;
77
- private onRemoveInitial;
78
- getUpdatedItemColumns(conversionMap: ItemIdConversionMap): {
79
- [columnId: string]: ColumnInfo;
80
- };
81
- clone(parent: EntryParentNull, conversionMap?: ItemIdConversionMap): CollectionEntry;
82
- }
1
+ import { ColumnExpansion, ColumnInfo, ColumnSet, ItemCache } from '../classes';
2
+ import { CollectionEntryFactory } from '../factories';
3
+ import { Deferred } from '../interfaces';
4
+ import { CollectionEntryOptions, CollectionResource, ItemEntry } from '../models';
5
+ import { ApiRequestColumns, CollectionQuery, ConversionMap, EntryParentNull, FieldMap, ItemId, ItemIdConversionMap, ItemType, PromiseInterface, QueryCallback } from '../types';
6
+ export declare class CollectionEntry {
7
+ private factory;
8
+ itemType: ItemType;
9
+ options: CollectionEntryOptions;
10
+ id: number;
11
+ parent: EntryParentNull;
12
+ query: CollectionQuery;
13
+ columns: ColumnSet;
14
+ private templateColumns;
15
+ initial: ItemEntry[];
16
+ items: ItemEntry[];
17
+ deferred?: Deferred<this>;
18
+ promise: PromiseInterface<this>;
19
+ reloadQueued: boolean;
20
+ hasEditResources: boolean;
21
+ hasItemEditResources: boolean;
22
+ constructor(factory: CollectionEntryFactory, itemType: ItemType, options: CollectionEntryOptions);
23
+ private getResources;
24
+ defer(): this;
25
+ isDeferred(): boolean;
26
+ _resolve(): this;
27
+ resolve(itemEntryCompound: {
28
+ columns: ColumnSet;
29
+ initial: ItemEntry[];
30
+ modified?: ItemEntry[];
31
+ }): this;
32
+ isLocal(): boolean;
33
+ matchParent(itemType: ItemType, itemId: ItemId): boolean;
34
+ forEach(callback: (itemEntry: ItemEntry) => void): void;
35
+ getItemById(itemId: ItemId): ItemEntry | undefined;
36
+ getIdArray(accumulator?: ItemId[]): ItemId[];
37
+ createItems(valuesArray: FieldMap[]): PromiseInterface<ItemEntry[]>;
38
+ resolveDerivedValues(itemEntries: ItemEntry[], localItemCache: ItemCache): PromiseInterface<ItemEntry[]>;
39
+ addItems<U extends CollectionResource>(itemEntries: ItemEntry[], resultResource: U, updateInitial?: boolean, callOnAdd?: boolean, callOnActivate?: boolean): U['items'];
40
+ addItems(itemEntries: ItemEntry[], resultResource?: null, updateInitial?: boolean, callOnAdd?: boolean, callOnActivate?: boolean): null;
41
+ addItems<U extends CollectionResource>(itemEntries: ItemEntry[], resultResource?: U | null, updateInitial?: boolean, callOnAdd?: boolean, callOnActivate?: boolean): U['items'] | null;
42
+ private handleAddedItemCallbacks;
43
+ removeItems<U extends CollectionResource>(idArray: ItemId[], resultResource: U, updateInitial?: boolean, callOnRemove?: boolean): U['items'];
44
+ removeItems(idArray: ItemId[], resultResource?: null, updateInitial?: boolean, callOnRemove?: boolean): null;
45
+ removeItems<U extends CollectionResource>(idArray: ItemId[], resultResource?: U | null, updateInitial?: boolean, callOnRemove?: boolean): U['items'] | null;
46
+ clear<U extends CollectionResource>(resultResource: U, updateInitial?: boolean, callOnRemove?: boolean): U['items'];
47
+ clear(resultResource?: null, updateInitial?: boolean, callOnRemove?: boolean): null;
48
+ handleRemovedItems<U extends CollectionResource>(filterFunction: (itemEntry: ItemEntry) => boolean, resultResource: U, updateInitial?: boolean, callOnRemove?: boolean): U['items'];
49
+ handleRemovedItems(filterFunction: (itemEntry: ItemEntry) => boolean, resultResource?: null, updateInitial?: boolean, callOnRemove?: boolean): null;
50
+ handleRemovedItems<U extends CollectionResource>(filterFunction: (itemEntry: ItemEntry) => boolean, resultResource?: U | null, updateInitial?: boolean, callOnRemove?: boolean): U['items'] | null;
51
+ private handleRemovedItemCallbacks;
52
+ private createBatchStatus;
53
+ private expandLocal;
54
+ private expandRemote;
55
+ expand(newColumns: ApiRequestColumns, localItemCache: ItemCache): PromiseInterface<this>;
56
+ extendQuery(callback?: QueryCallback): CollectionQuery;
57
+ extend<U extends CollectionResource>(queryCallback: QueryCallback, collectionResource?: U, callOnAdd?: boolean): PromiseInterface<U['items']>;
58
+ extend(queryCallback: QueryCallback, collectionResource?: null, callOnAdd?: boolean): PromiseInterface<null>;
59
+ queueReload(): void;
60
+ expandColumns(columnExpansion: ColumnExpansion): void;
61
+ expandRequestColumns(requestColumns: ApiRequestColumns): void;
62
+ getAddedItems(returnItemIds: true): ItemId[];
63
+ getAddedItems(returnItemIds?: boolean): ItemEntry[];
64
+ getRemovedItems(returnItemIds: true): ItemId[];
65
+ getRemovedItems(returnItemIds?: boolean): ItemEntry[];
66
+ getUpdatedItems(): ItemEntry[];
67
+ hasAddedItems(): boolean;
68
+ hasRemovedItems(): boolean;
69
+ hasUpdatedItems(): boolean;
70
+ /**
71
+ * @description
72
+ * this doesn't revert updates
73
+ */
74
+ revertChanges(): void;
75
+ onItemsCreated(conversionMap: ConversionMap): void;
76
+ private onAddInitial;
77
+ private onRemoveInitial;
78
+ getUpdatedItemColumns(conversionMap: ItemIdConversionMap): {
79
+ [columnId: string]: ColumnInfo;
80
+ };
81
+ clone(parent: EntryParentNull, conversionMap?: ItemIdConversionMap): CollectionEntry;
82
+ }
@@ -1,12 +1,12 @@
1
- import { ApiQuery, ApiRequestColumns, ApiRequestLimit, EntryParentNull } from '../types';
2
- export declare type CollectionEntryOptionsInterface = Partial<CollectionEntryOptions>;
3
- export declare class CollectionEntryOptions {
4
- columns: ApiRequestColumns;
5
- query: ApiQuery | null;
6
- queryParams: any;
7
- parent: EntryParentNull;
8
- deferRequest: boolean;
9
- limit: ApiRequestLimit | null;
10
- entryKey: string | null;
11
- constructor(values: CollectionEntryOptionsInterface);
12
- }
1
+ import { ApiQuery, ApiRequestColumns, ApiRequestLimit, EntryParentNull } from '../types';
2
+ export declare type CollectionEntryOptionsInterface = Partial<CollectionEntryOptions>;
3
+ export declare class CollectionEntryOptions {
4
+ columns: ApiRequestColumns;
5
+ query: ApiQuery | null;
6
+ queryParams: any;
7
+ parent: EntryParentNull;
8
+ deferRequest: boolean;
9
+ limit: ApiRequestLimit | null;
10
+ entryKey: string | null;
11
+ constructor(values: CollectionEntryOptionsInterface);
12
+ }
@@ -1,41 +1,41 @@
1
- import { LocalCache } from '../classes';
2
- import { CollectionResourceFactory } from '../factories';
3
- import { CollectionEntry, CollectionResourceOptions, ItemEntry, ItemResource, LocalViewResource } from '../models';
4
- import { ItemResourceItemIdMap, PromiseInterface, QueryCallback, ResponseColumnMap } from '../types';
5
- export declare abstract class CollectionResource<T extends ItemResource = LocalViewResource> {
6
- protected factory: CollectionResourceFactory;
7
- entry: CollectionEntry;
8
- options: CollectionResourceOptions;
9
- level: number;
10
- localCache: LocalCache | null;
11
- items: T[];
12
- columns: ResponseColumnMap;
13
- protected itemIdMap: ItemResourceItemIdMap<T>;
14
- private readonly onChange;
15
- protected constructor(factory: CollectionResourceFactory, entry: CollectionEntry, options: CollectionResourceOptions, level: number, localCache: LocalCache | null);
16
- getItemById(itemId: number): T;
17
- rebuildMap(): void;
18
- addItemResources(itemEntries: ItemEntry[]): T[];
19
- /**
20
- * @param itemEntries
21
- * @returns {ItemResource[]}
22
- *
23
- * Returns the Itemresources that where removed Collection.
24
- * Filters on ItemResource.entry === ItemEntry
25
- */
26
- removeItemResources(itemEntries: ItemEntry[]): T[];
27
- callOnAdd(itemResources: T[]): void;
28
- callOnRemove(itemResources: T[]): void;
29
- forEach(callback: (itemResource: T) => void): void;
30
- filter(callback: (itemResource: T) => boolean): T[];
31
- first(callback: (itemResource: T) => boolean): T | null;
32
- some(callback: (itemResource: T) => boolean): boolean;
33
- groupBy(argument: string | ((itemResource: T) => string | null)): {
34
- [key: string]: T[];
35
- };
36
- map<U>(argument: string | ((itemResource: T) => U)): U[];
37
- reduce<U>(callback: (itemResource: T, value: U) => U, value: U): U;
38
- extend(queryCallback: QueryCallback, returnAllItems?: boolean, callOnAdd?: boolean): PromiseInterface<T[]>;
39
- clearResource(): void;
40
- deactivate(): void;
41
- }
1
+ import { LocalCache } from '../classes';
2
+ import { CollectionResourceFactory } from '../factories';
3
+ import { CollectionEntry, CollectionResourceOptions, ItemEntry, ItemResource, LocalViewResource } from '../models';
4
+ import { ItemResourceItemIdMap, PromiseInterface, QueryCallback, ResponseColumnMap } from '../types';
5
+ export declare abstract class CollectionResource<T extends ItemResource = LocalViewResource> {
6
+ protected factory: CollectionResourceFactory;
7
+ entry: CollectionEntry;
8
+ options: CollectionResourceOptions;
9
+ level: number;
10
+ localCache: LocalCache | null;
11
+ items: T[];
12
+ columns: ResponseColumnMap;
13
+ protected itemIdMap: ItemResourceItemIdMap<T>;
14
+ private readonly onChange;
15
+ protected constructor(factory: CollectionResourceFactory, entry: CollectionEntry, options: CollectionResourceOptions, level: number, localCache: LocalCache | null);
16
+ getItemById(itemId: number): T;
17
+ rebuildMap(): void;
18
+ addItemResources(itemEntries: ItemEntry[]): T[];
19
+ /**
20
+ * @param itemEntries
21
+ * @returns {ItemResource[]}
22
+ *
23
+ * Returns the Itemresources that where removed Collection.
24
+ * Filters on ItemResource.entry === ItemEntry
25
+ */
26
+ removeItemResources(itemEntries: ItemEntry[]): T[];
27
+ callOnAdd(itemResources: T[]): void;
28
+ callOnRemove(itemResources: T[]): void;
29
+ forEach(callback: (itemResource: T) => void): void;
30
+ filter(callback: (itemResource: T) => boolean): T[];
31
+ first(callback: (itemResource: T) => boolean): T | null;
32
+ some(callback: (itemResource: T) => boolean): boolean;
33
+ groupBy(argument: string | ((itemResource: T) => string | null)): {
34
+ [key: string]: T[];
35
+ };
36
+ map<U>(argument: string | ((itemResource: T) => U)): U[];
37
+ reduce<U>(callback: (itemResource: T, value: U) => U, value: U): U;
38
+ extend(queryCallback: QueryCallback, returnAllItems?: boolean, callOnAdd?: boolean): PromiseInterface<T[]>;
39
+ clearResource(): void;
40
+ deactivate(): void;
41
+ }
@@ -1,22 +1,22 @@
1
- import { CollectionEntry, CollectionResource, ItemEntry, ItemResource } from '../models';
2
- import { ConversionMap, OnChangeFunction } from '../types';
3
- export declare type CollectionResourceCallback = (itemResources: ItemResource[], collectionResource: CollectionResource) => void;
4
- export declare type CollectionResourceInitialCallback = (itemEntries: ItemEntry[], collectionEntry: CollectionEntry) => void;
5
- export declare type OnItemsCreatedCallback = (conversionMap: ConversionMap) => void;
6
- export declare type CollectionResourceOptionsInterface = Partial<CollectionResourceOptions>;
7
- export declare class CollectionResourceOptions {
8
- editItems: boolean;
9
- remoteItems: boolean;
10
- editCollection: boolean;
11
- modInstant: boolean;
12
- enableSave: boolean;
13
- onItemsCreated: OnItemsCreatedCallback;
14
- onChange: OnChangeFunction;
15
- onAdd: CollectionResourceCallback;
16
- onRemove: CollectionResourceCallback;
17
- onAddInitial: CollectionResourceInitialCallback;
18
- onRemoveInitial: CollectionResourceInitialCallback;
19
- resourceKey: string | null;
20
- custom: any;
21
- constructor(values: CollectionResourceOptionsInterface);
22
- }
1
+ import { CollectionEntry, CollectionResource, ItemEntry, ItemResource } from '../models';
2
+ import { ConversionMap, OnChangeFunction } from '../types';
3
+ export declare type CollectionResourceCallback = (itemResources: ItemResource[], collectionResource: CollectionResource) => void;
4
+ export declare type CollectionResourceInitialCallback = (itemEntries: ItemEntry[], collectionEntry: CollectionEntry) => void;
5
+ export declare type OnItemsCreatedCallback = (conversionMap: ConversionMap) => void;
6
+ export declare type CollectionResourceOptionsInterface = Partial<CollectionResourceOptions>;
7
+ export declare class CollectionResourceOptions {
8
+ editItems: boolean;
9
+ remoteItems: boolean;
10
+ editCollection: boolean;
11
+ modInstant: boolean;
12
+ enableSave: boolean;
13
+ onItemsCreated: OnItemsCreatedCallback;
14
+ onChange: OnChangeFunction;
15
+ onAdd: CollectionResourceCallback;
16
+ onRemove: CollectionResourceCallback;
17
+ onAddInitial: CollectionResourceInitialCallback;
18
+ onRemoveInitial: CollectionResourceInitialCallback;
19
+ resourceKey: string | null;
20
+ custom: any;
21
+ constructor(values: CollectionResourceOptionsInterface);
22
+ }
@@ -1,6 +1,6 @@
1
- import { LocalCache } from '../classes';
2
- import { CollectionResourceFactory } from '../factories';
3
- import { CollectionEntry, CollectionResource, CollectionResourceOptions, ItemResource, LocalViewResource } from '../models';
4
- export declare class CollectionViewResource<T extends ItemResource = LocalViewResource> extends CollectionResource<T> {
5
- constructor(collectionResourceFactory: CollectionResourceFactory, collectionEntry: CollectionEntry, options: CollectionResourceOptions, level: number, localCache: LocalCache | null);
6
- }
1
+ import { LocalCache } from '../classes';
2
+ import { CollectionResourceFactory } from '../factories';
3
+ import { CollectionEntry, CollectionResource, CollectionResourceOptions, ItemResource, LocalViewResource } from '../models';
4
+ export declare class CollectionViewResource<T extends ItemResource = LocalViewResource> extends CollectionResource<T> {
5
+ constructor(collectionResourceFactory: CollectionResourceFactory, collectionEntry: CollectionEntry, options: CollectionResourceOptions, level: number, localCache: LocalCache | null);
6
+ }
@@ -1,18 +1,18 @@
1
- import { LocalCache } from '../classes';
2
- import { ItemResourceFactory } from '../factories';
3
- import { ItemEntry, ItemResource, ItemResourceOptions } from '../models';
4
- import { FieldMap, PromiseInterface } from '../types';
5
- export declare class EditResource extends ItemResource {
6
- protected localCopies: FieldMap[];
7
- protected transactions: number;
8
- constructor(factory: ItemResourceFactory, entry: ItemEntry, options: ItemResourceOptions, isNew: boolean, localCache: LocalCache | null);
9
- isNew(): boolean;
10
- start(): this;
11
- rollback(): this;
12
- commit(callOnChange?: boolean): this;
13
- getLocalCopy(): FieldMap | null;
14
- copyFields(destination?: FieldMap): FieldMap;
15
- setFields(values: FieldMap, callOnChange?: boolean): this;
16
- callOnChange(previous?: FieldMap): this;
17
- save(parameters?: any): PromiseInterface<this>;
18
- }
1
+ import { LocalCache } from '../classes';
2
+ import { ItemResourceFactory } from '../factories';
3
+ import { ItemEntry, ItemResource, ItemResourceOptions } from '../models';
4
+ import { FieldMap, PromiseInterface } from '../types';
5
+ export declare class EditResource extends ItemResource {
6
+ protected localCopies: FieldMap[];
7
+ protected transactions: number;
8
+ constructor(factory: ItemResourceFactory, entry: ItemEntry, options: ItemResourceOptions, isNew: boolean, localCache: LocalCache | null);
9
+ isNew(): boolean;
10
+ start(): this;
11
+ rollback(): this;
12
+ commit(callOnChange?: boolean): this;
13
+ getLocalCopy(): FieldMap | null;
14
+ copyFields(destination?: FieldMap): FieldMap;
15
+ setFields(values: FieldMap, callOnChange?: boolean): this;
16
+ callOnChange(previous?: FieldMap): this;
17
+ save(parameters?: any): PromiseInterface<this>;
18
+ }
@@ -1,70 +1,70 @@
1
- import { ColumnSet } from '../classes';
2
- import { ItemEntryFactory } from '../factories';
3
- import { Deferred } from '../interfaces';
4
- import { ColumnExpansionResult, EntryParentNull, FieldMap, ItemError, ItemId, ItemIdConversionMap, ItemType, PromiseInterface } from '../types';
5
- export declare class ItemEntry {
6
- private factory;
7
- itemType: string;
8
- itemId: ItemId;
9
- columns: ColumnSet;
10
- id: number;
11
- reloadQueued: boolean;
12
- deferRequest: boolean;
13
- deferred?: Deferred<this>;
14
- parent: EntryParentNull;
15
- initial: FieldMap;
16
- modified: FieldMap;
17
- derived: FieldMap;
18
- constructor(factory: ItemEntryFactory, itemType: string, itemId: ItemId, columns: ColumnSet);
19
- private getResources;
20
- queueReload(): this;
21
- defer(deferRequest?: boolean): this;
22
- getPromise(): PromiseInterface<this>;
23
- resolve(): this;
24
- resolveDeferred(initial: FieldMap, derived: FieldMap, columns: ColumnSet): this;
25
- isDeferred(): boolean;
26
- reject(error?: ItemError): this;
27
- setFields(initial: FieldMap, derived: FieldMap): this;
28
- setLocalFields(initialValues: FieldMap, conversionMap: ItemIdConversionMap, columns?: ColumnSet): this;
29
- clone(conversionMap?: ItemIdConversionMap): ItemEntry;
30
- resetDerived(columnIds: string[]): this;
31
- getFields(): FieldMap;
32
- expand(main: FieldMap, derived: FieldMap, columnExpansionResult: ColumnExpansionResult): this;
33
- expandLocal(columnExpansionResult: ColumnExpansionResult): this;
34
- private setLocalValues;
35
- /**
36
- * This function assumes the initial, modified, derived properties are already set. It will update the values
37
- * themselves to preserve references in existing item resources.
38
- */
39
- updateFields(fields: FieldMap, derived?: FieldMap | null, overwrite?: boolean): this;
40
- private updateItemValues;
41
- updateItemFields(conversionMap: ItemIdConversionMap, columns?: ColumnSet): this;
42
- formatRequest(): FieldMap;
43
- setDisplayName(): this;
44
- getDisplayName(): string;
45
- /**
46
- * @param {Boolean} returnAll Returns all initial values if true
47
- * @returns {Object}
48
- */
49
- getChanges(returnAll?: boolean): FieldMap;
50
- isLocal(): boolean;
51
- isLockable(): boolean;
52
- hasChanges(): boolean;
53
- resetModified(): this;
54
- setInitial(values: FieldMap, enableCallbacks?: boolean): this;
55
- /**
56
- * Does a shallow copy of values!
57
- */
58
- setModified(values?: FieldMap): this;
59
- setDerived(values: FieldMap): this;
60
- setParent(parentType: ItemType, parentId: ItemId): this;
61
- callOnChange(previous?: FieldMap): this;
62
- toJSON(): {
63
- id: number;
64
- parent: EntryParentNull;
65
- initial: FieldMap;
66
- modified: FieldMap;
67
- derived: FieldMap;
68
- columns: ColumnSet;
69
- };
70
- }
1
+ import { ColumnSet } from '../classes';
2
+ import { ItemEntryFactory } from '../factories';
3
+ import { Deferred } from '../interfaces';
4
+ import { ColumnExpansionResult, EntryParentNull, FieldMap, ItemError, ItemId, ItemIdConversionMap, ItemType, PromiseInterface } from '../types';
5
+ export declare class ItemEntry {
6
+ private factory;
7
+ itemType: string;
8
+ itemId: ItemId;
9
+ columns: ColumnSet;
10
+ id: number;
11
+ reloadQueued: boolean;
12
+ deferRequest: boolean;
13
+ deferred?: Deferred<this>;
14
+ parent: EntryParentNull;
15
+ initial: FieldMap;
16
+ modified: FieldMap;
17
+ derived: FieldMap;
18
+ constructor(factory: ItemEntryFactory, itemType: string, itemId: ItemId, columns: ColumnSet);
19
+ private getResources;
20
+ queueReload(): this;
21
+ defer(deferRequest?: boolean): this;
22
+ getPromise(): PromiseInterface<this>;
23
+ resolve(): this;
24
+ resolveDeferred(initial: FieldMap, derived: FieldMap, columns: ColumnSet): this;
25
+ isDeferred(): boolean;
26
+ reject(error?: ItemError): this;
27
+ setFields(initial: FieldMap, derived: FieldMap): this;
28
+ setLocalFields(initialValues: FieldMap, conversionMap: ItemIdConversionMap, columns?: ColumnSet): this;
29
+ clone(conversionMap?: ItemIdConversionMap): ItemEntry;
30
+ resetDerived(columnIds: string[]): this;
31
+ getFields(): FieldMap;
32
+ expand(main: FieldMap, derived: FieldMap, columnExpansionResult: ColumnExpansionResult): this;
33
+ expandLocal(columnExpansionResult: ColumnExpansionResult): this;
34
+ private setLocalValues;
35
+ /**
36
+ * This function assumes the initial, modified, derived properties are already set. It will update the values
37
+ * themselves to preserve references in existing item resources.
38
+ */
39
+ updateFields(fields: FieldMap, derived?: FieldMap | null, overwrite?: boolean): this;
40
+ private updateItemValues;
41
+ updateItemFields(conversionMap: ItemIdConversionMap, columns?: ColumnSet): this;
42
+ formatRequest(): FieldMap;
43
+ setDisplayName(): this;
44
+ getDisplayName(): string;
45
+ /**
46
+ * @param {Boolean} returnAll Returns all initial values if true
47
+ * @returns {Object}
48
+ */
49
+ getChanges(returnAll?: boolean): FieldMap;
50
+ isLocal(): boolean;
51
+ isLockable(): boolean;
52
+ hasChanges(): boolean;
53
+ resetModified(): this;
54
+ setInitial(values: FieldMap, enableCallbacks?: boolean): this;
55
+ /**
56
+ * Does a shallow copy of values!
57
+ */
58
+ setModified(values?: FieldMap): this;
59
+ setDerived(values: FieldMap): this;
60
+ setParent(parentType: ItemType, parentId: ItemId): this;
61
+ callOnChange(previous?: FieldMap): this;
62
+ toJSON(): {
63
+ id: number;
64
+ parent: EntryParentNull;
65
+ initial: FieldMap;
66
+ modified: FieldMap;
67
+ derived: FieldMap;
68
+ columns: ColumnSet;
69
+ };
70
+ }
@@ -1,11 +1,11 @@
1
- import { ApiRequestColumnMap, ApiRequestColumns, EntryParentNull } from '../types';
2
- export declare type ItemEntryOptionsInterface = Partial<ItemEntryOptions>;
3
- export declare class ItemEntryOptions {
4
- columns: ApiRequestColumns;
5
- parent: EntryParentNull;
6
- templateOptions: any;
7
- templateColumns: ApiRequestColumnMap;
8
- deferRequest: boolean;
9
- isDuplicate: boolean;
10
- constructor(values: ItemEntryOptionsInterface);
11
- }
1
+ import { ApiRequestColumnMap, ApiRequestColumns, EntryParentNull } from '../types';
2
+ export declare type ItemEntryOptionsInterface = Partial<ItemEntryOptions>;
3
+ export declare class ItemEntryOptions {
4
+ columns: ApiRequestColumns;
5
+ parent: EntryParentNull;
6
+ templateOptions: any;
7
+ templateColumns: ApiRequestColumnMap;
8
+ deferRequest: boolean;
9
+ isDuplicate: boolean;
10
+ constructor(values: ItemEntryOptionsInterface);
11
+ }
@@ -1,27 +1,27 @@
1
- import { LocalCache } from '../classes';
2
- import { ItemResourceFactory } from '../factories';
3
- import { ItemEntry, ItemResourceOptions } from '../models';
4
- import { FieldMap, ResponseColumn } from '../types';
5
- export declare abstract class ItemResource {
6
- protected readonly factory: ItemResourceFactory;
7
- readonly entry: ItemEntry;
8
- readonly options: ItemResourceOptions;
9
- protected readonly _isNew: boolean;
10
- protected readonly localCache: LocalCache | null;
11
- columns: {
12
- [columnId: string]: ResponseColumn;
13
- };
14
- fields: FieldMap;
15
- derived: FieldMap;
16
- protected constructor(factory: ItemResourceFactory, entry: ItemEntry, options: ItemResourceOptions, _isNew: boolean, localCache: LocalCache | null);
17
- isNew(): boolean;
18
- isLocal(): boolean;
19
- clearResource(): void;
20
- deactivate(): void;
21
- toJSON(): {
22
- columns: string[];
23
- fields: FieldMap;
24
- derived: FieldMap;
25
- entry: ItemEntry;
26
- };
27
- }
1
+ import { LocalCache } from '../classes';
2
+ import { ItemResourceFactory } from '../factories';
3
+ import { ItemEntry, ItemResourceOptions } from '../models';
4
+ import { FieldMap, ResponseColumn } from '../types';
5
+ export declare abstract class ItemResource {
6
+ protected readonly factory: ItemResourceFactory;
7
+ readonly entry: ItemEntry;
8
+ readonly options: ItemResourceOptions;
9
+ protected readonly _isNew: boolean;
10
+ protected readonly localCache: LocalCache | null;
11
+ columns: {
12
+ [columnId: string]: ResponseColumn;
13
+ };
14
+ fields: FieldMap;
15
+ derived: FieldMap;
16
+ protected constructor(factory: ItemResourceFactory, entry: ItemEntry, options: ItemResourceOptions, _isNew: boolean, localCache: LocalCache | null);
17
+ isNew(): boolean;
18
+ isLocal(): boolean;
19
+ clearResource(): void;
20
+ deactivate(): void;
21
+ toJSON(): {
22
+ columns: string[];
23
+ fields: FieldMap;
24
+ derived: FieldMap;
25
+ entry: ItemEntry;
26
+ };
27
+ }
@@ -1,8 +1,8 @@
1
- import { OnChangeFunction } from '../types';
2
- export declare type ItemResourceOptionsInterface = Partial<ItemResourceOptions>;
3
- export declare class ItemResourceOptions {
4
- edit: boolean;
5
- remote: boolean;
6
- onChange: OnChangeFunction;
7
- constructor(values: ItemResourceOptionsInterface);
8
- }
1
+ import { OnChangeFunction } from '../types';
2
+ export declare type ItemResourceOptionsInterface = Partial<ItemResourceOptions>;
3
+ export declare class ItemResourceOptions {
4
+ edit: boolean;
5
+ remote: boolean;
6
+ onChange: OnChangeFunction;
7
+ constructor(values: ItemResourceOptionsInterface);
8
+ }