@stemy/backend 3.6.0 → 4.0.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.
Files changed (145) hide show
  1. package/commands/fixtures-command.d.ts +9 -0
  2. package/commands/index.d.ts +2 -0
  3. package/common-types.d.ts +11 -6
  4. package/esm2020/commands/clear-command.mjs +17 -0
  5. package/esm2020/commands/fixtures-command.mjs +23 -0
  6. package/esm2020/commands/index.mjs +7 -0
  7. package/esm2020/common-types.mjs +21 -0
  8. package/esm2020/public_api.mjs +379 -0
  9. package/esm2020/requests/asset-image-params.mjs +53 -0
  10. package/esm2020/rest-controllers/assets.controller.mjs +126 -0
  11. package/esm2020/rest-controllers/auth.controller.mjs +46 -0
  12. package/esm2020/rest-controllers/gallery.controller.mjs +21 -0
  13. package/esm2020/rest-controllers/progresses.controller.mjs +29 -0
  14. package/esm2020/rest-controllers/terminal-styles.mjs +67 -0
  15. package/esm2020/rest-controllers/terminal.controller.mjs +125 -0
  16. package/esm2020/rest-middlewares/container.middleware.mjs +20 -0
  17. package/esm2020/rest-middlewares/error-handler.middleware.mjs +74 -0
  18. package/esm2020/rest-middlewares/language.middleware.mjs +18 -0
  19. package/esm2020/rest-middlewares/request-ended.middleware.mjs +23 -0
  20. package/esm2020/rest-middlewares/request-started.middleware.mjs +22 -0
  21. package/esm2020/services/asset-processor.mjs +90 -0
  22. package/esm2020/services/asset-resolver.mjs +31 -0
  23. package/esm2020/services/assets.mjs +140 -0
  24. package/esm2020/services/backend-provider.mjs +22 -0
  25. package/esm2020/services/cache-processor.mjs +16 -0
  26. package/esm2020/services/cache.mjs +62 -0
  27. package/{esm2015/services/configuration.js → esm2020/services/configuration.mjs} +3 -15
  28. package/esm2020/services/endpoint-provider.mjs +13 -0
  29. package/esm2020/services/entities/asset.mjs +43 -0
  30. package/esm2020/services/entities/base-entity.mjs +26 -0
  31. package/esm2020/services/entities/lazy-asset.mjs +73 -0
  32. package/esm2020/services/entities/progress.mjs +176 -0
  33. package/esm2020/services/entities/temp-asset.mjs +45 -0
  34. package/esm2020/services/fixtures.mjs +26 -0
  35. package/esm2020/services/gallery-cache.mjs +27 -0
  36. package/esm2020/services/gallery-image.mjs +37 -0
  37. package/esm2020/services/gallery.mjs +116 -0
  38. package/esm2020/services/id-generator.mjs +42 -0
  39. package/esm2020/services/job-manager.mjs +187 -0
  40. package/esm2020/services/lazy-assets.mjs +48 -0
  41. package/esm2020/services/logger.mjs +21 -0
  42. package/esm2020/services/mail-sender.mjs +36 -0
  43. package/esm2020/services/memory-cache.mjs +57 -0
  44. package/esm2020/services/mongo-connector.mjs +37 -0
  45. package/esm2020/services/open-api.mjs +114 -0
  46. package/esm2020/services/progresses.mjs +86 -0
  47. package/esm2020/services/template-renderer.mjs +64 -0
  48. package/esm2020/services/terminal-manager.mjs +77 -0
  49. package/esm2020/services/token-generator.mjs +35 -0
  50. package/esm2020/services/translation-provider.mjs +34 -0
  51. package/esm2020/services/translator.mjs +63 -0
  52. package/esm2020/services/user-manager.mjs +27 -0
  53. package/esm2020/socket-controllers/progress.controller.mjs +52 -0
  54. package/esm2020/socket-controllers/terminal.controller.mjs +48 -0
  55. package/esm2020/socket-controllers/terminal.mjs +85 -0
  56. package/esm2020/socket-middlewares/compression.middleware.mjs +14 -0
  57. package/esm2020/static.mjs +23 -0
  58. package/esm2020/utilities/decorators.mjs +52 -0
  59. package/esm2020/utilities/di-container.mjs +83 -0
  60. package/esm2020/utilities/empty-job.mjs +13 -0
  61. package/esm2020/utilities/lazy-asset-generator.mjs +35 -0
  62. package/esm2020/utilities/mongoose.mjs +216 -0
  63. package/esm2020/utils.mjs +693 -0
  64. package/esm2020/validators.mjs +46 -0
  65. package/fesm2015/{stemy-backend.js → stemy-backend.mjs} +1638 -2403
  66. package/fesm2015/stemy-backend.mjs.map +1 -0
  67. package/fesm2020/stemy-backend.mjs +4202 -0
  68. package/fesm2020/stemy-backend.mjs.map +1 -0
  69. package/{stemy-backend.d.ts → index.d.ts} +1 -0
  70. package/package.json +36 -24
  71. package/public_api.d.ts +2 -2
  72. package/rest-controllers/terminal-styles.d.ts +2 -0
  73. package/rest-controllers/terminal.controller.d.ts +2 -0
  74. package/services/assets.d.ts +1 -0
  75. package/services/entities/asset.d.ts +1 -0
  76. package/services/entities/temp-asset.d.ts +1 -0
  77. package/services/fixtures.d.ts +2 -2
  78. package/utils.d.ts +3 -0
  79. package/bundles/stemy-backend.umd.js +0 -7553
  80. package/bundles/stemy-backend.umd.js.map +0 -1
  81. package/esm2015/common-types.js +0 -20
  82. package/esm2015/public_api.js +0 -380
  83. package/esm2015/requests/asset-image-params.js +0 -70
  84. package/esm2015/rest-controllers/assets.controller.js +0 -180
  85. package/esm2015/rest-controllers/auth.controller.js +0 -76
  86. package/esm2015/rest-controllers/gallery.controller.js +0 -37
  87. package/esm2015/rest-controllers/progresses.controller.js +0 -57
  88. package/esm2015/rest-controllers/terminal.controller.js +0 -151
  89. package/esm2015/rest-middlewares/container.middleware.js +0 -32
  90. package/esm2015/rest-middlewares/error-handler.middleware.js +0 -99
  91. package/esm2015/rest-middlewares/language.middleware.js +0 -28
  92. package/esm2015/rest-middlewares/request-ended.middleware.js +0 -33
  93. package/esm2015/rest-middlewares/request-started.middleware.js +0 -32
  94. package/esm2015/rest-openapi.js +0 -44
  95. package/esm2015/services/asset-processor.js +0 -108
  96. package/esm2015/services/asset-resolver.js +0 -53
  97. package/esm2015/services/assets.js +0 -181
  98. package/esm2015/services/backend-provider.js +0 -32
  99. package/esm2015/services/cache-processor.js +0 -34
  100. package/esm2015/services/cache.js +0 -93
  101. package/esm2015/services/endpoint-provider.js +0 -29
  102. package/esm2015/services/entities/asset.js +0 -60
  103. package/esm2015/services/entities/base-entity.js +0 -37
  104. package/esm2015/services/entities/lazy-asset.js +0 -90
  105. package/esm2015/services/entities/progress.js +0 -213
  106. package/esm2015/services/entities/temp-asset.js +0 -64
  107. package/esm2015/services/fixtures.js +0 -45
  108. package/esm2015/services/gallery-cache.js +0 -36
  109. package/esm2015/services/gallery-image.js +0 -48
  110. package/esm2015/services/gallery.js +0 -138
  111. package/esm2015/services/id-generator.js +0 -63
  112. package/esm2015/services/job-manager.js +0 -221
  113. package/esm2015/services/lazy-assets.js +0 -83
  114. package/esm2015/services/logger.js +0 -31
  115. package/esm2015/services/mail-sender.js +0 -58
  116. package/esm2015/services/memory-cache.js +0 -84
  117. package/esm2015/services/mongo-connector.js +0 -58
  118. package/esm2015/services/open-api.js +0 -140
  119. package/esm2015/services/progresses.js +0 -118
  120. package/esm2015/services/template-renderer.js +0 -88
  121. package/esm2015/services/terminal-manager.js +0 -94
  122. package/esm2015/services/token-generator.js +0 -55
  123. package/esm2015/services/translation-provider.js +0 -54
  124. package/esm2015/services/translator.js +0 -84
  125. package/esm2015/services/user-manager.js +0 -47
  126. package/esm2015/socket-controllers/progress.controller.js +0 -82
  127. package/esm2015/socket-controllers/terminal.controller.js +0 -83
  128. package/esm2015/socket-controllers/terminal.js +0 -98
  129. package/esm2015/socket-middlewares/compression.middleware.js +0 -19
  130. package/esm2015/static.js +0 -33
  131. package/esm2015/utilities/clear-command.js +0 -33
  132. package/esm2015/utilities/decorators.js +0 -54
  133. package/esm2015/utilities/di-container.js +0 -84
  134. package/esm2015/utilities/empty-job.js +0 -29
  135. package/esm2015/utilities/lazy-asset-generator.js +0 -46
  136. package/esm2015/utilities/mongoose.js +0 -225
  137. package/esm2015/utils.js +0 -699
  138. package/esm2015/validators.js +0 -51
  139. package/fesm2015/stemy-backend.js.map +0 -1
  140. package/rest-openapi.d.ts +0 -3
  141. package/stemy-backend.metadata.json +0 -1
  142. /package/{utilities → commands}/clear-command.d.ts +0 -0
  143. /package/{esm2015/stemy-backend.js → esm2020/stemy-backend.mjs} +0 -0
  144. /package/{esm2015/utilities/base-doc.js → esm2020/utilities/base-doc.mjs} +0 -0
  145. /package/{esm2015/utilities/tree.js → esm2020/utilities/tree.mjs} +0 -0
