nestjs-profiler 1.0.25 → 1.0.26

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 (36) hide show
  1. package/README.md +120 -6
  2. package/collectors/event-collector.d.ts +18 -0
  3. package/collectors/event-collector.js +254 -0
  4. package/collectors/event-collector.js.map +1 -0
  5. package/common/profiler-options.interface.d.ts +8 -0
  6. package/common/profiler.model.d.ts +25 -0
  7. package/controllers/profiler.controller.d.ts +13 -1
  8. package/controllers/profiler.controller.js +103 -17
  9. package/controllers/profiler.controller.js.map +1 -1
  10. package/middleware/profiler-auth.middleware.d.ts +10 -0
  11. package/middleware/profiler-auth.middleware.js +110 -0
  12. package/middleware/profiler-auth.middleware.js.map +1 -0
  13. package/package.json +2 -2
  14. package/profiler.module.js +78 -0
  15. package/profiler.module.js.map +1 -1
  16. package/services/entity-explorer.service.d.ts +1 -1
  17. package/services/entity-explorer.service.js +7 -7
  18. package/services/entity-explorer.service.js.map +1 -1
  19. package/services/health.service.js +23 -8
  20. package/services/health.service.js.map +1 -1
  21. package/services/profiler.service.d.ts +10 -1
  22. package/services/profiler.service.js +103 -35
  23. package/services/profiler.service.js.map +1 -1
  24. package/services/route-explorer.service.d.ts +23 -1
  25. package/services/route-explorer.service.js +136 -10
  26. package/services/route-explorer.service.js.map +1 -1
  27. package/services/template-builder.service.d.ts +1 -0
  28. package/services/template-builder.service.js +184 -83
  29. package/services/template-builder.service.js.map +1 -1
  30. package/services/view.service.d.ts +1 -1
  31. package/services/view.service.js +30 -23
  32. package/services/view.service.js.map +1 -1
  33. package/views/events.html +763 -0
  34. package/views/layout.html +31 -9
  35. package/views/login.html +277 -0
  36. package/views/routes.html +405 -37
@@ -25,20 +25,34 @@ let TemplateBuilderService = class TemplateBuilderService {
25
25
  buildCodeQualityPage() {
26
26
  return this.viewService.render('code-quality', {});
27
27
  }
28
+ buildEventsPage() {
29
+ return this.viewService.render('events', {});
30
+ }
28
31
  buildSummaryPage(stats) {
29
- const errorCount = Math.round(stats.totalRequests * stats.errorRate / 100);
32
+ const errorCount = Math.round((stats.totalRequests * stats.errorRate) / 100);
30
33
  const avgQueriesPerRequest = stats.totalRequests > 0
31
34
  ? (stats.totalQueries / stats.totalRequests).toFixed(1)
32
35
  : '0';
33
- const errorRateBadgeClass = stats.errorRate > 10 ? 'bg-red-50' : stats.errorRate > 0 ? 'bg-yellow-50' : 'bg-green-50';
34
- const errorRateTextClass = stats.errorRate > 10 ? 'text-red-600' : stats.errorRate > 0 ? 'text-yellow-600' : 'text-gray-900';
36
+ const errorRateBadgeClass = stats.errorRate > 10
37
+ ? 'bg-red-50'
38
+ : stats.errorRate > 0
39
+ ? 'bg-yellow-50'
40
+ : 'bg-green-50';
41
+ const errorRateTextClass = stats.errorRate > 10
42
+ ? 'text-red-600'
43
+ : stats.errorRate > 0
44
+ ? 'text-yellow-600'
45
+ : 'text-gray-900';
35
46
  const slowQueriesTextClass = stats.slowQueries > 0 ? 'text-yellow-600' : 'text-gray-900';
36
47
  const nPlusOneBadgeClass = stats.nPlusOneCount > 0 ? 'bg-orange-50' : 'bg-green-50';
37
48
  const nPlusOneIconClass = stats.nPlusOneCount > 0 ? 'text-orange-500' : 'text-green-600';
38
49
  const nPlusOneTextClass = stats.nPlusOneCount > 0 ? 'text-orange-600' : 'text-gray-900';
39
50
  const methodColors = {
40
- GET: 'bg-blue-500', POST: 'bg-green-500', PUT: 'bg-orange-500',
41
- PATCH: 'bg-yellow-500', DELETE: 'bg-red-500',
51
+ GET: 'bg-blue-500',
52
+ POST: 'bg-green-500',
53
+ PUT: 'bg-orange-500',
54
+ PATCH: 'bg-yellow-500',
55
+ DELETE: 'bg-red-500',
42
56
  };
43
57
  const totalReqs = stats.totalRequests || 1;
44
58
  const methodBars = Object.entries(stats.methodDistribution)
@@ -56,10 +70,14 @@ let TemplateBuilderService = class TemplateBuilderService {
56
70
  <div class="${color} h-2 rounded-full" style="width:${pct}%"></div>
57
71
  </div>
58
72
  </div>`;
59
- }).join('') || '<p class="text-sm text-gray-400 italic">No data</p>';
73
+ })
74
+ .join('') || '<p class="text-sm text-gray-400 italic">No data</p>';
60
75
  const statusColors = {
61
- '2xx': 'bg-green-500', '3xx': 'bg-blue-400',
62
- '4xx': 'bg-yellow-500', '5xx': 'bg-red-500', 'unknown': 'bg-gray-400',
76
+ '2xx': 'bg-green-500',
77
+ '3xx': 'bg-blue-400',
78
+ '4xx': 'bg-yellow-500',
79
+ '5xx': 'bg-red-500',
80
+ unknown: 'bg-gray-400',
63
81
  };
64
82
  const statusBars = Object.entries(stats.statusDistribution)
65
83
  .sort((a, b) => b[1] - a[1])
@@ -76,7 +94,8 @@ let TemplateBuilderService = class TemplateBuilderService {
76
94
  <div class="${color} h-2 rounded-full" style="width:${pct}%"></div>
77
95
  </div>
78
96
  </div>`;
79
- }).join('') || '<p class="text-sm text-gray-400 italic">No data</p>';
97
+ })
98
+ .join('') || '<p class="text-sm text-gray-400 italic">No data</p>';
80
99
  const topEndpointsTable = stats.topSlowEndpoints.length > 0
