nightingale-logger 15.0.0 → 16.0.0

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.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,20 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [16.0.0](https://github.com/christophehurpeau/nightingale/compare/v15.0.0...v16.0.0) (2025-03-30)
7
+
8
+ ### ⚠ BREAKING CHANGES
9
+
10
+ * drop node 18
11
+
12
+ ### Features
13
+
14
+ * drop node 18 ([1b11a55](https://github.com/christophehurpeau/nightingale/commit/1b11a55dd24c9435be50519a748316079f554414))
15
+
16
+ Version bump for dependency: nightingale-levels
17
+ Version bump for dependency: nightingale-types
18
+
19
+
6
20
  ## [15.0.0](https://github.com/christophehurpeau/nightingale/compare/v14.2.1...v15.0.0) (2023-12-25)
7
21
 
8
22
 
package/README.md CHANGED
@@ -1,16 +1,16 @@
1
- <h3 align="center">
1
+ <h1 align="center">
2
2
  nightingale-logger
3
- </h3>
3
+ </h1>
4
4
 
5
5
  <p align="center">
6
6
  Logger for browser and node
7
7
  </p>
8
8
 
9
9
  <p align="center">
10
- <a href="https://npmjs.org/package/nightingale-logger"><img src="https://img.shields.io/npm/v/nightingale-logger.svg?style=flat-square"></a>
11
- <a href="https://npmjs.org/package/nightingale-logger"><img src="https://img.shields.io/npm/dw/nightingale-logger.svg?style=flat-square"></a>
12
- <a href="https://npmjs.org/package/nightingale-logger"><img src="https://img.shields.io/node/v/nightingale-logger.svg?style=flat-square"></a>
13
- <a href="https://npmjs.org/package/nightingale-logger"><img src="https://img.shields.io/npm/types/nightingale-logger.svg?style=flat-square"></a>
10
+ <a href="https://npmjs.org/package/nightingale-logger"><img src="https://img.shields.io/npm/v/nightingale-logger.svg?style=flat-square" alt="npm version"></a>
11
+ <a href="https://npmjs.org/package/nightingale-logger"><img src="https://img.shields.io/npm/dw/nightingale-logger.svg?style=flat-square" alt="npm downloads"></a>
12
+ <a href="https://npmjs.org/package/nightingale-logger"><img src="https://img.shields.io/node/v/nightingale-logger.svg?style=flat-square" alt="node version"></a>
13
+ <a href="https://npmjs.org/package/nightingale-logger"><img src="https://img.shields.io/npm/types/nightingale-logger.svg?style=flat-square" alt="types"></a>
14
14
  <a href="https://codecov.io/gh/christophehurpeau/nightingale"><img src="https://img.shields.io/codecov/c/github/christophehurpeau/nightingale/master.svg?style=flat-square"></a>
15
15
  </p>
16
16
 
@@ -33,11 +33,11 @@ npm install --save nightingale-logger
33
33
  ## Usage
34
34
 
35
35
  ```js
36
- import Logger from 'nightingale-logger';
36
+ import Logger from "nightingale-logger";
37
37
 
38
- const logger = new Logger('mylib');
38
+ const logger = new Logger("mylib");
39
39
 
40
- logger.info('This is a log');
41
- logger.warn('This is a warning !');
42
- logger.success('It works !');
40
+ logger.info("This is a log");
41
+ logger.warn("This is a warning !");
42
+ logger.success("It works !");
43
43
  ```
@@ -1,6 +1,6 @@
1
- import { Level } from 'nightingale-levels';
2
- import type { Metadata, MetadataStyles, Styles, Handler, Processor, LogRecord } from 'nightingale-types';
3
- export { Level } from 'nightingale-levels';
1
+ import { Level } from "nightingale-levels";
2
+ import type { Handler, LogRecord, Metadata, MetadataStyles, Processor, Styles } from "nightingale-types";
3
+ export { Level } from "nightingale-levels";
4
4
  export interface Options<T extends Metadata> {
5
5
  symbol?: string;
6
6
  metadataStyles?: MetadataStyles<T>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,7 @@
1
1
  import { Level } from 'nightingale-levels';
2
2
  export { Level } from 'nightingale-levels';
3
3
 
4
- /* eslint-disable max-lines */
5
-
6
- const globalOrWindow = typeof global !== 'undefined' ? global : window;
4
+ const globalOrWindow = typeof globalThis !== "undefined" ? globalThis : globalThis;
7
5
  if (!globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER) {
8
6
  globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER = () => ({
9
7
  handlers: [],
@@ -43,7 +41,7 @@ class Logger {
43
41
  constructor(key, displayName) {
44
42
  this.key = key;
45
43
  this.displayName = displayName;
46
- if (process.env.NODE_ENV !== 'production' && key.includes('.')) {
44
+ if (process.env.NODE_ENV !== "production" && key.includes(".")) {
47
45
  throw new Error(`nightingale: \`.\` in key is no longer supported, use \`:\` instead (key: ${key})`);
48
46
  }
49
47
  }
@@ -109,7 +107,7 @@ class Logger {
109
107
  */
110
108
  extendsContext(extendedContext) {
111
109
  if (this.contextObject === undefined) {
112
- throw new Error('Cannot extends context that does not exists. Use setContext(context) first.');
110
+ throw new Error("Cannot extends context that does not exists. Use setContext(context) first.");
113
111
  }
114
112
  Object.assign(this.contextObject, extendedContext);
115
113
  }
@@ -127,7 +125,7 @@ class Logger {
127
125
  if (handlers.length === 0) {
128
126
  if (record.level > Level.ERROR) {
129
127
  // eslint-disable-next-line no-console
130
- console.log('[nightingale] no logger for > error level.', {
128
+ console.log("[nightingale] no logger for > error level.", {
131
129
  key: record.key,
132
130
  message: record.message
133
131
  });
@@ -148,11 +146,11 @@ class Logger {
148
146
  log(messageOrError, metadata, level = Level.INFO, options) {
149
147
  const isMessageError = isError(messageOrError);
150
148
  const message = isMessageError ? `${messageOrError.name}: ${messageOrError.message}` : messageOrError;
151
- const extendedMetadata = isMessageError && !(metadata && Object.prototype.hasOwnProperty.call(metadata, 'error')) ? {
149
+ const extendedMetadata = isMessageError && !(metadata && Object.hasOwn(metadata, "error")) ? {
152
150
  ...metadata,
153
151
  error: messageOrError
154
152
  } : metadata;
155
- const context = extendedMetadata == null ? void 0 : extendedMetadata.context;
153
+ const context = extendedMetadata?.context;
156
154
  if (extendedMetadata) {
157
155
  delete extendedMetadata.context;
158
156
  }
@@ -275,14 +273,14 @@ class Logger {
275
273
  * Log an inspected value
276
274
  */
277
275
  inspectValue() {
278
- throw new Error('Not supported for the browser. Prefer `debugger;`');
276
+ throw new Error("Not supported for the browser. Prefer `debugger;`");
279
277
  }
280
278
 
281
279
  /**
282
280
  * Log a debugged var
283
281
  */
284
282
  inspectVar() {
285
- throw new Error('Not supported for the browser. Prefer `debugger;`');
283
+ throw new Error("Not supported for the browser. Prefer `debugger;`");
286
284
  }
287
285
 
288
286
  /**
@@ -298,8 +296,8 @@ class Logger {
298
296
  infoSuccess(message, metadata, metadataStyles) {
299
297
  this.log(message, metadata, Level.INFO, {
300
298
  metadataStyles,
301
- symbol: '',
302
- styles: ['green', 'bold']
299
+ symbol: "",
300
+ styles: ["green", "bold"]
303
301
  });
304
302
  }
305
303
 
@@ -309,8 +307,8 @@ class Logger {
309
307
  debugSuccess(message, metadata, metadataStyles) {
310
308
  this.log(message, metadata, Level.DEBUG, {
311
309
  metadataStyles,
312
- symbol: '',
313
- styles: ['green']
310
+ symbol: "",
311
+ styles: ["green"]
314
312
  });
315
313
  }
316
314
 
@@ -327,8 +325,8 @@ class Logger {
327
325
  infoFail(messageOrError, metadata, metadataStyles) {
328
326
  this.log(messageOrError, metadata, Level.INFO, {
329
327
  metadataStyles,
330
- symbol: '',
331
- styles: ['red', 'bold']
328
+ symbol: "",
329
+ styles: ["red", "bold"]
332
330
  });
333
331
  }
334
332
 
@@ -338,8 +336,8 @@ class Logger {
338
336
  debugFail(messageOrError, metadata, metadataStyles) {
339
337
  this.log(messageOrError, metadata, Level.DEBUG, {
340
338
  metadataStyles,
341
- symbol: '',
342
- styles: ['red']
339
+ symbol: "",
340
+ styles: ["red"]
343
341
  });
344
342
  }
345
343
 
@@ -372,7 +370,7 @@ class Logger {
372
370
  readableTime = `${diffTime}ms`;
373
371
  } else {
374
372
  const seconds = diffTime > 1000 ? Math.floor(diffTime / 1000) : 0;
375
- readableTime = `${seconds ? `${seconds}s and ` : ''}${diffTime - seconds * 1000}ms`;
373
+ readableTime = `${seconds ? `${seconds}s and ` : ""}${diffTime - seconds * 1000}ms`;
376
374
  }
377
375
  const extendedMetadata = {
378
376
  ...metadata,
@@ -397,8 +395,8 @@ class Logger {
397
395
  */
398
396
  infoSuccessTimeEnd(time, message, metadata, metadataStyles) {
399
397
  this.timeEnd(time, message, metadata, metadataStyles, Level.INFO, {
400
- symbol: '',
401
- styles: ['green', 'bold']
398
+ symbol: "",
399
+ styles: ["green", "bold"]
402
400
  });
403
401
  }
404
402
 
@@ -421,7 +419,7 @@ class Logger {
421
419
  ...metadata,
422
420
  functionName: fn.name
423
421
  };
424
- this.log('enter', extendedMetadata, Level.TRACE, {
422
+ this.log("enter", extendedMetadata, Level.TRACE, {
425
423
  metadataStyles
426
424
  });
427
425
  }
@@ -445,7 +443,7 @@ class Logger {
445
443
  ...metadata,
446
444
  functionName: fn.name
447
445
  };
448
- this.log('exit', extendedMetadata, Level.TRACE, {
446
+ this.log("exit", extendedMetadata, Level.TRACE, {
449
447
  metadataStyles
450
448
  });
451
449
  }
@@ -469,11 +467,11 @@ class Logger {
469
467
  wrap(fn, option1, option2, callback) {
470
468
  let metadata;
471
469
  let metadataStyles;
472
- if (typeof option1 === 'function') {
470
+ if (typeof option1 === "function") {
473
471
  callback = option1;
474
472
  } else {
475
473
  metadata = option1;
476
- if (typeof option2 === 'function') {
474
+ if (typeof option2 === "function") {
477
475
  callback = option2;
478
476
  } else {
479
477
  metadataStyles = option2;
@@ -1 +1 @@
1
- {"version":3,"file":"index-browser.es.js","sources":["../src/index.ts"],"sourcesContent":["/* eslint-disable max-lines */\nimport * as util from 'node:util';\nimport { POB_TARGET } from 'pob-babel';\nimport { Level } from 'nightingale-levels';\nimport type {\n Metadata,\n MetadataStyles,\n Styles,\n Handler,\n Processor,\n LogRecord,\n} from 'nightingale-types';\n\nexport { Level } from 'nightingale-levels';\n\nexport interface Options<T extends Metadata> {\n symbol?: string;\n metadataStyles?: MetadataStyles<T>;\n styles?: Styles;\n}\n\nexport interface ComputedConfigForKey {\n handlers: Handler[];\n processors: Processor[];\n}\n\nexport interface ExtendedFunctionNameMetadata {\n functionName: string;\n}\n\nexport interface Config {\n handler?: Handler;\n handlers?: Handler[];\n key?: string;\n keys?: string[];\n pattern?: RegExp;\n processor?: Processor;\n processors?: Processor[];\n stop?: boolean;\n}\n\ndeclare global {\n // eslint-disable-next-line vars-on-top, no-var\n var __NIGHTINGALE_CONFIG: Config[];\n // eslint-disable-next-line vars-on-top, no-var\n var __NIGHTINGALE_LOGGER_MAP_CACHE: Map<string, ComputedConfigForKey>;\n // eslint-disable-next-line vars-on-top, no-var\n var __NIGHTINGALE_CONFIG_DEFAULT: ComputedConfigForKey;\n // eslint-disable-next-line vars-on-top, no-var\n var __NIGHTINGALE_GLOBAL_HANDLERS: unknown;\n // eslint-disable-next-line vars-on-top, no-var\n var __NIGHTINGALE_GET_CONFIG_FOR_LOGGER: (\n key: string,\n ) => ComputedConfigForKey;\n // eslint-disable-next-line vars-on-top, no-var\n var __NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD: (\n key: string,\n level: number,\n ) => ComputedConfigForKey;\n}\n\nconst globalOrWindow: typeof global =\n typeof global !== 'undefined' ? global : (window as typeof global);\n\nif (!globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER) {\n globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER =\n (): ComputedConfigForKey => ({\n handlers: [],\n processors: [],\n });\n}\n\nif (!globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD) {\n globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD = (\n key: string,\n level: Level,\n ): ComputedConfigForKey => {\n const { handlers, processors }: ComputedConfigForKey =\n globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER(key);\n\n return {\n handlers: handlers.filter(\n (handler) =>\n level >= handler.minLevel &&\n (!handler.isHandling || handler.isHandling(level, key)),\n ),\n processors,\n };\n };\n}\n\nfunction getConfigForLoggerRecord(\n key: string,\n recordLevel: Level,\n): ComputedConfigForKey {\n return globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD(\n key,\n recordLevel,\n );\n}\n\nfunction isError(messageOrError: Error | string): messageOrError is Error {\n return messageOrError instanceof Error;\n}\n\n/**\n * Interface that allows you to log records.\n * This records are treated by handlers\n */\nexport class Logger {\n private contextObject?: Record<string, unknown>;\n\n readonly key: string;\n\n readonly displayName?: string;\n\n /**\n * Create a new Logger\n *\n * @param {string} key\n * @param {string} [displayName]\n */\n constructor(key: string, displayName?: string) {\n this.key = key;\n this.displayName = displayName;\n\n if (process.env.NODE_ENV !== 'production' && key.includes('.')) {\n throw new Error(\n `nightingale: \\`.\\` in key is no longer supported, use \\`:\\` instead (key: ${key})`,\n );\n }\n }\n\n /** @private */\n protected getHandlersAndProcessors(\n recordLevel: number,\n ): ComputedConfigForKey {\n return getConfigForLoggerRecord(this.key, recordLevel);\n }\n\n /** @private */\n getConfig(): Readonly<ComputedConfigForKey> {\n return globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER(this.key);\n }\n\n /**\n * Create a child logger\n */\n child(childSuffixKey: string, childDisplayName?: string): Logger {\n return new Logger(`${this.key}:${childSuffixKey}`, childDisplayName);\n }\n\n /**\n * Create a new Logger with the same key a this attached context\n *\n * @example\n * ```typescript\n * const loggerMyService = new Logger('app:myService');\n * function someAction(arg1) {\n * const logger = loggerMyService.context({ arg1 });\n * logger.enter(someAction);\n * // do stuff\n * logger.info('info');\n * // do stuff\n * logger.exit(someAction);\n * }\n * ```\n *\n */\n context(context: Record<string, unknown>): Logger {\n const logger = new Logger(this.key);\n logger.setContext(context);\n return logger;\n }\n\n /**\n * Get the context of this logger\n */\n getContextObject(): Readonly<Record<string, unknown>> | undefined {\n return this.contextObject;\n }\n\n /**\n * Set the context of this logger\n *\n * @param {Object} context\n */\n setContext(context: Record<string, unknown>): void {\n this.contextObject = context;\n }\n\n /**\n * Extends existing context of this logger\n */\n extendsContext(extendedContext: Record<string, unknown>): void {\n if (this.contextObject === undefined) {\n throw new Error(\n 'Cannot extends context that does not exists. Use setContext(context) first.',\n );\n }\n Object.assign(this.contextObject, extendedContext);\n }\n\n /**\n * Handle a record\n *\n * Use this only if you know what you are doing.\n */\n addRecord<T extends Metadata>(record: Readonly<LogRecord<T>>): void {\n const { handlers, processors } = this.getHandlersAndProcessors(\n record.level,\n );\n\n if (handlers.length === 0) {\n if (record.level > Level.ERROR) {\n // eslint-disable-next-line no-console\n console.log('[nightingale] no logger for > error level.', {\n key: record.key,\n message: record.message,\n });\n }\n return;\n }\n\n if (processors) {\n processors.forEach((process) => {\n process(record, record.context);\n });\n }\n\n handlers.some((handler) => handler.handle(record) === false);\n }\n\n /**\n * Log a message\n */\n log<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n level: Level = Level.INFO,\n options?: Options<T>,\n ): void {\n const isMessageError = isError(messageOrError);\n\n const message = isMessageError\n ? `${messageOrError.name}: ${messageOrError.message}`\n : messageOrError;\n\n const extendedMetadata =\n isMessageError &&\n !(metadata && Object.prototype.hasOwnProperty.call(metadata, 'error'))\n ? { ...metadata, error: messageOrError }\n : metadata;\n\n const context = extendedMetadata?.context;\n if (extendedMetadata) {\n delete extendedMetadata.context;\n }\n\n const record: LogRecord<NonNullable<typeof extendedMetadata>> = {\n level,\n key: this.key,\n displayName: this.displayName,\n datetime: new Date(),\n message,\n context: context || this.contextObject,\n metadata: extendedMetadata as NonNullable<typeof extendedMetadata>,\n extra: {},\n ...options,\n };\n this.addRecord(record);\n }\n\n /**\n * Log a trace message\n */\n trace<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.TRACE, { metadataStyles });\n }\n\n /**\n * Log a debug message\n */\n debug<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.DEBUG, { metadataStyles });\n }\n\n /**\n * Notice an info message\n */\n notice<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.NOTICE, { metadataStyles });\n }\n\n /**\n * Log an info message\n */\n info<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.INFO, { metadataStyles });\n }\n\n /**\n * Log a warn message\n */\n warn<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.WARN, { metadataStyles });\n }\n\n /**\n * Log an error message\n *\n * @example\n * ```typescript\n * const logger = new Logger('something');\n * try {\n * throw new Error('Always throws here');\n * } catch (error) {\n * logger.error('caught error', { error });\n * }\n * ```\n */\n error<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.ERROR, { metadataStyles });\n }\n\n /**\n * Log an critical message\n */\n critical<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.CRITICAL, { metadataStyles });\n }\n\n /**\n * Log a fatal message\n *\n * @example\n * ```typescript\n * const logger = new Logger('something');\n * try {\n * throw new Error('Always throws here');\n * } catch (error) {\n * logger.error('caught error', { error });\n * process.exit(1);\n * }\n */\n fatal<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.FATAL, { metadataStyles });\n }\n\n /**\n * Log an alert message\n */\n alert<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.ALERT, { metadataStyles });\n }\n\n /**\n * Log an inspected value\n */\n inspectValue<T extends Metadata>(\n value: unknown,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n if (POB_TARGET === 'browser') {\n throw new Error('Not supported for the browser. Prefer `debugger;`');\n } else {\n // Note: inspect is a special function for node:\n // https://github.com/nodejs/node/blob/a1bda1b4deb08dfb3e06cb778f0db40023b18318/lib/util.js#L210\n const inspectedValue = util.inspect(value, { depth: 6 });\n this.log(inspectedValue, metadata, Level.DEBUG, {\n metadataStyles,\n styles: ['gray'],\n });\n }\n }\n\n /**\n * Log a debugged var\n */\n inspectVar<T extends Metadata>(\n varName: string,\n varValue: unknown,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n if (POB_TARGET === 'browser') {\n throw new Error('Not supported for the browser. Prefer `debugger;`');\n } else {\n const inspectedValue = util.inspect(varValue, { depth: 6 });\n this.log(`${varName} = ${inspectedValue}`, metadata, Level.DEBUG, {\n metadataStyles,\n styles: ['cyan'],\n });\n }\n }\n\n /**\n * Alias for infoSuccess\n */\n success<T extends Metadata>(\n message: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.infoSuccess(message, metadata, metadataStyles);\n }\n\n /**\n * Log an info success message\n */\n infoSuccess<T extends Metadata>(\n message: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(message, metadata, Level.INFO, {\n metadataStyles,\n symbol: '✔',\n styles: ['green', 'bold'],\n });\n }\n\n /**\n * Log an debug success message\n */\n debugSuccess<T extends Metadata>(\n message: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(message, metadata, Level.DEBUG, {\n metadataStyles,\n symbol: '✔',\n styles: ['green'],\n });\n }\n\n /**\n * Alias for infoFail\n */\n fail<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.infoFail(messageOrError, metadata, metadataStyles);\n }\n\n /**\n * Log an info fail message\n */\n infoFail<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.INFO, {\n metadataStyles,\n symbol: '✖',\n styles: ['red', 'bold'],\n });\n }\n\n /**\n * Log an debug fail message\n */\n debugFail<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.DEBUG, {\n metadataStyles,\n symbol: '✖',\n styles: ['red'],\n });\n }\n\n /**\n * @returns {number} time to pass to timeEnd\n */\n time<T extends Metadata>(\n message?: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n level: number = Level.DEBUG,\n ): number {\n if (message) {\n this.log(message, metadata, level, { metadataStyles });\n }\n\n return Date.now();\n }\n\n infoTime<T extends Metadata>(\n message?: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): number {\n return this.time(message, metadata, metadataStyles, Level.INFO);\n }\n\n /**\n * Finds difference between when this method\n * was called and when the respective time method\n * was called, then logs out the difference\n * and deletes the original record\n */\n timeEnd<T extends Metadata>(\n startTime: number,\n message: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n level: number = Level.DEBUG,\n options?: Options<T>,\n ): void {\n const now = Date.now();\n\n const diffTime = now - startTime;\n let readableTime;\n\n if (diffTime < 1000) {\n readableTime = `${diffTime}ms`;\n } else {\n const seconds = diffTime > 1000 ? Math.floor(diffTime / 1000) : 0;\n const ms = diffTime - seconds * 1000;\n readableTime = `${seconds ? `${seconds}s and ` : ''}${ms}ms`;\n }\n\n const extendedMetadata = {\n ...metadata,\n readableTime,\n timeMs: diffTime,\n };\n\n this.log(message, extendedMetadata, level, { ...options, metadataStyles });\n }\n\n /**\n * Like timeEnd, but with INFO level\n */\n infoTimeEnd<T extends Metadata>(\n time: number,\n message: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.timeEnd(time, message, metadata, metadataStyles, Level.INFO);\n }\n\n /**\n * Like timeEnd, but with INFO level\n */\n infoSuccessTimeEnd<T extends Metadata>(\n time: number,\n message: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.timeEnd(time, message, metadata, metadataStyles, Level.INFO, {\n symbol: '✔',\n styles: ['green', 'bold'],\n });\n }\n\n /**\n * Log an enter in a function\n *\n * @example\n * ```typescript\n * class A {\n * method(arg1) {\n * logger.enter(method, { arg1 });\n * // Do your stuff\n * }\n * }\n * ```\n *\n */\n enter<T extends Metadata, Fn extends (...args: unknown[]) => unknown>(\n fn: Fn,\n metadata?: T,\n metadataStyles?: MetadataStyles<ExtendedFunctionNameMetadata & T>,\n ): void {\n const extendedMetadata = {\n ...metadata,\n functionName: fn.name,\n };\n this.log('enter', extendedMetadata, Level.TRACE, { metadataStyles });\n }\n\n /**\n * Log an exit in a function\n *\n * @example\n * ```typescript\n * const logger = new Logger('myNamespace:A');\n * class A {\n * method(arg1) {\n * // Do your stuff\n * logger.exit(method, { arg1 });\n * }\n * }\n * ```\n */\n exit<T extends Metadata, Fn extends (...args: unknown[]) => unknown>(\n fn: Fn,\n metadata?: T,\n metadataStyles?: MetadataStyles<ExtendedFunctionNameMetadata & T>,\n ): void {\n const extendedMetadata = {\n ...metadata,\n functionName: fn.name,\n };\n this.log('exit', extendedMetadata, Level.TRACE, { metadataStyles });\n }\n\n /**\n * Wrap around a function to log enter and exit of a function\n *\n * @example\n * ```typescript\n * const logger = new Logger('myNamespace:A');\n * class A {\n * method() {\n * logger.wrap(method, () => {\n * // Do your stuff\n * });\n * }\n * }\n * ```\n */\n wrap<Fn extends (...args: unknown[]) => unknown>(\n fn: Fn,\n callback: () => void,\n ): void;\n\n wrap<T extends Metadata, Fn extends (...args: unknown[]) => unknown>(\n fn: Fn,\n metadata: T,\n callback: () => void,\n ): void;\n\n wrap<T extends Metadata, Fn extends (...args: unknown[]) => unknown>(\n fn: Fn,\n metadata: T,\n metadataStyles: MetadataStyles<T>,\n callback: () => void,\n ): void;\n\n wrap<T extends Metadata, Fn extends (...args: unknown[]) => unknown>(\n fn: Fn,\n option1: T | (() => void),\n option2?: MetadataStyles<T> | (() => void),\n callback?: () => void,\n ): void {\n let metadata: T | undefined;\n let metadataStyles: MetadataStyles<T> | undefined;\n\n if (typeof option1 === 'function') {\n callback = option1;\n } else {\n metadata = option1;\n\n if (typeof option2 === 'function') {\n callback = option2;\n } else {\n metadataStyles = option2;\n }\n }\n\n this.enter(fn, metadata, metadataStyles);\n (callback as () => void)();\n this.exit(fn);\n }\n}\n"],"names":["globalOrWindow","global","window","__NIGHTINGALE_GET_CONFIG_FOR_LOGGER","handlers","processors","__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD","key","level","filter","handler","minLevel","isHandling","getConfigForLoggerRecord","recordLevel","isError","messageOrError","Error","Logger","constructor","displayName","process","env","NODE_ENV","includes","getHandlersAndProcessors","getConfig","child","childSuffixKey","childDisplayName","context","logger","setContext","getContextObject","contextObject","extendsContext","extendedContext","undefined","Object","assign","addRecord","record","length","Level","ERROR","console","log","message","forEach","some","handle","metadata","INFO","options","isMessageError","name","extendedMetadata","prototype","hasOwnProperty","call","error","datetime","Date","extra","trace","metadataStyles","TRACE","debug","DEBUG","notice","NOTICE","info","warn","WARN","critical","CRITICAL","fatal","FATAL","alert","ALERT","inspectValue","inspectVar","success","infoSuccess","symbol","styles","debugSuccess","fail","infoFail","debugFail","time","now","infoTime","timeEnd","startTime","diffTime","readableTime","seconds","Math","floor","timeMs","infoTimeEnd","infoSuccessTimeEnd","enter","fn","functionName","exit","wrap","option1","option2","callback"],"mappings":"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"}
1
+ {"version":3,"file":"index-browser.es.js","sources":["../src/index.ts"],"sourcesContent":["import * as util from \"node:util\";\nimport { Level } from \"nightingale-levels\";\nimport type {\n Handler,\n LogRecord,\n Metadata,\n MetadataStyles,\n Processor,\n Styles,\n} from \"nightingale-types\";\nimport { POB_TARGET } from \"pob-babel\";\n\nexport { Level } from \"nightingale-levels\";\n\nexport interface Options<T extends Metadata> {\n symbol?: string;\n metadataStyles?: MetadataStyles<T>;\n styles?: Styles;\n}\n\nexport interface ComputedConfigForKey {\n handlers: Handler[];\n processors: Processor[];\n}\n\nexport interface ExtendedFunctionNameMetadata {\n functionName: string;\n}\n\nexport interface Config {\n handler?: Handler;\n handlers?: Handler[];\n key?: string;\n keys?: string[];\n pattern?: RegExp;\n processor?: Processor;\n processors?: Processor[];\n stop?: boolean;\n}\n\ndeclare global {\n // eslint-disable-next-line no-var\n var __NIGHTINGALE_CONFIG: Config[];\n // eslint-disable-next-line no-var\n var __NIGHTINGALE_LOGGER_MAP_CACHE: Map<string, ComputedConfigForKey>;\n // eslint-disable-next-line no-var\n var __NIGHTINGALE_CONFIG_DEFAULT: ComputedConfigForKey;\n // eslint-disable-next-line no-var\n var __NIGHTINGALE_GLOBAL_HANDLERS: unknown;\n // eslint-disable-next-line no-var\n var __NIGHTINGALE_GET_CONFIG_FOR_LOGGER: (\n key: string,\n ) => ComputedConfigForKey;\n // eslint-disable-next-line no-var\n var __NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD: (\n key: string,\n level: number,\n ) => ComputedConfigForKey;\n}\n\nconst globalOrWindow: typeof globalThis =\n typeof globalThis !== \"undefined\" ? globalThis : globalThis;\n\nif (!globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER) {\n globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER =\n (): ComputedConfigForKey => ({\n handlers: [],\n processors: [],\n });\n}\n\nif (!globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD) {\n globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD = (\n key: string,\n level: Level,\n ): ComputedConfigForKey => {\n const { handlers, processors }: ComputedConfigForKey =\n globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER(key);\n\n return {\n handlers: handlers.filter(\n (handler) =>\n level >= handler.minLevel &&\n (!handler.isHandling || handler.isHandling(level, key)),\n ),\n processors,\n };\n };\n}\n\nfunction getConfigForLoggerRecord(\n key: string,\n recordLevel: Level,\n): ComputedConfigForKey {\n return globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD(\n key,\n recordLevel,\n );\n}\n\nfunction isError(messageOrError: Error | string): messageOrError is Error {\n return messageOrError instanceof Error;\n}\n\n/**\n * Interface that allows you to log records.\n * This records are treated by handlers\n */\nexport class Logger {\n private contextObject?: Record<string, unknown>;\n\n readonly key: string;\n\n readonly displayName?: string;\n\n /**\n * Create a new Logger\n *\n * @param {string} key\n * @param {string} [displayName]\n */\n constructor(key: string, displayName?: string) {\n this.key = key;\n this.displayName = displayName;\n\n if (process.env.NODE_ENV !== \"production\" && key.includes(\".\")) {\n throw new Error(\n `nightingale: \\`.\\` in key is no longer supported, use \\`:\\` instead (key: ${key})`,\n );\n }\n }\n\n /** @private */\n protected getHandlersAndProcessors(\n recordLevel: number,\n ): ComputedConfigForKey {\n return getConfigForLoggerRecord(this.key, recordLevel);\n }\n\n /** @private */\n getConfig(): Readonly<ComputedConfigForKey> {\n return globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER(this.key);\n }\n\n /**\n * Create a child logger\n */\n child(childSuffixKey: string, childDisplayName?: string): Logger {\n return new Logger(`${this.key}:${childSuffixKey}`, childDisplayName);\n }\n\n /**\n * Create a new Logger with the same key a this attached context\n *\n * @example\n * ```typescript\n * const loggerMyService = new Logger('app:myService');\n * function someAction(arg1) {\n * const logger = loggerMyService.context({ arg1 });\n * logger.enter(someAction);\n * // do stuff\n * logger.info('info');\n * // do stuff\n * logger.exit(someAction);\n * }\n * ```\n *\n */\n context(context: Record<string, unknown>): Logger {\n const logger = new Logger(this.key);\n logger.setContext(context);\n return logger;\n }\n\n /**\n * Get the context of this logger\n */\n getContextObject(): Readonly<Record<string, unknown>> | undefined {\n return this.contextObject;\n }\n\n /**\n * Set the context of this logger\n *\n * @param {Object} context\n */\n setContext(context: Record<string, unknown>): void {\n this.contextObject = context;\n }\n\n /**\n * Extends existing context of this logger\n */\n extendsContext(extendedContext: Record<string, unknown>): void {\n if (this.contextObject === undefined) {\n throw new Error(\n \"Cannot extends context that does not exists. Use setContext(context) first.\",\n );\n }\n Object.assign(this.contextObject, extendedContext);\n }\n\n /**\n * Handle a record\n *\n * Use this only if you know what you are doing.\n */\n addRecord<T extends Metadata>(record: Readonly<LogRecord<T>>): void {\n const { handlers, processors } = this.getHandlersAndProcessors(\n record.level,\n );\n\n if (handlers.length === 0) {\n if (record.level > Level.ERROR) {\n // eslint-disable-next-line no-console\n console.log(\"[nightingale] no logger for > error level.\", {\n key: record.key,\n message: record.message,\n });\n }\n return;\n }\n\n if (processors) {\n processors.forEach((process) => {\n process(record, record.context);\n });\n }\n\n handlers.some((handler) => handler.handle(record) === false);\n }\n\n /**\n * Log a message\n */\n log<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n level: Level = Level.INFO,\n options?: Options<T>,\n ): void {\n const isMessageError = isError(messageOrError);\n\n const message = isMessageError\n ? `${messageOrError.name}: ${messageOrError.message}`\n : messageOrError;\n\n const extendedMetadata =\n isMessageError && !(metadata && Object.hasOwn(metadata, \"error\"))\n ? { ...metadata, error: messageOrError }\n : metadata;\n\n const context = extendedMetadata?.context;\n if (extendedMetadata) {\n delete extendedMetadata.context;\n }\n\n const record: LogRecord<NonNullable<typeof extendedMetadata>> = {\n level,\n key: this.key,\n displayName: this.displayName,\n datetime: new Date(),\n message,\n context: context || this.contextObject,\n metadata: extendedMetadata as NonNullable<typeof extendedMetadata>,\n extra: {},\n ...options,\n };\n this.addRecord(record);\n }\n\n /**\n * Log a trace message\n */\n trace<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.TRACE, { metadataStyles });\n }\n\n /**\n * Log a debug message\n */\n debug<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.DEBUG, { metadataStyles });\n }\n\n /**\n * Notice an info message\n */\n notice<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.NOTICE, { metadataStyles });\n }\n\n /**\n * Log an info message\n */\n info<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.INFO, { metadataStyles });\n }\n\n /**\n * Log a warn message\n */\n warn<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.WARN, { metadataStyles });\n }\n\n /**\n * Log an error message\n *\n * @example\n * ```typescript\n * const logger = new Logger('something');\n * try {\n * throw new Error('Always throws here');\n * } catch (error) {\n * logger.error('caught error', { error });\n * }\n * ```\n */\n error<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.ERROR, { metadataStyles });\n }\n\n /**\n * Log an critical message\n */\n critical<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.CRITICAL, { metadataStyles });\n }\n\n /**\n * Log a fatal message\n *\n * @example\n * ```typescript\n * const logger = new Logger('something');\n * try {\n * throw new Error('Always throws here');\n * } catch (error) {\n * logger.error('caught error', { error });\n * process.exit(1);\n * }\n */\n fatal<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.FATAL, { metadataStyles });\n }\n\n /**\n * Log an alert message\n */\n alert<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.ALERT, { metadataStyles });\n }\n\n /**\n * Log an inspected value\n */\n inspectValue<T extends Metadata>(\n value: unknown,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n if (POB_TARGET === \"browser\") {\n throw new Error(\"Not supported for the browser. Prefer `debugger;`\");\n } else {\n // Note: inspect is a special function for node:\n // https://github.com/nodejs/node/blob/a1bda1b4deb08dfb3e06cb778f0db40023b18318/lib/util.js#L210\n const inspectedValue = util.inspect(value, { depth: 6 });\n this.log(inspectedValue, metadata, Level.DEBUG, {\n metadataStyles,\n styles: [\"gray\"],\n });\n }\n }\n\n /**\n * Log a debugged var\n */\n inspectVar<T extends Metadata>(\n varName: string,\n varValue: unknown,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n if (POB_TARGET === \"browser\") {\n throw new Error(\"Not supported for the browser. Prefer `debugger;`\");\n } else {\n const inspectedValue = util.inspect(varValue, { depth: 6 });\n this.log(`${varName} = ${inspectedValue}`, metadata, Level.DEBUG, {\n metadataStyles,\n styles: [\"cyan\"],\n });\n }\n }\n\n /**\n * Alias for infoSuccess\n */\n success<T extends Metadata>(\n message: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.infoSuccess(message, metadata, metadataStyles);\n }\n\n /**\n * Log an info success message\n */\n infoSuccess<T extends Metadata>(\n message: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(message, metadata, Level.INFO, {\n metadataStyles,\n symbol: \"✔\",\n styles: [\"green\", \"bold\"],\n });\n }\n\n /**\n * Log an debug success message\n */\n debugSuccess<T extends Metadata>(\n message: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(message, metadata, Level.DEBUG, {\n metadataStyles,\n symbol: \"✔\",\n styles: [\"green\"],\n });\n }\n\n /**\n * Alias for infoFail\n */\n fail<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.infoFail(messageOrError, metadata, metadataStyles);\n }\n\n /**\n * Log an info fail message\n */\n infoFail<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.INFO, {\n metadataStyles,\n symbol: \"✖\",\n styles: [\"red\", \"bold\"],\n });\n }\n\n /**\n * Log an debug fail message\n */\n debugFail<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.DEBUG, {\n metadataStyles,\n symbol: \"✖\",\n styles: [\"red\"],\n });\n }\n\n /**\n * @returns {number} time to pass to timeEnd\n */\n time<T extends Metadata>(\n message?: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n level: number = Level.DEBUG,\n ): number {\n if (message) {\n this.log(message, metadata, level, { metadataStyles });\n }\n\n return Date.now();\n }\n\n infoTime<T extends Metadata>(\n message?: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): number {\n return this.time(message, metadata, metadataStyles, Level.INFO);\n }\n\n /**\n * Finds difference between when this method\n * was called and when the respective time method\n * was called, then logs out the difference\n * and deletes the original record\n */\n timeEnd<T extends Metadata>(\n startTime: number,\n message: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n level: number = Level.DEBUG,\n options?: Options<T>,\n ): void {\n const now = Date.now();\n\n const diffTime = now - startTime;\n let readableTime;\n\n if (diffTime < 1000) {\n readableTime = `${diffTime}ms`;\n } else {\n const seconds = diffTime > 1000 ? Math.floor(diffTime / 1000) : 0;\n const ms = diffTime - seconds * 1000;\n readableTime = `${seconds ? `${seconds}s and ` : \"\"}${ms}ms`;\n }\n\n const extendedMetadata = {\n ...metadata,\n readableTime,\n timeMs: diffTime,\n };\n\n this.log(message, extendedMetadata, level, { ...options, metadataStyles });\n }\n\n /**\n * Like timeEnd, but with INFO level\n */\n infoTimeEnd<T extends Metadata>(\n time: number,\n message: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.timeEnd(time, message, metadata, metadataStyles, Level.INFO);\n }\n\n /**\n * Like timeEnd, but with INFO level\n */\n infoSuccessTimeEnd<T extends Metadata>(\n time: number,\n message: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.timeEnd(time, message, metadata, metadataStyles, Level.INFO, {\n symbol: \"✔\",\n styles: [\"green\", \"bold\"],\n });\n }\n\n /**\n * Log an enter in a function\n *\n * @example\n * ```typescript\n * class A {\n * method(arg1) {\n * logger.enter(method, { arg1 });\n * // Do your stuff\n * }\n * }\n * ```\n *\n */\n enter<T extends Metadata, Fn extends (...args: unknown[]) => unknown>(\n fn: Fn,\n metadata?: T,\n metadataStyles?: MetadataStyles<ExtendedFunctionNameMetadata & T>,\n ): void {\n const extendedMetadata = {\n ...metadata,\n functionName: fn.name,\n };\n this.log(\"enter\", extendedMetadata, Level.TRACE, { metadataStyles });\n }\n\n /**\n * Log an exit in a function\n *\n * @example\n * ```typescript\n * const logger = new Logger('myNamespace:A');\n * class A {\n * method(arg1) {\n * // Do your stuff\n * logger.exit(method, { arg1 });\n * }\n * }\n * ```\n */\n exit<T extends Metadata, Fn extends (...args: unknown[]) => unknown>(\n fn: Fn,\n metadata?: T,\n metadataStyles?: MetadataStyles<ExtendedFunctionNameMetadata & T>,\n ): void {\n const extendedMetadata = {\n ...metadata,\n functionName: fn.name,\n };\n this.log(\"exit\", extendedMetadata, Level.TRACE, { metadataStyles });\n }\n\n /**\n * Wrap around a function to log enter and exit of a function\n *\n * @example\n * ```typescript\n * const logger = new Logger('myNamespace:A');\n * class A {\n * method() {\n * logger.wrap(method, () => {\n * // Do your stuff\n * });\n * }\n * }\n * ```\n */\n wrap<Fn extends (...args: unknown[]) => unknown>(\n fn: Fn,\n callback: () => void,\n ): void;\n\n wrap<T extends Metadata, Fn extends (...args: unknown[]) => unknown>(\n fn: Fn,\n metadata: T,\n callback: () => void,\n ): void;\n\n wrap<T extends Metadata, Fn extends (...args: unknown[]) => unknown>(\n fn: Fn,\n metadata: T,\n metadataStyles: MetadataStyles<T>,\n callback: () => void,\n ): void;\n\n wrap<T extends Metadata, Fn extends (...args: unknown[]) => unknown>(\n fn: Fn,\n option1: T | (() => void),\n option2?: MetadataStyles<T> | (() => void),\n callback?: () => void,\n ): void {\n let metadata: T | undefined;\n let metadataStyles: MetadataStyles<T> | undefined;\n\n if (typeof option1 === \"function\") {\n callback = option1;\n } else {\n metadata = option1;\n\n if (typeof option2 === \"function\") {\n callback = option2;\n } else {\n metadataStyles = option2;\n }\n }\n\n this.enter(fn, metadata, metadataStyles);\n (callback as () => void)();\n this.exit(fn);\n }\n}\n"],"names":["globalOrWindow","globalThis","__NIGHTINGALE_GET_CONFIG_FOR_LOGGER","handlers","processors","__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD","key","level","filter","handler","minLevel","isHandling","getConfigForLoggerRecord","recordLevel","isError","messageOrError","Error","Logger","constructor","displayName","process","env","NODE_ENV","includes","getHandlersAndProcessors","getConfig","child","childSuffixKey","childDisplayName","context","logger","setContext","getContextObject","contextObject","extendsContext","extendedContext","undefined","Object","assign","addRecord","record","length","Level","ERROR","console","log","message","forEach","some","handle","metadata","INFO","options","isMessageError","name","extendedMetadata","hasOwn","error","datetime","Date","extra","trace","metadataStyles","TRACE","debug","DEBUG","notice","NOTICE","info","warn","WARN","critical","CRITICAL","fatal","FATAL","alert","ALERT","inspectValue","inspectVar","success","infoSuccess","symbol","styles","debugSuccess","fail","infoFail","debugFail","time","now","infoTime","timeEnd","startTime","diffTime","readableTime","seconds","Math","floor","timeMs","infoTimeEnd","infoSuccessTimeEnd","enter","fn","functionName","exit","wrap","option1","option2","callback"],"mappings":"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"}
@@ -2,8 +2,7 @@ import * as util from 'node:util';
2
2
  import { Level } from 'nightingale-levels';
3
3
  export { Level } from 'nightingale-levels';
4
4
 
5
- /* eslint-disable max-lines */
6
- const globalOrWindow = typeof global !== 'undefined' ? global : window;
5
+ const globalOrWindow = typeof globalThis !== "undefined" ? globalThis : globalThis;
7
6
  if (!globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER) {
8
7
  globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER = () => ({
9
8
  handlers: [],
@@ -43,7 +42,7 @@ class Logger {
43
42
  constructor(key, displayName) {
44
43
  this.key = key;
45
44
  this.displayName = displayName;
46
- if (process.env.NODE_ENV !== 'production' && key.includes('.')) {
45
+ if (process.env.NODE_ENV !== "production" && key.includes(".")) {
47
46
  throw new Error(`nightingale: \`.\` in key is no longer supported, use \`:\` instead (key: ${key})`);
48
47
  }
49
48
  }
@@ -109,7 +108,7 @@ class Logger {
109
108
  */
110
109
  extendsContext(extendedContext) {
111
110
  if (this.contextObject === undefined) {
112
- throw new Error('Cannot extends context that does not exists. Use setContext(context) first.');
111
+ throw new Error("Cannot extends context that does not exists. Use setContext(context) first.");
113
112
  }
114
113
  Object.assign(this.contextObject, extendedContext);
115
114
  }
@@ -127,7 +126,7 @@ class Logger {
127
126
  if (handlers.length === 0) {
128
127
  if (record.level > Level.ERROR) {
129
128
  // eslint-disable-next-line no-console
130
- console.log('[nightingale] no logger for > error level.', {
129
+ console.log("[nightingale] no logger for > error level.", {
131
130
  key: record.key,
132
131
  message: record.message
133
132
  });
@@ -148,7 +147,7 @@ class Logger {
148
147
  log(messageOrError, metadata, level = Level.INFO, options) {
149
148
  const isMessageError = isError(messageOrError);
150
149
  const message = isMessageError ? `${messageOrError.name}: ${messageOrError.message}` : messageOrError;
151
- const extendedMetadata = isMessageError && !(metadata && Object.prototype.hasOwnProperty.call(metadata, 'error')) ? {
150
+ const extendedMetadata = isMessageError && !(metadata && Object.hasOwn(metadata, "error")) ? {
152
151
  ...metadata,
153
152
  error: messageOrError
154
153
  } : metadata;
@@ -283,7 +282,7 @@ class Logger {
283
282
  });
284
283
  this.log(inspectedValue, metadata, Level.DEBUG, {
285
284
  metadataStyles,
286
- styles: ['gray']
285
+ styles: ["gray"]
287
286
  });
288
287
  }
289
288
  }
@@ -298,7 +297,7 @@ class Logger {
298
297
  });
299
298
  this.log(`${varName} = ${inspectedValue}`, metadata, Level.DEBUG, {
300
299
  metadataStyles,
301
- styles: ['cyan']
300
+ styles: ["cyan"]
302
301
  });
303
302
  }
304
303
  }
@@ -316,8 +315,8 @@ class Logger {
316
315
  infoSuccess(message, metadata, metadataStyles) {
317
316
  this.log(message, metadata, Level.INFO, {
318
317
  metadataStyles,
319
- symbol: '',
320
- styles: ['green', 'bold']
318
+ symbol: "",
319
+ styles: ["green", "bold"]
321
320
  });
322
321
  }
323
322
 
@@ -327,8 +326,8 @@ class Logger {
327
326
  debugSuccess(message, metadata, metadataStyles) {
328
327
  this.log(message, metadata, Level.DEBUG, {
329
328
  metadataStyles,
330
- symbol: '',
331
- styles: ['green']
329
+ symbol: "",
330
+ styles: ["green"]
332
331
  });
333
332
  }
334
333
 
@@ -345,8 +344,8 @@ class Logger {
345
344
  infoFail(messageOrError, metadata, metadataStyles) {
346
345
  this.log(messageOrError, metadata, Level.INFO, {
347
346
  metadataStyles,
348
- symbol: '',
349
- styles: ['red', 'bold']
347
+ symbol: "",
348
+ styles: ["red", "bold"]
350
349
  });
351
350
  }
352
351
 
@@ -356,8 +355,8 @@ class Logger {
356
355
  debugFail(messageOrError, metadata, metadataStyles) {
357
356
  this.log(messageOrError, metadata, Level.DEBUG, {
358
357
  metadataStyles,
359
- symbol: '',
360
- styles: ['red']
358
+ symbol: "",
359
+ styles: ["red"]
361
360
  });
362
361
  }
363
362
 
@@ -390,7 +389,7 @@ class Logger {
390
389
  readableTime = `${diffTime}ms`;
391
390
  } else {
392
391
  const seconds = diffTime > 1000 ? Math.floor(diffTime / 1000) : 0;
393
- readableTime = `${seconds ? `${seconds}s and ` : ''}${diffTime - seconds * 1000}ms`;
392
+ readableTime = `${seconds ? `${seconds}s and ` : ""}${diffTime - seconds * 1000}ms`;
394
393
  }
395
394
  const extendedMetadata = {
396
395
  ...metadata,
@@ -415,8 +414,8 @@ class Logger {
415
414
  */
416
415
  infoSuccessTimeEnd(time, message, metadata, metadataStyles) {
417
416
  this.timeEnd(time, message, metadata, metadataStyles, Level.INFO, {
418
- symbol: '',
419
- styles: ['green', 'bold']
417
+ symbol: "",
418
+ styles: ["green", "bold"]
420
419
  });
421
420
  }
422
421
 
@@ -439,7 +438,7 @@ class Logger {
439
438
  ...metadata,
440
439
  functionName: fn.name
441
440
  };
442
- this.log('enter', extendedMetadata, Level.TRACE, {
441
+ this.log("enter", extendedMetadata, Level.TRACE, {
443
442
  metadataStyles
444
443
  });
445
444
  }
@@ -463,7 +462,7 @@ class Logger {
463
462
  ...metadata,
464
463
  functionName: fn.name
465
464
  };
466
- this.log('exit', extendedMetadata, Level.TRACE, {
465
+ this.log("exit", extendedMetadata, Level.TRACE, {
467
466
  metadataStyles
468
467
  });
469
468
  }
@@ -487,11 +486,11 @@ class Logger {
487
486
  wrap(fn, option1, option2, callback) {
488
487
  let metadata;
489
488
  let metadataStyles;
490
- if (typeof option1 === 'function') {
489
+ if (typeof option1 === "function") {
491
490
  callback = option1;
492
491
  } else {
493
492
  metadata = option1;
494
- if (typeof option2 === 'function') {
493
+ if (typeof option2 === "function") {
495
494
  callback = option2;
496
495
  } else {
497
496
  metadataStyles = option2;
@@ -504,4 +503,4 @@ class Logger {
504
503
  }
505
504
 
506
505
  export { Logger };
507
- //# sourceMappingURL=index-node18.mjs.map
506
+ //# sourceMappingURL=index-node20.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-node20.mjs","sources":["../src/index.ts"],"sourcesContent":["import * as util from \"node:util\";\nimport { Level } from \"nightingale-levels\";\nimport type {\n Handler,\n LogRecord,\n Metadata,\n MetadataStyles,\n Processor,\n Styles,\n} from \"nightingale-types\";\nimport { POB_TARGET } from \"pob-babel\";\n\nexport { Level } from \"nightingale-levels\";\n\nexport interface Options<T extends Metadata> {\n symbol?: string;\n metadataStyles?: MetadataStyles<T>;\n styles?: Styles;\n}\n\nexport interface ComputedConfigForKey {\n handlers: Handler[];\n processors: Processor[];\n}\n\nexport interface ExtendedFunctionNameMetadata {\n functionName: string;\n}\n\nexport interface Config {\n handler?: Handler;\n handlers?: Handler[];\n key?: string;\n keys?: string[];\n pattern?: RegExp;\n processor?: Processor;\n processors?: Processor[];\n stop?: boolean;\n}\n\ndeclare global {\n // eslint-disable-next-line no-var\n var __NIGHTINGALE_CONFIG: Config[];\n // eslint-disable-next-line no-var\n var __NIGHTINGALE_LOGGER_MAP_CACHE: Map<string, ComputedConfigForKey>;\n // eslint-disable-next-line no-var\n var __NIGHTINGALE_CONFIG_DEFAULT: ComputedConfigForKey;\n // eslint-disable-next-line no-var\n var __NIGHTINGALE_GLOBAL_HANDLERS: unknown;\n // eslint-disable-next-line no-var\n var __NIGHTINGALE_GET_CONFIG_FOR_LOGGER: (\n key: string,\n ) => ComputedConfigForKey;\n // eslint-disable-next-line no-var\n var __NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD: (\n key: string,\n level: number,\n ) => ComputedConfigForKey;\n}\n\nconst globalOrWindow: typeof globalThis =\n typeof globalThis !== \"undefined\" ? globalThis : globalThis;\n\nif (!globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER) {\n globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER =\n (): ComputedConfigForKey => ({\n handlers: [],\n processors: [],\n });\n}\n\nif (!globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD) {\n globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD = (\n key: string,\n level: Level,\n ): ComputedConfigForKey => {\n const { handlers, processors }: ComputedConfigForKey =\n globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER(key);\n\n return {\n handlers: handlers.filter(\n (handler) =>\n level >= handler.minLevel &&\n (!handler.isHandling || handler.isHandling(level, key)),\n ),\n processors,\n };\n };\n}\n\nfunction getConfigForLoggerRecord(\n key: string,\n recordLevel: Level,\n): ComputedConfigForKey {\n return globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD(\n key,\n recordLevel,\n );\n}\n\nfunction isError(messageOrError: Error | string): messageOrError is Error {\n return messageOrError instanceof Error;\n}\n\n/**\n * Interface that allows you to log records.\n * This records are treated by handlers\n */\nexport class Logger {\n private contextObject?: Record<string, unknown>;\n\n readonly key: string;\n\n readonly displayName?: string;\n\n /**\n * Create a new Logger\n *\n * @param {string} key\n * @param {string} [displayName]\n */\n constructor(key: string, displayName?: string) {\n this.key = key;\n this.displayName = displayName;\n\n if (process.env.NODE_ENV !== \"production\" && key.includes(\".\")) {\n throw new Error(\n `nightingale: \\`.\\` in key is no longer supported, use \\`:\\` instead (key: ${key})`,\n );\n }\n }\n\n /** @private */\n protected getHandlersAndProcessors(\n recordLevel: number,\n ): ComputedConfigForKey {\n return getConfigForLoggerRecord(this.key, recordLevel);\n }\n\n /** @private */\n getConfig(): Readonly<ComputedConfigForKey> {\n return globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER(this.key);\n }\n\n /**\n * Create a child logger\n */\n child(childSuffixKey: string, childDisplayName?: string): Logger {\n return new Logger(`${this.key}:${childSuffixKey}`, childDisplayName);\n }\n\n /**\n * Create a new Logger with the same key a this attached context\n *\n * @example\n * ```typescript\n * const loggerMyService = new Logger('app:myService');\n * function someAction(arg1) {\n * const logger = loggerMyService.context({ arg1 });\n * logger.enter(someAction);\n * // do stuff\n * logger.info('info');\n * // do stuff\n * logger.exit(someAction);\n * }\n * ```\n *\n */\n context(context: Record<string, unknown>): Logger {\n const logger = new Logger(this.key);\n logger.setContext(context);\n return logger;\n }\n\n /**\n * Get the context of this logger\n */\n getContextObject(): Readonly<Record<string, unknown>> | undefined {\n return this.contextObject;\n }\n\n /**\n * Set the context of this logger\n *\n * @param {Object} context\n */\n setContext(context: Record<string, unknown>): void {\n this.contextObject = context;\n }\n\n /**\n * Extends existing context of this logger\n */\n extendsContext(extendedContext: Record<string, unknown>): void {\n if (this.contextObject === undefined) {\n throw new Error(\n \"Cannot extends context that does not exists. Use setContext(context) first.\",\n );\n }\n Object.assign(this.contextObject, extendedContext);\n }\n\n /**\n * Handle a record\n *\n * Use this only if you know what you are doing.\n */\n addRecord<T extends Metadata>(record: Readonly<LogRecord<T>>): void {\n const { handlers, processors } = this.getHandlersAndProcessors(\n record.level,\n );\n\n if (handlers.length === 0) {\n if (record.level > Level.ERROR) {\n // eslint-disable-next-line no-console\n console.log(\"[nightingale] no logger for > error level.\", {\n key: record.key,\n message: record.message,\n });\n }\n return;\n }\n\n if (processors) {\n processors.forEach((process) => {\n process(record, record.context);\n });\n }\n\n handlers.some((handler) => handler.handle(record) === false);\n }\n\n /**\n * Log a message\n */\n log<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n level: Level = Level.INFO,\n options?: Options<T>,\n ): void {\n const isMessageError = isError(messageOrError);\n\n const message = isMessageError\n ? `${messageOrError.name}: ${messageOrError.message}`\n : messageOrError;\n\n const extendedMetadata =\n isMessageError && !(metadata && Object.hasOwn(metadata, \"error\"))\n ? { ...metadata, error: messageOrError }\n : metadata;\n\n const context = extendedMetadata?.context;\n if (extendedMetadata) {\n delete extendedMetadata.context;\n }\n\n const record: LogRecord<NonNullable<typeof extendedMetadata>> = {\n level,\n key: this.key,\n displayName: this.displayName,\n datetime: new Date(),\n message,\n context: context || this.contextObject,\n metadata: extendedMetadata as NonNullable<typeof extendedMetadata>,\n extra: {},\n ...options,\n };\n this.addRecord(record);\n }\n\n /**\n * Log a trace message\n */\n trace<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.TRACE, { metadataStyles });\n }\n\n /**\n * Log a debug message\n */\n debug<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.DEBUG, { metadataStyles });\n }\n\n /**\n * Notice an info message\n */\n notice<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.NOTICE, { metadataStyles });\n }\n\n /**\n * Log an info message\n */\n info<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.INFO, { metadataStyles });\n }\n\n /**\n * Log a warn message\n */\n warn<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.WARN, { metadataStyles });\n }\n\n /**\n * Log an error message\n *\n * @example\n * ```typescript\n * const logger = new Logger('something');\n * try {\n * throw new Error('Always throws here');\n * } catch (error) {\n * logger.error('caught error', { error });\n * }\n * ```\n */\n error<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.ERROR, { metadataStyles });\n }\n\n /**\n * Log an critical message\n */\n critical<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.CRITICAL, { metadataStyles });\n }\n\n /**\n * Log a fatal message\n *\n * @example\n * ```typescript\n * const logger = new Logger('something');\n * try {\n * throw new Error('Always throws here');\n * } catch (error) {\n * logger.error('caught error', { error });\n * process.exit(1);\n * }\n */\n fatal<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.FATAL, { metadataStyles });\n }\n\n /**\n * Log an alert message\n */\n alert<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.ALERT, { metadataStyles });\n }\n\n /**\n * Log an inspected value\n */\n inspectValue<T extends Metadata>(\n value: unknown,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n if (POB_TARGET === \"browser\") {\n throw new Error(\"Not supported for the browser. Prefer `debugger;`\");\n } else {\n // Note: inspect is a special function for node:\n // https://github.com/nodejs/node/blob/a1bda1b4deb08dfb3e06cb778f0db40023b18318/lib/util.js#L210\n const inspectedValue = util.inspect(value, { depth: 6 });\n this.log(inspectedValue, metadata, Level.DEBUG, {\n metadataStyles,\n styles: [\"gray\"],\n });\n }\n }\n\n /**\n * Log a debugged var\n */\n inspectVar<T extends Metadata>(\n varName: string,\n varValue: unknown,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n if (POB_TARGET === \"browser\") {\n throw new Error(\"Not supported for the browser. Prefer `debugger;`\");\n } else {\n const inspectedValue = util.inspect(varValue, { depth: 6 });\n this.log(`${varName} = ${inspectedValue}`, metadata, Level.DEBUG, {\n metadataStyles,\n styles: [\"cyan\"],\n });\n }\n }\n\n /**\n * Alias for infoSuccess\n */\n success<T extends Metadata>(\n message: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.infoSuccess(message, metadata, metadataStyles);\n }\n\n /**\n * Log an info success message\n */\n infoSuccess<T extends Metadata>(\n message: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(message, metadata, Level.INFO, {\n metadataStyles,\n symbol: \"✔\",\n styles: [\"green\", \"bold\"],\n });\n }\n\n /**\n * Log an debug success message\n */\n debugSuccess<T extends Metadata>(\n message: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(message, metadata, Level.DEBUG, {\n metadataStyles,\n symbol: \"✔\",\n styles: [\"green\"],\n });\n }\n\n /**\n * Alias for infoFail\n */\n fail<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.infoFail(messageOrError, metadata, metadataStyles);\n }\n\n /**\n * Log an info fail message\n */\n infoFail<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.INFO, {\n metadataStyles,\n symbol: \"✖\",\n styles: [\"red\", \"bold\"],\n });\n }\n\n /**\n * Log an debug fail message\n */\n debugFail<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.DEBUG, {\n metadataStyles,\n symbol: \"✖\",\n styles: [\"red\"],\n });\n }\n\n /**\n * @returns {number} time to pass to timeEnd\n */\n time<T extends Metadata>(\n message?: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n level: number = Level.DEBUG,\n ): number {\n if (message) {\n this.log(message, metadata, level, { metadataStyles });\n }\n\n return Date.now();\n }\n\n infoTime<T extends Metadata>(\n message?: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): number {\n return this.time(message, metadata, metadataStyles, Level.INFO);\n }\n\n /**\n * Finds difference between when this method\n * was called and when the respective time method\n * was called, then logs out the difference\n * and deletes the original record\n */\n timeEnd<T extends Metadata>(\n startTime: number,\n message: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n level: number = Level.DEBUG,\n options?: Options<T>,\n ): void {\n const now = Date.now();\n\n const diffTime = now - startTime;\n let readableTime;\n\n if (diffTime < 1000) {\n readableTime = `${diffTime}ms`;\n } else {\n const seconds = diffTime > 1000 ? Math.floor(diffTime / 1000) : 0;\n const ms = diffTime - seconds * 1000;\n readableTime = `${seconds ? `${seconds}s and ` : \"\"}${ms}ms`;\n }\n\n const extendedMetadata = {\n ...metadata,\n readableTime,\n timeMs: diffTime,\n };\n\n this.log(message, extendedMetadata, level, { ...options, metadataStyles });\n }\n\n /**\n * Like timeEnd, but with INFO level\n */\n infoTimeEnd<T extends Metadata>(\n time: number,\n message: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.timeEnd(time, message, metadata, metadataStyles, Level.INFO);\n }\n\n /**\n * Like timeEnd, but with INFO level\n */\n infoSuccessTimeEnd<T extends Metadata>(\n time: number,\n message: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.timeEnd(time, message, metadata, metadataStyles, Level.INFO, {\n symbol: \"✔\",\n styles: [\"green\", \"bold\"],\n });\n }\n\n /**\n * Log an enter in a function\n *\n * @example\n * ```typescript\n * class A {\n * method(arg1) {\n * logger.enter(method, { arg1 });\n * // Do your stuff\n * }\n * }\n * ```\n *\n */\n enter<T extends Metadata, Fn extends (...args: unknown[]) => unknown>(\n fn: Fn,\n metadata?: T,\n metadataStyles?: MetadataStyles<ExtendedFunctionNameMetadata & T>,\n ): void {\n const extendedMetadata = {\n ...metadata,\n functionName: fn.name,\n };\n this.log(\"enter\", extendedMetadata, Level.TRACE, { metadataStyles });\n }\n\n /**\n * Log an exit in a function\n *\n * @example\n * ```typescript\n * const logger = new Logger('myNamespace:A');\n * class A {\n * method(arg1) {\n * // Do your stuff\n * logger.exit(method, { arg1 });\n * }\n * }\n * ```\n */\n exit<T extends Metadata, Fn extends (...args: unknown[]) => unknown>(\n fn: Fn,\n metadata?: T,\n metadataStyles?: MetadataStyles<ExtendedFunctionNameMetadata & T>,\n ): void {\n const extendedMetadata = {\n ...metadata,\n functionName: fn.name,\n };\n this.log(\"exit\", extendedMetadata, Level.TRACE, { metadataStyles });\n }\n\n /**\n * Wrap around a function to log enter and exit of a function\n *\n * @example\n * ```typescript\n * const logger = new Logger('myNamespace:A');\n * class A {\n * method() {\n * logger.wrap(method, () => {\n * // Do your stuff\n * });\n * }\n * }\n * ```\n */\n wrap<Fn extends (...args: unknown[]) => unknown>(\n fn: Fn,\n callback: () => void,\n ): void;\n\n wrap<T extends Metadata, Fn extends (...args: unknown[]) => unknown>(\n fn: Fn,\n metadata: T,\n callback: () => void,\n ): void;\n\n wrap<T extends Metadata, Fn extends (...args: unknown[]) => unknown>(\n fn: Fn,\n metadata: T,\n metadataStyles: MetadataStyles<T>,\n callback: () => void,\n ): void;\n\n wrap<T extends Metadata, Fn extends (...args: unknown[]) => unknown>(\n fn: Fn,\n option1: T | (() => void),\n option2?: MetadataStyles<T> | (() => void),\n callback?: () => void,\n ): void {\n let metadata: T | undefined;\n let metadataStyles: MetadataStyles<T> | undefined;\n\n if (typeof option1 === \"function\") {\n callback = option1;\n } else {\n metadata = option1;\n\n if (typeof option2 === \"function\") {\n callback = option2;\n } else {\n metadataStyles = option2;\n }\n }\n\n this.enter(fn, metadata, metadataStyles);\n (callback as () => void)();\n this.exit(fn);\n }\n}\n"],"names":["globalOrWindow","globalThis","__NIGHTINGALE_GET_CONFIG_FOR_LOGGER","handlers","processors","__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD","key","level","filter","handler","minLevel","isHandling","getConfigForLoggerRecord","recordLevel","isError","messageOrError","Error","Logger","constructor","displayName","process","env","NODE_ENV","includes","getHandlersAndProcessors","getConfig","child","childSuffixKey","childDisplayName","context","logger","setContext","getContextObject","contextObject","extendsContext","extendedContext","undefined","Object","assign","addRecord","record","length","Level","ERROR","console","log","message","forEach","some","handle","metadata","INFO","options","isMessageError","name","extendedMetadata","hasOwn","error","datetime","Date","extra","trace","metadataStyles","TRACE","debug","DEBUG","notice","NOTICE","info","warn","WARN","critical","CRITICAL","fatal","FATAL","alert","ALERT","inspectValue","value","inspectedValue","util","inspect","depth","styles","inspectVar","varName","varValue","success","infoSuccess","symbol","debugSuccess","fail","infoFail","debugFail","time","now","infoTime","timeEnd","startTime","diffTime","readableTime","seconds","Math","floor","timeMs","infoTimeEnd","infoSuccessTimeEnd","enter","fn","functionName","exit","wrap","option1","option2","callback"],"mappings":";;;;AA4DA,MAAMA,cAAiC,GACrC,OAAOC,UAAU,KAAK,WAAW,GAAGA,UAAU,GAAGA,UAAU;AAE7D,IAAI,CAACD,cAAc,CAACE,mCAAmC,EAAE;EACvDF,cAAc,CAACE,mCAAmC,GAChD,OAA6B;AAC3BC,IAAAA,QAAQ,EAAE,EAAE;AACZC,IAAAA,UAAU,EAAE;AACd,GAAC,CAAC;AACN;AAEA,IAAI,CAACJ,cAAc,CAACK,0CAA0C,EAAE;AAC9DL,EAAAA,cAAc,CAACK,0CAA0C,GAAG,CAC1DC,GAAW,EACXC,KAAY,KACa;IACzB,MAAM;MAAEJ,QAAQ;AAAEC,MAAAA;AAAiC,KAAC,GAClDJ,cAAc,CAACE,mCAAmC,CAACI,GAAG,CAAC;IAEzD,OAAO;MACLH,QAAQ,EAAEA,QAAQ,CAACK,MAAM,CACtBC,OAAO,IACNF,KAAK,IAAIE,OAAO,CAACC,QAAQ,KACxB,CAACD,OAAO,CAACE,UAAU,IAAIF,OAAO,CAACE,UAAU,CAACJ,KAAK,EAAED,GAAG,CAAC,CAC1D,CAAC;AACDF,MAAAA;KACD;GACF;AACH;AAEA,SAASQ,wBAAwBA,CAC/BN,GAAW,EACXO,WAAkB,EACI;AACtB,EAAA,OAAOb,cAAc,CAACK,0CAA0C,CAC9DC,GAAG,EACHO,WACF,CAAC;AACH;AAEA,SAASC,OAAOA,CAACC,cAA8B,EAA2B;EACxE,OAAOA,cAAc,YAAYC,KAAK;AACxC;;AAEA;AACA;AACA;AACA;AACO,MAAMC,MAAM,CAAC;AAOlB;AACF;AACA;AACA;AACA;AACA;AACEC,EAAAA,WAAWA,CAACZ,GAAW,EAAEa,WAAoB,EAAE;IAC7C,IAAI,CAACb,GAAG,GAAGA,GAAG;IACd,IAAI,CAACa,WAAW,GAAGA,WAAW;AAE9B,IAAA,IAAIC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,IAAIhB,GAAG,CAACiB,QAAQ,CAAC,GAAG,CAAC,EAAE;AAC9D,MAAA,MAAM,IAAIP,KAAK,CACb,CAA6EV,0EAAAA,EAAAA,GAAG,GAClF,CAAC;AACH;AACF;;AAEA;EACUkB,wBAAwBA,CAChCX,WAAmB,EACG;AACtB,IAAA,OAAOD,wBAAwB,CAAC,IAAI,CAACN,GAAG,EAAEO,WAAW,CAAC;AACxD;;AAEA;AACAY,EAAAA,SAASA,GAAmC;AAC1C,IAAA,OAAOzB,cAAc,CAACE,mCAAmC,CAAC,IAAI,CAACI,GAAG,CAAC;AACrE;;AAEA;AACF;AACA;AACEoB,EAAAA,KAAKA,CAACC,cAAsB,EAAEC,gBAAyB,EAAU;AAC/D,IAAA,OAAO,IAAIX,MAAM,CAAC,CAAA,EAAG,IAAI,CAACX,GAAG,CAAA,CAAA,EAAIqB,cAAc,CAAA,CAAE,EAAEC,gBAAgB,CAAC;AACtE;;AAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACEC,OAAOA,CAACA,OAAgC,EAAU;IAChD,MAAMC,MAAM,GAAG,IAAIb,MAAM,CAAC,IAAI,CAACX,GAAG,CAAC;AACnCwB,IAAAA,MAAM,CAACC,UAAU,CAACF,OAAO,CAAC;AAC1B,IAAA,OAAOC,MAAM;AACf;;AAEA;AACF;AACA;AACEE,EAAAA,gBAAgBA,GAAkD;IAChE,OAAO,IAAI,CAACC,aAAa;AAC3B;;AAEA;AACF;AACA;AACA;AACA;EACEF,UAAUA,CAACF,OAAgC,EAAQ;IACjD,IAAI,CAACI,aAAa,GAAGJ,OAAO;AAC9B;;AAEA;AACF;AACA;EACEK,cAAcA,CAACC,eAAwC,EAAQ;AAC7D,IAAA,IAAI,IAAI,CAACF,aAAa,KAAKG,SAAS,EAAE;AACpC,MAAA,MAAM,IAAIpB,KAAK,CACb,6EACF,CAAC;AACH;IACAqB,MAAM,CAACC,MAAM,CAAC,IAAI,CAACL,aAAa,EAAEE,eAAe,CAAC;AACpD;;AAEA;AACF;AACA;AACA;AACA;EACEI,SAASA,CAAqBC,MAA8B,EAAQ;IAClE,MAAM;MAAErC,QAAQ;AAAEC,MAAAA;KAAY,GAAG,IAAI,CAACoB,wBAAwB,CAC5DgB,MAAM,CAACjC,KACT,CAAC;AAED,IAAA,IAAIJ,QAAQ,CAACsC,MAAM,KAAK,CAAC,EAAE;AACzB,MAAA,IAAID,MAAM,CAACjC,KAAK,GAAGmC,KAAK,CAACC,KAAK,EAAE;AAC9B;AACAC,QAAAA,OAAO,CAACC,GAAG,CAAC,4CAA4C,EAAE;UACxDvC,GAAG,EAAEkC,MAAM,CAAClC,GAAG;UACfwC,OAAO,EAAEN,MAAM,CAACM;AAClB,SAAC,CAAC;AACJ;AACA,MAAA;AACF;AAEA,IAAA,IAAI1C,UAAU,EAAE;AACdA,MAAAA,UAAU,CAAC2C,OAAO,CAAE3B,OAAO,IAAK;AAC9BA,QAAAA,OAAO,CAACoB,MAAM,EAAEA,MAAM,CAACX,OAAO,CAAC;AACjC,OAAC,CAAC;AACJ;AAEA1B,IAAAA,QAAQ,CAAC6C,IAAI,CAAEvC,OAAO,IAAKA,OAAO,CAACwC,MAAM,CAACT,MAAM,CAAC,KAAK,KAAK,CAAC;AAC9D;;AAEA;AACF;AACA;AACEK,EAAAA,GAAGA,CACD9B,cAA8B,EAC9BmC,QAAY,EACZ3C,KAAY,GAAGmC,KAAK,CAACS,IAAI,EACzBC,OAAoB,EACd;AACN,IAAA,MAAMC,cAAc,GAAGvC,OAAO,CAACC,cAAc,CAAC;AAE9C,IAAA,MAAM+B,OAAO,GAAGO,cAAc,GAC1B,GAAGtC,cAAc,CAACuC,IAAI,CAAA,EAAA,EAAKvC,cAAc,CAAC+B,OAAO,CAAA,CAAE,GACnD/B,cAAc;AAElB,IAAA,MAAMwC,gBAAgB,GACpBF,cAAc,IAAI,EAAEH,QAAQ,IAAIb,MAAM,CAACmB,MAAM,CAACN,QAAQ,EAAE,OAAO,CAAC,CAAC,GAC7D;AAAE,MAAA,GAAGA,QAAQ;AAAEO,MAAAA,KAAK,EAAE1C;AAAe,KAAC,GACtCmC,QAAQ;AAEd,IAAA,MAAMrB,OAAO,GAAG0B,gBAAgB,EAAE1B,OAAO;AACzC,IAAA,IAAI0B,gBAAgB,EAAE;MACpB,OAAOA,gBAAgB,CAAC1B,OAAO;AACjC;AAEA,IAAA,MAAMW,MAAuD,GAAG;MAC9DjC,KAAK;MACLD,GAAG,EAAE,IAAI,CAACA,GAAG;MACba,WAAW,EAAE,IAAI,CAACA,WAAW;AAC7BuC,MAAAA,QAAQ,EAAE,IAAIC,IAAI,EAAE;MACpBb,OAAO;AACPjB,MAAAA,OAAO,EAAEA,OAAO,IAAI,IAAI,CAACI,aAAa;AACtCiB,MAAAA,QAAQ,EAAEK,gBAAwD;MAClEK,KAAK,EAAE,EAAE;MACT,GAAGR;KACJ;AACD,IAAA,IAAI,CAACb,SAAS,CAACC,MAAM,CAAC;AACxB;;AAEA;AACF;AACA;AACEqB,EAAAA,KAAKA,CACH9C,cAA8B,EAC9BmC,QAAY,EACZY,cAAkC,EAC5B;IACN,IAAI,CAACjB,GAAG,CAAC9B,cAAc,EAAEmC,QAAQ,EAAER,KAAK,CAACqB,KAAK,EAAE;AAAED,MAAAA;AAAe,KAAC,CAAC;AACrE;;AAEA;AACF;AACA;AACEE,EAAAA,KAAKA,CACHjD,cAA8B,EAC9BmC,QAAY,EACZY,cAAkC,EAC5B;IACN,IAAI,CAACjB,GAAG,CAAC9B,cAAc,EAAEmC,QAAQ,EAAER,KAAK,CAACuB,KAAK,EAAE;AAAEH,MAAAA;AAAe,KAAC,CAAC;AACrE;;AAEA;AACF;AACA;AACEI,EAAAA,MAAMA,CACJnD,cAA8B,EAC9BmC,QAAY,EACZY,cAAkC,EAC5B;IACN,IAAI,CAACjB,GAAG,CAAC9B,cAAc,EAAEmC,QAAQ,EAAER,KAAK,CAACyB,MAAM,EAAE;AAAEL,MAAAA;AAAe,KAAC,CAAC;AACtE;;AAEA;AACF;AACA;AACEM,EAAAA,IAAIA,CACFrD,cAA8B,EAC9BmC,QAAY,EACZY,cAAkC,EAC5B;IACN,IAAI,CAACjB,GAAG,CAAC9B,cAAc,EAAEmC,QAAQ,EAAER,KAAK,CAACS,IAAI,EAAE;AAAEW,MAAAA;AAAe,KAAC,CAAC;AACpE;;AAEA;AACF;AACA;AACEO,EAAAA,IAAIA,CACFtD,cAA8B,EAC9BmC,QAAY,EACZY,cAAkC,EAC5B;IACN,IAAI,CAACjB,GAAG,CAAC9B,cAAc,EAAEmC,QAAQ,EAAER,KAAK,CAAC4B,IAAI,EAAE;AAAER,MAAAA;AAAe,KAAC,CAAC;AACpE;;AAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACEL,EAAAA,KAAKA,CACH1C,cAA8B,EAC9BmC,QAAY,EACZY,cAAkC,EAC5B;IACN,IAAI,CAACjB,GAAG,CAAC9B,cAAc,EAAEmC,QAAQ,EAAER,KAAK,CAACC,KAAK,EAAE;AAAEmB,MAAAA;AAAe,KAAC,CAAC;AACrE;;AAEA;AACF;AACA;AACES,EAAAA,QAAQA,CACNxD,cAA8B,EAC9BmC,QAAY,EACZY,cAAkC,EAC5B;IACN,IAAI,CAACjB,GAAG,CAAC9B,cAAc,EAAEmC,QAAQ,EAAER,KAAK,CAAC8B,QAAQ,EAAE;AAAEV,MAAAA;AAAe,KAAC,CAAC;AACxE;;AAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACEW,EAAAA,KAAKA,CACH1D,cAA8B,EAC9BmC,QAAY,EACZY,cAAkC,EAC5B;IACN,IAAI,CAACjB,GAAG,CAAC9B,cAAc,EAAEmC,QAAQ,EAAER,KAAK,CAACgC,KAAK,EAAE;AAAEZ,MAAAA;AAAe,KAAC,CAAC;AACrE;;AAEA;AACF;AACA;AACEa,EAAAA,KAAKA,CACH5D,cAA8B,EAC9BmC,QAAY,EACZY,cAAkC,EAC5B;IACN,IAAI,CAACjB,GAAG,CAAC9B,cAAc,EAAEmC,QAAQ,EAAER,KAAK,CAACkC,KAAK,EAAE;AAAEd,MAAAA;AAAe,KAAC,CAAC;AACrE;;AAEA;AACF;AACA;AACEe,EAAAA,YAAYA,CACVC,KAAc,EACd5B,QAAY,EACZY,cAAkC,EAC5B;AAGC,IAAA;AACL;AACA;AACA,MAAA,MAAMiB,cAAc,GAAGC,IAAI,CAACC,OAAO,CAACH,KAAK,EAAE;AAAEI,QAAAA,KAAK,EAAE;AAAE,OAAC,CAAC;MACxD,IAAI,CAACrC,GAAG,CAACkC,cAAc,EAAE7B,QAAQ,EAAER,KAAK,CAACuB,KAAK,EAAE;QAC9CH,cAAc;QACdqB,MAAM,EAAE,CAAC,MAAM;AACjB,OAAC,CAAC;AACJ;AACF;;AAEA;AACF;AACA;EACEC,UAAUA,CACRC,OAAe,EACfC,QAAiB,EACjBpC,QAAY,EACZY,cAAkC,EAC5B;AAGC,IAAA;AACL,MAAA,MAAMiB,cAAc,GAAGC,IAAI,CAACC,OAAO,CAACK,QAAQ,EAAE;AAAEJ,QAAAA,KAAK,EAAE;AAAE,OAAC,CAAC;AAC3D,MAAA,IAAI,CAACrC,GAAG,CAAC,CAAA,EAAGwC,OAAO,CAAMN,GAAAA,EAAAA,cAAc,CAAE,CAAA,EAAE7B,QAAQ,EAAER,KAAK,CAACuB,KAAK,EAAE;QAChEH,cAAc;QACdqB,MAAM,EAAE,CAAC,MAAM;AACjB,OAAC,CAAC;AACJ;AACF;;AAEA;AACF;AACA;AACEI,EAAAA,OAAOA,CACLzC,OAAe,EACfI,QAAY,EACZY,cAAkC,EAC5B;IACN,IAAI,CAAC0B,WAAW,CAAC1C,OAAO,EAAEI,QAAQ,EAAEY,cAAc,CAAC;AACrD;;AAEA;AACF;AACA;AACE0B,EAAAA,WAAWA,CACT1C,OAAe,EACfI,QAAY,EACZY,cAAkC,EAC5B;IACN,IAAI,CAACjB,GAAG,CAACC,OAAO,EAAEI,QAAQ,EAAER,KAAK,CAACS,IAAI,EAAE;MACtCW,cAAc;AACd2B,MAAAA,MAAM,EAAE,GAAG;AACXN,MAAAA,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM;AAC1B,KAAC,CAAC;AACJ;;AAEA;AACF;AACA;AACEO,EAAAA,YAAYA,CACV5C,OAAe,EACfI,QAAY,EACZY,cAAkC,EAC5B;IACN,IAAI,CAACjB,GAAG,CAACC,OAAO,EAAEI,QAAQ,EAAER,KAAK,CAACuB,KAAK,EAAE;MACvCH,cAAc;AACd2B,MAAAA,MAAM,EAAE,GAAG;MACXN,MAAM,EAAE,CAAC,OAAO;AAClB,KAAC,CAAC;AACJ;;AAEA;AACF;AACA;AACEQ,EAAAA,IAAIA,CACF5E,cAA8B,EAC9BmC,QAAY,EACZY,cAAkC,EAC5B;IACN,IAAI,CAAC8B,QAAQ,CAAC7E,cAAc,EAAEmC,QAAQ,EAAEY,cAAc,CAAC;AACzD;;AAEA;AACF;AACA;AACE8B,EAAAA,QAAQA,CACN7E,cAA8B,EAC9BmC,QAAY,EACZY,cAAkC,EAC5B;IACN,IAAI,CAACjB,GAAG,CAAC9B,cAAc,EAAEmC,QAAQ,EAAER,KAAK,CAACS,IAAI,EAAE;MAC7CW,cAAc;AACd2B,MAAAA,MAAM,EAAE,GAAG;AACXN,MAAAA,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM;AACxB,KAAC,CAAC;AACJ;;AAEA;AACF;AACA;AACEU,EAAAA,SAASA,CACP9E,cAA8B,EAC9BmC,QAAY,EACZY,cAAkC,EAC5B;IACN,IAAI,CAACjB,GAAG,CAAC9B,cAAc,EAAEmC,QAAQ,EAAER,KAAK,CAACuB,KAAK,EAAE;MAC9CH,cAAc;AACd2B,MAAAA,MAAM,EAAE,GAAG;MACXN,MAAM,EAAE,CAAC,KAAK;AAChB,KAAC,CAAC;AACJ;;AAEA;AACF;AACA;AACEW,EAAAA,IAAIA,CACFhD,OAAgB,EAChBI,QAAY,EACZY,cAAkC,EAClCvD,KAAa,GAAGmC,KAAK,CAACuB,KAAK,EACnB;AACR,IAAA,IAAInB,OAAO,EAAE;MACX,IAAI,CAACD,GAAG,CAACC,OAAO,EAAEI,QAAQ,EAAE3C,KAAK,EAAE;AAAEuD,QAAAA;AAAe,OAAC,CAAC;AACxD;AAEA,IAAA,OAAOH,IAAI,CAACoC,GAAG,EAAE;AACnB;AAEAC,EAAAA,QAAQA,CACNlD,OAAgB,EAChBI,QAAY,EACZY,cAAkC,EAC1B;AACR,IAAA,OAAO,IAAI,CAACgC,IAAI,CAAChD,OAAO,EAAEI,QAAQ,EAAEY,cAAc,EAAEpB,KAAK,CAACS,IAAI,CAAC;AACjE;;AAEA;AACF;AACA;AACA;AACA;AACA;AACE8C,EAAAA,OAAOA,CACLC,SAAiB,EACjBpD,OAAe,EACfI,QAAY,EACZY,cAAkC,EAClCvD,KAAa,GAAGmC,KAAK,CAACuB,KAAK,EAC3Bb,OAAoB,EACd;AACN,IAAA,MAAM2C,GAAG,GAAGpC,IAAI,CAACoC,GAAG,EAAE;AAEtB,IAAA,MAAMI,QAAQ,GAAGJ,GAAG,GAAGG,SAAS;AAChC,IAAA,IAAIE,YAAY;IAEhB,IAAID,QAAQ,GAAG,IAAI,EAAE;MACnBC,YAAY,GAAG,CAAGD,EAAAA,QAAQ,CAAI,EAAA,CAAA;AAChC,KAAC,MAAM;AACL,MAAA,MAAME,OAAO,GAAGF,QAAQ,GAAG,IAAI,GAAGG,IAAI,CAACC,KAAK,CAACJ,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC;AAEjEC,MAAAA,YAAY,GAAG,CAAA,EAAGC,OAAO,GAAG,GAAGA,OAAO,CAAA,MAAA,CAAQ,GAAG,EAAE,GADxCF,QAAQ,GAAGE,OAAO,GAAG,IAAI,CACwB,EAAA,CAAA;AAC9D;AAEA,IAAA,MAAM9C,gBAAgB,GAAG;AACvB,MAAA,GAAGL,QAAQ;MACXkD,YAAY;AACZI,MAAAA,MAAM,EAAEL;KACT;IAED,IAAI,CAACtD,GAAG,CAACC,OAAO,EAAES,gBAAgB,EAAEhD,KAAK,EAAE;AAAE,MAAA,GAAG6C,OAAO;AAAEU,MAAAA;AAAe,KAAC,CAAC;AAC5E;;AAEA;AACF;AACA;EACE2C,WAAWA,CACTX,IAAY,EACZhD,OAAe,EACfI,QAAY,EACZY,cAAkC,EAC5B;AACN,IAAA,IAAI,CAACmC,OAAO,CAACH,IAAI,EAAEhD,OAAO,EAAEI,QAAQ,EAAEY,cAAc,EAAEpB,KAAK,CAACS,IAAI,CAAC;AACnE;;AAEA;AACF;AACA;EACEuD,kBAAkBA,CAChBZ,IAAY,EACZhD,OAAe,EACfI,QAAY,EACZY,cAAkC,EAC5B;AACN,IAAA,IAAI,CAACmC,OAAO,CAACH,IAAI,EAAEhD,OAAO,EAAEI,QAAQ,EAAEY,cAAc,EAAEpB,KAAK,CAACS,IAAI,EAAE;AAChEsC,MAAAA,MAAM,EAAE,GAAG;AACXN,MAAAA,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM;AAC1B,KAAC,CAAC;AACJ;;AAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACEwB,EAAAA,KAAKA,CACHC,EAAM,EACN1D,QAAY,EACZY,cAAiE,EAC3D;AACN,IAAA,MAAMP,gBAAgB,GAAG;AACvB,MAAA,GAAGL,QAAQ;MACX2D,YAAY,EAAED,EAAE,CAACtD;KAClB;IACD,IAAI,CAACT,GAAG,CAAC,OAAO,EAAEU,gBAAgB,EAAEb,KAAK,CAACqB,KAAK,EAAE;AAAED,MAAAA;AAAe,KAAC,CAAC;AACtE;;AAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACEgD,EAAAA,IAAIA,CACFF,EAAM,EACN1D,QAAY,EACZY,cAAiE,EAC3D;AACN,IAAA,MAAMP,gBAAgB,GAAG;AACvB,MAAA,GAAGL,QAAQ;MACX2D,YAAY,EAAED,EAAE,CAACtD;KAClB;IACD,IAAI,CAACT,GAAG,CAAC,MAAM,EAAEU,gBAAgB,EAAEb,KAAK,CAACqB,KAAK,EAAE;AAAED,MAAAA;AAAe,KAAC,CAAC;AACrE;;AAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;EAmBEiD,IAAIA,CACFH,EAAM,EACNI,OAAyB,EACzBC,OAA0C,EAC1CC,QAAqB,EACf;AACN,IAAA,IAAIhE,QAAuB;AAC3B,IAAA,IAAIY,cAA6C;AAEjD,IAAA,IAAI,OAAOkD,OAAO,KAAK,UAAU,EAAE;AACjCE,MAAAA,QAAQ,GAAGF,OAAO;AACpB,KAAC,MAAM;AACL9D,MAAAA,QAAQ,GAAG8D,OAAO;AAElB,MAAA,IAAI,OAAOC,OAAO,KAAK,UAAU,EAAE;AACjCC,QAAAA,QAAQ,GAAGD,OAAO;AACpB,OAAC,MAAM;AACLnD,QAAAA,cAAc,GAAGmD,OAAO;AAC1B;AACF;IAEA,IAAI,CAACN,KAAK,CAACC,EAAE,EAAE1D,QAAQ,EAAEY,cAAc,CAAC;AACvCoD,IAAAA,QAAQ,EAAiB;AAC1B,IAAA,IAAI,CAACJ,IAAI,CAACF,EAAE,CAAC;AACf;AACF;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nightingale-logger",
3
- "version": "15.0.0",
3
+ "version": "16.0.0",
4
4
  "description": "Logger for browser and node",
5
5
  "keywords": [
6
6
  "nightingale"
@@ -15,18 +15,10 @@
15
15
  "homepage": "https://github.com/christophehurpeau/nightingale",
16
16
  "type": "module",
17
17
  "engines": {
18
- "node": ">=18.12.0"
18
+ "node": ">=20.9.0"
19
19
  },
20
- "browserslist": {
21
- "production": [
22
- "defaults",
23
- "> 0.2%",
24
- "not ie < 12",
25
- "not safari < 10",
26
- "not ios_saf < 10"
27
- ]
28
- },
29
- "main": "./dist/index-node18.mjs",
20
+ "sideEffects": false,
21
+ "main": "./dist/index-node20.mjs",
30
22
  "types": "./dist/definitions/index.d.ts",
31
23
  "module": "./dist/index-browser.es.js",
32
24
  "browser": "./dist/index-browser.es.js",
@@ -35,14 +27,13 @@
35
27
  ".": {
36
28
  "types": "./dist/definitions/index.d.ts",
37
29
  "node": {
38
- "import": "./dist/index-node18.mjs"
30
+ "import": "./dist/index-node20.mjs"
39
31
  },
40
32
  "browser": {
41
33
  "import": "./dist/index-browser.es.js"
42
34
  }
43
35
  }
44
36
  },
45
- "sideEffects": false,
46
37
  "files": [
47
38
  "src",
48
39
  "dist"
@@ -53,34 +44,44 @@
53
44
  "clean": "yarn clean:build",
54
45
  "clean:build": "pob-babel-clean-out dist",
55
46
  "lint": "yarn run lint:eslint",
56
- "lint:eslint": "yarn ../.. run eslint --report-unused-disable-directives --resolve-plugins-relative-to . --quiet packages/nightingale-logger",
47
+ "lint:eslint": "yarn ../.. run eslint --quiet packages/nightingale-logger",
57
48
  "test": "yarn ../../ run test -- packages/nightingale-logger",
58
49
  "watch": "yarn clean:build && rollup --config rollup.config.mjs --watch"
59
50
  },
60
- "prettier": "@pob/root/prettier-config",
51
+ "browserslist": {
52
+ "production": [
53
+ "defaults",
54
+ "> 0.2%",
55
+ "not ie < 12",
56
+ "not safari < 10",
57
+ "not ios_saf < 10"
58
+ ]
59
+ },
61
60
  "pob": {
62
- "babelEnvs": [
61
+ "bundler": "rollup-babel",
62
+ "entries": [
63
+ "index"
64
+ ],
65
+ "envs": [
63
66
  {
64
67
  "target": "node",
65
- "version": "18"
68
+ "version": "20"
66
69
  },
67
70
  {
68
71
  "target": "browser"
69
72
  }
70
- ],
71
- "entries": [
72
- "index"
73
73
  ]
74
74
  },
75
+ "prettier": "@pob/root/prettier-config",
75
76
  "dependencies": {
76
- "@types/node": ">=18.0.0",
77
- "nightingale-levels": "15.0.0",
78
- "nightingale-types": "15.0.0"
77
+ "@types/node": ">=20.0.0",
78
+ "nightingale-levels": "16.0.0",
79
+ "nightingale-types": "16.0.0"
79
80
  },
80
81
  "devDependencies": {
81
- "@babel/core": "7.23.6",
82
- "@babel/preset-env": "7.23.6",
83
- "pob-babel": "38.0.0",
84
- "typescript": "5.3.3"
82
+ "@babel/core": "7.26.10",
83
+ "@babel/preset-env": "7.26.9",
84
+ "pob-babel": "43.4.0",
85
+ "typescript": "5.8.2"
85
86
  }
86
87
  }
package/src/index.test.ts CHANGED
@@ -1,15 +1,15 @@
1
1
  // eslint-disable-next-line import/no-extraneous-dependencies
2
- import { jest } from '@jest/globals';
3
- import { Logger } from '.';
2
+ import { jest } from "@jest/globals";
3
+ import { Logger } from ".";
4
4
 
5
- test('key argument', () => {
6
- const key = 'test';
5
+ test("key argument", () => {
6
+ const key = "test";
7
7
  const logger = new Logger(key);
8
8
  expect(logger.key).toBe(key);
9
9
  });
10
10
 
11
- test('extends context', () => {
12
- const key = 'test';
11
+ test("extends context", () => {
12
+ const key = "test";
13
13
  const logger = new Logger(key);
14
14
  const context = { test1: true, test2: false };
15
15
  logger.setContext(context);
@@ -23,20 +23,20 @@ test('extends context', () => {
23
23
  });
24
24
  });
25
25
 
26
- test('extends undefined context', () => {
27
- const key = 'test';
26
+ test("extends undefined context", () => {
27
+ const key = "test";
28
28
  const logger = new Logger(key);
29
29
  expect(logger.getContextObject()).toBe(undefined);
30
30
  expect(() => {
31
31
  logger.extendsContext({ test: true });
32
32
  }).toThrow(
33
- 'Cannot extends context that does not exists. Use setContext(context) first.',
33
+ "Cannot extends context that does not exists. Use setContext(context) first.",
34
34
  );
35
35
  });
36
36
 
37
- test('passing error', () => {
38
- const error = new Error('Test');
39
- const logger = new Logger('test');
37
+ test("passing error", () => {
38
+ const error = new Error("Test");
39
+ const logger = new Logger("test");
40
40
  logger.addRecord = jest.fn();
41
41
  logger.log(error);
42
42
  expect(logger.addRecord).toHaveBeenNthCalledWith(1, {
@@ -45,9 +45,9 @@ test('passing error', () => {
45
45
  datetime: expect.any(Date),
46
46
  displayName: undefined,
47
47
  extra: {},
48
- key: 'test',
48
+ key: "test",
49
49
  level: 200,
50
- message: 'Error: Test',
50
+ message: "Error: Test",
51
51
  metadata: { error },
52
52
  });
53
53
  });
package/src/index.ts CHANGED
@@ -1,17 +1,16 @@
1
- /* eslint-disable max-lines */
2
- import * as util from 'node:util';
3
- import { POB_TARGET } from 'pob-babel';
4
- import { Level } from 'nightingale-levels';
1
+ import * as util from "node:util";
2
+ import { Level } from "nightingale-levels";
5
3
  import type {
4
+ Handler,
5
+ LogRecord,
6
6
  Metadata,
7
7
  MetadataStyles,
8
- Styles,
9
- Handler,
10
8
  Processor,
11
- LogRecord,
12
- } from 'nightingale-types';
9
+ Styles,
10
+ } from "nightingale-types";
11
+ import { POB_TARGET } from "pob-babel";
13
12
 
14
- export { Level } from 'nightingale-levels';
13
+ export { Level } from "nightingale-levels";
15
14
 
16
15
  export interface Options<T extends Metadata> {
17
16
  symbol?: string;
@@ -40,27 +39,27 @@ export interface Config {
40
39
  }
41
40
 
42
41
  declare global {
43
- // eslint-disable-next-line vars-on-top, no-var
42
+ // eslint-disable-next-line no-var
44
43
  var __NIGHTINGALE_CONFIG: Config[];
45
- // eslint-disable-next-line vars-on-top, no-var
44
+ // eslint-disable-next-line no-var
46
45
  var __NIGHTINGALE_LOGGER_MAP_CACHE: Map<string, ComputedConfigForKey>;
47
- // eslint-disable-next-line vars-on-top, no-var
46
+ // eslint-disable-next-line no-var
48
47
  var __NIGHTINGALE_CONFIG_DEFAULT: ComputedConfigForKey;
49
- // eslint-disable-next-line vars-on-top, no-var
48
+ // eslint-disable-next-line no-var
50
49
  var __NIGHTINGALE_GLOBAL_HANDLERS: unknown;
51
- // eslint-disable-next-line vars-on-top, no-var
50
+ // eslint-disable-next-line no-var
52
51
  var __NIGHTINGALE_GET_CONFIG_FOR_LOGGER: (
53
52
  key: string,
54
53
  ) => ComputedConfigForKey;
55
- // eslint-disable-next-line vars-on-top, no-var
54
+ // eslint-disable-next-line no-var
56
55
  var __NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD: (
57
56
  key: string,
58
57
  level: number,
59
58
  ) => ComputedConfigForKey;
60
59
  }
61
60
 
62
- const globalOrWindow: typeof global =
63
- typeof global !== 'undefined' ? global : (window as typeof global);
61
+ const globalOrWindow: typeof globalThis =
62
+ typeof globalThis !== "undefined" ? globalThis : globalThis;
64
63
 
65
64
  if (!globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER) {
66
65
  globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER =
@@ -124,7 +123,7 @@ export class Logger {
124
123
  this.key = key;
125
124
  this.displayName = displayName;
126
125
 
127
- if (process.env.NODE_ENV !== 'production' && key.includes('.')) {
126
+ if (process.env.NODE_ENV !== "production" && key.includes(".")) {
128
127
  throw new Error(
129
128
  `nightingale: \`.\` in key is no longer supported, use \`:\` instead (key: ${key})`,
130
129
  );
@@ -195,7 +194,7 @@ export class Logger {
195
194
  extendsContext(extendedContext: Record<string, unknown>): void {
196
195
  if (this.contextObject === undefined) {
197
196
  throw new Error(
198
- 'Cannot extends context that does not exists. Use setContext(context) first.',
197
+ "Cannot extends context that does not exists. Use setContext(context) first.",
199
198
  );
200
199
  }
201
200
  Object.assign(this.contextObject, extendedContext);
@@ -214,7 +213,7 @@ export class Logger {
214
213
  if (handlers.length === 0) {
215
214
  if (record.level > Level.ERROR) {
216
215
  // eslint-disable-next-line no-console
217
- console.log('[nightingale] no logger for > error level.', {
216
+ console.log("[nightingale] no logger for > error level.", {
218
217
  key: record.key,
219
218
  message: record.message,
220
219
  });
@@ -247,8 +246,7 @@ export class Logger {
247
246
  : messageOrError;
248
247
 
249
248
  const extendedMetadata =
250
- isMessageError &&
251
- !(metadata && Object.prototype.hasOwnProperty.call(metadata, 'error'))
249
+ isMessageError && !(metadata && Object.hasOwn(metadata, "error"))
252
250
  ? { ...metadata, error: messageOrError }
253
251
  : metadata;
254
252
 
@@ -398,15 +396,15 @@ export class Logger {
398
396
  metadata?: T,
399
397
  metadataStyles?: MetadataStyles<T>,
400
398
  ): void {
401
- if (POB_TARGET === 'browser') {
402
- throw new Error('Not supported for the browser. Prefer `debugger;`');
399
+ if (POB_TARGET === "browser") {
400
+ throw new Error("Not supported for the browser. Prefer `debugger;`");
403
401
  } else {
404
402
  // Note: inspect is a special function for node:
405
403
  // https://github.com/nodejs/node/blob/a1bda1b4deb08dfb3e06cb778f0db40023b18318/lib/util.js#L210
406
404
  const inspectedValue = util.inspect(value, { depth: 6 });
407
405
  this.log(inspectedValue, metadata, Level.DEBUG, {
408
406
  metadataStyles,
409
- styles: ['gray'],
407
+ styles: ["gray"],
410
408
  });
411
409
  }
412
410
  }
@@ -420,13 +418,13 @@ export class Logger {
420
418
  metadata?: T,
421
419
  metadataStyles?: MetadataStyles<T>,
422
420
  ): void {
423
- if (POB_TARGET === 'browser') {
424
- throw new Error('Not supported for the browser. Prefer `debugger;`');
421
+ if (POB_TARGET === "browser") {
422
+ throw new Error("Not supported for the browser. Prefer `debugger;`");
425
423
  } else {
426
424
  const inspectedValue = util.inspect(varValue, { depth: 6 });
427
425
  this.log(`${varName} = ${inspectedValue}`, metadata, Level.DEBUG, {
428
426
  metadataStyles,
429
- styles: ['cyan'],
427
+ styles: ["cyan"],
430
428
  });
431
429
  }
432
430
  }
@@ -452,8 +450,8 @@ export class Logger {
452
450
  ): void {
453
451
  this.log(message, metadata, Level.INFO, {
454
452
  metadataStyles,
455
- symbol: '',
456
- styles: ['green', 'bold'],
453
+ symbol: "",
454
+ styles: ["green", "bold"],
457
455
  });
458
456
  }
459
457
 
@@ -467,8 +465,8 @@ export class Logger {
467
465
  ): void {
468
466
  this.log(message, metadata, Level.DEBUG, {
469
467
  metadataStyles,
470
- symbol: '',
471
- styles: ['green'],
468
+ symbol: "",
469
+ styles: ["green"],
472
470
  });
473
471
  }
474
472
 
@@ -493,8 +491,8 @@ export class Logger {
493
491
  ): void {
494
492
  this.log(messageOrError, metadata, Level.INFO, {
495
493
  metadataStyles,
496
- symbol: '',
497
- styles: ['red', 'bold'],
494
+ symbol: "",
495
+ styles: ["red", "bold"],
498
496
  });
499
497
  }
500
498
 
@@ -508,8 +506,8 @@ export class Logger {
508
506
  ): void {
509
507
  this.log(messageOrError, metadata, Level.DEBUG, {
510
508
  metadataStyles,
511
- symbol: '',
512
- styles: ['red'],
509
+ symbol: "",
510
+ styles: ["red"],
513
511
  });
514
512
  }
515
513
 
@@ -561,7 +559,7 @@ export class Logger {
561
559
  } else {
562
560
  const seconds = diffTime > 1000 ? Math.floor(diffTime / 1000) : 0;
563
561
  const ms = diffTime - seconds * 1000;
564
- readableTime = `${seconds ? `${seconds}s and ` : ''}${ms}ms`;
562
+ readableTime = `${seconds ? `${seconds}s and ` : ""}${ms}ms`;
565
563
  }
566
564
 
567
565
  const extendedMetadata = {
@@ -595,8 +593,8 @@ export class Logger {
595
593
  metadataStyles?: MetadataStyles<T>,
596
594
  ): void {
597
595
  this.timeEnd(time, message, metadata, metadataStyles, Level.INFO, {
598
- symbol: '',
599
- styles: ['green', 'bold'],
596
+ symbol: "",
597
+ styles: ["green", "bold"],
600
598
  });
601
599
  }
602
600
 
@@ -623,7 +621,7 @@ export class Logger {
623
621
  ...metadata,
624
622
  functionName: fn.name,
625
623
  };
626
- this.log('enter', extendedMetadata, Level.TRACE, { metadataStyles });
624
+ this.log("enter", extendedMetadata, Level.TRACE, { metadataStyles });
627
625
  }
628
626
 
629
627
  /**
@@ -649,7 +647,7 @@ export class Logger {
649
647
  ...metadata,
650
648
  functionName: fn.name,
651
649
  };
652
- this.log('exit', extendedMetadata, Level.TRACE, { metadataStyles });
650
+ this.log("exit", extendedMetadata, Level.TRACE, { metadataStyles });
653
651
  }
654
652
 
655
653
  /**
@@ -694,12 +692,12 @@ export class Logger {
694
692
  let metadata: T | undefined;
695
693
  let metadataStyles: MetadataStyles<T> | undefined;
696
694
 
697
- if (typeof option1 === 'function') {
695
+ if (typeof option1 === "function") {
698
696
  callback = option1;
699
697
  } else {
700
698
  metadata = option1;
701
699
 
702
- if (typeof option2 === 'function') {
700
+ if (typeof option2 === "function") {
703
701
  callback = option2;
704
702
  } else {
705
703
  metadataStyles = option2;
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-node18.mjs","sources":["../src/index.ts"],"sourcesContent":["/* eslint-disable max-lines */\nimport * as util from 'node:util';\nimport { POB_TARGET } from 'pob-babel';\nimport { Level } from 'nightingale-levels';\nimport type {\n Metadata,\n MetadataStyles,\n Styles,\n Handler,\n Processor,\n LogRecord,\n} from 'nightingale-types';\n\nexport { Level } from 'nightingale-levels';\n\nexport interface Options<T extends Metadata> {\n symbol?: string;\n metadataStyles?: MetadataStyles<T>;\n styles?: Styles;\n}\n\nexport interface ComputedConfigForKey {\n handlers: Handler[];\n processors: Processor[];\n}\n\nexport interface ExtendedFunctionNameMetadata {\n functionName: string;\n}\n\nexport interface Config {\n handler?: Handler;\n handlers?: Handler[];\n key?: string;\n keys?: string[];\n pattern?: RegExp;\n processor?: Processor;\n processors?: Processor[];\n stop?: boolean;\n}\n\ndeclare global {\n // eslint-disable-next-line vars-on-top, no-var\n var __NIGHTINGALE_CONFIG: Config[];\n // eslint-disable-next-line vars-on-top, no-var\n var __NIGHTINGALE_LOGGER_MAP_CACHE: Map<string, ComputedConfigForKey>;\n // eslint-disable-next-line vars-on-top, no-var\n var __NIGHTINGALE_CONFIG_DEFAULT: ComputedConfigForKey;\n // eslint-disable-next-line vars-on-top, no-var\n var __NIGHTINGALE_GLOBAL_HANDLERS: unknown;\n // eslint-disable-next-line vars-on-top, no-var\n var __NIGHTINGALE_GET_CONFIG_FOR_LOGGER: (\n key: string,\n ) => ComputedConfigForKey;\n // eslint-disable-next-line vars-on-top, no-var\n var __NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD: (\n key: string,\n level: number,\n ) => ComputedConfigForKey;\n}\n\nconst globalOrWindow: typeof global =\n typeof global !== 'undefined' ? global : (window as typeof global);\n\nif (!globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER) {\n globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER =\n (): ComputedConfigForKey => ({\n handlers: [],\n processors: [],\n });\n}\n\nif (!globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD) {\n globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD = (\n key: string,\n level: Level,\n ): ComputedConfigForKey => {\n const { handlers, processors }: ComputedConfigForKey =\n globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER(key);\n\n return {\n handlers: handlers.filter(\n (handler) =>\n level >= handler.minLevel &&\n (!handler.isHandling || handler.isHandling(level, key)),\n ),\n processors,\n };\n };\n}\n\nfunction getConfigForLoggerRecord(\n key: string,\n recordLevel: Level,\n): ComputedConfigForKey {\n return globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD(\n key,\n recordLevel,\n );\n}\n\nfunction isError(messageOrError: Error | string): messageOrError is Error {\n return messageOrError instanceof Error;\n}\n\n/**\n * Interface that allows you to log records.\n * This records are treated by handlers\n */\nexport class Logger {\n private contextObject?: Record<string, unknown>;\n\n readonly key: string;\n\n readonly displayName?: string;\n\n /**\n * Create a new Logger\n *\n * @param {string} key\n * @param {string} [displayName]\n */\n constructor(key: string, displayName?: string) {\n this.key = key;\n this.displayName = displayName;\n\n if (process.env.NODE_ENV !== 'production' && key.includes('.')) {\n throw new Error(\n `nightingale: \\`.\\` in key is no longer supported, use \\`:\\` instead (key: ${key})`,\n );\n }\n }\n\n /** @private */\n protected getHandlersAndProcessors(\n recordLevel: number,\n ): ComputedConfigForKey {\n return getConfigForLoggerRecord(this.key, recordLevel);\n }\n\n /** @private */\n getConfig(): Readonly<ComputedConfigForKey> {\n return globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER(this.key);\n }\n\n /**\n * Create a child logger\n */\n child(childSuffixKey: string, childDisplayName?: string): Logger {\n return new Logger(`${this.key}:${childSuffixKey}`, childDisplayName);\n }\n\n /**\n * Create a new Logger with the same key a this attached context\n *\n * @example\n * ```typescript\n * const loggerMyService = new Logger('app:myService');\n * function someAction(arg1) {\n * const logger = loggerMyService.context({ arg1 });\n * logger.enter(someAction);\n * // do stuff\n * logger.info('info');\n * // do stuff\n * logger.exit(someAction);\n * }\n * ```\n *\n */\n context(context: Record<string, unknown>): Logger {\n const logger = new Logger(this.key);\n logger.setContext(context);\n return logger;\n }\n\n /**\n * Get the context of this logger\n */\n getContextObject(): Readonly<Record<string, unknown>> | undefined {\n return this.contextObject;\n }\n\n /**\n * Set the context of this logger\n *\n * @param {Object} context\n */\n setContext(context: Record<string, unknown>): void {\n this.contextObject = context;\n }\n\n /**\n * Extends existing context of this logger\n */\n extendsContext(extendedContext: Record<string, unknown>): void {\n if (this.contextObject === undefined) {\n throw new Error(\n 'Cannot extends context that does not exists. Use setContext(context) first.',\n );\n }\n Object.assign(this.contextObject, extendedContext);\n }\n\n /**\n * Handle a record\n *\n * Use this only if you know what you are doing.\n */\n addRecord<T extends Metadata>(record: Readonly<LogRecord<T>>): void {\n const { handlers, processors } = this.getHandlersAndProcessors(\n record.level,\n );\n\n if (handlers.length === 0) {\n if (record.level > Level.ERROR) {\n // eslint-disable-next-line no-console\n console.log('[nightingale] no logger for > error level.', {\n key: record.key,\n message: record.message,\n });\n }\n return;\n }\n\n if (processors) {\n processors.forEach((process) => {\n process(record, record.context);\n });\n }\n\n handlers.some((handler) => handler.handle(record) === false);\n }\n\n /**\n * Log a message\n */\n log<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n level: Level = Level.INFO,\n options?: Options<T>,\n ): void {\n const isMessageError = isError(messageOrError);\n\n const message = isMessageError\n ? `${messageOrError.name}: ${messageOrError.message}`\n : messageOrError;\n\n const extendedMetadata =\n isMessageError &&\n !(metadata && Object.prototype.hasOwnProperty.call(metadata, 'error'))\n ? { ...metadata, error: messageOrError }\n : metadata;\n\n const context = extendedMetadata?.context;\n if (extendedMetadata) {\n delete extendedMetadata.context;\n }\n\n const record: LogRecord<NonNullable<typeof extendedMetadata>> = {\n level,\n key: this.key,\n displayName: this.displayName,\n datetime: new Date(),\n message,\n context: context || this.contextObject,\n metadata: extendedMetadata as NonNullable<typeof extendedMetadata>,\n extra: {},\n ...options,\n };\n this.addRecord(record);\n }\n\n /**\n * Log a trace message\n */\n trace<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.TRACE, { metadataStyles });\n }\n\n /**\n * Log a debug message\n */\n debug<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.DEBUG, { metadataStyles });\n }\n\n /**\n * Notice an info message\n */\n notice<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.NOTICE, { metadataStyles });\n }\n\n /**\n * Log an info message\n */\n info<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.INFO, { metadataStyles });\n }\n\n /**\n * Log a warn message\n */\n warn<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.WARN, { metadataStyles });\n }\n\n /**\n * Log an error message\n *\n * @example\n * ```typescript\n * const logger = new Logger('something');\n * try {\n * throw new Error('Always throws here');\n * } catch (error) {\n * logger.error('caught error', { error });\n * }\n * ```\n */\n error<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.ERROR, { metadataStyles });\n }\n\n /**\n * Log an critical message\n */\n critical<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.CRITICAL, { metadataStyles });\n }\n\n /**\n * Log a fatal message\n *\n * @example\n * ```typescript\n * const logger = new Logger('something');\n * try {\n * throw new Error('Always throws here');\n * } catch (error) {\n * logger.error('caught error', { error });\n * process.exit(1);\n * }\n */\n fatal<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.FATAL, { metadataStyles });\n }\n\n /**\n * Log an alert message\n */\n alert<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.ALERT, { metadataStyles });\n }\n\n /**\n * Log an inspected value\n */\n inspectValue<T extends Metadata>(\n value: unknown,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n if (POB_TARGET === 'browser') {\n throw new Error('Not supported for the browser. Prefer `debugger;`');\n } else {\n // Note: inspect is a special function for node:\n // https://github.com/nodejs/node/blob/a1bda1b4deb08dfb3e06cb778f0db40023b18318/lib/util.js#L210\n const inspectedValue = util.inspect(value, { depth: 6 });\n this.log(inspectedValue, metadata, Level.DEBUG, {\n metadataStyles,\n styles: ['gray'],\n });\n }\n }\n\n /**\n * Log a debugged var\n */\n inspectVar<T extends Metadata>(\n varName: string,\n varValue: unknown,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n if (POB_TARGET === 'browser') {\n throw new Error('Not supported for the browser. Prefer `debugger;`');\n } else {\n const inspectedValue = util.inspect(varValue, { depth: 6 });\n this.log(`${varName} = ${inspectedValue}`, metadata, Level.DEBUG, {\n metadataStyles,\n styles: ['cyan'],\n });\n }\n }\n\n /**\n * Alias for infoSuccess\n */\n success<T extends Metadata>(\n message: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.infoSuccess(message, metadata, metadataStyles);\n }\n\n /**\n * Log an info success message\n */\n infoSuccess<T extends Metadata>(\n message: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(message, metadata, Level.INFO, {\n metadataStyles,\n symbol: '✔',\n styles: ['green', 'bold'],\n });\n }\n\n /**\n * Log an debug success message\n */\n debugSuccess<T extends Metadata>(\n message: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(message, metadata, Level.DEBUG, {\n metadataStyles,\n symbol: '✔',\n styles: ['green'],\n });\n }\n\n /**\n * Alias for infoFail\n */\n fail<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.infoFail(messageOrError, metadata, metadataStyles);\n }\n\n /**\n * Log an info fail message\n */\n infoFail<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.INFO, {\n metadataStyles,\n symbol: '✖',\n styles: ['red', 'bold'],\n });\n }\n\n /**\n * Log an debug fail message\n */\n debugFail<T extends Metadata>(\n messageOrError: Error | string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.log(messageOrError, metadata, Level.DEBUG, {\n metadataStyles,\n symbol: '✖',\n styles: ['red'],\n });\n }\n\n /**\n * @returns {number} time to pass to timeEnd\n */\n time<T extends Metadata>(\n message?: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n level: number = Level.DEBUG,\n ): number {\n if (message) {\n this.log(message, metadata, level, { metadataStyles });\n }\n\n return Date.now();\n }\n\n infoTime<T extends Metadata>(\n message?: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): number {\n return this.time(message, metadata, metadataStyles, Level.INFO);\n }\n\n /**\n * Finds difference between when this method\n * was called and when the respective time method\n * was called, then logs out the difference\n * and deletes the original record\n */\n timeEnd<T extends Metadata>(\n startTime: number,\n message: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n level: number = Level.DEBUG,\n options?: Options<T>,\n ): void {\n const now = Date.now();\n\n const diffTime = now - startTime;\n let readableTime;\n\n if (diffTime < 1000) {\n readableTime = `${diffTime}ms`;\n } else {\n const seconds = diffTime > 1000 ? Math.floor(diffTime / 1000) : 0;\n const ms = diffTime - seconds * 1000;\n readableTime = `${seconds ? `${seconds}s and ` : ''}${ms}ms`;\n }\n\n const extendedMetadata = {\n ...metadata,\n readableTime,\n timeMs: diffTime,\n };\n\n this.log(message, extendedMetadata, level, { ...options, metadataStyles });\n }\n\n /**\n * Like timeEnd, but with INFO level\n */\n infoTimeEnd<T extends Metadata>(\n time: number,\n message: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.timeEnd(time, message, metadata, metadataStyles, Level.INFO);\n }\n\n /**\n * Like timeEnd, but with INFO level\n */\n infoSuccessTimeEnd<T extends Metadata>(\n time: number,\n message: string,\n metadata?: T,\n metadataStyles?: MetadataStyles<T>,\n ): void {\n this.timeEnd(time, message, metadata, metadataStyles, Level.INFO, {\n symbol: '✔',\n styles: ['green', 'bold'],\n });\n }\n\n /**\n * Log an enter in a function\n *\n * @example\n * ```typescript\n * class A {\n * method(arg1) {\n * logger.enter(method, { arg1 });\n * // Do your stuff\n * }\n * }\n * ```\n *\n */\n enter<T extends Metadata, Fn extends (...args: unknown[]) => unknown>(\n fn: Fn,\n metadata?: T,\n metadataStyles?: MetadataStyles<ExtendedFunctionNameMetadata & T>,\n ): void {\n const extendedMetadata = {\n ...metadata,\n functionName: fn.name,\n };\n this.log('enter', extendedMetadata, Level.TRACE, { metadataStyles });\n }\n\n /**\n * Log an exit in a function\n *\n * @example\n * ```typescript\n * const logger = new Logger('myNamespace:A');\n * class A {\n * method(arg1) {\n * // Do your stuff\n * logger.exit(method, { arg1 });\n * }\n * }\n * ```\n */\n exit<T extends Metadata, Fn extends (...args: unknown[]) => unknown>(\n fn: Fn,\n metadata?: T,\n metadataStyles?: MetadataStyles<ExtendedFunctionNameMetadata & T>,\n ): void {\n const extendedMetadata = {\n ...metadata,\n functionName: fn.name,\n };\n this.log('exit', extendedMetadata, Level.TRACE, { metadataStyles });\n }\n\n /**\n * Wrap around a function to log enter and exit of a function\n *\n * @example\n * ```typescript\n * const logger = new Logger('myNamespace:A');\n * class A {\n * method() {\n * logger.wrap(method, () => {\n * // Do your stuff\n * });\n * }\n * }\n * ```\n */\n wrap<Fn extends (...args: unknown[]) => unknown>(\n fn: Fn,\n callback: () => void,\n ): void;\n\n wrap<T extends Metadata, Fn extends (...args: unknown[]) => unknown>(\n fn: Fn,\n metadata: T,\n callback: () => void,\n ): void;\n\n wrap<T extends Metadata, Fn extends (...args: unknown[]) => unknown>(\n fn: Fn,\n metadata: T,\n metadataStyles: MetadataStyles<T>,\n callback: () => void,\n ): void;\n\n wrap<T extends Metadata, Fn extends (...args: unknown[]) => unknown>(\n fn: Fn,\n option1: T | (() => void),\n option2?: MetadataStyles<T> | (() => void),\n callback?: () => void,\n ): void {\n let metadata: T | undefined;\n let metadataStyles: MetadataStyles<T> | undefined;\n\n if (typeof option1 === 'function') {\n callback = option1;\n } else {\n metadata = option1;\n\n if (typeof option2 === 'function') {\n callback = option2;\n } else {\n metadataStyles = option2;\n }\n }\n\n this.enter(fn, metadata, metadataStyles);\n (callback as () => void)();\n this.exit(fn);\n }\n}\n"],"names":["globalOrWindow","global","window","__NIGHTINGALE_GET_CONFIG_FOR_LOGGER","handlers","processors","__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD","key","level","filter","handler","minLevel","isHandling","getConfigForLoggerRecord","recordLevel","isError","messageOrError","Error","Logger","constructor","displayName","process","env","NODE_ENV","includes","getHandlersAndProcessors","getConfig","child","childSuffixKey","childDisplayName","context","logger","setContext","getContextObject","contextObject","extendsContext","extendedContext","undefined","Object","assign","addRecord","record","length","Level","ERROR","console","log","message","forEach","some","handle","metadata","INFO","options","isMessageError","name","extendedMetadata","prototype","hasOwnProperty","call","error","datetime","Date","extra","trace","metadataStyles","TRACE","debug","DEBUG","notice","NOTICE","info","warn","WARN","critical","CRITICAL","fatal","FATAL","alert","ALERT","inspectValue","value","inspectedValue","util","inspect","depth","styles","inspectVar","varName","varValue","success","infoSuccess","symbol","debugSuccess","fail","infoFail","debugFail","time","now","infoTime","timeEnd","startTime","diffTime","readableTime","seconds","Math","floor","timeMs","infoTimeEnd","infoSuccessTimeEnd","enter","fn","functionName","exit","wrap","option1","option2","callback"],"mappings":"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"}
@@ -1,30 +0,0 @@
1
- {
2
- "root": true,
3
- "parser": "@typescript-eslint/parser",
4
- "parserOptions": {
5
- "project": "packages/nightingale-logger/tsconfig.json"
6
- },
7
- "plugins": ["@typescript-eslint"],
8
- "extends": ["@pob/eslint-config-typescript"],
9
- "ignorePatterns": ["*.d.ts"],
10
- "rules": {
11
- "@typescript-eslint/max-params": "warn"
12
- },
13
- "overrides": [
14
- {
15
- "files": ["**/*.test.ts", "__tests__/**/*.ts"],
16
- "extends": ["@pob/eslint-config-typescript/test"],
17
- "env": {
18
- "jest": true
19
- },
20
- "rules": {
21
- "import/no-extraneous-dependencies": [
22
- "error",
23
- {
24
- "devDependencies": true
25
- }
26
- ]
27
- }
28
- }
29
- ]
30
- }