@stemy/backend 2.9.0 → 2.9.1
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.
- package/bundles/stemy-backend.umd.js +24 -18
- package/bundles/stemy-backend.umd.js.map +1 -1
- package/bundles/stemy-backend.umd.min.js +1 -1
- package/bundles/stemy-backend.umd.min.js.map +1 -1
- package/esm2015/rest-controllers/assets.controller.js +18 -19
- package/fesm2015/stemy-backend.js +18 -19
- package/fesm2015/stemy-backend.js.map +1 -1
- package/package.json +1 -1
- package/rest-controllers/assets.controller.d.ts +4 -3
|
@@ -53,34 +53,33 @@ let AssetsController = class AssetsController {
|
|
|
53
53
|
}
|
|
54
54
|
});
|
|
55
55
|
}
|
|
56
|
-
getImageRotation(id, params, rotation = 0) {
|
|
57
|
-
var _a;
|
|
56
|
+
getImageRotation(id, params, res, rotation = 0) {
|
|
58
57
|
return __awaiter(this, void 0, void 0, function* () {
|
|
59
|
-
const asset = yield this.
|
|
60
|
-
if (!asset) {
|
|
61
|
-
throw new HttpError(404, `Image with id: '${id}' not found.`);
|
|
62
|
-
}
|
|
63
|
-
if ((_a = asset.metadata) === null || _a === void 0 ? void 0 : _a.classified) {
|
|
64
|
-
throw new HttpError(403, `Image is classified, and can be only downloaded from a custom url.`);
|
|
65
|
-
}
|
|
58
|
+
const asset = yield this.getAsset("Asset", id, params.lazy, res);
|
|
66
59
|
params.rotation = params.rotation || rotation;
|
|
67
60
|
return asset.downloadImage(params);
|
|
68
61
|
});
|
|
69
62
|
}
|
|
70
|
-
getImage(id, params) {
|
|
63
|
+
getImage(id, params, res) {
|
|
71
64
|
return __awaiter(this, void 0, void 0, function* () {
|
|
72
|
-
return this.getImageRotation(id, params);
|
|
65
|
+
return this.getImageRotation(id, params, res);
|
|
73
66
|
});
|
|
74
67
|
}
|
|
75
68
|
getFile(id, lazy, res) {
|
|
69
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
70
|
+
const asset = yield this.getAsset("Asset", id, lazy, res);
|
|
71
|
+
return asset.download();
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
getAsset(type, id, lazy, res) {
|
|
76
75
|
var _a, _b;
|
|
77
76
|
return __awaiter(this, void 0, void 0, function* () {
|
|
78
77
|
const asset = yield this.assetResolver.resolve(id, lazy);
|
|
79
78
|
if (!asset) {
|
|
80
|
-
throw new HttpError(404,
|
|
79
|
+
throw new HttpError(404, `${type} with id: '${id}' not found.`);
|
|
81
80
|
}
|
|
82
81
|
if ((_a = asset.metadata) === null || _a === void 0 ? void 0 : _a.classified) {
|
|
83
|
-
throw new HttpError(403,
|
|
82
|
+
throw new HttpError(403, `${type} is classified, and can be only downloaded from a custom url.`);
|
|
84
83
|
}
|
|
85
84
|
const ext = (_b = asset.metadata) === null || _b === void 0 ? void 0 : _b.extension;
|
|
86
85
|
if (ext) {
|
|
@@ -89,7 +88,7 @@ let AssetsController = class AssetsController {
|
|
|
89
88
|
if (asset.contentType) {
|
|
90
89
|
res.header("content-type", asset.contentType);
|
|
91
90
|
}
|
|
92
|
-
return asset
|
|
91
|
+
return asset;
|
|
93
92
|
});
|
|
94
93
|
}
|
|
95
94
|
};
|
|
@@ -111,16 +110,16 @@ __decorate([
|
|
|
111
110
|
], AssetsController.prototype, "uploadUrl", null);
|
|
112
111
|
__decorate([
|
|
113
112
|
Get("/image/:id/:rotation"),
|
|
114
|
-
__param(0, Param("id")), __param(1, QueryParams()), __param(2, Param("rotation")),
|
|
113
|
+
__param(0, Param("id")), __param(1, QueryParams()), __param(2, Res()), __param(3, Param("rotation")),
|
|
115
114
|
__metadata("design:type", Function),
|
|
116
|
-
__metadata("design:paramtypes", [String, Object, Number]),
|
|
115
|
+
__metadata("design:paramtypes", [String, Object, Object, Number]),
|
|
117
116
|
__metadata("design:returntype", Promise)
|
|
118
117
|
], AssetsController.prototype, "getImageRotation", null);
|
|
119
118
|
__decorate([
|
|
120
119
|
Get("/image/:id"),
|
|
121
|
-
__param(0, Param("id")), __param(1, QueryParams()),
|
|
120
|
+
__param(0, Param("id")), __param(1, QueryParams()), __param(2, Res()),
|
|
122
121
|
__metadata("design:type", Function),
|
|
123
|
-
__metadata("design:paramtypes", [String, Object]),
|
|
122
|
+
__metadata("design:paramtypes", [String, Object, Object]),
|
|
124
123
|
__metadata("design:returntype", Promise)
|
|
125
124
|
], AssetsController.prototype, "getImage", null);
|
|
126
125
|
__decorate([
|
|
@@ -136,4 +135,4 @@ AssetsController = __decorate([
|
|
|
136
135
|
__metadata("design:paramtypes", [Assets, AssetResolver])
|
|
137
136
|
], AssetsController);
|
|
138
137
|
export { AssetsController };
|
|
139
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
138
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXRzLmNvbnRyb2xsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcmVzdC1jb250cm9sbGVycy9hc3NldHMuY29udHJvbGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sVUFBVSxDQUFDO0FBQ3BDLE9BQU8sRUFDSCxVQUFVLEVBQ1YsSUFBSSxFQUNKLFVBQVUsRUFDVixHQUFHLEVBQ0gsU0FBUyxFQUNULEtBQUssRUFDTCxJQUFJLEVBQ0osVUFBVSxFQUNWLFdBQVcsRUFDWCxHQUFHLEVBQ0gsWUFBWSxFQUNmLE1BQU0scUJBQXFCLENBQUM7QUFFN0IsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBQzFDLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztJQUs1QyxnQkFBZ0IsU0FBaEIsZ0JBQWdCO0lBRXpCLFlBQXFCLE1BQWMsRUFBVyxhQUE0QjtRQUFyRCxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVcsa0JBQWEsR0FBYixhQUFhLENBQWU7SUFFMUUsQ0FBQztJQUlLLE1BQU0sQ0FBdUIsSUFBeUI7O1lBQ3hELElBQUk7Z0JBQ0EsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFFBQVEsS0FBSywwQkFBMEIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO2dCQUN4RixNQUFNLEtBQUssR0FBRyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsRUFBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBQyxFQUFFLFdBQVcsQ0FBQyxDQUFDO2dCQUNqRyxPQUFPLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQzthQUN6QjtZQUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUNSLE1BQU0sR0FB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SUFDSyxXQUFBLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQTs7Ozs4Q0FTakM7QUFJRDtJQUZDLFVBQVUsRUFBRTtJQUNaLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDSyxXQUFBLElBQUksRUFBRSxDQUFBOzs7O2lEQVF0QjtBQUdEO0lBREMsR0FBRyxDQUFDLHNCQUFzQixDQUFDO0lBQ0osV0FBQSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUEsRUFBYyxXQUFBLFdBQVcsRUFBRSxDQUFBLEVBQTZCLFdBQUEsR0FBRyxFQUFFLENBQUEsRUFBaUIsV0FBQSxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUE7Ozs7d0RBSWpJO0FBR0Q7SUFEQyxHQUFHLENBQUMsWUFBWSxDQUFDO0lBQ0YsV0FBQSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUEsRUFBYyxXQUFBLFdBQVcsRUFBRSxDQUFBLEVBQTZCLFdBQUEsR0FBRyxFQUFFLENBQUE7Ozs7Z0RBRXZGO0FBR0Q7SUFEQyxHQUFHLENBQUMsTUFBTSxDQUFDO0lBQ0csV0FBQSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUEsRUFBYyxXQUFBLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQSxFQUFpQixXQUFBLEdBQUcsRUFBRSxDQUFBOzs7OytDQUcvRTtBQS9DUSxnQkFBZ0I7SUFGNUIsVUFBVSxFQUFFO0lBQ1osVUFBVSxDQUFDLFNBQVMsQ0FBQztxQ0FHVyxNQUFNLEVBQTBCLGFBQWE7R0FGakUsZ0JBQWdCLENBa0U1QjtTQWxFWSxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1JlYWRhYmxlfSBmcm9tIFwic3RyZWFtXCI7XHJcbmltcG9ydCB7aW5qZWN0YWJsZX0gZnJvbSBcInRzeXJpbmdlXCI7XHJcbmltcG9ydCB7XHJcbiAgICBBdXRob3JpemVkLFxyXG4gICAgQm9keSxcclxuICAgIENvbnRyb2xsZXIsXHJcbiAgICBHZXQsXHJcbiAgICBIdHRwRXJyb3IsXHJcbiAgICBQYXJhbSxcclxuICAgIFBvc3QsXHJcbiAgICBRdWVyeVBhcmFtLFxyXG4gICAgUXVlcnlQYXJhbXMsXHJcbiAgICBSZXMsXHJcbiAgICBVcGxvYWRlZEZpbGVcclxufSBmcm9tIFwicm91dGluZy1jb250cm9sbGVyc1wiO1xyXG5pbXBvcnQge0lBc3NldCwgSUFzc2V0SW1hZ2VQYXJhbXN9IGZyb20gXCIuLi9jb21tb24tdHlwZXNcIjtcclxuaW1wb3J0IHtBc3NldHN9IGZyb20gXCIuLi9zZXJ2aWNlcy9hc3NldHNcIjtcclxuaW1wb3J0IHtBc3NldFJlc29sdmVyfSBmcm9tIFwiLi4vc2VydmljZXMvYXNzZXQtcmVzb2x2ZXJcIjtcclxuaW1wb3J0IHtSZXNwb25zZX0gZnJvbSBcImV4cHJlc3NcIjtcclxuXHJcbkBpbmplY3RhYmxlKClcclxuQENvbnRyb2xsZXIoXCIvYXNzZXRzXCIpXHJcbmV4cG9ydCBjbGFzcyBBc3NldHNDb250cm9sbGVyIHtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihyZWFkb25seSBhc3NldHM6IEFzc2V0cywgcmVhZG9ubHkgYXNzZXRSZXNvbHZlcjogQXNzZXRSZXNvbHZlcikge1xyXG5cclxuICAgIH1cclxuXHJcbiAgICBAQXV0aG9yaXplZCgpXHJcbiAgICBAUG9zdChcIlwiKVxyXG4gICAgYXN5bmMgdXBsb2FkKEBVcGxvYWRlZEZpbGUoXCJmaWxlXCIpIGZpbGU6IEV4cHJlc3MuTXVsdGVyLkZpbGUpIHtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICBjb25zdCBjb250ZW50VHlwZSA9IGZpbGUubWltZXR5cGUgPT09IFwiYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtXCIgPyBudWxsIDogZmlsZS5taW1ldHlwZTtcclxuICAgICAgICAgICAgY29uc3QgYXNzZXQgPSBhd2FpdCB0aGlzLmFzc2V0cy53cml0ZUJ1ZmZlcihmaWxlLmJ1ZmZlciwge2ZpbGVuYW1lOiBmaWxlLmZpbGVuYW1lfSwgY29udGVudFR5cGUpO1xyXG4gICAgICAgICAgICByZXR1cm4gYXNzZXQudG9KU09OKCk7XHJcbiAgICAgICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgICBjb25zdCBtc2cgPSBlPy5tZXNzYWdlIHx8IGUgfHwgXCJVbmtub3duIGVycm9yXCI7XHJcbiAgICAgICAgICAgIHRocm93IG5ldyBIdHRwRXJyb3IoNDAwLCBgQXNzZXQgY2FuJ3QgYmUgdXBsb2FkZWQuXFxuJHttc2d9YCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBBdXRob3JpemVkKClcclxuICAgIEBQb3N0KFwidXJsXCIpXHJcbiAgICBhc3luYyB1cGxvYWRVcmwoQEJvZHkoKSBib2R5OiBhbnkpIHtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICBjb25zdCBhc3NldCA9IGF3YWl0IHRoaXMuYXNzZXRzLndyaXRlVXJsKGJvZHkudXJsLCBib2R5KTtcclxuICAgICAgICAgICAgcmV0dXJuIGFzc2V0LnRvSlNPTigpO1xyXG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgICAgICAgY29uc3QgbXNnID0gZT8ubWVzc2FnZSB8fCBlIHx8IFwiVW5rbm93biBlcnJvclwiO1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgSHR0cEVycm9yKDQwMCwgYEFzc2V0IGNhbid0IGJlIHVwbG9hZGVkLlxcbiR7bXNnfWApO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAR2V0KFwiL2ltYWdlLzppZC86cm90YXRpb25cIilcclxuICAgIGFzeW5jIGdldEltYWdlUm90YXRpb24oQFBhcmFtKFwiaWRcIikgaWQ6IHN0cmluZywgQFF1ZXJ5UGFyYW1zKCkgcGFyYW1zOiBJQXNzZXRJbWFnZVBhcmFtcywgQFJlcygpIHJlczogUmVzcG9uc2UsIEBQYXJhbShcInJvdGF0aW9uXCIpIHJvdGF0aW9uOiBudW1iZXIgPSAwKTogUHJvbWlzZTxSZWFkYWJsZT4ge1xyXG4gICAgICAgIGNvbnN0IGFzc2V0ID0gYXdhaXQgdGhpcy5nZXRBc3NldChcIkFzc2V0XCIsIGlkLCBwYXJhbXMubGF6eSwgcmVzKTtcclxuICAgICAgICBwYXJhbXMucm90YXRpb24gPSBwYXJhbXMucm90YXRpb24gfHwgcm90YXRpb247XHJcbiAgICAgICAgcmV0dXJuIGFzc2V0LmRvd25sb2FkSW1hZ2UocGFyYW1zKTtcclxuICAgIH1cclxuXHJcbiAgICBAR2V0KFwiL2ltYWdlLzppZFwiKVxyXG4gICAgYXN5bmMgZ2V0SW1hZ2UoQFBhcmFtKFwiaWRcIikgaWQ6IHN0cmluZywgQFF1ZXJ5UGFyYW1zKCkgcGFyYW1zOiBJQXNzZXRJbWFnZVBhcmFtcywgQFJlcygpIHJlczogUmVzcG9uc2UpOiBQcm9taXNlPFJlYWRhYmxlPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0SW1hZ2VSb3RhdGlvbihpZCwgcGFyYW1zLCByZXMpO1xyXG4gICAgfVxyXG5cclxuICAgIEBHZXQoXCIvOmlkXCIpXHJcbiAgICBhc3luYyBnZXRGaWxlKEBQYXJhbShcImlkXCIpIGlkOiBzdHJpbmcsIEBRdWVyeVBhcmFtKFwibGF6eVwiKSBsYXp5OiBib29sZWFuLCBAUmVzKCkgcmVzOiBSZXNwb25zZSk6IFByb21pc2U8UmVhZGFibGU+IHtcclxuICAgICAgICBjb25zdCBhc3NldCA9IGF3YWl0IHRoaXMuZ2V0QXNzZXQoXCJBc3NldFwiLCBpZCwgbGF6eSwgcmVzKTtcclxuICAgICAgICByZXR1cm4gYXNzZXQuZG93bmxvYWQoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgYXN5bmMgZ2V0QXNzZXQodHlwZTogc3RyaW5nLCBpZDogc3RyaW5nLCBsYXp5OiBib29sZWFuLCByZXM6IFJlc3BvbnNlKTogUHJvbWlzZTxJQXNzZXQ+IHtcclxuICAgICAgICBjb25zdCBhc3NldCA9IGF3YWl0IHRoaXMuYXNzZXRSZXNvbHZlci5yZXNvbHZlKGlkLCBsYXp5KTtcclxuICAgICAgICBpZiAoIWFzc2V0KSB7XHJcbiAgICAgICAgICAgIHRocm93IG5ldyBIdHRwRXJyb3IoNDA0LCBgJHt0eXBlfSB3aXRoIGlkOiAnJHtpZH0nIG5vdCBmb3VuZC5gKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGFzc2V0Lm1ldGFkYXRhPy5jbGFzc2lmaWVkKSB7XHJcbiAgICAgICAgICAgIHRocm93IG5ldyBIdHRwRXJyb3IoNDAzLCBgJHt0eXBlfSBpcyBjbGFzc2lmaWVkLCBhbmQgY2FuIGJlIG9ubHkgZG93bmxvYWRlZCBmcm9tIGEgY3VzdG9tIHVybC5gKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgZXh0ID0gYXNzZXQubWV0YWRhdGE/LmV4dGVuc2lvbjtcclxuICAgICAgICBpZiAoZXh0KSB7XHJcbiAgICAgICAgICAgIHJlcy5oZWFkZXIoXCJjb250ZW50LWRpc3Bvc2l0aW9uXCIsIGBpbmxpbmU7IGZpbGVuYW1lPSR7YXNzZXQuZmlsZW5hbWV9LiR7ZXh0fWApO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoYXNzZXQuY29udGVudFR5cGUpIHtcclxuICAgICAgICAgICAgcmVzLmhlYWRlcihcImNvbnRlbnQtdHlwZVwiLCBhc3NldC5jb250ZW50VHlwZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBhc3NldDtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -2,7 +2,7 @@ import { dirname, basename, join, resolve } from 'path';
|
|
|
2
2
|
import { json } from 'body-parser';
|
|
3
3
|
import { sign, verify } from 'jsonwebtoken';
|
|
4
4
|
import { injectable, scoped, Lifecycle, injectAll, singleton, inject, isFactoryProvider, container } from 'tsyringe';
|
|
5
|
-
import { createParamDecorator, BadRequestError, HttpError, getMetadataArgsStorage, Authorized, Post, UploadedFile, Body, Get, Param, QueryParams,
|
|
5
|
+
import { createParamDecorator, BadRequestError, HttpError, getMetadataArgsStorage, Authorized, Post, UploadedFile, Body, Get, Param, QueryParams, Res, QueryParam, Controller, CurrentUser, Middleware, useContainer, useExpressServer } from 'routing-controllers';
|
|
6
6
|
import { OnMessage, ConnectedSocket, MessageBody, SocketController, Middleware as Middleware$1, useContainer as useContainer$1, useSocketServer } from 'socket-controllers';
|
|
7
7
|
import { routingControllersToSpec } from 'routing-controllers-openapi';
|
|
8
8
|
import { defaultMetadataStorage } from 'class-transformer/storage';
|
|
@@ -2879,34 +2879,33 @@ let AssetsController = class AssetsController {
|
|
|
2879
2879
|
}
|
|
2880
2880
|
});
|
|
2881
2881
|
}
|
|
2882
|
-
getImageRotation(id, params, rotation = 0) {
|
|
2883
|
-
var _a;
|
|
2882
|
+
getImageRotation(id, params, res, rotation = 0) {
|
|
2884
2883
|
return __awaiter$7(this, void 0, void 0, function* () {
|
|
2885
|
-
const asset = yield this.
|
|
2886
|
-
if (!asset) {
|
|
2887
|
-
throw new HttpError(404, `Image with id: '${id}' not found.`);
|
|
2888
|
-
}
|
|
2889
|
-
if ((_a = asset.metadata) === null || _a === void 0 ? void 0 : _a.classified) {
|
|
2890
|
-
throw new HttpError(403, `Image is classified, and can be only downloaded from a custom url.`);
|
|
2891
|
-
}
|
|
2884
|
+
const asset = yield this.getAsset("Asset", id, params.lazy, res);
|
|
2892
2885
|
params.rotation = params.rotation || rotation;
|
|
2893
2886
|
return asset.downloadImage(params);
|
|
2894
2887
|
});
|
|
2895
2888
|
}
|
|
2896
|
-
getImage(id, params) {
|
|
2889
|
+
getImage(id, params, res) {
|
|
2897
2890
|
return __awaiter$7(this, void 0, void 0, function* () {
|
|
2898
|
-
return this.getImageRotation(id, params);
|
|
2891
|
+
return this.getImageRotation(id, params, res);
|
|
2899
2892
|
});
|
|
2900
2893
|
}
|
|
2901
2894
|
getFile(id, lazy, res) {
|
|
2895
|
+
return __awaiter$7(this, void 0, void 0, function* () {
|
|
2896
|
+
const asset = yield this.getAsset("Asset", id, lazy, res);
|
|
2897
|
+
return asset.download();
|
|
2898
|
+
});
|
|
2899
|
+
}
|
|
2900
|
+
getAsset(type, id, lazy, res) {
|
|
2902
2901
|
var _a, _b;
|
|
2903
2902
|
return __awaiter$7(this, void 0, void 0, function* () {
|
|
2904
2903
|
const asset = yield this.assetResolver.resolve(id, lazy);
|
|
2905
2904
|
if (!asset) {
|
|
2906
|
-
throw new HttpError(404,
|
|
2905
|
+
throw new HttpError(404, `${type} with id: '${id}' not found.`);
|
|
2907
2906
|
}
|
|
2908
2907
|
if ((_a = asset.metadata) === null || _a === void 0 ? void 0 : _a.classified) {
|
|
2909
|
-
throw new HttpError(403,
|
|
2908
|
+
throw new HttpError(403, `${type} is classified, and can be only downloaded from a custom url.`);
|
|
2910
2909
|
}
|
|
2911
2910
|
const ext = (_b = asset.metadata) === null || _b === void 0 ? void 0 : _b.extension;
|
|
2912
2911
|
if (ext) {
|
|
@@ -2915,7 +2914,7 @@ let AssetsController = class AssetsController {
|
|
|
2915
2914
|
if (asset.contentType) {
|
|
2916
2915
|
res.header("content-type", asset.contentType);
|
|
2917
2916
|
}
|
|
2918
|
-
return asset
|
|
2917
|
+
return asset;
|
|
2919
2918
|
});
|
|
2920
2919
|
}
|
|
2921
2920
|
};
|
|
@@ -2937,16 +2936,16 @@ __decorate$a([
|
|
|
2937
2936
|
], AssetsController.prototype, "uploadUrl", null);
|
|
2938
2937
|
__decorate$a([
|
|
2939
2938
|
Get("/image/:id/:rotation"),
|
|
2940
|
-
__param$5(0, Param("id")), __param$5(1, QueryParams()), __param$5(2, Param("rotation")),
|
|
2939
|
+
__param$5(0, Param("id")), __param$5(1, QueryParams()), __param$5(2, Res()), __param$5(3, Param("rotation")),
|
|
2941
2940
|
__metadata$7("design:type", Function),
|
|
2942
|
-
__metadata$7("design:paramtypes", [String, Object, Number]),
|
|
2941
|
+
__metadata$7("design:paramtypes", [String, Object, Object, Number]),
|
|
2943
2942
|
__metadata$7("design:returntype", Promise)
|
|
2944
2943
|
], AssetsController.prototype, "getImageRotation", null);
|
|
2945
2944
|
__decorate$a([
|
|
2946
2945
|
Get("/image/:id"),
|
|
2947
|
-
__param$5(0, Param("id")), __param$5(1, QueryParams()),
|
|
2946
|
+
__param$5(0, Param("id")), __param$5(1, QueryParams()), __param$5(2, Res()),
|
|
2948
2947
|
__metadata$7("design:type", Function),
|
|
2949
|
-
__metadata$7("design:paramtypes", [String, Object]),
|
|
2948
|
+
__metadata$7("design:paramtypes", [String, Object, Object]),
|
|
2950
2949
|
__metadata$7("design:returntype", Promise)
|
|
2951
2950
|
], AssetsController.prototype, "getImage", null);
|
|
2952
2951
|
__decorate$a([
|