{"_id":"@app-elements/use-successive-taps","_rev":"3-286c48c56c691cd7ea40460767d14856","name":"@app-elements/use-successive-taps","dist-tags":{"latest":"1.0.0"},"versions":{"0.1.0":{"name":"@app-elements/use-successive-taps","version":"0.1.0","description":"A (P)React hook that fires a callback only after `n` taps or clicks.","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://github.com/inputlogic/elements.git"},"bugs":{"url":"https://github.com/inputlogic/elements/issues"},"keywords":["react","react-component","preact","component","hook","ui"],"author":{"name":"Input Logic Team"},"license":"ISC","publishConfig":{"access":"public"},"gitHead":"98b95ca89e3d25a9a4f05d1e53ec2439a8d3bb74","homepage":"https://github.com/inputlogic/elements#readme","_id":"@app-elements/use-successive-taps@0.1.0","_nodeVersion":"12.4.0","_npmVersion":"lerna/3.20.2/node@v12.4.0+x64 (linux)","dist":{"integrity":"sha512-BqZsgeHRrIOLTTMlTX3xe5GG1buXTsiTXtPdY2GbY1NwkTEmAzCMCgH3DOR47Ny0R1orBpqT1cIc9ntUPVE7aw==","shasum":"ca1a395e42cb648350ed578c458116c683dcac70","tarball":"https://registry.npmjs.org/@app-elements/use-successive-taps/-/use-successive-taps-0.1.0.tgz","fileCount":3,"unpackedSize":2518,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJearfFCRA9TVsSAnZWagAAMccP/ihcJL8QAKNmb6hkmp/f\nm/SUbcEfvY/2iI1u8cBaFzNtK7EKSt/ME9LNjKlVSKUc7HHFN8b9TC+rYIkj\nRWUKOLqfqjnMry8IPDUCEAAKmnMkMNcaxIb4lxB35c5e2PJpKKtjehCuxBNs\nf0u4IC+fwnprd/J6Hp1LiridexyToGPTtwkdD5ijrMicgWeNaYBq3uDaC3pl\nKgy1T3g6GVtkBlWOzgMwF4lHzdIrhkUt7pW0orxBoILFlGTJs8Pxet5W+HpD\n54igDltNQq3h6kh/r7bMCfoli2nxekTz2sg4rcFZRrY3+OECcpV1Ar5bQH1R\naPYlimsXD6NLEj9TNcJWyr5hA2jg8JK1KG7L/IoP6Lj1AA0bzK63PbQdNdeW\nx0BURoQPMzz1EOCgarCCU8y98uIIeqkRVdRr0V42owVnZoGXNZB9JHyAG1Lq\n76p44KiXdF3lVrlzAljQs15Og+ySMMrhf0pkB84BRqHz4qM6hLa8MlPTl+qk\n1zNEsate6KXCbzcOJE3wUFZubsMVGdpRzlJwMfRJnUpiZrrl9miCKtXciZad\nNOjyyG0Zfw3zaBdR9Yrf2QVhaKCkYf/BxVqag7aWXXeRX5yw2+4EFGp88Ize\nBT7g6EYKew1iG1yQaTlhmBXQO/ArKskUftb88ic2SBuukKnfLjSiNGQPT+1x\n3+Y+\r\n=JR3b\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBSPVdy3BUoSoCITqGfrIIzz6u6aBsaL6x7K49QAXAUPAiEA5bJlmjpxOHEgpwcllWwy6PFGot+H2j/q3PB4jtSmWaM="}]},"maintainers":[{"name":"coryschadt","email":"coryschadt@gmail.com"},{"name":"trustfall","email":"hello@kyle-erickson.com"},{"name":"adriaanwm","email":"adriaan@inputlogic.ca"},{"name":"staydecent","email":"npm@staydecent.ca"}],"_npmUser":{"name":"staydecent","email":"npm@staydecent.ca"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/use-successive-taps_0.1.0_1584052165023_0.29031948291052"},"_hasShrinkwrap":false},"1.0.0-alpha.0":{"name":"@app-elements/use-successive-taps","version":"1.0.0-alpha.0","description":"A (P)React hook that fires a callback only after `n` taps or clicks.","main":"dist/use-successive-taps.js","module":"dist/use-successive-taps.m.js","source":"index.js","scripts":{"build":"microbundle --jsx React.createElement --external react --no-compress","prepublishOnly":"npm run build","test":"exit 0"},"repository":{"type":"git","url":"git+https://github.com/inputlogic/elements.git"},"bugs":{"url":"https://github.com/inputlogic/elements/issues"},"keywords":["react","react-component","preact","component","hook","ui"],"author":{"name":"Input Logic Team"},"license":"ISC","publishConfig":{"access":"public"},"gitHead":"433691b1bcc894a2a6d944aac7018e8b47b46f36","homepage":"https://github.com/inputlogic/elements#readme","_id":"@app-elements/use-successive-taps@1.0.0-alpha.0","_nodeVersion":"12.4.0","_npmVersion":"lerna/3.20.2/node@v12.4.0+x64 (linux)","dist":{"integrity":"sha512-DsqTZ+tvX0lc700PgluayYvl/IwpsUfcQToD5YqYWhXKgOo3cbUpYyIrtiTqnZVESfjZBr8ZKUmXxkCD7bwoAg==","shasum":"7368f06f84f95e877ea75ebe434026b8b59d1878","tarball":"https://registry.npmjs.org/@app-elements/use-successive-taps/-/use-successive-taps-1.0.0-alpha.0.tgz","fileCount":11,"unpackedSize":13129,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8mNoCRA9TVsSAnZWagAA6YgP/0hXCYnKITZXzdhGbFmr\nDqpZIC/QSBPj4vtUAVsfd56gpmRu4EH0EOcizr/523lTus6elHyZ2UA98/ec\nLKZ/UL9W0nhb8xbIvXpt5s0PEOhc8JraJu6WP7nyXlHtDlst+GsKt6pSwahr\nipiJL564zj0bh3H7JWlaDXU/GS25xmTYMUnPUNpsczOCOlrht8odzzEN1qrQ\ndB3xDGmWqJ91oouxE9j1BOzgbx8T0+1wiitP/obswjukPGgabnArAu5g4pCW\nwr275Ik/Gn5G5k9Uh1yDuNU3xS5hMr34czdBaHkjBuIF6IDWdUFkXeVMTp4Q\n2DTn69YhOwpp1lToNFM/UJZpUn2LTEUIUCKZBSRaorxP9cNpUf2EItSb/iyY\nl0fVidMZwLToRh1acbGbozbawCdCuXqXQ5VNeBFU6Wr5UvDGQgNuOspzaXPb\nKGIvF4F79JerfukV3QDQhqJxV8nxBdHALMuS08T8Z/6+N6/AvKWoTYLfVtff\nJ597YbzbhcK1Z0hqi95xP5Nz8suQ9dxL2v9WTzx73MgZbVm86UxmfK7y9el2\nwFpP2/JU+GSFjb1Tw4kSQo1Yf/UsJQG8aaNMhMGHIbpmFwmFQ+B1pEtXbnMS\ngrz8Er+TvQ3cJTzfZpQnOKvnwwaNmuc/1/9xk+mP5k8BO6ad4nwzrnngzn90\nHElj\r\n=NlUF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA3iJ6dL/WViXrLnpWmmfkDcRSe9SgJb/goC3N0rFy9CAiBHBksJAkx6SLjRgHEAcZCdjlIKJ4NSR+82ldRNaHBfmg=="}]},"maintainers":[{"name":"adriaanwm","email":"adriaan@inputlogic.ca"},{"name":"coryschadt","email":"coryschadt@gmail.com"},{"name":"staydecent","email":"npm@staydecent.ca"},{"name":"trustfall","email":"hello@kyle-erickson.com"}],"_npmUser":{"name":"staydecent","email":"npm@staydecent.ca"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/use-successive-taps_1.0.0-alpha.0_1592943464077_0.37230054008296354"},"_hasShrinkwrap":false},"1.0.0":{"name":"@app-elements/use-successive-taps","version":"1.0.0","description":"A (P)React hook that fires a callback only after `n` taps or clicks.","main":"dist/use-successive-taps.js","module":"dist/use-successive-taps.m.js","source":"index.js","scripts":{"build":"microbundle --jsx React.createElement --external react --no-compress","prepublishOnly":"npm run build","test":"exit 0"},"repository":{"type":"git","url":"git+https://github.com/inputlogic/elements.git"},"bugs":{"url":"https://github.com/inputlogic/elements/issues"},"keywords":["react","react-component","preact","component","hook","ui"],"author":{"name":"Input Logic Team"},"license":"ISC","publishConfig":{"access":"public"},"gitHead":"aa46fb3f014966af32fbafaae86834cf528a891b","homepage":"https://github.com/inputlogic/elements#readme","_id":"@app-elements/use-successive-taps@1.0.0","_nodeVersion":"12.4.0","_npmVersion":"lerna/3.20.2/node@v12.4.0+x64 (linux)","dist":{"integrity":"sha512-q/U33b57W++fFfbAWG9QYQIs6mk7rV/wsySc7nwLPZWiEaUvccXhnMtnGOtc75izmPs+lqTNcjFyxZv/tAcXxw==","shasum":"6a798380dfeb3f36e7131c5c61eb2ac1374b0b79","tarball":"https://registry.npmjs.org/@app-elements/use-successive-taps/-/use-successive-taps-1.0.0.tgz","fileCount":11,"unpackedSize":13121,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8skKCRA9TVsSAnZWagAA+AgP/2qdHA8g0EsjX0xrn9Ok\nG5mFFZpl7dq4OSLeHW5BVVObjje2Uc/8kOh/YEmU4koyQc7I5thoymKmhr1t\nld/sURTWaAKtQXBFGHOPsK9P/3MrwPeA81ox3mepOLyCO5rJ+SMjvIyHaqfd\neaiqz+KGIt9tOc5rQ/Al8M3l4BKsOZx4acQ5BhLmAZbFJXD1kInLGwi4F/DO\nz9MM+0IW6m9D+mvuSaaZocHatL/iB4boaHAkQkLuEI+eXGypb5KZbrsgmXuw\ngJLCOhjhVwaW7sXG5hJ7XievW4CPDcQ9Der5BuHF3QNBLJuAQKKAH27gAQSN\nQ8gAQ1hgBuzPSLB+73251C9wZeY3ME/Y7alCguvkK1zbTbfzx7KBOSdNWZVI\njziG/ry3+tMOXQrOlYG0PsfCLn0smY4jVA2yL+RL9nrGzty++oAQ5L91M3rG\nhzeGXr34R49IbHG9P7ymKgAv6eJTLzNPyI4hO4vREyFOCdkYntJHQX3DNIqX\n9kgksNAaxFpb+qDSYk2wvtOnm1W9odGwAq/XbPIpGF+NoA/z4/HJYJBBW+lw\n+a0s6h86MMnII2eNQ68AeeIShpffdoSrJG4Cl9FsibghHkWO/nFPtlWq4Odi\nRAF/8zK4YEnYJWTcQGv6JRZL0F2eu4f1/wOSgRpxWF06/ES85uIdXzGwenCs\ncoTk\r\n=UyBX\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD41bZV3JpeX81U9Xu9GJ3aalGSIsjRUc8R5CNekoCGUQIhAJ7fwZZ+0erCsyg8P0GtvTco3pdrlohtk+9ni7LQcfgI"}]},"maintainers":[{"name":"adriaanwm","email":"adriaan@inputlogic.ca"},{"name":"coryschadt","email":"coryschadt@gmail.com"},{"name":"staydecent","email":"npm@staydecent.ca"},{"name":"trustfall","email":"hello@kyle-erickson.com"}],"_npmUser":{"name":"staydecent","email":"npm@staydecent.ca"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/use-successive-taps_1.0.0_1592969482088_0.5645722849191377"},"_hasShrinkwrap":false}},"time":{"created":"2020-03-12T22:29:24.866Z","0.1.0":"2020-03-12T22:29:25.164Z","modified":"2022-04-04T14:42:22.492Z","1.0.0-alpha.0":"2020-06-23T20:17:44.185Z","1.0.0":"2020-06-24T03:31:22.212Z"},"maintainers":[{"name":"adriaanwm","email":"adriaan@inputlogic.ca"},{"name":"coryschadt","email":"coryschadt@gmail.com"},{"name":"staydecent","email":"npm@staydecent.ca"},{"name":"trustfall","email":"hello@kyle-erickson.com"}],"description":"A (P)React hook that fires a callback only after `n` taps or clicks.","homepage":"https://github.com/inputlogic/elements#readme","keywords":["react","react-component","preact","component","hook","ui"],"repository":{"type":"git","url":"git+https://github.com/inputlogic/elements.git"},"author":{"name":"Input Logic Team"},"bugs":{"url":"https://github.com/inputlogic/elements/issues"},"license":"ISC","readme":"# useSuccessiveTaps\n\nuseSuccessiveTaps takes a number of taps, a delay, and a callback, then returns\na function that will only invoke the callback when it itself is invoked the\nspecified number of times (with a pause no greater than the specified delay).\n\n## Installation\n\n`npm install --save @app-elements/use-successive-taps`\n\n## Usage\n\n```javascript\nimport { useSuccessiveTaps } from '@app-elements/use-successive-taps'\n\nconst Stateful = (props) => {\n  // Create a handler to invoke \"Test\" mode only after our logo is tapped 10\n  times.\n  const handler = useSuccessiveTaps(10, 750, () => {\n    dispatch(toggleTestMode())\n  })\n  \n  return (\n    <h1 onClick={handler}>Logo</h1>\n  )\n}\n```\n\n## Props\n\n| Prop                   | Type       | Default       | Description         |\n|------------------------|------------|---------------|---------------------|\n| **`numTaps`**          | _Number_   | _None_        | Number of successive taps\n| **`delay`**            | _Number_   | _None_        | ms pause allowed between taps\n| **`callback`**         | _Function_ | _None_        | function to invoke after successive taps\n","readmeFilename":"README.md"}