nestlens 0.4.1 → 0.4.2

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 (80) hide show
  1. package/README.md +1 -1
  2. package/dist/__tests__/api/dashboard.controller.spec.js +103 -419
  3. package/dist/__tests__/api/dashboard.controller.spec.js.map +1 -1
  4. package/dist/__tests__/docs-consistency.spec.d.ts +2 -0
  5. package/dist/__tests__/docs-consistency.spec.d.ts.map +1 -0
  6. package/dist/__tests__/docs-consistency.spec.js +74 -0
  7. package/dist/__tests__/docs-consistency.spec.js.map +1 -0
  8. package/dist/__tests__/integration/adapter-compat.integration.spec.d.ts +2 -0
  9. package/dist/__tests__/integration/adapter-compat.integration.spec.d.ts.map +1 -0
  10. package/dist/__tests__/integration/adapter-compat.integration.spec.js +139 -0
  11. package/dist/__tests__/integration/adapter-compat.integration.spec.js.map +1 -0
  12. package/dist/__tests__/integration/schedule-watcher.integration.spec.d.ts +2 -0
  13. package/dist/__tests__/integration/schedule-watcher.integration.spec.d.ts.map +1 -0
  14. package/dist/__tests__/integration/schedule-watcher.integration.spec.js +87 -0
  15. package/dist/__tests__/integration/schedule-watcher.integration.spec.js.map +1 -0
  16. package/dist/__tests__/integration/watcher-coexistence.integration.spec.d.ts +2 -0
  17. package/dist/__tests__/integration/watcher-coexistence.integration.spec.d.ts.map +1 -0
  18. package/dist/__tests__/integration/watcher-coexistence.integration.spec.js +88 -0
  19. package/dist/__tests__/integration/watcher-coexistence.integration.spec.js.map +1 -0
  20. package/dist/__tests__/watchers/exception.watcher.spec.js +10 -0
  21. package/dist/__tests__/watchers/exception.watcher.spec.js.map +1 -1
  22. package/dist/__tests__/watchers/request.watcher.spec.js +30 -0
  23. package/dist/__tests__/watchers/request.watcher.spec.js.map +1 -1
  24. package/dist/__tests__/watchers/schedule.watcher.spec.js +32 -27
  25. package/dist/__tests__/watchers/schedule.watcher.spec.js.map +1 -1
  26. package/dist/api/dashboard.controller.d.ts +51 -43
  27. package/dist/api/dashboard.controller.d.ts.map +1 -1
  28. package/dist/api/dashboard.controller.js +222 -248
  29. package/dist/api/dashboard.controller.js.map +1 -1
  30. package/dist/api/filters/api-exception.filter.d.ts +3 -0
  31. package/dist/api/filters/api-exception.filter.d.ts.map +1 -1
  32. package/dist/api/filters/api-exception.filter.js +9 -3
  33. package/dist/api/filters/api-exception.filter.js.map +1 -1
  34. package/dist/dashboard/public/assets/{BatchesPage-DrFl64wj.js → BatchesPage-BqqMGRhb.js} +1 -1
  35. package/dist/dashboard/public/assets/{CachePage-C57Pkxm0.js → CachePage-4XesQGrB.js} +1 -1
  36. package/dist/dashboard/public/assets/{ClickableBadge-BNUq-FXI.js → ClickableBadge-CULXhkUR.js} +1 -1
  37. package/dist/dashboard/public/assets/{CommandsPage-BdD-ojDk.js → CommandsPage-qA9zZJLY.js} +1 -1
  38. package/dist/dashboard/public/assets/{DashboardPage-DCophLiw.js → DashboardPage-6gpSO6p8.js} +1 -1
  39. package/dist/dashboard/public/assets/{DumpsPage-DtXeYPpQ.js → DumpsPage-BJUH8RX8.js} +1 -1
  40. package/dist/dashboard/public/assets/{EntryDetailPage-qlWzdnXs.js → EntryDetailPage-BybD_jd2.js} +1 -1
  41. package/dist/dashboard/public/assets/{EventsPage-BHpLjHZj.js → EventsPage-Bk5E2ZLC.js} +1 -1
  42. package/dist/dashboard/public/assets/{ExceptionsPage-Ww3jIO29.js → ExceptionsPage-eCyE84NP.js} +1 -1
  43. package/dist/dashboard/public/assets/{GatesPage-beRehq6b.js → GatesPage-CE9Sa3BN.js} +1 -1
  44. package/dist/dashboard/public/assets/{GraphQLPage-BZt0nDmS.js → GraphQLPage-B2XmilbU.js} +1 -1
  45. package/dist/dashboard/public/assets/{HttpClientPage-Dac8U41f.js → HttpClientPage-DMdyMJmo.js} +1 -1
  46. package/dist/dashboard/public/assets/{JobsPage-zLQH5Skv.js → JobsPage-Cza23TpJ.js} +1 -1
  47. package/dist/dashboard/public/assets/{LogsPage-Dj7YEZlz.js → LogsPage-BfFjxmzL.js} +1 -1
  48. package/dist/dashboard/public/assets/{MailPage-C45lv85q.js → MailPage-C7qOueDJ.js} +1 -1
  49. package/dist/dashboard/public/assets/{ModelsPage-CveFVTw3.js → ModelsPage-CdnaDoYH.js} +1 -1
  50. package/dist/dashboard/public/assets/{NotificationsPage-CVAGh1SG.js → NotificationsPage-t0AlQJeY.js} +1 -1
  51. package/dist/dashboard/public/assets/{PageHeader-BhUyZtbe.js → PageHeader-CcbxBdii.js} +1 -1
  52. package/dist/dashboard/public/assets/{QueriesPage-BMpvUeTX.js → QueriesPage-Da9Zl09P.js} +1 -1
  53. package/dist/dashboard/public/assets/{RedisPage-FPrKgNrc.js → RedisPage-C8Elpfq1.js} +1 -1
  54. package/dist/dashboard/public/assets/{RequestsPage-6JVqr7xE.js → RequestsPage-Bobnh4sB.js} +1 -1
  55. package/dist/dashboard/public/assets/{SchedulePage-DOt6jqTT.js → SchedulePage-vBUwBEW5.js} +1 -1
  56. package/dist/dashboard/public/assets/{ViewsPage-RG6Ze2rn.js → ViewsPage-DO70tKip.js} +1 -1
  57. package/dist/dashboard/public/assets/{calendar-CEjtgImi.js → calendar-36iGdS4K.js} +1 -1
  58. package/dist/dashboard/public/assets/{circle-check-big-BnRBDUDo.js → circle-check-big--KQSq_oR.js} +1 -1
  59. package/dist/dashboard/public/assets/{eye-tfj-u8EL.js → eye-B9uY1FJW.js} +1 -1
  60. package/dist/dashboard/public/assets/{index-OMQZjJAo.js → index-C1yiPBCx.js} +2 -2
  61. package/dist/dashboard/public/assets/{types-Cubd9hBF.js → types-DM4HdBI5.js} +1 -1
  62. package/dist/dashboard/public/assets/{zap-Bh7DgMLC.js → zap-ChtSEZU9.js} +1 -1
  63. package/dist/dashboard/public/index.html +1 -1
  64. package/dist/nestlens.module.d.ts.map +1 -1
  65. package/dist/nestlens.module.js +20 -2
  66. package/dist/nestlens.module.js.map +1 -1
  67. package/dist/watchers/exception.watcher.d.ts +5 -2
  68. package/dist/watchers/exception.watcher.d.ts.map +1 -1
  69. package/dist/watchers/exception.watcher.js +22 -10
  70. package/dist/watchers/exception.watcher.js.map +1 -1
  71. package/dist/watchers/graphql/graphql.watcher.d.ts +1 -1
  72. package/dist/watchers/request.watcher.d.ts +4 -1
  73. package/dist/watchers/request.watcher.d.ts.map +1 -1
  74. package/dist/watchers/request.watcher.js +24 -8
  75. package/dist/watchers/request.watcher.js.map +1 -1
  76. package/dist/watchers/schedule.watcher.d.ts +8 -8
  77. package/dist/watchers/schedule.watcher.d.ts.map +1 -1
  78. package/dist/watchers/schedule.watcher.js +30 -13
  79. package/dist/watchers/schedule.watcher.js.map +1 -1
  80. package/package.json +6 -2