81
100
  ? `<table class="w-full text-sm">
82
101
  <thead class="bg-gray-50 text-xs text-gray-500 uppercase">
@@ -87,7 +106,8 @@ let TemplateBuilderService = class TemplateBuilderService {
87
106
  </tr>
88
107
  </thead>
89
108
  <tbody class="divide-y divide-gray-100">
90
- ${stats.topSlowEndpoints.map(e => `
109
+ ${stats.topSlowEndpoints
110
+ .map((e) => `
91
111
  <tr class="hover:bg-gray-50">
92
112
  <td class="px-4 py-3">
93
113
  <a href="/__profiler/view/requests?search=${encodeURIComponent(e.route)}" class="group inline-flex items-center gap-1.5 hover:underline">
@@ -97,20 +117,23 @@ let TemplateBuilderService = class TemplateBuilderService {
97
117
  </td>
98
118
  <td class="px-4 py-3 text-right text-xs text-gray-500">${e.callCount}</td>
99
119
  <td class="px-4 py-3 text-right text-xs font-semibold ${e.avgDuration > 500 ? 'text-red-600' : e.avgDuration > 100 ? 'text-yellow-600' : 'text-gray-700'}">${Math.round(e.avgDuration)}ms</td>
100
- </tr>`).join('')}
120
+ </tr>`)
121
+ .join('')}
101
122
  </tbody>
102
123
  </table>`
103
124
  : '<div class="p-6 text-center text-sm text-gray-400 italic">No endpoint data yet</div>';
104
125
  const topQueriesTable = stats.topSlowQueries.length > 0
105
126
  ? `<div class="divide-y divide-gray-100">
106
- ${stats.topSlowQueries.map(q => `
127
+ ${stats.topSlowQueries
128
+ .map((q) => `
107
129
  <div class="px-5 py-3">
108
130
  <div class="flex items-center justify-between mb-1">
109
131
  <span class="font-mono text-xs text-gray-400 truncate max-w-xs">${q.requestUrl}</span>
110
132
  <span class="text-xs font-bold ${q.duration > 500 ? 'text-red-600' : q.duration > 100 ? 'text-yellow-600' : 'text-gray-600'} ml-2 flex-shrink-0">${q.duration}ms</span>
111
133
  </div>
112
134
  <pre class="text-xs text-gray-700 font-mono bg-gray-50 rounded px-2 py-1 truncate overflow-hidden">${(q.sql || '').substring(0, 120)}${(q.sql || '').length > 120 ? '...' : ''}</pre>
113
- </div>`).join('')}
135
+ </div>`)
136
+ .join('')}
114
137
  </div>`
