Skip to content

Commit c09dbcd

Browse files
committed
[pruning] move cli-color to devDependencies
1 parent cb99ce4 commit c09dbcd

File tree

3 files changed

+37
-13
lines changed

3 files changed

+37
-13
lines changed

package-lock.json

Lines changed: 19 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,6 @@
5151
"@apidevtools/json-schema-ref-parser": "^11.5.5",
5252
"@types/json-schema": "^7.0.15",
5353
"@types/lodash": "^4.17.0",
54-
"cli-color": "^2.0.4",
5554
"glob": "^10.3.12",
5655
"is-glob": "^4.0.3",
5756
"js-yaml": "^4.1.0",
@@ -71,6 +70,7 @@
7170
"ava": "^6.1.2",
7271
"browserify": "^17.0.0",
7372
"browserify-shim": "^3.8.16",
73+
"cli-color": "^2.0.4",
7474
"concurrently": "^8.2.2",
7575
"eslint": "^8.56.0",
7676
"eslint-config-prettier": "^9.1.0",

src/utils.ts

Lines changed: 17 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import {basename, dirname, extname, normalize, sep, posix} from 'path'
33
import {Intersection, JSONSchema, LinkedJSONSchema, NormalizedJSONSchema, Parent} from './types/JSONSchema'
44
import {JSONSchema4} from 'json-schema'
55
import yaml from 'js-yaml'
6+
import type {Format} from 'cli-color'
67

78
// TODO: pull out into a separate package
89
export function Try<T>(fn: () => T, err: (e: Error) => any): T {
@@ -242,7 +243,7 @@ export function log(style: LogStyle, title: string, ...messages: unknown[]): voi
242243
if (messages.length > 1 && typeof messages[messages.length - 1] !== 'string') {
243244
lastMessage = messages.splice(messages.length - 1, 1)
244245
}
245-
console.info(require('cli-color').whiteBright.bgCyan('debug'), getStyledTextForLogging(style)?.(title), ...messages)
246+
console.info(color()?.whiteBright.bgCyan('debug'), getStyledTextForLogging(style)?.(title), ...messages)
246247
if (lastMessage) {
247248
console.dir(lastMessage, {depth: 6, maxArrayLength: 6})
248249
}
@@ -254,19 +255,19 @@ function getStyledTextForLogging(style: LogStyle): ((text: string) => string) |
254255
}
255256
switch (style) {
256257
case 'blue':
257-
return require('cli-color').whiteBright.bgBlue
258+
return color()?.whiteBright.bgBlue
258259
case 'cyan':
259-
return require('cli-color').whiteBright.bgCyan
260+
return color()?.whiteBright.bgCyan
260261
case 'green':
261-
return require('cli-color').whiteBright.bgGreen
262+
return color()?.whiteBright.bgGreen
262263
case 'magenta':
263-
return require('cli-color').whiteBright.bgMagenta
264+
return color()?.whiteBright.bgMagenta
264265
case 'red':
265-
return require('cli-color').whiteBright.bgRedBright
266+
return color()?.whiteBright.bgRedBright
266267
case 'white':
267-
return require('cli-color').black.bgWhite
268+
return color()?.black.bgWhite
268269
case 'yellow':
269-
return require('cli-color').whiteBright.bgYellow
270+
return color()?.whiteBright.bgYellow
270271
}
271272
}
272273

@@ -411,3 +412,11 @@ export function parseFileAsJSONSchema(filename: string | null, contents: string)
411412
function isYaml(filename: string) {
412413
return filename.endsWith('.yaml') || filename.endsWith('.yml')
413414
}
415+
416+
function color(): Format {
417+
let cliColor
418+
try {
419+
cliColor = require('cli-color')
420+
} catch {}
421+
return cliColor
422+
}

0 commit comments

Comments
 (0)