Skip to content

Commit 09844ca

Browse files
committed
feat(dependencies): update listr2@6.6.0
1 parent 26dea68 commit 09844ca

8 files changed

+251
-410
lines changed

lib/getRenderer.js

+47-14
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,61 @@
1-
const getMainRendererOptions = ({ debug, quiet }, env) => {
2-
if (quiet) return { renderer: 'silent' }
1+
import { EOL } from 'node:os'
2+
import { Writable } from 'node:stream'
3+
4+
import { ListrLogger, ProcessOutput } from 'listr2'
5+
6+
const EOLRegex = new RegExp(EOL + '$')
7+
8+
const bindLogger = (consoleLogMethod) =>
9+
new Writable({
10+
write: function (chunk, encoding, next) {
11+
consoleLogMethod(chunk.toString().replace(EOLRegex, ''))
12+
next()
13+
},
14+
})
15+
16+
const getMainRendererOptions = ({ debug, quiet }, logger, env) => {
17+
if (quiet) {
18+
return {
19+
renderer: 'silent',
20+
}
21+
}
22+
23+
if (env.NODE_ENV === 'test') {
24+
return {
25+
renderer: 'test',
26+
rendererOptions: {
27+
logger: new ListrLogger({
28+
processOutput: new ProcessOutput(bindLogger(logger.log), bindLogger(logger.error)),
29+
}),
30+
},
31+
}
32+
}
33+
334
// Better support for dumb terminals: https://en.wikipedia.org/wiki/Computer_terminal#Dumb_terminals
4-
const isDumbTerminal = env.TERM === 'dumb'
5-
if (debug || isDumbTerminal || env.NODE_ENV === 'test') return { renderer: 'verbose' }
6-
return { renderer: 'update', rendererOptions: { dateFormat: false } }
7-
}
35+
if (debug || env.TERM === 'dumb') {
36+
return {
37+
renderer: 'verbose',
38+
}
39+
}
840

9-
const getFallbackRenderer = ({ renderer }, { FORCE_COLOR }) => {
10-
if (renderer === 'silent') {
11-
return 'silent'
41+
return {
42+
renderer: 'update',
1243
}
44+
}
1345

14-
// If colors are being forced, then also force non-fallback rendering
15-
if (Number(FORCE_COLOR) > 0) {
46+
const getFallbackRenderer = ({ renderer }, { FORCE_COLOR }) => {
47+
if (renderer === 'silent' || renderer === 'test' || Number(FORCE_COLOR) > 0) {
1648
return renderer
1749
}
1850

1951
return 'verbose'
2052
}
2153

22-
export const getRenderer = (options, env = process.env) => {
23-
const mainRendererOptions = getMainRendererOptions(options, env)
54+
export const getRenderer = (options, logger, env = process.env) => {
55+
const mainRendererOptions = getMainRendererOptions(options, logger, env)
56+
2457
return {
2558
...mainRendererOptions,
26-
nonTTYRenderer: getFallbackRenderer(mainRendererOptions, env),
59+
fallbackRenderer: getFallbackRenderer(mainRendererOptions, env),
2760
}
2861
}

lib/runAll.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,7 @@ export const runAll = async (
151151
ctx,
152152
exitOnError: false,
153153
registerSignalListeners: false,
154-
...getRenderer({ debug, quiet }),
154+
...getRenderer({ debug, quiet }, logger),
155155
}
156156

157157
const listrTasks = []

0 commit comments

Comments
 (0)