115
138
  : '<div class="p-6 text-center text-sm text-gray-400 italic">No query data yet</div>';
116
139
  const recentErrorsSection = stats.recentErrors.length > 0
@@ -131,7 +154,8 @@ let TemplateBuilderService = class TemplateBuilderService {
131
154
  </tr>
132
155
  </thead>
133
156
  <tbody class="divide-y divide-gray-100">
134
- ${stats.recentErrors.map(e => `
157
+ ${stats.recentErrors
158
+ .map((e) => `
135
159
  <tr class="hover:bg-gray-50">
136
160
  <td class="px-4 py-3">
137
161
  <a href="/__profiler/${e.id}" class="group inline-flex items-center gap-1.5 hover:underline">
@@ -142,7 +166,8 @@ let TemplateBuilderService = class TemplateBuilderService {
142
166
  <td class="px-4 py-3"><span class="text-xs font-bold text-red-600">${e.statusCode}</span></td>
143
167
  <td class="px-4 py-3 text-xs text-gray-500 max-w-xs truncate">${e.message || '-'}</td>
144
168
  <td class="px-4 py-3 text-right text-xs text-gray-400">${this.viewService.timeAgo(e.timestamp)}</td>
145
- </tr>`).join('')}
169
+ </tr>`)
170
+ .join('')}
146
171
  </tbody>
147
172
  </table>
148
173
  </div>`
@@ -187,11 +212,13 @@ let TemplateBuilderService = class TemplateBuilderService {
187
212
  return classes[method] || 'bg-gray-100 text-gray-800';
188
213
  }
189
214
  buildDashboard(profiles) {
190
- const rows = profiles.map(p => this.buildRequestRow(p)).join('');
191
- const emptyState = !rows ? '<div class="p-8 text-center text-gray-500">No requests captured yet.</div>' : '';
215
+ const rows = profiles.map((p) => this.buildRequestRow(p)).join('');
216
+ const emptyState = !rows
217
+ ? '<div class="p-8 text-center text-gray-500">No requests captured yet.</div>'
218
+ : '';
192
219
  return this.viewService.render('dashboard', {
193
220
  rows,
194
- emptyState
221
+ emptyState,
195
222
  });
196
223
  }
197
224
  buildDetail(profile) {
@@ -218,12 +245,14 @@ let TemplateBuilderService = class TemplateBuilderService {
218
245
  buildHeadersTable(headers) {
219
246
  if (!headers || Object.keys(headers).length === 0)
220
247
  return '<div class="text-gray-400 italic">No headers captured</div>';
221
- const rows = Object.entries(headers).map(([key, value]) => `
248
+ const rows = Object.entries(headers)
249
+ .map(([key, value]) => `
222
250
  <tr class="border-b border-gray-100 last:border-0">
223
251
  <td class="py-2 px-3 text-xs font-semibold text-gray-600 font-mono whitespace-nowrap bg-gray-50 w-1/3">${key}</td>
224
252
  <td class="py-2 px-3 text-xs text-gray-700 font-mono break-all">${value}</td>
225
253
  </tr>
226
- `).join('');
254
+ `)
255
+ .join('');
227
256
  return `<table class="w-full border-collapse border border-gray-200 rounded hidden md:table">${rows}</table>`;
228
257
  }
229
258
  buildBodyView(body) {
@@ -276,27 +305,31 @@ let TemplateBuilderService = class TemplateBuilderService {
276
305
  `;
277
306
  }
278
307
  buildQueriesList(queries) {
279
- const rows = queries.map(q => this.viewService.render('partials/query_row', {
308
+ const rows = queries
309
+ .map((q) => this.viewService.render('partials/query_row', {
280
310
  sql: q.sql,
281
311
  duration: q.duration.toFixed(2),
282
312
  requestId: q.requestId,
283
313
  requestMethod: q.requestMethod,
284
314
  requestUrl: q.requestUrl,
285
- timeAgo: this.viewService.timeAgo(q.startTime)
286
- })).join('') || '<tr><td colspan="3" class="p-8 text-center text-gray-500">No queries found.</td></tr>';
315
+ timeAgo: this.viewService.timeAgo(q.startTime),
316
+ }))
317
+ .join('') ||
318
+ '<tr><td colspan="3" class="p-8 text-center text-gray-500">No queries found.</td></tr>';
287
319
  return this.viewService.render('queries', { rows });
288
320
  }
289
321
  buildLogsList(logs, currentPage, totalPages, totalLogs) {
290
- const rows = logs.map(l => this.buildLogRow(l)).join('') ||
322
+ const rows = logs.map((l) => this.buildLogRow(l)).join('') ||
291
323
  '<tr><td colspan="4" class="p-8 text-center text-gray-500">No logs captured.</td></tr>';
292
324
  return this.viewService.render('logs', {
293
325
  totalLogs,
294
326
  rows,
295
- pagination: this.buildPagination(currentPage, totalPages)
327
+ pagination: this.buildPagination(currentPage, totalPages),
296
328
  });
297
329
  }
298
330
  buildEntitiesList(entities) {
299
- const rows = entities.map(e => this.viewService.render('partials/entity_row', {
331
+ const rows = entities
332
+ .map((e) => this.viewService.render('partials/entity_row', {
300
333
  name: e.name,
301
334
  typeBadge: this.viewService.getDatabaseBadge(e.type),
302
335
  database: e.database,
@@ -304,47 +337,64 @@ let TemplateBuilderService = class TemplateBuilderService {
304
337
  tableName: e.tableName || '-',
305
338
  columnsCount: e.columns?.length || 0,
306
339
  columnsJson: JSON.stringify(e.columns || []),
307
- rowId: `entity-${Math.random().toString(36).substr(2, 9)}`
308
- })).join('');
309
- const emptyState = !rows ? '<div class="p-8 text-center text-gray-500">No entities found.</div>' : '';
340
+ rowId: `entity-${Math.random().toString(36).substr(2, 9)}`,
341
+ }))
342
+ .join('');
343
+ const emptyState = !rows
344
+ ? '<div class="p-8 text-center text-gray-500">No entities found.</div>'
345
+ : '';
310
346
  return this.viewService.render('entities', {
311
347
  totalEntities: entities.length,
312
348
  rows,
313
- emptyState
349
+ emptyState,
314
350
  });
315
351
  }
316
352
  buildNotFound(id) {
317
353
  return this.viewService.render('not_found', { id });
318
354
  }
319
355
  buildRoutesList(routes) {
320
- const rows = routes.map(r => this.viewService.render('partials/route_row', {
321
- methodBadge: this.viewService.getMethodBadge(r.method),
322
- method: r.method,
356
+ const safe = routes.map((r) => ({
323
357
  path: r.path,
358
+ method: r.method,
324
359
  controller: r.controller,
325
- handler: r.handler
326
- })).join('');
327
- const emptyState = !rows ? '<div class="p-8 text-center text-gray-500">No routes found.</div>' : '';
360
+ handler: r.handler,
361
+ params: (r.params || []).map((p) => ({
362
+ name: p.name,
363
+ paramType: p.paramType,
364
+ dataType: p.dataType,
365
+ required: p.required,
366
+ properties: p.properties || [],
367
+ file: p.file || '',
368
+ })),
369
+ body: r.body ? {
370
+ typeName: r.body.typeName,
371
+ properties: r.body.properties || [],
372
+ file: r.body.file || '',
373
+ } : null,
374
+ }));
328
375
  return this.viewService.render('routes', {
329
376
  totalRoutes: routes.length,
330
- rows,
331
- emptyState
377
+ routesJson: JSON.stringify(safe),
332
378
  });
333
379
  }
334
380
  buildCacheList(cacheOps) {
335
- const rows = cacheOps.map(c => this.viewService.render('partials/cache_row', {
381
+ const rows = cacheOps
382
+ .map((c) => this.viewService.render('partials/cache_row', {
336
383
  operationBadge: this.viewService.getCacheOperationBadge(c.operation),
337
384
  key: c.key,
338
385
  resultBadge: this.viewService.getCacheResultBadge(c.result),
339
386
  store: c.store,
340
387
  duration: c.duration.toFixed(2),
341
- timeAgo: this.viewService.timeAgo(c.startTime)
342
- })).join('');
343
- const emptyState = !rows ? '<div class="p-8 text-center text-gray-500">No cache operations recorded.</div>' : '';
388
+ timeAgo: this.viewService.timeAgo(c.startTime),
389
+ }))
390
+ .join('');
391
+ const emptyState = !rows
392
+ ? '<div class="p-8 text-center text-gray-500">No cache operations recorded.</div>'
393
+ : '';
344
394
  return this.viewService.render('cache', {
345
395
  totalCacheOps: cacheOps.length,
346
396
  rows,
347
- emptyState
397
+ emptyState,
348
398
  });
349
399
  }
350
400
  buildRequestRow(p) {
@@ -357,8 +407,10 @@ let TemplateBuilderService = class TemplateBuilderService {
357
407
  statusClass: this.viewService.getStatusClass(statusCode),
358
408
  statusCode: statusCode,
359
409
  duration: p.duration,
360
- queriesCount: p.queries.length > 0 ? `<span class="bg-gray-100 text-gray-700 px-2 py-0.5 rounded-full text-xs">${p.queries.length}</span>` : '<span class="text-gray-300">-</span>',
361
- timeAgo: this.viewService.timeAgo(p.timestamp)
410
+ queriesCount: p.queries.length > 0
411
+ ? `<span class="bg-gray-100 text-gray-700 px-2 py-0.5 rounded-full text-xs">${p.queries.length}</span>`
412
+ : '<span class="text-gray-300">-</span>',
413
+ timeAgo: this.viewService.timeAgo(p.timestamp),
362
414
  });
363
415
  }
364
416
  buildQueryDetail(q, index) {
@@ -366,28 +418,43 @@ let TemplateBuilderService = class TemplateBuilderService {
366
418
  open: index < 3 ? 'open' : '',
367
419
  index: index + 1,
368
420
  dbBadge: this.viewService.getDatabaseBadge(q.database),
369
- opBadge: q.operation ? `<span class="text-xs px-2 py-0.5 rounded bg-purple-100 text-purple-800 font-medium">${q.operation}</span>` : '',
370
- connection: q.connection ? `<span class="text-xs px-2 py-0.5 rounded border border-gray-200 text-gray-500 bg-gray-50">${q.connection}</span>` : '',
421
+ opBadge: q.operation
422
+ ? `<span class="text-xs px-2 py-0.5 rounded bg-purple-100 text-purple-800 font-medium">${q.operation}</span>`
423
+ : '',
424
+ connection: q.connection
425
+ ? `<span class="text-xs px-2 py-0.5 rounded border border-gray-200 text-gray-500 bg-gray-50">${q.connection}</span>`
426
+ : '',
371
427
  durationClass: this.getDurationClass(q),
372
428
  duration: q.duration.toFixed(2),
373
429
  rowCount: q.rowCount ?? '-',
374
430
  query: q.database === 'mongodb' && q.query ? q.query : q.sql,
375
- tagsBadges: (q.tags || []).map((t) => this.getTagBadge(t)).join(''),
376
- duplicationWarning: q.duplicatedCount > 1 ? `<div class="mt-1 text-xs text-orange-600 font-medium flex items-center"><svg class="w-3 h-3 mr-1" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path></svg> Executed ${q.duplicatedCount} times (N+1)</div>` : '',
377
- planType: q.planType ? `<span class="ml-2 text-xs text-gray-400">(${q.planType})</span>` : '',
378
- params: q.params && q.params.length ? `
431
+ tagsBadges: (q.tags || [])
432
+ .map((t) => this.getTagBadge(t))
433
+ .join(''),
434
+ duplicationWarning: q.duplicatedCount > 1
435
+ ? `<div class="mt-1 text-xs text-orange-600 font-medium flex items-center"><svg class="w-3 h-3 mr-1" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path></svg> Executed ${q.duplicatedCount} times (N+1)</div>`
436
+ : '',
437
+ planType: q.planType
438
+ ? `<span class="ml-2 text-xs text-gray-400">(${q.planType})</span>`
439
+ : '',
440
+ params: q.params && q.params.length
441
+ ? `
379
442
  <div class="mt-2 text-xs">
380
443
  <span class="text-gray-500 font-semibold">Parameters:</span>
381
444
  <code class="text-gray-700 bg-gray-100 px-1 py-0.5 rounded ml-1 font-mono">${JSON.stringify(q.params)}</code>
382
445
  </div>
383
- ` : '',
384
- filter: q.filter && q.database === 'mongodb' ? `
446
+ `
447
+ : '',
448
+ filter: q.filter && q.database === 'mongodb'
449
+ ? `
385
450
  <div class="mt-2 text-xs">
386
451
  <span class="text-gray-500 font-semibold">Filter:</span>
387
452
  <pre class="text-gray-700 bg-gray-100 p-2 rounded mt-1 font-mono text-xs overflow-x-auto">${JSON.stringify(q.filter, null, 2)}</pre>
388
453
  </div>
389
- ` : '',
390
- explainPlan: q.explainPlan ? `
454
+ `
455
+ : '',
456
+ explainPlan: q.explainPlan
457
+ ? `
391
458
  <div class="mt-3 border-t border-gray-100 pt-3">
392
459
  <details class="group">
393
460
  <summary class="text-xs font-medium text-indigo-600 cursor-pointer hover:text-indigo-800 select-none flex items-center">
@@ -397,19 +464,22 @@ let TemplateBuilderService = class TemplateBuilderService {
397
464
  <pre class="mt-2 bg-gray-50 p-3 rounded text-xs text-gray-600 overflow-x-auto border border-gray-200">${JSON.stringify(q.explainPlan, null, 2)}</pre>
398
465
  </details>
399
466
  </div>
400
- ` : '',
401
- error: q.error ? `
467
+ `
468
+ : '',
469
+ error: q.error
470
+ ? `
402
471
  <div class="mt-3 bg-red-50 border-l-4 border-red-500 p-3 text-sm text-red-700">
403
472
  <strong>Error:</strong> ${q.error}
404
473
  </div>
405
- ` : ''
474
+ `
475
+ : '',
406
476
  });
407
477
  }
408
478
  getTagBadge(tag) {
409
479
  const styles = {
410
- 'slow': 'bg-yellow-100 text-yellow-800 border-yellow-200',
480
+ slow: 'bg-yellow-100 text-yellow-800 border-yellow-200',
411
481
  'n+1': 'bg-orange-100 text-orange-800 border-orange-200',
412
- 'seq-scan': 'bg-red-100 text-red-800 border-red-200'
482
+ 'seq-scan': 'bg-red-100 text-red-800 border-red-200',
413
483
  };
414
484
  const style = styles[tag] || 'bg-gray-100 text-gray-600 border-gray-200';
415
485
  return `<span class="ml-2 text-xs px-2 py-0.5 rounded border ${style} font-medium tracking-wide uppercase shadow-sm" style="font-size: 0.65rem;">${tag}</span>`;
@@ -428,7 +498,7 @@ let TemplateBuilderService = class TemplateBuilderService {
428
498
  duration: p.duration,
429
499
  memory: p.memory ? Math.round(p.memory.rss / 1024 / 1024) + ' MB' : '-',
430
500
  controller: p.controller || '-',
431
- handler: p.handler || '-'
501
+ handler: p.handler || '-',
432
502
  });
433
503
  }
