devtools-nestjs 2.0.4 → 2.0.5

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.
@@ -0,0 +1,12 @@
1
+ import { DatabaseCollector } from '../collectors/database-collector';
2
+ interface TypeOrmLogger {
3
+ logQuery(query: string, parameters?: unknown[], queryRunner?: unknown): void;
4
+ logQueryError(error: string, query: string, parameters?: unknown[], queryRunner?: unknown): void;
5
+ logQuerySlow(time: number, query: string, parameters?: unknown[], queryRunner?: unknown): void;
6
+ logSchemaBuild(message: string, queryRunner?: unknown): void;
7
+ logMigration(message: string, queryRunner?: unknown): void;
8
+ log(level: 'log' | 'info' | 'warn', message: unknown, queryRunner?: unknown): void;
9
+ }
10
+ export declare function createTypeOrmProfilerLogger(collector: DatabaseCollector, originalLogger?: unknown): TypeOrmLogger;
11
+ export {};
12
+ //# sourceMappingURL=typeorm-logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typeorm-logger.d.ts","sourceRoot":"","sources":["../../src/adapters/typeorm-logger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAErE,UAAU,aAAa;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,EAAE,WAAW,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC7E,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,EAAE,WAAW,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACjG,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,EAAE,WAAW,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC/F,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC7D,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC3D,GAAG,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;CACpF;AAED,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,iBAAiB,EAC5B,cAAc,CAAC,EAAE,OAAO,GACvB,aAAa,CA+Df"}
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createTypeOrmProfilerLogger = createTypeOrmProfilerLogger;
4
+ function createTypeOrmProfilerLogger(collector, originalLogger) {
5
+ let counter = 0;
6
+ const pending = new Map();
7
+ return {
8
+ logQuery(query, parameters, _queryRunner) {
9
+ const id = ++counter;
10
+ pending.set(id, { query, params: parameters, start: performance.now() });
11
+ process.nextTick(() => {
12
+ const p = pending.get(id);
13
+ if (p) {
14
+ pending.delete(id);
15
+ collector.addQuery({
16
+ query: p.query,
17
+ params: p.params,
18
+ duration: Math.round((performance.now() - p.start) * 100) / 100,
19
+ timestamp: Date.now(),
20
+ });
21
+ }
22
+ });
23
+ originalLogger?.logQuery(query, parameters);
24
+ },
25
+ logQueryError(error, query, parameters, _queryRunner) {
26
+ const p = pending.get(counter);
27
+ const duration = p ? performance.now() - p.start : 0;
28
+ pending.delete(counter);
29
+ collector.addQuery({
30
+ query,
31
+ params: parameters,
32
+ duration: Math.round(duration * 100) / 100,
33
+ timestamp: Date.now(),
34
+ });
35
+ originalLogger?.logQueryError(error, query, parameters);
36
+ },
37
+ logQuerySlow(time, query, parameters, _queryRunner) {
38
+ collector.addQuery({
39
+ query,
40
+ params: parameters,
41
+ duration: time,
42
+ timestamp: Date.now(),
43
+ });
44
+ originalLogger?.logQuerySlow(time, query, parameters);
45
+ },
46
+ logSchemaBuild(message, _queryRunner) {
47
+ originalLogger?.logSchemaBuild(message);
48
+ },
49
+ logMigration(message, _queryRunner) {
50
+ originalLogger?.logMigration(message);
51
+ },
52
+ log(level, message, _queryRunner) {
53
+ originalLogger?.log(level, message);
54
+ },
55
+ };
56
+ }
57
+ //# sourceMappingURL=typeorm-logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typeorm-logger.js","sourceRoot":"","sources":["../../src/adapters/typeorm-logger.ts"],"names":[],"mappings":";;AAWA,kEAkEC;AAlED,SAAgB,2BAA2B,CACzC,SAA4B,EAC5B,cAAwB;IAExB,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,MAAM,OAAO,GAAG,IAAI,GAAG,EAAgE,CAAC;IAExF,OAAO;QACL,QAAQ,CAAC,KAAa,EAAE,UAAsB,EAAE,YAAsB;YACpE,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC;YACrB,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YAEzE,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE;gBACpB,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC1B,IAAI,CAAC,EAAE,CAAC;oBACN,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBACnB,SAAS,CAAC,QAAQ,CAAC;wBACjB,KAAK,EAAE,CAAC,CAAC,KAAK;wBACd,MAAM,EAAE,CAAC,CAAC,MAAM;wBAChB,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG;wBAC/D,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;qBACtB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,CAAC,CAAC;YAEF,cAAgC,EAAE,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QACjE,CAAC;QAED,aAAa,CAAC,KAAa,EAAE,KAAa,EAAE,UAAsB,EAAE,YAAsB;YACxF,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAC/B,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACrD,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAExB,SAAS,CAAC,QAAQ,CAAC;gBACjB,KAAK;gBACL,MAAM,EAAE,UAAU;gBAClB,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,GAAG,CAAC,GAAG,GAAG;gBAC1C,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;aACtB,CAAC,CAAC;YAEF,cAAgC,EAAE,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;QAC7E,CAAC;QAED,YAAY,CAAC,IAAY,EAAE,KAAa,EAAE,UAAsB,EAAE,YAAsB;YACtF,SAAS,CAAC,QAAQ,CAAC;gBACjB,KAAK;gBACL,MAAM,EAAE,UAAU;gBAClB,QAAQ,EAAE,IAAI;gBACd,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;aACtB,CAAC,CAAC;YAEF,cAAgC,EAAE,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;QAC3E,CAAC;QAED,cAAc,CAAC,OAAe,EAAE,YAAsB;YACnD,cAAgC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;QAC7D,CAAC;QAED,YAAY,CAAC,OAAe,EAAE,YAAsB;YACjD,cAAgC,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;QAC3D,CAAC;QAED,GAAG,CAAC,KAA8B,EAAE,OAAgB,EAAE,YAAsB;YACzE,cAAgC,EAAE,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACzD,CAAC;KACF,CAAC;AACJ,CAAC"}
package/dist/index.d.ts CHANGED
@@ -16,5 +16,6 @@ export { StorageInterface, FindOptions } from './storage/storage.interface';
16
16
  export { ProfilerInterceptor } from './interceptors/profiler.interceptor';
