93 lines
2 KiB
Markdown
93 lines
2 KiB
Markdown
|
# node-spinner
|
||
|
|
||
|
A simple spinner for node cli.
|
||
|
|
||
|
[![NPM](https://nodei.co/npm/cli-spinner.png?downloads=true&downloadRank=true)](https://nodei.co/npm/cli-spinner/) [![NPM](https://nodei.co/npm-dl/cli-spinner.png?months=6&height=3)](https://nodei.co/npm/cli-spinner/)
|
||
|
|
||
|
---
|
||
|
|
||
|
## Installation
|
||
|
|
||
|
This package is available on [npm](http://npmjs.com) as `cli-spinner`.
|
||
|
|
||
|
``` sh
|
||
|
npm install cli-spinner
|
||
|
```
|
||
|
|
||
|
## Example usage
|
||
|
|
||
|
````javascript
|
||
|
var Spinner = require('cli-spinner').Spinner;
|
||
|
|
||
|
var spinner = new Spinner('processing.. %s');
|
||
|
spinner.setSpinnerString('|/-\\');
|
||
|
spinner.start();
|
||
|
````
|
||
|
|
||
|
## APIs
|
||
|
|
||
|
```
|
||
|
var obj = new Spinner('processing.. %s')
|
||
|
|
||
|
var obj = new Spinner({
|
||
|
text: 'processing.. %s',
|
||
|
stream: process.stderr,
|
||
|
onTick: function(msg){
|
||
|
this.clearLine(this.stream);
|
||
|
this.stream.write(msg);
|
||
|
}
|
||
|
})
|
||
|
```
|
||
|
|
||
|
Create a new spinner object. The advanced options can be used in any combination, none of them are required.
|
||
|
|
||
|
|
||
|
**`obj.start()`**
|
||
|
|
||
|
Starts the spinner.
|
||
|
|
||
|
|
||
|
**`obj.stop(clean)`**
|
||
|
|
||
|
Stops the spinner. Accepts a Boolean parameter to clean the console.
|
||
|
|
||
|
|
||
|
**`obj.isSpinning()`**
|
||
|
|
||
|
Returns true/false depending on whether the spinner is currently spinning.
|
||
|
|
||
|
|
||
|
**`obj.setSpinnerString(spinnerString)`**
|
||
|
|
||
|
Sets the spinner string. Accepts either a String or an Integer index to reference the [built-in spinners](#demo).
|
||
|
|
||
|
|
||
|
**`obj.setSpinnerDelay(spinnerDelay)`**
|
||
|
|
||
|
Sets the spinner animation speed.
|
||
|
|
||
|
|
||
|
**`obj.setSpinnerTitle(spinnerTitle)`**
|
||
|
|
||
|
Sets the spinner title. Use printf-style strings to position the spinner.
|
||
|
|
||
|
|
||
|
**`Spinner.setDefaultSpinnerString(spinnerString)`**
|
||
|
|
||
|
Sets the default spinner string for all newly created instances. Accepts either a String or an Integer index to reference the [built-in spinners](#demo).
|
||
|
|
||
|
|
||
|
**`Spinner.setDefaultSpinnerDelay(spinnerDelay)`**
|
||
|
|
||
|
Sets the default spinner delay for all newly created instances.
|
||
|
|
||
|
## Demo
|
||
|
|
||
|
To see a demonstration of the built-in spinners, point your console at the `example` folder and run:
|
||
|
|
||
|
````
|
||
|
node spinner.js
|
||
|
````
|
||
|
|
||
|
![preview](img/spinner.gif "Spinner")
|