ismx-nexo-node-app 0.4.144 → 0.4.149

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.
@@ -57,15 +57,11 @@ class ServiceRestFormalTemplate {
57
57
  }
58
58
  getFormalPage(request) {
59
59
  var _a, _b;
60
- let maxResultsStr = (_a = request.query) === null || _a === void 0 ? void 0 : _a["maxResults"];
61
- if (!maxResultsStr)
62
- throw new Error();
63
- let maxResults = Number.parseInt(maxResultsStr);
64
- let pageNumberStr = (_b = request.query) === null || _b === void 0 ? void 0 : _b["pageNumber"];
65
- if (!pageNumberStr)
66
- throw new Error();
67
- let pageNumber = Number.parseInt(pageNumberStr);
68
- return { maxResults, pageNumber };
60
+ let sizeStr = (_a = request.query) === null || _a === void 0 ? void 0 : _a["size"];
61
+ let size = Number.isInteger(sizeStr) ? Number.parseInt(sizeStr) : 50;
62
+ let pageStr = (_b = request.query) === null || _b === void 0 ? void 0 : _b["page"];
63
+ let page = Number.isInteger(pageStr) ? Number.parseInt(pageStr) : 0;
64
+ return { size, page };
69
65
  }
70
66
  extendEntity(entity) {
71
67
  return __awaiter(this, void 0, void 0, function* () {
@@ -110,9 +106,9 @@ class ServiceRestFormalTemplate {
110
106
  */
111
107
  servePage(request) {
112
108
  return __awaiter(this, void 0, void 0, function* () {
113
- let { maxResults, pageNumber } = this.getFormalPage(request);
109
+ let { size, page } = this.getFormalPage(request);
114
110
  let filters = Object.assign(Object.assign({}, this.extendFilters(request)), request.query);
115
- let result = yield this.database.page(this.tableName, "timestamp", maxResults, pageNumber, filters);
111
+ let result = yield this.database.page(this.tableName, "timestamp", size, page, filters);
116
112
  result.elements = yield Promise.all(result.elements.map((entity) => this.extendEntity(entity)));
117
113
  return Service_1.HttpResponse.ok(result);
118
114
  });
@@ -48,6 +48,11 @@ class FormalLoopbackBusiness extends LoopbackBusiness_1.default {
48
48
  return this.call(tag, 'GET', '/map', request);
49
49
  });
50
50
  }
51
+ page(tag_1) {
52
+ return __awaiter(this, arguments, void 0, function* (tag, request = {}) {
53
+ return this.call(tag, 'GET', '/page', request);
54
+ });
55
+ }
51
56
  exist(tag_1) {
52
57
  return __awaiter(this, arguments, void 0, function* (tag, request = {}) {
53
58
  return this.call(tag, 'GET', '/exist', request);
@@ -43,6 +43,11 @@ class FormalProxyBusiness extends ProxyBusiness_1.default {
43
43
  return this.call(tag, 'GET', '/keymap', request);
44
44
  });
45
45
  }
46
+ page(tag_1) {
47
+ return __awaiter(this, arguments, void 0, function* (tag, request = {}) {
48
+ return this.call(tag, 'GET', '/page', request);
49
+ });
50
+ }
46
51
  map(tag_1) {
47
52
  return __awaiter(this, arguments, void 0, function* (tag, request = {}) {
48
53
  return this.call(tag, 'GET', '/map', request);
@@ -31,8 +31,8 @@ export default class ServiceRestFormalTemplate<Model = any> {
31
31
  protected indexer: string;
32
32
  getFormalId(request: HttpRequest): string;
33
33
  getFormalPage(request: HttpRequest): {
34
- maxResults: number;
35
- pageNumber: number;
34
+ size: number;
35
+ page: number;
36
36
  };
37
37
  extendEntity<T extends Model = Model>(entity: Model): Promise<T>;
38
38
  extendFilters(request: HttpRequest): Partial<Transient<Model>>;
@@ -1,5 +1,6 @@
1
1
  import { HttpRequest } from "../api/Service";
2
2
  import LoopbackBusiness from "./LoopbackBusiness";
3
+ import { Pagination } from "../index";
3
4
  export default class FormalLoopbackBusiness extends LoopbackBusiness {
4
5
  constructor();
5
6
  get<Res>(tag: string, request?: HttpRequest): Promise<Res>;
@@ -12,6 +13,7 @@ export default class FormalLoopbackBusiness extends LoopbackBusiness {
12
13
  map<Res>(tag: string, request?: HttpRequest): Promise<{
13
14
  [key: string]: Res;
14
15
  }>;
16
+ page<Res>(tag: string, request?: HttpRequest): Promise<Pagination<Res>>;
15
17
  exist(tag: string, request?: HttpRequest): Promise<boolean>;
16
18
  post<Res>(tag: string, request?: HttpRequest): Promise<Res>;
17
19
  put<Res>(tag: string, request?: HttpRequest): Promise<Res>;
@@ -1,5 +1,6 @@
1
1
  import { HttpRequest } from "../api/Service";
2
2
  import ProxyBusiness from "./ProxyBusiness";
3
+ import { Pagination } from "../index";
3
4
  export default class FormalProxyBusiness extends ProxyBusiness {
4
5
  constructor();
5
6
  get<Res>(tag: string, request?: HttpRequest): Promise<Res>;
@@ -9,6 +10,7 @@ export default class FormalProxyBusiness extends ProxyBusiness {
9
10
  keymap(tag: string, request?: HttpRequest): Promise<{
10
11
  [key: string]: string;
11
12
  }>;
13
+ page<Res>(tag: string, request?: HttpRequest): Promise<Pagination<Res>>;
12
14
  map<Res>(tag: string, request?: HttpRequest): Promise<{
13
15
  [key: string]: Res;
14
16
  }>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ismx-nexo-node-app",
3
- "version": "0.4.144",
3
+ "version": "0.4.149",
4
4
  "description": "",
5
5
  "scripts": {
6
6
  "build": "rm -rf ./dist && npx tsc",
@@ -68,14 +68,12 @@ export default class ServiceRestFormalTemplate<Model=any>
68
68
  else return id;
69
69
  }
70
70
 
71
- getFormalPage(request: HttpRequest): { maxResults: number, pageNumber: number } {
72
- let maxResultsStr = request.query?.["maxResults"];
73
- if (!maxResultsStr) throw new Error();
74
- let maxResults = Number.parseInt(maxResultsStr);
75
- let pageNumberStr = request.query?.["pageNumber"];
76
- if (!pageNumberStr) throw new Error();
77
- let pageNumber = Number.parseInt(pageNumberStr);
78
- return { maxResults, pageNumber }
71
+ getFormalPage(request: HttpRequest): { size: number, page: number } {
72
+ let sizeStr = request.query?.["size"];
73
+ let size = Number.isInteger(sizeStr) ? Number.parseInt(sizeStr!) : 50;
74
+ let pageStr = request.query?.["page"];
75
+ let page = Number.isInteger(pageStr) ? Number.parseInt(pageStr!) : 0;
76
+ return { size, page };
79
77
  }
80
78
 
81
79
  async extendEntity<T extends Model = Model>(entity : Model) : Promise<T> {
@@ -118,9 +116,9 @@ export default class ServiceRestFormalTemplate<Model=any>
118
116
  * @return {Promise<HttpResponse<Pagination<Model>>>} A promise resolving to an HTTP response containing the paginated list of entities.
119
117
  */
120
118
  protected async servePage(request: HttpRequest): Promise<HttpResponse<Pagination<Model>>> {
121
- let { maxResults, pageNumber } = this.getFormalPage(request);
119
+ let { size, page } = this.getFormalPage(request);
122
120
  let filters = { ...this.extendFilters(request), ...request.query };
123
- let result = await this.database.page<Model>(this.tableName, "timestamp", maxResults, pageNumber, filters);
121
+ let result = await this.database.page<Model>(this.tableName, "timestamp", size, page, filters);
124
122
  result.elements = await Promise.all(result.elements.map((entity) => this.extendEntity(entity)));
125
123
  return HttpResponse.ok(result);
126
124
  }
@@ -6,6 +6,7 @@ import fetch from "node-fetch";
6
6
  import LoopbackBusiness from "./LoopbackBusiness";
7
7
  import RepositoryRestFormal from "../repository/RepositoryRestFormal";
8
8
  import RepositoryRest from "../repository/RepositoryRest";
9
+ import {Pagination} from "../index";
9
10
 
10
11
  export default class FormalLoopbackBusiness extends LoopbackBusiness {
11
12
 
@@ -37,6 +38,10 @@ export default class FormalLoopbackBusiness extends LoopbackBusiness {
37
38
  return this.call<{ [key:string]: Res }>(tag, 'GET', '/map', request);
38
39
  }
39
40
 
41
+ async page<Res>(tag: string, request: HttpRequest = {}): Promise<Pagination<Res>> {
42
+ return this.call<Pagination<Res>>(tag, 'GET', '/page', request);
43
+ }
44
+
40
45
  async exist(tag: string, request: HttpRequest = {}): Promise<boolean> {
41
46
  return this.call<boolean>(tag, 'GET', '/exist', request);
42
47
  }
@@ -4,6 +4,7 @@ import {Wrapper} from "../api/ServiceRestFormal";
4
4
  import Business from "./Business";
5
5
  import fetch from "node-fetch";
6
6
  import RepositoryRest from "../repository/RepositoryRest";
7
+ import {Pagination} from "../index";
7
8
 
8
9
  export default class FormalProxyBusiness extends ProxyBusiness {
9
10
 
@@ -31,6 +32,10 @@ export default class FormalProxyBusiness extends ProxyBusiness {
31
32
  return this.call<{ [key:string]: string }>(tag, 'GET', '/keymap', request);
32
33
  }
33
34
 
35
+ async page<Res>(tag: string, request: HttpRequest = {}): Promise<Pagination<Res>> {
36
+ return this.call<Pagination<Res>>(tag, 'GET', '/page', request);
37
+ }
38
+
34
39
  async map<Res>(tag: string, request: HttpRequest = {}): Promise<{ [key:string]: Res }> {
35
40
  return this.call<{ [key:string]: Res }>(tag, 'GET', '/map', request);
36
41
  }
@@ -55,6 +60,7 @@ export default class FormalProxyBusiness extends ProxyBusiness {
55
60
  return this.deformalize(() => super.call<any, Wrapper<Res>>(tag, method, endpoint, request));
56
61
  }
57
62
 
63
+
58
64
  private async deformalize<Res>(call: () => Promise<fetch.Response>): Promise<Res> {
59
65
  let result = await call();
60
66
  if (result.ok) {