434
504
  buildLogRow(l) {
@@ -436,11 +506,13 @@ let TemplateBuilderService = class TemplateBuilderService {
436
506
  levelColor: this.viewService.getLogLevelColor(l.level),
437
507
  level: l.level,
438
508
  message: l.message,
439
- context: l.context ? `<span class="ml-2 text-xs text-gray-500">[${l.context}]</span>` : '',
509
+ context: l.context
510
+ ? `<span class="ml-2 text-xs text-gray-500">[${l.context}]</span>`
511
+ : '',
440
512
  requestId: l.requestId,
441
513
  requestMethod: l.requestMethod,
442
514
  requestUrl: l.requestUrl,
443
- timeAgo: this.viewService.timeAgo(l.timestamp)
515
+ timeAgo: this.viewService.timeAgo(l.timestamp),
444
516
  });
445
517
  }
446
518
  buildPagination(currentPage, totalPages) {
@@ -449,24 +521,28 @@ let TemplateBuilderService = class TemplateBuilderService {
449
521
  return this.viewService.render('partials/pagination', {
450
522
  currentPage,
451
523
  totalPages,
452
- previousPage: currentPage > 1 ? `
524
+ previousPage: currentPage > 1
525
+ ? `
453
526
  <a href="/__profiler/view/logs?page=${currentPage - 1}" class="px-3 py-1 border border-gray-300 rounded-md text-sm font-medium text-gray-700 bg-white hover:bg-gray-50">
454
527
  Previous
455
528
  </a>
456
- ` : `
529
+ `
530
+ : `
457
531
  <span class="px-3 py-1 border border-gray-200 rounded-md text-sm font-medium text-gray-400 bg-gray-50 cursor-not-allowed">
458
532
  Previous
459
533
  </span>
460
534
  `,
461
- nextPage: currentPage < totalPages ? `
535
+ nextPage: currentPage < totalPages
536
+ ? `
462
537
  <a href="/__profiler/view/logs?page=${currentPage + 1}" class="px-3 py-1 border border-gray-300 rounded-md text-sm font-medium text-gray-700 bg-white hover:bg-gray-50">
463
538
  Next
464
539
  </a>
465
- ` : `
540
+ `
541
+ : `
466
542
  <span class="px-3 py-1 border border-gray-200 rounded-md text-sm font-medium text-gray-400 bg-gray-50 cursor-not-allowed">
467
543
  Next
468
544
  </span>
469
- `
545
+ `,
470
546
  });
471
547
  }
472
548
  getStatusColor(statusCode) {
@@ -479,12 +555,22 @@ let TemplateBuilderService = class TemplateBuilderService {
479
555
  return 'bg-green-500';
480
556
  }
481
557
  buildHttpCallsList(calls) {
482
- const rows = calls.map(c => {
483
- const statusClass = !c.statusCode ? 'text-gray-400'
484
- : c.statusCode >= 500 ? 'text-red-600 font-bold'
485
- : c.statusCode >= 400 ? 'text-yellow-600 font-bold'
558
+ const rows = calls
559
+ .map((c) => {
560
+ const statusClass = !c.statusCode
561
+ ? 'text-gray-400'
562
+ : c.statusCode >= 500
563
+ ? 'text-red-600 font-bold'
564
+ : c.statusCode >= 400
565
+ ? 'text-yellow-600 font-bold'
486
566
  : 'text-green-600';
487
- const durationClass = c.error ? 'text-red-600' : c.duration > 500 ? 'text-red-600 font-bold' : c.duration > 200 ? 'text-yellow-600' : 'text-gray-600';
567
+ const durationClass = c.error
568
+ ? 'text-red-600'
569
+ : c.duration > 500
570
+ ? 'text-red-600 font-bold'
571
+ : c.duration > 200
572
+ ? 'text-yellow-600'
573
+ : 'text-gray-600';
488
574
  const protocolBadge = c.protocol === 'https'
489
575
  ? '<span class="text-xs px-1.5 py-0.5 rounded bg-green-100 text-green-700 font-semibold">HTTPS</span>'
490
576
  : '<span class="text-xs px-1.5 py-0.5 rounded bg-gray-100 text-gray-600 font-semibold">HTTP</span>';
@@ -512,7 +598,9 @@ let TemplateBuilderService = class TemplateBuilderService {
512
598
  </a>
513
599
  </td>
514
600
  </tr>`;
515
- }).join('') || '<tr><td colspan="5" class="p-8 text-center text-gray-500">No outbound HTTP calls recorded.</td></tr>';
601
+ })
602
+ .join('') ||
603
+ '<tr><td colspan="5" class="p-8 text-center text-gray-500">No outbound HTTP calls recorded.</td></tr>';
516
604
  return `
517
605
  <div class="bg-white rounded-lg shadow-sm border border-gray-200 overflow-hidden">
518
606
  <div class="p-4 border-b border-gray-200 bg-gray-50 flex justify-between items-center">
@@ -538,12 +626,22 @@ let TemplateBuilderService = class TemplateBuilderService {
538
626
  buildHttpCallsSection(calls) {
539
627
  if (!calls || calls.length === 0)
540
628
  return '';
541
- const rows = calls.map(c => {
542
- const statusClass = !c.statusCode ? 'text-gray-400'
543
- : c.statusCode >= 500 ? 'text-red-600 font-bold'
544
- : c.statusCode >= 400 ? 'text-yellow-600 font-bold'
629
+ const rows = calls
630
+ .map((c) => {
631
+ const statusClass = !c.statusCode
632
+ ? 'text-gray-400'
633
+ : c.statusCode >= 500
634
+ ? 'text-red-600 font-bold'
635
+ : c.statusCode >= 400
636
+ ? 'text-yellow-600 font-bold'
545
637
  : 'text-green-600';
546
- const durationClass = c.error ? 'text-red-600' : c.duration > 500 ? 'text-red-600 font-bold' : c.duration > 200 ? 'text-yellow-600' : 'text-gray-600';
638
+ const durationClass = c.error
639
+ ? 'text-red-600'
640
+ : c.duration > 500
641
+ ? 'text-red-600 font-bold'
642
+ : c.duration > 200
643
+ ? 'text-yellow-600'
644
+ : 'text-gray-600';
547
645
  const protocolBadge = c.protocol === 'https'
548
646
  ? '<span class="text-xs px-1 py-0.5 rounded bg-green-100 text-green-700 font-semibold">HTTPS</span>'
549
647
  : '<span class="text-xs px-1 py-0.5 rounded bg-gray-100 text-gray-600 font-semibold">HTTP</span>';
@@ -564,7 +662,8 @@ let TemplateBuilderService = class TemplateBuilderService {
564
662
  <span class="text-sm ${durationClass}">${c.duration}ms</span>
565
663
  </td>
566
664
  </tr>`;
