{"_id":"@bemoje/max-age-cache","_rev":"2-7dc66251fe4e1d5d8851f420f446613d","name":"@bemoje/max-age-cache","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@bemoje/max-age-cache","version":"1.0.0","description":"A key-value cache where data is  automatically deleted after a set ammount of seconds.","main":"dist/max-age-cache.umd.js","module":"dist/max-age-cache.esm.js","browser":"dist/max-age-cache.umd.js","directories":{"example":"example"},"scripts":{"test":"jest","docs":"documentation build src/** -f md -o docs/markdown.md && documentation build src/** -f html -o docs/html","dev":"rollup -c -w","build":"rollup -c"},"keywords":["max","age","cache","key","value","keyval","automatic","delete","remove"],"author":{"name":"Benjamin M. Jensen","email":"bemoje@gmail.com","url":"https://github.io/bemoje/"},"esm":{"await":true,"force":true,"wasm":true},"license":"MIT","dependencies":{"esm":"^3.2.25"},"devDependencies":{"@babel/preset-env":"^7.9.5","@types/babel-core":"^6.25.6","@types/colors":"^1.2.1","@types/jest":"^24.9.1","@types/node":"^13.11.0","@types/rollup-plugin-commonjs":"^9.3.1","@types/rollup-plugin-node-resolve":"^4.1.0","babel-core":"^6.26.3","babel-jest":"^23.6.0","babel-preset-env":"^1.7.0","documentation":"^12.3.0","jest":"^24.9.0","rollup":"^1.32.1","rollup-plugin-commonjs":"^10.1.0","rollup-plugin-node-resolve":"^5.2.0"},"_id":"@bemoje/max-age-cache@1.0.0","_nodeVersion":"12.13.0","_npmVersion":"6.12.1","dist":{"integrity":"sha512-eCTRMYDNtVCVfls1LrSBZZ1uXfnsmM4cYGSP5MjP48NBUmBkNhT60nKVqHCO+1UBHMXjx7P4GzokNZsZtueT1Q==","shasum":"fa3867ac1b430690729587bb7afeb80329e968b1","tarball":"https://registry.npmjs.org/@bemoje/max-age-cache/-/max-age-cache-1.0.0.tgz","fileCount":42,"unpackedSize":1615919,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJemxQbCRA9TVsSAnZWagAAfNUP/1vL45YeIERpdD6Z72hh\n0TzcOzGBIXJZ57EfKXqH2zXcISOONchvwTMsDfiTlNlTVk/Wb46st9gdCg09\nPsPML5FduwtBgsLcIiKTZkgdFNb3wWY2iN+dBHuWtEDjjAB2pgmjKSnxoEBm\nG601i9G8d/seLTr0gMR+6GhGH32AEPDoSYL2Q5ZRpf9PEBbA+mp11nOPdC9q\nY3fJu/3xZwGxyStl/GpMIYtorBFCz0s76LZiw9zUVVjEuY6DJbgTRyv8U/S0\nQLsN46EeRI9AC3ZdCQMJtxHNKTC2AJC9I1zmfqyqL75VDOwK4ppQR1uXT5/G\nQFeUvtBss2Iw7bpk/HHQY0TXcbab6IXe06pwhFJCW7WAmmszK3ouOZK5HCy4\ngCM5R++wvtV8h+dDzyQkd/tfqMgf/RgnIaNZ7vTodVQFs0/AjSojiDd4Pced\n5Z2kNwcSsCJ74BeAxN3hN6793FY50iP7wsFZr/LOgu9wJJPkK15+3izZwY6/\nK6WlYv1I/x6jjz/Z04RMKy9PWzC+Mneo7kE5CXvwvGX8MlpR3ccRYKGCgvV5\nK6GeIj3L96CjsL2LCYd4OP5snqFAe0IFXSsE7DIRQnt299mrx0H4/W2Tkmhf\nVZ2JCB3pwrtJMF+zYvgXTXlwgXtzvwXE7rnSIGgkemL8obPajTAsJuIBKdte\nMJTC\r\n=pMbS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGB3z71VBjzjUygGRBG8+QZLyesjL9kv3/P/eBLZoNQDAiBWMAE80dOGNcasFFojpff6dexfu/gqh3bcnxmvbBZCDw=="}]},"maintainers":[{"name":"bemoje","email":"bemoje@gmail.com"}],"_npmUser":{"name":"bemoje","email":"bemoje@gmail.com"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/max-age-cache_1.0.0_1587221530481_0.5450164013007124"},"_hasShrinkwrap":false,"deprecated":"Found"}},"time":{"created":"2020-04-18T14:52:10.436Z","1.0.0":"2020-04-18T14:52:10.645Z","modified":"2022-04-04T18:21:28.076Z"},"maintainers":[{"name":"bemoje","email":"bemoje@gmail.com"}],"description":"A key-value cache where data is  automatically deleted after a set ammount of seconds.","keywords":["max","age","cache","key","value","keyval","automatic","delete","remove"],"author":{"name":"Benjamin M. Jensen","email":"bemoje@gmail.com","url":"https://github.io/bemoje/"},"license":"MIT","readme":"# @bemoje/max-age-cache\n\nSimple key-value cache with configurable maximum age of entries. After expiry,\nkeyvals are automatically deleted in order to free up memory.\n\n## Module Compatibility\n\n![javascript](https://img.shields.io/badge/language-UMD-blue.svg?label=JavaScript)\n![javascript](https://img.shields.io/badge/language-ES-blue.svg?label=JavaScript)\n![javascript](https://img.shields.io/badge/language-CJS-blue.svg?label=JavaScript)\n\n## Stats\n\n![bash](https://img.shields.io/npm/dt/shrine512?label=downloads)\n![bash](https://img.shields.io/npm/dm/shrine512?label=over%20time)\n![asd](https://img.shields.io/github/forks/bemoje/shrine512)\n\n## Installation\n\nEnter one of these into your console to install using npm / node.\n\n```sh\nnpm install @bemoje/max-age-cache\nnpm install --save @bemoje/max-age-cache\nnpm install --save-dev @bemoje/max-age-cache\n```\n\n## Usage\n\n```javascript\n// import library\nimport MaxAgeCache from '@bemoje/max-age-cache'\n\n// create new instance with 500 ms maximum age\nconst cache = new MaxAgeCache(500)\n\n// add keyvals\ncache.set('a', 1)\ncache.set('b', 2)\ncache.set('c', 3)\n\n// check if value exists at key\ncache.has('b')\n//=> true\n\n// get a value at key\ncache.get('c')\n//=> 3\n\n// delete a cache value at key\ncache.del('c')\n\n// get all cache's keys\ncache.keys()\n//=> ['a', 'b']\n\n// get all cache's values\ncache.values()\n//=> [1, 2]\n\n// get all cache's keyvals as entries\ncache.entries()\n//=> [['a', 1], ['b', 2]]\n\n// get all cache's keyvals as object\ncache.toObject()\n//=> {a: 1, b: 2}\n\n// let cache entries expire after 1200 ms and check existence before and after\ncache.has('a')\n//=> true\nsetTimeout(() => {\n\tcache.has('a')\n\t//=> false\n}, 1200)\n```\n\n## API\n\n### MaxAgeCache\n\n-  `maxAgeMs` **[number]** The number of milliseconds that is the maximum age of\n   entries.\n\nReturns **[MaxAgeCache]** A new MaxAgeCache instance.\n\n#### maxAge\n\nSets the maximum age for new entries.\n\n-  `ms` **[number]** The number of milliseconds to be the maximum age of\n   entries.\n\nReturns **void** void\n\n#### set\n\nAdd a keyval to the cache. Chainable.\n\n-  `key` **[string]** The key\n-  `value` **any** The value\n\nReturns **[MaxAgeCache]** this self\n\n#### get\n\nAdd a keyval to the cache. Chainable.\n\n-  `key` **[string]** The key\n-  `resetAge` (optional, default `true`)\n\nReturns **(null | any)** The retrieved value\n\n#### has\n\nCheck whether a key exists.\n\n-  `key` **[string]** The key\n\nReturns **[boolean]** boolean\n\n#### del\n\nDelete a key and its corresponding value.\n\n-  `key` **[string]** The key\n\nReturns **void** void\n\n#### keys\n\nReturns all keys as an array.\n\n-  `key` **[string]** The key\n\nReturns **[Array]&lt;[string]>** An array of string keys.\n\n#### values\n\nReturns all values as an array.\n\n-  `key` **[string]** The key\n\nReturns **[Array&lt;any>** An array of values.\n\n#### entries\n\nReturns all entries as an array.\n\n-  `key` **[string]** The key\n\nReturns **[Array]&lt;[Array]&lt;string, any>>** An array of entries.\n\n#### toObject\n\nReturns all data as an object of the cache's keys and values.\n\n-  `key` **[string]** The key\n\nReturns **[object]** object\n\n## Support\n\nPlease [open an issue](https://github.com/bemoje/shrine512/issues/new) for\nsupport.\n\n## Contributing\n\nPlease contribute using\n[Github Flow](https://guides.github.com/introduction/flow/). Create a branch,\nadd commits, and\n[open a pull request](https://github.com/bemoje/shrine512/compare/).\n\n## License\n\nCopyright (c) 2020 | [MIT](https://en.wikipedia.org/wiki/MIT_License) |\n[Benjamin M Jensen](https://github.com/bemoje/) <<bemoje@gmail.com>>\n","readmeFilename":"readme.md"}