@balena/pinejs 16.0.0-build--batch-4752d5c621e724b9c1c8681845dc297b99453b65-1 → 16.0.0-build-renovate-node-20-x-f810059b8839e410aab086f27909fb948e1199db-1
Sign up to get free protection for your applications and to get access to all the features.
- package/.versionbot/CHANGELOG.yml +53 -19
- package/CHANGELOG.md +27 -4
- package/Dockerfile +1 -1
- package/bin/abstract-sql-compiler.js +0 -0
- package/bin/odata-compiler.js +0 -0
- package/bin/sbvr-compiler.js +0 -0
- package/out/sbvr-api/sbvr-utils.d.ts +2 -3
- package/out/sbvr-api/sbvr-utils.js +27 -79
- package/out/sbvr-api/sbvr-utils.js.map +1 -1
- package/out/sbvr-api/uri-parser.d.ts +5 -15
- package/out/sbvr-api/uri-parser.js +3 -5
- package/out/sbvr-api/uri-parser.js.map +1 -1
- package/package.json +3 -3
- package/src/sbvr-api/sbvr-utils.ts +30 -119
- package/src/sbvr-api/uri-parser.ts +6 -24
@@ -1,31 +1,65 @@
|
|
1
1
|
- commits:
|
2
|
-
- subject:
|
3
|
-
hash:
|
4
|
-
body:
|
5
|
-
|
6
|
-
Change-type: minor
|
7
|
-
change-type: minor
|
8
|
-
author: myarmolinsky
|
9
|
-
nested: []
|
10
|
-
- subject: Expect `string` instead of `number` for request ids
|
11
|
-
hash: 64885d5199044547b364b85f888fa31d3d2f92f7
|
12
|
-
body: ""
|
2
|
+
- subject: Update Node.js to v20
|
3
|
+
hash: f810059b8839e410aab086f27909fb948e1199db
|
4
|
+
body: |
|
5
|
+
Update node from 16 to 20
|
13
6
|
footer:
|
14
7
|
Change-type: major
|
15
8
|
change-type: major
|
16
|
-
author:
|
9
|
+
author: Self-hosted Renovate Bot
|
17
10
|
nested: []
|
18
|
-
|
19
|
-
|
11
|
+
version: 16.0.0
|
12
|
+
title: ""
|
13
|
+
date: 2023-07-11T14:15:59.239Z
|
14
|
+
- commits:
|
15
|
+
- subject: Update pinejs-client-core to 6.13.0
|
16
|
+
hash: 9757808e1422074b805c57fd5b629f5b3ef6f779
|
17
|
+
body: |
|
18
|
+
Update pinejs-client-core from 6.12.3 to 6.13.0
|
19
|
+
footer:
|
20
|
+
Change-type: minor
|
21
|
+
change-type: minor
|
22
|
+
author: Thodoris Greasidis
|
23
|
+
nested:
|
24
|
+
- commits:
|
25
|
+
- subject: Add support for $duration
|
26
|
+
hash: 05edeeea86147ac49dd864ae6e0b46ffc73f6fc4
|
27
|
+
body: ""
|
28
|
+
footer:
|
29
|
+
Change-type: minor
|
30
|
+
change-type: minor
|
31
|
+
author: Thodoris Greasidis
|
32
|
+
nested: []
|
33
|
+
version: pinejs-client-js-6.13.0
|
34
|
+
title: ""
|
35
|
+
date: 2023-07-11T13:16:05.245Z
|
36
|
+
- commits:
|
37
|
+
- subject: Avoid an unnecessary function creation on each get() call
|
38
|
+
hash: 782e43ef40a22fa4c8e0f3d64917b03e07c77522
|
39
|
+
body: ""
|
40
|
+
footer:
|
41
|
+
Change-type: patch
|
42
|
+
change-type: patch
|
43
|
+
author: Thodoris Greasidis
|
44
|
+
nested: []
|
45
|
+
version: pinejs-client-js-6.12.4
|
46
|
+
title: ""
|
47
|
+
date: 2023-05-09T13:11:13.136Z
|
48
|
+
version: 15.1.0
|
49
|
+
title: ""
|
50
|
+
date: 2023-07-11T14:03:07.450Z
|
51
|
+
- commits:
|
52
|
+
- subject: Mark the bin scripts as executable
|
53
|
+
hash: b530c6d4f5c599e517345084f2db3c544118186e
|
20
54
|
body: ""
|
21
55
|
footer:
|
22
|
-
Change-type:
|
23
|
-
change-type:
|
24
|
-
author:
|
56
|
+
Change-type: patch
|
57
|
+
change-type: patch
|
58
|
+
author: Thodoris Greasidis
|
25
59
|
nested: []
|
26
|
-
version:
|
60
|
+
version: 15.0.5
|
27
61
|
title: ""
|
28
|
-
date: 2023-07-
|
62
|
+
date: 2023-07-07T15:40:24.029Z
|
29
63
|
- commits:
|
30
64
|
- subject: Add transaction cancelation tests for properly hooked custom endpoints
|
31
65
|
hash: dfe17f5933b2da276633ee713de5c2a0d714b656
|
package/CHANGELOG.md
CHANGED
@@ -5,11 +5,34 @@ automatically by Versionist. DO NOT EDIT THIS FILE MANUALLY!
|
|
5
5
|
This project adheres to [Semantic Versioning](http://semver.org/).
|
6
6
|
|
7
7
|
# v16.0.0
|
8
|
-
## (2023-07-
|
8
|
+
## (2023-07-11)
|
9
9
|
|
10
|
-
*
|
11
|
-
|
12
|
-
|
10
|
+
* Update Node.js to v20 [Self-hosted Renovate Bot]
|
11
|
+
|
12
|
+
# v15.1.0
|
13
|
+
## (2023-07-11)
|
14
|
+
|
15
|
+
|
16
|
+
<details>
|
17
|
+
<summary> Update pinejs-client-core to 6.13.0 [Thodoris Greasidis] </summary>
|
18
|
+
|
19
|
+
> ## pinejs-client-js-6.13.0
|
20
|
+
> ### (2023-07-11)
|
21
|
+
>
|
22
|
+
> * Add support for $duration [Thodoris Greasidis]
|
23
|
+
>
|
24
|
+
> ## pinejs-client-js-6.12.4
|
25
|
+
> ### (2023-05-09)
|
26
|
+
>
|
27
|
+
> * Avoid an unnecessary function creation on each get() call [Thodoris Greasidis]
|
28
|
+
>
|
29
|
+
|
30
|
+
</details>
|
31
|
+
|
32
|
+
# v15.0.5
|
33
|
+
## (2023-07-07)
|
34
|
+
|
35
|
+
* Mark the bin scripts as executable [Thodoris Greasidis]
|
13
36
|
|
14
37
|
# v15.0.4
|
15
38
|
## (2023-06-27)
|
package/Dockerfile
CHANGED
File without changes
|
package/bin/odata-compiler.js
CHANGED
File without changes
|
package/bin/sbvr-compiler.js
CHANGED
File without changes
|
@@ -49,8 +49,7 @@ export interface ApiKey extends Actor {
|
|
49
49
|
actor: number;
|
50
50
|
}
|
51
51
|
export interface Response {
|
52
|
-
|
53
|
-
status: number;
|
52
|
+
statusCode: number;
|
54
53
|
headers?: {
|
55
54
|
[headerName: string]: any;
|
56
55
|
} | undefined;
|
@@ -105,7 +104,7 @@ export declare const runURI: (method: string, uri: string, body?: AnyObject, tx?
|
|
105
104
|
export declare const getAbstractSqlModel: (request: Pick<uriParser.ODataRequest, 'vocabulary' | 'abstractSqlModel'>) => AbstractSQLCompiler.AbstractSqlModel;
|
106
105
|
export declare const getAffectedIds: (args: HookArgs & {
|
107
106
|
tx: Db.Tx;
|
108
|
-
}) => Promise<
|
107
|
+
}) => Promise<number[]>;
|
109
108
|
export declare const handleODataRequest: Express.Handler;
|
110
109
|
declare const handleErrorFns: Array<(req: Express.Request, err: HttpError) => void>;
|
111
110
|
export declare const onHandleHttpError: (fn: (typeof handleErrorFns)[number]) => void;
|
@@ -34,7 +34,6 @@ Object.defineProperty(exports, "resolveOdataBind", { enumerable: true, get: func
|
|
34
34
|
const odataResponse = require("./odata-response");
|
35
35
|
const module_1 = require("../server-glue/module");
|
36
36
|
const translations_1 = require("./translations");
|
37
|
-
const validBatchMethods = new Set(['PUT', 'POST', 'PATCH', 'DELETE', 'GET']);
|
38
37
|
const LF2AbstractSQLTranslator = LF2AbstractSQL.createTranslator(sbvr_types_1.default);
|
39
38
|
const LF2AbstractSQLTranslatorVersion = `${package_json_2.version}+${package_json_3.version}`;
|
40
39
|
const models = {};
|
@@ -600,13 +599,13 @@ const runURI = async (method, uri, body = {}, tx, req, custom) => {
|
|
600
599
|
if (_.isError(response)) {
|
601
600
|
throw response;
|
602
601
|
}
|
603
|
-
const { body: responseBody,
|
604
|
-
if (
|
605
|
-
const ErrorClass = errors_1.statusCodeToError[
|
602
|
+
const { body: responseBody, statusCode, headers } = response;
|
603
|
+
if (statusCode != null && statusCode >= 400) {
|
604
|
+
const ErrorClass = errors_1.statusCodeToError[statusCode];
|
606
605
|
if (ErrorClass != null) {
|
607
606
|
throw new ErrorClass(undefined, responseBody, headers);
|
608
607
|
}
|
609
|
-
throw new errors_1.HttpError(
|
608
|
+
throw new errors_1.HttpError(statusCode, undefined, responseBody, headers);
|
610
609
|
}
|
611
610
|
return responseBody;
|
612
611
|
};
|
@@ -639,7 +638,6 @@ const $getAffectedIds = async ({ req, request, tx, }) => {
|
|
639
638
|
throw new Error('Can only call `getAffectedIds` with PATCH/DELETE requests');
|
640
639
|
}
|
641
640
|
const parsedRequest = await uriParser.parseOData({
|
642
|
-
id: request.id,
|
643
641
|
method: request.method,
|
644
642
|
url: `/${request.vocabulary}${request.url}`,
|
645
643
|
});
|
@@ -675,51 +673,6 @@ const runODataRequest = (req, vocabulary) => {
|
|
675
673
|
if (module_1.env.DEBUG) {
|
676
674
|
exports.api[vocabulary].logger.log('Parsing', req.method, req.url);
|
677
675
|
}
|
678
|
-
if (req.url === `/${vocabulary}/$batch`) {
|
679
|
-
const { requests } = req.body;
|
680
|
-
req.batch = requests;
|
681
|
-
if (!Array.isArray(requests)) {
|
682
|
-
throw new errors_1.BadRequestError('Batch requests must include an array of requests in the body via the "requests" property');
|
683
|
-
}
|
684
|
-
if (req.headers != null && req.headers['content-type'] == null) {
|
685
|
-
throw new errors_1.BadRequestError('Headers in a batch request must include a "content-type" header if they are provided');
|
686
|
-
}
|
687
|
-
const ids = new Set(requests
|
688
|
-
.map((request) => request.id)
|
689
|
-
.filter((id) => typeof id === 'string'));
|
690
|
-
if (ids.size !== requests.length) {
|
691
|
-
throw new errors_1.BadRequestError('All requests in a batch request must have unique string ids');
|
692
|
-
}
|
693
|
-
for (const request of requests) {
|
694
|
-
if (request.headers != null &&
|
695
|
-
request.headers['content-type'] == null &&
|
696
|
-
(req.headers == null || req.headers['content-type'] == null)) {
|
697
|
-
throw new errors_1.BadRequestError('Requests of a batch request that have headers must include a "content-type" header');
|
698
|
-
}
|
699
|
-
if (request.method == null) {
|
700
|
-
throw new errors_1.BadRequestError('Requests of a batch request must have a "method"');
|
701
|
-
}
|
702
|
-
const upperCaseMethod = request.method.toUpperCase();
|
703
|
-
if (!validBatchMethods.has(upperCaseMethod)) {
|
704
|
-
throw new errors_1.BadRequestError(`Requests of a batch request must have a method matching one of the following: ${Array.from(validBatchMethods).join(', ')}`);
|
705
|
-
}
|
706
|
-
if (request.body !== undefined &&
|
707
|
-
(upperCaseMethod === 'GET' || upperCaseMethod === 'DELETE')) {
|
708
|
-
throw new errors_1.BadRequestError('GET and DELETE requests of a batch request must not have a body');
|
709
|
-
}
|
710
|
-
}
|
711
|
-
const urls = new Set(requests.map((request) => request.url));
|
712
|
-
if (urls.has(undefined)) {
|
713
|
-
throw new errors_1.BadRequestError('Requests of a batch request must have a "url"');
|
714
|
-
}
|
715
|
-
if (urls.has('/university/$batch')) {
|
716
|
-
throw new errors_1.BadRequestError('Batch requests cannot contain batch requests');
|
717
|
-
}
|
718
|
-
const urlModels = new Set(Array.from(urls.values()).map((url) => url.split('/')[1]));
|
719
|
-
if (urlModels.size > 1) {
|
720
|
-
throw new errors_1.BadRequestError('Batch requests must consist of requests for only one model');
|
721
|
-
}
|
722
|
-
}
|
723
676
|
const { versions } = models[vocabulary];
|
724
677
|
const reqHooks = versions.map((version) => [
|
725
678
|
version,
|
@@ -754,12 +707,12 @@ const runODataRequest = (req, vocabulary) => {
|
|
754
707
|
promise: (async () => {
|
755
708
|
await (0, hooks_1.runHooks)('PREPARSE', reqHooks, { req, tx: req.tx });
|
756
709
|
let requests;
|
757
|
-
if (req.
|
710
|
+
if (req.batch != null && req.batch.length > 0) {
|
758
711
|
requests = req.batch;
|
759
712
|
}
|
760
713
|
else {
|
761
714
|
const { method, url, body } = req;
|
762
|
-
requests = [{ method, url, body }];
|
715
|
+
requests = [{ method, url, data: body }];
|
763
716
|
}
|
764
717
|
const prepareRequest = async (parsedRequest) => {
|
765
718
|
parsedRequest.engine = exports.db.engine;
|
@@ -800,7 +753,7 @@ const runODataRequest = (req, vocabulary) => {
|
|
800
753
|
}
|
801
754
|
};
|
802
755
|
const results = await mappingFn(requests, async (requestPart) => {
|
803
|
-
const parsedRequest = await uriParser.parseOData(requestPart
|
756
|
+
const parsedRequest = await uriParser.parseOData(requestPart);
|
804
757
|
let request;
|
805
758
|
if (Array.isArray(parsedRequest)) {
|
806
759
|
request = await controlFlow.mapSeries(parsedRequest, prepareRequest);
|
@@ -841,7 +794,7 @@ const runODataRequest = (req, vocabulary) => {
|
|
841
794
|
else {
|
842
795
|
if (!Array.isArray(result) &&
|
843
796
|
result.body == null &&
|
844
|
-
result.
|
797
|
+
result.statusCode == null) {
|
845
798
|
console.error('No status or body set', req.url, responses);
|
846
799
|
return new errors_1.InternalRequestError();
|
847
800
|
}
|
@@ -870,16 +823,14 @@ const handleODataRequest = async (req, res, next) => {
|
|
870
823
|
handleResponse(res, response);
|
871
824
|
}
|
872
825
|
else {
|
873
|
-
res.status(200).
|
874
|
-
|
875
|
-
|
876
|
-
|
877
|
-
|
878
|
-
|
879
|
-
|
880
|
-
|
881
|
-
}),
|
882
|
-
});
|
826
|
+
res.status(200).sendMulti(responses.map((response) => {
|
827
|
+
if (response instanceof errors_1.HttpError) {
|
828
|
+
response = httpErrorToResponse(response);
|
829
|
+
}
|
830
|
+
else {
|
831
|
+
return response;
|
832
|
+
}
|
833
|
+
}));
|
883
834
|
}
|
884
835
|
}
|
885
836
|
catch (e) {
|
@@ -901,7 +852,7 @@ const handleHttpErrors = (req, res, err) => {
|
|
901
852
|
for (const handleErrorFn of handleErrorFns) {
|
902
853
|
handleErrorFn(req, err);
|
903
854
|
}
|
904
|
-
const response = httpErrorToResponse(err
|
855
|
+
const response = httpErrorToResponse(err);
|
905
856
|
handleResponse(res, response);
|
906
857
|
return true;
|
907
858
|
}
|
@@ -909,9 +860,9 @@ const handleHttpErrors = (req, res, err) => {
|
|
909
860
|
};
|
910
861
|
exports.handleHttpErrors = handleHttpErrors;
|
911
862
|
const handleResponse = (res, response) => {
|
912
|
-
const { body, headers,
|
863
|
+
const { body, headers, statusCode } = response;
|
913
864
|
res.set(headers);
|
914
|
-
res.status(
|
865
|
+
res.status(statusCode);
|
915
866
|
if (!body) {
|
916
867
|
res.end();
|
917
868
|
}
|
@@ -919,11 +870,10 @@ const handleResponse = (res, response) => {
|
|
919
870
|
res.json(body);
|
920
871
|
}
|
921
872
|
};
|
922
|
-
const httpErrorToResponse = (err
|
923
|
-
const message = err.getResponseBody();
|
873
|
+
const httpErrorToResponse = (err) => {
|
924
874
|
return {
|
925
|
-
|
926
|
-
body:
|
875
|
+
statusCode: err.status,
|
876
|
+
body: err.getResponseBody(),
|
927
877
|
headers: err.headers,
|
928
878
|
};
|
929
879
|
};
|
@@ -1120,8 +1070,7 @@ const respondGet = async (req, request, result, tx) => {
|
|
1120
1070
|
: undefined;
|
1121
1071
|
const d = await odataResponse.process(vocab, (0, exports.getAbstractSqlModel)(request), request.originalResourceName, result.rows, { includeMetadata: metadata === 'full' });
|
1122
1072
|
const response = {
|
1123
|
-
|
1124
|
-
status: 200,
|
1073
|
+
statusCode: 200,
|
1125
1074
|
body: { d },
|
1126
1075
|
headers: { 'content-type': 'application/json' },
|
1127
1076
|
};
|
@@ -1137,15 +1086,14 @@ const respondGet = async (req, request, result, tx) => {
|
|
1137
1086
|
else {
|
1138
1087
|
if (request.resourceName === '$metadata') {
|
1139
1088
|
return {
|
1140
|
-
|
1141
|
-
status: 200,
|
1089
|
+
statusCode: 200,
|
1142
1090
|
body: models[vocab].odataMetadata,
|
1143
1091
|
headers: { 'content-type': 'xml' },
|
1144
1092
|
};
|
1145
1093
|
}
|
1146
1094
|
else {
|
1147
1095
|
return {
|
1148
|
-
|
1096
|
+
statusCode: 404,
|
1149
1097
|
};
|
1150
1098
|
}
|
1151
1099
|
}
|
@@ -1174,7 +1122,7 @@ const respondPost = async (req, request, id, tx) => {
|
|
1174
1122
|
}
|
1175
1123
|
}
|
1176
1124
|
const response = {
|
1177
|
-
|
1125
|
+
statusCode: 201,
|
1178
1126
|
body: result.d[0],
|
1179
1127
|
headers: {
|
1180
1128
|
'content-type': 'application/json',
|
@@ -1208,7 +1156,7 @@ const runPut = async (_req, request, tx) => {
|
|
1208
1156
|
};
|
1209
1157
|
const respondPut = async (req, request, result, tx) => {
|
1210
1158
|
const response = {
|
1211
|
-
|
1159
|
+
statusCode: 200,
|
1212
1160
|
};
|
1213
1161
|
await (0, hooks_1.runHooks)('PRERESPOND', request.hooks, {
|
1214
1162
|
req,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"sbvr-utils.js","sourceRoot":"","sources":["../../src/sbvr-api/sbvr-utils.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"sbvr-utils.js","sourceRoot":"","sources":["../../src/sbvr-api/sbvr-utils.ts"],"names":[],"mappings":"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"}
|
@@ -11,10 +11,9 @@ export { BadRequestError, ParsingError, TranslationError } from './errors';
|
|
11
11
|
import * as sbvrUtils from './sbvr-utils';
|
12
12
|
export type OdataBinds = ODataBinds;
|
13
13
|
export interface UnparsedRequest {
|
14
|
-
id?: string;
|
15
14
|
method: string;
|
16
15
|
url: string;
|
17
|
-
|
16
|
+
data?: any;
|
18
17
|
headers?: {
|
19
18
|
[header: string]: string;
|
20
19
|
};
|
@@ -22,9 +21,6 @@ export interface UnparsedRequest {
|
|
22
21
|
_isChangeSet?: boolean;
|
23
22
|
}
|
24
23
|
export interface ParsedODataRequest {
|
25
|
-
headers?: {
|
26
|
-
[key: string]: string | string[] | undefined;
|
27
|
-
};
|
28
24
|
method: SupportedMethod;
|
29
25
|
url: string;
|
30
26
|
vocabulary: string;
|
@@ -34,7 +30,7 @@ export interface ParsedODataRequest {
|
|
34
30
|
odataQuery: ODataQuery;
|
35
31
|
odataBinds: OdataBinds;
|
36
32
|
custom: AnyObject;
|
37
|
-
id?:
|
33
|
+
id?: number | undefined;
|
38
34
|
_defer?: boolean;
|
39
35
|
}
|
40
36
|
export interface ODataRequest extends ParsedODataRequest {
|
@@ -45,8 +41,8 @@ export interface ODataRequest extends ParsedODataRequest {
|
|
45
41
|
sqlQuery?: AbstractSQLCompiler.SqlResult | AbstractSQLCompiler.SqlResult[];
|
46
42
|
tx?: Tx;
|
47
43
|
modifiedFields?: ReturnType<AbstractSQLCompiler.EngineInstance['getModifiedFields']>;
|
48
|
-
affectedIds?:
|
49
|
-
pendingAffectedIds?: Promise<
|
44
|
+
affectedIds?: number[];
|
45
|
+
pendingAffectedIds?: Promise<number[]>;
|
50
46
|
hooks?: Array<[string, InstantiatedHooks]>;
|
51
47
|
engine: AbstractSQLCompiler.Engines;
|
52
48
|
}
|
@@ -59,17 +55,11 @@ export declare const memoizedGetOData2AbstractSQL: ((abstractSqlModel: AbstractS
|
|
59
55
|
export declare const metadataEndpoints: string[];
|
60
56
|
export declare function parseOData(b: UnparsedRequest & {
|
61
57
|
_isChangeSet?: false;
|
62
|
-
}, headers?: {
|
63
|
-
[key: string]: string | string[] | undefined;
|
64
58
|
}): Promise<ParsedODataRequest>;
|
65
59
|
export declare function parseOData(b: UnparsedRequest & {
|
66
60
|
_isChangeSet: true;
|
67
|
-
}, headers?: {
|
68
|
-
[key: string]: string | string[] | undefined;
|
69
61
|
}): Promise<ParsedODataRequest[]>;
|
70
|
-
export declare function parseOData(b: UnparsedRequest
|
71
|
-
[key: string]: string | string[] | undefined;
|
72
|
-
}): Promise<ParsedODataRequest | ParsedODataRequest[]>;
|
62
|
+
export declare function parseOData(b: UnparsedRequest): Promise<ParsedODataRequest | ParsedODataRequest[]>;
|
73
63
|
export declare const translateUri: <T extends Pick<sbvrUtils.ODataRequest, "values" | "resourceName" | "method" | "odataQuery" | "odataBinds" | "vocabulary" | "abstractSqlModel">>(request: T & {
|
74
64
|
abstractSqlQuery?: ODataRequest['abstractSqlQuery'];
|
75
65
|
}) => T & {
|
@@ -132,7 +132,7 @@ const memoizedOdata2AbstractSQL = (() => {
|
|
132
132
|
};
|
133
133
|
})();
|
134
134
|
exports.metadataEndpoints = ['$metadata', '$serviceroot'];
|
135
|
-
async function parseOData(b
|
135
|
+
async function parseOData(b) {
|
136
136
|
try {
|
137
137
|
if (b._isChangeSet && b.changeSet != null) {
|
138
138
|
const sortedCS = _.sortBy(b.changeSet, (el) => el.url[0] !== '/');
|
@@ -146,14 +146,12 @@ async function parseOData(b, headers) {
|
|
146
146
|
const { url, apiRoot } = splitApiRoot(b.url);
|
147
147
|
const odata = (0, exports.memoizedParseOdata)(url);
|
148
148
|
return {
|
149
|
-
id: b.id,
|
150
|
-
headers: { ...headers, ...b.headers } ?? headers,
|
151
149
|
method: b.method,
|
152
150
|
url,
|
153
151
|
vocabulary: apiRoot,
|
154
152
|
resourceName: odata.tree.resource,
|
155
153
|
originalResourceName: odata.tree.resource,
|
156
|
-
values: b.
|
154
|
+
values: b.data ?? {},
|
157
155
|
odataQuery: odata.tree,
|
158
156
|
odataBinds: odata.binds,
|
159
157
|
custom: {},
|
@@ -208,7 +206,7 @@ const parseODataChangeset = (csReferences, b) => {
|
|
208
206
|
originalResourceName: odata.tree.resource,
|
209
207
|
odataBinds: odata.binds,
|
210
208
|
odataQuery: odata.tree,
|
211
|
-
values: b.
|
209
|
+
values: b.data ?? {},
|
212
210
|
custom: {},
|
213
211
|
id: contentId,
|
214
212
|
_defer: defer,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"uri-parser.js","sourceRoot":"","sources":["../../src/sbvr-api/uri-parser.ts"],"names":[],"mappings":";;;AAWA,oDAAoD;AACvC,QAAA,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC;AACnD,yEAAkE;AAClE,4BAA4B;AAC5B,6CAA8C;AAE9C,mCAA2E;AAAlE,yGAAA,eAAe,OAAA;AAAE,sGAAA,YAAY,OAAA;AAAE,0GAAA,gBAAgB,OAAA;AACxD,0CAA0C;AAC1C,4CAA4C;AAC5C,qCAKkB;AAClB,0CAA0C;
|
1
|
+
{"version":3,"file":"uri-parser.js","sourceRoot":"","sources":["../../src/sbvr-api/uri-parser.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@balena/pinejs",
|
3
|
-
"version": "16.0.0-build
|
3
|
+
"version": "16.0.0-build-renovate-node-20-x-f810059b8839e410aab086f27909fb948e1199db-1",
|
4
4
|
"main": "out/server-glue/module",
|
5
5
|
"repository": "git@github.com:balena-io/pinejs.git",
|
6
6
|
"license": "Apache-2.0",
|
@@ -56,7 +56,7 @@
|
|
56
56
|
"express-session": "^1.17.3",
|
57
57
|
"lodash": "^4.17.21",
|
58
58
|
"memoizee": "^0.4.15",
|
59
|
-
"pinejs-client-core": "^6.
|
59
|
+
"pinejs-client-core": "^6.13.0",
|
60
60
|
"randomstring": "^1.2.3",
|
61
61
|
"typed-error": "^3.2.2"
|
62
62
|
},
|
@@ -138,6 +138,6 @@
|
|
138
138
|
"recursive": true
|
139
139
|
},
|
140
140
|
"versionist": {
|
141
|
-
"publishedAt": "2023-07-
|
141
|
+
"publishedAt": "2023-07-11T14:16:00.122Z"
|
142
142
|
}
|
143
143
|
}
|
@@ -95,8 +95,6 @@ import * as odataResponse from './odata-response';
|
|
95
95
|
import { env } from '../server-glue/module';
|
96
96
|
import { translateAbstractSqlModel } from './translations';
|
97
97
|
|
98
|
-
const validBatchMethods = new Set(['PUT', 'POST', 'PATCH', 'DELETE', 'GET']);
|
99
|
-
|
100
98
|
const LF2AbstractSQLTranslator = LF2AbstractSQL.createTranslator(sbvrTypes);
|
101
99
|
const LF2AbstractSQLTranslatorVersion = `${LF2AbstractSQLVersion}+${sbvrTypesVersion}`;
|
102
100
|
|
@@ -135,8 +133,7 @@ export interface ApiKey extends Actor {
|
|
135
133
|
}
|
136
134
|
|
137
135
|
export interface Response {
|
138
|
-
|
139
|
-
status: number;
|
136
|
+
statusCode: number;
|
140
137
|
headers?:
|
141
138
|
| {
|
142
139
|
[headerName: string]: any;
|
@@ -1025,15 +1022,15 @@ export const runURI = async (
|
|
1025
1022
|
throw response;
|
1026
1023
|
}
|
1027
1024
|
|
1028
|
-
const { body: responseBody,
|
1025
|
+
const { body: responseBody, statusCode, headers } = response as Response;
|
1029
1026
|
|
1030
|
-
if (
|
1027
|
+
if (statusCode != null && statusCode >= 400) {
|
1031
1028
|
const ErrorClass =
|
1032
|
-
statusCodeToError[
|
1029
|
+
statusCodeToError[statusCode as keyof typeof statusCodeToError];
|
1033
1030
|
if (ErrorClass != null) {
|
1034
1031
|
throw new ErrorClass(undefined, responseBody, headers);
|
1035
1032
|
}
|
1036
|
-
throw new HttpError(
|
1033
|
+
throw new HttpError(statusCode, undefined, responseBody, headers);
|
1037
1034
|
}
|
1038
1035
|
|
1039
1036
|
return responseBody as AnyObject | undefined;
|
@@ -1072,7 +1069,7 @@ export const getAffectedIds = async (
|
|
1072
1069
|
args: HookArgs & {
|
1073
1070
|
tx: Db.Tx;
|
1074
1071
|
},
|
1075
|
-
): Promise<
|
1072
|
+
): Promise<number[]> => {
|
1076
1073
|
const { request } = args;
|
1077
1074
|
if (request.affectedIds) {
|
1078
1075
|
return request.affectedIds;
|
@@ -1097,7 +1094,7 @@ const $getAffectedIds = async ({
|
|
1097
1094
|
tx,
|
1098
1095
|
}: HookArgs & {
|
1099
1096
|
tx: Db.Tx;
|
1100
|
-
}): Promise<
|
1097
|
+
}): Promise<number[]> => {
|
1101
1098
|
if (!['PATCH', 'DELETE'].includes(request.method)) {
|
1102
1099
|
// We can only find the affected ids in advance for requests that modify existing records, if they
|
1103
1100
|
// can insert new records (POST/PUT) then we're unable to find the ids until the request has actually run
|
@@ -1111,7 +1108,6 @@ const $getAffectedIds = async ({
|
|
1111
1108
|
const parsedRequest: uriParser.ParsedODataRequest &
|
1112
1109
|
Partial<Pick<uriParser.ODataRequest, 'engine' | 'translateVersions'>> =
|
1113
1110
|
await uriParser.parseOData({
|
1114
|
-
id: request.id,
|
1115
1111
|
method: request.method,
|
1116
1112
|
url: `/${request.vocabulary}${request.url}`,
|
1117
1113
|
});
|
@@ -1162,84 +1158,6 @@ const runODataRequest = (req: Express.Request, vocabulary: string) => {
|
|
1162
1158
|
api[vocabulary].logger.log('Parsing', req.method, req.url);
|
1163
1159
|
}
|
1164
1160
|
|
1165
|
-
if (req.url === `/${vocabulary}/$batch`) {
|
1166
|
-
const { requests } = req.body as { requests: uriParser.UnparsedRequest[] };
|
1167
|
-
req.batch = requests;
|
1168
|
-
if (!Array.isArray(requests)) {
|
1169
|
-
throw new BadRequestError(
|
1170
|
-
'Batch requests must include an array of requests in the body via the "requests" property',
|
1171
|
-
);
|
1172
|
-
}
|
1173
|
-
if (req.headers != null && req.headers['content-type'] == null) {
|
1174
|
-
throw new BadRequestError(
|
1175
|
-
'Headers in a batch request must include a "content-type" header if they are provided',
|
1176
|
-
);
|
1177
|
-
}
|
1178
|
-
const ids = new Set<string>(
|
1179
|
-
requests
|
1180
|
-
.map((request) => request.id)
|
1181
|
-
.filter((id) => typeof id === 'string') as string[],
|
1182
|
-
);
|
1183
|
-
if (ids.size !== requests.length) {
|
1184
|
-
throw new BadRequestError(
|
1185
|
-
'All requests in a batch request must have unique string ids',
|
1186
|
-
);
|
1187
|
-
}
|
1188
|
-
|
1189
|
-
for (const request of requests) {
|
1190
|
-
if (
|
1191
|
-
request.headers != null &&
|
1192
|
-
request.headers['content-type'] == null &&
|
1193
|
-
(req.headers == null || req.headers['content-type'] == null)
|
1194
|
-
) {
|
1195
|
-
throw new BadRequestError(
|
1196
|
-
'Requests of a batch request that have headers must include a "content-type" header',
|
1197
|
-
);
|
1198
|
-
}
|
1199
|
-
if (request.method == null) {
|
1200
|
-
throw new BadRequestError(
|
1201
|
-
'Requests of a batch request must have a "method"',
|
1202
|
-
);
|
1203
|
-
}
|
1204
|
-
const upperCaseMethod = request.method.toUpperCase();
|
1205
|
-
if (!validBatchMethods.has(upperCaseMethod)) {
|
1206
|
-
throw new BadRequestError(
|
1207
|
-
`Requests of a batch request must have a method matching one of the following: ${Array.from(
|
1208
|
-
validBatchMethods,
|
1209
|
-
).join(', ')}`,
|
1210
|
-
);
|
1211
|
-
}
|
1212
|
-
if (
|
1213
|
-
request.body !== undefined &&
|
1214
|
-
(upperCaseMethod === 'GET' || upperCaseMethod === 'DELETE')
|
1215
|
-
) {
|
1216
|
-
throw new BadRequestError(
|
1217
|
-
'GET and DELETE requests of a batch request must not have a body',
|
1218
|
-
);
|
1219
|
-
}
|
1220
|
-
}
|
1221
|
-
|
1222
|
-
const urls = new Set<string | undefined>(
|
1223
|
-
requests.map((request) => request.url),
|
1224
|
-
);
|
1225
|
-
if (urls.has(undefined)) {
|
1226
|
-
throw new BadRequestError(
|
1227
|
-
'Requests of a batch request must have a "url"',
|
1228
|
-
);
|
1229
|
-
}
|
1230
|
-
if (urls.has('/university/$batch')) {
|
1231
|
-
throw new BadRequestError('Batch requests cannot contain batch requests');
|
1232
|
-
}
|
1233
|
-
const urlModels = new Set(
|
1234
|
-
Array.from(urls.values()).map((url: string) => url.split('/')[1]),
|
1235
|
-
);
|
1236
|
-
if (urlModels.size > 1) {
|
1237
|
-
throw new BadRequestError(
|
1238
|
-
'Batch requests must consist of requests for only one model',
|
1239
|
-
);
|
1240
|
-
}
|
1241
|
-
}
|
1242
|
-
|
1243
1161
|
// Get the hooks for the current method/vocabulary as we know it,
|
1244
1162
|
// in order to run PREPARSE hooks, before parsing gets us more info
|
1245
1163
|
const { versions } = models[vocabulary];
|
@@ -1287,11 +1205,11 @@ const runODataRequest = (req: Express.Request, vocabulary: string) => {
|
|
1287
1205
|
await runHooks('PREPARSE', reqHooks, { req, tx: req.tx });
|
1288
1206
|
let requests: uriParser.UnparsedRequest[];
|
1289
1207
|
// Check if it is a single request or a batch
|
1290
|
-
if (req.
|
1291
|
-
requests = req.batch
|
1208
|
+
if (req.batch != null && req.batch.length > 0) {
|
1209
|
+
requests = req.batch;
|
1292
1210
|
} else {
|
1293
1211
|
const { method, url, body } = req;
|
1294
|
-
requests = [{ method, url, body }];
|
1212
|
+
requests = [{ method, url, data: body }];
|
1295
1213
|
}
|
1296
1214
|
|
1297
1215
|
const prepareRequest = async (
|
@@ -1350,10 +1268,7 @@ const runODataRequest = (req: Express.Request, vocabulary: string) => {
|
|
1350
1268
|
|
1351
1269
|
// Parse the OData requests
|
1352
1270
|
const results = await mappingFn(requests, async (requestPart) => {
|
1353
|
-
const parsedRequest = await uriParser.parseOData(
|
1354
|
-
requestPart,
|
1355
|
-
req.headers,
|
1356
|
-
);
|
1271
|
+
const parsedRequest = await uriParser.parseOData(requestPart);
|
1357
1272
|
|
1358
1273
|
let request: uriParser.ODataRequest | uriParser.ODataRequest[];
|
1359
1274
|
if (Array.isArray(parsedRequest)) {
|
@@ -1378,7 +1293,7 @@ const runODataRequest = (req: Express.Request, vocabulary: string) => {
|
|
1378
1293
|
}
|
1379
1294
|
});
|
1380
1295
|
if (Array.isArray(request)) {
|
1381
|
-
const changeSetResults = new Map<
|
1296
|
+
const changeSetResults = new Map<number, Response>();
|
1382
1297
|
const changeSetRunner = runChangeSet(req, tx);
|
1383
1298
|
for (const r of request) {
|
1384
1299
|
await changeSetRunner(changeSetResults, r);
|
@@ -1399,7 +1314,7 @@ const runODataRequest = (req: Express.Request, vocabulary: string) => {
|
|
1399
1314
|
if (
|
1400
1315
|
!Array.isArray(result) &&
|
1401
1316
|
result.body == null &&
|
1402
|
-
result.
|
1317
|
+
result.statusCode == null
|
1403
1318
|
) {
|
1404
1319
|
console.error('No status or body set', req.url, responses);
|
1405
1320
|
return new InternalRequestError();
|
@@ -1437,15 +1352,15 @@ export const handleODataRequest: Express.Handler = async (req, res, next) => {
|
|
1437
1352
|
|
1438
1353
|
// Otherwise its a multipart request and we reply with the appropriate multipart response
|
1439
1354
|
} else {
|
1440
|
-
res.status(200).
|
1441
|
-
responses
|
1355
|
+
(res.status(200) as any).sendMulti(
|
1356
|
+
responses.map((response) => {
|
1442
1357
|
if (response instanceof HttpError) {
|
1443
|
-
|
1358
|
+
response = httpErrorToResponse(response);
|
1444
1359
|
} else {
|
1445
1360
|
return response;
|
1446
1361
|
}
|
1447
1362
|
}),
|
1448
|
-
|
1363
|
+
);
|
1449
1364
|
}
|
1450
1365
|
} catch (e: any) {
|
1451
1366
|
if (handleHttpErrors(req, res, e)) {
|
@@ -1472,16 +1387,16 @@ export const handleHttpErrors = (
|
|
1472
1387
|
for (const handleErrorFn of handleErrorFns) {
|
1473
1388
|
handleErrorFn(req, err);
|
1474
1389
|
}
|
1475
|
-
const response = httpErrorToResponse(err
|
1390
|
+
const response = httpErrorToResponse(err);
|
1476
1391
|
handleResponse(res, response);
|
1477
1392
|
return true;
|
1478
1393
|
}
|
1479
1394
|
return false;
|
1480
1395
|
};
|
1481
1396
|
const handleResponse = (res: Express.Response, response: Response): void => {
|
1482
|
-
const { body, headers,
|
1397
|
+
const { body, headers, statusCode } = response as Response;
|
1483
1398
|
res.set(headers);
|
1484
|
-
res.status(
|
1399
|
+
res.status(statusCode);
|
1485
1400
|
if (!body) {
|
1486
1401
|
res.end();
|
1487
1402
|
} else {
|
@@ -1491,12 +1406,10 @@ const handleResponse = (res: Express.Response, response: Response): void => {
|
|
1491
1406
|
|
1492
1407
|
const httpErrorToResponse = (
|
1493
1408
|
err: HttpError,
|
1494
|
-
|
1495
|
-
): RequiredField<Response, 'status'> => {
|
1496
|
-
const message = err.getResponseBody();
|
1409
|
+
): RequiredField<Response, 'statusCode'> => {
|
1497
1410
|
return {
|
1498
|
-
|
1499
|
-
body:
|
1411
|
+
statusCode: err.status,
|
1412
|
+
body: err.getResponseBody(),
|
1500
1413
|
headers: err.headers,
|
1501
1414
|
};
|
1502
1415
|
};
|
@@ -1601,7 +1514,7 @@ const runRequest = async (
|
|
1601
1514
|
const runChangeSet =
|
1602
1515
|
(req: Express.Request, tx: Db.Tx) =>
|
1603
1516
|
async (
|
1604
|
-
changeSetResults: Map<
|
1517
|
+
changeSetResults: Map<number, Response>,
|
1605
1518
|
request: uriParser.ODataRequest,
|
1606
1519
|
): Promise<void> => {
|
1607
1520
|
request = updateBinds(changeSetResults, request);
|
@@ -1619,7 +1532,7 @@ const runChangeSet =
|
|
1619
1532
|
// deferred untill the request they reference is run and returns an insert ID.
|
1620
1533
|
// This function compiles the sql query of a request which has been deferred
|
1621
1534
|
const updateBinds = (
|
1622
|
-
changeSetResults: Map<
|
1535
|
+
changeSetResults: Map<number, Response>,
|
1623
1536
|
request: uriParser.ODataRequest,
|
1624
1537
|
) => {
|
1625
1538
|
if (request._defer) {
|
@@ -1787,8 +1700,7 @@ const respondGet = async (
|
|
1787
1700
|
);
|
1788
1701
|
|
1789
1702
|
const response = {
|
1790
|
-
|
1791
|
-
status: 200,
|
1703
|
+
statusCode: 200,
|
1792
1704
|
body: { d },
|
1793
1705
|
headers: { 'content-type': 'application/json' },
|
1794
1706
|
};
|
@@ -1803,15 +1715,14 @@ const respondGet = async (
|
|
1803
1715
|
} else {
|
1804
1716
|
if (request.resourceName === '$metadata') {
|
1805
1717
|
return {
|
1806
|
-
|
1807
|
-
status: 200,
|
1718
|
+
statusCode: 200,
|
1808
1719
|
body: models[vocab].odataMetadata,
|
1809
1720
|
headers: { 'content-type': 'xml' },
|
1810
1721
|
};
|
1811
1722
|
} else {
|
1812
1723
|
// TODO: request.resourceName can be '$serviceroot' or a resource and we should return an odata xml document based on that
|
1813
1724
|
return {
|
1814
|
-
|
1725
|
+
statusCode: 404,
|
1815
1726
|
};
|
1816
1727
|
}
|
1817
1728
|
}
|
@@ -1867,7 +1778,7 @@ const respondPost = async (
|
|
1867
1778
|
}
|
1868
1779
|
|
1869
1780
|
const response = {
|
1870
|
-
|
1781
|
+
statusCode: 201,
|
1871
1782
|
body: result.d[0],
|
1872
1783
|
headers: {
|
1873
1784
|
'content-type': 'application/json',
|
@@ -1915,7 +1826,7 @@ const respondPut = async (
|
|
1915
1826
|
tx: Db.Tx,
|
1916
1827
|
): Promise<Response> => {
|
1917
1828
|
const response = {
|
1918
|
-
|
1829
|
+
statusCode: 200,
|
1919
1830
|
};
|
1920
1831
|
await runHooks('PRERESPOND', request.hooks, {
|
1921
1832
|
req,
|
@@ -29,19 +29,15 @@ import * as sbvrUtils from './sbvr-utils';
|
|
29
29
|
export type OdataBinds = ODataBinds;
|
30
30
|
|
31
31
|
export interface UnparsedRequest {
|
32
|
-
id?: string;
|
33
32
|
method: string;
|
34
33
|
url: string;
|
35
|
-
|
34
|
+
data?: any;
|
36
35
|
headers?: { [header: string]: string };
|
37
36
|
changeSet?: UnparsedRequest[];
|
38
37
|
_isChangeSet?: boolean;
|
39
38
|
}
|
40
39
|
|
41
40
|
export interface ParsedODataRequest {
|
42
|
-
headers?: {
|
43
|
-
[key: string]: string | string[] | undefined;
|
44
|
-
};
|
45
41
|
method: SupportedMethod;
|
46
42
|
url: string;
|
47
43
|
vocabulary: string;
|
@@ -51,7 +47,7 @@ export interface ParsedODataRequest {
|
|
51
47
|
odataQuery: ODataQuery;
|
52
48
|
odataBinds: OdataBinds;
|
53
49
|
custom: AnyObject;
|
54
|
-
id?:
|
50
|
+
id?: number | undefined;
|
55
51
|
_defer?: boolean;
|
56
52
|
}
|
57
53
|
export interface ODataRequest extends ParsedODataRequest {
|
@@ -64,8 +60,8 @@ export interface ODataRequest extends ParsedODataRequest {
|
|
64
60
|
modifiedFields?: ReturnType<
|
65
61
|
AbstractSQLCompiler.EngineInstance['getModifiedFields']
|
66
62
|
>;
|
67
|
-
affectedIds?:
|
68
|
-
pendingAffectedIds?: Promise<
|
63
|
+
affectedIds?: number[];
|
64
|
+
pendingAffectedIds?: Promise<number[]>;
|
69
65
|
hooks?: Array<[string, InstantiatedHooks]>;
|
70
66
|
engine: AbstractSQLCompiler.Engines;
|
71
67
|
}
|
@@ -267,27 +263,15 @@ export const metadataEndpoints = ['$metadata', '$serviceroot'];
|
|
267
263
|
|
268
264
|
export async function parseOData(
|
269
265
|
b: UnparsedRequest & { _isChangeSet?: false },
|
270
|
-
headers?: {
|
271
|
-
[key: string]: string | string[] | undefined;
|
272
|
-
},
|
273
266
|
): Promise<ParsedODataRequest>;
|
274
267
|
export async function parseOData(
|
275
268
|
b: UnparsedRequest & { _isChangeSet: true },
|
276
|
-
headers?: {
|
277
|
-
[key: string]: string | string[] | undefined;
|
278
|
-
},
|
279
269
|
): Promise<ParsedODataRequest[]>;
|
280
270
|
export async function parseOData(
|
281
271
|
b: UnparsedRequest,
|
282
|
-
headers?: {
|
283
|
-
[key: string]: string | string[] | undefined;
|
284
|
-
},
|
285
272
|
): Promise<ParsedODataRequest | ParsedODataRequest[]>;
|
286
273
|
export async function parseOData(
|
287
274
|
b: UnparsedRequest,
|
288
|
-
headers?: {
|
289
|
-
[key: string]: string | string[] | undefined;
|
290
|
-
},
|
291
275
|
): Promise<ParsedODataRequest | ParsedODataRequest[]> {
|
292
276
|
try {
|
293
277
|
if (b._isChangeSet && b.changeSet != null) {
|
@@ -308,14 +292,12 @@ export async function parseOData(
|
|
308
292
|
const odata = memoizedParseOdata(url);
|
309
293
|
|
310
294
|
return {
|
311
|
-
id: b.id,
|
312
|
-
headers: { ...headers, ...b.headers } ?? headers,
|
313
295
|
method: b.method as SupportedMethod,
|
314
296
|
url,
|
315
297
|
vocabulary: apiRoot,
|
316
298
|
resourceName: odata.tree.resource,
|
317
299
|
originalResourceName: odata.tree.resource,
|
318
|
-
values: b.
|
300
|
+
values: b.data ?? {},
|
319
301
|
odataQuery: odata.tree,
|
320
302
|
odataBinds: odata.binds,
|
321
303
|
custom: {},
|
@@ -380,7 +362,7 @@ const parseODataChangeset = (
|
|
380
362
|
originalResourceName: odata.tree.resource,
|
381
363
|
odataBinds: odata.binds,
|
382
364
|
odataQuery: odata.tree,
|
383
|
-
values: b.
|
365
|
+
values: b.data ?? {},
|
384
366
|
custom: {},
|
385
367
|
id: contentId,
|
386
368
|
_defer: defer,
|