@@ -3,7 +3,6 @@ import {basename, dirname, extname, normalize, sep, posix} from 'path'
33import { Intersection , JSONSchema , LinkedJSONSchema , NormalizedJSONSchema , Parent } from './types/JSONSchema'
44import { JSONSchema4 } from 'json-schema'
55import yaml from 'js-yaml'
6- import type { Format } from 'cli-color'
76
87// TODO: pull out into a separate package
98export function Try < T > ( fn : ( ) => T , err : ( e : Error ) => any ) : T {
@@ -243,7 +242,7 @@ export function log(style: LogStyle, title: string, ...messages: unknown[]): voi
243242 if ( messages . length > 1 && typeof messages [ messages . length - 1 ] !== 'string' ) {
244243 lastMessage = messages . splice ( messages . length - 1 , 1 )
245244 }
246- console . info ( color ( ) ?. whiteBright . bgCyan ( 'debug' ) , getStyledTextForLogging ( style ) ?.( title ) , ...messages )
245+ console . info ( color ( ) ?. bgCyan ( color ( ) ?. whiteBright ( 'debug' ) ) , getStyledTextForLogging ( style ) ?.( title ) , ...messages )
247246 if ( lastMessage ) {
248247 console . dir ( lastMessage , { depth : 6 , maxArrayLength : 6 } )
249248 }
@@ -253,21 +252,23 @@ function getStyledTextForLogging(style: LogStyle): ((text: string) => string) |
253252 if ( ! process . env . VERBOSE ) {
254253 return
255254 }
255+ const pc = color ( )
256+ if ( ! pc ) return
256257 switch ( style ) {
257258 case 'blue' :
258- return color ( ) ? .whiteBright . bgBlue
259+ return text => pc . bgBlue ( pc . whiteBright ( text ) )
259260 case 'cyan' :
260- return color ( ) ? .whiteBright . bgCyan
261+ return text => pc . bgCyan ( pc . whiteBright ( text ) )
261262 case 'green' :
262- return color ( ) ? .whiteBright . bgGreen
263+ return text => pc . bgGreen ( pc . whiteBright ( text ) )
263264 case 'magenta' :
264- return color ( ) ? .whiteBright . bgMagenta
265+ return text => pc . bgMagenta ( pc . whiteBright ( text ) )
265266 case 'red' :
266- return color ( ) ? .whiteBright . bgRedBright
267+ return text => pc . bgRedBright ( pc . whiteBright ( text ) )
267268 case 'white' :
268- return color ( ) ? .black . bgWhite
269+ return text => pc . bgWhite ( pc . black ( text ) )
269270 case 'yellow' :
270- return color ( ) ? .whiteBright . bgYellow
271+ return text => pc . bgYellow ( pc . whiteBright ( text ) )
271272 }
272273}
273274
@@ -413,10 +414,10 @@ function isYaml(filename: string) {
413414 return filename . endsWith ( '.yaml' ) || filename . endsWith ( '.yml' )
414415}
415416
416- function color ( ) : Format {
417- let cliColor
417+ function color ( ) {
418+ let pc
418419 try {
419- cliColor = require ( 'cli-color ' )
420+ pc = require ( 'picocolors ' )
420421 } catch { }
421- return cliColor
422+ return pc
422423}
0 commit comments