mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
chore: Fix type error with console format
Signed-off-by: Sebastian Malton <sebastian@malton.name>
This commit is contained in:
parent
f3b1bc565c
commit
f9843cc1cc
@ -8,6 +8,7 @@ import chalk from "chalk";
|
|||||||
import type { InspectOptions } from "util";
|
import type { InspectOptions } from "util";
|
||||||
import { inspect } from "util";
|
import { inspect } from "util";
|
||||||
import { omit } from "lodash";
|
import { omit } from "lodash";
|
||||||
|
import type { Format, TransformableInfo } from "logform";
|
||||||
|
|
||||||
// The following license was copied from https://github.com/duccio/winston-console-format/blob/master/LICENSE
|
// The following license was copied from https://github.com/duccio/winston-console-format/blob/master/LICENSE
|
||||||
// This was modified to support formatting causes
|
// This was modified to support formatting causes
|
||||||
@ -42,7 +43,7 @@ export interface ConsoleFormatOptions {
|
|||||||
inspectOptions?: InspectOptions;
|
inspectOptions?: InspectOptions;
|
||||||
}
|
}
|
||||||
|
|
||||||
interface TransformableInfo {
|
interface ConsoleTransformableInfo extends TransformableInfo {
|
||||||
level: string;
|
level: string;
|
||||||
message: string;
|
message: string;
|
||||||
ms: string;
|
ms: string;
|
||||||
@ -51,7 +52,7 @@ interface TransformableInfo {
|
|||||||
[key: string | symbol]: unknown;
|
[key: string | symbol]: unknown;
|
||||||
}
|
}
|
||||||
|
|
||||||
export class ConsoleFormat {
|
export class ConsoleFormat implements Format {
|
||||||
private static readonly reSpaces = /^\s+/;
|
private static readonly reSpaces = /^\s+/;
|
||||||
private static readonly reSpacesOrEmpty = /^(\s*)/;
|
private static readonly reSpacesOrEmpty = /^(\s*)/;
|
||||||
// eslint-disable-next-line no-control-regex
|
// eslint-disable-next-line no-control-regex
|
||||||
@ -78,7 +79,7 @@ export class ConsoleFormat {
|
|||||||
return inspect(value, this.inspectOptions).split("\n");
|
return inspect(value, this.inspectOptions).split("\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
private message(info: TransformableInfo, chr: string, color: string): string {
|
private message(info: ConsoleTransformableInfo, chr: string, color: string): string {
|
||||||
const message = info.message.replace(
|
const message = info.message.replace(
|
||||||
ConsoleFormat.reSpacesOrEmpty,
|
ConsoleFormat.reSpacesOrEmpty,
|
||||||
`$1${color}${chalk.dim(chr)}${chalk.reset(" ")}`,
|
`$1${color}${chalk.dim(chr)}${chalk.reset(" ")}`,
|
||||||
@ -91,7 +92,7 @@ export class ConsoleFormat {
|
|||||||
return message?.match(ConsoleFormat.reSpaces)?.[0] ?? "";
|
return message?.match(ConsoleFormat.reSpaces)?.[0] ?? "";
|
||||||
}
|
}
|
||||||
|
|
||||||
private ms(info: TransformableInfo): string {
|
private ms(info: ConsoleTransformableInfo): string {
|
||||||
if (info.ms) {
|
if (info.ms) {
|
||||||
return chalk.italic(chalk.dim(` ${info.ms}`));
|
return chalk.italic(chalk.dim(` ${info.ms}`));
|
||||||
}
|
}
|
||||||
@ -99,7 +100,7 @@ export class ConsoleFormat {
|
|||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
|
|
||||||
private stack(info: TransformableInfo): string[] {
|
private stack(info: ConsoleTransformableInfo): string[] {
|
||||||
const messages: string[] = [];
|
const messages: string[] = [];
|
||||||
|
|
||||||
if (info.stack) {
|
if (info.stack) {
|
||||||
@ -124,7 +125,7 @@ export class ConsoleFormat {
|
|||||||
return messages;
|
return messages;
|
||||||
}
|
}
|
||||||
|
|
||||||
private cause(info: TransformableInfo): string[] {
|
private cause(info: ConsoleTransformableInfo): string[] {
|
||||||
const splats = info[SPLAT];
|
const splats = info[SPLAT];
|
||||||
|
|
||||||
if (Array.isArray(splats)) {
|
if (Array.isArray(splats)) {
|
||||||
@ -134,7 +135,7 @@ export class ConsoleFormat {
|
|||||||
return [];
|
return [];
|
||||||
}
|
}
|
||||||
|
|
||||||
private meta(info: TransformableInfo): string[] {
|
private meta(info: ConsoleTransformableInfo): string[] {
|
||||||
const messages: string[] = [];
|
const messages: string[] = [];
|
||||||
const stripped = { ...info };
|
const stripped = { ...info };
|
||||||
|
|
||||||
@ -148,11 +149,11 @@ export class ConsoleFormat {
|
|||||||
return messages;
|
return messages;
|
||||||
}
|
}
|
||||||
|
|
||||||
private getColor(info: TransformableInfo): string {
|
private getColor(info: ConsoleTransformableInfo): string {
|
||||||
return info.level.match(ConsoleFormat.reColor)?.[0] ?? "";
|
return info.level.match(ConsoleFormat.reColor)?.[0] ?? "";
|
||||||
}
|
}
|
||||||
|
|
||||||
private write(info: TransformableInfo, messages: string[], color: string): void {
|
private write(info: ConsoleTransformableInfo, messages: string[], color: string): void {
|
||||||
const pad = this.pad(info.message);
|
const pad = this.pad(info.message);
|
||||||
|
|
||||||
messages.forEach((line, index, arr) => {
|
messages.forEach((line, index, arr) => {
|
||||||
@ -167,7 +168,8 @@ export class ConsoleFormat {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
public transform(info: TransformableInfo): TransformableInfo {
|
public transform(rawInfo: TransformableInfo): ConsoleTransformableInfo {
|
||||||
|
const info = rawInfo as ConsoleTransformableInfo;
|
||||||
const messages: string[] = [];
|
const messages: string[] = [];
|
||||||
|
|
||||||
if (this.showMeta) {
|
if (this.showMeta) {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user