ismx-nexo-node-app 0.4.60 → 0.4.62
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.
|
@@ -72,7 +72,9 @@ class ServiceRestFormalTemplate {
|
|
|
72
72
|
return { maxResults, pageNumber };
|
|
73
73
|
}
|
|
74
74
|
extendEntity(entity) {
|
|
75
|
-
return
|
|
75
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
76
|
+
return entity;
|
|
77
|
+
});
|
|
76
78
|
}
|
|
77
79
|
/**
|
|
78
80
|
* Handles GET requests by retrieving a single record from the database based on the provided request.
|
|
@@ -84,7 +86,7 @@ class ServiceRestFormalTemplate {
|
|
|
84
86
|
return __awaiter(this, void 0, void 0, function* () {
|
|
85
87
|
let id = this.getFormalId(request);
|
|
86
88
|
let entity = yield this.database.one(this.tableName, id);
|
|
87
|
-
let result = this.extendEntity(entity);
|
|
89
|
+
let result = yield this.extendEntity(entity);
|
|
88
90
|
return Service_1.HttpResponse.ok(result);
|
|
89
91
|
});
|
|
90
92
|
}
|
|
@@ -97,7 +99,7 @@ class ServiceRestFormalTemplate {
|
|
|
97
99
|
serveGetList(request) {
|
|
98
100
|
return __awaiter(this, void 0, void 0, function* () {
|
|
99
101
|
let entities = yield this.database.find(this.tableName, Object.assign({}, request.query));
|
|
100
|
-
let result = entities.map(this.extendEntity);
|
|
102
|
+
let result = yield Promise.all(entities.map((entity) => this.extendEntity(entity)));
|
|
101
103
|
return Service_1.HttpResponse.ok(result);
|
|
102
104
|
});
|
|
103
105
|
}
|
|
@@ -111,7 +113,7 @@ class ServiceRestFormalTemplate {
|
|
|
111
113
|
return __awaiter(this, void 0, void 0, function* () {
|
|
112
114
|
let { maxResults, pageNumber } = this.getFormalPage(request);
|
|
113
115
|
let result = yield this.database.page(this.tableName, "timestamp", maxResults, pageNumber);
|
|
114
|
-
result.elements = result.elements.map(this.extendEntity);
|
|
116
|
+
result.elements = yield Promise.all(result.elements.map((entity) => this.extendEntity(entity)));
|
|
115
117
|
return Service_1.HttpResponse.ok(result);
|
|
116
118
|
});
|
|
117
119
|
}
|
|
@@ -132,6 +134,7 @@ class ServiceRestFormalTemplate {
|
|
|
132
134
|
else
|
|
133
135
|
response[key] = this.extendEntity(result);
|
|
134
136
|
}
|
|
137
|
+
yield Promise.all(Object.values(response));
|
|
135
138
|
return Service_1.HttpResponse.ok(response);
|
|
136
139
|
});
|
|
137
140
|
}
|
|
@@ -165,8 +168,9 @@ class ServiceRestFormalTemplate {
|
|
|
165
168
|
var _a;
|
|
166
169
|
let id = this.getFormalId(request);
|
|
167
170
|
(_a = request.body) === null || _a === void 0 ? true : delete _a[this.indexer];
|
|
168
|
-
let
|
|
169
|
-
|
|
171
|
+
let entity = yield this.database.update(this.tableName, id, request.body);
|
|
172
|
+
let result = (yield this.serveGet({ query: { [this.indexer]: id } })).content;
|
|
173
|
+
return Service_1.HttpResponse.ok(result);
|
|
170
174
|
});
|
|
171
175
|
}
|
|
172
176
|
/**
|
|
@@ -178,9 +182,10 @@ class ServiceRestFormalTemplate {
|
|
|
178
182
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
179
183
|
servePost(request) {
|
|
180
184
|
return __awaiter(this, void 0, void 0, function* () {
|
|
181
|
-
let
|
|
182
|
-
let id =
|
|
183
|
-
|
|
185
|
+
let entity = yield this.database.add(this.tableName, request.body);
|
|
186
|
+
let id = entity[this.indexer];
|
|
187
|
+
let result = (yield this.serveGet({ query: { [this.indexer]: id } })).content;
|
|
188
|
+
return Service_1.HttpResponse.ok(result);
|
|
184
189
|
});
|
|
185
190
|
}
|
|
186
191
|
servePostList(request) {
|
|
@@ -36,7 +36,7 @@ export default class ServiceRestFormalTemplate<Model = any> {
|
|
|
36
36
|
maxResults: number;
|
|
37
37
|
pageNumber: number;
|
|
38
38
|
};
|
|
39
|
-
extendEntity<T extends Model>(entity: Model): T
|
|
39
|
+
extendEntity<T extends Model = Model>(entity: Model): Promise<T>;
|
|
40
40
|
/**
|
|
41
41
|
* Handles GET requests by retrieving a single record from the database based on the provided request.
|
|
42
42
|
*
|
package/package.json
CHANGED
|
@@ -84,7 +84,7 @@ export default class ServiceRestFormalTemplate<Model=any>
|
|
|
84
84
|
return { maxResults, pageNumber }
|
|
85
85
|
}
|
|
86
86
|
|
|
87
|
-
extendEntity<T extends Model>(entity : Model) : T {
|
|
87
|
+
async extendEntity<T extends Model = Model>(entity : Model) : Promise<T> {
|
|
88
88
|
return entity as T;
|
|
89
89
|
}
|
|
90
90
|
|
|
@@ -97,7 +97,7 @@ export default class ServiceRestFormalTemplate<Model=any>
|
|
|
97
97
|
protected async serveGet(request: HttpRequest): Promise<HttpResponse<Model>> {
|
|
98
98
|
let id = this.getFormalId(request);
|
|
99
99
|
let entity = await this.database.one<Model>(this.tableName, id);
|
|
100
|
-
let result = this.extendEntity(entity);
|
|
100
|
+
let result = await this.extendEntity(entity);
|
|
101
101
|
return HttpResponse.ok(result);
|
|
102
102
|
}
|
|
103
103
|
|
|
@@ -109,7 +109,7 @@ export default class ServiceRestFormalTemplate<Model=any>
|
|
|
109
109
|
*/
|
|
110
110
|
protected async serveGetList(request: HttpRequest): Promise<HttpResponse<Model[]>> {
|
|
111
111
|
let entities = await this.database.find<Model>(this.tableName, { ...request.query });
|
|
112
|
-
let result = entities.map(this.extendEntity);
|
|
112
|
+
let result = await Promise.all(entities.map((entity) => this.extendEntity(entity)));
|
|
113
113
|
return HttpResponse.ok(result);
|
|
114
114
|
}
|
|
115
115
|
|
|
@@ -122,7 +122,7 @@ export default class ServiceRestFormalTemplate<Model=any>
|
|
|
122
122
|
protected async servePage(request: HttpRequest): Promise<HttpResponse<Pagination<Model>>> {
|
|
123
123
|
let { maxResults, pageNumber } = this.getFormalPage(request);
|
|
124
124
|
let result = await this.database.page<Model>(this.tableName, "timestamp", maxResults, pageNumber);
|
|
125
|
-
result.elements = result.elements.map(this.extendEntity);
|
|
125
|
+
result.elements = await Promise.all(result.elements.map((entity) => this.extendEntity(entity)));
|
|
126
126
|
return HttpResponse.ok(result);
|
|
127
127
|
}
|
|
128
128
|
|
|
@@ -134,11 +134,13 @@ export default class ServiceRestFormalTemplate<Model=any>
|
|
|
134
134
|
*/
|
|
135
135
|
protected async serveMap(request: HttpRequest): Promise<HttpResponse<{[key: string]: Model}>> {
|
|
136
136
|
let results = await this.database.find<Model>(this.tableName, { ...request.query });
|
|
137
|
-
let response: {[key: string]: Model} = {};
|
|
137
|
+
let response: {[key: string]: Promise<Model>} = {};
|
|
138
|
+
for (let result of results) {
|
|
138
139
|
let key = (result as any)[this.indexer];
|
|
139
140
|
if (!key) return HttpResponse.ok({});
|
|
140
141
|
else response[key] = this.extendEntity(result);
|
|
141
142
|
}
|
|
143
|
+
await Promise.all(Object.values(response));
|
|
142
144
|
return HttpResponse.ok(response);
|
|
143
145
|
}
|
|
144
146
|
|
|
@@ -167,8 +169,9 @@ export default class ServiceRestFormalTemplate<Model=any>
|
|
|
167
169
|
protected async servePut(request: HttpRequest<Model>): Promise<HttpResponse<Model>> {
|
|
168
170
|
let id = this.getFormalId(request);
|
|
169
171
|
delete request.body?.[this.indexer as keyof Model];
|
|
170
|
-
let
|
|
171
|
-
|
|
172
|
+
let entity = await this.database.update<Model>(this.tableName, id, request.body);
|
|
173
|
+
let result = (await this.serveGet({ query: { [this.indexer]: id } })).content;
|
|
174
|
+
return HttpResponse.ok(result);
|
|
172
175
|
}
|
|
173
176
|
|
|
174
177
|
/**
|
|
@@ -179,9 +182,10 @@ export default class ServiceRestFormalTemplate<Model=any>
|
|
|
179
182
|
*/
|
|
180
183
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
181
184
|
protected async servePost(request: HttpRequest<Transient<Model>>): Promise<HttpResponse<Model>> {
|
|
182
|
-
let
|
|
183
|
-
let id =
|
|
184
|
-
|
|
185
|
+
let entity = await this.database.add<Model>(this.tableName, request.body);
|
|
186
|
+
let id = entity[this.indexer as keyof Model] as unknown as string;
|
|
187
|
+
let result = (await this.serveGet({ query: { [this.indexer]: id } })).content
|
|
188
|
+
return HttpResponse.ok(result);
|
|
185
189
|
}
|
|
186
190
|
|
|
187
191
|
protected async servePostList(request: HttpRequest<Model[]>): Promise<HttpResponse<Model[]>> {
|