Skip to content

Commit

Permalink
Revert "move lint to perennial-alias instead of chipper and fix peren…
Browse files Browse the repository at this point in the history
…nial `grunt lint`, phetsims/chipper#1286"

This reverts commit e684c0d.
  • Loading branch information
samreid committed Jul 23, 2022
1 parent e684c0d commit 0450db7
Showing 1 changed file with 27 additions and 0 deletions.
27 changes: 27 additions & 0 deletions js/common/showCommandLineProgress.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
// Copyright 2022, University of Colorado Boulder

/**
* Helper function to show a progress bar on the command line.
* @author Sam Reid (PhET Interactive Simulations)
* @author Michael Kauzmann (PhET Interactive Simulations)
*/

/* eslint-env node */
const _ = require( 'lodash' ); // eslint-disable-line

/**
* See https://jagascript.com/how-to-build-a-textual-progress-bar-for-cli-and-terminal-apps/
* @param {number} progress - decimal between 0 and 1
* @param {boolean} newline - if each new progress should give a new line, should be false during progress, and true when finally completed
* @param {Object} [options]
*/
module.exports = function showCommandLineProgress( progress, newline, options ) {
options = _.extend( {
progressBarLength: 40 // in characters
}, options );

const dots = '.'.repeat( Math.round( progress * options.progressBarLength ) );
const empty = ' '.repeat( Math.round( ( 1 - progress ) * options.progressBarLength ) );
const newlineString = newline ? '\n' : '';
process.stdout.write( `\r[${dots}${empty}] ${( progress * 100 ).toFixed( 2 )}%${newlineString}` );
};

0 comments on commit 0450db7

Please sign in to comment.