rittenhop-dev/versions/5.94.2/node_modules/human-interval/README.md
2024-09-23 19:40:12 -04:00

75 lines
1.6 KiB
Markdown

# Human Interval
Human-readable interval parser for Javascript.
Converts words written in English to numbers by using [node-numbered](https://github.com/blakeembrey/node-numbered).
Originally inspired by [matthewmueller/date](http://github.com/matthewmueller/date).
## Uses
Human Interval is used by job scheduling libraries such as [Agenda](https://github.com/Agenda/agenda#readme) and [Bree](https://jobscheduler.net). They are a job schedulers for Node.js with cron expression syntax, human-friendly times, Dates, and more!
## Example usage
```js
const humanInterval = require('human-interval');
setTimeout(() => {
// Do something!
}, humanInterval('three minutes'));
```
## More sophisticated examples
Human Interval understands all of the following examples:
```js
humanInterval('minute');
humanInterval('one minute');
humanInterval('1.5 minutes');
humanInterval('3 days and 4 hours');
humanInterval('3 days, 4 hours and 36 seconds');
humanInterval('4 months, 3 days, 5 hours and forty-five seconds');
```
## The full list
### Units
Supports the following units in the plural and singular forms:
- `seconds`
- `minutes`
- `hours`
- `days`
- `weeks`
- `months` — assumes 30 days
- `years` — assumes 365 days
### Wordy numbers
Supports numbers being written out in English words.
```js
humanInterval('five minutes');
```
### Hyphenated numbers
Supports hyphenated numbers.
```js
humanInterval('twenty-five seconds');
```
### Negative numbers
Supports negative numbers if the time starts with a `-` symbol immediately followed by a number.
```js
humanInterval('-2 minutes');
```
# License
[The MIT License](LICENSE.md)