standard-log 7.1.0 → 9.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/LICENSE +1 -1
- package/README.md +57 -133
- package/{libm/console/createConsoleLogReporter.d.ts → cjs/console.d.ts} +5 -5
- package/cjs/console.d.ts.map +1 -0
- package/cjs/console.js +76 -0
- package/cjs/console.js.map +1 -0
- package/cjs/console.spec.d.ts +2 -0
- package/cjs/console.spec.d.ts.map +1 -0
- package/cjs/console.spec.js +177 -0
- package/cjs/console.spec.js.map +1 -0
- package/cjs/errors.d.ts +9 -0
- package/cjs/errors.d.ts.map +1 -0
- package/cjs/errors.js +43 -0
- package/cjs/errors.js.map +1 -0
- package/cjs/formatter.d.ts +6 -0
- package/cjs/formatter.d.ts.map +1 -0
- package/cjs/formatter.js +46 -0
- package/cjs/formatter.js.map +1 -0
- package/cjs/formatter.spec.d.ts +2 -0
- package/cjs/formatter.spec.d.ts.map +1 -0
- package/cjs/formatter.spec.js +32 -0
- package/cjs/formatter.spec.js.map +1 -0
- package/cjs/index.d.ts +8 -0
- package/cjs/index.d.ts.map +1 -0
- package/cjs/index.js +24 -0
- package/cjs/index.js.map +1 -0
- package/cjs/logLevels.d.ts +60 -0
- package/cjs/logLevels.d.ts.map +1 -0
- package/cjs/logLevels.js +87 -0
- package/cjs/logLevels.js.map +1 -0
- package/cjs/logStore.d.ts +20 -0
- package/cjs/logStore.d.ts.map +1 -0
- package/cjs/logStore.js +44 -0
- package/cjs/logStore.js.map +1 -0
- package/cjs/logStore.spec.d.ts +2 -0
- package/cjs/logStore.spec.d.ts.map +1 -0
- package/cjs/logStore.spec.js +93 -0
- package/cjs/logStore.spec.js.map +1 -0
- package/cjs/logger.d.ts +6 -0
- package/cjs/logger.d.ts.map +1 -0
- package/cjs/logger.js +97 -0
- package/cjs/logger.js.map +1 -0
- package/{lib/memory/MemoryLogReporter.d.ts → cjs/memory.d.ts} +2 -2
- package/cjs/memory.d.ts.map +1 -0
- package/cjs/memory.js +39 -0
- package/cjs/memory.js.map +1 -0
- package/cjs/memory.spec.d.ts +2 -0
- package/cjs/memory.spec.d.ts.map +1 -0
- package/cjs/memory.spec.js +115 -0
- package/cjs/memory.spec.js.map +1 -0
- package/cjs/package.json +1 -0
- package/cjs/platform.browser.d.ts +7 -0
- package/cjs/platform.browser.d.ts.map +1 -0
- package/cjs/platform.browser.js +11 -0
- package/cjs/platform.browser.js.map +1 -0
- package/cjs/platform.d.ts +8 -0
- package/cjs/platform.d.ts.map +1 -0
- package/cjs/platform.js +26 -0
- package/cjs/platform.js.map +1 -0
- package/cjs/platform.spec.d.ts +2 -0
- package/cjs/platform.spec.d.ts.map +1 -0
- package/cjs/platform.spec.js +22 -0
- package/cjs/platform.spec.js.map +1 -0
- package/cjs/standardLog.d.ts +21 -0
- package/cjs/standardLog.d.ts.map +1 -0
- package/cjs/standardLog.js +59 -0
- package/cjs/standardLog.js.map +1 -0
- package/cjs/standardLog.spec.d.ts +2 -0
- package/cjs/standardLog.spec.d.ts.map +1 -0
- package/cjs/standardLog.spec.js +536 -0
- package/cjs/standardLog.spec.js.map +1 -0
- package/cjs/testUtil.d.ts +10 -0
- package/cjs/testUtil.d.ts.map +1 -0
- package/cjs/testUtil.js +28 -0
- package/cjs/testUtil.js.map +1 -0
- package/{lib → cjs}/types.d.ts +33 -24
- package/cjs/types.d.ts.map +1 -0
- package/{lib/console → cjs}/types.js +0 -0
- package/cjs/types.js.map +1 -0
- package/cjs/types.spec.d.ts +2 -0
- package/cjs/types.spec.d.ts.map +1 -0
- package/cjs/types.spec.js +7 -0
- package/cjs/types.spec.js.map +1 -0
- package/dist/standard-log.es5.js +1971 -0
- package/dist/standard-log.es5.js.gz +0 -0
- package/dist/standard-log.es5.js.map +1 -0
- package/dist/standard-log.es5.js.map.gz +0 -0
- package/dist/standard-log.esm.js +1887 -0
- package/dist/standard-log.esm.js.gz +0 -0
- package/dist/standard-log.esm.js.map +1 -0
- package/dist/standard-log.esm.js.map.gz +0 -0
- package/{lib/console/createConsoleLogReporter.d.ts → esm/console.d.ts} +5 -5
- package/esm/console.d.ts.map +1 -0
- package/{libm/console/polyfilledConsole.js → esm/console.js} +36 -4
- package/esm/console.js.map +1 -0
- package/esm/console.spec.d.ts +2 -0
- package/esm/console.spec.d.ts.map +1 -0
- package/esm/console.spec.js +151 -0
- package/esm/console.spec.js.map +1 -0
- package/esm/errors.d.ts +9 -0
- package/esm/errors.d.ts.map +1 -0
- package/esm/errors.js +18 -0
- package/esm/errors.js.map +1 -0
- package/esm/formatter.d.ts +6 -0
- package/esm/formatter.d.ts.map +1 -0
- package/{libm/formatter/createTimestampFormatter.js → esm/formatter.js} +10 -2
- package/esm/formatter.js.map +1 -0
- package/esm/formatter.spec.d.ts +2 -0
- package/esm/formatter.spec.d.ts.map +1 -0
- package/esm/formatter.spec.js +30 -0
- package/esm/formatter.spec.js.map +1 -0
- package/esm/index.d.ts +8 -0
- package/esm/index.d.ts.map +1 -0
- package/esm/index.js +8 -0
- package/esm/index.js.map +1 -0
- package/esm/logLevels.d.ts +60 -0
- package/esm/logLevels.d.ts.map +1 -0
- package/{libm/logLevel.js → esm/logLevels.js} +29 -3
- package/esm/logLevels.js.map +1 -0
- package/esm/logStore.d.ts +20 -0
- package/esm/logStore.d.ts.map +1 -0
- package/esm/logStore.js +37 -0
- package/esm/logStore.js.map +1 -0
- package/esm/logStore.spec.d.ts +2 -0
- package/esm/logStore.spec.d.ts.map +1 -0
- package/esm/logStore.spec.js +93 -0
- package/esm/logStore.spec.js.map +1 -0
- package/esm/logger.d.ts +6 -0
- package/esm/logger.d.ts.map +1 -0
- package/esm/logger.js +74 -0
- package/esm/logger.js.map +1 -0
- package/{libm/memory/MemoryLogReporter.d.ts → esm/memory.d.ts} +2 -2
- package/esm/memory.d.ts.map +1 -0
- package/esm/memory.js +34 -0
- package/esm/memory.js.map +1 -0
- package/esm/memory.spec.d.ts +2 -0
- package/esm/memory.spec.d.ts.map +1 -0
- package/esm/memory.spec.js +110 -0
- package/esm/memory.spec.js.map +1 -0
- package/esm/platform.browser.d.ts +7 -0
- package/esm/platform.browser.d.ts.map +1 -0
- package/esm/platform.browser.js +6 -0
- package/esm/platform.browser.js.map +1 -0
- package/esm/platform.d.ts +8 -0
- package/esm/platform.d.ts.map +1 -0
- package/esm/platform.js +20 -0
- package/esm/platform.js.map +1 -0
- package/esm/platform.spec.d.ts +2 -0
- package/esm/platform.spec.d.ts.map +1 -0
- package/esm/platform.spec.js +20 -0
- package/esm/platform.spec.js.map +1 -0
- package/esm/standardLog.d.ts +21 -0
- package/esm/standardLog.d.ts.map +1 -0
- package/esm/standardLog.js +36 -0
- package/esm/standardLog.js.map +1 -0
- package/esm/standardLog.spec.d.ts +2 -0
- package/esm/standardLog.spec.d.ts.map +1 -0
- package/esm/standardLog.spec.js +434 -0
- package/esm/standardLog.spec.js.map +1 -0
- package/esm/testUtil.d.ts +10 -0
- package/esm/testUtil.d.ts.map +1 -0
- package/esm/testUtil.js +17 -0
- package/esm/testUtil.js.map +1 -0
- package/{libm → esm}/types.d.ts +33 -24
- package/esm/types.d.ts.map +1 -0
- package/{libm/console → esm}/types.js +0 -0
- package/esm/types.js.map +1 -0
- package/esm/types.spec.d.ts +2 -0
- package/esm/types.spec.d.ts.map +1 -0
- package/esm/types.spec.js +5 -0
- package/esm/types.spec.js.map +1 -0
- package/package.json +72 -31
- package/ts/console.ts +72 -0
- package/ts/errors.ts +12 -0
- package/{src/formatter/createTimestampFormatter.ts → ts/formatter.ts} +13 -2
- package/ts/index.ts +7 -0
- package/{src/logLevel.ts → ts/logLevels.ts} +20 -3
- package/ts/logStore.ts +52 -0
- package/ts/logger.ts +85 -0
- package/ts/memory.ts +47 -0
- package/ts/platform.browser.ts +8 -0
- package/ts/platform.ts +25 -0
- package/ts/standardLog.ts +54 -0
- package/{src → ts}/types.ts +39 -30
- package/dist/standard-log.js +0 -5472
- package/dist/standard-log.js.gz +0 -0
- package/dist/standard-log.js.map +0 -1
- package/dist/standard-log.js.map.gz +0 -0
- package/lib/LogEntry.d.ts +0 -7
- package/lib/LogEntry.d.ts.map +0 -1
- package/lib/LogEntry.js +0 -3
- package/lib/LogEntry.js.map +0 -1
- package/lib/captureLogs.d.ts +0 -4
- package/lib/captureLogs.d.ts.map +0 -1
- package/lib/captureLogs.js +0 -33
- package/lib/captureLogs.js.map +0 -1
- package/lib/config.d.ts +0 -12
- package/lib/config.d.ts.map +0 -1
- package/lib/config.js +0 -49
- package/lib/config.js.map +0 -1
- package/lib/configForTest.d.ts +0 -5
- package/lib/configForTest.d.ts.map +0 -1
- package/lib/configForTest.js +0 -18
- package/lib/configForTest.js.map +0 -1
- package/lib/console/createConsoleLogReporter.d.ts.map +0 -1
- package/lib/console/createConsoleLogReporter.js +0 -42
- package/lib/console/createConsoleLogReporter.js.map +0 -1
- package/lib/console/index.d.ts +0 -4
- package/lib/console/index.d.ts.map +0 -1
- package/lib/console/index.js +0 -7
- package/lib/console/index.js.map +0 -1
- package/lib/console/isConsoleDebugAvailable.d.ts +0 -2
- package/lib/console/isConsoleDebugAvailable.d.ts.map +0 -1
- package/lib/console/isConsoleDebugAvailable.js +0 -18
- package/lib/console/isConsoleDebugAvailable.js.map +0 -1
- package/lib/console/polyfilledConsole.d.ts +0 -7
- package/lib/console/polyfilledConsole.d.ts.map +0 -1
- package/lib/console/polyfilledConsole.js +0 -41
- package/lib/console/polyfilledConsole.js.map +0 -1
- package/lib/console/semverGt.d.ts +0 -2
- package/lib/console/semverGt.d.ts.map +0 -1
- package/lib/console/semverGt.js +0 -13
- package/lib/console/semverGt.js.map +0 -1
- package/lib/console/toConsoleMethod.d.ts +0 -2
- package/lib/console/toConsoleMethod.d.ts.map +0 -1
- package/lib/console/toConsoleMethod.js +0 -22
- package/lib/console/toConsoleMethod.js.map +0 -1
- package/lib/console/types.d.ts +0 -3
- package/lib/console/types.d.ts.map +0 -1
- package/lib/console/types.js.map +0 -1
- package/lib/customLogLevel.d.ts +0 -11
- package/lib/customLogLevel.d.ts.map +0 -1
- package/lib/customLogLevel.js +0 -38
- package/lib/customLogLevel.js.map +0 -1
- package/lib/errors.d.ts +0 -19
- package/lib/errors.d.ts.map +0 -1
- package/lib/errors.js +0 -46
- package/lib/errors.js.map +0 -1
- package/lib/formatter/createTimestampFormatter.d.ts +0 -3
- package/lib/formatter/createTimestampFormatter.d.ts.map +0 -1
- package/lib/formatter/createTimestampFormatter.js +0 -24
- package/lib/formatter/createTimestampFormatter.js.map +0 -1
- package/lib/formatter/formatLogLevel.d.ts +0 -2
- package/lib/formatter/formatLogLevel.d.ts.map +0 -1
- package/lib/formatter/formatLogLevel.js +0 -10
- package/lib/formatter/formatLogLevel.js.map +0 -1
- package/lib/formatter/index.d.ts +0 -4
- package/lib/formatter/index.d.ts.map +0 -1
- package/lib/formatter/index.js +0 -7
- package/lib/formatter/index.js.map +0 -1
- package/lib/formatter/plainLogFormatter.d.ts +0 -3
- package/lib/formatter/plainLogFormatter.d.ts.map +0 -1
- package/lib/formatter/plainLogFormatter.js +0 -11
- package/lib/formatter/plainLogFormatter.js.map +0 -1
- package/lib/getDefaultReporter.browser.d.ts +0 -2
- package/lib/getDefaultReporter.browser.d.ts.map +0 -1
- package/lib/getDefaultReporter.browser.js +0 -15
- package/lib/getDefaultReporter.browser.js.map +0 -1
- package/lib/getDefaultReporter.d.ts +0 -2
- package/lib/getDefaultReporter.d.ts.map +0 -1
- package/lib/getDefaultReporter.js +0 -19
- package/lib/getDefaultReporter.js.map +0 -1
- package/lib/getLogModeFromEnvironment.browser.d.ts +0 -3
- package/lib/getLogModeFromEnvironment.browser.d.ts.map +0 -1
- package/lib/getLogModeFromEnvironment.browser.js +0 -9
- package/lib/getLogModeFromEnvironment.browser.js.map +0 -1
- package/lib/getLogModeFromEnvironment.d.ts +0 -3
- package/lib/getLogModeFromEnvironment.d.ts.map +0 -1
- package/lib/getLogModeFromEnvironment.js +0 -17
- package/lib/getLogModeFromEnvironment.js.map +0 -1
- package/lib/getLogger.d.ts +0 -9
- package/lib/getLogger.d.ts.map +0 -1
- package/lib/getLogger.js +0 -95
- package/lib/getLogger.js.map +0 -1
- package/lib/getLoggers.d.ts +0 -7
- package/lib/getLoggers.d.ts.map +0 -1
- package/lib/getLoggers.js +0 -15
- package/lib/getLoggers.js.map +0 -1
- package/lib/index.d.ts +0 -17
- package/lib/index.d.ts.map +0 -1
- package/lib/index.js +0 -20
- package/lib/index.js.map +0 -1
- package/lib/logLevel.d.ts +0 -106
- package/lib/logLevel.d.ts.map +0 -1
- package/lib/logLevel.js +0 -59
- package/lib/logLevel.js.map +0 -1
- package/lib/logLevelFn.d.ts +0 -20
- package/lib/logLevelFn.d.ts.map +0 -1
- package/lib/logLevelFn.js +0 -76
- package/lib/logLevelFn.js.map +0 -1
- package/lib/logReporter.d.ts +0 -7
- package/lib/logReporter.d.ts.map +0 -1
- package/lib/logReporter.js +0 -29
- package/lib/logReporter.js.map +0 -1
- package/lib/logReporterInternal.d.ts +0 -3
- package/lib/logReporterInternal.d.ts.map +0 -1
- package/lib/logReporterInternal.js +0 -23
- package/lib/logReporterInternal.js.map +0 -1
- package/lib/memory/MemoryLogReporter.d.ts.map +0 -1
- package/lib/memory/MemoryLogReporter.js +0 -56
- package/lib/memory/MemoryLogReporter.js.map +0 -1
- package/lib/memory/index.d.ts +0 -3
- package/lib/memory/index.d.ts.map +0 -1
- package/lib/memory/index.js +0 -6
- package/lib/memory/index.js.map +0 -1
- package/lib/memory/logEntriesToString.d.ts +0 -3
- package/lib/memory/logEntriesToString.d.ts.map +0 -1
- package/lib/memory/logEntriesToString.js +0 -10
- package/lib/memory/logEntriesToString.js.map +0 -1
- package/lib/memory/toInspectStringForObject.d.ts +0 -3
- package/lib/memory/toInspectStringForObject.d.ts.map +0 -1
- package/lib/memory/toInspectStringForObject.js +0 -15
- package/lib/memory/toInspectStringForObject.js.map +0 -1
- package/lib/shouldLog.d.ts +0 -8
- package/lib/shouldLog.d.ts.map +0 -1
- package/lib/shouldLog.js +0 -14
- package/lib/shouldLog.js.map +0 -1
- package/lib/store.d.ts +0 -3
- package/lib/store.d.ts.map +0 -1
- package/lib/store.js +0 -17
- package/lib/store.js.map +0 -1
- package/lib/suppressLogs.d.ts +0 -6
- package/lib/suppressLogs.d.ts.map +0 -1
- package/lib/suppressLogs.js +0 -17
- package/lib/suppressLogs.js.map +0 -1
- package/lib/testUtil.d.ts +0 -7
- package/lib/testUtil.d.ts.map +0 -1
- package/lib/testUtil.js +0 -23
- package/lib/testUtil.js.map +0 -1
- package/lib/types.d.ts.map +0 -1
- package/lib/types.js +0 -3
- package/lib/types.js.map +0 -1
- package/lib/typesInternal.d.ts +0 -20
- package/lib/typesInternal.d.ts.map +0 -1
- package/lib/typesInternal.js +0 -3
- package/lib/typesInternal.js.map +0 -1
- package/lib/utils.d.ts +0 -5
- package/lib/utils.d.ts.map +0 -1
- package/lib/utils.js +0 -14
- package/lib/utils.js.map +0 -1
- package/lib/writeToReporters.d.ts +0 -6
- package/lib/writeToReporters.d.ts.map +0 -1
- package/lib/writeToReporters.js +0 -22
- package/lib/writeToReporters.js.map +0 -1
- package/libm/LogEntry.d.ts +0 -7
- package/libm/LogEntry.d.ts.map +0 -1
- package/libm/LogEntry.js +0 -2
- package/libm/LogEntry.js.map +0 -1
- package/libm/captureLogs.d.ts +0 -4
- package/libm/captureLogs.d.ts.map +0 -1
- package/libm/captureLogs.js +0 -29
- package/libm/captureLogs.js.map +0 -1
- package/libm/config.d.ts +0 -12
- package/libm/config.d.ts.map +0 -1
- package/libm/config.js +0 -44
- package/libm/config.js.map +0 -1
- package/libm/configForTest.d.ts +0 -5
- package/libm/configForTest.d.ts.map +0 -1
- package/libm/configForTest.js +0 -14
- package/libm/configForTest.js.map +0 -1
- package/libm/console/createConsoleLogReporter.d.ts.map +0 -1
- package/libm/console/createConsoleLogReporter.js +0 -37
- package/libm/console/createConsoleLogReporter.js.map +0 -1
- package/libm/console/index.d.ts +0 -4
- package/libm/console/index.d.ts.map +0 -1
- package/libm/console/index.js +0 -4
- package/libm/console/index.js.map +0 -1
- package/libm/console/isConsoleDebugAvailable.d.ts +0 -2
- package/libm/console/isConsoleDebugAvailable.d.ts.map +0 -1
- package/libm/console/isConsoleDebugAvailable.js +0 -13
- package/libm/console/isConsoleDebugAvailable.js.map +0 -1
- package/libm/console/polyfilledConsole.d.ts +0 -7
- package/libm/console/polyfilledConsole.d.ts.map +0 -1
- package/libm/console/polyfilledConsole.js.map +0 -1
- package/libm/console/semverGt.d.ts +0 -2
- package/libm/console/semverGt.d.ts.map +0 -1
- package/libm/console/semverGt.js +0 -9
- package/libm/console/semverGt.js.map +0 -1
- package/libm/console/toConsoleMethod.d.ts +0 -2
- package/libm/console/toConsoleMethod.d.ts.map +0 -1
- package/libm/console/toConsoleMethod.js +0 -18
- package/libm/console/toConsoleMethod.js.map +0 -1
- package/libm/console/types.d.ts +0 -3
- package/libm/console/types.d.ts.map +0 -1
- package/libm/console/types.js.map +0 -1
- package/libm/customLogLevel.d.ts +0 -11
- package/libm/customLogLevel.d.ts.map +0 -1
- package/libm/customLogLevel.js +0 -30
- package/libm/customLogLevel.js.map +0 -1
- package/libm/errors.d.ts +0 -19
- package/libm/errors.d.ts.map +0 -1
- package/libm/errors.js +0 -32
- package/libm/errors.js.map +0 -1
- package/libm/formatter/createTimestampFormatter.d.ts +0 -3
- package/libm/formatter/createTimestampFormatter.d.ts.map +0 -1
- package/libm/formatter/createTimestampFormatter.js.map +0 -1
- package/libm/formatter/formatLogLevel.d.ts +0 -2
- package/libm/formatter/formatLogLevel.d.ts.map +0 -1
- package/libm/formatter/formatLogLevel.js +0 -6
- package/libm/formatter/formatLogLevel.js.map +0 -1
- package/libm/formatter/index.d.ts +0 -4
- package/libm/formatter/index.d.ts.map +0 -1
- package/libm/formatter/index.js +0 -4
- package/libm/formatter/index.js.map +0 -1
- package/libm/formatter/plainLogFormatter.d.ts +0 -3
- package/libm/formatter/plainLogFormatter.d.ts.map +0 -1
- package/libm/formatter/plainLogFormatter.js +0 -5
- package/libm/formatter/plainLogFormatter.js.map +0 -1
- package/libm/getDefaultReporter.browser.d.ts +0 -2
- package/libm/getDefaultReporter.browser.d.ts.map +0 -1
- package/libm/getDefaultReporter.browser.js +0 -11
- package/libm/getDefaultReporter.browser.js.map +0 -1
- package/libm/getDefaultReporter.d.ts +0 -2
- package/libm/getDefaultReporter.d.ts.map +0 -1
- package/libm/getDefaultReporter.js +0 -15
- package/libm/getDefaultReporter.js.map +0 -1
- package/libm/getLogModeFromEnvironment.browser.d.ts +0 -3
- package/libm/getLogModeFromEnvironment.browser.d.ts.map +0 -1
- package/libm/getLogModeFromEnvironment.browser.js +0 -5
- package/libm/getLogModeFromEnvironment.browser.js.map +0 -1
- package/libm/getLogModeFromEnvironment.d.ts +0 -3
- package/libm/getLogModeFromEnvironment.d.ts.map +0 -1
- package/libm/getLogModeFromEnvironment.js +0 -13
- package/libm/getLogModeFromEnvironment.js.map +0 -1
- package/libm/getLogger.d.ts +0 -9
- package/libm/getLogger.d.ts.map +0 -1
- package/libm/getLogger.js +0 -78
- package/libm/getLogger.js.map +0 -1
- package/libm/getLoggers.d.ts +0 -7
- package/libm/getLoggers.d.ts.map +0 -1
- package/libm/getLoggers.js +0 -11
- package/libm/getLoggers.js.map +0 -1
- package/libm/index.d.ts +0 -17
- package/libm/index.d.ts.map +0 -1
- package/libm/index.js +0 -17
- package/libm/index.js.map +0 -1
- package/libm/logLevel.d.ts +0 -106
- package/libm/logLevel.d.ts.map +0 -1
- package/libm/logLevel.js.map +0 -1
- package/libm/logLevelFn.d.ts +0 -20
- package/libm/logLevelFn.d.ts.map +0 -1
- package/libm/logLevelFn.js +0 -67
- package/libm/logLevelFn.js.map +0 -1
- package/libm/logReporter.d.ts +0 -7
- package/libm/logReporter.d.ts.map +0 -1
- package/libm/logReporter.js +0 -21
- package/libm/logReporter.js.map +0 -1
- package/libm/logReporterInternal.d.ts +0 -3
- package/libm/logReporterInternal.d.ts.map +0 -1
- package/libm/logReporterInternal.js +0 -19
- package/libm/logReporterInternal.js.map +0 -1
- package/libm/memory/MemoryLogReporter.d.ts.map +0 -1
- package/libm/memory/MemoryLogReporter.js +0 -51
- package/libm/memory/MemoryLogReporter.js.map +0 -1
- package/libm/memory/index.d.ts +0 -3
- package/libm/memory/index.d.ts.map +0 -1
- package/libm/memory/index.js +0 -3
- package/libm/memory/index.js.map +0 -1
- package/libm/memory/logEntriesToString.d.ts +0 -3
- package/libm/memory/logEntriesToString.d.ts.map +0 -1
- package/libm/memory/logEntriesToString.js +0 -6
- package/libm/memory/logEntriesToString.js.map +0 -1
- package/libm/memory/toInspectStringForObject.d.ts +0 -3
- package/libm/memory/toInspectStringForObject.d.ts.map +0 -1
- package/libm/memory/toInspectStringForObject.js +0 -11
- package/libm/memory/toInspectStringForObject.js.map +0 -1
- package/libm/shouldLog.d.ts +0 -8
- package/libm/shouldLog.d.ts.map +0 -1
- package/libm/shouldLog.js +0 -10
- package/libm/shouldLog.js.map +0 -1
- package/libm/store.d.ts +0 -3
- package/libm/store.d.ts.map +0 -1
- package/libm/store.js +0 -24
- package/libm/store.js.map +0 -1
- package/libm/suppressLogs.d.ts +0 -6
- package/libm/suppressLogs.d.ts.map +0 -1
- package/libm/suppressLogs.js +0 -9
- package/libm/suppressLogs.js.map +0 -1
- package/libm/testUtil.d.ts +0 -7
- package/libm/testUtil.d.ts.map +0 -1
- package/libm/testUtil.js +0 -17
- package/libm/testUtil.js.map +0 -1
- package/libm/types.d.ts.map +0 -1
- package/libm/types.js +0 -2
- package/libm/types.js.map +0 -1
- package/libm/typesInternal.d.ts +0 -20
- package/libm/typesInternal.d.ts.map +0 -1
- package/libm/typesInternal.js +0 -2
- package/libm/typesInternal.js.map +0 -1
- package/libm/utils.d.ts +0 -5
- package/libm/utils.d.ts.map +0 -1
- package/libm/utils.js +0 -10
- package/libm/utils.js.map +0 -1
- package/libm/writeToReporters.d.ts +0 -6
- package/libm/writeToReporters.d.ts.map +0 -1
- package/libm/writeToReporters.js +0 -18
- package/libm/writeToReporters.js.map +0 -1
- package/src/LogEntry.ts +0 -7
- package/src/captureLogs.spec.ts +0 -52
- package/src/captureLogs.ts +0 -35
- package/src/config.spec.ts +0 -80
- package/src/config.ts +0 -57
- package/src/configForTest.spec.ts +0 -16
- package/src/configForTest.ts +0 -16
- package/src/console/createConsoleLogReporter.spec.ts +0 -198
- package/src/console/createConsoleLogReporter.ts +0 -42
- package/src/console/index.ts +0 -3
- package/src/console/isConsoleDebugAvailable.ts +0 -11
- package/src/console/polyfilledConsole.ts +0 -34
- package/src/console/semverGt.spec.ts +0 -25
- package/src/console/semverGt.ts +0 -9
- package/src/console/toConsoleMethod.ts +0 -18
- package/src/console/types.ts +0 -3
- package/src/customLogLevel.spec.ts +0 -39
- package/src/customLogLevel.ts +0 -35
- package/src/errors.ts +0 -24
- package/src/formatter/createTimestampFormatter.spec.ts +0 -24
- package/src/formatter/formatLogLevel.ts +0 -6
- package/src/formatter/index.ts +0 -3
- package/src/formatter/plainLogFormatter.spec.ts +0 -8
- package/src/formatter/plainLogFormatter.ts +0 -6
- package/src/getDefaultReporter.browser.ts +0 -13
- package/src/getDefaultReporter.ts +0 -15
- package/src/getLogModeFromEnvironment.browser.ts +0 -6
- package/src/getLogModeFromEnvironment.spec.ts +0 -16
- package/src/getLogModeFromEnvironment.ts +0 -16
- package/src/getLogger.spec.ts +0 -460
- package/src/getLogger.ts +0 -92
- package/src/getLoggers.ts +0 -12
- package/src/index.ts +0 -16
- package/src/logLevel.spec.ts +0 -161
- package/src/logLevelFn.ts +0 -72
- package/src/logReporter.spec.ts +0 -99
- package/src/logReporter.ts +0 -26
- package/src/logReporterInternal.ts +0 -18
- package/src/memory/MemoryLogReporter.spec.ts +0 -114
- package/src/memory/MemoryLogReporter.ts +0 -66
- package/src/memory/index.ts +0 -2
- package/src/memory/logEntriesToString.spec.ts +0 -47
- package/src/memory/logEntriesToString.ts +0 -7
- package/src/memory/toInspectStringForObject.ts +0 -13
- package/src/shouldLog.ts +0 -11
- package/src/store.ts +0 -25
- package/src/suppressLogs.spec.ts +0 -34
- package/src/suppressLogs.ts +0 -14
- package/src/testUtil.ts +0 -19
- package/src/types.spec.ts +0 -7
- package/src/typesInternal.ts +0 -21
- package/src/utils.ts +0 -9
- package/src/writeToReporters.spec.ts +0 -9
- package/src/writeToReporters.ts +0 -20
package/libm/writeToReporters.js
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { config } from './config';
|
|
2
|
-
import { store } from './store';
|
|
3
|
-
export function writeToReporters(logEntry, filter) {
|
|
4
|
-
writeToReporters.fn(logEntry, filter);
|
|
5
|
-
}
|
|
6
|
-
// istanbul ignore next
|
|
7
|
-
writeToReporters.fn = (logEntry, filter) => {
|
|
8
|
-
const store = getConfiguredStore();
|
|
9
|
-
const redirect = store.value.redirects[logEntry.id];
|
|
10
|
-
const reporters = redirect && redirect.length > 0 ? redirect : store.value.reporters;
|
|
11
|
-
reporters.filter(r => filter(r.id)).forEach(r => r.write(logEntry));
|
|
12
|
-
};
|
|
13
|
-
function getConfiguredStore() {
|
|
14
|
-
if (!store.value.configured)
|
|
15
|
-
config();
|
|
16
|
-
return store;
|
|
17
|
-
}
|
|
18
|
-
//# sourceMappingURL=writeToReporters.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"writeToReporters.js","sourceRoot":"","sources":["../src/writeToReporters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAGhC,MAAM,UAAU,gBAAgB,CAAC,QAAkB,EAAE,MAAuC;IAC1F,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;AACvC,CAAC;AAED,uBAAuB;AACvB,gBAAgB,CAAC,EAAE,GAAG,CAAC,QAAkB,EAAE,MAAuC,EAAE,EAAE;IACpF,MAAM,KAAK,GAAG,kBAAkB,EAAE,CAAA;IAClC,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;IACnD,MAAM,SAAS,GAAG,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAA;IACpF,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAS,CAAC,CAAC,CAAA;AACtE,CAAC,CAAA;AAED,SAAS,kBAAkB;IACzB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU;QAAE,MAAM,EAAE,CAAA;IACrC,OAAO,KAAK,CAAA;AACd,CAAC"}
|
package/src/LogEntry.ts
DELETED
package/src/captureLogs.spec.ts
DELETED
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import a from 'assertron'
|
|
2
|
-
import delay from 'delay'
|
|
3
|
-
import { captureLogs, getLogger } from '.'
|
|
4
|
-
import { toMessageWithLevel } from './memory'
|
|
5
|
-
import { store } from './store'
|
|
6
|
-
|
|
7
|
-
describe('captureLogs()', () => {
|
|
8
|
-
test('gets empty object if no log are written', () => {
|
|
9
|
-
const log = getLogger('capture')
|
|
10
|
-
const [, actual] = captureLogs(log, () => { })
|
|
11
|
-
|
|
12
|
-
expect(actual).toEqual([])
|
|
13
|
-
})
|
|
14
|
-
|
|
15
|
-
test('gets logs', () => {
|
|
16
|
-
const log = getLogger('capture')
|
|
17
|
-
const [, actual] = captureLogs(log, () => log.error('err msg'))
|
|
18
|
-
|
|
19
|
-
expect(toMessageWithLevel(actual)).toEqual('(ERROR) err msg')
|
|
20
|
-
a.satisfies(actual, [{ args: ['err msg'] }])
|
|
21
|
-
})
|
|
22
|
-
|
|
23
|
-
test('get logs for async block', async () => {
|
|
24
|
-
const log = getLogger('capture')
|
|
25
|
-
const [, actual] = await captureLogs(log, async () => {
|
|
26
|
-
await delay(1)
|
|
27
|
-
log.error('err msg')
|
|
28
|
-
})
|
|
29
|
-
a.satisfies(actual, [{ args: ['err msg'] }])
|
|
30
|
-
})
|
|
31
|
-
|
|
32
|
-
test('redirect is reset even if the block throws', () => {
|
|
33
|
-
const log = getLogger('capture')
|
|
34
|
-
a.throws(() => captureLogs(log, () => { throw new Error('some error') }))
|
|
35
|
-
expect(store.value.redirects[log.id].length).toBe(0)
|
|
36
|
-
})
|
|
37
|
-
|
|
38
|
-
test('redirect is reset even if the block rejects', async () => {
|
|
39
|
-
const log = getLogger('capture')
|
|
40
|
-
await a.throws(() => captureLogs(log, async () => {
|
|
41
|
-
await delay(1)
|
|
42
|
-
throw new Error('some error')
|
|
43
|
-
}))
|
|
44
|
-
expect(store.value.redirects[log.id].length).toBe(0)
|
|
45
|
-
})
|
|
46
|
-
|
|
47
|
-
test('receive sync result', () => {
|
|
48
|
-
const log = getLogger('capture')
|
|
49
|
-
const [a] = captureLogs(log, () => 123)
|
|
50
|
-
expect(a).toEqual(123)
|
|
51
|
-
})
|
|
52
|
-
})
|
package/src/captureLogs.ts
DELETED
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { AnyFunction, isPromise } from 'type-plus'
|
|
2
|
-
import { createMemoryLogReporter } from './memory'
|
|
3
|
-
import { store } from './store'
|
|
4
|
-
import { LogEntry, Logger, LogReporter } from './types'
|
|
5
|
-
|
|
6
|
-
export function captureLogs<R>(logger: Logger, funcBlock: () => Promise<R>): Promise<[R, LogEntry[]]>
|
|
7
|
-
export function captureLogs<R>(logger: Logger, funcBlock: () => R): [R, LogEntry[]]
|
|
8
|
-
export function captureLogs(logger: Logger, funcBlock: AnyFunction) {
|
|
9
|
-
const reporter = createMemoryLogReporter()
|
|
10
|
-
addRedirect(logger.id, reporter)
|
|
11
|
-
|
|
12
|
-
try {
|
|
13
|
-
const result = funcBlock()
|
|
14
|
-
if (isPromise(result)) {
|
|
15
|
-
return result.then((r) => [r, reporter.logs])
|
|
16
|
-
.finally(() => removeRedirect(logger.id, reporter))
|
|
17
|
-
}
|
|
18
|
-
removeRedirect(logger.id, reporter)
|
|
19
|
-
return [result, reporter.logs]
|
|
20
|
-
}
|
|
21
|
-
catch (e) {
|
|
22
|
-
removeRedirect(logger.id, reporter)
|
|
23
|
-
throw e
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
function addRedirect(id: string, reporter: LogReporter) {
|
|
28
|
-
const redirect = store.value.redirects[id] || []
|
|
29
|
-
redirect.push(reporter)
|
|
30
|
-
store.value.redirects[id] = redirect
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
function removeRedirect(id: string, reporter: LogReporter) {
|
|
34
|
-
store.value.redirects[id] = store.value.redirects[id].filter(r => r !== reporter)
|
|
35
|
-
}
|
package/src/config.spec.ts
DELETED
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
import a from 'assertron'
|
|
2
|
-
import {
|
|
3
|
-
config, createMemoryLogReporter,
|
|
4
|
-
logLevels, ProhibitedDuringProduction, toLogLevelName
|
|
5
|
-
} from '.'
|
|
6
|
-
import { configForTest } from './configForTest'
|
|
7
|
-
import { store } from './store'
|
|
8
|
-
|
|
9
|
-
beforeEach(() => store.reset())
|
|
10
|
-
|
|
11
|
-
afterEach(() => store.reset())
|
|
12
|
-
|
|
13
|
-
test('in production mode by default', () => {
|
|
14
|
-
expect(store.value.mode).toBe('production')
|
|
15
|
-
})
|
|
16
|
-
|
|
17
|
-
test('default logLevel is info', () => {
|
|
18
|
-
expect(store.value.logLevel).toBe(logLevels.info)
|
|
19
|
-
})
|
|
20
|
-
|
|
21
|
-
test('configure default logLevel', () => {
|
|
22
|
-
config({ logLevel: logLevels.planck })
|
|
23
|
-
|
|
24
|
-
expect(store.value.logLevel).toBe(logLevels.planck)
|
|
25
|
-
})
|
|
26
|
-
|
|
27
|
-
test('calling config twice throws ProhibitedDuringProduction in production mode', () => {
|
|
28
|
-
config({ mode: 'production' })
|
|
29
|
-
a.throws(() => config({ mode: 'development' }), ProhibitedDuringProduction)
|
|
30
|
-
})
|
|
31
|
-
|
|
32
|
-
test('allow calling config with non-test mode while already running in test mode, but emit a warning', () => {
|
|
33
|
-
const { reporter } = configForTest()
|
|
34
|
-
config({ mode: 'production' })
|
|
35
|
-
expect(reporter.getLogMessageWithLevel()).toEqual('(WARN) already configured for test, ignoring config() call')
|
|
36
|
-
})
|
|
37
|
-
|
|
38
|
-
test('allow calling config in test mode again while in test mode. Emit no warning', () => {
|
|
39
|
-
const { reporter } = configForTest()
|
|
40
|
-
config({ mode: 'test' })
|
|
41
|
-
expect(reporter.getLogMessageWithLevel()).toEqual('')
|
|
42
|
-
})
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
test('add custom levels', () => {
|
|
46
|
-
config({
|
|
47
|
-
customLevels: {
|
|
48
|
-
'urgent': 80
|
|
49
|
-
}
|
|
50
|
-
})
|
|
51
|
-
|
|
52
|
-
expect(toLogLevelName(80)).toBe('urgent')
|
|
53
|
-
})
|
|
54
|
-
|
|
55
|
-
test('configure to use a reporter instance', () => {
|
|
56
|
-
config({
|
|
57
|
-
reporters: [
|
|
58
|
-
createMemoryLogReporter()
|
|
59
|
-
]
|
|
60
|
-
})
|
|
61
|
-
a.satisfies(store.value.reporters, [{ id: 'memory' }])
|
|
62
|
-
expect(store.value.reporters.length).toBe(1)
|
|
63
|
-
})
|
|
64
|
-
|
|
65
|
-
test('configure as development will emit warning', () => {
|
|
66
|
-
const warn = console.warn
|
|
67
|
-
let actual: string
|
|
68
|
-
console.warn = message => actual = message
|
|
69
|
-
config({ mode: 'development' })
|
|
70
|
-
|
|
71
|
-
expect(actual!).toBe(`'standard-log' is running in 'development' mode. Configuration is not protected.`)
|
|
72
|
-
|
|
73
|
-
console.warn = warn
|
|
74
|
-
})
|
|
75
|
-
|
|
76
|
-
test('config.configured', () => {
|
|
77
|
-
expect(config.isLocked).toBeFalsy()
|
|
78
|
-
config({ mode: 'test' })
|
|
79
|
-
expect(config.isLocked).toBe(true)
|
|
80
|
-
})
|
package/src/config.ts
DELETED
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
import { forEachKey } from 'type-plus'
|
|
2
|
-
import { addCustomLogLevel } from './customLogLevel'
|
|
3
|
-
import { ProhibitedDuringProduction } from './errors'
|
|
4
|
-
import { getDefaultReporter } from './getDefaultReporter'
|
|
5
|
-
import { getLogger } from './getLogger'
|
|
6
|
-
import { store } from './store'
|
|
7
|
-
import { LogMode, LogReporter } from './types'
|
|
8
|
-
|
|
9
|
-
export type ConfigOptions = {
|
|
10
|
-
mode: LogMode,
|
|
11
|
-
customLevels: Record<string, number>,
|
|
12
|
-
logLevel: number,
|
|
13
|
-
reporters: LogReporter[]
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
export const config: { (options?: Partial<ConfigOptions>): void, readonly isLocked: boolean } = function config(options: Partial<ConfigOptions> = {}) {
|
|
17
|
-
if (store.value.configured) {
|
|
18
|
-
if (store.value.mode === 'production') {
|
|
19
|
-
throw new ProhibitedDuringProduction('config')
|
|
20
|
-
}
|
|
21
|
-
if (store.value.mode === 'test' && options.mode !== 'test') {
|
|
22
|
-
const log = getLogger('standard-log')
|
|
23
|
-
log.warn(`already configured for test, ignoring config() call`)
|
|
24
|
-
return
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
if (options.mode) store.value.mode = options.mode
|
|
29
|
-
|
|
30
|
-
store.value.logLevel = options.logLevel !== undefined ? options.logLevel : store.value.logLevel
|
|
31
|
-
|
|
32
|
-
if (options.customLevels) {
|
|
33
|
-
const customLevels = options.customLevels
|
|
34
|
-
forEachKey(customLevels, k => {
|
|
35
|
-
addCustomLogLevel(k, customLevels[k])
|
|
36
|
-
})
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
store.value.reporters = options.reporters || [getDefaultReporter()]
|
|
40
|
-
store.value.configured = true
|
|
41
|
-
|
|
42
|
-
if (store.value.mode === 'production') {
|
|
43
|
-
store.freeze({ ...store.value, reporters: Object.freeze(store.value.reporters) })
|
|
44
|
-
}
|
|
45
|
-
else if (store.value.mode === 'development') {
|
|
46
|
-
console.warn(`'standard-log' is running in 'development' mode. Configuration is not protected.`)
|
|
47
|
-
}
|
|
48
|
-
} as any
|
|
49
|
-
|
|
50
|
-
Object.defineProperty(config, 'isLocked', {
|
|
51
|
-
/**
|
|
52
|
-
* Gets if the config has already been locked
|
|
53
|
-
*/
|
|
54
|
-
get() {
|
|
55
|
-
return store.value.configured
|
|
56
|
-
}
|
|
57
|
-
})
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { configForTest } from '.'
|
|
2
|
-
import { getLogger } from './getLogger'
|
|
3
|
-
import { logLevels } from './logLevel'
|
|
4
|
-
|
|
5
|
-
test('config in test mode and return the memory reporter', () => {
|
|
6
|
-
const { reporter } = configForTest()
|
|
7
|
-
getLogger('config-for-test').info('ha')
|
|
8
|
-
expect(reporter.getLogMessage()).toEqual('ha')
|
|
9
|
-
})
|
|
10
|
-
|
|
11
|
-
test('set log level', () => {
|
|
12
|
-
const { reporter } = configForTest(logLevels.warn)
|
|
13
|
-
getLogger('config-for-test').info('no')
|
|
14
|
-
getLogger('config-for-test').warn('yes')
|
|
15
|
-
expect(reporter.getLogMessage()).toEqual('yes')
|
|
16
|
-
})
|
package/src/configForTest.ts
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { config } from './config'
|
|
2
|
-
import { createMemoryLogReporter } from './memory'
|
|
3
|
-
import { store } from './store'
|
|
4
|
-
import { LogLevel } from './types'
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
export function configForTest(logLevel?: LogLevel) {
|
|
8
|
-
store.reset()
|
|
9
|
-
const reporter = createMemoryLogReporter()
|
|
10
|
-
config({
|
|
11
|
-
reporters: [reporter],
|
|
12
|
-
mode: 'test',
|
|
13
|
-
logLevel
|
|
14
|
-
})
|
|
15
|
-
return { reporter }
|
|
16
|
-
}
|
|
@@ -1,198 +0,0 @@
|
|
|
1
|
-
import a from 'assertron'
|
|
2
|
-
import {
|
|
3
|
-
addCustomLogLevel, clearCustomLogLevel, config, configForTest,
|
|
4
|
-
ConsoleLogFormatter, createConsoleLogReporter,
|
|
5
|
-
LogFilter, logLevels, plainLogFormatter, ProhibitedDuringProduction
|
|
6
|
-
} from '..'
|
|
7
|
-
import { store } from '../store'
|
|
8
|
-
|
|
9
|
-
describe('production checks', () => {
|
|
10
|
-
beforeEach(() => store.reset())
|
|
11
|
-
|
|
12
|
-
test('set filter during production mode throws', () => {
|
|
13
|
-
config({ mode: 'production' })
|
|
14
|
-
const reporter = createConsoleLogReporter()
|
|
15
|
-
a.throws(() => { reporter.filter = () => true }, ProhibitedDuringProduction)
|
|
16
|
-
})
|
|
17
|
-
|
|
18
|
-
const idFormatter: ConsoleLogFormatter = (entry) => [entry.id]
|
|
19
|
-
test('set formatter during production mode throws', () => {
|
|
20
|
-
config({ mode: 'production' })
|
|
21
|
-
const reporter = createConsoleLogReporter()
|
|
22
|
-
a.throws(() => reporter.formatter = idFormatter, ProhibitedDuringProduction)
|
|
23
|
-
})
|
|
24
|
-
})
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
describe('unit tests', () => {
|
|
28
|
-
beforeEach(() => configForTest())
|
|
29
|
-
|
|
30
|
-
describe('rendering tests', () => {
|
|
31
|
-
test('plain rendering', () => {
|
|
32
|
-
const reporter = createConsoleLogReporter({ formatter: plainLogFormatter });
|
|
33
|
-
['emergency', 'info', 'warn', 'debug'].forEach(level => {
|
|
34
|
-
reporter.write({ id: 'plain', level: (logLevels as any)[level], args: ['hello', 'world'], timestamp: new Date() })
|
|
35
|
-
})
|
|
36
|
-
})
|
|
37
|
-
})
|
|
38
|
-
|
|
39
|
-
describe('id', () => {
|
|
40
|
-
test('default is "console"', () => {
|
|
41
|
-
const reporter = createConsoleLogReporter()
|
|
42
|
-
expect(reporter.id).toBe('console')
|
|
43
|
-
})
|
|
44
|
-
test('can be overridden', () => {
|
|
45
|
-
const reporter = createConsoleLogReporter({ id: 'neo-console' })
|
|
46
|
-
expect(reporter.id).toBe('neo-console')
|
|
47
|
-
})
|
|
48
|
-
})
|
|
49
|
-
|
|
50
|
-
describe('log level', () => {
|
|
51
|
-
test('error, alert, critical and emergency logs are written to console.error', () => {
|
|
52
|
-
const id = 'log'
|
|
53
|
-
const reporter = createConsoleLogReporter()
|
|
54
|
-
const fakeConsole = reporter.console = createFakeConsole()
|
|
55
|
-
|
|
56
|
-
reporter.write({ id, level: logLevels.emergency, args: ['emergency'], timestamp: new Date() })
|
|
57
|
-
reporter.write({ id, level: logLevels.critical, args: ['critical'], timestamp: new Date() })
|
|
58
|
-
reporter.write({ id, level: logLevels.alert, args: ['alert'], timestamp: new Date() })
|
|
59
|
-
reporter.write({ id, level: logLevels.error, args: ['error'], timestamp: new Date() })
|
|
60
|
-
|
|
61
|
-
expect(fakeConsole.errors.length).toBe(4)
|
|
62
|
-
})
|
|
63
|
-
|
|
64
|
-
test('warn logs are written to console.warn', () => {
|
|
65
|
-
const id = 'log'
|
|
66
|
-
const reporter = createConsoleLogReporter()
|
|
67
|
-
|
|
68
|
-
const fakeConsole = reporter.console = createFakeConsole()
|
|
69
|
-
|
|
70
|
-
reporter.write({ id, level: logLevels.warn, args: ['warn'], timestamp: new Date() })
|
|
71
|
-
|
|
72
|
-
expect(fakeConsole.warns.length).toBe(1)
|
|
73
|
-
})
|
|
74
|
-
|
|
75
|
-
test('notice and info logs are written to console.info', () => {
|
|
76
|
-
const id = 'log'
|
|
77
|
-
const reporter = createConsoleLogReporter()
|
|
78
|
-
|
|
79
|
-
const fakeConsole = reporter.console = createFakeConsole()
|
|
80
|
-
|
|
81
|
-
reporter.write({ id, level: logLevels.notice, args: ['notice'], timestamp: new Date() })
|
|
82
|
-
reporter.write({ id, level: logLevels.info, args: ['info'], timestamp: new Date() })
|
|
83
|
-
|
|
84
|
-
expect(fakeConsole.infos.length).toBe(2)
|
|
85
|
-
})
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
test('debug, trace, and planck logs are written to console.debug', () => {
|
|
89
|
-
const id = 'log'
|
|
90
|
-
const reporter = createConsoleLogReporter()
|
|
91
|
-
const fakeConsole = reporter.console = createFakeConsole()
|
|
92
|
-
|
|
93
|
-
reporter.write({ id, level: logLevels.debug, args: ['debug'], timestamp: new Date() })
|
|
94
|
-
reporter.write({ id, level: logLevels.trace, args: ['trace'], timestamp: new Date() })
|
|
95
|
-
reporter.write({ id, level: logLevels.planck, args: ['planck'], timestamp: new Date() })
|
|
96
|
-
|
|
97
|
-
expect(fakeConsole.debugs.length).toBe(3)
|
|
98
|
-
})
|
|
99
|
-
})
|
|
100
|
-
|
|
101
|
-
describe('custom logs', () => {
|
|
102
|
-
afterEach(() => clearCustomLogLevel())
|
|
103
|
-
|
|
104
|
-
test('are written according to their log level value', () => {
|
|
105
|
-
addCustomLogLevel('high', 50)
|
|
106
|
-
addCustomLogLevel('important', 450)
|
|
107
|
-
addCustomLogLevel('interest', 650)
|
|
108
|
-
addCustomLogLevel('silly', 1000)
|
|
109
|
-
|
|
110
|
-
const id = 'log'
|
|
111
|
-
const reporter = createConsoleLogReporter()
|
|
112
|
-
const fakeConsole = reporter.console = createFakeConsole()
|
|
113
|
-
|
|
114
|
-
reporter.write({ id, level: 50, args: ['a'], timestamp: new Date() })
|
|
115
|
-
reporter.write({ id, level: 450, args: ['b'], timestamp: new Date() })
|
|
116
|
-
reporter.write({ id, level: 650, args: ['c'], timestamp: new Date() })
|
|
117
|
-
reporter.write({ id, level: 1000, args: ['d'], timestamp: new Date() })
|
|
118
|
-
|
|
119
|
-
expect(fakeConsole.errors.length).toBe(1)
|
|
120
|
-
expect(fakeConsole.warns.length).toBe(1)
|
|
121
|
-
expect(fakeConsole.infos.length).toBe(1)
|
|
122
|
-
expect(fakeConsole.debugs.length).toBe(1)
|
|
123
|
-
})
|
|
124
|
-
})
|
|
125
|
-
|
|
126
|
-
const idFormatter: ConsoleLogFormatter = (entry) => [entry.id]
|
|
127
|
-
|
|
128
|
-
describe('formatter', () => {
|
|
129
|
-
test('use specific formatter', () => {
|
|
130
|
-
const id = 'id-only'
|
|
131
|
-
const reporter = createConsoleLogReporter({ formatter: idFormatter })
|
|
132
|
-
const fakeConsole = reporter.console = createFakeConsole()
|
|
133
|
-
|
|
134
|
-
reporter.write({ id, level: logLevels.emergency, args: ['emergency'], timestamp: new Date() })
|
|
135
|
-
|
|
136
|
-
expect(fakeConsole.errors).toEqual([['id-only']])
|
|
137
|
-
})
|
|
138
|
-
|
|
139
|
-
test('formatter can be changed afterward', () => {
|
|
140
|
-
const reporter = createConsoleLogReporter()
|
|
141
|
-
const formatter = reporter.formatter
|
|
142
|
-
reporter.formatter = idFormatter
|
|
143
|
-
expect(reporter.formatter).not.toEqual(formatter)
|
|
144
|
-
})
|
|
145
|
-
})
|
|
146
|
-
|
|
147
|
-
describe('filter', () => {
|
|
148
|
-
const filter: LogFilter = (entry) => entry.id !== 'secret'
|
|
149
|
-
test('use specific filter', () => {
|
|
150
|
-
const reporter = createConsoleLogReporter({ formatter: idFormatter, filter })
|
|
151
|
-
const fakeConsole = reporter.console = createFakeConsole()
|
|
152
|
-
|
|
153
|
-
reporter.write({ id: 'normal', level: logLevels.emergency, args: ['emergency'], timestamp: new Date() })
|
|
154
|
-
reporter.write({ id: 'secret', level: logLevels.emergency, args: ['emergency'], timestamp: new Date() })
|
|
155
|
-
|
|
156
|
-
expect(fakeConsole.errors).toEqual([['normal']])
|
|
157
|
-
})
|
|
158
|
-
|
|
159
|
-
test('can change filter', () => {
|
|
160
|
-
const reporter = createConsoleLogReporter()
|
|
161
|
-
const filter = reporter.filter
|
|
162
|
-
reporter.filter = entry => entry.id !== 'secret'
|
|
163
|
-
expect(reporter.filter).not.toEqual(filter)
|
|
164
|
-
})
|
|
165
|
-
})
|
|
166
|
-
|
|
167
|
-
test('write log entry with multiple arguments', () => {
|
|
168
|
-
const id = 'log'
|
|
169
|
-
const reporter = createConsoleLogReporter({ formatter: plainLogFormatter })
|
|
170
|
-
const fakeConsole = reporter.console = createFakeConsole()
|
|
171
|
-
|
|
172
|
-
const entry = { id, level: logLevels.info, args: ['a', 'b', 'c'], timestamp: new Date() }
|
|
173
|
-
|
|
174
|
-
reporter.write(entry)
|
|
175
|
-
|
|
176
|
-
expect(fakeConsole.infos).toEqual([
|
|
177
|
-
[entry.timestamp.toISOString(), 'log', '(INFO)', 'a', 'b', 'c']
|
|
178
|
-
])
|
|
179
|
-
})
|
|
180
|
-
})
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
function createFakeConsole() {
|
|
184
|
-
const errors: any[] = []
|
|
185
|
-
const infos: any[] = []
|
|
186
|
-
const warns: any[] = []
|
|
187
|
-
const debugs: any[] = []
|
|
188
|
-
return {
|
|
189
|
-
errors,
|
|
190
|
-
infos,
|
|
191
|
-
warns,
|
|
192
|
-
debugs,
|
|
193
|
-
error(...args: any[]) { errors.push(args) },
|
|
194
|
-
info(...args: any[]) { infos.push(args) },
|
|
195
|
-
warn(...args: any[]) { warns.push(args) },
|
|
196
|
-
debug(...args: any[]) { debugs.push(args) }
|
|
197
|
-
}
|
|
198
|
-
}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { required } from 'type-plus'
|
|
2
|
-
import { plainLogFormatter } from '../formatter'
|
|
3
|
-
import { LogFormatter, LogReporter, LogReporterOptions, LogFilter } from '../types'
|
|
4
|
-
import { assertLogModeIsNotProduction } from '../utils'
|
|
5
|
-
import { polyfilledConsole } from './polyfilledConsole'
|
|
6
|
-
import { toConsoleMethod } from './toConsoleMethod'
|
|
7
|
-
import { Console } from './types'
|
|
8
|
-
|
|
9
|
-
export type ConsoleLogReporter = LogReporter<any[]> & { console: Console }
|
|
10
|
-
export type ConsoleLogFormatter = LogFormatter<any[]>
|
|
11
|
-
export type ConsoleLogReporterOptions = LogReporterOptions<any[]>
|
|
12
|
-
|
|
13
|
-
export function createConsoleLogReporter(options?: ConsoleLogReporterOptions): ConsoleLogReporter {
|
|
14
|
-
const opts = required({ id: 'console', formatter: plainLogFormatter }, options)
|
|
15
|
-
const { id } = opts
|
|
16
|
-
let { formatter, filter } = opts
|
|
17
|
-
return {
|
|
18
|
-
id,
|
|
19
|
-
isConsoleReporter: true,
|
|
20
|
-
get formatter() {
|
|
21
|
-
return formatter
|
|
22
|
-
},
|
|
23
|
-
set formatter(value: ConsoleLogFormatter) {
|
|
24
|
-
assertLogModeIsNotProduction('set Reporter.formatter')
|
|
25
|
-
formatter = value
|
|
26
|
-
},
|
|
27
|
-
get filter() {
|
|
28
|
-
return filter
|
|
29
|
-
},
|
|
30
|
-
set filter(value: LogFilter) {
|
|
31
|
-
assertLogModeIsNotProduction('set Reporter.filter')
|
|
32
|
-
filter = value
|
|
33
|
-
},
|
|
34
|
-
console: polyfilledConsole,
|
|
35
|
-
write(entry) {
|
|
36
|
-
if (filter && !filter(entry)) return
|
|
37
|
-
const values = formatter(entry)
|
|
38
|
-
const method = toConsoleMethod(entry.level)
|
|
39
|
-
this.console[method](...values)
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
}
|
package/src/console/index.ts
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import isNode from 'is-node'
|
|
2
|
-
import { semverGt } from './semverGt'
|
|
3
|
-
|
|
4
|
-
// istanbul ignore file
|
|
5
|
-
export function isConsoleDebugAvailable() {
|
|
6
|
-
if (!isNode) return true
|
|
7
|
-
// without this, systemJs will complain `process is not defined`
|
|
8
|
-
if (!global.process) return true
|
|
9
|
-
const versionString = process.version.startsWith('v') ? process.version.slice(1) : process.version
|
|
10
|
-
return semverGt(versionString, [9, 3, 0])
|
|
11
|
-
}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
/* istanbul ignore file */
|
|
2
|
-
import { isConsoleDebugAvailable } from './isConsoleDebugAvailable'
|
|
3
|
-
/* eslint-disable no-console */
|
|
4
|
-
|
|
5
|
-
function buildPolyfillConsole() {
|
|
6
|
-
// old phantomjs does not have bind function
|
|
7
|
-
const hasBind = !!console.log.bind as boolean
|
|
8
|
-
if (hasBind) {
|
|
9
|
-
return {
|
|
10
|
-
// Node@9.3 or below has `console.debug = undefined` or it doesn't log
|
|
11
|
-
// Should use `console.log()` in those case.
|
|
12
|
-
debug: (isConsoleDebugAvailable() ? console.debug : console.log).bind(console),
|
|
13
|
-
// the `typeof` guards against IE where `console.log.apply()`
|
|
14
|
-
// results in error `Object doesn't support property or method 'apply'`
|
|
15
|
-
info: (typeof console.info === 'function' ? console.info : console.log).bind(console),
|
|
16
|
-
warn: (typeof console.warn === 'function' ? console.warn : console.log).bind(console),
|
|
17
|
-
error: (typeof console.error === 'function' ? console.error : console.log).bind(console)
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
else {
|
|
21
|
-
return {
|
|
22
|
-
debug: buildFn(isConsoleDebugAvailable() ? 'debug' : 'log'),
|
|
23
|
-
info: buildFn(typeof console.info === 'function' ? 'info' : 'log'),
|
|
24
|
-
warn: buildFn(typeof console.warn === 'function' ? 'warn' : 'log'),
|
|
25
|
-
error: buildFn(typeof console.error === 'function' ? 'error' : 'log'),
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
function buildFn(name: 'debug' | 'info' | 'warn' | 'error' | 'log') {
|
|
31
|
-
return function (...args: any[]) { console[name](...args) }
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
export const polyfilledConsole = buildPolyfillConsole()
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { semverGt } from './semverGt';
|
|
2
|
-
|
|
3
|
-
test('9.3.0 returns false', () => {
|
|
4
|
-
expect(semverGt('9.3.0', [9, 3, 0])).toBe(false)
|
|
5
|
-
})
|
|
6
|
-
|
|
7
|
-
test('9.3.1 returns true', () => {
|
|
8
|
-
expect(semverGt('9.3.1', [9, 3, 0])).toBe(true)
|
|
9
|
-
})
|
|
10
|
-
|
|
11
|
-
test('9.3.1 returns true', () => {
|
|
12
|
-
expect(semverGt('9.3.1', [9, 3, 0])).toBe(true)
|
|
13
|
-
})
|
|
14
|
-
|
|
15
|
-
test('9.4.0 returns true', () => {
|
|
16
|
-
expect(semverGt('9.4.0', [9, 3, 0])).toBe(true)
|
|
17
|
-
})
|
|
18
|
-
|
|
19
|
-
test('9.10.0 returns true', () => {
|
|
20
|
-
expect(semverGt('9.10.0', [9, 3, 0])).toBe(true)
|
|
21
|
-
})
|
|
22
|
-
|
|
23
|
-
test('10.0.0 returns true', () => {
|
|
24
|
-
expect(semverGt('10.0.0', [9, 3, 0])).toBe(true)
|
|
25
|
-
})
|
package/src/console/semverGt.ts
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
// istanbul ignore next
|
|
2
|
-
export function semverGt(versionString: string, version: [number, number, number]) {
|
|
3
|
-
const actual = versionString.split('.').reverse().reduce((p, v, i) => {
|
|
4
|
-
p += Number.parseInt(v, 10) * Math.pow(100, i)
|
|
5
|
-
return p
|
|
6
|
-
}, 0)
|
|
7
|
-
|
|
8
|
-
return actual > (version[0] * 10000 + version[1] * 100 + version[2])
|
|
9
|
-
}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { logLevels } from '../logLevel';
|
|
2
|
-
|
|
3
|
-
export function toConsoleMethod(level: number) {
|
|
4
|
-
switch (true) {
|
|
5
|
-
// istanbul ignore next
|
|
6
|
-
case (level === 0):
|
|
7
|
-
// edge case in case none is somehow written
|
|
8
|
-
return 'debug'
|
|
9
|
-
case (level <= logLevels.error):
|
|
10
|
-
return 'error'
|
|
11
|
-
case (level <= logLevels.warn):
|
|
12
|
-
return 'warn'
|
|
13
|
-
case (level <= logLevels.info):
|
|
14
|
-
return 'info'
|
|
15
|
-
default:
|
|
16
|
-
return 'debug'
|
|
17
|
-
}
|
|
18
|
-
}
|
package/src/console/types.ts
DELETED