@rentman/rm-core 1.0.20 → 1.0.22

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 (33) hide show
  1. package/dist/definitions/src/classes/ApiRequestService.d.ts +10 -9
  2. package/dist/definitions/src/classes/ApiResponseProcessor.d.ts +4 -3
  3. package/dist/definitions/src/classes/BatchStatus.d.ts +11 -8
  4. package/dist/definitions/src/classes/CollectionCache.d.ts +14 -12
  5. package/dist/definitions/src/classes/CollectionEntryService.d.ts +10 -2
  6. package/dist/definitions/src/classes/CollectionHandler.d.ts +15 -23
  7. package/dist/definitions/src/classes/ColumnHandler.d.ts +3 -3
  8. package/dist/definitions/src/classes/ColumnUtil.d.ts +1 -0
  9. package/dist/definitions/src/classes/ItemAdministrator.d.ts +46 -20
  10. package/dist/definitions/src/classes/ItemCache.d.ts +1 -1
  11. package/dist/definitions/src/classes/ItemEntryService.d.ts +4 -3
  12. package/dist/definitions/src/classes/ItemHandler.d.ts +41 -22
  13. package/dist/definitions/src/classes/ItemRequestService.d.ts +5 -4
  14. package/dist/definitions/src/classes/ItemResourceService.d.ts +3 -4
  15. package/dist/definitions/src/classes/ModuleChangesCompiler.d.ts +5 -1
  16. package/dist/definitions/src/classes/QueryParser.d.ts +1 -1
  17. package/dist/definitions/src/classes/ResourceCache.d.ts +2 -2
  18. package/dist/definitions/src/classes/SocketMessageHandler.d.ts +1 -5
  19. package/dist/definitions/src/classes/Util.d.ts +1 -1
  20. package/dist/definitions/src/constants.d.ts +8 -8
  21. package/dist/definitions/src/factories/CollectionResourceFactory.d.ts +3 -1
  22. package/dist/definitions/src/factories/QueryParserFactory.d.ts +1 -1
  23. package/dist/definitions/src/index.d.ts +2 -2
  24. package/dist/definitions/src/interfaces/ApiRequestServiceInterface.d.ts +8 -8
  25. package/dist/definitions/src/models/CollectionEntry.d.ts +7 -6
  26. package/dist/definitions/src/models/CollectionResource.d.ts +19 -11
  27. package/dist/definitions/src/models/EditResource.d.ts +0 -1
  28. package/dist/definitions/src/models/ViewResource.d.ts +0 -1
  29. package/dist/definitions/src/types/ItemTypesCollection.d.ts +52 -0
  30. package/dist/rm-core.js +185 -75
  31. package/package.json +1 -1
  32. package/readme.md +2 -2
  33. package/dist/definitions/src/models/Column.d.ts +0 -2
@@ -38,8 +38,8 @@ import ApiRequestServiceInterface from './interfaces/ApiRequestServiceInterface'
38
38
  import AuthInterface from './interfaces/AuthInterface';
39
39
  import ErrorHandlerInterface from './interfaces/ErrorHandlerInterface';
40
40
  import ResourceCacheInterface from './interfaces/ResourceCacheInterface';
