123456789101112131415161718192021222324252627282930 |
- 'use strict';
- const renderers = {
- silent: require('listr-silent-renderer'),
- verbose: require('listr-verbose-renderer'),
- default: require('listr-update-renderer')
- };
- const isRendererSupported = renderer => process.stdout.isTTY === true || renderer.nonTTY === true;
- const getRendererClass = renderer => {
- if (typeof renderer === 'string') {
- return renderers[renderer] || renderers.default;
- }
- return typeof renderer === 'function' ? renderer : renderers.default;
- };
- exports.getRenderer = (renderer, fallbackRenderer) => {
- let ret = getRendererClass(renderer);
- if (!isRendererSupported(ret)) {
- ret = getRendererClass(fallbackRenderer);
- if (!ret || !isRendererSupported(ret)) {
- ret = renderers.verbose;
- }
- }
- return ret;
- };
|