@@ -14,482 +14,456 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.DashboardController = void 0;
16
16
  const common_1 = require("@nestjs/common");
17
- const path_1 = require("path");
18
17
  const fs_1 = require("fs");
18
+ const path_1 = require("path");
19
19
  const nestlens_config_1 = require("../nestlens.config");
20
20
  const api_guard_1 = require("./api.guard");
21
+ /**
22
+ * Content-Type lookup for the static dashboard assets.
23
+ * Kept explicit so file serving stays adapter-agnostic (no reliance on
24
+ * Express' `res.sendFile`, which Fastify does not implement).
25
+ */
26
+ const MIME_TYPES = {
27
+ '.html': 'text/html; charset=utf-8',
28
+ '.js': 'application/javascript; charset=utf-8',
29
+ '.mjs': 'application/javascript; charset=utf-8',
30
+ '.css': 'text/css; charset=utf-8',
31
+ '.json': 'application/json; charset=utf-8',
32
+ '.map': 'application/json; charset=utf-8',
33
+ '.svg': 'image/svg+xml',
34
+ '.png': 'image/png',
35
+ '.jpg': 'image/jpeg',
36
+ '.jpeg': 'image/jpeg',
37
+ '.gif': 'image/gif',
38
+ '.ico': 'image/x-icon',
39
+ '.webp': 'image/webp',
40
+ '.woff': 'font/woff',
41
+ '.woff2': 'font/woff2',
42
+ '.ttf': 'font/ttf',
43
+ '.eot': 'application/vnd.ms-fontobject',
44
+ '.txt': 'text/plain; charset=utf-8',
45
+ };
21
46
  let DashboardController = class DashboardController {
22
47
  constructor(config) {
23
48
  this.config = config;
24
49
  // Dashboard static files are bundled in dist/dashboard/public
25
50
  this.dashboardPath = (0, path_1.join)(__dirname, '..', 'dashboard', 'public');
26
51
  }
27
- serveDashboard(req, res) {
28
- // Redirect /nestlens to /nestlens/ for SPA routing consistency
29
- if (!req.originalUrl.endsWith('/')) {
30
- return res.redirect(301, req.originalUrl + '/');
31
- }
32
- const indexPath = (0, path_1.join)(this.dashboardPath, 'index.html');
33
- if ((0, fs_1.existsSync)(indexPath)) {
34
- res.sendFile('index.html', {
35
- root: this.dashboardPath,
36
- });
37
- }
38
- else {
39
- res.status(404).json({ error: 'Dashboard not found' });
40
- }
52
+ // Dashboard root. The built index.html references all assets with absolute
53
+ // `/nestlens/...` URLs, so no trailing-slash redirect is needed — keeping this
54
+ // a plain handler makes it work identically on Express and Fastify.
55
+ serveDashboard() {
56
+ return this.serveIndexHtml();
41
57
  }
42
- serveAssets(filename, res) {
43
- const assetPath = (0, path_1.join)(this.dashboardPath, 'assets', filename);
44
- if ((0, fs_1.existsSync)(assetPath)) {
45
- res.sendFile(filename, {
46
- root: (0, path_1.join)(this.dashboardPath, 'assets'),
47
- });
48
- }
49
- else {
50
- res.status(404).json({ error: 'Asset not found' });
51
- }
58
+ serveAssets(filename) {
59
+ return this.streamFile((0, path_1.join)('assets', filename), 'Asset not found');
52
60
  }
53
61
  // Serve static files like favicon
54
- serveStaticFile(filename, res) {
55
- const filePath = (0, path_1.join)(this.dashboardPath, `${filename}.svg`);
56
- if ((0, fs_1.existsSync)(filePath)) {
57
- res.sendFile(`${filename}.svg`, {
58
- root: this.dashboardPath,
59
- });
60
- }
61
- else {
62
- res.status(404).json({ error: 'File not found' });
63
- }
62
+ serveStaticFile(filename) {
63
+ return this.streamFile(`${filename}.svg`, 'File not found');
64
64
  }
65
65
  // SPA routes - serve index.html for client-side routing
66
- serveRequestsRoute(res) {
67
- this.serveIndexHtml(res);
66
+ serveRequestsRoute() {
67
+ return this.serveIndexHtml();
68
68
  }
69
- serveQueriesRoute(res) {
70
- this.serveIndexHtml(res);
69
+ serveQueriesRoute() {
70
+ return this.serveIndexHtml();
71
71
  }
72
- serveExceptionsRoute(res) {
73
- this.serveIndexHtml(res);
72
+ serveExceptionsRoute() {
73
+ return this.serveIndexHtml();
74
74
  }
75
- serveLogsRoute(res) {
76
- this.serveIndexHtml(res);
75
+ serveLogsRoute() {
76
+ return this.serveIndexHtml();
77
77
  }
78
- serveEntryDetailRoute(res) {
79
- this.serveIndexHtml(res);
78
+ serveEntryDetailRoute() {
79
+ return this.serveIndexHtml();
80
80
  }
81
- serveEventsRoute(res) {
82
- this.serveIndexHtml(res);
81
+ serveEventsRoute() {
82
+ return this.serveIndexHtml();
83
83
  }
84
- serveEventDetailRoute(res) {
85
- this.serveIndexHtml(res);
84
+ serveEventDetailRoute() {
85
+ return this.serveIndexHtml();
86
86
  }
87
- serveJobsRoute(res) {
88
- this.serveIndexHtml(res);
87
+ serveJobsRoute() {
88
+ return this.serveIndexHtml();
89
89
  }
90
- serveJobDetailRoute(res) {
91
- this.serveIndexHtml(res);
90
+ serveJobDetailRoute() {
91
+ return this.serveIndexHtml();
92
92
  }
93
- serveCacheRoute(res) {
94
- this.serveIndexHtml(res);
93
+ serveCacheRoute() {
94
+ return this.serveIndexHtml();
95
95
  }
96
- serveCacheDetailRoute(res) {
97
- this.serveIndexHtml(res);
96
+ serveCacheDetailRoute() {
97
+ return this.serveIndexHtml();
98
98
  }
99
- serveMailRoute(res) {
100
- this.serveIndexHtml(res);
99
+ serveMailRoute() {
100
+ return this.serveIndexHtml();
101
101
  }
102
- serveMailDetailRoute(res) {
103
- this.serveIndexHtml(res);
102
+ serveMailDetailRoute() {
103
+ return this.serveIndexHtml();
104
104
  }
105
- serveScheduleRoute(res) {
106
- this.serveIndexHtml(res);
105
+ serveScheduleRoute() {
106
+ return this.serveIndexHtml();
107
107
  }
108
- serveScheduleDetailRoute(res) {
109
- this.serveIndexHtml(res);
108
+ serveScheduleDetailRoute() {
109
+ return this.serveIndexHtml();
110
110
  }
111
- serveHttpClientRoute(res) {
112
- this.serveIndexHtml(res);
111
+ serveHttpClientRoute() {
112
+ return this.serveIndexHtml();
113
113
  }
114
- serveHttpClientDetailRoute(res) {
115
- this.serveIndexHtml(res);
114
+ serveHttpClientDetailRoute() {
115
+ return this.serveIndexHtml();
116
116
  }
117
- serveRequestDetailRoute(res) {
118
- this.serveIndexHtml(res);
117
+ serveRequestDetailRoute() {
118
+ return this.serveIndexHtml();
119
119
  }
120
- serveQueryDetailRoute(res) {
121
- this.serveIndexHtml(res);
120
+ serveQueryDetailRoute() {
121
+ return this.serveIndexHtml();
122
122
  }
123
- serveExceptionDetailRoute(res) {
124
- this.serveIndexHtml(res);
123
+ serveExceptionDetailRoute() {
124
+ return this.serveIndexHtml();
125
125
  }
126
- serveLogDetailRoute(res) {
127
- this.serveIndexHtml(res);
126
+ serveLogDetailRoute() {
127
+ return this.serveIndexHtml();
128
128
  }
129
129
  // New Advanced Routes
130
- serveRedisRoute(res) {
131
- this.serveIndexHtml(res);
130
+ serveRedisRoute() {
131
+ return this.serveIndexHtml();
132
132
  }
133
- serveRedisDetailRoute(res) {
134
- this.serveIndexHtml(res);
133
+ serveRedisDetailRoute() {
134
+ return this.serveIndexHtml();
135
135
  }
136
- serveModelsRoute(res) {
137
- this.serveIndexHtml(res);
136
+ serveModelsRoute() {
137
+ return this.serveIndexHtml();
138
138
  }
139
- serveModelDetailRoute(res) {
140
- this.serveIndexHtml(res);
139
+ serveModelDetailRoute() {
140
+ return this.serveIndexHtml();
141
141
  }
142
- serveNotificationsRoute(res) {
143
- this.serveIndexHtml(res);
142
+ serveNotificationsRoute() {
143
+ return this.serveIndexHtml();
144
144
  }
145
- serveNotificationDetailRoute(res) {
146
- this.serveIndexHtml(res);
145
+ serveNotificationDetailRoute() {
146
+ return this.serveIndexHtml();
147
147
  }
148
- serveViewsRoute(res) {
149
- this.serveIndexHtml(res);
148
+ serveViewsRoute() {
149
+ return this.serveIndexHtml();
150
150
  }
151
- serveViewDetailRoute(res) {
152
- this.serveIndexHtml(res);
151
+ serveViewDetailRoute() {
152
+ return this.serveIndexHtml();
153
153
  }
154
- serveCommandsRoute(res) {
155
- this.serveIndexHtml(res);
154
+ serveCommandsRoute() {
155
+ return this.serveIndexHtml();
156
156
  }
157
- serveCommandDetailRoute(res) {
158
- this.serveIndexHtml(res);
157
+ serveCommandDetailRoute() {
158
+ return this.serveIndexHtml();
159
159
  }
160
- serveGatesRoute(res) {
161
- this.serveIndexHtml(res);
160
+ serveGatesRoute() {
161
+ return this.serveIndexHtml();
162
162
  }
163
- serveGateDetailRoute(res) {
164
- this.serveIndexHtml(res);
163
+ serveGateDetailRoute() {
164
+ return this.serveIndexHtml();
165
165
  }
166
- serveBatchesRoute(res) {
167
- this.serveIndexHtml(res);
166
+ serveBatchesRoute() {
167
+ return this.serveIndexHtml();
168
168
  }
169
- serveBatchDetailRoute(res) {
170
- this.serveIndexHtml(res);
169
+ serveBatchDetailRoute() {
170
+ return this.serveIndexHtml();
171
171
  }
172
- serveDumpsRoute(res) {
173
- this.serveIndexHtml(res);
172
+ serveDumpsRoute() {
173
+ return this.serveIndexHtml();
174
174
  }
175
- serveDumpDetailRoute(res) {
176
- this.serveIndexHtml(res);
175
+ serveDumpDetailRoute() {
176
+ return this.serveIndexHtml();
177
177
  }
178
- serveGraphQLRoute(res) {
179
- this.serveIndexHtml(res);
178
+ serveGraphQLRoute() {
179
+ return this.serveIndexHtml();
180
180
  }
181
- serveGraphQLDetailRoute(res) {
182
- this.serveIndexHtml(res);
181
+ serveGraphQLDetailRoute() {
182
+ return this.serveIndexHtml();
183
183
  }
184
- serveIndexHtml(res) {
185
- const indexPath = (0, path_1.join)(this.dashboardPath, 'index.html');
186
- if ((0, fs_1.existsSync)(indexPath)) {
187
- res.sendFile('index.html', {
188
- root: this.dashboardPath,
189
- });
184
+ serveIndexHtml() {
185
+ return this.streamFile('index.html', 'Dashboard not found');
186
+ }
187
+ /**
188
+ * Resolve a path inside the dashboard directory, rejecting anything that
189
+ * escapes it (path traversal) or does not exist.
190
+ */
191
+ resolveDashboardFile(relativePath, notFoundMessage) {
192
+ const root = (0, path_1.resolve)(this.dashboardPath);
193
+ const absolutePath = (0, path_1.resolve)(root, relativePath);
194
+ if (absolutePath !== root && !absolutePath.startsWith(root + path_1.sep)) {
195
+ throw new common_1.NotFoundException(notFoundMessage);
190
196
  }
191
- else {
192
- res.status(404).json({ error: 'Dashboard not found' });
197
+ if (!(0, fs_1.existsSync)(absolutePath)) {
198
+ throw new common_1.NotFoundException(notFoundMessage);
193
199
  }
200
+ return absolutePath;
201
+ }
202
+ contentTypeFor(absolutePath) {
203
+ return MIME_TYPES[(0, path_1.extname)(absolutePath).toLowerCase()] ?? 'application/octet-stream';
204
+ }
205
+ /** Stream a dashboard file. Adapter-agnostic via StreamableFile. */
206
+ streamFile(relativePath, notFoundMessage) {
207
+ const absolutePath = this.resolveDashboardFile(relativePath, notFoundMessage);
208
+ return new common_1.StreamableFile((0, fs_1.createReadStream)(absolutePath), {
209
+ type: this.contentTypeFor(absolutePath),
210
+ });
194
211
  }
195
212
  };
196
213
  exports.DashboardController = DashboardController;
197
214
  __decorate([
198
215
  (0, common_1.Get)(),
199
- __param(0, (0, common_1.Req)()),
200
- __param(1, (0, common_1.Res)()),
201
216
  __metadata("design:type", Function),
202
- __metadata("design:paramtypes", [Object, Object]),
203
- __metadata("design:returntype", void 0)
217
+ __metadata("design:paramtypes", []),
218
+ __metadata("design:returntype", common_1.StreamableFile)
204
219
  ], DashboardController.prototype, "serveDashboard", null);
205
220
  __decorate([
206
221
  (0, common_1.Get)('assets/:filename'),
207
222
  __param(0, (0, common_1.Param)('filename')),
208
- __param(1, (0, common_1.Res)()),
209
223
  __metadata("design:type", Function),
210
- __metadata("design:paramtypes", [String, Object]),
211
- __metadata("design:returntype", void 0)
224
+ __metadata("design:paramtypes", [String]),
225
+ __metadata("design:returntype", common_1.StreamableFile)
212
226
  ], DashboardController.prototype, "serveAssets", null);
213
227
  __decorate([
214
228
  (0, common_1.Get)(':filename.svg'),
215
229
  __param(0, (0, common_1.Param)('filename')),
216
- __param(1, (0, common_1.Res)()),
217
230
  __metadata("design:type", Function),
218
- __metadata("design:paramtypes", [String, Object]),
219
- __metadata("design:returntype", void 0)
231
+ __metadata("design:paramtypes", [String]),
232
+ __metadata("design:returntype", common_1.StreamableFile)
220
233
  ], DashboardController.prototype, "serveStaticFile", null);
221
234
  __decorate([
222
235
  (0, common_1.Get)('requests'),
223
- __param(0, (0, common_1.Res)()),
224
236
  __metadata("design:type", Function),
225
- __metadata("design:paramtypes", [Object]),
226
- __metadata("design:returntype", void 0)
237
+ __metadata("design:paramtypes", []),
238
+ __metadata("design:returntype", common_1.StreamableFile)
227
239
  ], DashboardController.prototype, "serveRequestsRoute", null);
228
240
  __decorate([
229
241
  (0, common_1.Get)('queries'),
230
- __param(0, (0, common_1.Res)()),
231
242
  __metadata("design:type", Function),
232
- __metadata("design:paramtypes", [Object]),
233
- __metadata("design:returntype", void 0)
243
+ __metadata("design:paramtypes", []),
244
+ __metadata("design:returntype", common_1.StreamableFile)
234
245
  ], DashboardController.prototype, "serveQueriesRoute", null);
235
246
  __decorate([
236
247
  (0, common_1.Get)('exceptions'),
237
- __param(0, (0, common_1.Res)()),
238
248
  __metadata("design:type", Function),
239
- __metadata("design:paramtypes", [Object]),
240
- __metadata("design:returntype", void 0)
249
+ __metadata("design:paramtypes", []),
250
+ __metadata("design:returntype", common_1.StreamableFile)
241
251
  ], DashboardController.prototype, "serveExceptionsRoute", null);
242
252
  __decorate([
243
253
  (0, common_1.Get)('logs'),
244
- __param(0, (0, common_1.Res)()),
245
254
  __metadata("design:type", Function),
246
- __metadata("design:paramtypes", [Object]),
247
- __metadata("design:returntype", void 0)
255
+ __metadata("design:paramtypes", []),
256
+ __metadata("design:returntype", common_1.StreamableFile)
248
257
  ], DashboardController.prototype, "serveLogsRoute", null);
249
258
  __decorate([
250
259
  (0, common_1.Get)('entries/:id'),
251
- __param(0, (0, common_1.Res)()),
252
260
  __metadata("design:type", Function),
253
- __metadata("design:paramtypes", [Object]),
254
- __metadata("design:returntype", void 0)
261
+ __metadata("design:paramtypes", []),
262
+ __metadata("design:returntype", common_1.StreamableFile)
255
263
  ], DashboardController.prototype, "serveEntryDetailRoute", null);
256
264
  __decorate([
257
265
  (0, common_1.Get)('events'),
258
- __param(0, (0, common_1.Res)()),
259
266
  __metadata("design:type", Function),
260
- __metadata("design:paramtypes", [Object]),
261
- __metadata("design:returntype", void 0)
267
+ __metadata("design:paramtypes", []),
268
+ __metadata("design:returntype", common_1.StreamableFile)
262
269
  ], DashboardController.prototype, "serveEventsRoute", null);
263
270
  __decorate([
264
271
  (0, common_1.Get)('events/:id'),
265
- __param(0, (0, common_1.Res)()),
266
272
  __metadata("design:type", Function),
267
- __metadata("design:paramtypes", [Object]),
268
- __metadata("design:returntype", void 0)
273
+ __metadata("design:paramtypes", []),
274
+ __metadata("design:returntype", common_1.StreamableFile)
269
275
  ], DashboardController.prototype, "serveEventDetailRoute", null);
270
276
  __decorate([
271
277
  (0, common_1.Get)('jobs'),
272
- __param(0, (0, common_1.Res)()),
273
278
  __metadata("design:type", Function),
274
- __metadata("design:paramtypes", [Object]),
275
- __metadata("design:returntype", void 0)
279
+ __metadata("design:paramtypes", []),
280
+ __metadata("design:returntype", common_1.StreamableFile)
276
281
  ], DashboardController.prototype, "serveJobsRoute", null);
277
282
  __decorate([
278
283
  (0, common_1.Get)('jobs/:id'),
279
- __param(0, (0, common_1.Res)()),
280
284
  __metadata("design:type", Function),
281
- __metadata("design:paramtypes", [Object]),
282
- __metadata("design:returntype", void 0)
285
+ __metadata("design:paramtypes", []),
286
+ __metadata("design:returntype", common_1.StreamableFile)
283
287
  ], DashboardController.prototype, "serveJobDetailRoute", null);
284
288
  __decorate([
285
289
  (0, common_1.Get)('cache'),
286
- __param(0, (0, common_1.Res)()),
287
290
  __metadata("design:type", Function),
288
- __metadata("design:paramtypes", [Object]),
289
- __metadata("design:returntype", void 0)
291
+ __metadata("design:paramtypes", []),
292
+ __metadata("design:returntype", common_1.StreamableFile)
290
293
  ], DashboardController.prototype, "serveCacheRoute", null);
291
294
  __decorate([
292
295
  (0, common_1.Get)('cache/:id'),
293
- __param(0, (0, common_1.Res)()),
294
296
  __metadata("design:type", Function),
295
- __metadata("design:paramtypes", [Object]),
296
- __metadata("design:returntype", void 0)
297
+ __metadata("design:paramtypes", []),
298
+ __metadata("design:returntype", common_1.StreamableFile)
297
299
  ], DashboardController.prototype, "serveCacheDetailRoute", null);
298
300
  __decorate([
299
301
  (0, common_1.Get)('mail'),
300
- __param(0, (0, common_1.Res)()),
301
302
  __metadata("design:type", Function),
302
- __metadata("design:paramtypes", [Object]),
303
- __metadata("design:returntype", void 0)
303
+ __metadata("design:paramtypes", []),
304
+ __metadata("design:returntype", common_1.StreamableFile)
304
305
  ], DashboardController.prototype, "serveMailRoute", null);
305
306
  __decorate([
306
307
  (0, common_1.Get)('mail/:id'),
307
- __param(0, (0, common_1.Res)()),
308
308
  __metadata("design:type", Function),
309
- __metadata("design:paramtypes", [Object]),
310
- __metadata("design:returntype", void 0)
309
+ __metadata("design:paramtypes", []),
310
+ __metadata("design:returntype", common_1.StreamableFile)
311
311
  ], DashboardController.prototype, "serveMailDetailRoute", null);
312
312
  __decorate([
313
313
  (0, common_1.Get)('schedule'),
314
- __param(0, (0, common_1.Res)()),
315
314
  __metadata("design:type", Function),
316
- __metadata("design:paramtypes", [Object]),
317
- __metadata("design:returntype", void 0)
315
+ __metadata("design:paramtypes", []),
316
+ __metadata("design:returntype", common_1.StreamableFile)
318
317
  ], DashboardController.prototype, "serveScheduleRoute", null);
319
318
  __decorate([
320
319
  (0, common_1.Get)('schedule/:id'),
321
- __param(0, (0, common_1.Res)()),
322
320
  __metadata("design:type", Function),
323
- __metadata("design:paramtypes", [Object]),
324
- __metadata("design:returntype", void 0)
321
+ __metadata("design:paramtypes", []),
322
+ __metadata("design:returntype", common_1.StreamableFile)
325
323
  ], DashboardController.prototype, "serveScheduleDetailRoute", null);
326
324
  __decorate([
327
325
  (0, common_1.Get)('http-client'),
328
- __param(0, (0, common_1.Res)()),
329
326
  __metadata("design:type", Function),
330
- __metadata("design:paramtypes", [Object]),
331
- __metadata("design:returntype", void 0)
327
+ __metadata("design:paramtypes", []),
328
+ __metadata("design:returntype", common_1.StreamableFile)
332
329
  ], DashboardController.prototype, "serveHttpClientRoute", null);
333
330
  __decorate([
334
331
  (0, common_1.Get)('http-client/:id'),
335
- __param(0, (0, common_1.Res)()),
336
332
  __metadata("design:type", Function),
337
- __metadata("design:paramtypes", [Object]),
338
- __metadata("design:returntype", void 0)
333
+ __metadata("design:paramtypes", []),
334
+ __metadata("design:returntype", common_1.StreamableFile)
339
335
  ], DashboardController.prototype, "serveHttpClientDetailRoute", null);
340
336
  __decorate([
341
337
  (0, common_1.Get)('requests/:id'),
342
- __param(0, (0, common_1.Res)()),
343
338
  __metadata("design:type", Function),
344
- __metadata("design:paramtypes", [Object]),
345
- __metadata("design:returntype", void 0)
339
+ __metadata("design:paramtypes", []),
340
+ __metadata("design:returntype", common_1.StreamableFile)
346
341
  ], DashboardController.prototype, "serveRequestDetailRoute", null);
347
342
  __decorate([
348
343
  (0, common_1.Get)('queries/:id'),
349
- __param(0, (0, common_1.Res)()),
350
344
  __metadata("design:type", Function),
351
- __metadata("design:paramtypes", [Object]),
352
- __metadata("design:returntype", void 0)
345
+ __metadata("design:paramtypes", []),
346
+ __metadata("design:returntype", common_1.StreamableFile)
353
347
  ], DashboardController.prototype, "serveQueryDetailRoute", null);
354
348
  __decorate([
355
349
  (0, common_1.Get)('exceptions/:id'),
356
- __param(0, (0, common_1.Res)()),
357
350
  __metadata("design:type", Function),
358
- __metadata("design:paramtypes", [Object]),
359
- __metadata("design:returntype", void 0)
351
+ __metadata("design:paramtypes", []),
352
+ __metadata("design:returntype", common_1.StreamableFile)
360
353
  ], DashboardController.prototype, "serveExceptionDetailRoute", null);
361
354
  __decorate([
362
355
  (0, common_1.Get)('logs/:id'),
363
- __param(0, (0, common_1.Res)()),
364
356
  __metadata("design:type", Function),
365
- __metadata("design:paramtypes", [Object]),
366
- __metadata("design:returntype", void 0)
357
+ __metadata("design:paramtypes", []),
358
+ __metadata("design:returntype", common_1.StreamableFile)
367
359
  ], DashboardController.prototype, "serveLogDetailRoute", null);
368
360
  __decorate([
369
361
  (0, common_1.Get)('redis'),
370
- __param(0, (0, common_1.Res)()),
371
362
  __metadata("design:type", Function),
372
- __metadata("design:paramtypes", [Object]),
373
- __metadata("design:returntype", void 0)
363
+ __metadata("design:paramtypes", []),
364
+ __metadata("design:returntype", common_1.StreamableFile)
374
365
  ], DashboardController.prototype, "serveRedisRoute", null);
375
366
  __decorate([
376
367
  (0, common_1.Get)('redis/:id'),
377
- __param(0, (0, common_1.Res)()),
378
368
  __metadata("design:type", Function),
379
- __metadata("design:paramtypes", [Object]),
380
- __metadata("design:returntype", void 0)
369
+ __metadata("design:paramtypes", []),
370
+ __metadata("design:returntype", common_1.StreamableFile)
381
371
  ], DashboardController.prototype, "serveRedisDetailRoute", null);
382
372
  __decorate([
383
373
  (0, common_1.Get)('models'),
384
- __param(0, (0, common_1.Res)()),
385
374
  __metadata("design:type", Function),
386
- __metadata("design:paramtypes", [Object]),
387
- __metadata("design:returntype", void 0)
375
+ __metadata("design:paramtypes", []),
376
+ __metadata("design:returntype", common_1.StreamableFile)
388
377
  ], DashboardController.prototype, "serveModelsRoute", null);
389
378
  __decorate([
390
379
  (0, common_1.Get)('models/:id'),
391
- __param(0, (0, common_1.Res)()),
392
380
  __metadata("design:type", Function),
393
- __metadata("design:paramtypes", [Object]),
394
- __metadata("design:returntype", void 0)
381
+ __metadata("design:paramtypes", []),
382
+ __metadata("design:returntype", common_1.StreamableFile)
395
383
  ], DashboardController.prototype, "serveModelDetailRoute", null);
396
384
  __decorate([
397
385
  (0, common_1.Get)('notifications'),
398
- __param(0, (0, common_1.Res)()),
399
386
  __metadata("design:type", Function),
400
- __metadata("design:paramtypes", [Object]),
401
- __metadata("design:returntype", void 0)
387
+ __metadata("design:paramtypes", []),
388
+ __metadata("design:returntype", common_1.StreamableFile)
402
389
  ], DashboardController.prototype, "serveNotificationsRoute", null);
403
390
  __decorate([
404
391
  (0, common_1.Get)('notifications/:id'),
405
- __param(0, (0, common_1.Res)()),
406
392
  __metadata("design:type", Function),
407
- __metadata("design:paramtypes", [Object]),
408
- __metadata("design:returntype", void 0)
393
+ __metadata("design:paramtypes", []),
394
+ __metadata("design:returntype", common_1.StreamableFile)
409
395
  ], DashboardController.prototype, "serveNotificationDetailRoute", null);
410
396
  __decorate([
411
397
  (0, common_1.Get)('views'),
412
- __param(0, (0, common_1.Res)()),
413
398
  __metadata("design:type", Function),
414
- __metadata("design:paramtypes", [Object]),
415
- __metadata("design:returntype", void 0)
399
+ __metadata("design:paramtypes", []),
400
+ __metadata("design:returntype", common_1.StreamableFile)
416
401
  ], DashboardController.prototype, "serveViewsRoute", null);
417
402
  __decorate([
418
403
  (0, common_1.Get)('views/:id'),
419
- __param(0, (0, common_1.Res)()),
420
404
  __metadata("design:type", Function),
421
- __metadata("design:paramtypes", [Object]),
422
- __metadata("design:returntype", void 0)
405
+ __metadata("design:paramtypes", []),
406
+ __metadata("design:returntype", common_1.StreamableFile)
423
407
  ], DashboardController.prototype, "serveViewDetailRoute", null);
424
408
  __decorate([
425
409
  (0, common_1.Get)('commands'),
426
- __param(0, (0, common_1.Res)()),
427
410
  __metadata("design:type", Function),
428
- __metadata("design:paramtypes", [Object]),
429
- __metadata("design:returntype", void 0)
411
+ __metadata("design:paramtypes", []),
412
+ __metadata("design:returntype", common_1.StreamableFile)
430
413
  ], DashboardController.prototype, "serveCommandsRoute", null);
431
414
  __decorate([
432
415
  (0, common_1.Get)('commands/:id'),
433
- __param(0, (0, common_1.Res)()),
434
416
  __metadata("design:type", Function),
435
- __metadata("design:paramtypes", [Object]),
436
- __metadata("design:returntype", void 0)
417
+ __metadata("design:paramtypes", []),
418
+ __metadata("design:returntype", common_1.StreamableFile)
437
419
  ], DashboardController.prototype, "serveCommandDetailRoute", null);
438
420
  __decorate([
439
421
  (0, common_1.Get)('gates'),
440
- __param(0, (0, common_1.Res)()),
441
422
  __metadata("design:type", Function),
442
- __metadata("design:paramtypes", [Object]),
443
- __metadata("design:returntype", void 0)
423
+ __metadata("design:paramtypes", []),
424
+ __metadata("design:returntype", common_1.StreamableFile)
444
425
  ], DashboardController.prototype, "serveGatesRoute", null);
445
426
  __decorate([
446
427
  (0, common_1.Get)('gates/:id'),
447
- __param(0, (0, common_1.Res)()),
448
428
  __metadata("design:type", Function),
449
- __metadata("design:paramtypes", [Object]),
450
- __metadata("design:returntype", void 0)
429
+ __metadata("design:paramtypes", []),
430
+ __metadata("design:returntype", common_1.StreamableFile)
451
431
  ], DashboardController.prototype, "serveGateDetailRoute", null);
452
432
  __decorate([
453
433
  (0, common_1.Get)('batches'),
454
- __param(0, (0, common_1.Res)()),
455
434
  __metadata("design:type", Function),
456
- __metadata("design:paramtypes", [Object]),
457
- __metadata("design:returntype", void 0)
435
+ __metadata("design:paramtypes", []),
436
+ __metadata("design:returntype", common_1.StreamableFile)
458
437
  ], DashboardController.prototype, "serveBatchesRoute", null);
459
438
  __decorate([
460
439
  (0, common_1.Get)('batches/:id'),
461
- __param(0, (0, common_1.Res)()),
462
440
  __metadata("design:type", Function),
463
- __metadata("design:paramtypes", [Object]),
464
- __metadata("design:returntype", void 0)
441
+ __metadata("design:paramtypes", []),
442
+ __metadata("design:returntype", common_1.StreamableFile)
465
443
  ], DashboardController.prototype, "serveBatchDetailRoute", null);
466
444
  __decorate([
467
445
  (0, common_1.Get)('dumps'),
468
- __param(0, (0, common_1.Res)()),
469
446
  __metadata("design:type", Function),
470
- __metadata("design:paramtypes", [Object]),
471
- __metadata("design:returntype", void 0)
447
+ __metadata("design:paramtypes", []),
448
+ __metadata("design:returntype", common_1.StreamableFile)
472
449
  ], DashboardController.prototype, "serveDumpsRoute", null);
473
450
  __decorate([
474
451
  (0, common_1.Get)('dumps/:id'),
475
- __param(0, (0, common_1.Res)()),
476
452
  __metadata("design:type", Function),
477
- __metadata("design:paramtypes", [Object]),
478
- __metadata("design:returntype", void 0)
453
+ __metadata("design:paramtypes", []),
454
+ __metadata("design:returntype", common_1.StreamableFile)
479
455
  ], DashboardController.prototype, "serveDumpDetailRoute", null);
480
456
  __decorate([
481
457
  (0, common_1.Get)('graphql'),
482
- __param(0, (0, common_1.Res)()),
483
458
  __metadata("design:type", Function),
484
- __metadata("design:paramtypes", [Object]),
485
- __metadata("design:returntype", void 0)
459
+ __metadata("design:paramtypes", []),
460
+ __metadata("design:returntype", common_1.StreamableFile)
486
461
  ], DashboardController.prototype, "serveGraphQLRoute", null);
487
462
  __decorate([
488
463
  (0, common_1.Get)('graphql/:id'),
489
- __param(0, (0, common_1.Res)()),
490
464
  __metadata("design:type", Function),
491
- __metadata("design:paramtypes", [Object]),
492
- __metadata("design:returntype", void 0)
465
+ __metadata("design:paramtypes", []),
466
+ __metadata("design:returntype", common_1.StreamableFile)
493
467
  ], DashboardController.prototype, "serveGraphQLDetailRoute", null);
494
468
  exports.DashboardController = DashboardController = __decorate([
495
469
  (0, common_1.Controller)('nestlens'),