site/node_modules/cli-spinner/README.md
2024-10-14 08:09:33 +02:00

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")