41
- import SocketMessageInterface from './interfaces/SocketMessageInterface';
42
41
  export default class RmCore {
42
+ version: string;
43
43
  promiseService: PromiseService;
44
44
  apiFormatter: ApiFormatter;
45
45
  keyService: KeyService;
@@ -77,7 +77,7 @@ export default class RmCore {
77
77
  socketMessageHandler: SocketMessageHandler;
78
78
  apiRequestService: ApiRequestService;
79
79
  destroy: () => void;
80
- constructor(externalApiRequestService: ApiRequestServiceInterface, resourceCacheInterface: ResourceCacheInterface, authInterface: AuthInterface, errorHandlerInterface: ErrorHandlerInterface, socketMessageService: SocketMessageInterface);
80
+ constructor(externalApiRequestService: ApiRequestServiceInterface, resourceCacheInterface: ResourceCacheInterface, authInterface: AuthInterface, errorHandlerInterface: ErrorHandlerInterface);
81
81
  }
82
82
  export declare function noop(): void;
83
83
  export declare function identity(value: any): any;
@@ -1,10 +1,10 @@
1
1
  export default interface ApiRequestServiceInterface {
2
- template(itemType: string, params: any): Promise<any>;
3
- create(itemType: string, itemId: number, values: any, parentType?: string, parentId?: number): Promise<any>;
4
- delete(itemType: string, itemIds: number[]): Promise<any>;
5
- updateItems(itemType: string, items: object, columns: any): Promise<any>;
6
- requestSkeleton(params: any, requestCanceler?: Promise<any>): Promise<any>;
7
- moveItems(parentType: string, parentId: number, items: object): Promise<any>;
8
- columns(itemType: string, columns: object, params?: any): Promise<any>;
9
- query(itemType: string, query: object, columns: object, allLinks?: boolean, limit?: object): Promise<any>;
2
+ template(itemType: string, params: any): PromiseLike<any>;
3
+ create(itemType: string, itemId: number, values: any, parentType?: string, parentId?: number): PromiseLike<any>;
4
+ delete(itemType: string, itemIds: number[]): PromiseLike<any>;
5
+ updateItems(itemType: string, items: object, columns: any): PromiseLike<any>;
6
+ requestSkeleton(params: any, requestCanceler?: PromiseLike<any>): PromiseLike<any>;
7
+ moveItems(parentType: string, parentId: number, items: object): PromiseLike<any>;
8
+ columns(itemType: string, columns: object, params?: any): PromiseLike<any>;
9
+ query(itemType: string, query: object, columns: object, allLinks?: boolean, limit?: object): PromiseLike<any>;
10
10
  }
@@ -7,6 +7,7 @@ import QueryService from "../classes/QueryService";
7
7
  import ErrorHandlerInterface from '../interfaces/ErrorHandlerInterface';
8
8
  import CollectionResource from "./CollectionResource";
9
9
  import ItemEntry from "./ItemEntry";
10
+ import ItemResource from './ItemResource';
10
11
  export default class CollectionEntry {
11
12
  private errorHandler;
12
13
  private collectionEntryService;
@@ -32,19 +33,19 @@ export default class CollectionEntry {
32
33
  reloadQueued: boolean;
33
34
  constructor(errorHandler: ErrorHandlerInterface, collectionEntryService: CollectionEntryService, itemRequestService: ItemRequestService, itemEntryService: ItemEntryService, keyService: KeyService, queryService: QueryService, promiseService: PromiseService, itemType: string, options: any);
34
35
  isDeferred(): boolean;
35
- resolve(itemEntryResource: any): this;
36
+ resolve(itemEntryResource: any): CollectionEntry;
36
37
  isLocal(): boolean;
37
38
  matchParent(itemType: any, itemId: any): boolean;
38
- forEach(callback: any): void;
39
+ forEach(callback: (itemEntry: ItemEntry) => void): void;
39
40
  getItemById(itemId: any): ItemEntry;
40
- getIdArray(accumulator?: any[]): any;
41
- addItems(itemEntries: any, resultResource: any, updateInitial?: boolean, enableCallback?: boolean): any;
41
+ getIdArray(accumulator?: any[]): number[];
42
+ addItems(itemEntries: any, resultResource: any, updateInitial?: boolean, enableCallback?: boolean): ItemResource[];
42
43
  removeItems(idArray: any, resultResource: any, updateInitial: any, enableCallback?: any): any;
43
44
  clear(resultResource: any, updateInitial: any, enableCallback?: any): any;
44
- handleRemovedItems(filterFunction: any, resultResource: any, updateInitial: any, enableCallback: any): any;
45
+ handleRemovedItems(filterFunction: any, resultResource: any, updateInitial: any, enableCallback?: boolean): any;
45
46
  expand(newColumns: any): any;
46
47
  extendQuery(callback: any): any;
47
- extend(queryCallback: any, collectionResource: any, enableCallback?: any, updateInitial?: any): Promise<any>;
48
+ extend(queryCallback: any, collectionResource: any, enableCallback?: any, updateInitial?: any): PromiseLike<any>;
48
49
  queueReload(): void;
49
50
  updateColumns(columnExpansion: any): void;
50
51
  getAddedItems(returnItemIds?: boolean): any[];
@@ -2,28 +2,36 @@ import ItemResourceFactory from "../factories/ItemResourceFactory";
2
2
  import CollectionEntry from './CollectionEntry';
3
3
  import ItemEntry from "./ItemEntry";
4
4
  import ItemResource from "./ItemResource";
5
+ import { ItemResourceItemIdMap } from '../types/ItemTypesCollection';
5
6
  export default class CollectionResource {
6
7
  private itemResourceFactory;
7
8
  entry: CollectionEntry;
8
9
  options: any;
9
- columns: any;
10
10
  items: ItemResource[];
11
- itemIdMap: {};
11
+ itemIdMap: ItemResourceItemIdMap;
12
+ columns: any;
12
13
  constructor(itemResourceFactory: ItemResourceFactory, entry: CollectionEntry, options: any);
13
- getItemById(itemId: any): any;
14
+ getItemById(itemId: number): ItemResource;
14
15
  rebuildMap(): void;
15
- addItemResources(itemEntries: ItemEntry[]): any[];
16
- removeItemResources(itemEntries: any): any[];
16
+ addItemResources(itemEntries: ItemEntry[]): ItemResource[];
17
+ /**
18
+ * @param itemEntries
19
+ * @returns {ItemResource[]}
20
+ *
21
+ * Returns the Itemresources that where removed Collection.
22
+ * Filters on ItemResource.entry === ItemEntry
23
+ */
24
+ removeItemResources(itemEntries: ItemEntry[]): ItemResource[];
17
25
  callOnAdd(itemResources: ItemResource[]): void;
18
26
  callOnRemove(itemResources: ItemResource[]): void;
19
- forEach(callback: any): void;
20
- filter(callback: any): any[];
21
- first(callback: any): ItemResource;
22
- some(callback: any): boolean;
27
+ forEach(callback: (itemResource: ItemResource) => void): void;
28
+ filter(callback: (itemResource: ItemResource) => boolean): any[];
29
+ first(callback: (itemResource: ItemResource) => boolean): ItemResource;
30
+ some(callback: (itemResource: ItemResource) => boolean): boolean;
23
31
  groupBy(argument: any): {};
24
32
  map(argument: any): any[];
25
- reduce(callback: any, value: any): any;
26
- extend(queryCallback: any, returnAllItems: any, enableCallbacks: any): Promise<any>;
33
+ reduce<T>(callback: (itemResource: ItemResource, value: T) => T, value: T): T;
34
+ extend(queryCallback: any, returnAllItems: any, enableCallbacks: any): PromiseLike<ItemResource[]>;
27
35
  deactivate(): void;
28
36
  clearResource(): void;
29
37
  }
@@ -14,7 +14,6 @@ export declare class EditResource extends ItemResource {
14
14
  private collectionHandler;
15
15
  private errorHandler;
16
16
  private promiseService;
17
- fields: any;
18
17
  localCopies: any[];
19
18
  transactions: number;
20
19
  hasChanges: boolean;
@@ -2,6 +2,5 @@ import ItemEntryService from '../classes/ItemEntryService';
2
2
  import ItemEntry from "./ItemEntry";
3
3
  import ItemResource from "./ItemResource";
4
4
  export declare class ViewResource extends ItemResource {
5
- fields: any;
6
5
  constructor(itemEntryService: ItemEntryService, entry: ItemEntry, options: any);
7
6
  }
@@ -0,0 +1,52 @@
1
+ import ItemResource from '../models/ItemResource';
2
+ import CollectionResource from '../models/CollectionResource';
3
+ import ItemEntry from '../models/ItemEntry';
4
+ import CollectionEntry from '../models/CollectionEntry';
5
+ import { ENTRY_STATUS } from '../constants';
6
+ export declare type ItemResourceItemIdMap = {
7
+ [itemId: number]: ItemResource;
8
+ };
9
+ export declare type ItemResourceItemTypeMap = {
10
+ [itemType: string]: ItemResource;
11
+ };
12
+ export declare type ItemEntryEntryStatusMap = {
13
+ [entryStatus: string]: ItemEntry[];
14
+ };
15
+ export declare type CollectionEntryBatchStatusMap = {
16
+ [status: string]: CollectionEntryParentIdMap;
17
+ };
18
+ export declare type CollectionEntryParentIdMap = {
19
+ [parentId: number]: CollectionEntry;
20
+ };
21
+ export declare type CollectionEntryItemTypeMap = {
22
+ [itemType: string]: CollectionEntry[];
23
+ };
24
+ export declare type CollectionResourceParentIdMap = {
25
+ [parentId: number]: CollectionResource;
26
+ };
27
+ export interface ApiTemplate {
28
+ fields: any;
29
+ columns: any;
30
+ response: any;
31
+ responseColumns: any;
32
+ }
33
+ export declare type TemplateResponseItemEntryMap = {
34
+ main: ItemEntry;
35
+ linked: TemplateResponseLinkedItemEntryMap[];
36
+ };
37
+ export declare type TemplateResponseLinkedItemEntryMap = {
38
+ itemType: string;
39
+ itemEntries: {
40
+ [itemType: string]: ItemEntry[];
41
+ };
42
+ };
43
+ export declare type ApiTemplateItemTypeMap = {
44
+ [itemType: string]: ApiTemplate;
45
+ };
46
+ export declare type ItemTypeMap = {
47
+ [itemType: string]: any;
48
+ };
49
+ export declare type EntryStatus<T> = {
50
+ entry: T;
51
+ status: ENTRY_STATUS;
52
+ };