stelo 1.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 (141) hide show
  1. package/LICENSE +184 -0
  2. package/README.md +853 -0
  3. package/dist/accessibility.d.ts +227 -0
  4. package/dist/accessibility.d.ts.map +1 -0
  5. package/dist/accessibility.js +602 -0
  6. package/dist/accessibility.js.map +1 -0
  7. package/dist/agent.d.ts +870 -0
  8. package/dist/agent.d.ts.map +1 -0
  9. package/dist/agent.js +1107 -0
  10. package/dist/agent.js.map +1 -0
  11. package/dist/audio-stream.d.ts +114 -0
  12. package/dist/audio-stream.d.ts.map +1 -0
  13. package/dist/audio-stream.js +167 -0
  14. package/dist/audio-stream.js.map +1 -0
  15. package/dist/clipboard.d.ts +99 -0
  16. package/dist/clipboard.d.ts.map +1 -0
  17. package/dist/clipboard.js +352 -0
  18. package/dist/clipboard.js.map +1 -0
  19. package/dist/config.d.ts +183 -0
  20. package/dist/config.d.ts.map +1 -0
  21. package/dist/config.js +477 -0
  22. package/dist/config.js.map +1 -0
  23. package/dist/context.d.ts +213 -0
  24. package/dist/context.d.ts.map +1 -0
  25. package/dist/context.js +387 -0
  26. package/dist/context.js.map +1 -0
  27. package/dist/cortex.d.ts +548 -0
  28. package/dist/cortex.d.ts.map +1 -0
  29. package/dist/cortex.js +1479 -0
  30. package/dist/cortex.js.map +1 -0
  31. package/dist/errors.d.ts +133 -0
  32. package/dist/errors.d.ts.map +1 -0
  33. package/dist/errors.js +278 -0
  34. package/dist/errors.js.map +1 -0
  35. package/dist/events.d.ts +227 -0
  36. package/dist/events.d.ts.map +1 -0
  37. package/dist/events.js +429 -0
  38. package/dist/events.js.map +1 -0
  39. package/dist/executor.d.ts +212 -0
  40. package/dist/executor.d.ts.map +1 -0
  41. package/dist/executor.js +545 -0
  42. package/dist/executor.js.map +1 -0
  43. package/dist/index.d.ts +69 -0
  44. package/dist/index.d.ts.map +1 -0
  45. package/dist/index.js +167 -0
  46. package/dist/index.js.map +1 -0
  47. package/dist/integration.d.ts +159 -0
  48. package/dist/integration.d.ts.map +1 -0
  49. package/dist/integration.js +533 -0
  50. package/dist/integration.js.map +1 -0
  51. package/dist/keyboard.d.ts +276 -0
  52. package/dist/keyboard.d.ts.map +1 -0
  53. package/dist/keyboard.js +404 -0
  54. package/dist/keyboard.js.map +1 -0
  55. package/dist/logger.d.ts +198 -0
  56. package/dist/logger.d.ts.map +1 -0
  57. package/dist/logger.js +516 -0
  58. package/dist/logger.js.map +1 -0
  59. package/dist/middleware.d.ts +183 -0
  60. package/dist/middleware.d.ts.map +1 -0
  61. package/dist/middleware.js +493 -0
  62. package/dist/middleware.js.map +1 -0
  63. package/dist/monitor.d.ts +136 -0
  64. package/dist/monitor.d.ts.map +1 -0
  65. package/dist/monitor.js +341 -0
  66. package/dist/monitor.js.map +1 -0
  67. package/dist/mouse.d.ts +290 -0
  68. package/dist/mouse.d.ts.map +1 -0
  69. package/dist/mouse.js +466 -0
  70. package/dist/mouse.js.map +1 -0
  71. package/dist/plugin.d.ts +157 -0
  72. package/dist/plugin.d.ts.map +1 -0
  73. package/dist/plugin.js +409 -0
  74. package/dist/plugin.js.map +1 -0
  75. package/dist/process.d.ts +106 -0
  76. package/dist/process.d.ts.map +1 -0
  77. package/dist/process.js +326 -0
  78. package/dist/process.js.map +1 -0
  79. package/dist/recorder.d.ts +100 -0
  80. package/dist/recorder.d.ts.map +1 -0
  81. package/dist/recorder.js +258 -0
  82. package/dist/recorder.js.map +1 -0
  83. package/dist/safety.d.ts +59 -0
  84. package/dist/safety.d.ts.map +1 -0
  85. package/dist/safety.js +98 -0
  86. package/dist/safety.js.map +1 -0
  87. package/dist/scheduler.d.ts +152 -0
  88. package/dist/scheduler.d.ts.map +1 -0
  89. package/dist/scheduler.js +615 -0
  90. package/dist/scheduler.js.map +1 -0
  91. package/dist/screen.d.ts +96 -0
  92. package/dist/screen.d.ts.map +1 -0
  93. package/dist/screen.js +154 -0
  94. package/dist/screen.js.map +1 -0
  95. package/dist/session.d.ts +209 -0
  96. package/dist/session.d.ts.map +1 -0
  97. package/dist/session.js +479 -0
  98. package/dist/session.js.map +1 -0
  99. package/dist/stream.d.ts +168 -0
  100. package/dist/stream.d.ts.map +1 -0
  101. package/dist/stream.js +298 -0
  102. package/dist/stream.js.map +1 -0
  103. package/dist/telemetry.d.ts +223 -0
  104. package/dist/telemetry.d.ts.map +1 -0
  105. package/dist/telemetry.js +433 -0
  106. package/dist/telemetry.js.map +1 -0
  107. package/dist/types.d.ts +165 -0
  108. package/dist/types.d.ts.map +1 -0
  109. package/dist/types.js +8 -0
  110. package/dist/types.js.map +1 -0
  111. package/dist/utils/bezier.d.ts +51 -0
  112. package/dist/utils/bezier.d.ts.map +1 -0
  113. package/dist/utils/bezier.js +117 -0
  114. package/dist/utils/bezier.js.map +1 -0
  115. package/dist/utils/helpers.d.ts +90 -0
  116. package/dist/utils/helpers.d.ts.map +1 -0
  117. package/dist/utils/helpers.js +143 -0
  118. package/dist/utils/helpers.js.map +1 -0
  119. package/dist/utils/index.d.ts +4 -0
  120. package/dist/utils/index.d.ts.map +1 -0
  121. package/dist/utils/index.js +18 -0
  122. package/dist/utils/index.js.map +1 -0
  123. package/dist/validation.d.ts +254 -0
  124. package/dist/validation.d.ts.map +1 -0
  125. package/dist/validation.js +478 -0
  126. package/dist/validation.js.map +1 -0
  127. package/dist/vision.d.ts +719 -0
  128. package/dist/vision.d.ts.map +1 -0
  129. package/dist/vision.js +1197 -0
  130. package/dist/vision.js.map +1 -0
  131. package/dist/window.d.ts +80 -0
  132. package/dist/window.d.ts.map +1 -0
  133. package/dist/window.js +170 -0
  134. package/dist/window.js.map +1 -0
  135. package/dist/workflow.d.ts +224 -0
  136. package/dist/workflow.d.ts.map +1 -0
  137. package/dist/workflow.js +578 -0
  138. package/dist/workflow.js.map +1 -0
  139. package/index.d.ts +840 -0
  140. package/index.js +495 -0
  141. package/package.json +91 -0
