nightingale 13.0.0 → 14.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,34 @@
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
+ ## [14.0.1](https://github.com/christophehurpeau/nightingale/compare/v14.0.0...v14.0.1) (2023-06-30)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * add missing type in exports for latest typescript ([8897fd6](https://github.com/christophehurpeau/nightingale/commit/8897fd6fcbd25975482fd1549277b73ed725e53c))
12
+
13
+
14
+
15
+ ## [14.0.0](https://github.com/christophehurpeau/nightingale/compare/v13.0.0...v14.0.0) (2023-06-30)
16
+
17
+
18
+ ### ⚠ BREAKING CHANGES
19
+
20
+ * **deps:** require node 18
21
+ * requires node 18
22
+
23
+ ### Features
24
+
25
+ * requires node 18 ([4452b11](https://github.com/christophehurpeau/nightingale/commit/4452b116188e58c293be85e462e04922f7ad51f0))
26
+
27
+
28
+ ### Miscellaneous Chores
29
+
30
+ * **deps:** update dependency @pob/root to v8 ([#760](https://github.com/christophehurpeau/nightingale/issues/760)) ([22dc3cc](https://github.com/christophehurpeau/nightingale/commit/22dc3cceabdfd465d04ee36fec8fdac31febab69))
31
+
32
+
33
+
6
34
  # [13.0.0](https://github.com/christophehurpeau/nightingale/compare/v12.1.4...v13.0.0) (2022-11-19)
7
35
 
8
36
 
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAwB,MAAM,EAAE,MAAM,oBAAoB,CAAC;AA+DvE,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAQhD;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,UAAQ,GAAG,IAAI,CAI/D"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAwB,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAkEvE,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAQhD;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,UAAQ,GAAG,IAAI,CAI/D"}
@@ -3,7 +3,7 @@ export { Logger } from 'nightingale-logger';
3
3
  export { Level, Level as levels } from 'nightingale-levels';
4
4
 
5
5
  var globalOrWindow = typeof global !== 'undefined' ? global : window;
6
- if (process.env.NODE_ENV !== "production" && globalOrWindow.__NIGHTINGALE_GLOBAL_HANDLERS) {
6
+ if (process.env.NODE_ENV !== 'production' && globalOrWindow.__NIGHTINGALE_GLOBAL_HANDLERS) {
7
7
  throw new Error('nightingale: update all to ^5.0.0');
8
8
  }
9
9
  if (!globalOrWindow.__NIGHTINGALE_CONFIG) {
@@ -1 +1 @@
1
- {"version":3,"file":"index-browser.es.js","sources":["../src/config.ts","../src/index.ts"],"sourcesContent":["import type { ComputedConfigForKey, Config } from 'nightingale-logger';\nimport type { Handler } from 'nightingale-types';\n\nconst globalOrWindow: typeof global =\n typeof global !== 'undefined' ? global : (window as typeof global);\n\nif (__DEV__ && globalOrWindow.__NIGHTINGALE_GLOBAL_HANDLERS) {\n throw new Error('nightingale: update all to ^5.0.0');\n}\n\nif (!globalOrWindow.__NIGHTINGALE_CONFIG) {\n globalOrWindow.__NIGHTINGALE_CONFIG = [];\n globalOrWindow.__NIGHTINGALE_LOGGER_MAP_CACHE = new Map<\n string,\n ComputedConfigForKey\n >();\n globalOrWindow.__NIGHTINGALE_CONFIG_DEFAULT = {\n handlers: [],\n processors: [],\n };\n}\n\nfunction clearCache(): void {\n globalOrWindow.__NIGHTINGALE_LOGGER_MAP_CACHE.clear();\n}\n\nfunction handleConfig(config: Config): Config {\n if (config.keys) {\n if (config.pattern) {\n throw new Error('Cannot have key and pattern for the same config');\n }\n if (config.key) {\n throw new Error('Cannot have key and keys for the same config');\n }\n } else if (config.key) {\n if (config.pattern) {\n throw new Error('Cannot have key and pattern for the same config');\n }\n config.keys = [config.key];\n delete config.key;\n }\n\n if (config.handler) {\n if (config.handlers) {\n throw new Error('Cannot have handler and handlers for the same config');\n }\n config.handlers = [config.handler];\n delete config.handler;\n }\n\n if (config.processor) {\n if (config.processors) {\n throw new Error(\n 'Cannot have processors and processors for the same config',\n );\n }\n config.processors = [config.processor];\n delete config.processor;\n }\n\n return config;\n}\n\nexport function configure(config: Config[]): void {\n if (globalOrWindow.__NIGHTINGALE_CONFIG.length > 0) {\n // eslint-disable-next-line no-console\n console.log('nightingale: warning: config overridden');\n }\n\n clearCache();\n globalOrWindow.__NIGHTINGALE_CONFIG = config.map(handleConfig);\n}\n\nexport function addConfig(config: Config, unshift = false): void {\n config = handleConfig(config);\n globalOrWindow.__NIGHTINGALE_CONFIG[unshift ? 'unshift' : 'push'](config);\n clearCache();\n}\n\nconst configIsForKey = (key: string) => (config: Config) => {\n if (config.keys) return config.keys.includes(key);\n if (config.pattern) return config.pattern.test(key);\n return true;\n};\n\nglobalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER = (\n key: string,\n): ComputedConfigForKey => {\n const globalCache = globalOrWindow.__NIGHTINGALE_LOGGER_MAP_CACHE;\n\n const existingCache = globalCache.get(key);\n\n if (existingCache) {\n return existingCache;\n }\n\n const loggerConfig: ComputedConfigForKey = {\n handlers: [],\n processors: [],\n };\n\n globalOrWindow.__NIGHTINGALE_CONFIG\n .filter(configIsForKey(key))\n .some((config: Config) => {\n if (config.handlers) loggerConfig.handlers.push(...config.handlers);\n if (config.processors) loggerConfig.processors.push(...config.processors);\n return config.stop;\n });\n\n globalCache.set(key, loggerConfig);\n return loggerConfig;\n};\n\nif (globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD) {\n globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD = (\n key: string,\n level: number,\n ): ComputedConfigForKey => {\n const { handlers, processors }: ComputedConfigForKey =\n globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER(key);\n\n return {\n handlers: handlers.filter(\n (handler: Handler) =>\n level >= handler.minLevel &&\n (!handler.isHandling || handler.isHandling(level, key)),\n ),\n processors,\n };\n };\n}\n","import { Logger } from 'nightingale-logger';\n\nexport { Logger } from 'nightingale-logger';\nexport { Level, Level as levels } from 'nightingale-levels';\nexport { configure, addConfig } from './config';\n\n/**\n * listen to uncaughtException and unhandledRejection\n * @param {Logger} [logger]\n */\nexport function listenUnhandledErrors(\n logger: Logger = new Logger(\n 'nightingale:listenUnhandledErrors',\n 'UnhandledErrors',\n ),\n): void {\n process.on('uncaughtException', (error) => {\n logger.error('uncaughtException', { error, unhandled: true });\n });\n process.on('unhandledRejection', (error) => {\n logger.error('unhandledRejection', { error, unhandled: true });\n });\n}\n"],"names":["globalOrWindow","global","window","__NIGHTINGALE_GLOBAL_HANDLERS","Error","__NIGHTINGALE_CONFIG","__NIGHTINGALE_LOGGER_MAP_CACHE","Map","__NIGHTINGALE_CONFIG_DEFAULT","handlers","processors","clearCache","clear","handleConfig","config","keys","pattern","key","handler","processor","configure","length","console","log","map","addConfig","unshift","configIsForKey","includes","test","__NIGHTINGALE_GET_CONFIG_FOR_LOGGER","globalCache","existingCache","get","loggerConfig","filter","some","push","stop","set","__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD","level","minLevel","isHandling","listenUnhandledErrors","logger","Logger","process","on","error","unhandled"],"mappings":"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"}
1
+ {"version":3,"file":"index-browser.es.js","sources":["../src/config.ts","../src/index.ts"],"sourcesContent":["import type { ComputedConfigForKey, Config } from 'nightingale-logger';\nimport type { Handler, Level } from 'nightingale-types';\n\nconst globalOrWindow: typeof global =\n typeof global !== 'undefined' ? global : (window as typeof global);\n\nif (\n process.env.NODE_ENV !== 'production' &&\n globalOrWindow.__NIGHTINGALE_GLOBAL_HANDLERS\n) {\n throw new Error('nightingale: update all to ^5.0.0');\n}\n\nif (!globalOrWindow.__NIGHTINGALE_CONFIG) {\n globalOrWindow.__NIGHTINGALE_CONFIG = [];\n globalOrWindow.__NIGHTINGALE_LOGGER_MAP_CACHE = new Map<\n string,\n ComputedConfigForKey\n >();\n globalOrWindow.__NIGHTINGALE_CONFIG_DEFAULT = {\n handlers: [],\n processors: [],\n };\n}\n\nfunction clearCache(): void {\n globalOrWindow.__NIGHTINGALE_LOGGER_MAP_CACHE.clear();\n}\n\nfunction handleConfig(config: Config): Config {\n if (config.keys) {\n if (config.pattern) {\n throw new Error('Cannot have key and pattern for the same config');\n }\n if (config.key) {\n throw new Error('Cannot have key and keys for the same config');\n }\n } else if (config.key) {\n if (config.pattern) {\n throw new Error('Cannot have key and pattern for the same config');\n }\n config.keys = [config.key];\n delete config.key;\n }\n\n if (config.handler) {\n if (config.handlers) {\n throw new Error('Cannot have handler and handlers for the same config');\n }\n config.handlers = [config.handler];\n delete config.handler;\n }\n\n if (config.processor) {\n if (config.processors) {\n throw new Error(\n 'Cannot have processors and processors for the same config',\n );\n }\n config.processors = [config.processor];\n delete config.processor;\n }\n\n return config;\n}\n\nexport function configure(config: Config[]): void {\n if (globalOrWindow.__NIGHTINGALE_CONFIG.length > 0) {\n // eslint-disable-next-line no-console\n console.log('nightingale: warning: config overridden');\n }\n\n clearCache();\n globalOrWindow.__NIGHTINGALE_CONFIG = config.map(handleConfig);\n}\n\nexport function addConfig(config: Config, unshift = false): void {\n config = handleConfig(config);\n globalOrWindow.__NIGHTINGALE_CONFIG[unshift ? 'unshift' : 'push'](config);\n clearCache();\n}\n\nconst configIsForKey = (key: string) => (config: Config) => {\n if (config.keys) return config.keys.includes(key);\n if (config.pattern) return config.pattern.test(key);\n return true;\n};\n\nglobalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER = (\n key: string,\n): ComputedConfigForKey => {\n const globalCache = globalOrWindow.__NIGHTINGALE_LOGGER_MAP_CACHE;\n\n const existingCache = globalCache.get(key);\n\n if (existingCache) {\n return existingCache;\n }\n\n const loggerConfig: ComputedConfigForKey = {\n handlers: [],\n processors: [],\n };\n\n globalOrWindow.__NIGHTINGALE_CONFIG\n .filter(configIsForKey(key))\n .some((config: Config) => {\n if (config.handlers) loggerConfig.handlers.push(...config.handlers);\n if (config.processors) loggerConfig.processors.push(...config.processors);\n return config.stop;\n });\n\n globalCache.set(key, loggerConfig);\n return loggerConfig;\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: Handler) =>\n level >= handler.minLevel &&\n (!handler.isHandling || handler.isHandling(level, key)),\n ),\n processors,\n };\n };\n}\n","import { Logger } from 'nightingale-logger';\n\nexport { Logger } from 'nightingale-logger';\nexport { Level, Level as levels } from 'nightingale-levels';\nexport { configure, addConfig } from './config';\n\n/**\n * listen to uncaughtException and unhandledRejection\n * @param {Logger} [logger]\n */\nexport function listenUnhandledErrors(\n logger: Logger = new Logger(\n 'nightingale:listenUnhandledErrors',\n 'UnhandledErrors',\n ),\n): void {\n process.on('uncaughtException', (error) => {\n logger.error('uncaughtException', { error, unhandled: true });\n });\n process.on('unhandledRejection', (error) => {\n logger.error('unhandledRejection', { error, unhandled: true });\n });\n}\n"],"names":["globalOrWindow","global","window","process","env","NODE_ENV","__NIGHTINGALE_GLOBAL_HANDLERS","Error","__NIGHTINGALE_CONFIG","__NIGHTINGALE_LOGGER_MAP_CACHE","Map","__NIGHTINGALE_CONFIG_DEFAULT","handlers","processors","clearCache","clear","handleConfig","config","keys","pattern","key","handler","processor","configure","length","console","log","map","addConfig","unshift","configIsForKey","includes","test","__NIGHTINGALE_GET_CONFIG_FOR_LOGGER","globalCache","existingCache","get","loggerConfig","filter","some","_loggerConfig$handler","_loggerConfig$process","push","apply","stop","set","__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD","level","_globalOrWindow$__NIG","minLevel","isHandling","listenUnhandledErrors","logger","Logger","on","error","unhandled"],"mappings":";;;;AAGA,IAAMA,cAA6B,GACjC,OAAOC,MAAM,KAAK,WAAW,GAAGA,MAAM,GAAIC,MAAwB,CAAA;AAEpE,IACEC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,IACrCL,cAAc,CAACM,6BAA6B,EAC5C;AACA,EAAA,MAAM,IAAIC,KAAK,CAAC,mCAAmC,CAAC,CAAA;AACtD,CAAA;AAEA,IAAI,CAACP,cAAc,CAACQ,oBAAoB,EAAE;EACxCR,cAAc,CAACQ,oBAAoB,GAAG,EAAE,CAAA;AACxCR,EAAAA,cAAc,CAACS,8BAA8B,GAAG,IAAIC,GAAG,EAGpD,CAAA;EACHV,cAAc,CAACW,4BAA4B,GAAG;AAC5CC,IAAAA,QAAQ,EAAE,EAAE;AACZC,IAAAA,UAAU,EAAE,EAAA;GACb,CAAA;AACH,CAAA;AAEA,SAASC,UAAUA,GAAS;AAC1Bd,EAAAA,cAAc,CAACS,8BAA8B,CAACM,KAAK,EAAE,CAAA;AACvD,CAAA;AAEA,SAASC,YAAYA,CAACC,MAAc,EAAU;EAC5C,IAAIA,MAAM,CAACC,IAAI,EAAE;IACf,IAAID,MAAM,CAACE,OAAO,EAAE;AAClB,MAAA,MAAM,IAAIZ,KAAK,CAAC,iDAAiD,CAAC,CAAA;AACpE,KAAA;IACA,IAAIU,MAAM,CAACG,GAAG,EAAE;AACd,MAAA,MAAM,IAAIb,KAAK,CAAC,8CAA8C,CAAC,CAAA;AACjE,KAAA;AACF,GAAC,MAAM,IAAIU,MAAM,CAACG,GAAG,EAAE;IACrB,IAAIH,MAAM,CAACE,OAAO,EAAE;AAClB,MAAA,MAAM,IAAIZ,KAAK,CAAC,iDAAiD,CAAC,CAAA;AACpE,KAAA;AACAU,IAAAA,MAAM,CAACC,IAAI,GAAG,CAACD,MAAM,CAACG,GAAG,CAAC,CAAA;IAC1B,OAAOH,MAAM,CAACG,GAAG,CAAA;AACnB,GAAA;EAEA,IAAIH,MAAM,CAACI,OAAO,EAAE;IAClB,IAAIJ,MAAM,CAACL,QAAQ,EAAE;AACnB,MAAA,MAAM,IAAIL,KAAK,CAAC,sDAAsD,CAAC,CAAA;AACzE,KAAA;AACAU,IAAAA,MAAM,CAACL,QAAQ,GAAG,CAACK,MAAM,CAACI,OAAO,CAAC,CAAA;IAClC,OAAOJ,MAAM,CAACI,OAAO,CAAA;AACvB,GAAA;EAEA,IAAIJ,MAAM,CAACK,SAAS,EAAE;IACpB,IAAIL,MAAM,CAACJ,UAAU,EAAE;AACrB,MAAA,MAAM,IAAIN,KAAK,CACb,2DACF,CAAC,CAAA;AACH,KAAA;AACAU,IAAAA,MAAM,CAACJ,UAAU,GAAG,CAACI,MAAM,CAACK,SAAS,CAAC,CAAA;IACtC,OAAOL,MAAM,CAACK,SAAS,CAAA;AACzB,GAAA;AAEA,EAAA,OAAOL,MAAM,CAAA;AACf,CAAA;AAEO,SAASM,SAASA,CAACN,MAAgB,EAAQ;AAChD,EAAA,IAAIjB,cAAc,CAACQ,oBAAoB,CAACgB,MAAM,GAAG,CAAC,EAAE;AAClD;AACAC,IAAAA,OAAO,CAACC,GAAG,CAAC,yCAAyC,CAAC,CAAA;AACxD,GAAA;AAEAZ,EAAAA,UAAU,EAAE,CAAA;EACZd,cAAc,CAACQ,oBAAoB,GAAGS,MAAM,CAACU,GAAG,CAACX,YAAY,CAAC,CAAA;AAChE,CAAA;AAEO,SAASY,SAASA,CAACX,MAAc,EAAEY,OAAO,EAAgB;AAAA,EAAA,IAAvBA,OAAO,KAAA,KAAA,CAAA,EAAA;AAAPA,IAAAA,OAAO,GAAG,KAAK,CAAA;AAAA,GAAA;AACvDZ,EAAAA,MAAM,GAAGD,YAAY,CAACC,MAAM,CAAC,CAAA;EAC7BjB,cAAc,CAACQ,oBAAoB,CAACqB,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC,CAACZ,MAAM,CAAC,CAAA;AACzEH,EAAAA,UAAU,EAAE,CAAA;AACd,CAAA;AAEA,IAAMgB,cAAc,GAAG,SAAjBA,cAAcA,CAAIV,GAAW,EAAA;EAAA,OAAK,UAACH,MAAc,EAAK;AAC1D,IAAA,IAAIA,MAAM,CAACC,IAAI,EAAE,OAAOD,MAAM,CAACC,IAAI,CAACa,QAAQ,CAACX,GAAG,CAAC,CAAA;AACjD,IAAA,IAAIH,MAAM,CAACE,OAAO,EAAE,OAAOF,MAAM,CAACE,OAAO,CAACa,IAAI,CAACZ,GAAG,CAAC,CAAA;AACnD,IAAA,OAAO,IAAI,CAAA;GACZ,CAAA;AAAA,CAAA,CAAA;AAEDpB,cAAc,CAACiC,mCAAmC,GAAG,UACnDb,GAAW,EACc;AACzB,EAAA,IAAMc,WAAW,GAAGlC,cAAc,CAACS,8BAA8B,CAAA;AAEjE,EAAA,IAAM0B,aAAa,GAAGD,WAAW,CAACE,GAAG,CAAChB,GAAG,CAAC,CAAA;AAE1C,EAAA,IAAIe,aAAa,EAAE;AACjB,IAAA,OAAOA,aAAa,CAAA;AACtB,GAAA;AAEA,EAAA,IAAME,YAAkC,GAAG;AACzCzB,IAAAA,QAAQ,EAAE,EAAE;AACZC,IAAAA,UAAU,EAAE,EAAA;GACb,CAAA;AAEDb,EAAAA,cAAc,CAACQ,oBAAoB,CAChC8B,MAAM,CAACR,cAAc,CAACV,GAAG,CAAC,CAAC,CAC3BmB,IAAI,CAAC,UAACtB,MAAc,EAAK;IAAA,IAAAuB,qBAAA,EAAAC,qBAAA,CAAA;IACxB,IAAIxB,MAAM,CAACL,QAAQ,EAAE,CAAA4B,qBAAA,GAAAH,YAAY,CAACzB,QAAQ,EAAC8B,IAAI,CAAAC,KAAA,CAAAH,qBAAA,EAAIvB,MAAM,CAACL,QAAQ,CAAC,CAAA;IACnE,IAAIK,MAAM,CAACJ,UAAU,EAAE,CAAA4B,qBAAA,GAAAJ,YAAY,CAACxB,UAAU,EAAC6B,IAAI,CAAAC,KAAA,CAAAF,qBAAA,EAAIxB,MAAM,CAACJ,UAAU,CAAC,CAAA;IACzE,OAAOI,MAAM,CAAC2B,IAAI,CAAA;AACpB,GAAC,CAAC,CAAA;AAEJV,EAAAA,WAAW,CAACW,GAAG,CAACzB,GAAG,EAAEiB,YAAY,CAAC,CAAA;AAClC,EAAA,OAAOA,YAAY,CAAA;AACrB,CAAC,CAAA;AAED,IAAIrC,cAAc,CAAC8C,0CAA0C,EAAE;AAC7D9C,EAAAA,cAAc,CAAC8C,0CAA0C,GAAG,UAC1D1B,GAAW,EACX2B,KAAY,EACa;AACzB,IAAA,IAAAC,qBAAA,GACEhD,cAAc,CAACiC,mCAAmC,CAACb,GAAG,CAAC;MADjDR,QAAQ,GAAAoC,qBAAA,CAARpC,QAAQ;MAAEC,UAAU,GAAAmC,qBAAA,CAAVnC,UAAU,CAAA;IAG5B,OAAO;AACLD,MAAAA,QAAQ,EAAEA,QAAQ,CAAC0B,MAAM,CACvB,UAACjB,OAAgB,EAAA;AAAA,QAAA,OACf0B,KAAK,IAAI1B,OAAO,CAAC4B,QAAQ,KACxB,CAAC5B,OAAO,CAAC6B,UAAU,IAAI7B,OAAO,CAAC6B,UAAU,CAACH,KAAK,EAAE3B,GAAG,CAAC,CAAC,CAAA;AAAA,OAC3D,CAAC;AACDP,MAAAA,UAAU,EAAVA,UAAAA;KACD,CAAA;GACF,CAAA;AACH;;AC/HA;AACA;AACA;AACA;AACO,SAASsC,qBAAqBA,CACnCC,MAAc,EAIR;AAAA,EAAA,IAJNA,MAAc,KAAA,KAAA,CAAA,EAAA;AAAdA,IAAAA,MAAc,GAAG,IAAIC,MAAM,CACzB,mCAAmC,EACnC,iBACF,CAAC,CAAA;AAAA,GAAA;AAEDlD,EAAAA,OAAO,CAACmD,EAAE,CAAC,mBAAmB,EAAE,UAACC,KAAK,EAAK;AACzCH,IAAAA,MAAM,CAACG,KAAK,CAAC,mBAAmB,EAAE;AAAEA,MAAAA,KAAK,EAALA,KAAK;AAAEC,MAAAA,SAAS,EAAE,IAAA;AAAK,KAAC,CAAC,CAAA;AAC/D,GAAC,CAAC,CAAA;AACFrD,EAAAA,OAAO,CAACmD,EAAE,CAAC,oBAAoB,EAAE,UAACC,KAAK,EAAK;AAC1CH,IAAAA,MAAM,CAACG,KAAK,CAAC,oBAAoB,EAAE;AAAEA,MAAAA,KAAK,EAALA,KAAK;AAAEC,MAAAA,SAAS,EAAE,IAAA;AAAK,KAAC,CAAC,CAAA;AAChE,GAAC,CAAC,CAAA;AACJ;;;;"}
@@ -3,7 +3,7 @@ export { Logger } from 'nightingale-logger';
3
3
  export { Level, Level as levels } from 'nightingale-levels';
4
4
 
5
5
  const globalOrWindow = typeof global !== 'undefined' ? global : window;
6
- if (process.env.NODE_ENV !== "production" && globalOrWindow.__NIGHTINGALE_GLOBAL_HANDLERS) {
6
+ if (process.env.NODE_ENV !== 'production' && globalOrWindow.__NIGHTINGALE_GLOBAL_HANDLERS) {
7
7
  throw new Error('nightingale: update all to ^5.0.0');
8
8
  }
9
9
  if (!globalOrWindow.__NIGHTINGALE_CONFIG) {
@@ -1 +1 @@
1
- {"version":3,"file":"index-browsermodern.es.js","sources":["../src/config.ts","../src/index.ts"],"sourcesContent":["import type { ComputedConfigForKey, Config } from 'nightingale-logger';\nimport type { Handler } from 'nightingale-types';\n\nconst globalOrWindow: typeof global =\n typeof global !== 'undefined' ? global : (window as typeof global);\n\nif (__DEV__ && globalOrWindow.__NIGHTINGALE_GLOBAL_HANDLERS) {\n throw new Error('nightingale: update all to ^5.0.0');\n}\n\nif (!globalOrWindow.__NIGHTINGALE_CONFIG) {\n globalOrWindow.__NIGHTINGALE_CONFIG = [];\n globalOrWindow.__NIGHTINGALE_LOGGER_MAP_CACHE = new Map<\n string,\n ComputedConfigForKey\n >();\n globalOrWindow.__NIGHTINGALE_CONFIG_DEFAULT = {\n handlers: [],\n processors: [],\n };\n}\n\nfunction clearCache(): void {\n globalOrWindow.__NIGHTINGALE_LOGGER_MAP_CACHE.clear();\n}\n\nfunction handleConfig(config: Config): Config {\n if (config.keys) {\n if (config.pattern) {\n throw new Error('Cannot have key and pattern for the same config');\n }\n if (config.key) {\n throw new Error('Cannot have key and keys for the same config');\n }\n } else if (config.key) {\n if (config.pattern) {\n throw new Error('Cannot have key and pattern for the same config');\n }\n config.keys = [config.key];\n delete config.key;\n }\n\n if (config.handler) {\n if (config.handlers) {\n throw new Error('Cannot have handler and handlers for the same config');\n }\n config.handlers = [config.handler];\n delete config.handler;\n }\n\n if (config.processor) {\n if (config.processors) {\n throw new Error(\n 'Cannot have processors and processors for the same config',\n );\n }\n config.processors = [config.processor];\n delete config.processor;\n }\n\n return config;\n}\n\nexport function configure(config: Config[]): void {\n if (globalOrWindow.__NIGHTINGALE_CONFIG.length > 0) {\n // eslint-disable-next-line no-console\n console.log('nightingale: warning: config overridden');\n }\n\n clearCache();\n globalOrWindow.__NIGHTINGALE_CONFIG = config.map(handleConfig);\n}\n\nexport function addConfig(config: Config, unshift = false): void {\n config = handleConfig(config);\n globalOrWindow.__NIGHTINGALE_CONFIG[unshift ? 'unshift' : 'push'](config);\n clearCache();\n}\n\nconst configIsForKey = (key: string) => (config: Config) => {\n if (config.keys) return config.keys.includes(key);\n if (config.pattern) return config.pattern.test(key);\n return true;\n};\n\nglobalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER = (\n key: string,\n): ComputedConfigForKey => {\n const globalCache = globalOrWindow.__NIGHTINGALE_LOGGER_MAP_CACHE;\n\n const existingCache = globalCache.get(key);\n\n if (existingCache) {\n return existingCache;\n }\n\n const loggerConfig: ComputedConfigForKey = {\n handlers: [],\n processors: [],\n };\n\n globalOrWindow.__NIGHTINGALE_CONFIG\n .filter(configIsForKey(key))\n .some((config: Config) => {\n if (config.handlers) loggerConfig.handlers.push(...config.handlers);\n if (config.processors) loggerConfig.processors.push(...config.processors);\n return config.stop;\n });\n\n globalCache.set(key, loggerConfig);\n return loggerConfig;\n};\n\nif (globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD) {\n globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD = (\n key: string,\n level: number,\n ): ComputedConfigForKey => {\n const { handlers, processors }: ComputedConfigForKey =\n globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER(key);\n\n return {\n handlers: handlers.filter(\n (handler: Handler) =>\n level >= handler.minLevel &&\n (!handler.isHandling || handler.isHandling(level, key)),\n ),\n processors,\n };\n };\n}\n","import { Logger } from 'nightingale-logger';\n\nexport { Logger } from 'nightingale-logger';\nexport { Level, Level as levels } from 'nightingale-levels';\nexport { configure, addConfig } from './config';\n\n/**\n * listen to uncaughtException and unhandledRejection\n * @param {Logger} [logger]\n */\nexport function listenUnhandledErrors(\n logger: Logger = new Logger(\n 'nightingale:listenUnhandledErrors',\n 'UnhandledErrors',\n ),\n): void {\n process.on('uncaughtException', (error) => {\n logger.error('uncaughtException', { error, unhandled: true });\n });\n process.on('unhandledRejection', (error) => {\n logger.error('unhandledRejection', { error, unhandled: true });\n });\n}\n"],"names":["globalOrWindow","global","window","__NIGHTINGALE_GLOBAL_HANDLERS","Error","__NIGHTINGALE_CONFIG","__NIGHTINGALE_LOGGER_MAP_CACHE","Map","__NIGHTINGALE_CONFIG_DEFAULT","handlers","processors","clearCache","clear","handleConfig","config","keys","pattern","key","handler","processor","configure","length","console","log","map","addConfig","unshift","configIsForKey","includes","test","__NIGHTINGALE_GET_CONFIG_FOR_LOGGER","globalCache","existingCache","get","loggerConfig","filter","some","push","stop","set","__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD","level","minLevel","isHandling","listenUnhandledErrors","logger","Logger","process","on","error","unhandled"],"mappings":";;;;AAGA,MAAMA,cAA6B,GACjC,OAAOC,MAAM,KAAK,WAAW,GAAGA,MAAM,GAAIC,MAAwB,CAAA;AAEpE,IAAI,OAAWF,CAAAA,GAAAA,CAAAA,QAAAA,KAAAA,YAAAA,IAAAA,cAAc,CAACG,6BAA6B,EAAE;AAC3D,EAAA,MAAM,IAAIC,KAAK,CAAC,mCAAmC,CAAC,CAAA;AACtD,CAAA;AAEA,IAAI,CAACJ,cAAc,CAACK,oBAAoB,EAAE;EACxCL,cAAc,CAACK,oBAAoB,GAAG,EAAE,CAAA;AACxCL,EAAAA,cAAc,CAACM,8BAA8B,GAAG,IAAIC,GAAG,EAGpD,CAAA;EACHP,cAAc,CAACQ,4BAA4B,GAAG;AAC5CC,IAAAA,QAAQ,EAAE,EAAE;AACZC,IAAAA,UAAU,EAAE,EAAA;GACb,CAAA;AACH,CAAA;AAEA,SAASC,UAAU,GAAS;AAC1BX,EAAAA,cAAc,CAACM,8BAA8B,CAACM,KAAK,EAAE,CAAA;AACvD,CAAA;AAEA,SAASC,YAAY,CAACC,MAAc,EAAU;EAC5C,IAAIA,MAAM,CAACC,IAAI,EAAE;IACf,IAAID,MAAM,CAACE,OAAO,EAAE;AAClB,MAAA,MAAM,IAAIZ,KAAK,CAAC,iDAAiD,CAAC,CAAA;AACpE,KAAA;IACA,IAAIU,MAAM,CAACG,GAAG,EAAE;AACd,MAAA,MAAM,IAAIb,KAAK,CAAC,8CAA8C,CAAC,CAAA;AACjE,KAAA;AACF,GAAC,MAAM,IAAIU,MAAM,CAACG,GAAG,EAAE;IACrB,IAAIH,MAAM,CAACE,OAAO,EAAE;AAClB,MAAA,MAAM,IAAIZ,KAAK,CAAC,iDAAiD,CAAC,CAAA;AACpE,KAAA;AACAU,IAAAA,MAAM,CAACC,IAAI,GAAG,CAACD,MAAM,CAACG,GAAG,CAAC,CAAA;IAC1B,OAAOH,MAAM,CAACG,GAAG,CAAA;AACnB,GAAA;EAEA,IAAIH,MAAM,CAACI,OAAO,EAAE;IAClB,IAAIJ,MAAM,CAACL,QAAQ,EAAE;AACnB,MAAA,MAAM,IAAIL,KAAK,CAAC,sDAAsD,CAAC,CAAA;AACzE,KAAA;AACAU,IAAAA,MAAM,CAACL,QAAQ,GAAG,CAACK,MAAM,CAACI,OAAO,CAAC,CAAA;IAClC,OAAOJ,MAAM,CAACI,OAAO,CAAA;AACvB,GAAA;EAEA,IAAIJ,MAAM,CAACK,SAAS,EAAE;IACpB,IAAIL,MAAM,CAACJ,UAAU,EAAE;AACrB,MAAA,MAAM,IAAIN,KAAK,CACb,2DAA2D,CAC5D,CAAA;AACH,KAAA;AACAU,IAAAA,MAAM,CAACJ,UAAU,GAAG,CAACI,MAAM,CAACK,SAAS,CAAC,CAAA;IACtC,OAAOL,MAAM,CAACK,SAAS,CAAA;AACzB,GAAA;AAEA,EAAA,OAAOL,MAAM,CAAA;AACf,CAAA;AAEO,SAASM,SAAS,CAACN,MAAgB,EAAQ;AAChD,EAAA,IAAId,cAAc,CAACK,oBAAoB,CAACgB,MAAM,GAAG,CAAC,EAAE;AAClD;AACAC,IAAAA,OAAO,CAACC,GAAG,CAAC,yCAAyC,CAAC,CAAA;AACxD,GAAA;AAEAZ,EAAAA,UAAU,EAAE,CAAA;EACZX,cAAc,CAACK,oBAAoB,GAAGS,MAAM,CAACU,GAAG,CAACX,YAAY,CAAC,CAAA;AAChE,CAAA;AAEO,SAASY,SAAS,CAACX,MAAc,EAAEY,OAAO,GAAG,KAAK,EAAQ;AAC/DZ,EAAAA,MAAM,GAAGD,YAAY,CAACC,MAAM,CAAC,CAAA;EAC7Bd,cAAc,CAACK,oBAAoB,CAACqB,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC,CAACZ,MAAM,CAAC,CAAA;AACzEH,EAAAA,UAAU,EAAE,CAAA;AACd,CAAA;AAEA,MAAMgB,cAAc,GAAIV,GAAW,IAAMH,MAAc,IAAK;AAC1D,EAAA,IAAIA,MAAM,CAACC,IAAI,EAAE,OAAOD,MAAM,CAACC,IAAI,CAACa,QAAQ,CAACX,GAAG,CAAC,CAAA;AACjD,EAAA,IAAIH,MAAM,CAACE,OAAO,EAAE,OAAOF,MAAM,CAACE,OAAO,CAACa,IAAI,CAACZ,GAAG,CAAC,CAAA;AACnD,EAAA,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAEDjB,cAAc,CAAC8B,mCAAmC,GAChDb,GAAW,IACc;AACzB,EAAA,MAAMc,WAAW,GAAG/B,cAAc,CAACM,8BAA8B,CAAA;AAEjE,EAAA,MAAM0B,aAAa,GAAGD,WAAW,CAACE,GAAG,CAAChB,GAAG,CAAC,CAAA;AAE1C,EAAA,IAAIe,aAAa,EAAE;AACjB,IAAA,OAAOA,aAAa,CAAA;AACtB,GAAA;AAEA,EAAA,MAAME,YAAkC,GAAG;AACzCzB,IAAAA,QAAQ,EAAE,EAAE;AACZC,IAAAA,UAAU,EAAE,EAAA;GACb,CAAA;AAEDV,EAAAA,cAAc,CAACK,oBAAoB,CAChC8B,MAAM,CAACR,cAAc,CAACV,GAAG,CAAC,CAAC,CAC3BmB,IAAI,CAAEtB,MAAc,IAAK;AACxB,IAAA,IAAIA,MAAM,CAACL,QAAQ,EAAEyB,YAAY,CAACzB,QAAQ,CAAC4B,IAAI,CAAC,GAAGvB,MAAM,CAACL,QAAQ,CAAC,CAAA;AACnE,IAAA,IAAIK,MAAM,CAACJ,UAAU,EAAEwB,YAAY,CAACxB,UAAU,CAAC2B,IAAI,CAAC,GAAGvB,MAAM,CAACJ,UAAU,CAAC,CAAA;IACzE,OAAOI,MAAM,CAACwB,IAAI,CAAA;AACpB,GAAC,CAAC,CAAA;AAEJP,EAAAA,WAAW,CAACQ,GAAG,CAACtB,GAAG,EAAEiB,YAAY,CAAC,CAAA;AAClC,EAAA,OAAOA,YAAY,CAAA;AACrB,CAAC,CAAA;AAED,IAAIlC,cAAc,CAACwC,0CAA0C,EAAE;AAC7DxC,EAAAA,cAAc,CAACwC,0CAA0C,GAAG,CAC1DvB,GAAW,EACXwB,KAAa,KACY;IACzB,MAAM;MAAEhC,QAAQ;AAAEC,MAAAA,UAAAA;AAAiC,KAAC,GAClDV,cAAc,CAAC8B,mCAAmC,CAACb,GAAG,CAAC,CAAA;IAEzD,OAAO;MACLR,QAAQ,EAAEA,QAAQ,CAAC0B,MAAM,CACtBjB,OAAgB,IACfuB,KAAK,IAAIvB,OAAO,CAACwB,QAAQ,KACxB,CAACxB,OAAO,CAACyB,UAAU,IAAIzB,OAAO,CAACyB,UAAU,CAACF,KAAK,EAAExB,GAAG,CAAC,CAAC,CAC1D;AACDP,MAAAA,UAAAA;KACD,CAAA;GACF,CAAA;AACH;;AC5HA;AACA;AACA;AACA;AACO,SAASkC,qBAAqB,CACnCC,MAAc,GAAG,IAAIC,MAAM,CACzB,mCAAmC,EACnC,iBAAiB,CAClB,EACK;AACNC,EAAAA,OAAO,CAACC,EAAE,CAAC,mBAAmB,EAAGC,KAAK,IAAK;AACzCJ,IAAAA,MAAM,CAACI,KAAK,CAAC,mBAAmB,EAAE;MAAEA,KAAK;AAAEC,MAAAA,SAAS,EAAE,IAAA;AAAK,KAAC,CAAC,CAAA;AAC/D,GAAC,CAAC,CAAA;AACFH,EAAAA,OAAO,CAACC,EAAE,CAAC,oBAAoB,EAAGC,KAAK,IAAK;AAC1CJ,IAAAA,MAAM,CAACI,KAAK,CAAC,oBAAoB,EAAE;MAAEA,KAAK;AAAEC,MAAAA,SAAS,EAAE,IAAA;AAAK,KAAC,CAAC,CAAA;AAChE,GAAC,CAAC,CAAA;AACJ;;;;"}
1
+ {"version":3,"file":"index-browsermodern.es.js","sources":["../src/config.ts","../src/index.ts"],"sourcesContent":["import type { ComputedConfigForKey, Config } from 'nightingale-logger';\nimport type { Handler, Level } from 'nightingale-types';\n\nconst globalOrWindow: typeof global =\n typeof global !== 'undefined' ? global : (window as typeof global);\n\nif (\n process.env.NODE_ENV !== 'production' &&\n globalOrWindow.__NIGHTINGALE_GLOBAL_HANDLERS\n) {\n throw new Error('nightingale: update all to ^5.0.0');\n}\n\nif (!globalOrWindow.__NIGHTINGALE_CONFIG) {\n globalOrWindow.__NIGHTINGALE_CONFIG = [];\n globalOrWindow.__NIGHTINGALE_LOGGER_MAP_CACHE = new Map<\n string,\n ComputedConfigForKey\n >();\n globalOrWindow.__NIGHTINGALE_CONFIG_DEFAULT = {\n handlers: [],\n processors: [],\n };\n}\n\nfunction clearCache(): void {\n globalOrWindow.__NIGHTINGALE_LOGGER_MAP_CACHE.clear();\n}\n\nfunction handleConfig(config: Config): Config {\n if (config.keys) {\n if (config.pattern) {\n throw new Error('Cannot have key and pattern for the same config');\n }\n if (config.key) {\n throw new Error('Cannot have key and keys for the same config');\n }\n } else if (config.key) {\n if (config.pattern) {\n throw new Error('Cannot have key and pattern for the same config');\n }\n config.keys = [config.key];\n delete config.key;\n }\n\n if (config.handler) {\n if (config.handlers) {\n throw new Error('Cannot have handler and handlers for the same config');\n }\n config.handlers = [config.handler];\n delete config.handler;\n }\n\n if (config.processor) {\n if (config.processors) {\n throw new Error(\n 'Cannot have processors and processors for the same config',\n );\n }\n config.processors = [config.processor];\n delete config.processor;\n }\n\n return config;\n}\n\nexport function configure(config: Config[]): void {\n if (globalOrWindow.__NIGHTINGALE_CONFIG.length > 0) {\n // eslint-disable-next-line no-console\n console.log('nightingale: warning: config overridden');\n }\n\n clearCache();\n globalOrWindow.__NIGHTINGALE_CONFIG = config.map(handleConfig);\n}\n\nexport function addConfig(config: Config, unshift = false): void {\n config = handleConfig(config);\n globalOrWindow.__NIGHTINGALE_CONFIG[unshift ? 'unshift' : 'push'](config);\n clearCache();\n}\n\nconst configIsForKey = (key: string) => (config: Config) => {\n if (config.keys) return config.keys.includes(key);\n if (config.pattern) return config.pattern.test(key);\n return true;\n};\n\nglobalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER = (\n key: string,\n): ComputedConfigForKey => {\n const globalCache = globalOrWindow.__NIGHTINGALE_LOGGER_MAP_CACHE;\n\n const existingCache = globalCache.get(key);\n\n if (existingCache) {\n return existingCache;\n }\n\n const loggerConfig: ComputedConfigForKey = {\n handlers: [],\n processors: [],\n };\n\n globalOrWindow.__NIGHTINGALE_CONFIG\n .filter(configIsForKey(key))\n .some((config: Config) => {\n if (config.handlers) loggerConfig.handlers.push(...config.handlers);\n if (config.processors) loggerConfig.processors.push(...config.processors);\n return config.stop;\n });\n\n globalCache.set(key, loggerConfig);\n return loggerConfig;\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: Handler) =>\n level >= handler.minLevel &&\n (!handler.isHandling || handler.isHandling(level, key)),\n ),\n processors,\n };\n };\n}\n","import { Logger } from 'nightingale-logger';\n\nexport { Logger } from 'nightingale-logger';\nexport { Level, Level as levels } from 'nightingale-levels';\nexport { configure, addConfig } from './config';\n\n/**\n * listen to uncaughtException and unhandledRejection\n * @param {Logger} [logger]\n */\nexport function listenUnhandledErrors(\n logger: Logger = new Logger(\n 'nightingale:listenUnhandledErrors',\n 'UnhandledErrors',\n ),\n): void {\n process.on('uncaughtException', (error) => {\n logger.error('uncaughtException', { error, unhandled: true });\n });\n process.on('unhandledRejection', (error) => {\n logger.error('unhandledRejection', { error, unhandled: true });\n });\n}\n"],"names":["globalOrWindow","global","window","process","env","NODE_ENV","__NIGHTINGALE_GLOBAL_HANDLERS","Error","__NIGHTINGALE_CONFIG","__NIGHTINGALE_LOGGER_MAP_CACHE","Map","__NIGHTINGALE_CONFIG_DEFAULT","handlers","processors","clearCache","clear","handleConfig","config","keys","pattern","key","handler","processor","configure","length","console","log","map","addConfig","unshift","configIsForKey","includes","test","__NIGHTINGALE_GET_CONFIG_FOR_LOGGER","globalCache","existingCache","get","loggerConfig","filter","some","push","stop","set","__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD","level","minLevel","isHandling","listenUnhandledErrors","logger","Logger","on","error","unhandled"],"mappings":"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"}
@@ -3,7 +3,7 @@ export { Logger } from 'nightingale-logger';
3
3
  export { Level, Level as levels } from 'nightingale-levels';
4
4
 
5
5
  const globalOrWindow = typeof global !== 'undefined' ? global : window;
6
- if (process.env.NODE_ENV !== "production" && globalOrWindow.__NIGHTINGALE_GLOBAL_HANDLERS) {
6
+ if (process.env.NODE_ENV !== 'production' && globalOrWindow.__NIGHTINGALE_GLOBAL_HANDLERS) {
7
7
  throw new Error('nightingale: update all to ^5.0.0');
8
8
  }
9
9
  if (!globalOrWindow.__NIGHTINGALE_CONFIG) {
@@ -117,4 +117,4 @@ function listenUnhandledErrors(logger = new Logger('nightingale:listenUnhandledE
117
117
  }
118
118
 
119
119
  export { addConfig, configure, listenUnhandledErrors };
120
- //# sourceMappingURL=index-node16.mjs.map
120
+ //# sourceMappingURL=index-node18.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-node18.mjs","sources":["../src/config.ts","../src/index.ts"],"sourcesContent":["import type { ComputedConfigForKey, Config } from 'nightingale-logger';\nimport type { Handler, Level } from 'nightingale-types';\n\nconst globalOrWindow: typeof global =\n typeof global !== 'undefined' ? global : (window as typeof global);\n\nif (\n process.env.NODE_ENV !== 'production' &&\n globalOrWindow.__NIGHTINGALE_GLOBAL_HANDLERS\n) {\n throw new Error('nightingale: update all to ^5.0.0');\n}\n\nif (!globalOrWindow.__NIGHTINGALE_CONFIG) {\n globalOrWindow.__NIGHTINGALE_CONFIG = [];\n globalOrWindow.__NIGHTINGALE_LOGGER_MAP_CACHE = new Map<\n string,\n ComputedConfigForKey\n >();\n globalOrWindow.__NIGHTINGALE_CONFIG_DEFAULT = {\n handlers: [],\n processors: [],\n };\n}\n\nfunction clearCache(): void {\n globalOrWindow.__NIGHTINGALE_LOGGER_MAP_CACHE.clear();\n}\n\nfunction handleConfig(config: Config): Config {\n if (config.keys) {\n if (config.pattern) {\n throw new Error('Cannot have key and pattern for the same config');\n }\n if (config.key) {\n throw new Error('Cannot have key and keys for the same config');\n }\n } else if (config.key) {\n if (config.pattern) {\n throw new Error('Cannot have key and pattern for the same config');\n }\n config.keys = [config.key];\n delete config.key;\n }\n\n if (config.handler) {\n if (config.handlers) {\n throw new Error('Cannot have handler and handlers for the same config');\n }\n config.handlers = [config.handler];\n delete config.handler;\n }\n\n if (config.processor) {\n if (config.processors) {\n throw new Error(\n 'Cannot have processors and processors for the same config',\n );\n }\n config.processors = [config.processor];\n delete config.processor;\n }\n\n return config;\n}\n\nexport function configure(config: Config[]): void {\n if (globalOrWindow.__NIGHTINGALE_CONFIG.length > 0) {\n // eslint-disable-next-line no-console\n console.log('nightingale: warning: config overridden');\n }\n\n clearCache();\n globalOrWindow.__NIGHTINGALE_CONFIG = config.map(handleConfig);\n}\n\nexport function addConfig(config: Config, unshift = false): void {\n config = handleConfig(config);\n globalOrWindow.__NIGHTINGALE_CONFIG[unshift ? 'unshift' : 'push'](config);\n clearCache();\n}\n\nconst configIsForKey = (key: string) => (config: Config) => {\n if (config.keys) return config.keys.includes(key);\n if (config.pattern) return config.pattern.test(key);\n return true;\n};\n\nglobalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER = (\n key: string,\n): ComputedConfigForKey => {\n const globalCache = globalOrWindow.__NIGHTINGALE_LOGGER_MAP_CACHE;\n\n const existingCache = globalCache.get(key);\n\n if (existingCache) {\n return existingCache;\n }\n\n const loggerConfig: ComputedConfigForKey = {\n handlers: [],\n processors: [],\n };\n\n globalOrWindow.__NIGHTINGALE_CONFIG\n .filter(configIsForKey(key))\n .some((config: Config) => {\n if (config.handlers) loggerConfig.handlers.push(...config.handlers);\n if (config.processors) loggerConfig.processors.push(...config.processors);\n return config.stop;\n });\n\n globalCache.set(key, loggerConfig);\n return loggerConfig;\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: Handler) =>\n level >= handler.minLevel &&\n (!handler.isHandling || handler.isHandling(level, key)),\n ),\n processors,\n };\n };\n}\n","import { Logger } from 'nightingale-logger';\n\nexport { Logger } from 'nightingale-logger';\nexport { Level, Level as levels } from 'nightingale-levels';\nexport { configure, addConfig } from './config';\n\n/**\n * listen to uncaughtException and unhandledRejection\n * @param {Logger} [logger]\n */\nexport function listenUnhandledErrors(\n logger: Logger = new Logger(\n 'nightingale:listenUnhandledErrors',\n 'UnhandledErrors',\n ),\n): void {\n process.on('uncaughtException', (error) => {\n logger.error('uncaughtException', { error, unhandled: true });\n });\n process.on('unhandledRejection', (error) => {\n logger.error('unhandledRejection', { error, unhandled: true });\n });\n}\n"],"names":["globalOrWindow","global","window","process","env","NODE_ENV","__NIGHTINGALE_GLOBAL_HANDLERS","Error","__NIGHTINGALE_CONFIG","__NIGHTINGALE_LOGGER_MAP_CACHE","Map","__NIGHTINGALE_CONFIG_DEFAULT","handlers","processors","clearCache","clear","handleConfig","config","keys","pattern","key","handler","processor","configure","length","console","log","map","addConfig","unshift","configIsForKey","includes","test","__NIGHTINGALE_GET_CONFIG_FOR_LOGGER","globalCache","existingCache","get","loggerConfig","filter","some","push","stop","set","__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD","level","minLevel","isHandling","listenUnhandledErrors","logger","Logger","on","error","unhandled"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nightingale",
3
- "version": "13.0.0",
3
+ "version": "14.0.1",
4
4
  "description": "Logger for browser and node",
5
5
  "keywords": [
6
6
  "logger"
@@ -15,24 +15,27 @@
15
15
  "homepage": "https://github.com/christophehurpeau/nightingale",
16
16
  "type": "module",
17
17
  "engines": {
18
- "node": ">=16.0.0"
18
+ "node": ">=18.12.0"
19
19
  },
20
- "browserslist": [
21
- "defaults",
22
- "> 0.2%",
23
- "not ie < 12",
24
- "not safari < 10",
25
- "not ios_saf < 10"
26
- ],
27
- "main": "./dist/index-node16.mjs",
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",
28
30
  "types": "./dist/definitions/index.d.ts",
29
31
  "module": "./dist/index-browser.es.js",
30
32
  "browser": "./dist/index-browser.es.js",
31
33
  "exports": {
32
34
  "./package.json": "./package.json",
33
35
  ".": {
36
+ "type": "./dist/definitions/index.d.ts",
34
37
  "node": {
35
- "import": "./dist/index-node16.mjs"
38
+ "import": "./dist/index-node18.mjs"
36
39
  },
37
40
  "browser": {
38
41
  "browser:modern": {
@@ -45,7 +48,7 @@
45
48
  "sideEffects": false,
46
49
  "scripts": {
47
50
  "build": "yarn clean:build && rollup --config rollup.config.mjs && yarn run build:definitions",
48
- "build:definitions": "tsc -p",
51
+ "build:definitions": "tsc -p tsconfig.json",
49
52
  "clean": "yarn clean:build",
50
53
  "clean:build": "pob-babel-clean-out dist",
51
54
  "lint": "yarn run lint:eslint",
@@ -58,7 +61,7 @@
58
61
  "babelEnvs": [
59
62
  {
60
63
  "target": "node",
61
- "version": "16"
64
+ "version": "18"
62
65
  },
63
66
  {
64
67
  "target": "browser",
@@ -73,18 +76,17 @@
73
76
  ]
74
77
  },
75
78
  "dependencies": {
76
- "@types/node": ">=16.0.0",
77
- "nightingale-levels": "13.0.0",
78
- "nightingale-logger": "13.0.0",
79
- "nightingale-types": "13.0.0"
79
+ "@types/node": ">=18.0.0",
80
+ "nightingale-levels": "14.0.1",
81
+ "nightingale-logger": "14.0.1",
82
+ "nightingale-types": "14.0.1"
80
83
  },
81
84
  "devDependencies": {
82
- "@babel/core": "7.20.2",
83
- "@babel/preset-env": "7.20.2",
84
- "babel-preset-modern-browsers": "15.0.2",
85
- "nightingale-string": "13.0.0",
86
- "pob-babel": "35.3.0",
87
- "typescript": "4.9.3"
85
+ "@babel/core": "7.22.5",
86
+ "@babel/preset-env": "7.22.5",
87
+ "nightingale-string": "14.0.1",
88
+ "pob-babel": "36.1.0",
89
+ "typescript": "5.1.6"
88
90
  },
89
- "gitHead": "52cf7e3c8762a07891da9dde497ec03298c15654"
91
+ "gitHead": "e012fc159ceae0db482198c3f0308e0fc6470ae1"
90
92
  }
package/src/config.ts CHANGED
@@ -1,10 +1,13 @@
1
1
  import type { ComputedConfigForKey, Config } from 'nightingale-logger';
2
- import type { Handler } from 'nightingale-types';
2
+ import type { Handler, Level } from 'nightingale-types';
3
3
 
4
4
  const globalOrWindow: typeof global =
5
5
  typeof global !== 'undefined' ? global : (window as typeof global);
6
6
 
7
- if (__DEV__ && globalOrWindow.__NIGHTINGALE_GLOBAL_HANDLERS) {
7
+ if (
8
+ process.env.NODE_ENV !== 'production' &&
9
+ globalOrWindow.__NIGHTINGALE_GLOBAL_HANDLERS
10
+ ) {
8
11
  throw new Error('nightingale: update all to ^5.0.0');
9
12
  }
10
13
 
@@ -114,7 +117,7 @@ globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER = (
114
117
  if (globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD) {
115
118
  globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD = (
116
119
  key: string,
117
- level: number,
120
+ level: Level,
118
121
  ): ComputedConfigForKey => {
119
122
  const { handlers, processors }: ComputedConfigForKey =
120
123
  globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER(key);
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-node16.mjs","sources":["../src/config.ts","../src/index.ts"],"sourcesContent":["import type { ComputedConfigForKey, Config } from 'nightingale-logger';\nimport type { Handler } from 'nightingale-types';\n\nconst globalOrWindow: typeof global =\n typeof global !== 'undefined' ? global : (window as typeof global);\n\nif (__DEV__ && globalOrWindow.__NIGHTINGALE_GLOBAL_HANDLERS) {\n throw new Error('nightingale: update all to ^5.0.0');\n}\n\nif (!globalOrWindow.__NIGHTINGALE_CONFIG) {\n globalOrWindow.__NIGHTINGALE_CONFIG = [];\n globalOrWindow.__NIGHTINGALE_LOGGER_MAP_CACHE = new Map<\n string,\n ComputedConfigForKey\n >();\n globalOrWindow.__NIGHTINGALE_CONFIG_DEFAULT = {\n handlers: [],\n processors: [],\n };\n}\n\nfunction clearCache(): void {\n globalOrWindow.__NIGHTINGALE_LOGGER_MAP_CACHE.clear();\n}\n\nfunction handleConfig(config: Config): Config {\n if (config.keys) {\n if (config.pattern) {\n throw new Error('Cannot have key and pattern for the same config');\n }\n if (config.key) {\n throw new Error('Cannot have key and keys for the same config');\n }\n } else if (config.key) {\n if (config.pattern) {\n throw new Error('Cannot have key and pattern for the same config');\n }\n config.keys = [config.key];\n delete config.key;\n }\n\n if (config.handler) {\n if (config.handlers) {\n throw new Error('Cannot have handler and handlers for the same config');\n }\n config.handlers = [config.handler];\n delete config.handler;\n }\n\n if (config.processor) {\n if (config.processors) {\n throw new Error(\n 'Cannot have processors and processors for the same config',\n );\n }\n config.processors = [config.processor];\n delete config.processor;\n }\n\n return config;\n}\n\nexport function configure(config: Config[]): void {\n if (globalOrWindow.__NIGHTINGALE_CONFIG.length > 0) {\n // eslint-disable-next-line no-console\n console.log('nightingale: warning: config overridden');\n }\n\n clearCache();\n globalOrWindow.__NIGHTINGALE_CONFIG = config.map(handleConfig);\n}\n\nexport function addConfig(config: Config, unshift = false): void {\n config = handleConfig(config);\n globalOrWindow.__NIGHTINGALE_CONFIG[unshift ? 'unshift' : 'push'](config);\n clearCache();\n}\n\nconst configIsForKey = (key: string) => (config: Config) => {\n if (config.keys) return config.keys.includes(key);\n if (config.pattern) return config.pattern.test(key);\n return true;\n};\n\nglobalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER = (\n key: string,\n): ComputedConfigForKey => {\n const globalCache = globalOrWindow.__NIGHTINGALE_LOGGER_MAP_CACHE;\n\n const existingCache = globalCache.get(key);\n\n if (existingCache) {\n return existingCache;\n }\n\n const loggerConfig: ComputedConfigForKey = {\n handlers: [],\n processors: [],\n };\n\n globalOrWindow.__NIGHTINGALE_CONFIG\n .filter(configIsForKey(key))\n .some((config: Config) => {\n if (config.handlers) loggerConfig.handlers.push(...config.handlers);\n if (config.processors) loggerConfig.processors.push(...config.processors);\n return config.stop;\n });\n\n globalCache.set(key, loggerConfig);\n return loggerConfig;\n};\n\nif (globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD) {\n globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD = (\n key: string,\n level: number,\n ): ComputedConfigForKey => {\n const { handlers, processors }: ComputedConfigForKey =\n globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER(key);\n\n return {\n handlers: handlers.filter(\n (handler: Handler) =>\n level >= handler.minLevel &&\n (!handler.isHandling || handler.isHandling(level, key)),\n ),\n processors,\n };\n };\n}\n","import { Logger } from 'nightingale-logger';\n\nexport { Logger } from 'nightingale-logger';\nexport { Level, Level as levels } from 'nightingale-levels';\nexport { configure, addConfig } from './config';\n\n/**\n * listen to uncaughtException and unhandledRejection\n * @param {Logger} [logger]\n */\nexport function listenUnhandledErrors(\n logger: Logger = new Logger(\n 'nightingale:listenUnhandledErrors',\n 'UnhandledErrors',\n ),\n): void {\n process.on('uncaughtException', (error) => {\n logger.error('uncaughtException', { error, unhandled: true });\n });\n process.on('unhandledRejection', (error) => {\n logger.error('unhandledRejection', { error, unhandled: true });\n });\n}\n"],"names":["globalOrWindow","global","window","__NIGHTINGALE_GLOBAL_HANDLERS","Error","__NIGHTINGALE_CONFIG","__NIGHTINGALE_LOGGER_MAP_CACHE","Map","__NIGHTINGALE_CONFIG_DEFAULT","handlers","processors","clearCache","clear","handleConfig","config","keys","pattern","key","handler","processor","configure","length","console","log","map","addConfig","unshift","configIsForKey","includes","test","__NIGHTINGALE_GET_CONFIG_FOR_LOGGER","globalCache","existingCache","get","loggerConfig","filter","some","push","stop","set","__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD","level","minLevel","isHandling","listenUnhandledErrors","logger","Logger","process","on","error","unhandled"],"mappings":"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"}