567
- }).join('');
665
+ })
666
+ .join('');
568
667
  return `
569
668
  <div class="bg-gray-50 rounded-lg border border-gray-200 p-4 mb-4">
570
669
  <h2 class="text-sm font-bold text-gray-500 uppercase tracking-widest mb-4">Outbound HTTP Calls (${calls.length})</h2>
@@ -587,14 +686,16 @@ let TemplateBuilderService = class TemplateBuilderService {
587
686
  buildCacheSection(cache) {
588
687
  if (!cache || cache.length === 0)
589
688
  return '';
590
- const rows = cache.map(c => this.viewService.render('partials/cache_row', {
689
+ const rows = cache
690
+ .map((c) => this.viewService.render('partials/cache_row', {
591
691
  operationBadge: this.viewService.getCacheOperationBadge(c.operation),
592
692
  key: c.key,
593
693
  resultBadge: this.viewService.getCacheResultBadge(c.result),
594
694
  store: c.store,
595
695
  duration: c.duration.toFixed(2),
596
- timeAgo: this.viewService.timeAgo(c.startTime)
597
- })).join('');
696
+ timeAgo: this.viewService.timeAgo(c.startTime),
697
+ }))
698
+ .join('');
598
699
  return `
599
700
  <div class="bg-gray-50 rounded-lg border border-gray-200 p-4 mb-4">
600
701
  <h2 class="text-sm font-bold text-gray-500 uppercase tracking-widest mb-4">Cache Operations (${cache.length})</h2>
@@ -1 +1 @@
1
- {"version":3,"file":"template-builder.service.js","sourceRoot":"","sources":["../../../libs/nestjs-profiler/src/services/template-builder.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"template-builder.service.js","sourceRoot":"","sources":["../../../libs/nestjs-profiler/src/services/template-builder.service.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ export declare class ViewService {
3
3
  constructor();
4
4
  exists(viewName: string): boolean;
5
5
  render(viewName: string, data?: any): string;
6
- renderWithLayout(title: string, content: string, activeTab?: string): string;
6
+ renderWithLayout(title: string, content: string, activeTab?: string, authEnabled?: boolean): string;
7
7
  private loadTemplate;
8
8
  private interpolate;
9
9
  private escapeHtml;