package/dist/logger.js ADDED
@@ -0,0 +1,516 @@
1
+ "use strict";
2
+ // ============================================================================
3
+ // Stelo — Structured Logging System
4
+ // ============================================================================
5
+ // Production-grade structured logging with levels, JSON output, context
6
+ // propagation, performance timing, and pluggable transports.
7
+ // ============================================================================
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.ChildLogger = exports.SpanContext = exports.TraceContext = exports.logger = exports.CallbackTransport = exports.MemoryTransport = exports.ConsoleTransport = void 0;
10
+ const events_1 = require("./events");
11
+ const LOG_LEVEL_PRIORITY = {
12
+ trace: 0,
13
+ debug: 1,
14
+ info: 2,
15
+ warn: 3,
16
+ error: 4,
17
+ fatal: 5,
18
+ silent: 99,
19
+ };
20
+ // ── Default Transports ───────────────────────────────────────────────────────
21
+ /** Console transport with color-coded output */
22
+ class ConsoleTransport {
23
+ name = 'console';
24
+ level;
25
+ _json;
26
+ constructor(options) {
27
+ this.level = options?.level ?? 'trace';
28
+ this._json = options?.json ?? false;
29
+ }
30
+ write(entry) {
31
+ if (this._json) {
32
+ const line = JSON.stringify(entry);
33
+ if (entry.level === 'error' || entry.level === 'fatal') {
34
+ console.error(line);
35
+ }
36
+ else if (entry.level === 'warn') {
37
+ console.warn(line);
38
+ }
39
+ else {
40
+ console.log(line);
41
+ }
42
+ return;
43
+ }
44
+ const prefix = `[${entry.timestamp.slice(11, 23)}] ${entry.level.toUpperCase().padEnd(5)}`;
45
+ const mod = entry.module ? ` [${entry.module}]` : '';
46
+ const dur = entry.durationMs !== undefined ? ` (${entry.durationMs.toFixed(1)}ms)` : '';
47
+ const tags = entry.tags?.length ? ` {${entry.tags.join(',')}}` : '';
48
+ const msg = `${prefix}${mod} ${entry.message}${dur}${tags}`;
49
+ if (entry.level === 'error' || entry.level === 'fatal') {
50
+ console.error(msg);
51
+ if (entry.error?.stack)
52
+ console.error(entry.error.stack);
53
+ if (entry.data)
54
+ console.error(entry.data);
55
+ }
56
+ else if (entry.level === 'warn') {
57
+ console.warn(msg);
58
+ if (entry.data)
59
+ console.warn(entry.data);
60
+ }
61
+ else if (entry.level === 'debug' || entry.level === 'trace') {
62
+ console.debug(msg);
63
+ if (entry.data)
64
+ console.debug(entry.data);
65
+ }
66
+ else {
67
+ console.log(msg);
68
+ if (entry.data && Object.keys(entry.data).length > 0)
69
+ console.log(entry.data);
70
+ }
71
+ }
72
+ }
73
+ exports.ConsoleTransport = ConsoleTransport;
74
+ /** In-memory transport for testing / inspection */
75
+ class MemoryTransport {
76
+ name = 'memory';
77
+ level;
78
+ entries = [];
79
+ maxEntries;
80
+ constructor(options) {
81
+ this.level = options?.level ?? 'trace';
82
+ this.maxEntries = options?.maxEntries ?? 10000;
83
+ }
84
+ write(entry) {
85
+ this.entries.push(entry);
86
+ while (this.entries.length > this.maxEntries) {
87
+ this.entries.shift();
88
+ }
89
+ }
90
+ query(filter) {
91
+ return this.entries.filter((e) => {
92
+ if (filter.level && e.level !== filter.level)
93
+ return false;
94
+ if (filter.module && e.module !== filter.module)
95
+ return false;
96
+ if (filter.traceId && e.traceId !== filter.traceId)
97
+ return false;
98
+ return true;
99
+ });
100
+ }
101
+ clear() {
102
+ this.entries.length = 0;
103
+ }
104
+ }
105
+ exports.MemoryTransport = MemoryTransport;
106
+ /** Callback transport — route logs to a custom function */
107
+ class CallbackTransport {
108
+ name;
109
+ level;
110
+ _callback;
111
+ constructor(name, callback, level) {
112
+ this.name = name;
113
+ this._callback = callback;
114
+ this.level = level ?? 'trace';
115
+ }
116
+ write(entry) {
117
+ this._callback(entry);
118
+ }
119
+ }
120
+ exports.CallbackTransport = CallbackTransport;
121
+ // ── Sensitive Data Redaction ─────────────────────────────────────────────────
122
+ const DEFAULT_REDACT_FIELDS = [
123
+ 'password', 'secret', 'token', 'key', 'auth', 'cookie',
124
+ 'authorization', 'credential', 'apikey', 'api_key', 'access_token',
125
+ 'refresh_token', 'private_key', 'session_id', 'ssn',
126
+ ];
127
+ function redactObject(obj, fields) {
128
+ const result = {};
129
+ for (const [key, value] of Object.entries(obj)) {
130
+ const lowerKey = key.toLowerCase();
131
+ if (fields.some((f) => lowerKey.includes(f))) {
132
+ result[key] = '[REDACTED]';
133
+ }
134
+ else if (value && typeof value === 'object' && !Array.isArray(value) && !(value instanceof Buffer)) {
135
+ result[key] = redactObject(value, fields);
136
+ }
137
+ else {
138
+ result[key] = value;
139
+ }
140
+ }
141
+ return result;
142
+ }
143
+ // ── Trace ID Generation ──────────────────────────────────────────────────────
144
+ let _traceCounter = 0;
145
+ function generateTraceId() {
146
+ return `trc_${Date.now().toString(36)}_${(++_traceCounter).toString(36)}`;
147
+ }
148
+ let _spanCounter = 0;
149
+ function generateSpanId() {
150
+ return `spn_${Date.now().toString(36)}_${(++_spanCounter).toString(36)}`;
151
+ }
152
+ // ── Logger Core ──────────────────────────────────────────────────────────────
153
+ let _globalLevel = 'info';
154
+ let _transports = [new ConsoleTransport()];
155
+ let _defaultModule;
156
+ let _emitEvents = true;
157
+ let _defaultTags = [];
158
+ let _redactSensitive = true;
159
+ let _redactFields = DEFAULT_REDACT_FIELDS;
160
+ let _contextTraceId;
161
+ let _contextSpanId;
162
+ function shouldLog(level) {
163
+ return LOG_LEVEL_PRIORITY[level] >= LOG_LEVEL_PRIORITY[_globalLevel];
164
+ }
165
+ function writeEntry(entry) {
166
+ // Redact sensitive data
167
+ if (_redactSensitive && entry.data) {
168
+ entry.data = redactObject(entry.data, _redactFields);
169
+ }
170
+ // Add default tags
171
+ if (_defaultTags.length > 0) {
172
+ entry.tags = [..._defaultTags, ...(entry.tags ?? [])];
173
+ }
174
+ // Add context trace/span
175
+ if (!entry.traceId && _contextTraceId)
176
+ entry.traceId = _contextTraceId;
177
+ if (!entry.spanId && _contextSpanId)
178
+ entry.spanId = _contextSpanId;
179
+ // Write to transports
180
+ for (const transport of _transports) {
181
+ if (LOG_LEVEL_PRIORITY[entry.level] >= LOG_LEVEL_PRIORITY[transport.level]) {
182
+ try {
183
+ transport.write(entry);
184
+ }
185
+ catch {
186
+ // Don't let transport errors crash the application
187
+ }
188
+ }
189
+ }
190
+ // Emit event
191
+ if (_emitEvents) {
192
+ events_1.events.emit(`log.${entry.level}`, 'system', {
193
+ message: entry.message,
194
+ module: entry.module,
195
+ level: entry.level,
196
+ }, { source: 'logger' });
197
+ }
198
+ }
199
+ function createEntry(level, message, data, extra) {
200
+ return {
201
+ timestamp: new Date().toISOString(),
202
+ level,
203
+ message,
204
+ module: extra?.module ?? _defaultModule,
205
+ data,
206
+ durationMs: extra?.durationMs,
207
+ error: extra?.error,
208
+ traceId: extra?.traceId,
209
+ spanId: extra?.spanId,
210
+ parentSpanId: extra?.parentSpanId,
211
+ tags: extra?.tags,
212
+ };
213
+ }
214
+ // ── Public API ───────────────────────────────────────────────────────────────
215
+ exports.logger = {
216
+ // ── Configuration ──────────────────────────────────────────────────────
217
+ configure(options) {
218
+ if (options.level)
219
+ _globalLevel = options.level;
220
+ if (options.module)
221
+ _defaultModule = options.module;
222
+ if (options.transports)
223
+ _transports = options.transports;
224
+ if (options.emitEvents !== undefined)
225
+ _emitEvents = options.emitEvents;
226
+ if (options.defaultTags)
227
+ _defaultTags = options.defaultTags;
228
+ if (options.redactSensitive !== undefined)
229
+ _redactSensitive = options.redactSensitive;
230
+ if (options.redactFields)
231
+ _redactFields = options.redactFields;
232
+ },
233
+ /** Get current log level */
234
+ getLevel() {
235
+ return _globalLevel;
236
+ },
237
+ /** Set log level at runtime */
238
+ setLevel(level) {
239
+ _globalLevel = level;
240
+ },
241
+ /** Add a transport */
242
+ addTransport(transport) {
243
+ _transports.push(transport);
244
+ },
245
+ /** Remove a transport by name */
246
+ removeTransport(name) {
247
+ _transports = _transports.filter((t) => t.name !== name);
248
+ },
249
+ /** Get all transports */
250
+ getTransports() {
251
+ return [..._transports];
252
+ },
253
+ // ── Log Methods ────────────────────────────────────────────────────────
254
+ trace(message, data, extra) {
255
+ if (shouldLog('trace'))
256
+ writeEntry(createEntry('trace', message, data, extra));
257
+ },
258
+ debug(message, data, extra) {
259
+ if (shouldLog('debug'))
260
+ writeEntry(createEntry('debug', message, data, extra));
261
+ },
262
+ info(message, data, extra) {
263
+ if (shouldLog('info'))
264
+ writeEntry(createEntry('info', message, data, extra));
265
+ },
266
+ warn(message, data, extra) {
267
+ if (shouldLog('warn'))
268
+ writeEntry(createEntry('warn', message, data, extra));
269
+ },
270
+ error(message, error, data, extra) {
271
+ if (!shouldLog('error'))
272
+ return;
273
+ const entry = createEntry('error', message, data, extra);
274
+ if (error instanceof Error) {
275
+ entry.error = {
276
+ name: error.name,
277
+ message: error.message,
278
+ stack: error.stack,
279
+ code: error.code,
280
+ };
281
+ }
282
+ else if (error) {
283
+ entry.error = { name: 'Error', message: String(error) };
284
+ }
285
+ writeEntry(entry);
286
+ },
287
+ fatal(message, error, data) {
288
+ if (!shouldLog('fatal'))
289
+ return;
290
+ const entry = createEntry('fatal', message, data);
291
+ if (error instanceof Error) {
292
+ entry.error = {
293
+ name: error.name,
294
+ message: error.message,
295
+ stack: error.stack,
296
+ code: error.code,
297
+ };
298
+ }
299
+ else if (error) {
300
+ entry.error = { name: 'Error', message: String(error) };
301
+ }
302
+ writeEntry(entry);
303
+ },
304
+ // ── Performance Timing ─────────────────────────────────────────────────
305
+ /**
306
+ * Time a synchronous operation and log its duration.
307
+ *
308
+ * @example
309
+ * ```ts
310
+ * const result = logger.time('screen.capture', 'screen', () => screen.capture());
311
+ * ```
312
+ */
313
+ time(operation, module, fn, data) {
314
+ const start = performance.now();
315
+ try {
316
+ const result = fn();
317
+ const durationMs = performance.now() - start;
318
+ exports.logger.debug(`${operation} completed`, { ...data, operation }, { module, durationMs });
319
+ return result;
320
+ }
321
+ catch (err) {
322
+ const durationMs = performance.now() - start;
323
+ exports.logger.error(`${operation} failed`, err, { ...data, operation }, { module, durationMs });
324
+ throw err;
325
+ }
326
+ },
327
+ /**
328
+ * Time an async operation and log its duration.
329
+ */
330
+ async timeAsync(operation, module, fn, data) {
331
+ const start = performance.now();
332
+ try {
333
+ const result = await fn();
334
+ const durationMs = performance.now() - start;
335
+ exports.logger.debug(`${operation} completed`, { ...data, operation }, { module, durationMs });
336
+ return result;
337
+ }
338
+ catch (err) {
339
+ const durationMs = performance.now() - start;
340
+ exports.logger.error(`${operation} failed`, err, { ...data, operation }, { module, durationMs });
341
+ throw err;
342
+ }
343
+ },
344
+ // ── Trace Context ──────────────────────────────────────────────────────
345
+ /**
346
+ * Create a new trace context for correlating related operations.
347
+ *
348
+ * @example
349
+ * ```ts
350
+ * const trace = logger.startTrace('user-login-flow');
351
+ * logger.info('Starting login', {}, { traceId: trace.traceId });
352
+ * const span = trace.startSpan('validate-credentials');
353
+ * // ... do work ...
354
+ * span.end();
355
+ * trace.end();
356
+ * ```
357
+ */
358
+ startTrace(name) {
359
+ return new TraceContext(name);
360
+ },
361
+ /**
362
+ * Set a global trace context (all subsequent logs will include it).
363
+ */
364
+ setContext(traceId, spanId) {
365
+ _contextTraceId = traceId;
366
+ _contextSpanId = spanId;
367
+ },
368
+ /** Clear the global trace context */
369
+ clearContext() {
370
+ _contextTraceId = undefined;
371
+ _contextSpanId = undefined;
372
+ },
373
+ // ── Child Logger ───────────────────────────────────────────────────────
374
+ /**
375
+ * Create a child logger with a fixed module name and optional default data.
376
+ *
377
+ * @example
378
+ * ```ts
379
+ * const log = logger.child('mouse');
380
+ * log.info('Moving to position', { x: 100, y: 200 });
381
+ * // → [INFO] [mouse] Moving to position { x: 100, y: 200 }
382
+ * ```
383
+ */
384
+ child(module, defaultData) {
385
+ return new ChildLogger(module, defaultData);
386
+ },
387
+ // ── Flush & Reset ─────────────────────────────────────────────────────
388
+ /** Flush all transports */
389
+ async flush() {
390
+ for (const transport of _transports) {
391
+ if (transport.flush)
392
+ await transport.flush();
393
+ }
394
+ },
395
+ /** Close all transports */
396
+ async close() {
397
+ for (const transport of _transports) {
398
+ if (transport.close)
399
+ await transport.close();
400
+ }
401
+ },
402
+ /** Reset logger to defaults */
403
+ reset() {
404
+ _globalLevel = 'info';
405
+ _transports = [new ConsoleTransport()];
406
+ _defaultModule = undefined;
407
+ _emitEvents = true;
408
+ _defaultTags = [];
409
+ _redactSensitive = true;
410
+ _redactFields = DEFAULT_REDACT_FIELDS;
411
+ _contextTraceId = undefined;
412
+ _contextSpanId = undefined;
413
+ },
414
+ };
415
+ // ── Trace Context Class ──────────────────────────────────────────────────────
416
+ class TraceContext {
417
+ traceId;
418
+ name;
419
+ _startTime;
420
+ _spans = [];
421
+ _ended = false;
422
+ constructor(name) {
423
+ this.name = name;
424
+ this.traceId = generateTraceId();
425
+ this._startTime = performance.now();
426
+ exports.logger.debug(`Trace started: ${name}`, undefined, { traceId: this.traceId });
427
+ }
428
+ startSpan(name) {
429
+ const span = new SpanContext(name, this.traceId);
430
+ this._spans.push(span);
431
+ return span;
432
+ }
433
+ end() {
434
+ if (this._ended)
435
+ return;
436
+ this._ended = true;
437
+ const durationMs = performance.now() - this._startTime;
438
+ exports.logger.debug(`Trace ended: ${this.name}`, {
439
+ spans: this._spans.length,
440
+ }, { traceId: this.traceId, durationMs });
441
+ }
442
+ }
443
+ exports.TraceContext = TraceContext;
444
+ class SpanContext {
445
+ spanId;
446
+ name;
447
+ traceId;
448
+ _startTime;
449
+ _ended = false;
450
+ constructor(name, traceId, parentSpanId) {
451
+ this.name = name;
452
+ this.traceId = traceId;
453
+ this.spanId = generateSpanId();
454
+ this._startTime = performance.now();
455
+ exports.logger.trace(`Span started: ${name}`, undefined, {
456
+ traceId,
457
+ spanId: this.spanId,
458
+ parentSpanId,
459
+ });
460
+ }
461
+ end(data) {
462
+ if (this._ended)
463
+ return;
464
+ this._ended = true;
465
+ const durationMs = performance.now() - this._startTime;
466
+ exports.logger.trace(`Span ended: ${this.name}`, data, {
467
+ traceId: this.traceId,
468
+ spanId: this.spanId,
469
+ durationMs,
470
+ });
471
+ }
472
+ child(name) {
473
+ return new SpanContext(name, this.traceId, this.spanId);
474
+ }
475
+ }
476
+ exports.SpanContext = SpanContext;
477
+ // ── Child Logger ─────────────────────────────────────────────────────────────
478
+ class ChildLogger {
479
+ _module;
480
+ _defaultData;
481
+ constructor(_module, _defaultData) {
482
+ this._module = _module;
483
+ this._defaultData = _defaultData;
484
+ }
485
+ _merge(data) {
486
+ if (!this._defaultData && !data)
487
+ return undefined;
488
+ return { ...this._defaultData, ...data };
489
+ }
490
+ trace(message, data) {
491
+ exports.logger.trace(message, this._merge(data), { module: this._module });
492
+ }
493
+ debug(message, data) {
494
+ exports.logger.debug(message, this._merge(data), { module: this._module });
495
+ }
496
+ info(message, data) {
497
+ exports.logger.info(message, this._merge(data), { module: this._module });
498
+ }
499
+ warn(message, data) {
500
+ exports.logger.warn(message, this._merge(data), { module: this._module });
501
+ }
502
+ error(message, error, data) {
503
+ exports.logger.error(message, error, this._merge(data), { module: this._module });
504
+ }
505
+ fatal(message, error, data) {
506
+ exports.logger.fatal(message, error, this._merge(data));
507
+ }
508
+ time(operation, fn, data) {
509
+ return exports.logger.time(operation, this._module, fn, this._merge(data));
510
+ }
511
+ async timeAsync(operation, fn, data) {
512
+ return exports.logger.timeAsync(operation, this._module, fn, this._merge(data));
513
+ }
514
+ }
515
+ exports.ChildLogger = ChildLogger;
516
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../ts/logger.ts"],"names":[],"mappings":"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"}