{"_id":"p-defer","_rev":"200756","name":"p-defer","description":"Create a deferred promise","dist-tags":{"latest":"4.0.0"},"maintainers":[{"name":"sindresorhus","email":""}],"time":{"modified":"2023-03-20T10:10:23.000Z","created":"2016-10-21T05:14:31.906Z","4.0.0":"2021-04-09T05:22:42.429Z","3.0.0":"2019-06-07T08:11:13.854Z","2.1.0":"2019-04-03T05:21:21.381Z","2.0.1":"2019-03-23T08:56:36.724Z","2.0.0":"2019-03-17T12:27:03.960Z","1.0.0":"2016-10-21T05:14:31.906Z"},"users":{},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"https://sindresorhus.com"},"repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-defer.git"},"versions":{"4.0.0":{"name":"p-defer","version":"4.0.0","description":"Create a deferred promise","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-defer.git"},"funding":"https://github.com/sponsors/sindresorhus","author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"https://sindresorhus.com"},"type":"module","exports":"./index.js","engines":{"node":">=12"},"scripts":{"test":"xo && ava && tsd"},"keywords":["promise","defer","deferred","resolve","reject","lazy","later","async","await","promises"],"devDependencies":{"ava":"^3.15.0","tsd":"^0.14.0","xo":"^0.38.2"},"gitHead":"0abf7f56337a450cbff45074dd8c83f8ace4726c","bugs":{"url":"https://github.com/sindresorhus/p-defer/issues"},"homepage":"https://github.com/sindresorhus/p-defer#readme","_id":"p-defer@4.0.0","_nodeVersion":"15.12.0","_npmVersion":"6.14.10","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"8082770aeeb10eb6b408abe91866738741ddd5d2","size":2190,"noattachment":false,"key":"/p-defer/-/p-defer-4.0.0.tgz","tarball":"http://name.csiicloud.com:7001/p-defer/download/p-defer-4.0.0.tgz"},"directories":{},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-defer_4.0.0_1617945762304_0.13980393608555453"},"_hasShrinkwrap":false,"publish_time":1617945762429,"_cnpm_publish_time":1617945762429,"_cnpmcore_publish_time":"2021-12-13T16:58:08.035Z"},"3.0.0":{"name":"p-defer","version":"3.0.0","description":"Create a deferred promise","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-defer.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=8"},"scripts":{"test":"xo && ava && tsd"},"keywords":["promise","defer","deferred","resolve","reject","lazy","later","async","await","promises"],"devDependencies":{"ava":"^2.0.0","tsd":"^0.7.3","xo":"^0.24.0"},"gitHead":"11f2980f795829b9c027acad2f65187dc8c3cdb9","bugs":{"url":"https://github.com/sindresorhus/p-defer/issues"},"homepage":"https://github.com/sindresorhus/p-defer#readme","_id":"p-defer@3.0.0","_nodeVersion":"10.16.0","_npmVersion":"6.9.0","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"d1dceb4ee9b2b604b1d94ffec83760175d4e6f83","size":2009,"noattachment":false,"key":"/p-defer/-/p-defer-3.0.0.tgz","tarball":"http://name.csiicloud.com:7001/p-defer/download/p-defer-3.0.0.tgz"},"maintainers":[{"name":"sindresorhus","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-defer_3.0.0_1559895073727_0.06596414499102665"},"_hasShrinkwrap":false,"publish_time":1559895073854,"_cnpm_publish_time":1559895073854},"2.1.0":{"name":"p-defer","version":"2.1.0","description":"Create a deferred promise","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-defer.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=6"},"scripts":{"test":"xo && ava && tsd"},"keywords":["promise","defer","deferred","resolve","reject","lazy","later","async","await","promises","bluebird"],"devDependencies":{"ava":"^1.4.1","tsd":"^0.7.2","xo":"^0.24.0"},"gitHead":"267600324e63a3e298c0d5a3cbd2d316bb4d1225","bugs":{"url":"https://github.com/sindresorhus/p-defer/issues"},"homepage":"https://github.com/sindresorhus/p-defer#readme","_id":"p-defer@2.1.0","_nodeVersion":"8.15.0","_npmVersion":"6.9.0","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"d9c97b40f8fb5c256a70b4aabec3c1c8c42f1fae","size":2177,"noattachment":false,"key":"/p-defer/-/p-defer-2.1.0.tgz","tarball":"http://name.csiicloud.com:7001/p-defer/download/p-defer-2.1.0.tgz"},"maintainers":[{"name":"sindresorhus","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-defer_2.1.0_1554268881240_0.3193969399057577"},"_hasShrinkwrap":false,"publish_time":1554268881381,"_cnpm_publish_time":1554268881381},"2.0.1":{"name":"p-defer","version":"2.0.1","description":"Create a deferred promise","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-defer.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=6"},"scripts":{"test":"xo && ava && tsd-check"},"keywords":["promise","defer","deferred","resolve","reject","lazy","later","async","await","promises","bluebird"],"devDependencies":{"ava":"^1.3.1","tsd-check":"^0.5.0","xo":"^0.24.0"},"gitHead":"d43a753a440f8c0af68f7fe27bce2b7ab5617329","bugs":{"url":"https://github.com/sindresorhus/p-defer/issues"},"homepage":"https://github.com/sindresorhus/p-defer#readme","_id":"p-defer@2.0.1","_nodeVersion":"8.15.0","_npmVersion":"6.9.0","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"76a8be7cb43ccaa2a8ed4b93b6eb4a0701e6c3b8","size":2022,"noattachment":false,"key":"/p-defer/-/p-defer-2.0.1.tgz","tarball":"http://name.csiicloud.com:7001/p-defer/download/p-defer-2.0.1.tgz"},"maintainers":[{"name":"sindresorhus","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-defer_2.0.1_1553331396561_0.8778777541003975"},"_hasShrinkwrap":false,"publish_time":1553331396724,"_cnpm_publish_time":1553331396724},"2.0.0":{"name":"p-defer","version":"2.0.0","description":"Create a deferred promise","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-defer.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=6"},"scripts":{"test":"xo && ava && tsd-check"},"keywords":["promise","defer","deferred","resolve","reject","lazy","later","async","await","promises","bluebird"],"devDependencies":{"ava":"^1.3.1","tsd-check":"^0.5.0","xo":"^0.24.0"},"gitHead":"897315f9501658e30c1326450e1092aad8efeb67","bugs":{"url":"https://github.com/sindresorhus/p-defer/issues"},"homepage":"https://github.com/sindresorhus/p-defer#readme","_id":"p-defer@2.0.0","_nodeVersion":"8.15.0","_npmVersion":"6.9.0","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"9b94b91c6a9a21df6874f0a871835f7902843470","size":2019,"noattachment":false,"key":"/p-defer/-/p-defer-2.0.0.tgz","tarball":"http://name.csiicloud.com:7001/p-defer/download/p-defer-2.0.0.tgz"},"maintainers":[{"name":"sindresorhus","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-defer_2.0.0_1552825623723_0.5111602596892029"},"_hasShrinkwrap":false,"publish_time":1552825623960,"_cnpm_publish_time":1552825623960},"1.0.0":{"name":"p-defer","version":"1.0.0","description":"Create a deferred promise","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-defer.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=4"},"scripts":{"test":"xo && ava"},"files":["index.js"],"keywords":["promise","defer","deferred","resolve","reject","lazy","later","async","await","promises","bluebird"],"devDependencies":{"ava":"*","xo":"*"},"xo":{"esnext":true},"gitHead":"31911e0cba4c1143daef9c3ab696d3c882402c3b","bugs":{"url":"https://github.com/sindresorhus/p-defer/issues"},"homepage":"https://github.com/sindresorhus/p-defer#readme","_id":"p-defer@1.0.0","_shasum":"9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c","_from":".","_npmVersion":"2.15.9","_nodeVersion":"4.6.0","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c","size":1745,"noattachment":false,"key":"/p-defer/-/p-defer-1.0.0.tgz","tarball":"http://name.csiicloud.com:7001/p-defer/download/p-defer-1.0.0.tgz"},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/p-defer-1.0.0.tgz_1477026871661_0.6250647243577987"},"directories":{},"publish_time":1477026871906,"_cnpm_publish_time":1477026871906,"_hasShrinkwrap":false}},"readme":"# p-defer\n\n> Create a deferred promise\n\n[Don't use this unless you know what you're doing.](https://github.com/petkaantonov/bluebird/wiki/Promise-anti-patterns#the-deferred-anti-pattern) Prefer the `Promise` constructor.\n\n## Install\n\n```\n$ npm install p-defer\n```\n\n## Usage\n\n```js\nimport pDefer from 'p-defer';\n\nfunction delay(milliseconds) {\n\tconst deferred = pDefer();\n\tsetTimeout(deferred.resolve, milliseconds, '????');\n\treturn deferred.promise;\n}\n\nconsole.log(await delay(100));\n//=> '????'\n```\n\n*The above is just an example. Use [`delay`](https://github.com/sindresorhus/delay) if you need to delay a promise.*\n\n## API\n\n### pDefer()\n\nReturns an `object` with a `promise` property and functions to `resolve()` and `reject()`.\n\n## Related\n\n- [p-lazy](https://github.com/sindresorhus/p-lazy) - Create a lazy promise that defers execution until `.then()` or `.catch()` is called\n- [More…](https://github.com/sindresorhus/promise-fun)\n\n---\n\n<div align=\"center\">\n\t<b>\n\t\t<a href=\"https://tidelift.com/subscription/pkg/npm-p-defer?utm_source=npm-p-defer&utm_medium=referral&utm_campaign=readme\">Get professional support for this package with a Tidelift subscription</a>\n\t</b>\n\t<br>\n\t<sub>\n\t\tTidelift helps make open source sustainable for maintainers while giving companies<br>assurances about security, maintenance, and licensing for their dependencies.\n\t</sub>\n</div>\n","_attachments":{},"homepage":"https://github.com/sindresorhus/p-defer#readme","bugs":{"url":"https://github.com/sindresorhus/p-defer/issues"},"license":"MIT"}