@balena/pinejs 15.3.6-build-renovate-node-20-x-039ef84affab5f18591a3889b742d8979db5dc3c-1 → 15.3.6-build-fixes-expand-on-parent-resource-34e60c2a2921e971b04422e7901f4dbc4df2dde7-1
Sign up to get free protection for your applications and to get access to all the features.
- package/.versionbot/CHANGELOG.yml +5 -6
- package/CHANGELOG.md +1 -1
- package/Dockerfile +1 -1
- package/README.md +0 -1
- package/out/config-loader/config-loader.js +1 -0
- package/out/config-loader/config-loader.js.map +1 -1
- package/out/sbvr-api/odata-response.js +7 -0
- package/out/sbvr-api/odata-response.js.map +1 -1
- package/out/webresource-handler/index.d.ts +4 -0
- package/out/webresource-handler/index.js +16 -26
- package/out/webresource-handler/index.js.map +1 -1
- package/package.json +2 -2
- package/src/config-loader/config-loader.ts +2 -0
- package/src/sbvr-api/odata-response.ts +12 -0
- package/src/webresource-handler/index.ts +24 -43
@@ -1,16 +1,15 @@
|
|
1
1
|
- commits:
|
2
|
-
- subject:
|
3
|
-
hash:
|
4
|
-
body:
|
5
|
-
Update node from 16 to 20
|
2
|
+
- subject: Fix $expand on parent resource with child webresource
|
3
|
+
hash: 34e60c2a2921e971b04422e7901f4dbc4df2dde7
|
4
|
+
body: ""
|
6
5
|
footer:
|
7
6
|
Change-type: patch
|
8
7
|
change-type: patch
|
9
|
-
author:
|
8
|
+
author: Otávio Jacobi
|
10
9
|
nested: []
|
11
10
|
version: 15.3.6
|
12
11
|
title: ""
|
13
|
-
date: 2023-08-30T15:
|
12
|
+
date: 2023-08-30T15:57:11.280Z
|
14
13
|
- commits:
|
15
14
|
- subject: Fix failure on delete requests with invalid ID
|
16
15
|
hash: 4749ed86c9a3858a2eb84c58d2a9581c93b91bec
|
package/CHANGELOG.md
CHANGED
@@ -7,7 +7,7 @@ This project adheres to [Semantic Versioning](http://semver.org/).
|
|
7
7
|
# v15.3.6
|
8
8
|
## (2023-08-30)
|
9
9
|
|
10
|
-
*
|
10
|
+
* Fix $expand on parent resource with child webresource [Otávio Jacobi]
|
11
11
|
|
12
12
|
# v15.3.5
|
13
13
|
## (2023-08-30)
|
package/Dockerfile
CHANGED
package/README.md
CHANGED
@@ -66,7 +66,6 @@ An application can choose between two types to save file content or another larg
|
|
66
66
|
|
67
67
|
Please note that `WebResource` is still a work in progress and as such has a few limitations. Such as (but not exclusively):
|
68
68
|
|
69
|
-
- When expanding a resource on a webresource, the output content will not be pre-signed (needs to directly get the resource or association table)
|
70
69
|
- Filtering for specific filenames or size
|
71
70
|
- Deletion of a file may fail and will require to manually delete the file from its storage
|
72
71
|
|
@@ -98,6 +98,7 @@ const setup = (app) => {
|
|
98
98
|
await sbvrUtils.executeModel(tx, model);
|
99
99
|
const apiRoute = `/${model.apiRoot}/*`;
|
100
100
|
const webResourceHandler = data.webResourceHandler ?? (0, webresource_handler_1.getDefaultHandler)();
|
101
|
+
(0, webresource_handler_1.setupWebresourceHandler)(webResourceHandler);
|
101
102
|
const fileUploadMiddleware = (0, webresource_handler_1.getUploaderMiddlware)(webResourceHandler);
|
102
103
|
app
|
103
104
|
.route(apiRoute)
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../../src/config-loader/config-loader.ts"],"names":[],"mappings":";;;AAaA,6CAO2B;AAE3B,yBAAyB;AACzB,4BAA4B;AAC5B,6BAA6B;AAE7B,oDAAoD;AAEpD,uDAAuD;AACvD,
|
1
|
+
{"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../../src/config-loader/config-loader.ts"],"names":[],"mappings":"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"}
|
@@ -5,6 +5,7 @@ const odata_to_abstract_sql_1 = require("@balena/odata-to-abstract-sql");
|
|
5
5
|
const sbvr_types_1 = require("@balena/sbvr-types");
|
6
6
|
const _ = require("lodash");
|
7
7
|
const sbvr_utils_1 = require("./sbvr-utils");
|
8
|
+
const webresource_handler_1 = require("../webresource-handler");
|
8
9
|
const checkForExpansion = async (vocab, abstractSqlModel, parentResourceName, fieldName, row, opts) => {
|
9
10
|
let field = row[fieldName];
|
10
11
|
if (field == null) {
|
@@ -96,9 +97,15 @@ const process = async (vocab, abstractSqlModel, resourceName, rows, { includeMet
|
|
96
97
|
const localFields = getLocalFields(table);
|
97
98
|
const expandableFields = fieldNames.filter((fieldName) => !localFields.hasOwnProperty(fieldName));
|
98
99
|
const odataIdField = (0, odata_to_abstract_sql_1.sqlNameToODataName)(table.idField);
|
100
|
+
const webResourceHandler = (0, webresource_handler_1.getWebresourceHandler)();
|
99
101
|
for (const row of rows) {
|
100
102
|
for (const fieldName of processedFields) {
|
101
103
|
row[fieldName] = fetchProcessingFields[fieldName](row[fieldName]);
|
104
|
+
if (webResourceHandler &&
|
105
|
+
(0, webresource_handler_1.isWebResourceField)(fieldName, table) &&
|
106
|
+
row[fieldName]?.href != null) {
|
107
|
+
row[fieldName] = await webResourceHandler.onPreRespond(row[fieldName]);
|
108
|
+
}
|
102
109
|
}
|
103
110
|
if (includeMetadata) {
|
104
111
|
row.__metadata = {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"odata-response.js","sourceRoot":"","sources":["../../src/sbvr-api/odata-response.ts"],"names":[],"mappings":";;;AAiBA,yEAAmE;AACnE,mDAAyD;AACzD,4BAA4B;AAC5B,6CAAyE;
|
1
|
+
{"version":3,"file":"odata-response.js","sourceRoot":"","sources":["../../src/sbvr-api/odata-response.ts"],"names":[],"mappings":"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"}
|
@@ -3,6 +3,7 @@ import type * as Express from 'express';
|
|
3
3
|
import * as stream from 'stream';
|
4
4
|
import type { WebResourceType as WebResource } from '@balena/sbvr-types';
|
5
5
|
import { TypedError } from 'typed-error';
|
6
|
+
import { AbstractSqlTable } from '@balena/abstract-sql-compiler';
|
6
7
|
export * from './handlers';
|
7
8
|
export interface IncomingFile {
|
8
9
|
fieldname: string;
|
@@ -26,6 +27,9 @@ export declare class FileSizeExceededError extends WebResourceError {
|
|
26
27
|
name: string;
|
27
28
|
constructor(maxSize: number);
|
28
29
|
}
|
30
|
+
export declare const setupWebresourceHandler: (handler: WebResourceHandler) => void;
|
31
|
+
export declare const getWebresourceHandler: () => WebResourceHandler | undefined;
|
32
|
+
export declare const isWebResourceField: (odataFieldName: string, { fields }: AbstractSqlTable) => boolean;
|
29
33
|
export declare const getUploaderMiddlware: (handler: WebResourceHandler) => Express.RequestHandler;
|
30
34
|
export declare const normalizeHref: (href: string) => string;
|
31
35
|
export declare const getDefaultHandler: () => WebResourceHandler;
|
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
15
15
|
};
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
17
|
-
exports.setupUploadHooks = exports.getDefaultHandler = exports.normalizeHref = exports.getUploaderMiddlware = exports.FileSizeExceededError = exports.WebResourceError = void 0;
|
17
|
+
exports.setupUploadHooks = exports.getDefaultHandler = exports.normalizeHref = exports.getUploaderMiddlware = exports.isWebResourceField = exports.getWebresourceHandler = exports.setupWebresourceHandler = exports.FileSizeExceededError = exports.WebResourceError = void 0;
|
18
18
|
const busboy = require("busboy");
|
19
19
|
const is = require("type-is");
|
20
20
|
const uriParser = require("../sbvr-api/uri-parser");
|
@@ -42,6 +42,20 @@ const getLogger = (vocab) => {
|
|
42
42
|
}
|
43
43
|
return console;
|
44
44
|
};
|
45
|
+
let configuredWebResourceHandler;
|
46
|
+
const setupWebresourceHandler = (handler) => {
|
47
|
+
configuredWebResourceHandler = handler;
|
48
|
+
};
|
49
|
+
exports.setupWebresourceHandler = setupWebresourceHandler;
|
50
|
+
const getWebresourceHandler = () => {
|
51
|
+
return configuredWebResourceHandler;
|
52
|
+
};
|
53
|
+
exports.getWebresourceHandler = getWebresourceHandler;
|
54
|
+
const isWebResourceField = (odataFieldName, { fields }) => {
|
55
|
+
const dbFieldName = (0, odata_to_abstract_sql_1.odataNameToSqlName)(odataFieldName);
|
56
|
+
return fields.some((field) => field.fieldName === dbFieldName && field.dataType === 'WebResource');
|
57
|
+
};
|
58
|
+
exports.isWebResourceField = isWebResourceField;
|
45
59
|
const isFileInValidPath = async (fieldname, req) => {
|
46
60
|
if (req.method !== 'POST' && req.method !== 'PATCH') {
|
47
61
|
return false;
|
@@ -62,9 +76,7 @@ const isFileInValidPath = async (fieldname, req) => {
|
|
62
76
|
return false;
|
63
77
|
}
|
64
78
|
const sqlResourceName = (0, odata_to_abstract_sql_1.odataNameToSqlName)(resourceName);
|
65
|
-
|
66
|
-
const dbFieldName = (0, odata_to_abstract_sql_1.odataNameToSqlName)(fieldname);
|
67
|
-
return fields.some((field) => field.fieldName === dbFieldName && field.dataType === 'WebResource');
|
79
|
+
return (0, exports.isWebResourceField)(fieldname, model.abstractSql.tables[sqlResourceName]);
|
68
80
|
};
|
69
81
|
const getUploaderMiddlware = (handler) => {
|
70
82
|
return async (req, res, next) => {
|
@@ -165,27 +177,6 @@ const getCreateWebResourceHooks = (webResourceHandler) => {
|
|
165
177
|
},
|
166
178
|
};
|
167
179
|
};
|
168
|
-
const getReadWebResourceHooks = (webResourceHandler) => {
|
169
|
-
return {
|
170
|
-
PRERESPOND: async ({ request, response }) => {
|
171
|
-
const fields = getWebResourceFields(request, false);
|
172
|
-
if (fields.length === 0) {
|
173
|
-
return;
|
174
|
-
}
|
175
|
-
if (typeof response.body === 'object' && response.body.d != null) {
|
176
|
-
const transformedItems = await Promise.all(response.body.d.map(async (responseItem) => {
|
177
|
-
for (const field of fields) {
|
178
|
-
if (responseItem[field] != null) {
|
179
|
-
responseItem[field] = await webResourceHandler.onPreRespond(responseItem[field]);
|
180
|
-
}
|
181
|
-
}
|
182
|
-
return responseItem;
|
183
|
-
}));
|
184
|
-
response.body.d = transformedItems;
|
185
|
-
}
|
186
|
-
},
|
187
|
-
};
|
188
|
-
};
|
189
180
|
const isDefined = (x) => x != null;
|
190
181
|
const getWebResourcesHrefs = (webResources) => {
|
191
182
|
const hrefs = (webResources ?? []).flatMap((resource) => Object.values(resource ?? {})
|
@@ -276,7 +267,6 @@ const setupUploadHooks = (handler, apiRoot, resourceName) => {
|
|
276
267
|
sbvrUtils.addPureHook('DELETE', apiRoot, resourceName, getRemoveWebResourceHooks(handler));
|
277
268
|
sbvrUtils.addPureHook('PATCH', apiRoot, resourceName, getRemoveWebResourceHooks(handler));
|
278
269
|
sbvrUtils.addPureHook('POST', apiRoot, resourceName, getCreateWebResourceHooks(handler));
|
279
|
-
sbvrUtils.addPureHook('GET', apiRoot, resourceName, getReadWebResourceHooks(handler));
|
280
270
|
};
|
281
271
|
exports.setupUploadHooks = setupUploadHooks;
|
282
272
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/webresource-handler/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,iCAAiC;AACjC,8BAA8B;AAE9B,oDAAoD;AACpD,oDAAoD;AACpD,uDAA8D;AAC9D,yDAA2D;AAC3D,wDAAqD;AACrD,yEAGuC;AACvC,kDAA4D;AAE5D,6CAAyC;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/webresource-handler/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@balena/pinejs",
|
3
|
-
"version": "15.3.6-build-
|
3
|
+
"version": "15.3.6-build-fixes-expand-on-parent-resource-34e60c2a2921e971b04422e7901f4dbc4df2dde7-1",
|
4
4
|
"main": "out/server-glue/module",
|
5
5
|
"repository": "git@github.com:balena-io/pinejs.git",
|
6
6
|
"license": "Apache-2.0",
|
@@ -144,6 +144,6 @@
|
|
144
144
|
"recursive": true
|
145
145
|
},
|
146
146
|
"versionist": {
|
147
|
-
"publishedAt": "2023-08-30T15:
|
147
|
+
"publishedAt": "2023-08-30T15:57:12.359Z"
|
148
148
|
}
|
149
149
|
}
|
@@ -32,6 +32,7 @@ import {
|
|
32
32
|
getUploaderMiddlware,
|
33
33
|
WebResourceHandler,
|
34
34
|
setupUploadHooks,
|
35
|
+
setupWebresourceHandler,
|
35
36
|
} from '../webresource-handler';
|
36
37
|
import { AliasValidNodeType } from '../sbvr-api/translations';
|
37
38
|
|
@@ -205,6 +206,7 @@ export const setup = (app: Express.Application) => {
|
|
205
206
|
const webResourceHandler =
|
206
207
|
data.webResourceHandler ?? getDefaultHandler();
|
207
208
|
|
209
|
+
setupWebresourceHandler(webResourceHandler);
|
208
210
|
const fileUploadMiddleware =
|
209
211
|
getUploaderMiddlware(webResourceHandler);
|
210
212
|
app
|
@@ -19,6 +19,10 @@ import { sqlNameToODataName } from '@balena/odata-to-abstract-sql';
|
|
19
19
|
import sbvrTypes, { SbvrType } from '@balena/sbvr-types';
|
20
20
|
import * as _ from 'lodash';
|
21
21
|
import { resolveNavigationResource, resolveSynonym } from './sbvr-utils';
|
22
|
+
import {
|
23
|
+
getWebresourceHandler,
|
24
|
+
isWebResourceField,
|
25
|
+
} from '../webresource-handler';
|
22
26
|
|
23
27
|
const checkForExpansion = async (
|
24
28
|
vocab: string,
|
@@ -155,9 +159,17 @@ export const process = async (
|
|
155
159
|
);
|
156
160
|
|
157
161
|
const odataIdField = sqlNameToODataName(table.idField);
|
162
|
+
const webResourceHandler = getWebresourceHandler();
|
158
163
|
for (const row of rows) {
|
159
164
|
for (const fieldName of processedFields) {
|
160
165
|
row[fieldName] = fetchProcessingFields[fieldName](row[fieldName]);
|
166
|
+
if (
|
167
|
+
webResourceHandler &&
|
168
|
+
isWebResourceField(fieldName, table) &&
|
169
|
+
row[fieldName]?.href != null
|
170
|
+
) {
|
171
|
+
row[fieldName] = await webResourceHandler.onPreRespond(row[fieldName]);
|
172
|
+
}
|
161
173
|
}
|
162
174
|
if (includeMetadata) {
|
163
175
|
row.__metadata = {
|
@@ -14,6 +14,7 @@ import {
|
|
14
14
|
import { errors, permissions } from '../server-glue/module';
|
15
15
|
import type { WebResourceType as WebResource } from '@balena/sbvr-types';
|
16
16
|
import { TypedError } from 'typed-error';
|
17
|
+
import { AbstractSqlTable } from '@balena/abstract-sql-compiler';
|
17
18
|
|
18
19
|
export * from './handlers';
|
19
20
|
|
@@ -56,6 +57,26 @@ const getLogger = (vocab?: string): Console => {
|
|
56
57
|
return console;
|
57
58
|
};
|
58
59
|
|
60
|
+
let configuredWebResourceHandler: WebResourceHandler | undefined;
|
61
|
+
export const setupWebresourceHandler = (handler: WebResourceHandler): void => {
|
62
|
+
configuredWebResourceHandler = handler;
|
63
|
+
};
|
64
|
+
|
65
|
+
export const getWebresourceHandler = (): WebResourceHandler | undefined => {
|
66
|
+
return configuredWebResourceHandler;
|
67
|
+
};
|
68
|
+
|
69
|
+
export const isWebResourceField = (
|
70
|
+
odataFieldName: string,
|
71
|
+
{ fields }: AbstractSqlTable,
|
72
|
+
): boolean => {
|
73
|
+
const dbFieldName = odataNameToSqlName(odataFieldName);
|
74
|
+
return fields.some(
|
75
|
+
(field) =>
|
76
|
+
field.fieldName === dbFieldName && field.dataType === 'WebResource',
|
77
|
+
);
|
78
|
+
};
|
79
|
+
|
59
80
|
const isFileInValidPath = async (
|
60
81
|
fieldname: string,
|
61
82
|
req: Express.Request,
|
@@ -88,11 +109,9 @@ const isFileInValidPath = async (
|
|
88
109
|
}
|
89
110
|
|
90
111
|
const sqlResourceName = odataNameToSqlName(resourceName);
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
(field) =>
|
95
|
-
field.fieldName === dbFieldName && field.dataType === 'WebResource',
|
112
|
+
return isWebResourceField(
|
113
|
+
fieldname,
|
114
|
+
model.abstractSql.tables[sqlResourceName],
|
96
115
|
);
|
97
116
|
};
|
98
117
|
|
@@ -229,37 +248,6 @@ const getCreateWebResourceHooks = (
|
|
229
248
|
};
|
230
249
|
};
|
231
250
|
|
232
|
-
const getReadWebResourceHooks = (
|
233
|
-
webResourceHandler: WebResourceHandler,
|
234
|
-
): sbvrUtils.Hooks => {
|
235
|
-
return {
|
236
|
-
// Before returning a web resource we might need to do some modifications on the payload (e.g. presigning)
|
237
|
-
PRERESPOND: async ({ request, response }) => {
|
238
|
-
const fields = getWebResourceFields(request, false);
|
239
|
-
|
240
|
-
if (fields.length === 0) {
|
241
|
-
return;
|
242
|
-
}
|
243
|
-
|
244
|
-
if (typeof response.body === 'object' && response.body.d != null) {
|
245
|
-
const transformedItems = await Promise.all(
|
246
|
-
response.body.d.map(async (responseItem: any) => {
|
247
|
-
for (const field of fields) {
|
248
|
-
if (responseItem[field] != null) {
|
249
|
-
responseItem[field] = await webResourceHandler.onPreRespond(
|
250
|
-
responseItem[field],
|
251
|
-
);
|
252
|
-
}
|
253
|
-
}
|
254
|
-
return responseItem;
|
255
|
-
}),
|
256
|
-
);
|
257
|
-
response.body.d = transformedItems;
|
258
|
-
}
|
259
|
-
},
|
260
|
-
};
|
261
|
-
};
|
262
|
-
|
263
251
|
const isDefined = <T>(x: T | undefined | null): x is T => x != null;
|
264
252
|
|
265
253
|
const getWebResourcesHrefs = (
|
@@ -431,11 +419,4 @@ export const setupUploadHooks = (
|
|
431
419
|
resourceName,
|
432
420
|
getCreateWebResourceHooks(handler),
|
433
421
|
);
|
434
|
-
|
435
|
-
sbvrUtils.addPureHook(
|
436
|
-
'GET',
|
437
|
-
apiRoot,
|
438
|
-
resourceName,
|
439
|
-
getReadWebResourceHooks(handler),
|
440
|
-
);
|
441
422
|
};
|