{"_id":"human-intervals","_rev":"1019-d80dfca40841d316674ae8a07c1f6b77","name":"human-intervals","dist-tags":{"latest":"0.0.5"},"versions":{"0.0.5":{"name":"human-intervals","version":"0.0.5","_id":"human-intervals@0.0.5","maintainers":[{"name":"segment","email":"tools+npm@segment.com"}],"dist":{"shasum":"c67303ef883da909e28a9201ccd9fda36d13c3f9","tarball":"https://registry.npmjs.org/human-intervals/-/human-intervals-0.0.5.tgz","integrity":"sha512-fMjgLQ3UI1WToo8K4k/B6AQ+EaJg+10X6NsonIbadCyVbuXZqreM2xeSD8LstZ1l83ctahnctT1WYRvQyL13yg==","signatures":[{"sig":"MEUCIEzrNf0hZmVIUhqQmy/IwTz6S2rI0fvJ5J1k4gKy/+88AiEA1tL42A+Yrc6PH9jnlGSjVYlfql887NDM86B5ENKzXl0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"_from":".","_shasum":"c67303ef883da909e28a9201ccd9fda36d13c3f9","gitHead":"21f8d53fd70dd40fc246f69b4fa5b487093e86ca","scripts":{},"_npmUser":{"name":"segment","email":"tools+npm@segment.com"},"_npmVersion":"2.14.12","description":"## Installation","directories":{},"_nodeVersion":"4.2.4","_npmOperationalInternal":{"tmp":"tmp/human-intervals-0.0.5.tgz_1461189950323_0.8445779851172119","host":"packages-16-east.internal.npmjs.com"}}},"time":{"created":"2016-04-20T22:05:51.622Z","modified":"2026-06-11T22:37:51.977Z","0.0.5":"2016-04-20T22:05:51.622Z"},"description":"## Installation","maintainers":[{"email":"secure-supply-chain@twilio.com","name":"twilio-supply-chain"},{"email":"tools@segment.com","name":"segmentio"},{"email":"tools+npm@segment.com","name":"segment-admin"}],"readme":"\n# human-intervals\n\n## Installation\n\n```\nnpm install human-intervals\n```\n\n```\ncomponent install segmentio/human-intervals\n```\n\n## Example\n\n```js\nvar humanize = require('human-intervals');\nvar assert = require('assert');\n\nvar values = [ 341, 12, 793, 42, 54, 591, 123, 271, 804 ];\nvar max = Math.max.apply(Math, values);\n\nassert.deepEqual(humanize({ segments: 2, value: max }).map(format), [ '0', '450', '900' ]);\nassert.deepEqual(humanize({ segments: 3, value: max }).map(format), [ '0', '300', '600', '900' ]);\nassert.deepEqual(humanize({ segments: 4, value: max }).map(format), [ '0', '210', '420', '630', '840' ]);\nassert.deepEqual(humanize({ segments: 5, value: max }).map(format), [ '0', '180', '360', '540', '720', '900']);\n\nvar values = [ 341, 12, 793, 42, 54, 591, 123, 271, 804, 1029 ].map(thousand);\nvar max = Math.max.apply(Math, values);\n\nassert.deepEqual(humanize({ segments: 2, value: max }).map(format), [ '0', '1M', '2M' ]);\nassert.deepEqual(humanize({ segments: 3, value: max }).map(format), [ '0', '400K', '800K', '1.2M' ]);\nassert.deepEqual(humanize({ segments: 4, value: max }).map(format), [ '0', '300K', '600K', '900K', '1.2M' ]);\nassert.deepEqual(humanize({ segments: 5, value: max }).map(format), [ '0', '400K', '800K', '1.2M', '1.6M', '2M']);\n\nfunction format(value) {\n  if (value > 10e5) return (value / 10e5) + 'M'; // millions\n  if (value > 10e2) return (value / 10e2) + 'K'; // thousands\n  return String(value); // <= hundreds\n}\n```\n","readmeFilename":"Readme.md"}