{"_id":"persistable","_rev":"6-3940ae53f7196a400c88c99049613573","name":"persistable","dist-tags":{"latest":"0.1.2"},"versions":{"0.0.1":{"name":"persistable","version":"0.0.1","description":"persist the return of a function","main":"index.js","scripts":{"test":"uvu test"},"repository":{"type":"git","url":"git+https://github.com/jakobrosenberg/persistable.git"},"keywords":["caching","data"],"author":{"name":"jakobrosenberg@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/jakobrosenberg/persistable/issues"},"homepage":"https://github.com/jakobrosenberg/persistable#readme","devDependencies":{"uvu":"^0.5.1"},"gitHead":"a64a9616b46c006c6f3f69270c9b09f6d93f9d15","_id":"persistable@0.0.1","_nodeVersion":"14.17.0","_npmVersion":"7.14.0","dist":{"integrity":"sha512-Yczy/iz+euXd71KcXlEuB0m50AtYabeoExlaAApxO2ZbAcvQcJTUCIUT15XmBU0H+BWjr2xbhU7ttjEa23FY0A==","shasum":"0e80771f05e5de5e3edc10cfde5f05e270fd6c31","tarball":"https://registry.npmjs.org/persistable/-/persistable-0.0.1.tgz","fileCount":4,"unpackedSize":3848,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgw9pHCRA9TVsSAnZWagAAiF0P/19Cfw+EKzSf4qRZ+ndh\nKlXt3UBPsP533soqrZKE21KX6ZTBB1oSCE6P80l2nzjm9YuSRc8JxsiRUVhT\nTXkRJLtprlNfLgGg5h6VHO4ATTMEMmyXCdCciHjj6ZSfSGic7zirJ/Wn/VJf\nocfljxK7LSpIQPKmgpNYu4vp/et4r1F4s1AxTrl3bbj7pBfV6ikFoWceirq+\nxK79iaSNxYqNw23XRm1ZCnsZEojhxWawy0yXfd1Wy05X4Do01vbsEErDCZZT\nfLUG7OF3ZrWoal75WEDIIn5LPQAKmbSh3G4xkB2OiNKsLWs6NbJZeeHmke4l\nSXAHwtGUJtGDstBfD2gnKq/UlaLHJqiyfIqkHo12gktlwoOmMWRysuxiBhnl\nHYOtjtsTShArHGquhf/+Cduy9UwpglkTJRAJbB98gCncX7Z0ciP02x0wF6fz\ngn286ntSneUJGXUCwFInhx8SFTgfzePJkLyPaIvoP5I5W10qDBrEdgLwdDkp\nmQDk4gZrd7s3WLR5n79/oNtfT80QxcDjkioJ4X0fJr4y5uETXYxcjyI9SVds\nM2UDSm0UKCUxdZ9R7DLczbL3zKL5l+b5bPjx0hqha4LaIvlYmVaBn8nRA7+e\n7L7gwGGLTdWsJi1xB8bsgYa394AYYUqV0lZQCdvf04OddaUa+p74rylGkzBs\n5nfs\r\n=J+OE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEqL6aWIoW/0ymD3DGWaSlfpzKFeoQuyHLwZ5sl1wujoAiEApR46ciOjDZZBTT2isN/7UesyeGm68ZtiDaNCCOez4YQ="}]},"_npmUser":{"name":"jakobrosenberg","email":"jakobrosenberg@gmail.com"},"directories":{},"maintainers":[{"name":"jakobrosenberg","email":"jakobrosenberg@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/persistable_0.0.1_1623448135106_0.21528740346701936"},"_hasShrinkwrap":false},"0.0.2":{"name":"persistable","version":"0.0.2","description":"persist the return of a function","main":"index.js","scripts":{"test":"uvu test"},"repository":{"type":"git","url":"git+https://github.com/jakobrosenberg/persistable.git"},"keywords":["caching","data"],"author":{"name":"jakobrosenberg@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/jakobrosenberg/persistable/issues"},"homepage":"https://github.com/jakobrosenberg/persistable#readme","devDependencies":{"uvu":"^0.5.1"},"gitHead":"a96e30d57236e217c905fcfe2d18e9f773bd8bdd","_id":"persistable@0.0.2","_nodeVersion":"14.17.0","_npmVersion":"7.14.0","dist":{"integrity":"sha512-EpGRw18+zLSCvNoNKiEvMjo6CZl7kMib2u7UrOJPIhdkVcHXcfeNjx3jO/LJK+P37T7Nm+oGCBp7/PHAAXTAMA==","shasum":"9c423446dea9f99c1f79f67ab9dc3147769fb9f6","tarball":"https://registry.npmjs.org/persistable/-/persistable-0.0.2.tgz","fileCount":7,"unpackedSize":69806,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgxKeoCRA9TVsSAnZWagAAkKwP+wb7Mv/b42qKVkqVD0tN\nklc6NQoLAccDww4447dXusdqPNmrxWE73FfBJOMY1+pfDYOmucBTD3W/lcTm\nbHveRjy/ubejcbsVa2I5CPa/rm5jk8jSJZ7U24yhlpRHhJp5gbDbQ5VSSn4d\nF3qURe6JnMqJrtiTWYN0J6BgyFYDhawahvlxXVGak2WJsHTYKL7jv9QZ78NU\nD3bu0vh7gqBk7MZxqZS34ffTiNRm9UYA4emEilkjDHEP1g70B9t4G4rNstQH\nQ7ymoBkW6jLm2NeOsbyJMF7Hwis0n8D58zQ8a9Gk+gJ++ZSxUx5ZbpeUJ0Jm\nxvwhy7JSYNWvEIetY8Y2xotz1euClJEKMimVE1PzkhqZeuC2kSZdZA2pGOjw\nKDMl1pF+zUvJR/JIndyVJxxGH9xyjC1p2iP5NFzP6e7gZoaXHL3sTbgHi2sU\niQRd/sZp58Dw1CvPhp2FVOLn4HITTCVAWsXzbx7x6GVqldmcl9xgy6Q6UjG4\nKxD+3bW2/IJUvoowaJZqpYbFR/H8kthjdJ9AdIUjjRdx17qdn3eL4LgGHU+Y\nK9Lu8nGi4MdwsPqdNkEXis05khJLYquGa5/8IcS9SMUwaFIDfYP/EmjvGVd2\nIuxwFxQZ4mvkjkw4+VV2RmCJaF4I2v41I8eyW5njnvawF2ExapneStDIDo79\nvzp3\r\n=VHrA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF0qn392KlNpdxgZhq5n9uRGjvCsONfZHBKKQENEU1y1AiAjuXB/RUE7QfFNWT9l+C3MK/poGz/TZlt/H4807zF4IA=="}]},"_npmUser":{"name":"jakobrosenberg","email":"jakobrosenberg@gmail.com"},"directories":{},"maintainers":[{"name":"jakobrosenberg","email":"jakobrosenberg@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/persistable_0.0.2_1623500712057_0.7735183897453928"},"_hasShrinkwrap":false},"0.1.0":{"name":"persistable","version":"0.1.0","description":"persist the return of a function","main":"index.js","scripts":{"test":"uvu test test\\.js","build":"documentation readme typedef.js --section=API"},"repository":{"type":"git","url":"git+https://github.com/jakobrosenberg/persistable.git"},"keywords":["caching","data"],"author":{"name":"jakobrosenberg@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/jakobrosenberg/persistable/issues"},"homepage":"https://github.com/jakobrosenberg/persistable#readme","devDependencies":{"documentation":"^13.2.5","uvu":"^0.5.1"},"gitHead":"de348929393a057a3e6525fa7430d5bc14535123","_id":"persistable@0.1.0","_nodeVersion":"14.17.0","_npmVersion":"7.14.0","dist":{"integrity":"sha512-vH4l8JUmmfl5umf/wg3LIfB9cg658+ZDxYmYMJMdwgijtiAaIgQaDwyX5wC2U9hJFeQ34V0fsyvz2CpcT6qjUg==","shasum":"94f8a013ef2b53fe09e2d2e72f6ddadbc2d39147","tarball":"https://registry.npmjs.org/persistable/-/persistable-0.1.0.tgz","fileCount":7,"unpackedSize":71043,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgxLA4CRA9TVsSAnZWagAAiHcP/1978O+HN/4IbIK5ywdN\n56bIbqbH7/tFYNbiGNwUWzIojt8QAaIDrPpVSZf65dmMWHBI9UY1TL4z6Tz0\nu0wPyKZN3oRd//KeYngEHj8I2WDPHI4rtNvpezCNVjMYT0fqizzK4VjfaTr3\nK4j88mXXLYDxbTDQZP9C+rn0bBDl7fFOqG257RfuykZ29t42MSClK/zgVCRW\ndEG6rzkLGXdDDvLltPgegK2oevfft1mi4Cfvibhv8N3mUeSDIQsS754zidSn\nFKeTzYfwY/tyHtzcR5WgAyrC3QS/eMELbNjjcKYXEkTcFZhPnfFuXVTo6Fwx\nRqJTXckI1PA6ieXo+gPsaoqGRbmJ9+irjJPbM/Do8d1dwpOW2dAvepgn+tMd\n2qR49OJuWLBOVPCIgdJJjJtVJOuOXZDfuOfbkkP/2lGsob32JSxaqj+e8sEc\nPkSX6R7xSR2x2NAVVVFph5nNhiUT+xFtRYYtVaBYvG+UDQ94ZPNrBV1LCMrc\nhjiqY+WgCLYTseik38DVhoYqYDJz4cL4/6Yzsnscf8DxF+e85khDh8V6KwmM\nJw2KHmZUF/Vxa8jCsnY8FwM9F9HSbSo0e2QbXEKizUDrVkeMMaDEBZvVU0qT\nxOBTkCQf2ZktI5qULO0l0sJkb0y1AgQVZYUJPeHe4DBbAXfSewoeeosETTY1\nYTBE\r\n=5YiT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCJFmR7lvqskfnXomfKWFJzSA009HCF7qD5+mK1HeFWYwIgMSlrSLB3dHWYDIUYfG6oxftYavBFdk4ab0AVO44mzO4="}]},"_npmUser":{"name":"jakobrosenberg","email":"jakobrosenberg@gmail.com"},"directories":{},"maintainers":[{"name":"jakobrosenberg","email":"jakobrosenberg@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/persistable_0.1.0_1623502904394_0.6826343031530393"},"_hasShrinkwrap":false},"0.1.1":{"name":"persistable","version":"0.1.1","description":"persist the return of a function","main":"lib/index.js","//exports":{".":{"//import":"./lib/index.mjs","require":"./lib/index.js"}},"scripts":{"test":"uvu test test\\.js","build":"tsc && documentation readme typedef.js --section=API"},"typings":"typings","repository":{"type":"git","url":"git+https://github.com/jakobrosenberg/persistable.git"},"keywords":["caching","data"],"author":{"name":"jakobrosenberg@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/jakobrosenberg/persistable/issues"},"homepage":"https://github.com/jakobrosenberg/persistable#readme","devDependencies":{"documentation":"^13.2.5","typescript":"^4.4.4","uvu":"^0.5.1"},"gitHead":"e83aaa3ab9096a8d44249e77b0b37320bb8d2203","_id":"persistable@0.1.1","_nodeVersion":"16.6.2","_npmVersion":"7.20.3","dist":{"integrity":"sha512-t4S+7T1bZQXcug4qgXeF6mxbMmNQmdVx+MgcawZeXiNSsGpsTbXMERjk9F7y3ZYi4BOghm7Go8R0EGuZvoBz7g==","shasum":"d3c2768fd6b244c0d2a72f350f1b96bb9b5d9882","tarball":"https://registry.npmjs.org/persistable/-/persistable-0.1.1.tgz","fileCount":14,"unpackedSize":73435,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD2X8C2IpSBhXvTrXt+/kwd7Kv6BCfBhcju8s1fqzDFrQIhAJXhM54IZo1bE5L3jI5fUMElJ4EJPI+yqKfxKneCMWK0"}]},"_npmUser":{"name":"jakobrosenberg","email":"jakobrosenberg@gmail.com"},"directories":{},"maintainers":[{"name":"jakobrosenberg","email":"jakobrosenberg@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/persistable_0.1.1_1634234980704_0.44143896961401685"},"_hasShrinkwrap":false},"0.1.2":{"name":"persistable","version":"0.1.2","description":"persist the return of a function","main":"lib/index.js","//exports":{".":{"//import":"./lib/index.mjs","require":"./lib/index.js"}},"scripts":{"test":"uvu test test\\.js","build":"tsc && documentation readme typedef.js --section=API"},"typings":"typings","repository":{"type":"git","url":"git+https://github.com/jakobrosenberg/persistable.git"},"keywords":["caching","data"],"author":{"name":"jakobrosenberg@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/jakobrosenberg/persistable/issues"},"homepage":"https://github.com/jakobrosenberg/persistable#readme","devDependencies":{"documentation":"^13.2.5","typescript":"^4.4.4","uvu":"^0.5.1"},"gitHead":"9e99b9329e56caa15af98745984a0a699dd1b3f3","_id":"persistable@0.1.2","_nodeVersion":"16.6.2","_npmVersion":"7.20.3","dist":{"integrity":"sha512-MBOfOEnD9SbHbhpwpqyF1I46Ae9Et3PBxWDBI3Ro5NfSa2761CPzLKcfhlcvanmhAgHJpCGmsuCnP3+wDC/2Ug==","shasum":"9c08914c5a6d81a3b5cabdeb42143bf76221d70a","tarball":"https://registry.npmjs.org/persistable/-/persistable-0.1.2.tgz","fileCount":14,"unpackedSize":73741,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh22gaCRA9TVsSAnZWagAAOMwP/2HLbfjFoy1kZg3tSXKS\niVOAPYciB3AlnY5/oDnFuhjCSnSns7NMiT59uqBGiFwWoJxftPcctXGEuefZ\nyOph8w1bQ7XalAhzQzLzJ7/oNSS4s2fhWPaiclsknTa7cOvudU6wry4HlDgu\n0Zwwp8cgNtqx0doUnYfprwvV9xt5NOBx1QrmXNScQW78EOolaCDe5ZCjRG3A\nhQUKmZ9NC07CbXNUzoPga2jsjd1ESbLAE21pJ1O2FW8c93VLsZE5+gML9XJ7\nhl5i1/rvc1F1bstxUOLytCyrxCISxk5Au3Qmr4i6h9QWd3hWxfqAbVLjOdlh\nR9BEgSTcSFHc0nKiW7ESaSg7UX2IQsVZcomGH0Tgy7VGwc6wH09W5IDf6cvR\n6v85Ib4WhK4qI9CL4glDZTpLqXzir6aQvddDb3zkMzcgz65ucXL+67qrNMNV\nmd80Gr/kLWLpOR6fbPf3c2FbjNI7i/5kNbdFSq7QGpMY/dBvcoSPWho1bu7A\nKC14yI19B9k4EFZ9kfYiBGA7U74rz5G5PG7fXMlT+TrpfzdjTvDwTygPnZik\nG0ipjNjUzryHOQ/XkhJnGqfVSp+uzqZlLmSi+YsHP7SZWfInvQ09lSDSi2gV\nKGeerrR4+Buwc7kAPhA1U9cKw9aqSG3KTO0zAHBINAUCXRynJnFT87X/deJ7\n0M6Z\r\n=qoWV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDwY3BIaVj3nPOdeyfq7KqycHXxT4VeZZ5GoFqRdnHY9QIgK+Et7lepQPsiasQjO9Zc1h7f9Za9pH7MtVSbxgBnWLI="}]},"_npmUser":{"name":"jakobrosenberg","email":"jakobrosenberg@gmail.com"},"directories":{},"maintainers":[{"name":"jakobrosenberg","email":"jakobrosenberg@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/persistable_0.1.2_1634236162550_0.42592426019695817"},"_hasShrinkwrap":false}},"time":{"created":"2021-06-11T21:48:55.106Z","0.0.1":"2021-06-11T21:48:55.225Z","modified":"2022-05-12T19:48:42.118Z","0.0.2":"2021-06-12T12:25:12.170Z","0.1.0":"2021-06-12T13:01:44.554Z","0.1.1":"2021-10-14T18:09:40.876Z","0.1.2":"2021-10-14T18:29:22.754Z"},"maintainers":[{"name":"jakobrosenberg","email":"jakobrosenberg@gmail.com"}],"description":"persist the return of a function","homepage":"https://github.com/jakobrosenberg/persistable#readme","keywords":["caching","data"],"repository":{"type":"git","url":"git+https://github.com/jakobrosenberg/persistable.git"},"author":{"name":"jakobrosenberg@gmail.com"},"bugs":{"url":"https://github.com/jakobrosenberg/persistable/issues"},"license":"MIT","readme":"<img src=\"./logo.svg\" WIDTH=400>\n\n# Persistable\n\n#### Callback caching\n\n**persistable** stores the return value of a callback on disk and returns it on subsequent calls.\n\n### Installation\n\n    npm install persistable\n\n### Usage\n\n```javascript\nrequire('persitable')(/* options */)(Math.random)\n```\n\n### Basic example\n\n```javascript\nconst persistable = require('persitable')\n\nconst persist = persistable(/* options */)\n\nconst value1 = persist(Math.random)\nconst value2 = persist(Math.random)\n\nconsole.log(value1 === value2) // true\n```\n\n### Advanced example\n\n```javascript\nconst persistable = require('persitable')\n\nconst persist = persistable({ outputDir: 'data' })\n\nconst value1 = persist(Math.random)\nconst value2 = persist(Math.random)\nconst value3 = persist(Math.random, true) // refresh on 2nd param\nconst value4 = persist(Math.random)\n\nconsole.log(value1 === value2) // true\nconsole.log(value2 != value3) // true\nconsole.log(value3 === value4) // true\n```\n\n### API\n\n<!-- Generated by documentation.js. Update this documentation by updating the source code. -->\n\n##### Table of Contents\n\n*   [PersistFn](#persistfn)\n    *   [Parameters](#parameters)\n*   [Persistable](#persistable)\n    *   [Parameters](#parameters-1)\n*   [Options](#options)\n    *   [Properties](#properties)\n\n#### PersistFn\n\nType: [Function](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Statements/function)\n\n##### Parameters\n\n*   `callback` **[function](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Statements/function)** callback to be persisted\n*   `refresh` **[boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)** call the callback (optional, default `false`)\n*   `name` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?** defaults to hashed callback\n\n####\n\n#### Persistable\n\nCreates new instance of persistable\n\nType: [Function](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Statements/function)\n\n##### Parameters\n\n*   `options` **Partial<[Options](#options)>?** \n\nReturns **Persist** \n\n#### Options\n\nType: [object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)\n\n##### Properties\n\n*   `outputDir` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?** location to save persisted return values\n*   `minify` **[boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)?** inline JSON objects\n","readmeFilename":"README.md"}