diff options
| author | Joel Kronqvist <joel.h.kronqvist@gmail.com> | 2022-03-05 19:02:27 +0200 | 
|---|---|---|
| committer | Joel Kronqvist <joel.h.kronqvist@gmail.com> | 2022-03-05 19:02:27 +0200 | 
| commit | 5d309ff52cd399a6b71968a6b9a70c8ac0b98981 (patch) | |
| tree | 360f7eb50f956e2367ef38fa1fc6ac7ac5258042 /node_modules/ms | |
| parent | b500a50f1b97d93c98b36ed9a980f8188d648147 (diff) | |
| download | LYLLRuoka-5d309ff52cd399a6b71968a6b9a70c8ac0b98981.tar.gz LYLLRuoka-5d309ff52cd399a6b71968a6b9a70c8ac0b98981.zip  | |
Added node_modules for the updating to work properly.
Diffstat (limited to 'node_modules/ms')
| -rw-r--r-- | node_modules/ms/index.js | 162 | ||||
| -rw-r--r-- | node_modules/ms/license.md | 21 | ||||
| -rw-r--r-- | node_modules/ms/package.json | 37 | ||||
| -rw-r--r-- | node_modules/ms/readme.md | 60 | 
4 files changed, 280 insertions, 0 deletions
diff --git a/node_modules/ms/index.js b/node_modules/ms/index.js new file mode 100644 index 0000000..c4498bc --- /dev/null +++ b/node_modules/ms/index.js @@ -0,0 +1,162 @@ +/** + * Helpers. + */ + +var s = 1000; +var m = s * 60; +var h = m * 60; +var d = h * 24; +var w = d * 7; +var y = d * 365.25; + +/** + * Parse or format the given `val`. + * + * Options: + * + *  - `long` verbose formatting [false] + * + * @param {String|Number} val + * @param {Object} [options] + * @throws {Error} throw an error if val is not a non-empty string or a number + * @return {String|Number} + * @api public + */ + +module.exports = function(val, options) { +  options = options || {}; +  var type = typeof val; +  if (type === 'string' && val.length > 0) { +    return parse(val); +  } else if (type === 'number' && isFinite(val)) { +    return options.long ? fmtLong(val) : fmtShort(val); +  } +  throw new Error( +    'val is not a non-empty string or a valid number. val=' + +      JSON.stringify(val) +  ); +}; + +/** + * Parse the given `str` and return milliseconds. + * + * @param {String} str + * @return {Number} + * @api private + */ + +function parse(str) { +  str = String(str); +  if (str.length > 100) { +    return; +  } +  var match = /^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec( +    str +  ); +  if (!match) { +    return; +  } +  var n = parseFloat(match[1]); +  var type = (match[2] || 'ms').toLowerCase(); +  switch (type) { +    case 'years': +    case 'year': +    case 'yrs': +    case 'yr': +    case 'y': +      return n * y; +    case 'weeks': +    case 'week': +    case 'w': +      return n * w; +    case 'days': +    case 'day': +    case 'd': +      return n * d; +    case 'hours': +    case 'hour': +    case 'hrs': +    case 'hr': +    case 'h': +      return n * h; +    case 'minutes': +    case 'minute': +    case 'mins': +    case 'min': +    case 'm': +      return n * m; +    case 'seconds': +    case 'second': +    case 'secs': +    case 'sec': +    case 's': +      return n * s; +    case 'milliseconds': +    case 'millisecond': +    case 'msecs': +    case 'msec': +    case 'ms': +      return n; +    default: +      return undefined; +  } +} + +/** + * Short format for `ms`. + * + * @param {Number} ms + * @return {String} + * @api private + */ + +function fmtShort(ms) { +  var msAbs = Math.abs(ms); +  if (msAbs >= d) { +    return Math.round(ms / d) + 'd'; +  } +  if (msAbs >= h) { +    return Math.round(ms / h) + 'h'; +  } +  if (msAbs >= m) { +    return Math.round(ms / m) + 'm'; +  } +  if (msAbs >= s) { +    return Math.round(ms / s) + 's'; +  } +  return ms + 'ms'; +} + +/** + * Long format for `ms`. + * + * @param {Number} ms + * @return {String} + * @api private + */ + +function fmtLong(ms) { +  var msAbs = Math.abs(ms); +  if (msAbs >= d) { +    return plural(ms, msAbs, d, 'day'); +  } +  if (msAbs >= h) { +    return plural(ms, msAbs, h, 'hour'); +  } +  if (msAbs >= m) { +    return plural(ms, msAbs, m, 'minute'); +  } +  if (msAbs >= s) { +    return plural(ms, msAbs, s, 'second'); +  } +  return ms + ' ms'; +} + +/** + * Pluralization helper. + */ + +function plural(ms, msAbs, n, name) { +  var isPlural = msAbs >= n * 1.5; +  return Math.round(ms / n) + ' ' + name + (isPlural ? 's' : ''); +} diff --git a/node_modules/ms/license.md b/node_modules/ms/license.md new file mode 100644 index 0000000..69b6125 --- /dev/null +++ b/node_modules/ms/license.md @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2016 Zeit, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/node_modules/ms/package.json b/node_modules/ms/package.json new file mode 100644 index 0000000..eea666e --- /dev/null +++ b/node_modules/ms/package.json @@ -0,0 +1,37 @@ +{ +  "name": "ms", +  "version": "2.1.2", +  "description": "Tiny millisecond conversion utility", +  "repository": "zeit/ms", +  "main": "./index", +  "files": [ +    "index.js" +  ], +  "scripts": { +    "precommit": "lint-staged", +    "lint": "eslint lib/* bin/*", +    "test": "mocha tests.js" +  }, +  "eslintConfig": { +    "extends": "eslint:recommended", +    "env": { +      "node": true, +      "es6": true +    } +  }, +  "lint-staged": { +    "*.js": [ +      "npm run lint", +      "prettier --single-quote --write", +      "git add" +    ] +  }, +  "license": "MIT", +  "devDependencies": { +    "eslint": "4.12.1", +    "expect.js": "0.3.1", +    "husky": "0.14.3", +    "lint-staged": "5.0.0", +    "mocha": "4.0.1" +  } +} diff --git a/node_modules/ms/readme.md b/node_modules/ms/readme.md new file mode 100644 index 0000000..9a1996b --- /dev/null +++ b/node_modules/ms/readme.md @@ -0,0 +1,60 @@ +# ms + +[](https://travis-ci.org/zeit/ms) +[](https://spectrum.chat/zeit) + +Use this package to easily convert various time formats to milliseconds. + +## Examples + +```js +ms('2 days')  // 172800000 +ms('1d')      // 86400000 +ms('10h')     // 36000000 +ms('2.5 hrs') // 9000000 +ms('2h')      // 7200000 +ms('1m')      // 60000 +ms('5s')      // 5000 +ms('1y')      // 31557600000 +ms('100')     // 100 +ms('-3 days') // -259200000 +ms('-1h')     // -3600000 +ms('-200')    // -200 +``` + +### Convert from Milliseconds + +```js +ms(60000)             // "1m" +ms(2 * 60000)         // "2m" +ms(-3 * 60000)        // "-3m" +ms(ms('10 hours'))    // "10h" +``` + +### Time Format Written-Out + +```js +ms(60000, { long: true })             // "1 minute" +ms(2 * 60000, { long: true })         // "2 minutes" +ms(-3 * 60000, { long: true })        // "-3 minutes" +ms(ms('10 hours'), { long: true })    // "10 hours" +``` + +## Features + +- Works both in [Node.js](https://nodejs.org) and in the browser +- If a number is supplied to `ms`, a string with a unit is returned +- If a string that contains the number is supplied, it returns it as a number (e.g.: it returns `100` for `'100'`) +- If you pass a string with a number and a valid unit, the number of equivalent milliseconds is returned + +## Related Packages + +- [ms.macro](https://github.com/knpwrs/ms.macro) - Run `ms` as a macro at build-time. + +## Caught a Bug? + +1. [Fork](https://help.github.com/articles/fork-a-repo/) this repository to your own GitHub account and then [clone](https://help.github.com/articles/cloning-a-repository/) it to your local device +2. Link the package to the global module directory: `npm link` +3. Within the module you want to test your local development instance of ms, just link it to the dependencies: `npm link ms`. Instead of the default one from npm, Node.js will now use your clone of ms! + +As always, you can run the tests using: `npm test`  | 
