nightingale 14.2.1 → 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 +33 -0
- package/README.md +204 -57
- package/dist/definitions/config.d.ts +1 -1
- package/dist/definitions/debug/debug.d.ts +5 -0
- package/dist/definitions/debug/debug.d.ts.map +1 -0
- package/dist/definitions/debug/debug.test.d.ts +2 -0
- package/dist/definitions/debug/debug.test.d.ts.map +1 -0
- package/dist/definitions/formatter-utils/formatObject.d.ts +9 -0
- package/dist/definitions/formatter-utils/formatObject.d.ts.map +1 -0
- package/dist/definitions/formatter-utils/formatObject.test.d.ts +2 -0
- package/dist/definitions/formatter-utils/formatObject.test.d.ts.map +1 -0
- package/dist/definitions/formatter-utils/formatRecordToString.d.ts +4 -0
- package/dist/definitions/formatter-utils/formatRecordToString.d.ts.map +1 -0
- package/dist/definitions/formatter-utils/index.d.ts +15 -0
- package/dist/definitions/formatter-utils/index.d.ts.map +1 -0
- package/dist/definitions/formatter-utils/index.test.d.ts +2 -0
- package/dist/definitions/formatter-utils/index.test.d.ts.map +1 -0
- package/dist/definitions/formatter-utils/levelToStyles.d.ts +3 -0
- package/dist/definitions/formatter-utils/levelToStyles.d.ts.map +1 -0
- package/dist/definitions/formatter-utils/levelToSymbol.d.ts +3 -0
- package/dist/definitions/formatter-utils/levelToSymbol.d.ts.map +1 -0
- package/dist/definitions/formatter-utils/styleToHexColor.d.ts +7 -0
- package/dist/definitions/formatter-utils/styleToHexColor.d.ts.map +1 -0
- package/dist/definitions/formatter-utils/styleToHtmlStyle.d.ts +109 -0
- package/dist/definitions/formatter-utils/styleToHtmlStyle.d.ts.map +1 -0
- package/dist/definitions/formatters/ANSIFormatter.d.ts +6 -0
- package/dist/definitions/formatters/ANSIFormatter.d.ts.map +1 -0
- package/dist/definitions/formatters/ANSIFormatter.test.d.ts +2 -0
- package/dist/definitions/formatters/ANSIFormatter.test.d.ts.map +1 -0
- package/dist/definitions/formatters/BrowserConsoleFormatter.d.ts +10 -0
- package/dist/definitions/formatters/BrowserConsoleFormatter.d.ts.map +1 -0
- package/dist/definitions/formatters/BrowserConsoleFormatter.test.d.ts +2 -0
- package/dist/definitions/formatters/BrowserConsoleFormatter.test.d.ts.map +1 -0
- package/dist/definitions/formatters/HTMLFormatter.d.ts +5 -0
- package/dist/definitions/formatters/HTMLFormatter.d.ts.map +1 -0
- package/dist/definitions/formatters/HTMLFormatter.test.d.ts +2 -0
- package/dist/definitions/formatters/HTMLFormatter.test.d.ts.map +1 -0
- package/dist/definitions/formatters/JSONFormatter.d.ts +4 -0
- package/dist/definitions/formatters/JSONFormatter.d.ts.map +1 -0
- package/dist/definitions/formatters/JSONFormatter.test.d.ts +2 -0
- package/dist/definitions/formatters/JSONFormatter.test.d.ts.map +1 -0
- package/dist/definitions/formatters/MarkdownFormatter.d.ts +5 -0
- package/dist/definitions/formatters/MarkdownFormatter.d.ts.map +1 -0
- package/dist/definitions/formatters/MarkdownFormatter.test.d.ts +2 -0
- package/dist/definitions/formatters/MarkdownFormatter.test.d.ts.map +1 -0
- package/dist/definitions/formatters/RawFormatter.d.ts +5 -0
- package/dist/definitions/formatters/RawFormatter.d.ts.map +1 -0
- package/dist/definitions/formatters/RawFormatter.test.d.ts +2 -0
- package/dist/definitions/formatters/RawFormatter.test.d.ts.map +1 -0
- package/dist/definitions/handlers/BrowserConsoleHandler.d.ts +14 -0
- package/dist/definitions/handlers/BrowserConsoleHandler.d.ts.map +1 -0
- package/dist/definitions/handlers/ConsoleCLIHandler.d.ts +12 -0
- package/dist/definitions/handlers/ConsoleCLIHandler.d.ts.map +1 -0
- package/dist/definitions/handlers/ConsoleHandler.d.ts +14 -0
- package/dist/definitions/handlers/ConsoleHandler.d.ts.map +1 -0
- package/dist/definitions/handlers/StringHandler.d.ts +9 -0
- package/dist/definitions/handlers/StringHandler.d.ts.map +1 -0
- package/dist/definitions/index.d.ts +18 -4
- package/dist/definitions/index.d.ts.map +1 -1
- package/dist/definitions/loggers/LoggerCLI.d.ts +23 -0
- package/dist/definitions/loggers/LoggerCLI.d.ts.map +1 -0
- package/dist/definitions/outputs/cliConsoleOutput.d.ts +3 -0
- package/dist/definitions/outputs/cliConsoleOutput.d.ts.map +1 -0
- package/dist/definitions/outputs/consoleOutput.d.ts +3 -0
- package/dist/definitions/outputs/consoleOutput.d.ts.map +1 -0
- package/dist/index-browser.es.js +936 -46
- package/dist/index-browser.es.js.map +1 -1
- package/dist/index-node20.mjs +1023 -0
- package/dist/index-node20.mjs.map +1 -0
- package/package.json +31 -37
- package/src/config.ts +12 -12
- package/src/debug/debug.test.ts +50 -0
- package/src/debug/debug.ts +100 -0
- package/src/formatter-utils/formatObject.test.ts +153 -0
- package/src/formatter-utils/formatObject.ts +462 -0
- package/src/formatter-utils/formatRecordToString.ts +67 -0
- package/src/formatter-utils/index.test.ts +33 -0
- package/src/formatter-utils/index.ts +20 -0
- package/src/formatter-utils/levelToStyles.ts +14 -0
- package/src/formatter-utils/levelToSymbol.ts +14 -0
- package/src/formatter-utils/styleToHexColor.ts +9 -0
- package/src/formatter-utils/styleToHtmlStyle.ts +69 -0
- package/src/formatters/ANSIFormatter.test.ts +27 -0
- package/src/formatters/ANSIFormatter.ts +68 -0
- package/src/formatters/BrowserConsoleFormatter.test.ts +59 -0
- package/src/formatters/BrowserConsoleFormatter.ts +45 -0
- package/src/formatters/HTMLFormatter.test.ts +23 -0
- package/src/formatters/HTMLFormatter.ts +28 -0
- package/src/formatters/JSONFormatter.test.ts +62 -0
- package/src/formatters/JSONFormatter.ts +62 -0
- package/src/formatters/MarkdownFormatter.test.ts +19 -0
- package/src/formatters/MarkdownFormatter.ts +31 -0
- package/src/formatters/RawFormatter.test.ts +21 -0
- package/src/formatters/RawFormatter.ts +13 -0
- package/src/handlers/BrowserConsoleHandler.ts +78 -0
- package/src/handlers/ConsoleCLIHandler.ts +41 -0
- package/src/handlers/ConsoleHandler.ts +55 -0
- package/src/handlers/StringHandler.ts +21 -0
- package/src/index.test.ts +29 -29
- package/src/index.ts +24 -10
- package/src/loggers/LoggerCLI.ts +91 -0
- package/src/outputs/cliConsoleOutput.ts +17 -0
- package/src/outputs/consoleOutput.ts +18 -0
- package/dist/index-browsermodern.es.js +0 -120
- package/dist/index-browsermodern.es.js.map +0 -1
- package/dist/index-node18.mjs +0 -120
- package/dist/index-node18.mjs.map +0 -1
- package/src/.eslintrc.json +0 -30
|
@@ -1 +0,0 @@
|
|
|
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(error, {\n unhandled: true,\n type: 'uncaughtException',\n });\n });\n process.on('unhandledRejection', (error) => {\n logger.error(error as Error, {\n unhandled: true,\n type: 'unhandledRejection',\n });\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","type"],"mappings":"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"}
|
package/src/.eslintrc.json
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"root": true,
|
|
3
|
-
"parser": "@typescript-eslint/parser",
|
|
4
|
-
"parserOptions": {
|
|
5
|
-
"project": "packages/nightingale/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
|
-
}
|