17
17
  export { ToolbarInterceptor } from './interceptors/toolbar.interceptor';
18
18
  export { LogInterceptor } from './interceptors/log.interceptor';
19
+ export { createTypeOrmProfilerLogger } from './adapters/typeorm-logger';
19
20
  export { ProfilerModuleOptions, DataCollectorInterface, CollectData, Profile, ProfileSummary, CollectorRegistration, PROFILER_MODULE_OPTIONS, COLLECTOR_TOKEN, } from './profiler.types';
20
21
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,WAAW,EACX,OAAO,EACP,cAAc,EACd,qBAAqB,EACrB,uBAAuB,EACvB,eAAe,GAChB,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,WAAW,EACX,OAAO,EACP,cAAc,EACd,qBAAqB,EACrB,uBAAuB,EACvB,eAAe,GAChB,MAAM,kBAAkB,CAAC"}
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.COLLECTOR_TOKEN = exports.PROFILER_MODULE_OPTIONS = exports.LogInterceptor = exports.ToolbarInterceptor = exports.ProfilerInterceptor = exports.MemoryStorageService = exports.FileStorageService = exports.CacheCollector = exports.DatabaseCollector = exports.LogCollector = exports.RouteCollector = exports.ExceptionCollector = exports.TimeCollector = exports.RequestCollector = exports.BaseCollector = exports.CollectorRegistry = exports.ProfileModel = exports.ProfilerService = exports.ProfilerModule = void 0;
3
+ exports.COLLECTOR_TOKEN = exports.PROFILER_MODULE_OPTIONS = exports.createTypeOrmProfilerLogger = exports.LogInterceptor = exports.ToolbarInterceptor = exports.ProfilerInterceptor = exports.MemoryStorageService = exports.FileStorageService = exports.CacheCollector = exports.DatabaseCollector = exports.LogCollector = exports.RouteCollector = exports.ExceptionCollector = exports.TimeCollector = exports.RequestCollector = exports.BaseCollector = exports.CollectorRegistry = exports.ProfileModel = exports.ProfilerService = exports.ProfilerModule = void 0;
4
4
  var profiler_module_1 = require("./profiler.module");
5
5
  Object.defineProperty(exports, "ProfilerModule", { enumerable: true, get: function () { return profiler_module_1.ProfilerModule; } });
6
6
  var profiler_service_1 = require("./profiler/profiler.service");
@@ -35,6 +35,8 @@ var toolbar_interceptor_1 = require("./interceptors/toolbar.interceptor");
35
35
  Object.defineProperty(exports, "ToolbarInterceptor", { enumerable: true, get: function () { return toolbar_interceptor_1.ToolbarInterceptor; } });
36
36
  var log_interceptor_1 = require("./interceptors/log.interceptor");
