Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
'use strict';
var _ = require('lodash');
var util = require('./readline');
var cliWidth = require('cli-width');
var stripAnsi = require('strip-ansi');
// Prevent crashes on environments where the width can't be properly detected
cliWidth.defaultWidth = 80;
var ScreenManager = module.exports = function (rl) {
// These variables are keeping information to allow correct prompt re-rendering
this.height = 0;
this.extraLinesUnderPrompt = 0;
this.rl = rl;
};
ScreenManager.prototype.render = function (content, opt) {
opt = _.extend({ cursor: 0 }, opt || {});
var cursorPos = this.rl._getCursorPos();
this.rl.output.unmute();
this.clean(this.extraLinesUnderPrompt);
*
* (c) Harminder Virk
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
import { Ora } from 'ora'
import cliWidth from 'cli-width'
import { yellow, dim } from 'kleur'
/**
* Getting width of the stdout to put log messages
* in one line
*/
const WIDTH = cliWidth()
/**
* Log installing dependencies message
*/
export function logInstall (list: string[], spinner: Ora, dev: boolean) {
const dependencies: string[] = []
const spaceBetweenDependencies = 2
let widthConsumed = 17 + 15
for (let dependency of list) {
if ((widthConsumed + dependency.length + spaceBetweenDependencies) > WIDTH) {
break
}
/**