{"_id":"p-tap","_rev":"10-1bc71c32c2d08cf65395d805e54f45d1","name":"p-tap","description":"Tap into a promise chain without affecting its value or state","dist-tags":{"latest":"4.0.0"},"versions":{"1.0.0":{"name":"p-tap","version":"1.0.0","description":"Tap into a promise chain without affecting its value or state","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-tap.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=4"},"scripts":{"test":"xo && ava"},"files":["index.js"],"keywords":["promise","tap","debug","log","then","catch","error","chain","pipeline","thunk","function","async","await","promises","bluebird"],"devDependencies":{"ava":"*","delay":"^1.3.1","time-span":"^1.0.0","xo":"*"},"xo":{"esnext":true},"gitHead":"a6c20105b632b319688c652d29f7c8d6df35b7ab","bugs":{"url":"https://github.com/sindresorhus/p-tap/issues"},"homepage":"https://github.com/sindresorhus/p-tap#readme","_id":"p-tap@1.0.0","_shasum":"dc4fa086135e8688226f6e7dccea67d8322d08df","_from":".","_npmVersion":"2.15.9","_nodeVersion":"4.6.0","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"dc4fa086135e8688226f6e7dccea67d8322d08df","tarball":"https://registry.npmjs.org/p-tap/-/p-tap-1.0.0.tgz","integrity":"sha512-rcKGxEJhFBVPeiioaUOeXTSGABbqkuIg/jrft7ou4RqZbT2O6v99I+7GCc4QCgcmxGRigkcsUUPGRRhyMVzb7A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBfUX5XGBlIxFI0PxzYv4/aWZeNS09vwD7N3QPhRFax/AiAeOeBgCE3dQbY+UcL0GCOs70t1/lkDjP6gd7dTim1O2Q=="}]},"maintainers":[{"name":"sindresorhus","email":"sindresorhus@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/p-tap-1.0.0.tgz_1477033910858_0.032033002469688654"},"directories":{}},"2.0.0":{"name":"p-tap","version":"2.0.0","description":"Tap into a promise chain without affecting its value or state","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-tap.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=6"},"scripts":{"test":"xo && ava"},"files":["index.js"],"keywords":["promise","tap","debug","log","then","catch","error","chain","pipeline","thunk","function","async","await","promises","bluebird"],"devDependencies":{"ava":"*","delay":"^3.0.0","time-span":"^2.0.0","xo":"*"},"gitHead":"015511ce89362eed892731f9b7e3441d9d6a4a72","bugs":{"url":"https://github.com/sindresorhus/p-tap/issues"},"homepage":"https://github.com/sindresorhus/p-tap#readme","_id":"p-tap@2.0.0","_npmVersion":"5.6.0","_nodeVersion":"8.11.2","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"integrity":"sha512-1Sx7oTf+uOXmNOQ1YUVl3h7Va8dIlh/8pBFc3P4hyrM5WaeiAGajG0b3uLx6yOIhuE6MVPsb4kKrBzv7HSorUQ==","shasum":"a1b526946a3c22e94b4bca9d22d117049ca0ee09","tarball":"https://registry.npmjs.org/p-tap/-/p-tap-2.0.0.tgz","fileCount":4,"unpackedSize":3804,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbG6KBCRA9TVsSAnZWagAAGmYQAIinkjhJpkF4tbNkqMt8\nqeRB88jn6jFC5Q1ni+GQE4rqMdpIrhk+CENnqbvYI05+9VcoAJiYphoS+4oV\nkkGJjmKqRWMcPbKaWP2TkWdEgqb4Y8F7jGNfl3/TqEhJgUAwUDo1a+PI0b7s\njd8+nym+LEcO9Zx7PafwZPqtths+L1GpOYSUF4zFSMixovL2zWeWAnAEnjC2\n5fB2ka4h/OcoFqre1xIDZJTLcJHRd1dWleJTxFwMUX1EdI/2K8QyXM/JMv7S\nEu6DEwnBcIp8rcgNT+huBW5cKx95rqeEc8bhkXP4QAUYilZT213HEwr4O13E\n0kpZzbBmDNvSho/XZ0iivDmE44VaM5/4ysfyqSxI/MiZ+P5q+HdDOUz26pPq\nCMSliOrAdsZr+HqbrXiaV01p0TDPgb4BQ47GDp5Hv4le71OwJDW8b205irRK\ni1nLdxvgGDaY4vPk5BjfPk7wtpUw35ewqGX/jUVY6qw0MSqdknY4SzbQ5lHa\nHEWvmkDkgHbDAENdlgtK9/q0yQRkpzaGkPBWgEPh7ApTSdT+yV3byV8N3pCH\nWcrn5vxJWeSRUpRz9nx45yK1FZMZ5bRxucqdE6fE25Ay4+v8N7yJmXpblwzJ\nbA1P+o1tPWW1c1V0KgnQrtsFFexc9w7l2o/JM+JhMIfHp1Z7APYylHDmcNvV\nicNK\r\n=BhMT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID0FEZQHs9g+kwtAnZY79uoPGz61McVu8tCxWNndprC9AiEA2pGeYQXCNedVIIoL9R/oqp3xAfYl6F8IECRvDEpQfY4="}]},"maintainers":[{"name":"sindresorhus","email":"sindresorhus@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-tap_2.0.0_1528537728379_0.3228461270617924"},"_hasShrinkwrap":false},"3.0.0":{"name":"p-tap","version":"3.0.0","description":"Tap into a promise chain without affecting its value or state","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-tap.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=8"},"scripts":{"test":"xo && ava && tsd-check"},"keywords":["promise","tap","debug","log","then","catch","error","chain","pipeline","thunk","function","async","await","promises","bluebird"],"devDependencies":{"ava":"^1.3.1","delay":"^4.1.0","time-span":"^3.0.0","tsd-check":"^0.3.0","xo":"^0.24.0"},"gitHead":"79cb193c8eaf350da81e393912726310b54314e8","bugs":{"url":"https://github.com/sindresorhus/p-tap/issues"},"homepage":"https://github.com/sindresorhus/p-tap#readme","_id":"p-tap@3.0.0","_nodeVersion":"8.15.0","_npmVersion":"6.9.0","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"integrity":"sha512-RfISg/5Iw0JHUEL8FLJPD36VxXWO7dywu9yfY45PN5z+FlndpQKFreyUNS9UsS+xKgzoWkCs2y7Fyv/KObkr0g==","shasum":"8e2e3c2d7eddef32aa6e3ae355de5d53e9c67411","tarball":"https://registry.npmjs.org/p-tap/-/p-tap-3.0.0.tgz","fileCount":5,"unpackedSize":5023,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJch2rECRA9TVsSAnZWagAALfsQAI2ALslujcuhHCbXs9v+\n6pBy9VPklhFB1w5hHyFNi7aK2JUiWgMC8bi3X3BqXjehBc0erZJfoVJE+cdk\nDOO2q6Y+mm/v9e39nNbTBpouMqeIE98iZ9oywTi6FdA6aQc5H/3CFTi+Sjcv\nPXPpRgXAXOiJpOVfOcAKWrGANZR74fpxzOmpJDRcIlyb8J0nqWDGTKdLGedH\njTgNC7YkdZ2BIjui+y4POBPgGdYcgdabhvUo47+QjVF41dymnb9163Js62d0\n51/QLQyREx3wiwErkEwvhefhOeO/hLk56NDeT5yBWbL2HEmvOijoEO0jgb7b\nAHskWzshz7cr5xC6Ho8oZpTqGWxRn+NCY4azAo3Gj0+LkRUwRd2vyes3C/ox\n9XH1ZgFscfSJT3Cim0curv7sFZAeFANFHMrghnMRWip4FWCBqYuMu0zq0Zgw\nC9EA+wwDAab+sn0jhfnTjAojg6ZrXhQ8Shob4cPY6sMPZycpIRqvnEkNsFCJ\ng614jSYQnpXJn9rC0uBqa+0fhV76v58azgtqaMwRlVCSSoJMn5YEl5Hi554z\nXuh0WQx5irAwcXnJalDhirAMTvkx7j00T7iiNdE8gXob/6b9QtQQmp8SKFmX\n5gp111zxcd5bYFv8ZOwa0p7wll9Z600SghZuWuTsgAq2WOuNnAP/p2znzkTA\n67wQ\r\n=1XMQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICzrxOjX8A9ac8yTcn9y49W+uXepjtWNvxEh+uLRliveAiEAzCx6FBxjgOw8sS/0TYXNcOHJhjOf/HSfHsTwl9oxVW8="}]},"maintainers":[{"name":"sindresorhus","email":"sindresorhus@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-tap_3.0.0_1552378563475_0.0833155467465676"},"_hasShrinkwrap":false},"3.1.0":{"name":"p-tap","version":"3.1.0","description":"Tap into a promise chain without affecting its value or state","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-tap.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=8"},"scripts":{"test":"xo && ava && tsd"},"keywords":["promise","tap","debug","log","then","catch","error","chain","pipeline","thunk","function","async","await","promises","bluebird"],"devDependencies":{"ava":"^1.4.1","delay":"^4.1.0","time-span":"^3.0.0","tsd":"^0.7.2","xo":"^0.24.0"},"gitHead":"07e30957310ef5f1712b04d98e8b549912356f53","bugs":{"url":"https://github.com/sindresorhus/p-tap/issues"},"homepage":"https://github.com/sindresorhus/p-tap#readme","_id":"p-tap@3.1.0","_nodeVersion":"8.15.0","_npmVersion":"6.9.0","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"integrity":"sha512-xJSaeByOOQu5GnHEcnrxMkNi8O3Ez5X1wz8RT6wiL3mJFd4oXcSOvcKq+1CFUtuVYTSTWL/8rlkaCJRoR+L+NA==","shasum":"ceea85e92164e12b1c2b1caf78b4dc2ee51c9b5f","tarball":"https://registry.npmjs.org/p-tap/-/p-tap-3.1.0.tgz","fileCount":5,"unpackedSize":5694,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcpY8TCRA9TVsSAnZWagAAnnQQAImRaEWEAI5Y3RUl180d\nUXso1s0xfbLb3+eAO65FBjp7kSg+qEVQpTgPp22LNXC579I9Y9qY4WZIoFZX\nZjv9nz1cy3D7kjIaNkgu8nwstWQMzKYc0ybvUIcHF59LOjXt+fLoMzaPY+r7\nJpX1PR8Lib9DxUGazKNy1TGpKot4JhmmsSQZTZI4LX8e3x6CiV6sg2Q8jg7M\nZwogxA8SaygStmP/DMUuEtkTuE45rD5TxJzPRoM2bkGCZIdpi8Xsg2N/TUkU\nOvBJfFk25XBQsCQVY+n7VhVDe0Ohasw2hTv+IqVwH2SsQfmWdG0JPaYo/Xe0\nBQVaMMYeT20utGE1XjZm9blrunHBgLnjJEpCgcKyghPYBh2WX01XDhLOlgEZ\nosV9ZVJnTXAbkiD6Wxc5/y5mTLu29NBJ7Mb10UGV8dSP3WM9mVsbG9s1YON2\n4jln4m0hkWGxvy8xe1usCmTLo6Y6Y9JeRZyjqh/79Xw95oEi7POWANoq1pF3\nPnZUw9eT/e2LuswX49KTUeP3o4daVWCZKv7dmBIFWJPcY35deX209XCdWMxg\ncCoZxp0H/Pi0b9xqvdgjNp/exdt0EHj+0Xb9x7oX5THK6kTCmwIDCggPGftG\nQELotnHJRi0Gyj2I3vlGrouiIgcbkBld4zHjwDFT8xB/QPuN0wNyBPbLrWCK\nbIqq\r\n=XIh0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAkyMRCA79oglmSoJxWlgqySDGvezSPWGl0Ptm+IzzveAiAqpq8GH+XrPrFC4ykgKpNqX2mQJe8vNXG0A5u5vx0anQ=="}]},"maintainers":[{"name":"sindresorhus","email":"sindresorhus@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-tap_3.1.0_1554353939083_0.5701212277374763"},"_hasShrinkwrap":false},"4.0.0":{"name":"p-tap","version":"4.0.0","description":"Tap into a promise chain without affecting its value or state","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-tap.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","tap","debug","log","then","catch","error","chain","pipeline","thunk","function","async","await","promises","bluebird"],"devDependencies":{"ava":"^3.15.0","delay":"^5.0.0","time-span":"^4.0.0","tsd":"^0.14.0","xo":"^0.38.2"},"gitHead":"9ba6e69eaf1accbd67e1cf9d64cd47f26cce8d3c","bugs":{"url":"https://github.com/sindresorhus/p-tap/issues"},"homepage":"https://github.com/sindresorhus/p-tap#readme","_id":"p-tap@4.0.0","_nodeVersion":"15.12.0","_npmVersion":"6.14.10","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"integrity":"sha512-G7GTcera93GkIIt5iM57ITilyMR1nSlGKjwSEifhP7F8I2QtOsHbokoRulAgHW2V5JxLS5Tg/7ToX2YHkPjlFA==","shasum":"cdc7727b4864bda90c9359090f6d1c5ffa9c39f1","tarball":"https://registry.npmjs.org/p-tap/-/p-tap-4.0.0.tgz","fileCount":5,"unpackedSize":5407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgb0+8CRA9TVsSAnZWagAAEWAP/Rsimk6IuKWI8jzA4e7E\nKPpeJqXWCPR28TiiWG3uWRdwlm6GEKSufgPKLxXOP6V79Pt6BKS4PgLv+mjI\npKYAP3/NezgsOEWwc0lDQfXfjkGxoV0KZzdeHyiTlPaOaqnRe5g+h8q4xMc4\nPoaCXewsMxFKCRQp3671347h7Sot3EECkJTJIfwuUA6YpdhpTWNKhdil9SU9\nNl/BSzfjgo+2yACU9oNoi7ZHAK7F1PapFUV1+4HI+Ggk5jj/1KeB9ky+0Dg0\nB9q9RkgDT5VR/AQrPnbXDYC4colCigdYv3v3GD1BU5sEKrpaKfqgSXjdq3k2\nNdiPe0otUh9y8KSbEziInEsbu5OrdY9vXmLYMx5i/XtulwA9bzwA8OFCmfJB\n2mGUFttHou9qfi20I1r5Zo8JAQ5DpFObU6bN9nXDkWMDySP2R5rpnRQA0uGc\n0jTTLcMybQNG5+wIE00cviTJUcwzj9Psuh95LqZE2Al/3Lb3xPu2JKOxFZaw\naql5epUAvH3dDBzLsyEO8RjFS9YdLL134nCEFXzq3foAHUMNZJEBEhqmyUVg\nxGrTxg9od0phdv5LX9Q+DsGlCY1eRiGzLydlRofEBnp/tYhUWzi3GmQlSzlS\n7GJ0BzkuIZLx2eCcEHfDP/hRSBS2hQwP3//pxL4vt0PKjhfXHSbtLZvWcy6P\n31ud\r\n=Ge6y\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDNR3V6kmgegwriI0hlfLjRmd3EMEtE5mexj0QWYnrcCAIgKfkqgHgZAGR3sRzyrjrKm+VctLxgvP42cpfDmqWEIVY="}]},"directories":{},"maintainers":[{"name":"sindresorhus","email":"sindresorhus@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/p-tap_4.0.0_1617907644332_0.5185303739400176"},"_hasShrinkwrap":false}},"readme":"# p-tap\n\n> Tap into a promise chain without affecting its value or state\n\n## Install\n\n```\n$ npm install p-tap\n```\n\n## Usage\n\n```js\nimport pTap from 'p-tap';\n\nPromise.resolve('unicorn')\n\t.then(pTap(console.log)) // Logs `unicorn`\n\t.then(value => {\n\t\t// `value` is still `unicorn`\n\t});\n```\n\n```js\nimport pTap from 'p-tap';\n\ngetUser()\n\t.then(pTap(user => recordStatsAsync(user))) // Stats are saved about `user` async before the chain continues\n\t.then(user => {\n\t\t// `user` is the user from getUser(), not recordStatsAsync()\n\t});\n```\n\n```js\nimport pTap from 'p-tap';\n\nPromise.resolve(() => doSomething())\n\t.catch(pTap.catch(console.error)) // Prints any errors\n\t.then(handleSuccess)\n\t.catch(handleError);\n```\n\n## API\n\n### pTap(tapHandler)\n\nUse this in a `.then()` method.\n\nReturns a [thunk](https://en.wikipedia.org/wiki/Thunk) that returns a `Promise`.\n\n### pTap.catch(tapHandler)\n\nUse this in a `.catch()` method.\n\nReturns a [thunk](https://en.wikipedia.org/wiki/Thunk) that returns a `Promise`.\n\n#### tapHandler\n\nType: `Function`\n\nAny return value is ignored. Exceptions thrown in `tapHandler` are relayed back to the original promise chain.\n\nIf `tapHandler` returns a `Promise`, it will be awaited before passing through the original value.\n\n## Related\n\n- [p-log](https://github.com/sindresorhus/p-log) - Log the value/error of a promise\n- [p-if](https://github.com/sindresorhus/p-if) - Conditional promise chains\n- [p-catch-if](https://github.com/sindresorhus/p-catch-if) - Conditional promise catch handler\n- [More…](https://github.com/sindresorhus/promise-fun)\n","maintainers":[{"name":"sindresorhus","email":"sindresorhus@gmail.com"}],"time":{"modified":"2022-06-23T05:52:36.936Z","created":"2016-10-21T07:11:51.074Z","1.0.0":"2016-10-21T07:11:51.074Z","2.0.0":"2018-06-09T09:48:48.470Z","3.0.0":"2019-03-12T08:16:03.834Z","3.1.0":"2019-04-04T04:58:59.272Z","4.0.0":"2021-04-08T18:47:24.489Z"},"homepage":"https://github.com/sindresorhus/p-tap#readme","keywords":["promise","tap","debug","log","then","catch","error","chain","pipeline","thunk","function","async","await","promises","bluebird"],"repository":{"type":"git","url":"git+https://github.com/sindresorhus/p-tap.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"https://sindresorhus.com"},"bugs":{"url":"https://github.com/sindresorhus/p-tap/issues"},"license":"MIT","readmeFilename":"readme.md","users":{"xiechao06":true}}