37
37
  Object.defineProperty(exports, "LogInterceptor", { enumerable: true, get: function () { return log_interceptor_1.LogInterceptor; } });
38
+ var typeorm_logger_1 = require("./adapters/typeorm-logger");
39
+ Object.defineProperty(exports, "createTypeOrmProfilerLogger", { enumerable: true, get: function () { return typeorm_logger_1.createTypeOrmProfilerLogger; } });
38
40
  var profiler_types_1 = require("./profiler.types");
39
41
  Object.defineProperty(exports, "PROFILER_MODULE_OPTIONS", { enumerable: true, get: function () { return profiler_types_1.PROFILER_MODULE_OPTIONS; } });
40
42
  Object.defineProperty(exports, "COLLECTOR_TOKEN", { enumerable: true, get: function () { return profiler_types_1.COLLECTOR_TOKEN; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,qDAAmD;AAA1C,iHAAA,cAAc,OAAA;AACvB,gEAA8D;AAArD,mHAAA,eAAe,OAAA;AACxB,0DAAwD;AAA/C,6GAAA,YAAY,OAAA;AACrB,sEAAoE;AAA3D,uHAAA,iBAAiB,OAAA;AAC1B,8DAA4D;AAAnD,+GAAA,aAAa,OAAA;AACtB,oEAAkE;AAAzD,qHAAA,gBAAgB,OAAA;AACzB,8DAA4D;AAAnD,+GAAA,aAAa,OAAA;AACtB,wEAAsE;AAA7D,yHAAA,kBAAkB,OAAA;AAC3B,gEAA8D;AAArD,iHAAA,cAAc,OAAA;AACvB,4DAAoE;AAA3D,6GAAA,YAAY,OAAA;AACrB,sEAAmF;AAA1E,uHAAA,iBAAiB,OAAA;AAC1B,gEAA8E;AAArE,iHAAA,cAAc,OAAA;AACvB,uEAAoE;AAA3D,0HAAA,kBAAkB,OAAA;AAC3B,2EAAwE;AAA/D,8HAAA,oBAAoB,OAAA;AAE7B,4EAA0E;AAAjE,2HAAA,mBAAmB,OAAA;AAC5B,0EAAwE;AAA/D,yHAAA,kBAAkB,OAAA;AAC3B,kEAAgE;AAAvD,iHAAA,cAAc,OAAA;AACvB,mDAS0B;AAFxB,yHAAA,uBAAuB,OAAA;AACvB,iHAAA,eAAe,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,qDAAmD;AAA1C,iHAAA,cAAc,OAAA;AACvB,gEAA8D;AAArD,mHAAA,eAAe,OAAA;AACxB,0DAAwD;AAA/C,6GAAA,YAAY,OAAA;AACrB,sEAAoE;AAA3D,uHAAA,iBAAiB,OAAA;AAC1B,8DAA4D;AAAnD,+GAAA,aAAa,OAAA;AACtB,oEAAkE;AAAzD,qHAAA,gBAAgB,OAAA;AACzB,8DAA4D;AAAnD,+GAAA,aAAa,OAAA;AACtB,wEAAsE;AAA7D,yHAAA,kBAAkB,OAAA;AAC3B,gEAA8D;AAArD,iHAAA,cAAc,OAAA;AACvB,4DAAoE;AAA3D,6GAAA,YAAY,OAAA;AACrB,sEAAmF;AAA1E,uHAAA,iBAAiB,OAAA;AAC1B,gEAA8E;AAArE,iHAAA,cAAc,OAAA;AACvB,uEAAoE;AAA3D,0HAAA,kBAAkB,OAAA;AAC3B,2EAAwE;AAA/D,8HAAA,oBAAoB,OAAA;AAE7B,4EAA0E;AAAjE,2HAAA,mBAAmB,OAAA;AAC5B,0EAAwE;AAA/D,yHAAA,kBAAkB,OAAA;AAC3B,kEAAgE;AAAvD,iHAAA,cAAc,OAAA;AACvB,4DAAwE;AAA/D,6HAAA,2BAA2B,OAAA;AACpC,mDAS0B;AAFxB,yHAAA,uBAAuB,OAAA;AACvB,iHAAA,eAAe,OAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "devtools-nestjs",
3
- "version": "2.0.4",
3
+ "version": "2.0.5",
4
4
  "description": "A development tool for NestJS that gives detailed profiling information about request execution — inspired by Symfony's WebProfilerBundle",
5
5
  "keywords": [
6
6
  "nestjs",