@@ -1,180 +0,0 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- var __metadata = (this && this.__metadata) || function (k, v) {
8
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
- };
10
- var __param = (this && this.__param) || function (paramIndex, decorator) {
11
- return function (target, key) { decorator(target, key, paramIndex); }
12
- };
13
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
- return new (P || (P = Promise))(function (resolve, reject) {
16
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
- step((generator = generator.apply(thisArg, _arguments || [])).next());
20
- });
21
- };
22
- import { injectable } from "tsyringe";
23
- import { Authorized, Body, Controller, Get, HttpError, Param, Post, QueryParam, QueryParams, Res, UploadedFile } from "routing-controllers";
24
- import { Assets } from "../services/assets";
25
- import { AssetResolver } from "../services/asset-resolver";
26
- import { AssetImageParams } from "../requests/asset-image-params";
27
- let AssetsController = class AssetsController {
28
- constructor(assets, assetResolver) {
29
- this.assets = assets;
30
- this.assetResolver = assetResolver;
31
- }
32
- upload(file) {
33
- return __awaiter(this, void 0, void 0, function* () {
34
- try {
35
- const contentType = file.mimetype === "application/octet-stream" ? null : file.mimetype;
36
- const asset = yield this.assets.writeBuffer(file.buffer, { filename: file.filename }, contentType);
37
- return asset.toJSON();
38
- }
39
- catch (e) {
40
- const msg = (e === null || e === void 0 ? void 0 : e.message) || e || "Unknown error";
41
- throw new HttpError(400, `Asset can't be uploaded.\n${msg}`);
42
- }
43
- });
44
- }
45
- uploadUrl(body) {
46
- return __awaiter(this, void 0, void 0, function* () {
47
- try {
48
- const asset = yield this.assets.writeUrl(body.url, body);
49
- return asset.toJSON();
50
- }
51
- catch (e) {
52
- const msg = (e === null || e === void 0 ? void 0 : e.message) || e || "Unknown error";
53
- throw new HttpError(400, `Asset can't be uploaded.\n${msg}`);
54
- }
55
- });
56
- }
57
- getFile(id, lazy, res) {
58
- return __awaiter(this, void 0, void 0, function* () {
59
- const asset = yield this.getAsset("Asset", id, lazy, res);
60
- return asset.download();
61
- });
62
- }
63
- getImageRotation(id, params, res, rotation = 0) {
64
- return __awaiter(this, void 0, void 0, function* () {
65
- const asset = yield this.getAsset("Image", id, params.lazy, res);
66
- if (rotation !== 0) {
67
- params.rotation = params.rotation || rotation;
68
- }
69
- return asset.downloadImage(params);
70
- });
71
- }
72
- getImage(id, params, res) {
73
- return __awaiter(this, void 0, void 0, function* () {
74
- return this.getImageRotation(id, params, res);
75
- });
76
- }
77
- getFileByName(name, res) {
78
- return __awaiter(this, void 0, void 0, function* () {
79
- const asset = yield this.getAssetByName("Asset", name, res);
80
- return asset.download();
81
- });
82
- }
83
- getImageByName(name, params, res) {
84
- return __awaiter(this, void 0, void 0, function* () {
85
- const asset = yield this.getAssetByName("Image", name, res);
86
- return asset.downloadImage(params);
87
- });
88
- }
89
- setAssetHeaders(type, asset, res) {
90
- var _a, _b;
91
- if ((_a = asset.metadata) === null || _a === void 0 ? void 0 : _a.classified) {
92
- throw new HttpError(403, `${type} is classified, and can be only downloaded from a custom url.`);
93
- }
94
- const ext = (_b = asset.metadata) === null || _b === void 0 ? void 0 : _b.extension;
95
- if (ext) {
96
- res.header("content-disposition", `inline; filename=${asset.filename}.${ext}`);
97
- }
98
- if (asset.contentType) {
99
- res.header("content-type", asset.contentType);
100
- }
101
- }
102
- getAsset(type, id, lazy, res) {
103
- return __awaiter(this, void 0, void 0, function* () {
104
- const asset = yield this.assetResolver.resolve(id, lazy);
105
- if (!asset) {
106
- throw new HttpError(404, `${type} with id: '${id}' not found.`);
107
- }
108
- this.setAssetHeaders(type, asset, res);
109
- return asset;
110
- });
111
- }
112
- getAssetByName(type, filename, res) {
113
- return __awaiter(this, void 0, void 0, function* () {
114
- const asset = yield this.assets.find({ filename });
115
- if (!asset) {
116
- throw new HttpError(404, `${type} with filename: '${filename}' not found.`);
117
- }
118
- this.setAssetHeaders(type, asset, res);
119
- return asset;
120
- });
121
- }
122
- };
123
- __decorate([
124
- Authorized(),
125
- Post(""),
126
- __param(0, UploadedFile("file")),
127
- __metadata("design:type", Function),
128
- __metadata("design:paramtypes", [Object]),
129
- __metadata("design:returntype", Promise)
130
- ], AssetsController.prototype, "upload", null);
131
- __decorate([
132
- Authorized(),
133
- Post("url"),
134
- __param(0, Body()),
135
- __metadata("design:type", Function),
136
- __metadata("design:paramtypes", [Object]),
137
- __metadata("design:returntype", Promise)
138
- ], AssetsController.prototype, "uploadUrl", null);
139
- __decorate([
140
- Get("/:id"),
141
- __param(0, Param("id")), __param(1, QueryParam("lazy")), __param(2, Res()),
142
- __metadata("design:type", Function),
143
- __metadata("design:paramtypes", [String, Boolean, Object]),
144
- __metadata("design:returntype", Promise)
145
- ], AssetsController.prototype, "getFile", null);
146
- __decorate([
147
- Get("/image/:id/:rotation"),
148
- __param(0, Param("id")), __param(1, QueryParams()), __param(2, Res()), __param(3, Param("rotation")),
149
- __metadata("design:type", Function),
150
- __metadata("design:paramtypes", [String, AssetImageParams, Object, Number]),
151
- __metadata("design:returntype", Promise)
152
- ], AssetsController.prototype, "getImageRotation", null);
153
- __decorate([
154
- Get("/image/:id"),
155
- __param(0, Param("id")), __param(1, QueryParams()), __param(2, Res()),
156
- __metadata("design:type", Function),
157
- __metadata("design:paramtypes", [String, AssetImageParams, Object]),
158
- __metadata("design:returntype", Promise)
159
- ], AssetsController.prototype, "getImage", null);
160
- __decorate([
161
- Get("/by-name/:name"),
162
- __param(0, Param("name")), __param(1, Res()),
163
- __metadata("design:type", Function),
164
- __metadata("design:paramtypes", [String, Object]),
165
- __metadata("design:returntype", Promise)
166
- ], AssetsController.prototype, "getFileByName", null);
167
- __decorate([
168
- Get("/by-name/image/:name"),
169
- __param(0, Param("name")), __param(1, QueryParams()), __param(2, Res()),
170
- __metadata("design:type", Function),
171
- __metadata("design:paramtypes", [String, AssetImageParams, Object]),
172
- __metadata("design:returntype", Promise)
173
- ], AssetsController.prototype, "getImageByName", null);
174
- AssetsController = __decorate([
175
- injectable(),
176
- Controller("/assets"),
177
- __metadata("design:paramtypes", [Assets, AssetResolver])
178
- ], AssetsController);
179
- export { AssetsController };
180
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXRzLmNvbnRyb2xsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcmVzdC1jb250cm9sbGVycy9hc3NldHMuY29udHJvbGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sVUFBVSxDQUFDO0FBQ3BDLE9BQU8sRUFDSCxVQUFVLEVBQ1YsSUFBSSxFQUNKLFVBQVUsRUFDVixHQUFHLEVBQ0gsU0FBUyxFQUNULEtBQUssRUFDTCxJQUFJLEVBQ0osVUFBVSxFQUNWLFdBQVcsRUFDWCxHQUFHLEVBQ0gsWUFBWSxFQUNmLE1BQU0scUJBQXFCLENBQUM7QUFFN0IsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBQzFDLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztJQUluRCxnQkFBZ0IsU0FBaEIsZ0JBQWdCO0lBRXpCLFlBQXFCLE1BQWMsRUFBVyxhQUE0QjtRQUFyRCxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVcsa0JBQWEsR0FBYixhQUFhLENBQWU7SUFFMUUsQ0FBQztJQUlLLE1BQU0sQ0FBdUIsSUFBeUI7O1lBQ3hELElBQUk7Z0JBQ0EsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFFBQVEsS0FBSywwQkFBMEIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO2dCQUN4RixNQUFNLEtBQUssR0FBRyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsRUFBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBQyxFQUFFLFdBQVcsQ0FBQyxDQUFDO2dCQUNqRyxPQUFPLEtBQUssQ0FBQyxNQUFNLEVBQUUs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NkY1QjtTQTdGWSxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1JlYWRhYmxlfSBmcm9tIFwic3RyZWFtXCI7XHJcbmltcG9ydCB7UmVzcG9uc2V9IGZyb20gXCJleHByZXNzXCI7XHJcbmltcG9ydCB7aW5qZWN0YWJsZX0gZnJvbSBcInRzeXJpbmdlXCI7XHJcbmltcG9ydCB7XHJcbiAgICBBdXRob3JpemVkLFxyXG4gICAgQm9keSxcclxuICAgIENvbnRyb2xsZXIsXHJcbiAgICBHZXQsXHJcbiAgICBIdHRwRXJyb3IsXHJcbiAgICBQYXJhbSxcclxuICAgIFBvc3QsXHJcbiAgICBRdWVyeVBhcmFtLFxyXG4gICAgUXVlcnlQYXJhbXMsXHJcbiAgICBSZXMsXHJcbiAgICBVcGxvYWRlZEZpbGVcclxufSBmcm9tIFwicm91dGluZy1jb250cm9sbGVyc1wiO1xyXG5pbXBvcnQge0lBc3NldH0gZnJvbSBcIi4uL2NvbW1vbi10eXBlc1wiO1xyXG5pbXBvcnQge0Fzc2V0c30gZnJvbSBcIi4uL3NlcnZpY2VzL2Fzc2V0c1wiO1xyXG5pbXBvcnQge0Fzc2V0UmVzb2x2ZXJ9IGZyb20gXCIuLi9zZXJ2aWNlcy9hc3NldC1yZXNvbHZlclwiO1xyXG5pbXBvcnQge0Fzc2V0SW1hZ2VQYXJhbXN9IGZyb20gXCIuLi9yZXF1ZXN0cy9hc3NldC1pbWFnZS1wYXJhbXNcIjtcclxuXHJcbkBpbmplY3RhYmxlKClcclxuQENvbnRyb2xsZXIoXCIvYXNzZXRzXCIpXHJcbmV4cG9ydCBjbGFzcyBBc3NldHNDb250cm9sbGVyIHtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihyZWFkb25seSBhc3NldHM6IEFzc2V0cywgcmVhZG9ubHkgYXNzZXRSZXNvbHZlcjogQXNzZXRSZXNvbHZlcikge1xyXG5cclxuICAgIH1cclxuXHJcbiAgICBAQXV0aG9yaXplZCgpXHJcbiAgICBAUG9zdChcIlwiKVxyXG4gICAgYXN5bmMgdXBsb2FkKEBVcGxvYWRlZEZpbGUoXCJmaWxlXCIpIGZpbGU6IEV4cHJlc3MuTXVsdGVyLkZpbGUpIHtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICBjb25zdCBjb250ZW50VHlwZSA9IGZpbGUubWltZXR5cGUgPT09IFwiYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtXCIgPyBudWxsIDogZmlsZS5taW1ldHlwZTtcclxuICAgICAgICAgICAgY29uc3QgYXNzZXQgPSBhd2FpdCB0aGlzLmFzc2V0cy53cml0ZUJ1ZmZlcihmaWxlLmJ1ZmZlciwge2ZpbGVuYW1lOiBmaWxlLmZpbGVuYW1lfSwgY29udGVudFR5cGUpO1xyXG4gICAgICAgICAgICByZXR1cm4gYXNzZXQudG9KU09OKCk7XHJcbiAgICAgICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgICBjb25zdCBtc2cgPSBlPy5tZXNzYWdlIHx8IGUgfHwgXCJVbmtub3duIGVycm9yXCI7XHJcbiAgICAgICAgICAgIHRocm93IG5ldyBIdHRwRXJyb3IoNDAwLCBgQXNzZXQgY2FuJ3QgYmUgdXBsb2FkZWQuXFxuJHttc2d9YCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBBdXRob3JpemVkKClcclxuICAgIEBQb3N0KFwidXJsXCIpXHJcbiAgICBhc3luYyB1cGxvYWRVcmwoQEJvZHkoKSBib2R5OiBhbnkpIHtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICBjb25zdCBhc3NldCA9IGF3YWl0IHRoaXMuYXNzZXRzLndyaXRlVXJsKGJvZHkudXJsLCBib2R5KTtcclxuICAgICAgICAgICAgcmV0dXJuIGFzc2V0LnRvSlNPTigpO1xyXG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgICAgICAgY29uc3QgbXNnID0gZT8ubWVzc2FnZSB8fCBlIHx8IFwiVW5rbm93biBlcnJvclwiO1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgSHR0cEVycm9yKDQwMCwgYEFzc2V0IGNhbid0IGJlIHVwbG9hZGVkLlxcbiR7bXNnfWApO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAR2V0KFwiLzppZFwiKVxyXG4gICAgYXN5bmMgZ2V0RmlsZShAUGFyYW0oXCJpZFwiKSBpZDogc3RyaW5nLCBAUXVlcnlQYXJhbShcImxhenlcIikgbGF6eTogYm9vbGVhbiwgQFJlcygpIHJlczogUmVzcG9uc2UpOiBQcm9taXNlPFJlYWRhYmxlPiB7XHJcbiAgICAgICAgY29uc3QgYXNzZXQgPSBhd2FpdCB0aGlzLmdldEFzc2V0KFwiQXNzZXRcIiwgaWQsIGxhenksIHJlcyk7XHJcbiAgICAgICAgcmV0dXJuIGFzc2V0LmRvd25sb2FkKCk7XHJcbiAgICB9XHJcblxyXG4gICAgQEdldChcIi9pbWFnZS86aWQvOnJvdGF0aW9uXCIpXHJcbiAgICBhc3luYyBnZXRJbWFnZVJvdGF0aW9uKEBQYXJhbShcImlkXCIpIGlkOiBzdHJpbmcsIEBRdWVyeVBhcmFtcygpIHBhcmFtczogQXNzZXRJbWFnZVBhcmFtcywgQFJlcygpIHJlczogUmVzcG9uc2UsIEBQYXJhbShcInJvdGF0aW9uXCIpIHJvdGF0aW9uOiBudW1iZXIgPSAwKTogUHJvbWlzZTxSZWFkYWJsZT4ge1xyXG4gICAgICAgIGNvbnN0IGFzc2V0ID0gYXdhaXQgdGhpcy5nZXRBc3NldChcIkltYWdlXCIsIGlkLCBwYXJhbXMubGF6eSwgcmVzKTtcclxuICAgICAgICBpZiAocm90YXRpb24gIT09IDApIHtcclxuICAgICAgICAgICAgcGFyYW1zLnJvdGF0aW9uID0gcGFyYW1zLnJvdGF0aW9uIHx8IHJvdGF0aW9uO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gYXNzZXQuZG93bmxvYWRJbWFnZShwYXJhbXMpO1xyXG4gICAgfVxyXG5cclxuICAgIEBHZXQoXCIvaW1hZ2UvOmlkXCIpXHJcbiAgICBhc3luYyBnZXRJbWFnZShAUGFyYW0oXCJpZFwiKSBpZDogc3RyaW5nLCBAUXVlcnlQYXJhbXMoKSBwYXJhbXM6IEFzc2V0SW1hZ2VQYXJhbXMsIEBSZXMoKSByZXM6IFJlc3BvbnNlKTogUHJvbWlzZTxSZWFkYWJsZT4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmdldEltYWdlUm90YXRpb24oaWQsIHBhcmFtcywgcmVzKTtcclxuICAgIH1cclxuXHJcbiAgICBAR2V0KFwiL2J5LW5hbWUvOm5hbWVcIilcclxuICAgIGFzeW5jIGdldEZpbGVCeU5hbWUoQFBhcmFtKFwibmFtZVwiKSBuYW1lOiBzdHJpbmcsIEBSZXMoKSByZXM6IFJlc3BvbnNlKTogUHJvbWlzZTxSZWFkYWJsZT4ge1xyXG4gICAgICAgIGNvbnN0IGFzc2V0ID0gYXdhaXQgdGhpcy5nZXRBc3NldEJ5TmFtZShcIkFzc2V0XCIsIG5hbWUsIHJlcyk7XHJcbiAgICAgICAgcmV0dXJuIGFzc2V0LmRvd25sb2FkKCk7XHJcbiAgICB9XHJcblxyXG4gICAgQEdldChcIi9ieS1uYW1lL2ltYWdlLzpuYW1lXCIpXHJcbiAgICBhc3luYyBnZXRJbWFnZUJ5TmFtZShAUGFyYW0oXCJuYW1lXCIpIG5hbWU6IHN0cmluZywgQFF1ZXJ5UGFyYW1zKCkgcGFyYW1zOiBBc3NldEltYWdlUGFyYW1zLCBAUmVzKCkgcmVzOiBSZXNwb25zZSk6IFByb21pc2U8UmVhZGFibGU+IHtcclxuICAgICAgICBjb25zdCBhc3NldCA9IGF3YWl0IHRoaXMuZ2V0QXNzZXRCeU5hbWUoXCJJbWFnZVwiLCBuYW1lLCByZXMpO1xyXG4gICAgICAgIHJldHVybiBhc3NldC5kb3dubG9hZEltYWdlKHBhcmFtcyk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIHNldEFzc2V0SGVhZGVycyh0eXBlOiBzdHJpbmcsIGFzc2V0OiBJQXNzZXQsIHJlczogUmVzcG9uc2UpOiB2b2lkIHtcclxuICAgICAgICBpZiAoYXNzZXQubWV0YWRhdGE/LmNsYXNzaWZpZWQpIHtcclxuICAgICAgICAgICAgdGhyb3cgbmV3IEh0dHBFcnJvcig0MDMsIGAke3R5cGV9IGlzIGNsYXNzaWZpZWQsIGFuZCBjYW4gYmUgb25seSBkb3dubG9hZGVkIGZyb20gYSBjdXN0b20gdXJsLmApO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCBleHQgPSBhc3NldC5tZXRhZGF0YT8uZXh0ZW5zaW9uO1xyXG4gICAgICAgIGlmIChleHQpIHtcclxuICAgICAgICAgICAgcmVzLmhlYWRlcihcImNvbnRlbnQtZGlzcG9zaXRpb25cIiwgYGlubGluZTsgZmlsZW5hbWU9JHthc3NldC5maWxlbmFtZX0uJHtleHR9YCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChhc3NldC5jb250ZW50VHlwZSkge1xyXG4gICAgICAgICAgICByZXMuaGVhZGVyKFwiY29udGVudC10eXBlXCIsIGFzc2V0LmNvbnRlbnRUeXBlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIGFzeW5jIGdldEFzc2V0KHR5cGU6IHN0cmluZywgaWQ6IHN0cmluZywgbGF6eTogYm9vbGVhbiwgcmVzOiBSZXNwb25zZSk6IFByb21pc2U8SUFzc2V0PiB7XHJcbiAgICAgICAgY29uc3QgYXNzZXQgPSBhd2FpdCB0aGlzLmFzc2V0UmVzb2x2ZXIucmVzb2x2ZShpZCwgbGF6eSk7XHJcbiAgICAgICAgaWYgKCFhc3NldCkge1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgSHR0cEVycm9yKDQwNCwgYCR7dHlwZX0gd2l0aCBpZDogJyR7aWR9JyBub3QgZm91bmQuYCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuc2V0QXNzZXRIZWFkZXJzKHR5cGUsIGFzc2V0LCByZXMpO1xyXG4gICAgICAgIHJldHVybiBhc3NldDtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgYXN5bmMgZ2V0QXNzZXRCeU5hbWUodHlwZTogc3RyaW5nLCBmaWxlbmFtZTogc3RyaW5nLCByZXM6IFJlc3BvbnNlKTogUHJvbWlzZTxJQXNzZXQ+IHtcclxuICAgICAgICBjb25zdCBhc3NldCA9IGF3YWl0IHRoaXMuYXNzZXRzLmZpbmQoe2ZpbGVuYW1lfSk7XHJcbiAgICAgICAgaWYgKCFhc3NldCkge1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgSHR0cEVycm9yKDQwNCwgYCR7dHlwZX0gd2l0aCBmaWxlbmFtZTogJyR7ZmlsZW5hbWV9JyBub3QgZm91bmQuYCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuc2V0QXNzZXRIZWFkZXJzKHR5cGUsIGFzc2V0LCByZXMpO1xyXG4gICAgICAgIHJldHVybiBhc3NldDtcclxuICAgIH1cclxufVxyXG4iXX0=
@@ -1,76 +0,0 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- var __metadata = (this && this.__metadata) || function (k, v) {
8
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
- };
10
- var __param = (this && this.__param) || function (paramIndex, decorator) {
11
- return function (target, key) { decorator(target, key, paramIndex); }
12
- };
13
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
- return new (P || (P = Promise))(function (resolve, reject) {
16
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
- step((generator = generator.apply(thisArg, _arguments || [])).next());
20
- });
21
- };
22
- import { sign } from "jsonwebtoken";
23
- import { injectable } from "tsyringe";
24
- import { Authorized, Body, Controller, CurrentUser, Get, HttpError, Post, Res, UnauthorizedError } from "routing-controllers";
25
- import { compare } from "bcrypt";
26
- import { Configuration } from "../services/configuration";
27
- import { UserManager } from "../services/user-manager";
28
- let AuthController = class AuthController {
29
- constructor(config, userManager) {
30
- this.config = config;
31
- this.userManager = userManager;
32
- }
33
- login(credentials, res) {
34
- return __awaiter(this, void 0, void 0, function* () {
35
- let user = null;
36
- try {
37
- user = yield this.userManager.getByCredentials(credentials);
38
- }
39
- catch (reason) {
40
- throw new HttpError(401, reason);
41
- }
42
- const valid = !user ? false : yield compare(credentials.password, user.password);
43
- if (valid !== true)
44
- throw new UnauthorizedError(`message.login.error`);
45
- return {
46
- token: sign({ id: user._id || user.id }, this.config.resolve("jwtSecret")),
47
- user: yield this.userManager.serialize(user)
48
- };
49
- });
50
- }
51
- getProfile(user) {
52
- return this.userManager.serialize(user);
53
- }
54
- };
55
- __decorate([
56
- Post("/login"),
57
- __param(0, Body()), __param(1, Res()),
58
- __metadata("design:type", Function),
59
- __metadata("design:paramtypes", [Object, Object]),
60
- __metadata("design:returntype", Promise)
61
- ], AuthController.prototype, "login", null);
62
- __decorate([
63
- Authorized(),
64
- Get("/user"),
65
- __param(0, CurrentUser()),
66
- __metadata("design:type", Function),
67
- __metadata("design:paramtypes", [Object]),
68
- __metadata("design:returntype", void 0)
69
- ], AuthController.prototype, "getProfile", null);
70
- AuthController = __decorate([
71
- injectable(),
72
- Controller(),
73
- __metadata("design:paramtypes", [Configuration, UserManager])
74
- ], AuthController);
75
- export { AuthController };
76
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5jb250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Jlc3QtY29udHJvbGxlcnMvYXV0aC5jb250cm9sbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNBLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDbEMsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLFVBQVUsQ0FBQztBQUNwQyxPQUFPLEVBQ0gsVUFBVSxFQUNWLElBQUksRUFDSixVQUFVLEVBQ1YsV0FBVyxFQUNYLEdBQUcsRUFDSCxTQUFTLEVBQ1QsSUFBSSxFQUNKLEdBQUcsRUFDSCxpQkFBaUIsRUFDcEIsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sUUFBUSxDQUFDO0FBRS9CLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUN4RCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sMEJBQTBCLENBQUM7SUFLeEMsY0FBYyxTQUFkLGNBQWM7SUFFdkIsWUFBcUIsTUFBcUIsRUFBVyxXQUF3QjtRQUF4RCxXQUFNLEdBQU4sTUFBTSxDQUFlO1FBQVcsZ0JBQVcsR0FBWCxXQUFXLENBQWE7SUFBRyxDQUFDO0lBRzNFLEtBQUssQ0FBUyxXQUFnQixFQUFTLEdBQWE7O1lBQ3RELElBQUksSUFBSSxHQUFVLElBQUksQ0FBQztZQUN2QixJQUFJO2dCQUNBLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDL0Q7WUFBQyxPQUFPLE1BQU0sRUFBRTtnQkFDYixNQUFNLElBQUksU0FBUyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQzthQUNwQztZQUNELE1BQU0sS0FBSyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sT0FBTyxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ2pGLElBQUksS0FBSyxLQUFLLElBQUk7Z0JBQ2QsTUFBTSxJQUFJLGlCQUFpQixDQUFDLHFCQUFxQixDQUFDLENBQUM7WUFDdkQsT0FBTztnQkFDSCxLQUFLLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxHQUFHLElBQUksSUFBSSxDQUFDLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDO2dCQUMxRSxJQUFJLEVBQUUsTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7YUFDL0MsQ0FBQztRQUNOLENBQUM7S0FBQTtJQUlELFVBQVUsQ0FBZ0IsSUFBVztRQUNqQyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzVDLENBQUM7Q0FDSixDQUFBO0FBckJHO0lBREMsSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUNGLFdBQUEsSUFBSSxFQUFFLENBQUEsRUFBb0IsV0FBQSxHQUFHLEVBQUUsQ0FBQTs7OzsyQ0FjM0M7QUFJRDtJQUZDLFVBQVUsRUFBRTtJQUNaLEdBQUcsQ0FBQyxPQUFPLENBQUM7SUFDRCxXQUFBLFdBQVcsRUFBRSxDQUFBOzs7O2dEQUV4QjtBQXpCUSxjQUFjO0lBRjFCLFVBQVUsRUFBRTtJQUNaLFVBQVUsRUFBRTtxQ0FHb0IsYUFBYSxFQUF3QixXQUFXO0dBRnBFLGNBQWMsQ0EwQjFCO1NBMUJZLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1Jlc3BvbnNlfSBmcm9tIFwiZXhwcmVzc1wiO1xyXG5pbXBvcnQge3NpZ259IGZyb20gXCJqc29ud2VidG9rZW5cIjtcclxuaW1wb3J0IHtpbmplY3RhYmxlfSBmcm9tIFwidHN5cmluZ2VcIjtcclxuaW1wb3J0IHtcclxuICAgIEF1dGhvcml6ZWQsXHJcbiAgICBCb2R5LFxyXG4gICAgQ29udHJvbGxlcixcclxuICAgIEN1cnJlbnRVc2VyLFxyXG4gICAgR2V0LFxyXG4gICAgSHR0cEVycm9yLFxyXG4gICAgUG9zdCxcclxuICAgIFJlcyxcclxuICAgIFVuYXV0aG9yaXplZEVycm9yXHJcbn0gZnJvbSBcInJvdXRpbmctY29udHJvbGxlcnNcIjtcclxuaW1wb3J0IHtjb21wYXJlfSBmcm9tIFwiYmNyeXB0XCI7XHJcblxyXG5pbXBvcnQge0NvbmZpZ3VyYXRpb259IGZyb20gXCIuLi9zZXJ2aWNlcy9jb25maWd1cmF0aW9uXCI7XHJcbmltcG9ydCB7VXNlck1hbmFnZXJ9IGZyb20gXCIuLi9zZXJ2aWNlcy91c2VyLW1hbmFnZXJcIjtcclxuaW1wb3J0IHtJVXNlcn0gZnJvbSBcIi4uL2NvbW1vbi10eXBlc1wiO1xyXG5cclxuQGluamVjdGFibGUoKVxyXG5AQ29udHJvbGxlcigpXHJcbmV4cG9ydCBjbGFzcyBBdXRoQ29udHJvbGxlciB7XHJcblxyXG4gICAgY29uc3RydWN0b3IocmVhZG9ubHkgY29uZmlnOiBDb25maWd1cmF0aW9uLCByZWFkb25seSB1c2VyTWFuYWdlcjogVXNlck1hbmFnZXIpIHt9XHJcblxyXG4gICAgQFBvc3QoXCIvbG9naW5cIilcclxuICAgIGFzeW5jIGxvZ2luKEBCb2R5KCkgY3JlZGVudGlhbHM6IGFueSwgQFJlcygpIHJlczogUmVzcG9uc2UpIHtcclxuICAgICAgICBsZXQgdXNlcjogSVVzZXIgPSBudWxsO1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIHVzZXIgPSBhd2FpdCB0aGlzLnVzZXJNYW5hZ2VyLmdldEJ5Q3JlZGVudGlhbHMoY3JlZGVudGlhbHMpO1xyXG4gICAgICAgIH0gY2F0Y2ggKHJlYXNvbikge1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgSHR0cEVycm9yKDQwMSwgcmVhc29uKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgdmFsaWQgPSAhdXNlciA/IGZhbHNlIDogYXdhaXQgY29tcGFyZShjcmVkZW50aWFscy5wYXNzd29yZCwgdXNlci5wYXNzd29yZCk7XHJcbiAgICAgICAgaWYgKHZhbGlkICE9PSB0cnVlKVxyXG4gICAgICAgICAgICB0aHJvdyBuZXcgVW5hdXRob3JpemVkRXJyb3IoYG1lc3NhZ2UubG9naW4uZXJyb3JgKTtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICB0b2tlbjogc2lnbih7IGlkOiB1c2VyLl9pZCB8fCB1c2VyLmlkIH0sIHRoaXMuY29uZmlnLnJlc29sdmUoXCJqd3RTZWNyZXRcIikpLFxyXG4gICAgICAgICAgICB1c2VyOiBhd2FpdCB0aGlzLnVzZXJNYW5hZ2VyLnNlcmlhbGl6ZSh1c2VyKVxyXG4gICAgICAgIH07XHJcbiAgICB9XHJcblxyXG4gICAgQEF1dGhvcml6ZWQoKVxyXG4gICAgQEdldChcIi91c2VyXCIpXHJcbiAgICBnZXRQcm9maWxlKEBDdXJyZW50VXNlcigpIHVzZXI6IElVc2VyKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMudXNlck1hbmFnZXIuc2VyaWFsaXplKHVzZXIpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -1,37 +0,0 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- var __metadata = (this && this.__metadata) || function (k, v) {
8
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
- };
10
- var __param = (this && this.__param) || function (paramIndex, decorator) {
11
- return function (target, key) { decorator(target, key, paramIndex); }
12
- };
13
- import { injectable } from "tsyringe";
14
- import { Controller, Get, Param } from "routing-controllers";
15
- import { GalleryCache } from "../services/gallery-cache";
16
- let GalleryController = class GalleryController {
17
- constructor(galleryCache) {
18
- this.galleryCache = galleryCache;
19
- }
20
- getFile(id) {
21
- return this.galleryCache.serve(id);
22
- }
23
- };
24
- __decorate([
25
- Get("/:id"),
26
- __param(0, Param("id")),
27
- __metadata("design:type", Function),
28
- __metadata("design:paramtypes", [String]),
29
- __metadata("design:returntype", void 0)
30
- ], GalleryController.prototype, "getFile", null);
31
- GalleryController = __decorate([
32
- injectable(),
33
- Controller("/gallery"),
34
- __metadata("design:paramtypes", [GalleryCache])
35
- ], GalleryController);
36
- export { GalleryController };
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FsbGVyeS5jb250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Jlc3QtY29udHJvbGxlcnMvZ2FsbGVyeS5jb250cm9sbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxVQUFVLENBQUM7QUFDcEMsT0FBTyxFQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDM0QsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLDJCQUEyQixDQUFDO0lBSTFDLGlCQUFpQixTQUFqQixpQkFBaUI7SUFFMUIsWUFBcUIsWUFBMEI7UUFBMUIsaUJBQVksR0FBWixZQUFZLENBQWM7SUFBSSxDQUFDO0lBR3BELE9BQU8sQ0FBYyxFQUFVO1FBQzNCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDdkMsQ0FBQztDQUNKLENBQUE7QUFIRztJQURDLEdBQUcsQ0FBQyxNQUFNLENBQUM7SUFDSCxXQUFBLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQTs7OztnREFFbkI7QUFQUSxpQkFBaUI7SUFGN0IsVUFBVSxFQUFFO0lBQ1osVUFBVSxDQUFDLFVBQVUsQ0FBQztxQ0FHZ0IsWUFBWTtHQUZ0QyxpQkFBaUIsQ0FRN0I7U0FSWSxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2luamVjdGFibGV9IGZyb20gXCJ0c3lyaW5nZVwiO1xyXG5pbXBvcnQge0NvbnRyb2xsZXIsIEdldCwgUGFyYW19IGZyb20gXCJyb3V0aW5nLWNvbnRyb2xsZXJzXCI7XHJcbmltcG9ydCB7R2FsbGVyeUNhY2hlfSBmcm9tIFwiLi4vc2VydmljZXMvZ2FsbGVyeS1jYWNoZVwiO1xyXG5cclxuQGluamVjdGFibGUoKVxyXG5AQ29udHJvbGxlcihcIi9nYWxsZXJ5XCIpXHJcbmV4cG9ydCBjbGFzcyBHYWxsZXJ5Q29udHJvbGxlciB7XHJcblxyXG4gICAgY29uc3RydWN0b3IocmVhZG9ubHkgZ2FsbGVyeUNhY2hlOiBHYWxsZXJ5Q2FjaGUpIHsgfVxyXG5cclxuICAgIEBHZXQoXCIvOmlkXCIpXHJcbiAgICBnZXRGaWxlKEBQYXJhbShcImlkXCIpIGlkOiBzdHJpbmcpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5nYWxsZXJ5Q2FjaGUuc2VydmUoaWQpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -1,57 +0,0 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- var __metadata = (this && this.__metadata) || function (k, v) {
8
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
- };
10
- var __param = (this && this.__param) || function (paramIndex, decorator) {
11
- return function (target, key) { decorator(target, key, paramIndex); }
12
- };
13
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
- return new (P || (P = Promise))(function (resolve, reject) {
16
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
- step((generator = generator.apply(thisArg, _arguments || [])).next());
20
- });
21
- };
22
- import { injectable } from "tsyringe";
23
- import { Controller, Get, Param } from "routing-controllers";
24
- import { Progresses } from "../services/progresses";
25
- import { Configuration } from "../services/configuration";
26
- let ProgressesController = class ProgressesController {
27
- constructor(progresses, config) {
28
- this.progresses = progresses;
29
- this.config = config;
30
- const mainEndpoint = this.config.resolve("mainEndpoint");
31
- this.connectionType = !mainEndpoint ? "polling" : "socket";
32
- }
33
- getProgress(id) {
34
- return __awaiter(this, void 0, void 0, function* () {
35
- const progress = yield this.progresses.get(id);
36
- if (!progress)
37
- return null;
38
- const json = progress.toJSON();
39
- json.connectionType = this.connectionType;
40
- return json;
41
- });
42
- }
43
- };
44
- __decorate([
45
- Get("/:id"),
46
- __param(0, Param("id")),
47
- __metadata("design:type", Function),
48
- __metadata("design:paramtypes", [String]),
49
- __metadata("design:returntype", Promise)
50
- ], ProgressesController.prototype, "getProgress", null);
51
- ProgressesController = __decorate([
52
- injectable(),
53
- Controller("/progresses"),
54
- __metadata("design:paramtypes", [Progresses, Configuration])
55
- ], ProgressesController);
56
- export { ProgressesController };
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3Nlcy5jb250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Jlc3QtY29udHJvbGxlcnMvcHJvZ3Jlc3Nlcy5jb250cm9sbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxVQUFVLENBQUM7QUFDcEMsT0FBTyxFQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDM0QsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ2xELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztJQUkzQyxvQkFBb0IsU0FBcEIsb0JBQW9CO0lBSTdCLFlBQXFCLFVBQXNCLEVBQVcsTUFBcUI7UUFBdEQsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUFXLFdBQU0sR0FBTixNQUFNLENBQWU7UUFDdkUsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDekQsSUFBSSxDQUFDLGNBQWMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUM7SUFDL0QsQ0FBQztJQUdLLFdBQVcsQ0FBYyxFQUFVOztZQUNyQyxNQUFNLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQy9DLElBQUksQ0FBQyxRQUFRO2dCQUFFLE9BQU8sSUFBSSxDQUFDO1lBQzNCLE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUMvQixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUM7WUFDMUMsT0FBTyxJQUFJLENBQUM7UUFDaEIsQ0FBQztLQUFBO0NBQ0osQ0FBQTtBQVBHO0lBREMsR0FBRyxDQUFDLE1BQU0sQ0FBQztJQUNPLFdBQUEsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFBOzs7O3VEQU03QjtBQWhCUSxvQkFBb0I7SUFGaEMsVUFBVSxFQUFFO0lBQ1osVUFBVSxDQUFDLGFBQWEsQ0FBQztxQ0FLVyxVQUFVLEVBQW1CLGFBQWE7R0FKbEUsb0JBQW9CLENBaUJoQztTQWpCWSxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2luamVjdGFibGV9IGZyb20gXCJ0c3lyaW5nZVwiO1xyXG5pbXBvcnQge0NvbnRyb2xsZXIsIEdldCwgUGFyYW19IGZyb20gXCJyb3V0aW5nLWNvbnRyb2xsZXJzXCI7XHJcbmltcG9ydCB7UHJvZ3Jlc3Nlc30gZnJvbSBcIi4uL3NlcnZpY2VzL3Byb2dyZXNzZXNcIjtcclxuaW1wb3J0IHtDb25maWd1cmF0aW9ufSBmcm9tIFwiLi4vc2VydmljZXMvY29uZmlndXJhdGlvblwiO1xyXG5cclxuQGluamVjdGFibGUoKVxyXG5AQ29udHJvbGxlcihcIi9wcm9ncmVzc2VzXCIpXHJcbmV4cG9ydCBjbGFzcyBQcm9ncmVzc2VzQ29udHJvbGxlciB7XHJcblxyXG4gICAgcHJvdGVjdGVkIGNvbm5lY3Rpb25UeXBlOiBzdHJpbmc7XHJcblxyXG4gICAgY29uc3RydWN0b3IocmVhZG9ubHkgcHJvZ3Jlc3NlczogUHJvZ3Jlc3NlcywgcmVhZG9ubHkgY29uZmlnOiBDb25maWd1cmF0aW9uKSB7XHJcbiAgICAgICAgY29uc3QgbWFpbkVuZHBvaW50ID0gdGhpcy5jb25maWcucmVzb2x2ZShcIm1haW5FbmRwb2ludFwiKTtcclxuICAgICAgICB0aGlzLmNvbm5lY3Rpb25UeXBlID0gIW1haW5FbmRwb2ludCA/IFwicG9sbGluZ1wiIDogXCJzb2NrZXRcIjtcclxuICAgIH1cclxuXHJcbiAgICBAR2V0KFwiLzppZFwiKVxyXG4gICAgYXN5bmMgZ2V0UHJvZ3Jlc3MoQFBhcmFtKFwiaWRcIikgaWQ6IHN0cmluZykge1xyXG4gICAgICAgIGNvbnN0IHByb2dyZXNzID0gYXdhaXQgdGhpcy5wcm9ncmVzc2VzLmdldChpZCk7XHJcbiAgICAgICAgaWYgKCFwcm9ncmVzcykgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgY29uc3QganNvbiA9IHByb2dyZXNzLnRvSlNPTigpO1xyXG4gICAgICAgIGpzb24uY29ubmVjdGlvblR5cGUgPSB0aGlzLmNvbm5lY3Rpb25UeXBlO1xyXG4gICAgICAgIHJldHVybiBqc29uO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -1,151 +0,0 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- var __metadata = (this && this.__metadata) || function (k, v) {
8
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
- };
10
- import { injectable } from "tsyringe";
11
- import { Controller, Get, Header } from "routing-controllers";
12
- import { Configuration } from "../services/configuration";
13
- let TerminalController = class TerminalController {
14
- constructor(config) {
15
- this.config = config;
16
- this.serviceName = config.resolve("serviceName");
17
- this.serviceUrl = config.resolve("serviceUrl");
18
- }
19
- terminal() {
20
- return `
21
- <!DOCTYPE html>
22
- <html>
23
- <head>
24
- <meta charset="utf-8">
25
- <title>${this.serviceName} console</title>
26
- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/xterm@5.1.0/css/xterm.min.css"/>
27
- <script type="text/javascript" src="${this.serviceUrl}/socket/socket.io.js"></script>
28
- <style>
29
- body {
30
- margin: 0;
31
- padding: 0;
32
- background: #1e1e1e;
33
- }
34
- body * {
35
- box-sizing: border-box;
36
- }
37
- #terminal {
38
- margin: 40px;
39
- background: black;
40
- border: 1px solid #dedede;
41
- border-radius: 5px;
42
- overflow: hidden;
43
- }
44
- #terminal .xterm {
45
- margin: 10px;
46
- height: calc(100vh - 120px);
47
- border-radius: 5px;
48
- }
49
- #terminal .xterm-viewport::-webkit-scrollbar {
50
- width: 0.4em;
51
- background-color: #222;
52
- }
53
- #terminal .xterm-viewport::-webkit-scrollbar-thumb {
54
- background-color: #555;
55
- }
56
- </style>
57
- </head>
58
- <body>
59
- <div id="terminal"></div>
60
- <script type="module">
61
- // Import terminal modules
62
- import xterm from 'https://cdn.jsdelivr.net/npm/xterm@5.1.0/+esm';
63
- import xtermFit from 'https://cdn.jsdelivr.net/npm/xterm-addon-fit@0.7.0/+esm';
64
- // Initialize variables
65
- var terminal = new xterm.Terminal();
66
- var fitAddon = new xtermFit.FitAddon();
67
- var socket = io("${this.serviceUrl}", {path: "/socket"});
68
- var clear = function () {
69
- terminal.clear();
70
- terminal.reset();
71
- // Prev line
72
- terminal.write("\u001B[F");
73
- }
74
- // Initialize terminal
75
- terminal.loadAddon(fitAddon);
76
- terminal.open(document.getElementById('terminal'));
77
- terminal.onData(function (data) {
78
- socket.emit("terminal-data", data.charCodeAt(0) === 127 ? "\b" : data);
79
- });
80
- // Socket listeners
81
- socket.on("terminal-data", function (data) {
82
- if (data === "\x1bc") {
83
- clear();
84
- return;
85
- }
86
- terminal.write(data);
87
- });
88
- socket.on("terminal-upload", function (data) {
89
- var input = document.createElement("input");
90
- input.type = "file";
91
- input.accept = data.accept;
92
- input.onchange = function () {
93
- var file = input.files[0];
94
- var reader = new FileReader();
95
- reader.onload = function () {
96
- console.log(reader.result);
97
- socket.emit("terminal-upload", {
98
- id: data.id,
99
- label: file.name,
100
- content: reader.result,
101
- accept: data.accept
102
- });
103
- };
104
- reader.onerror = function () {
105
- console.error(reader.error);
106
- socket.emit("terminal-upload", {
107
- id: data.id,
108
- label: file.name,
109
- error: reader.error,
110
- accept: data.accept
111
- });
112
- };
113
- reader.readAsDataURL(file);
114
- };
115
- input.click();
116
- });
117
- socket.on("terminal-download", function (data) {
118
- var link = document.createElement("a");
119
- link.href = data.content;
120
- link.download = data.filename;
121
- link.click();
122
- });
123
- socket.on("connect", function () {
124
- clear();
125
- terminal.writeln("Welcome to ${this.serviceName} service's console!");
126
- socket.emit("terminal-init");
127
- });
128
- socket.on("disconnect", function () {
129
- clear();
130
- terminal.writeln("Disconnected from ${this.serviceName} service's console.");
131
- });
132
- </script>
133
- </body>
134
- </html>
135
- `;
136
- }
137
- };
138
- __decorate([
139
- Get(),
140
- Header("Content-Type", "text/html"),
141
- __metadata("design:type", Function),
142
- __metadata("design:paramtypes", []),
143
- __metadata("design:returntype", void 0)
144
- ], TerminalController.prototype, "terminal", null);
145
- TerminalController = __decorate([
146
- injectable(),
147
- Controller("/console"),
148
- __metadata("design:paramtypes", [Configuration])
149
- ], TerminalController);
150
- export { TerminalController };
151
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVybWluYWwuY29udHJvbGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9yZXN0LWNvbnRyb2xsZXJzL3Rlcm1pbmFsLmNvbnRyb2xsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLFVBQVUsQ0FBQztBQUNwQyxPQUFPLEVBQUMsVUFBVSxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUM1RCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7SUFJM0Msa0JBQWtCLFNBQWxCLGtCQUFrQjtJQU0zQixZQUFxQixNQUFxQjtRQUFyQixXQUFNLEdBQU4sTUFBTSxDQUFlO1FBQ3RDLElBQUksQ0FBQyxXQUFXLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUlELFFBQVE7UUFDSixPQUFPOzs7OztxQkFLTSxJQUFJLENBQUMsV0FBVzs7a0RBRWEsSUFBSSxDQUFDLFVBQVU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7bUNBd0M5QixJQUFJLENBQUMsVUFBVTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzttREEwREMsSUFBSSxDQUFDLFdBQVc7Ozs7OzBEQUtULElBQUksQ0FBQyxXQUFXOzs7OztTQUtqRSxDQUFDO0lBQ04sQ0FBQztDQUNKLENBQUE7QUF0SEc7SUFGQyxHQUFHLEVBQUU7SUFDTCxNQUFNLENBQUMsY0FBYyxFQUFFLFdBQVcsQ0FBQzs7OztrREFzSG5DO0FBbElRLGtCQUFrQjtJQUY5QixVQUFVLEVBQUU7SUFDWixVQUFVLENBQUMsVUFBVSxDQUFDO3FDQU9VLGFBQWE7R0FOakMsa0JBQWtCLENBbUk5QjtTQW5JWSxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2luamVjdGFibGV9IGZyb20gXCJ0c3lyaW5nZVwiO1xyXG5pbXBvcnQge0NvbnRyb2xsZXIsIEdldCwgSGVhZGVyfSBmcm9tIFwicm91dGluZy1jb250cm9sbGVyc1wiO1xyXG5pbXBvcnQge0NvbmZpZ3VyYXRpb259IGZyb20gXCIuLi9zZXJ2aWNlcy9jb25maWd1cmF0aW9uXCI7XHJcblxyXG5AaW5qZWN0YWJsZSgpXHJcbkBDb250cm9sbGVyKFwiL2NvbnNvbGVcIilcclxuZXhwb3J0IGNsYXNzIFRlcm1pbmFsQ29udHJvbGxlciB7XHJcblxyXG4gICAgcHJvdGVjdGVkIHNlcnZpY2VOYW1lOiBzdHJpbmc7XHJcblxyXG4gICAgcHJvdGVjdGVkIHNlcnZpY2VVcmw6IHN0cmluZztcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihyZWFkb25seSBjb25maWc6IENvbmZpZ3VyYXRpb24pIHtcclxuICAgICAgICB0aGlzLnNlcnZpY2VOYW1lID0gY29uZmlnLnJlc29sdmUoXCJzZXJ2aWNlTmFtZVwiKTtcclxuICAgICAgICB0aGlzLnNlcnZpY2VVcmwgPSBjb25maWcucmVzb2x2ZShcInNlcnZpY2VVcmxcIik7XHJcbiAgICB9XHJcblxyXG4gICAgQEdldCgpXHJcbiAgICBASGVhZGVyKFwiQ29udGVudC1UeXBlXCIsIFwidGV4dC9odG1sXCIpXHJcbiAgICB0ZXJtaW5hbCgpIHtcclxuICAgICAgICByZXR1cm4gYFxyXG4gICAgICAgIDwhRE9DVFlQRSBodG1sPlxyXG4gICAgICAgIDxodG1sPlxyXG4gICAgICAgIDxoZWFkPlxyXG4gICAgICAgICAgICA8bWV0YSBjaGFyc2V0PVwidXRmLThcIj5cclxuICAgICAgICAgICAgPHRpdGxlPiR7dGhpcy5zZXJ2aWNlTmFtZX0gY29uc29sZTwvdGl0bGU+XHJcbiAgICAgICAgICAgIDxsaW5rIHJlbD1cInN0eWxlc2hlZXRcIiBocmVmPVwiaHR0cHM6Ly9jZG4uanNkZWxpdnIubmV0L25wbS94dGVybUA1LjEuMC9jc3MveHRlcm0ubWluLmNzc1wiLz5cclxuICAgICAgICAgICAgPHNjcmlwdCB0eXBlPVwidGV4dC9qYXZhc2NyaXB0XCIgc3JjPVwiJHt0aGlzLnNlcnZpY2VVcmx9L3NvY2tldC9zb2NrZXQuaW8uanNcIj48L3NjcmlwdD5cclxuICAgICAgICAgICAgPHN0eWxlPlxyXG4gICAgICAgICAgICAgICAgYm9keSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzFlMWUxZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGJvZHkgKiB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICN0ZXJtaW5hbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiA0MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGJsYWNrO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZWRlZGU7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAjdGVybWluYWwgLnh0ZXJtIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTIwcHgpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICN0ZXJtaW5hbCAueHRlcm0tdmlld3BvcnQ6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMC40ZW07XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICN0ZXJtaW5hbCAueHRlcm0tdmlld3BvcnQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTU1O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICA8L3N0eWxlPlxyXG4gICAgICAgIDwvaGVhZD5cclxuICAgICAgICA8Ym9keT5cclxuICAgICAgICAgICAgPGRpdiBpZD1cInRlcm1pbmFsXCI+PC9kaXY+XHJcbiAgICAgICAgICAgIDxzY3JpcHQgdHlwZT1cIm1vZHVsZVwiPlxyXG4gICAgICAgICAgICAgICAgLy8gSW1wb3J0IHRlcm1pbmFsIG1vZHVsZXNcclxuICAgICAgICAgICAgICAgIGltcG9ydCB4dGVybSBmcm9tICdodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL3h0ZXJtQDUuMS4wLytlc20nO1xyXG4gICAgICAgICAgICAgICAgaW1wb3J0IHh0ZXJtRml0IGZyb20gJ2h0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0veHRlcm0tYWRkb24tZml0QDAuNy4wLytlc20nO1xyXG4gICAgICAgICAgICAgICAgLy8gSW5pdGlhbGl6ZSB2YXJpYWJsZXNcclxuICAgICAgICAgICAgICAgIHZhciB0ZXJtaW5hbCA9IG5ldyB4dGVybS5UZXJtaW5hbCgpO1xyXG4gICAgICAgICAgICAgICAgdmFyIGZpdEFkZG9uID0gbmV3IHh0ZXJtRml0LkZpdEFkZG9uKCk7XHJcbiAgICAgICAgICAgICAgICB2YXIgc29ja2V0ID0gaW8oXCIke3RoaXMuc2VydmljZVVybH1cIiwge3BhdGg6IFwiL3NvY2tldFwifSk7XHJcbiAgICAgICAgICAgICAgICB2YXIgY2xlYXIgPSBmdW5jdGlvbiAoKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGVybWluYWwuY2xlYXIoKTtcclxuICAgICAgICAgICAgICAgICAgICB0ZXJtaW5hbC5yZXNldCgpO1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIFByZXYgbGluZVxyXG4gICAgICAgICAgICAgICAgICAgIHRlcm1pbmFsLndyaXRlKFwiXFx1MDAxQltGXCIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLy8gSW5pdGlhbGl6ZSB0ZXJtaW5hbFxyXG4gICAgICAgICAgICAgICAgdGVybWluYWwubG9hZEFkZG9uKGZpdEFkZG9uKTtcclxuICAgICAgICAgICAgICAgIHRlcm1pbmFsLm9wZW4oZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlcm1pbmFsJykpO1xyXG4gICAgICAgICAgICAgICAgdGVybWluYWwub25EYXRhKGZ1bmN0aW9uIChkYXRhKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgc29ja2V0LmVtaXQoXCJ0ZXJtaW5hbC1kYXRhXCIsIGRhdGEuY2hhckNvZGVBdCgwKSA9PT0gMTI3ID8gXCJcXGJcIiA6IGRhdGEpO1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAvLyBTb2NrZXQgbGlzdGVuZXJzXHJcbiAgICAgICAgICAgICAgICBzb2NrZXQub24oXCJ0ZXJtaW5hbC1kYXRhXCIsIGZ1bmN0aW9uIChkYXRhKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGRhdGEgPT09IFwiXFx4MWJjXCIpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xlYXIoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB0ZXJtaW5hbC53cml0ZShkYXRhKTtcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgc29ja2V0Lm9uKFwidGVybWluYWwtdXBsb2FkXCIsIGZ1bmN0aW9uIChkYXRhKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdmFyIGlucHV0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcImlucHV0XCIpO1xyXG4gICAgICAgICAgICAgICAgICAgIGlucHV0LnR5cGUgPSBcImZpbGVcIjtcclxuICAgICAgICAgICAgICAgICAgICBpbnB1dC5hY2NlcHQgPSBkYXRhLmFjY2VwdDtcclxuICAgICAgICAgICAgICAgICAgICBpbnB1dC5vbmNoYW5nZSA9IGZ1bmN0aW9uICgpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGZpbGUgPSBpbnB1dC5maWxlc1swXTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlYWRlci5vbmxvYWQgPSBmdW5jdGlvbiAoKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhyZWFkZXIucmVzdWx0KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvY2tldC5lbWl0KFwidGVybWluYWwtdXBsb2FkXCIsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogZGF0YS5pZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbDogZmlsZS5uYW1lLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHJlYWRlci5yZXN1bHQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWNjZXB0OiBkYXRhLmFjY2VwdFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlYWRlci5vbmVycm9yID0gZnVuY3Rpb24gKCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcihyZWFkZXIuZXJyb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ja2V0LmVtaXQoXCJ0ZXJtaW5hbC11cGxvYWRcIiwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBkYXRhLmlkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiBmaWxlLm5hbWUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3I6IHJlYWRlci5lcnJvcixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY2NlcHQ6IGRhdGEuYWNjZXB0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVhZGVyLnJlYWRBc0RhdGFVUkwoZmlsZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgICAgICBpbnB1dC5jbGljaygpO1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICBzb2NrZXQub24oXCJ0ZXJtaW5hbC1kb3dubG9hZFwiLCBmdW5jdGlvbiAoZGF0YSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHZhciBsaW5rID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcImFcIik7XHJcbiAgICAgICAgICAgICAgICAgICAgbGluay5ocmVmID0gZGF0YS5jb250ZW50O1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmsuZG93bmxvYWQgPSBkYXRhLmZpbGVuYW1lO1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmsuY2xpY2soKTtcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgc29ja2V0Lm9uKFwiY29ubmVjdFwiLCBmdW5jdGlvbiAoKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY2xlYXIoKTtcclxuICAgICAgICAgICAgICAgICAgICB0ZXJtaW5hbC53cml0ZWxuKFwiV2VsY29tZSB0byAke3RoaXMuc2VydmljZU5hbWV9IHNlcnZpY2UncyBjb25zb2xlIVwiKTtcclxuICAgICAgICAgICAgICAgICAgICBzb2NrZXQuZW1pdChcInRlcm1pbmFsLWluaXRcIik7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgIHNvY2tldC5vbihcImRpc2Nvbm5lY3RcIiwgZnVuY3Rpb24gKCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGNsZWFyKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGVybWluYWwud3JpdGVsbihcIkRpc2Nvbm5lY3RlZCBmcm9tICR7dGhpcy5zZXJ2aWNlTmFtZX0gc2VydmljZSdzIGNvbnNvbGUuXCIpO1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIDwvc2NyaXB0PlxyXG4gICAgICAgIDwvYm9keT5cclxuICAgICAgICA8L2h0bWw+XHJcbiAgICAgICAgYDtcclxuICAgIH1cclxufVxyXG4iXX0=
@@ -1,32 +0,0 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- var __metadata = (this && this.__metadata) || function (k, v) {
8
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
- };
10
- var __param = (this && this.__param) || function (paramIndex, decorator) {
11
- return function (target, key) { decorator(target, key, paramIndex); }
12
- };
13
- import { inject, injectable } from "tsyringe";
14
- import { Middleware } from "routing-controllers";
15
- import { DI_CONTAINER } from "../common-types";
16
- let ContainerMiddleware = class ContainerMiddleware {
17
- constructor(container) {
18
- this.container = container;
19
- }
20
- use(request, response, next) {
21
- request.container = this.container;
22
- next(null);
23
- }
24
- };
25
- ContainerMiddleware = __decorate([
26
- injectable(),
27
- Middleware({ type: "before" }),
28
- __param(0, inject(DI_CONTAINER)),
29
- __metadata("design:paramtypes", [Object])
30
- ], ContainerMiddleware);
31
- export { ContainerMiddleware };
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFpbmVyLm1pZGRsZXdhcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcmVzdC1taWRkbGV3YXJlcy9jb250YWluZXIubWlkZGxld2FyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSxPQUFPLEVBQUMsTUFBTSxFQUFFLFVBQVUsRUFBQyxNQUFNLFVBQVUsQ0FBQztBQUM1QyxPQUFPLEVBQTZCLFVBQVUsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzNFLE9BQU8sRUFBQyxZQUFZLEVBQVcsTUFBTSxpQkFBaUIsQ0FBQztJQUsxQyxtQkFBbUIsU0FBbkIsbUJBQW1CO0lBRTVCLFlBQTJDLFNBQThCO1FBQTlCLGNBQVMsR0FBVCxTQUFTLENBQXFCO0lBRXpFLENBQUM7SUFFRCxHQUFHLENBQUMsT0FBaUIsRUFBRSxRQUFhLEVBQUUsSUFBd0I7UUFDMUQsT0FBTyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ25DLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNmLENBQUM7Q0FDSixDQUFBO0FBVlksbUJBQW1CO0lBRi9CLFVBQVUsRUFBRTtJQUNaLFVBQVUsQ0FBQyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsQ0FBQztJQUdkLFdBQUEsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFBOztHQUZ4QixtQkFBbUIsQ0FVL0I7U0FWWSxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2luamVjdCwgaW5qZWN0YWJsZX0gZnJvbSBcInRzeXJpbmdlXCI7XHJcbmltcG9ydCB7RXhwcmVzc01pZGRsZXdhcmVJbnRlcmZhY2UsIE1pZGRsZXdhcmV9IGZyb20gXCJyb3V0aW5nLWNvbnRyb2xsZXJzXCI7XHJcbmltcG9ydCB7RElfQ09OVEFJTkVSLCBJUmVxdWVzdH0gZnJvbSBcIi4uL2NvbW1vbi10eXBlc1wiO1xyXG5pbXBvcnQge0RlcGVuZGVuY3lDb250YWluZXJ9IGZyb20gXCJ0c3lyaW5nZVwiO1xyXG5cclxuQGluamVjdGFibGUoKVxyXG5ATWlkZGxld2FyZSh7IHR5cGU6IFwiYmVmb3JlXCIgfSlcclxuZXhwb3J0IGNsYXNzIENvbnRhaW5lck1pZGRsZXdhcmUgaW1wbGVtZW50cyBFeHByZXNzTWlkZGxld2FyZUludGVyZmFjZSB7XHJcblxyXG4gICAgY29uc3RydWN0b3IoQGluamVjdChESV9DT05UQUlORVIpIHJlYWRvbmx5IGNvbnRhaW5lcjogRGVwZW5kZW5jeUNvbnRhaW5lcikge1xyXG5cclxuICAgIH1cclxuXHJcbiAgICB1c2UocmVxdWVzdDogSVJlcXVlc3QsIHJlc3BvbnNlOiBhbnksIG5leHQ6IChlcnI/OiBhbnkpID0+IGFueSk6IHZvaWQge1xyXG4gICAgICAgIHJlcXVlc3QuY29udGFpbmVyID0gdGhpcy5jb250YWluZXI7XHJcbiAgICAgICAgbmV4dChudWxsKTtcclxuICAgIH1cclxufVxyXG4iXX0=