pino-pretty
Advanced tools
Comparing version 5.0.0 to 5.0.1
193
index.d.ts
@@ -8,104 +8,105 @@ // Type definitions for pino-pretty 4.7 | ||
declare function PinoPretty(options: PinoPretty.PrettyOptions): PinoPretty.Prettifier; | ||
declare function PinoPretty(options: PrettyOptions_): PinoPretty.Prettifier; | ||
interface PrettyOptions_ { | ||
/** | ||
* Hide objects from output (but not error object). | ||
* @default false | ||
*/ | ||
hideObject?: boolean; | ||
/** | ||
* Translate the epoch time value into a human readable date and time string. This flag also can set the format | ||
* string to apply when translating the date to human readable format. For a list of available pattern letters | ||
* see the {@link https://www.npmjs.com/package/dateformat|dateformat documentation}. | ||
* - The default format is `yyyy-mm-dd HH:MM:ss.l o` in UTC. | ||
* - Requires a `SYS:` prefix to translate time to the local system's timezone. Use the shortcut `SYS:standard` | ||
* to translate time to `yyyy-mm-dd HH:MM:ss.l o` in system timezone. | ||
* @default false | ||
*/ | ||
translateTime?: boolean | string; | ||
/** | ||
* If set to true, it will print the name of the log level as the first field in the log line. | ||
* @default false | ||
*/ | ||
levelFirst?: boolean; | ||
/** | ||
* Define the key that contains the level of the log. | ||
* @default "level" | ||
*/ | ||
levelKey?: string; | ||
/** | ||
* Output the log level using the specified label. | ||
* @default "levelLabel" | ||
*/ | ||
levelLabel?: string; | ||
/** | ||
* The key in the JSON object to use as the highlighted message. | ||
* @default "msg" | ||
*/ | ||
messageKey?: string; | ||
/** | ||
* Print each log message on a single line (errors will still be multi-line). | ||
* @default false | ||
*/ | ||
singleLine?: boolean; | ||
/** | ||
* The key in the JSON object to use for timestamp display. | ||
* @default "time" | ||
*/ | ||
timestampKey?: string; | ||
/** | ||
* Format output of message, e.g. {level} - {pid} will output message: INFO - 1123 | ||
* @default false | ||
* | ||
* @example | ||
* ```typescript | ||
* { | ||
* messageFormat: (log, messageKey) => { | ||
* const message = log[messageKey]; | ||
* if (log.requestId) return `[${log.requestId}] ${message}`; | ||
* return message; | ||
* } | ||
* } | ||
* ``` | ||
*/ | ||
messageFormat?: false | string | PinoPretty.MessageFormatFunc; | ||
/** | ||
* If set to true, will add color information to the formatted output message. | ||
* @default false | ||
*/ | ||
colorize?: boolean; | ||
/** | ||
* Appends carriage return and line feed, instead of just a line feed, to the formatted log line. | ||
* @default false | ||
*/ | ||
crlf?: boolean; | ||
/** | ||
* Define the log keys that are associated with error like objects. | ||
* @default ["err", "error"] | ||
*/ | ||
errorLikeObjectKeys?: string[]; | ||
/** | ||
* When formatting an error object, display this list of properties. | ||
* The list should be a comma separated list of properties. | ||
* @default "" | ||
*/ | ||
errorProps?: string; | ||
/** | ||
* Specify a search pattern according to {@link http://jmespath.org|jmespath} | ||
*/ | ||
search?: string; | ||
/** | ||
* Ignore one or several keys. | ||
* @example "time,hostname" | ||
*/ | ||
ignore?: string; | ||
} | ||
declare namespace PinoPretty { | ||
type Prettifier = (inputData: string | object) => string; | ||
type MessageFormatFunc = (log: LogDescriptor, messageKey: string, levelLabel: string) => string; | ||
interface PrettyOptions { | ||
/** | ||
* Hide objects from output (but not error object). | ||
* @default false | ||
*/ | ||
hideObject?: boolean; | ||
/** | ||
* Translate the epoch time value into a human readable date and time string. This flag also can set the format | ||
* string to apply when translating the date to human readable format. For a list of available pattern letters | ||
* see the {@link https://www.npmjs.com/package/dateformat|dateformat documentation}. | ||
* - The default format is `yyyy-mm-dd HH:MM:ss.l o` in UTC. | ||
* - Requires a `SYS:` prefix to translate time to the local system's timezone. Use the shortcut `SYS:standard` | ||
* to translate time to `yyyy-mm-dd HH:MM:ss.l o` in system timezone. | ||
* @default false | ||
*/ | ||
translateTime?: boolean | string; | ||
/** | ||
* If set to true, it will print the name of the log level as the first field in the log line. | ||
* @default false | ||
*/ | ||
levelFirst?: boolean; | ||
/** | ||
* Define the key that contains the level of the log. | ||
* @default "level" | ||
*/ | ||
levelKey?: string; | ||
/** | ||
* Output the log level using the specified label. | ||
* @default "levelLabel" | ||
*/ | ||
levelLabel?: string; | ||
/** | ||
* The key in the JSON object to use as the highlighted message. | ||
* @default "msg" | ||
*/ | ||
messageKey?: string; | ||
/** | ||
* Print each log message on a single line (errors will still be multi-line). | ||
* @default false | ||
*/ | ||
singleLine?: boolean; | ||
/** | ||
* The key in the JSON object to use for timestamp display. | ||
* @default "time" | ||
*/ | ||
timestampKey?: string; | ||
/** | ||
* Format output of message, e.g. {level} - {pid} will output message: INFO - 1123 | ||
* @default false | ||
* | ||
* @example | ||
* ```typescript | ||
* { | ||
* messageFormat: (log, messageKey) => { | ||
* const message = log[messageKey]; | ||
* if (log.requestId) return `[${log.requestId}] ${message}`; | ||
* return message; | ||
* } | ||
* } | ||
* ``` | ||
*/ | ||
messageFormat?: false | string | MessageFormatFunc; | ||
/** | ||
* If set to true, will add color information to the formatted output message. | ||
* @default false | ||
*/ | ||
colorize?: boolean; | ||
/** | ||
* Appends carriage return and line feed, instead of just a line feed, to the formatted log line. | ||
* @default false | ||
*/ | ||
crlf?: boolean; | ||
/** | ||
* Define the log keys that are associated with error like objects. | ||
* @default ["err", "error"] | ||
*/ | ||
errorLikeObjectKeys?: string[]; | ||
/** | ||
* When formatting an error object, display this list of properties. | ||
* The list should be a comma separated list of properties. | ||
* @default "" | ||
*/ | ||
errorProps?: string; | ||
/** | ||
* Specify a search pattern according to {@link http://jmespath.org|jmespath} | ||
*/ | ||
search?: string; | ||
/** | ||
* Ignore one or several keys. | ||
* @example "time,hostname" | ||
*/ | ||
ignore?: string; | ||
} | ||
type PrettyOptions = PrettyOptions_ | ||
} | ||
export default PinoPretty; | ||
export { PinoPretty } | ||
export { PinoPretty, PrettyOptions_ as PrettyOptions } |
{ | ||
"name": "pino-pretty", | ||
"version": "5.0.0", | ||
"version": "5.0.1", | ||
"description": "Prettifier for Pino log lines", | ||
@@ -12,3 +12,3 @@ "type": "commonjs", | ||
"scripts": { | ||
"ci": "standard && npm run test-types && tap 'test/**/*.test.js' --coverage-report=lcovonly", | ||
"ci": "standard && tap 'test/**/*.test.js' --coverage-report=lcovonly && npm run test-types", | ||
"lint": "standard | snazzy", | ||
@@ -15,0 +15,0 @@ "test": "tap --100 'test/**/*.test.js'", |
import prettyFactory from "../../"; | ||
import {expectType} from "tsd"; | ||
import { expectType } from "tsd"; | ||
import PinoPretty, { PinoPretty as PinoPrettyNamed } from "../../"; | ||
import PinoPretty, { PinoPretty as PinoPrettyNamed, PrettyOptions } from "../../"; | ||
import PinoPrettyDefault from "../../"; | ||
@@ -29,2 +29,20 @@ import * as PinoPrettyStar from "../../"; | ||
const options2: PrettyOptions = { | ||
colorize: true, | ||
crlf: false, | ||
errorLikeObjectKeys: ["err", "error"], | ||
errorProps: "", | ||
hideObject: true, | ||
levelKey: "level", | ||
levelLabel: "foo", | ||
messageFormat: false, | ||
ignore: "", | ||
levelFirst: false, | ||
messageKey: "msg", | ||
timestampKey: "timestamp", | ||
translateTime: "UTC:h:MM:ss TT Z", | ||
search: "foo == `bar`", | ||
singleLine: false, | ||
}; | ||
const pretty = prettyFactory(options); | ||
@@ -31,0 +49,0 @@ expectType<Prettifier>(pretty) |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
288855
2705