UNPKG

js-log-lib

Version:

浏览器和 node 共用的 log 样式,行为控制工具,可以自定义输出样式,其核心原理是采用了 ANSI 指令以及 css 属性,更多用法可以参照 ANSI 的详细介绍

43 lines (42 loc) 1.88 kB
import { IOpts, IGlobalOpts, IColorMode, IColorType, IRGB, IColor, ITextStyle, IMoveParams, IColorStr, ICursor } from "./types"; declare class ANSI { moveTo: (opts: IMoveParams) => string; scrollTo: (row: number) => string; getCursor: (cursor: ICursor) => string; getColorMode: (mode: IColorMode) => string; getColorType: (type: IColorType) => string; getRGB: (options: Partial<IRGB>) => string; getColor: (color: IColorStr) => string; getTextStyle: (textStyle: ITextStyle) => string; getANSI: (params: string, isStyle?: boolean) => string; reset: () => string; } export declare class JSLog extends ANSI { readonly stylePlaceholder = "%c"; isNode: boolean; private globalOpts; constructor(globalOpts?: IGlobalOpts); mixins(opts: IGlobalOpts): Partial<{ text: string; reset: boolean; type: string; split: boolean; color: IColor | IColor[]; textStyle: "reset" | "bold" | "dim" | "italic" | "underline" | "inverse" | "hidden" | "strikethrough" | "noBold" | "noItalic" | "noUnderline" | "noBlink" | "noInverse" | "noHidden" | "noStrikethrough" | ("reset" | "bold" | "dim" | "italic" | "underline" | "inverse" | "hidden" | "strikethrough" | "noBold" | "noItalic" | "noUnderline" | "noBlink" | "noInverse" | "noHidden" | "noStrikethrough")[]; cursor: "savePosition" | "restorePosition" | "reportPosition" | "toStart" | "toLineStart" | "toLineEnd" | "eraseDisplay" | "eraseLine"; move: IMoveParams; scroll: number; style: Partial<CSSStyleDeclaration>; }>; clear(): void; log: (...args: IOpts[]) => this; private createQueue; private formate; private formatCursor; private formatText; private formatColor; private formatStyle; private logFn; checkOptions(opts?: IGlobalOpts): void; } export default JSLog;