{"_id":"@10up/react-hooks","_rev":"20-8e87d420e29da06b1d09e2aae8564adc","name":"@10up/react-hooks","dist-tags":{"next":"1.2.1-next.0","latest":"1.2.3"},"versions":{"1.0.0":{"name":"@10up/react-hooks","version":"1.0.0","author":"","license":"ISC","_id":"@10up/react-hooks@1.0.0","maintainers":[{"name":"fabiankaegy","email":"mail@fabian-kaegy.de"},{"name":"brandwaffle","email":"vhauri@gmail.com"},{"name":"eugene-manuilov","email":"eugene.manuilov@gmail.com"},{"name":"christianc1","email":"christian.m.chung@gmail.com"},{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},{"name":"joesnellpdx","email":"joesnellpdx@gmail.com"},{"name":"tlovett1","email":"tlovett88@gmail.com"},{"name":"devinle","email":"devin.leggett@gmail.com"}],"dist":{"shasum":"dc70ce3a0221eda1ad8f9d35bed6dc29aa00efae","tarball":"https://registry.npmjs.org/@10up/react-hooks/-/react-hooks-1.0.0.tgz","fileCount":80,"integrity":"sha512-EWh5l16d/jJuYnSM+lVPiYjYc1e+GMCqIR+m105SNnwFp1HutEpq5O4031RYx3JH6cjJX+b28Tpxs+8T071wkQ==","signatures":[{"sig":"MEQCICjbjOQswiRCQEbg/4EuJ2YDQOWdyhSmMyUBEp1+JHb3AiAwrCH02IwGr1VTViwc1mSxD/hTzLdg48ai53yztE2Jnw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115159,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiflUSACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqFtw/+IAN1RjQ6KuSqYLTtt9u7F/VUg6KY2j0fAcVaquGpDlWTGzKo\r\nbuqJuz2d3238VBaFUhSvvdfyMeYNcMe3mfSjDY9xD/f0p/5YQhyyrP1sNzgf\r\nB41ysSPqfQATqpIG0uRxk90ZNGRykB3jei3PmPSp6oGpfU5D2t5znbJCiXIP\r\nU/1CDtwgTXQYEVr1l/3jmGE2MCmoujlPpU4C5czCTObabcaIQ120kcZs0N1Y\r\nVfNSIDXOuRfT8fRPaUKVRpc68l8CCDUMUb9JeZ5XX35XalFAhxCB/qN/jOjm\r\nyoNrMhCVWkzIQuCdZFG4SPeGeNx2hF2Q+ax4zpB97q/hNUX8GVu3sIkZPFZ6\r\nsS/YGK1yhrhssFe9rKtrd7Ghqa8HHa1b3CcRqZPtFEuR31NOsUkz78/D5RyI\r\ncGU8xFFH62SD67Cs0xBnFc1Uc33dyhOvWsWenr8XzZKG+WyprGRToOSKWRJZ\r\nL5RvBhnPTsQooD6d+ICDSRjrUnilGSAi3KoKR21J5+hKOdt1kkdANlcy0ClX\r\ncgHJCnPNCc3TSuTrjFBBQOzsrGWLd3fsHnyzMDnrYkdKtbZhZiQD95NcH2Qf\r\nv1yEZEEbAU+axaOu5ekNiWyXpVveNAEcFmjPPLhiXedZcvtnjD25vRXtBBeK\r\nNUYBOohUYXFKci9ySV0y0JS06sRqqr+uQmU=\r\n=efe6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/headless-hooks.js","module":"dist/headless-hooks.mjs","exports":{".":{"import":"./dist/headless-hooks.mjs","default":"./dist/headless-hooks.mjs","require":"./dist/headless-hooks.js"}},"gitHead":"7b0731808c8219bc594e66364b3f4c1394cbe40c","scripts":{"test":"jest --selectProjects dom ssr","build":"rollup -c","test:watch":"jest --selectProjects dom ssr --watch","create-hook":"plop"},"typings":"dist/headless-hooks.d.ts","_npmUser":{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},"_npmVersion":"8.5.0","description":"Battle tested hooks that can be reused and are safe to use within SSR environments.","directories":{},"_nodeVersion":"16.14.2","_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.1","plop":"^3.1.0","react":"^17.0.2","rollup":"^2.70.2","esbuild":"^0.14.38","ts-jest":"^27.1.4","react-dom":"^17.0.2","typescript":"^4.6.4","@types/jest":"^27.4.1","rollup-plugin-dts":"^4.2.1","rollup-plugin-esbuild":"^4.9.1","@testing-library/react":"^12.1.5","@testing-library/jest-dom":"^5.16.4","@testing-library/user-event":"^13.5.0","@testing-library/react-hooks":"^8.0.0"},"peerDependencies":{"react":"^16.8 || ^17 || ^18","react-dom":"^16.8 || ^17 || ^18"},"_npmOperationalInternal":{"tmp":"tmp/react-hooks_1.0.0_1652446482270_0.49538104720118104","host":"s3://npm-registry-packages"}},"1.0.1-alpha.0":{"name":"@10up/react-hooks","version":"1.0.1-alpha.0","author":"","license":"ISC","_id":"@10up/react-hooks@1.0.1-alpha.0","maintainers":[{"name":"fabiankaegy","email":"mail@fabian-kaegy.de"},{"name":"brandwaffle","email":"vhauri@gmail.com"},{"name":"eugene-manuilov","email":"eugene.manuilov@gmail.com"},{"name":"christianc1","email":"christian.m.chung@gmail.com"},{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},{"name":"joesnellpdx","email":"joesnellpdx@gmail.com"},{"name":"tlovett1","email":"tlovett88@gmail.com"},{"name":"devinle","email":"devin.leggett@gmail.com"}],"dist":{"shasum":"5bedd59b4f68a653c867bf055e8651aa9729ca12","tarball":"https://registry.npmjs.org/@10up/react-hooks/-/react-hooks-1.0.1-alpha.0.tgz","fileCount":77,"integrity":"sha512-R12KNojCAWfjY8eWGOaqSHvQvB5YKG1pFH2iRWSzdfKyXabJGMRPOjfeXJseizV3LqsHkeU+D0by5uYjdEKrTQ==","signatures":[{"sig":"MEYCIQD2BXhQQRYTLE2qslHh6Bs/0BvE9BikPQzhTfBLyugtHAIhAOlBHyty69fracFfpLJSldr9aHBQ0PVvmeE+WTSZ02Dd","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88274,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiglcxACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqODA//fABuNDQuCZv5Lk99wXVYAdMgD8XZhoGu53aMdHOpqh2DmRnl\r\nDqzRe3mJ+F2wEGr/Ks2Bxdu7Dm6UT1bMObJQRGr6h6aKT1nDomssTsw93f9g\r\nlwYDN7s8IJmFAntwclvGkQQxP4WxBzkprmaknc5tMEqlmGxbfVxfGko05nKv\r\nTUdDj4lA40M/5ZFM+Hu3eih12nvVynuJ3H3JjmZ/kctjnseiUKotAQQSxx5c\r\npIiGziTx1sxjENazP2y1xg92IgLXxjnJlBKA6noWTtobp+6rZxIYhoy1wbOE\r\n9DIBRSMGMTCg+rDP1jSqIObvrDvf9F3aKUm+qBy1ilcbrJlzcnb65RQ0deEy\r\nfvAcVDPvd9Wc2a1d14L9TGs3Mboc1UlDn+yUXFpnT5A2xi6jNxJUYAWWKIOO\r\n60xqht8rvdCK/DqEfFE20n+jJ8CJt+qyt6MLIPf4W22Ot4q9sGmRhxyRrG4N\r\nxkg8JzEU0hbbKSI5lISFCT3QVIFEjyTfzABPvPaPZqBbz94QUnMEyHS+5VUy\r\ndOm/x1GssZwsm8UzEpCuOd753UxXi54JIlEf8SXwx6c76nI8CwVmI8mUgDHq\r\nuB1VrhF8cVIQ9bQFHtfL1W/O9iRQYTe/XcabLljyzzTvB2oGIm7UPylvsGEK\r\nLOZXN+b5sq2UCiWPg25QDuxETDynWdDEA9E=\r\n=b8pD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/headless-hooks.js","module":"dist/headless-hooks.mjs","readme":"# Hooks\n\nBattle tested hooks that can be reused and are safe to use within SSR environments.\n\n## List\n\n* [`useCurrentBreakpoint`](src/useCurrentBreakpoint/README.md) - Context + Hook to track current CSS breakpoint by leveraging `matchMedia`.\n* [`useDebounce`](src/useDebounce/README.md) - Hook to debounce a quickly changing value, so it doesn't re-render as much.\n* [`useDebouncedCallback`](src/useDebouncedCallback/README.md) - Hook to debounce an effect that's quickly called.\n* [`useEffectAfterRender`](src/useEffectAfterRender/README.md) - Hook that only dispatches the effect if the component is mounted.\n* [`useEvent`](src/useEvent/README.md) - Hook for `addEventListener` to any element.\n* [`useFocusTrap`](src/useFocusTrap/README.md) - Hook to trap focus inside a DOM element. This is great for trapping the focus within a Modal for example.\n* [`useIsMounted`](src/useIsMounted/README.md) - Hook that returns a function that will yield the current mount state of the component.\n* [`useIsTransitioning`](src/useIsTransitioning/README.md) - Context + Hook that tracks `routeChange` events from [Next's Router](https://nextjs.org/docs/api-reference/next/router).\n* [`useKey`](src/useKey/README.md) - A convenient wrapper around [`useEvent`](src/useEvent/README.md) to handle key presses allowing to send either the key being watched, a function to evaluate or any truthy/falsy value.\n* [`useOnClickOutside`](src/useOnClickOutside/README.md) - Hook to add a handler to be executed when the user clicks outside a given ref.\n* [`useOnMount`](src/useOnMount/README.md) - Hook to add a handler to be executed when the component mounts.\n* [`useOnWindowResize`](src/useOnWindowResize/README.md) - Hook to attach a handler to window resize.\n* [`useSafeLayoutEffect`](src/useSafeLayoutEffect/README.md) - Alias hook to safely use `useLayoutEffect` within SSR environments.\n* [`useScript`](src/useScript/README.md) - Hook to append a script into the page, preventing the same script to be included more than once.\n\n## Development\n\nYou can create a new hook by running `npm run create-hook hookName` which will bootstrap the files for you. You might want to run `npm run create-hook` without any options if you want to see all possible inputs.\n","exports":{".":{"import":"./dist/headless-hooks.mjs","default":"./dist/headless-hooks.mjs","require":"./dist/headless-hooks.js"}},"gitHead":"dc54dd6314885f4d372678c2274e192ba690bc8b","scripts":{"test":"jest --selectProjects dom ssr","build":"rollup -c","test:watch":"jest --selectProjects dom ssr --watch","create-hook":"plop"},"typings":"dist/headless-hooks.d.ts","_npmUser":{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},"_npmVersion":"lerna/4.0.0/node@v16.15.0+x64 (linux)","description":"Battle tested hooks that can be reused and are safe to use within SSR environments.","directories":{},"_nodeVersion":"16.15.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.5.1","plop":"^3.1.0","react":"^17.0.2","rollup":"^2.70.2","esbuild":"^0.14.38","ts-jest":"^27.1.4","react-dom":"^17.0.2","typescript":"^4.6.4","@types/jest":"^27.4.1","rollup-plugin-dts":"^4.2.1","rollup-plugin-esbuild":"^4.9.1","@testing-library/react":"^12.1.5","@testing-library/jest-dom":"^5.16.4","@testing-library/user-event":"^13.5.0","@testing-library/react-hooks":"^8.0.0"},"peerDependencies":{"react":"^16.8 || ^17 || ^18","react-dom":"^16.8 || ^17 || ^18"},"_npmOperationalInternal":{"tmp":"tmp/react-hooks_1.0.1-alpha.0_1652709169343_0.4147116461184801","host":"s3://npm-registry-packages"}},"1.0.1-alpha.1":{"name":"@10up/react-hooks","version":"1.0.1-alpha.1","author":"","license":"ISC","_id":"@10up/react-hooks@1.0.1-alpha.1","maintainers":[{"name":"fabiankaegy","email":"mail@fabian-kaegy.de"},{"name":"brandwaffle","email":"vhauri@gmail.com"},{"name":"eugene-manuilov","email":"eugene.manuilov@gmail.com"},{"name":"christianc1","email":"christian.m.chung@gmail.com"},{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},{"name":"joesnellpdx","email":"joesnellpdx@gmail.com"},{"name":"tlovett1","email":"tlovett88@gmail.com"},{"name":"devinle","email":"devin.leggett@gmail.com"}],"dist":{"shasum":"46b9a06f88b580e856f782f432d3e60b8724de94","tarball":"https://registry.npmjs.org/@10up/react-hooks/-/react-hooks-1.0.1-alpha.1.tgz","fileCount":77,"integrity":"sha512-Iv9Uk3nsjxxSnSn+Y0tvuOV2FktwLF63gaJF72YLTNtSrANShGYFBYlU1jGQuE3+TNDwCIcI6JScW8XQOQ1aBg==","signatures":[{"sig":"MEUCIQCLr8vEWeuvk8pr7KV8ib9/XQvvVzaxsS31A87nWMVGJQIgFquCCyoCkEV/c2KW4rJJ8Wzk4TUAF0LQGFh6BtP5OqI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88274,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJignNgACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqShg/7Bex5oR0BfDHRlavFroEkL/S5P8et/bCcplUC5bHVymt8RklS\r\nNl9CDdUER4nxX0W5HDaUvaYK/PvbiYepb5fiM4bpt0gqNn+EZlEZ6NXpbZFO\r\nXb6I6L6lWRxirR22ZCothSsRoWQ1zFULOG8L66UzU0i5Md6gSk5nI2yJSHRI\r\nTh6cqxlQFdzfmfPbUIYBIKhuH7w1sXQiLqJSuRq56opZgzFxh42qbaBEaw3i\r\niksq6jaG95V9LL4oN1MqhGh6KttPPEjTdKcRKsEyLQ0Jv0ekPQcrRnAfuUa0\r\niLQr2b6keYMfxHN2VZTTfj93sni4PGRccFWpkDniOxrNCq0NnxmKjDpj8bbx\r\nipABpS2AoOgFsay5SgSJTbxGY9q++DKQJ5SysDZBIPpWl9YZO5VNRs+wDam/\r\neA4xmJLg0kb9BAZ24uBMtZ+srbJgYugdE6F8gs5OSFO7/E5+YkOGIUK5JMVk\r\nDs5ouumA09L8TLXnp7g3Z8tv4P62qKyO7mrBws300gEVAsQYgLlXX5CZTU8Z\r\n4RJDWlzQMTlShWRlEyzhlnulnw+An1BbuJcF9T4rudkLK21CPi8btWnoDW/4\r\nyePdEOV7TcD8xcsJOXAMHD3tTvdALJMEMN1XVl0M2GthW1wOWtisPu1IJzt3\r\nO7F+Bi2f6at6vHSE4QWoFEXPhPNR1uKLQ/Q=\r\n=VS0T\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/headless-hooks.js","module":"dist/headless-hooks.mjs","readme":"# Hooks\n\nBattle tested hooks that can be reused and are safe to use within SSR environments.\n\n## List\n\n* [`useCurrentBreakpoint`](src/useCurrentBreakpoint/README.md) - Context + Hook to track current CSS breakpoint by leveraging `matchMedia`.\n* [`useDebounce`](src/useDebounce/README.md) - Hook to debounce a quickly changing value, so it doesn't re-render as much.\n* [`useDebouncedCallback`](src/useDebouncedCallback/README.md) - Hook to debounce an effect that's quickly called.\n* [`useEffectAfterRender`](src/useEffectAfterRender/README.md) - Hook that only dispatches the effect if the component is mounted.\n* [`useEvent`](src/useEvent/README.md) - Hook for `addEventListener` to any element.\n* [`useFocusTrap`](src/useFocusTrap/README.md) - Hook to trap focus inside a DOM element. This is great for trapping the focus within a Modal for example.\n* [`useIsMounted`](src/useIsMounted/README.md) - Hook that returns a function that will yield the current mount state of the component.\n* [`useIsTransitioning`](src/useIsTransitioning/README.md) - Context + Hook that tracks `routeChange` events from [Next's Router](https://nextjs.org/docs/api-reference/next/router).\n* [`useKey`](src/useKey/README.md) - A convenient wrapper around [`useEvent`](src/useEvent/README.md) to handle key presses allowing to send either the key being watched, a function to evaluate or any truthy/falsy value.\n* [`useOnClickOutside`](src/useOnClickOutside/README.md) - Hook to add a handler to be executed when the user clicks outside a given ref.\n* [`useOnMount`](src/useOnMount/README.md) - Hook to add a handler to be executed when the component mounts.\n* [`useOnWindowResize`](src/useOnWindowResize/README.md) - Hook to attach a handler to window resize.\n* [`useSafeLayoutEffect`](src/useSafeLayoutEffect/README.md) - Alias hook to safely use `useLayoutEffect` within SSR environments.\n* [`useScript`](src/useScript/README.md) - Hook to append a script into the page, preventing the same script to be included more than once.\n\n## Development\n\nYou can create a new hook by running `npm run create-hook hookName` which will bootstrap the files for you. You might want to run `npm run create-hook` without any options if you want to see all possible inputs.\n","exports":{".":{"import":"./dist/headless-hooks.mjs","default":"./dist/headless-hooks.mjs","require":"./dist/headless-hooks.js"}},"gitHead":"886cbbf63ffbae40dd5ffa65848fae45420062a2","scripts":{"test":"jest --selectProjects dom ssr","build":"rollup -c","test:watch":"jest --selectProjects dom ssr --watch","create-hook":"plop"},"typings":"dist/headless-hooks.d.ts","_npmUser":{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},"_npmVersion":"lerna/4.0.0/node@v16.15.0+x64 (linux)","description":"Battle tested hooks that can be reused and are safe to use within SSR environments.","directories":{},"_nodeVersion":"16.15.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.5.1","plop":"^3.1.0","react":"^17.0.2","rollup":"^2.70.2","esbuild":"^0.14.38","ts-jest":"^27.1.4","react-dom":"^17.0.2","typescript":"^4.6.4","@types/jest":"^27.4.1","rollup-plugin-dts":"^4.2.1","rollup-plugin-esbuild":"^4.9.1","@testing-library/react":"^12.1.5","@testing-library/jest-dom":"^5.16.4","@testing-library/user-event":"^13.5.0","@testing-library/react-hooks":"^8.0.0"},"peerDependencies":{"react":"^16.8 || ^17 || ^18","react-dom":"^16.8 || ^17 || ^18"},"_npmOperationalInternal":{"tmp":"tmp/react-hooks_1.0.1-alpha.1_1652716384145_0.9773930074699069","host":"s3://npm-registry-packages"}},"1.0.1-alpha.2":{"name":"@10up/react-hooks","version":"1.0.1-alpha.2","author":"","license":"ISC","_id":"@10up/react-hooks@1.0.1-alpha.2","maintainers":[{"name":"fabiankaegy","email":"mail@fabian-kaegy.de"},{"name":"brandwaffle","email":"vhauri@gmail.com"},{"name":"eugene-manuilov","email":"eugene.manuilov@gmail.com"},{"name":"christianc1","email":"christian.m.chung@gmail.com"},{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},{"name":"joesnellpdx","email":"joesnellpdx@gmail.com"},{"name":"tlovett1","email":"tlovett88@gmail.com"},{"name":"devinle","email":"devin.leggett@gmail.com"}],"dist":{"shasum":"bb024d081fd05570e1f6352aeaed621ae66e145b","tarball":"https://registry.npmjs.org/@10up/react-hooks/-/react-hooks-1.0.1-alpha.2.tgz","fileCount":77,"integrity":"sha512-cd2STy4iiva3wR+eQ9Hfex3JB87SNrceMZ/JR0VWAyhvoy4xgBQ3thdZjpyj/5UC1IZjCeO9v9Llk3lC029uuw==","signatures":[{"sig":"MEUCIH0ROqP2LqDDxb7Reb2P4Dje/gqoMjocdlpavDM6oQjfAiEA4zpbyl/RPNyQTGxsFqPJk8g1qQeqI+PlTtJnP946SmE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88274,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJihCjVACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpWow//RPGQKxFVSBtuektp4Hx3kOJee9N8cty81SC2R+Z/xgeL+TeK\r\nh2gWwIllxj6WWbWZImnNq3whbcoQeOUKk775piUT1KuLKDV4uJrkwdqllXd6\r\nhc/3Dplwxx/gto1Hjy+YSnP9d7mdEJsdZFZa4X+3/RcjEomGK3EHozTHUZp2\r\nDIwMnpidcBhpwOjjMPLllVIK8K6dg3vvqi4FHaT99oKq4nvuC2S5L69Tp4c7\r\n5DtP5I9ngRVC/K+bolp2x4D4q4K5KMHL5D1fuI0lh8gtrdR6C3atYicwt2TM\r\nOrtUFV45XfMh88ZfJShAR7jQtB3T07tUNByjyS3r9kMWjRpngJ5F1uhSf+t9\r\nfxf2sCPJZb5449M6a0A7RkjbpB7WflG7tq9pEz++JkT3skJNgQiGDpJ+3CrJ\r\nPALUbKbuut8UI4bMhokNWZ5TwxwsKbvT9YJR+9Zv/I3RzrpTpwqDGz/yfCK2\r\nUWm7TEwi5n9eoyam7IUrOjGSDDzpPT2+lvlN3eePl9ERiF+LaWCurPfSOuK/\r\nc4/nzsCs3vBi4zaywjHUsXyJPftLGQandF0S1O1pFFcUrQe+5HiC4LB8X3on\r\n1AoxqE1s9F0Az74hIQPyM5KHZJVSbXKXxnItwuUmYmsSIgMaUnHA6fekZaUd\r\nM69PS4W2ZI6L1UUH+AY1Ni5YVyjLpvUThU8=\r\n=lEiJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/headless-hooks.js","module":"dist/headless-hooks.mjs","readme":"# Hooks\n\nBattle tested hooks that can be reused and are safe to use within SSR environments.\n\n## List\n\n* [`useCurrentBreakpoint`](src/useCurrentBreakpoint/README.md) - Context + Hook to track current CSS breakpoint by leveraging `matchMedia`.\n* [`useDebounce`](src/useDebounce/README.md) - Hook to debounce a quickly changing value, so it doesn't re-render as much.\n* [`useDebouncedCallback`](src/useDebouncedCallback/README.md) - Hook to debounce an effect that's quickly called.\n* [`useEffectAfterRender`](src/useEffectAfterRender/README.md) - Hook that only dispatches the effect if the component is mounted.\n* [`useEvent`](src/useEvent/README.md) - Hook for `addEventListener` to any element.\n* [`useFocusTrap`](src/useFocusTrap/README.md) - Hook to trap focus inside a DOM element. This is great for trapping the focus within a Modal for example.\n* [`useIsMounted`](src/useIsMounted/README.md) - Hook that returns a function that will yield the current mount state of the component.\n* [`useIsTransitioning`](src/useIsTransitioning/README.md) - Context + Hook that tracks `routeChange` events from [Next's Router](https://nextjs.org/docs/api-reference/next/router).\n* [`useKey`](src/useKey/README.md) - A convenient wrapper around [`useEvent`](src/useEvent/README.md) to handle key presses allowing to send either the key being watched, a function to evaluate or any truthy/falsy value.\n* [`useOnClickOutside`](src/useOnClickOutside/README.md) - Hook to add a handler to be executed when the user clicks outside a given ref.\n* [`useOnMount`](src/useOnMount/README.md) - Hook to add a handler to be executed when the component mounts.\n* [`useOnWindowResize`](src/useOnWindowResize/README.md) - Hook to attach a handler to window resize.\n* [`useSafeLayoutEffect`](src/useSafeLayoutEffect/README.md) - Alias hook to safely use `useLayoutEffect` within SSR environments.\n* [`useScript`](src/useScript/README.md) - Hook to append a script into the page, preventing the same script to be included more than once.\n\n## Development\n\nYou can create a new hook by running `npm run create-hook hookName` which will bootstrap the files for you. You might want to run `npm run create-hook` without any options if you want to see all possible inputs.\n","exports":{".":{"import":"./dist/headless-hooks.mjs","default":"./dist/headless-hooks.mjs","require":"./dist/headless-hooks.js"}},"gitHead":"3a9e00d27cbe33c7aab1a71eaa5c136be47531b5","scripts":{"test":"jest --selectProjects dom ssr","build":"rollup -c","test:watch":"jest --selectProjects dom ssr --watch","create-hook":"plop"},"typings":"dist/headless-hooks.d.ts","_npmUser":{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},"_npmVersion":"lerna/4.0.0/node@v16.15.0+x64 (linux)","description":"Battle tested hooks that can be reused and are safe to use within SSR environments.","directories":{},"_nodeVersion":"16.15.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.5.1","plop":"^3.1.0","react":"^17.0.2","rollup":"^2.70.2","esbuild":"^0.14.38","ts-jest":"^27.1.4","react-dom":"^17.0.2","typescript":"^4.6.4","@types/jest":"^27.4.1","rollup-plugin-dts":"^4.2.1","rollup-plugin-esbuild":"^4.9.1","@testing-library/react":"^12.1.5","@testing-library/jest-dom":"^5.16.4","@testing-library/user-event":"^13.5.0","@testing-library/react-hooks":"^8.0.0"},"peerDependencies":{"react":"^16.8 || ^17 || ^18","react-dom":"^16.8 || ^17 || ^18"},"_npmOperationalInternal":{"tmp":"tmp/react-hooks_1.0.1-alpha.2_1652828373773_0.394839877002249","host":"s3://npm-registry-packages"}},"1.0.1-alpha.3":{"name":"@10up/react-hooks","version":"1.0.1-alpha.3","author":"","license":"ISC","_id":"@10up/react-hooks@1.0.1-alpha.3","maintainers":[{"name":"fabiankaegy","email":"mail@fabian-kaegy.de"},{"name":"brandwaffle","email":"vhauri@gmail.com"},{"name":"eugene-manuilov","email":"eugene.manuilov@gmail.com"},{"name":"christianc1","email":"christian.m.chung@gmail.com"},{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},{"name":"joesnellpdx","email":"joesnellpdx@gmail.com"},{"name":"tlovett1","email":"tlovett88@gmail.com"},{"name":"devinle","email":"devin.leggett@gmail.com"}],"dist":{"shasum":"7b93c00597d5b9dcdc54cb26041831c139b55f2e","tarball":"https://registry.npmjs.org/@10up/react-hooks/-/react-hooks-1.0.1-alpha.3.tgz","fileCount":77,"integrity":"sha512-Ut844tjz9UZMnYJPHAcp586Iy6gGnA2NzkD/4az0V39+5kJMKnmycNGUGJPqYKMb8jgoQn2koQffBiGDkjKvgw==","signatures":[{"sig":"MEYCIQDCsyPby0UNp6lH85luuFO4hHlPiHK89bp6+UAllrBWXQIhAMWoswZXPmzg4I/J3YVVZZFcQQOnx43GJwjJ/CJO3QPO","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88274,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJihb8jACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoK0A//Q+TJm/8jeOPO76r4a1ETVQep05w+CBEjAVBC8Y6DSg+SOCKE\r\nTKJTojFl33oGB1zcs22s13bISBsHTWxxZWhVp+TLJdfBIqnlucsOGljYaqWm\r\nGDAK/WG9tPzuzmi8aWSZABLWvgLjivIYeolq7mGBJamFNdgbhJNRTiyUquYi\r\nGU6s9fdCZRqzw1GF45foj/LoV4Fyx4wdIkYA3BG+qMz5zC5udmdMiR0eiDLB\r\noGQebTKBtVt4f712dNroMegePOp/HwdD1GbA7J/mZWAfu7fi7wsv7V2SjGGB\r\nRspA9K2EY9GwGmLITIqjZsM5scywV49FK2QQwzb9qeWJKMJlGLuv8f6+jCp5\r\nj4+LLgp3VAGtqHoIx7igoS0RPpzPfnH05m+U7EcqWbBBKdd/FyUW1u65rpaq\r\nI7Z+GARWGCWs299kVwtx5796W1EN6KhZy0KPnMwgtbT1ZmG5oaOm+8SsIRoV\r\nLMZ1oNK+ZqIHwD6eG5alWkt23gW3fvXEksru8xj+sDZ6e4lgCwYdm/2q3/w0\r\nP2TysHsu1ipkXZhaDKIDaBK8Jf+v85MPXlFBVexq7iWOvYu5pYABo1IeGk5x\r\nGzjobAJpYSXjJ9s3RZ0N4xYjyNi6oL7qijwQzP6AOsg44L75noDz9OTF2WH1\r\n2g2i9BkGu2YjkFF2o2f4Z4VpVEFeiwF8Wog=\r\n=la2d\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/headless-hooks.js","module":"dist/headless-hooks.mjs","readme":"# Hooks\n\nBattle tested hooks that can be reused and are safe to use within SSR environments.\n\n## List\n\n* [`useCurrentBreakpoint`](src/useCurrentBreakpoint/README.md) - Context + Hook to track current CSS breakpoint by leveraging `matchMedia`.\n* [`useDebounce`](src/useDebounce/README.md) - Hook to debounce a quickly changing value, so it doesn't re-render as much.\n* [`useDebouncedCallback`](src/useDebouncedCallback/README.md) - Hook to debounce an effect that's quickly called.\n* [`useEffectAfterRender`](src/useEffectAfterRender/README.md) - Hook that only dispatches the effect if the component is mounted.\n* [`useEvent`](src/useEvent/README.md) - Hook for `addEventListener` to any element.\n* [`useFocusTrap`](src/useFocusTrap/README.md) - Hook to trap focus inside a DOM element. This is great for trapping the focus within a Modal for example.\n* [`useIsMounted`](src/useIsMounted/README.md) - Hook that returns a function that will yield the current mount state of the component.\n* [`useIsTransitioning`](src/useIsTransitioning/README.md) - Context + Hook that tracks `routeChange` events from [Next's Router](https://nextjs.org/docs/api-reference/next/router).\n* [`useKey`](src/useKey/README.md) - A convenient wrapper around [`useEvent`](src/useEvent/README.md) to handle key presses allowing to send either the key being watched, a function to evaluate or any truthy/falsy value.\n* [`useOnClickOutside`](src/useOnClickOutside/README.md) - Hook to add a handler to be executed when the user clicks outside a given ref.\n* [`useOnMount`](src/useOnMount/README.md) - Hook to add a handler to be executed when the component mounts.\n* [`useOnWindowResize`](src/useOnWindowResize/README.md) - Hook to attach a handler to window resize.\n* [`useSafeLayoutEffect`](src/useSafeLayoutEffect/README.md) - Alias hook to safely use `useLayoutEffect` within SSR environments.\n* [`useScript`](src/useScript/README.md) - Hook to append a script into the page, preventing the same script to be included more than once.\n\n## Development\n\nYou can create a new hook by running `npm run create-hook hookName` which will bootstrap the files for you. You might want to run `npm run create-hook` without any options if you want to see all possible inputs.\n","exports":{".":{"import":"./dist/headless-hooks.mjs","default":"./dist/headless-hooks.mjs","require":"./dist/headless-hooks.js"}},"gitHead":"9b45ef23bc5b9fa23f35fd3bc8486064f5bcda34","scripts":{"test":"jest --selectProjects dom ssr","build":"rollup -c","test:watch":"jest --selectProjects dom ssr --watch","create-hook":"plop"},"typings":"dist/headless-hooks.d.ts","_npmUser":{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},"_npmVersion":"lerna/4.0.0/node@v16.15.0+x64 (linux)","description":"Battle tested hooks that can be reused and are safe to use within SSR environments.","directories":{},"_nodeVersion":"16.15.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.5.1","plop":"^3.1.0","react":"^17.0.2","rollup":"^2.70.2","esbuild":"^0.14.38","ts-jest":"^27.1.4","react-dom":"^17.0.2","typescript":"^4.6.4","@types/jest":"^27.4.1","rollup-plugin-dts":"^4.2.1","rollup-plugin-esbuild":"^4.9.1","@testing-library/react":"^12.1.5","@testing-library/jest-dom":"^5.16.4","@testing-library/user-event":"^13.5.0","@testing-library/react-hooks":"^8.0.0"},"peerDependencies":{"react":"^16.8 || ^17 || ^18","react-dom":"^16.8 || ^17 || ^18"},"_npmOperationalInternal":{"tmp":"tmp/react-hooks_1.0.1-alpha.3_1652932387146_0.2118375915252626","host":"s3://npm-registry-packages"}},"1.0.1-alpha.4":{"name":"@10up/react-hooks","version":"1.0.1-alpha.4","author":"","license":"ISC","_id":"@10up/react-hooks@1.0.1-alpha.4","maintainers":[{"name":"fabiankaegy","email":"mail@fabian-kaegy.de"},{"name":"brandwaffle","email":"vhauri@gmail.com"},{"name":"eugene-manuilov","email":"eugene.manuilov@gmail.com"},{"name":"christianc1","email":"christian.m.chung@gmail.com"},{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},{"name":"joesnellpdx","email":"joesnellpdx@gmail.com"},{"name":"tlovett1","email":"tlovett88@gmail.com"},{"name":"devinle","email":"devin.leggett@gmail.com"}],"dist":{"shasum":"1bd1d8395975ce2d904ce0395327cb347f0d545a","tarball":"https://registry.npmjs.org/@10up/react-hooks/-/react-hooks-1.0.1-alpha.4.tgz","fileCount":77,"integrity":"sha512-LyKhnxvIDFjyEk7ys0IkpKjcz+oM2+PB7hMiyyg02bZRhNsYplQiXHQCCz8pm6m49mnQaE+hztWtaDqmhdvMLw==","signatures":[{"sig":"MEQCIDuxyLusYF5emqTE9Zz06bSU60HMYgX3WfPy7fttFfh7AiB4xpZ1+e3VF63rANWh0h/xUk7xyFLbWT27XqqXzp8knQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88274,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJii7M5ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrNiA//c9RkocSzO7kK51wtMsZuuTGZ8Je7tr5sU0LponTM5NApkZVf\r\nA+++h6xQbkzNp+iiQNxZhE+OAKJCZ36mlxk750NqcBEPQ4zGvoZkbC1tQmKI\r\ncll3C2fNMwuuw1i+XmJoUqOKpXEddcgSkKryqgpDA0KVdd6z3XUmtY2JW3gu\r\n2W7iTpd8IoHMEyY7mrMJn3pSr6jiVjLmptDT3+PG7Iv5H5b3dsAUgquPBg6G\r\nAnYM5AtNWFpFsCTjNXr3JAGx93fhWGD7R9D9RMK7r6R2eUEcqZlk11/NuBCb\r\noXIB99W94Wx23l18f6XLe8ukzhWTlt/lWncyirtGTkHwY4v/YppnsNY2qCri\r\nI/I8gWYo7aRL/HAKesEhipSjVjSDsDpyS9kRlKFpLc3HBWaVqQnNhAaHTh28\r\nQCriAzPKZn5RGmREkUwUil6Sxyy77cn/FjbXGcpq/4fTJNC47hkQQLq9E2ay\r\n0gMrfHEoLJvnIs57QPLDszmD8X0a6gmhmN1uVJ0JmBcrhgd+vxzd2j5uNtx5\r\n9n82LzPjVeOndd+fcZb7hneGLumXBRvODJqFQb89g9XQ5Q/IsSMK6wCC/kkt\r\n+xZd0ThEWXCXd5C9VrtEaEKvs8UwTwBE55mlm/FRC98ME7EhQrEQtFnqzCvp\r\nTocVXURK3Ccd2BoxTjj+m+bpBvwxsZLy3nI=\r\n=gSKm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/headless-hooks.js","module":"dist/headless-hooks.mjs","readme":"# Hooks\n\nBattle tested hooks that can be reused and are safe to use within SSR environments.\n\n## List\n\n* [`useCurrentBreakpoint`](src/useCurrentBreakpoint/README.md) - Context + Hook to track current CSS breakpoint by leveraging `matchMedia`.\n* [`useDebounce`](src/useDebounce/README.md) - Hook to debounce a quickly changing value, so it doesn't re-render as much.\n* [`useDebouncedCallback`](src/useDebouncedCallback/README.md) - Hook to debounce an effect that's quickly called.\n* [`useEffectAfterRender`](src/useEffectAfterRender/README.md) - Hook that only dispatches the effect if the component is mounted.\n* [`useEvent`](src/useEvent/README.md) - Hook for `addEventListener` to any element.\n* [`useFocusTrap`](src/useFocusTrap/README.md) - Hook to trap focus inside a DOM element. This is great for trapping the focus within a Modal for example.\n* [`useIsMounted`](src/useIsMounted/README.md) - Hook that returns a function that will yield the current mount state of the component.\n* [`useIsTransitioning`](src/useIsTransitioning/README.md) - Context + Hook that tracks `routeChange` events from [Next's Router](https://nextjs.org/docs/api-reference/next/router).\n* [`useKey`](src/useKey/README.md) - A convenient wrapper around [`useEvent`](src/useEvent/README.md) to handle key presses allowing to send either the key being watched, a function to evaluate or any truthy/falsy value.\n* [`useOnClickOutside`](src/useOnClickOutside/README.md) - Hook to add a handler to be executed when the user clicks outside a given ref.\n* [`useOnMount`](src/useOnMount/README.md) - Hook to add a handler to be executed when the component mounts.\n* [`useOnWindowResize`](src/useOnWindowResize/README.md) - Hook to attach a handler to window resize.\n* [`useSafeLayoutEffect`](src/useSafeLayoutEffect/README.md) - Alias hook to safely use `useLayoutEffect` within SSR environments.\n* [`useScript`](src/useScript/README.md) - Hook to append a script into the page, preventing the same script to be included more than once.\n\n## Development\n\nYou can create a new hook by running `npm run create-hook hookName` which will bootstrap the files for you. You might want to run `npm run create-hook` without any options if you want to see all possible inputs.\n","exports":{".":{"import":"./dist/headless-hooks.mjs","default":"./dist/headless-hooks.mjs","require":"./dist/headless-hooks.js"}},"gitHead":"2a641c6e65ab2e5da4a1a0dc81b9b86e08a0f346","scripts":{"test":"jest --selectProjects dom ssr","build":"rollup -c","test:watch":"jest --selectProjects dom ssr --watch","create-hook":"plop"},"typings":"dist/headless-hooks.d.ts","_npmUser":{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},"_npmVersion":"lerna/4.0.0/node@v16.15.0+x64 (linux)","description":"Battle tested hooks that can be reused and are safe to use within SSR environments.","directories":{},"_nodeVersion":"16.15.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.5.1","plop":"^3.1.0","react":"^17.0.2","rollup":"^2.70.2","esbuild":"^0.14.38","ts-jest":"^27.1.4","react-dom":"^17.0.2","typescript":"^4.6.4","@types/jest":"^27.4.1","rollup-plugin-dts":"^4.2.1","rollup-plugin-esbuild":"^4.9.1","@testing-library/react":"^12.1.5","@testing-library/jest-dom":"^5.16.4","@testing-library/user-event":"^13.5.0","@testing-library/react-hooks":"^8.0.0"},"peerDependencies":{"react":"^16.8 || ^17 || ^18","react-dom":"^16.8 || ^17 || ^18"},"_npmOperationalInternal":{"tmp":"tmp/react-hooks_1.0.1-alpha.4_1653322553530_0.846719244684728","host":"s3://npm-registry-packages"}},"1.0.1-alpha.5":{"name":"@10up/react-hooks","version":"1.0.1-alpha.5","author":"","license":"ISC","_id":"@10up/react-hooks@1.0.1-alpha.5","maintainers":[{"name":"fabiankaegy","email":"mail@fabian-kaegy.de"},{"name":"brandwaffle","email":"vhauri@gmail.com"},{"name":"eugene-manuilov","email":"eugene.manuilov@gmail.com"},{"name":"christianc1","email":"christian.m.chung@gmail.com"},{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},{"name":"joesnellpdx","email":"joesnellpdx@gmail.com"},{"name":"tlovett1","email":"tlovett88@gmail.com"},{"name":"devinle","email":"devin.leggett@gmail.com"}],"dist":{"shasum":"453b622c5491b3b5d05c08178498d9005a1529be","tarball":"https://registry.npmjs.org/@10up/react-hooks/-/react-hooks-1.0.1-alpha.5.tgz","fileCount":77,"integrity":"sha512-Xjnm7jNXK7pcHRn8dB6ufvgkjGUoBz5GeOxAzizRYG+YVevryH2cnuL501i1CXVodnrDH/muNkT6r4PN4FJ0yA==","signatures":[{"sig":"MEQCICuy7LPvmQBf+lcjsXldl9hzslBjh0k15B+y6uV0RDrrAiAMQ3HbUgW3IwDIqD5QP8OoHoY/v0ZtM69zRKHkT9meJA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88274,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJijMqSACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmosTA/+IqsmbYjyciXH/aHH5AFY4kWRgT/fP5/mhwB82pZh0K2STiux\r\nYKjVmXKCkP4Vp+ZLacD9kX/iQm2Djjs0/38gGktmfcMhCXqG6v59g4aUszXQ\r\nLuNoIGMR+M8LdPxAQj0z6TORcj4KDmYWkfmrHIscGeLmHR0FvINp19MbJteh\r\nKrQGYMiIpJNq2WWNIUEgEIaqtm4oRhjlGsXJe9Zt1R1otG1e0U2FYeHkJARN\r\n1DPBlUDIT+yREkP14dsAXPVbP4Uvm14jVOit9QPhGa4TKGG7cjQwbIoRmbFP\r\nzQWXnqZfGvsTh5Jftqam3CO6b715HBj4JNEuDoXyjj4u0UMgcihPDtUjR5rk\r\n+R0KsQAmxqIlJagMxbLNHaGzKWHDPwnr40KxySdqXMJ0BhtTxF5O3FBRENbX\r\n2nyxJguMkLW3ItSUk+zcUFV6PKyIZmgVmAyEDxeWaOuPkdekAWKdb/DxBaPd\r\n/EZm+7t0wAb29B70MvNTy8jUjIM3R6BJkVBwY0tDCD7Sc8R/lERylEzkkgJN\r\n7dc1uNHn8cibHqoMv1QRKhPO7+/AkuJp2HICp97Csahbc7svWwAcY1hHRKvy\r\n5RLeXrYJ388Xc3BtNDn0QBHNattXjHZCf7/D7mR0uRNFWLp0fX8KDl6NmKR6\r\nt1zkXFSJUfEGnVTru1qka9A8Ghcl1vWROgI=\r\n=4H9R\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/headless-hooks.js","module":"dist/headless-hooks.mjs","readme":"# Hooks\n\nBattle tested hooks that can be reused and are safe to use within SSR environments.\n\n## List\n\n* [`useCurrentBreakpoint`](src/useCurrentBreakpoint/README.md) - Context + Hook to track current CSS breakpoint by leveraging `matchMedia`.\n* [`useDebounce`](src/useDebounce/README.md) - Hook to debounce a quickly changing value, so it doesn't re-render as much.\n* [`useDebouncedCallback`](src/useDebouncedCallback/README.md) - Hook to debounce an effect that's quickly called.\n* [`useEffectAfterRender`](src/useEffectAfterRender/README.md) - Hook that only dispatches the effect if the component is mounted.\n* [`useEvent`](src/useEvent/README.md) - Hook for `addEventListener` to any element.\n* [`useFocusTrap`](src/useFocusTrap/README.md) - Hook to trap focus inside a DOM element. This is great for trapping the focus within a Modal for example.\n* [`useIsMounted`](src/useIsMounted/README.md) - Hook that returns a function that will yield the current mount state of the component.\n* [`useIsTransitioning`](src/useIsTransitioning/README.md) - Context + Hook that tracks `routeChange` events from [Next's Router](https://nextjs.org/docs/api-reference/next/router).\n* [`useKey`](src/useKey/README.md) - A convenient wrapper around [`useEvent`](src/useEvent/README.md) to handle key presses allowing to send either the key being watched, a function to evaluate or any truthy/falsy value.\n* [`useOnClickOutside`](src/useOnClickOutside/README.md) - Hook to add a handler to be executed when the user clicks outside a given ref.\n* [`useOnMount`](src/useOnMount/README.md) - Hook to add a handler to be executed when the component mounts.\n* [`useOnWindowResize`](src/useOnWindowResize/README.md) - Hook to attach a handler to window resize.\n* [`useSafeLayoutEffect`](src/useSafeLayoutEffect/README.md) - Alias hook to safely use `useLayoutEffect` within SSR environments.\n* [`useScript`](src/useScript/README.md) - Hook to append a script into the page, preventing the same script to be included more than once.\n\n## Development\n\nYou can create a new hook by running `npm run create-hook hookName` which will bootstrap the files for you. You might want to run `npm run create-hook` without any options if you want to see all possible inputs.\n","exports":{".":{"import":"./dist/headless-hooks.mjs","default":"./dist/headless-hooks.mjs","require":"./dist/headless-hooks.js"}},"gitHead":"6605779c7f81b05e723dfb8685fdd8a409054aac","scripts":{"test":"jest --selectProjects dom ssr","build":"rollup -c","test:watch":"jest --selectProjects dom ssr --watch","create-hook":"plop"},"typings":"dist/headless-hooks.d.ts","_npmUser":{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},"_npmVersion":"lerna/4.0.0/node@v16.15.0+x64 (linux)","description":"Battle tested hooks that can be reused and are safe to use within SSR environments.","directories":{},"_nodeVersion":"16.15.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.5.1","plop":"^3.1.0","react":"^17.0.2","rollup":"^2.70.2","esbuild":"^0.14.38","ts-jest":"^27.1.4","react-dom":"^17.0.2","typescript":"^4.6.4","@types/jest":"^27.4.1","rollup-plugin-dts":"^4.2.1","rollup-plugin-esbuild":"^4.9.1","@testing-library/react":"^12.1.5","@testing-library/jest-dom":"^5.16.4","@testing-library/user-event":"^13.5.0","@testing-library/react-hooks":"^8.0.0"},"peerDependencies":{"react":"^16.8 || ^17 || ^18","react-dom":"^16.8 || ^17 || ^18"},"_npmOperationalInternal":{"tmp":"tmp/react-hooks_1.0.1-alpha.5_1653394066400_0.08572360847319671","host":"s3://npm-registry-packages"}},"1.0.1-alpha.6":{"name":"@10up/react-hooks","version":"1.0.1-alpha.6","author":"","license":"ISC","_id":"@10up/react-hooks@1.0.1-alpha.6","maintainers":[{"name":"fabiankaegy","email":"mail@fabian-kaegy.de"},{"name":"brandwaffle","email":"vhauri@gmail.com"},{"name":"eugene-manuilov","email":"eugene.manuilov@gmail.com"},{"name":"christianc1","email":"christian.m.chung@gmail.com"},{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},{"name":"joesnellpdx","email":"joesnellpdx@gmail.com"},{"name":"tlovett1","email":"tlovett88@gmail.com"},{"name":"devinle","email":"devin.leggett@gmail.com"}],"dist":{"shasum":"a05f67b485569d321a62ab606738ede2d7db63dc","tarball":"https://registry.npmjs.org/@10up/react-hooks/-/react-hooks-1.0.1-alpha.6.tgz","fileCount":77,"integrity":"sha512-sn3gBzGdLvM0C3WY+Vg7dC8ULbXP6tCEZadrxJSESyoe25YG/sTDCbqFMXkQPIXwm4ioiGIYLBqzPyXta5YEvw==","signatures":[{"sig":"MEUCIQD8hUL5G+cN4m4ys0xmeH9N9pOQUA++h8yhubI4etdwTQIgS3BBig9yQrILqtn2lX/P4p95FEgCuHUI2f9CSjURNqE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88274,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJijOxxACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoYqQ//YyWvchXw5y1xqasjy1xLqIDbCWHWnjLrpF9ZdbM5AYApcns9\r\n8vCegvLIlMOJVUjIlyQzRGv4ZOfba9qQJngLYzyfqGvv5K+tJnRHUSn0pJfc\r\nc24lKVDKl/BBUsiXnUfb0fnY6Yx5q3JjS3UGEZYexZoVGmf/rV6jNYDRtlJf\r\nCNVm/VxyN+e3mLk1Anj3PdI27h1h25zbfIFSpF1P2qoNSzY4m/PWPWMK00/h\r\nCMLxkeJlgDfU9nB9RQWAVVJf6+4BKeIDCaPO4rcqMpUMogLKXtVLD1oaoiIP\r\npW/pNBHIY6TZWiA/mBLIAYCLt3x66Q2s7xMfJVhrd3geIRltdLknlxxClx4q\r\nxC6BdzoPXVnqkyhCUfxc5c6/jUCuHwiD8j6iamcQ+HmtW83RO+6OYMoSP2Ij\r\npVbbNvwTB3HCagtLkSxJt/U/zHA0ItIqT1tWMJ0rrGQ5DOUHvE6ZY6dCH49p\r\n7PsRT8lHBTx/d8bcg3qauxlEZKp0KMy7hjY4+NN6OUO2rPPvwT53cPshc09f\r\n23wPYEk9JrkL/98K+u6PD96zgWJ4yfKHzphug5eecYE4mGgBNrDyltyuOO93\r\n8T2/78MkmfJCnKDOH/mIwfjUxgeMDAwgVsixDpcO3SSUNGMuqqdqTA0rn8xM\r\nLILv9FeZbYluTeRUQexF8R8xwSbhUGuBDEM=\r\n=Px8K\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/headless-hooks.js","module":"dist/headless-hooks.mjs","readme":"# Hooks\n\nBattle tested hooks that can be reused and are safe to use within SSR environments.\n\n## List\n\n* [`useCurrentBreakpoint`](src/useCurrentBreakpoint/README.md) - Context + Hook to track current CSS breakpoint by leveraging `matchMedia`.\n* [`useDebounce`](src/useDebounce/README.md) - Hook to debounce a quickly changing value, so it doesn't re-render as much.\n* [`useDebouncedCallback`](src/useDebouncedCallback/README.md) - Hook to debounce an effect that's quickly called.\n* [`useEffectAfterRender`](src/useEffectAfterRender/README.md) - Hook that only dispatches the effect if the component is mounted.\n* [`useEvent`](src/useEvent/README.md) - Hook for `addEventListener` to any element.\n* [`useFocusTrap`](src/useFocusTrap/README.md) - Hook to trap focus inside a DOM element. This is great for trapping the focus within a Modal for example.\n* [`useIsMounted`](src/useIsMounted/README.md) - Hook that returns a function that will yield the current mount state of the component.\n* [`useIsTransitioning`](src/useIsTransitioning/README.md) - Context + Hook that tracks `routeChange` events from [Next's Router](https://nextjs.org/docs/api-reference/next/router).\n* [`useKey`](src/useKey/README.md) - A convenient wrapper around [`useEvent`](src/useEvent/README.md) to handle key presses allowing to send either the key being watched, a function to evaluate or any truthy/falsy value.\n* [`useOnClickOutside`](src/useOnClickOutside/README.md) - Hook to add a handler to be executed when the user clicks outside a given ref.\n* [`useOnMount`](src/useOnMount/README.md) - Hook to add a handler to be executed when the component mounts.\n* [`useOnWindowResize`](src/useOnWindowResize/README.md) - Hook to attach a handler to window resize.\n* [`useSafeLayoutEffect`](src/useSafeLayoutEffect/README.md) - Alias hook to safely use `useLayoutEffect` within SSR environments.\n* [`useScript`](src/useScript/README.md) - Hook to append a script into the page, preventing the same script to be included more than once.\n\n## Development\n\nYou can create a new hook by running `npm run create-hook hookName` which will bootstrap the files for you. You might want to run `npm run create-hook` without any options if you want to see all possible inputs.\n","exports":{".":{"import":"./dist/headless-hooks.mjs","default":"./dist/headless-hooks.mjs","require":"./dist/headless-hooks.js"}},"gitHead":"7a9141dda273a9431076a139c26f8f0aa216973e","scripts":{"test":"jest --selectProjects dom ssr","build":"rollup -c","test:watch":"jest --selectProjects dom ssr --watch","create-hook":"plop"},"typings":"dist/headless-hooks.d.ts","_npmUser":{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},"_npmVersion":"lerna/4.0.0/node@v16.15.0+x64 (linux)","description":"Battle tested hooks that can be reused and are safe to use within SSR environments.","directories":{},"_nodeVersion":"16.15.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.5.1","plop":"^3.1.0","react":"^17.0.2","rollup":"^2.70.2","esbuild":"^0.14.38","ts-jest":"^27.1.4","react-dom":"^17.0.2","typescript":"^4.6.4","@types/jest":"^27.4.1","rollup-plugin-dts":"^4.2.1","rollup-plugin-esbuild":"^4.9.1","@testing-library/react":"^12.1.5","@testing-library/jest-dom":"^5.16.4","@testing-library/user-event":"^13.5.0","@testing-library/react-hooks":"^8.0.0"},"peerDependencies":{"react":"^16.8 || ^17 || ^18","react-dom":"^16.8 || ^17 || ^18"},"_npmOperationalInternal":{"tmp":"tmp/react-hooks_1.0.1-alpha.6_1653402736880_0.10942415212760404","host":"s3://npm-registry-packages"}},"1.0.1-alpha.7":{"name":"@10up/react-hooks","version":"1.0.1-alpha.7","author":"","license":"ISC","_id":"@10up/react-hooks@1.0.1-alpha.7","maintainers":[{"name":"fabiankaegy","email":"mail@fabian-kaegy.de"},{"name":"brandwaffle","email":"vhauri@gmail.com"},{"name":"eugene-manuilov","email":"eugene.manuilov@gmail.com"},{"name":"christianc1","email":"christian.m.chung@gmail.com"},{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},{"name":"joesnellpdx","email":"joesnellpdx@gmail.com"},{"name":"tlovett1","email":"tlovett88@gmail.com"},{"name":"devinle","email":"devin.leggett@gmail.com"}],"dist":{"shasum":"92247817e9dcc4e3a28460295c048a58974f263b","tarball":"https://registry.npmjs.org/@10up/react-hooks/-/react-hooks-1.0.1-alpha.7.tgz","fileCount":77,"integrity":"sha512-YWNBI/sGUvTmNeK5i3VopjGyZ/vCTuyRmIdKXBDlJQ3fugrToEd64kGSq0IOQyDyF+JdgcOG5XTsr6HcDci1Dw==","signatures":[{"sig":"MEUCIDx6qs5xvnLdqk41vU1aL8Y0PZV6E0guGAhgUQxCLD/AAiEAt+5kGCMu8ztvyCvf93JtEwDBjDcOks46EDRT2YZGrww=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88274,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJijn4vACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo/1Q//Q/mf0klX4uPziOa0qazyRFYKCTzkdXQAzQz6aECYdjZ9Wsf4\r\nBlsmeJPq7Dn3pE5uR+iZzxVCbPJVEldRGKMvhGy/0GjR1ldLy5KNKloivVge\r\nOKtN0Tz3D+812IlIu2l9jj38kGCxQbHnoCqOCyEAzVmLdv2EDqXv0OVM+hGe\r\nPEKdVQafoGziYYCIO4V7O+rGixx25niP3RbunHsZkd1ICzQHS2ZqXPeqhG3R\r\nfXkMl11dUJ/OEHMbSaq/lMhxR6ci/FP2oQmByUBrJiWalFiW2JS9lNBvrHjG\r\nZUu6/dLe2aejcCGmfX4WjOpeXRe8TQhrKchwt2u1GaAXccDzMIYtjfM3ByJt\r\nB8rdAn/3mghR+UV+GsaxRBwMqC13jPSXO26+CvlGBM52yNPRz2he2L/GtWOx\r\nPr5BwhhAOobQ1DW9z46W2lMjGi9zahNbzIVqNd9W5qnm5OefODIzHa8yV+Xo\r\nWto1mZ/JbZw553iTJ2qMWL7AIDS0VWAEJt/2CNd6qYAcKPx7LpbtMNd8N7Qa\r\ni2GpM2sQLiUsLNiN1bf1zx6xH4ZSa7+SwxpAB3qnBd+UDy94krHgRb4Nz2xB\r\ngGJatfYfZ+2OZ4XtUQMyTfpHEDYjBStcP9fCaaXqlTV77Dy45lb/hAHSk40F\r\nsSdFk5kSv2RfbePujLLanBsnnmOFxa3Blfg=\r\n=Ecph\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/headless-hooks.js","module":"dist/headless-hooks.mjs","readme":"# Hooks\n\nBattle tested hooks that can be reused and are safe to use within SSR environments.\n\n## List\n\n* [`useCurrentBreakpoint`](src/useCurrentBreakpoint/README.md) - Context + Hook to track current CSS breakpoint by leveraging `matchMedia`.\n* [`useDebounce`](src/useDebounce/README.md) - Hook to debounce a quickly changing value, so it doesn't re-render as much.\n* [`useDebouncedCallback`](src/useDebouncedCallback/README.md) - Hook to debounce an effect that's quickly called.\n* [`useEffectAfterRender`](src/useEffectAfterRender/README.md) - Hook that only dispatches the effect if the component is mounted.\n* [`useEvent`](src/useEvent/README.md) - Hook for `addEventListener` to any element.\n* [`useFocusTrap`](src/useFocusTrap/README.md) - Hook to trap focus inside a DOM element. This is great for trapping the focus within a Modal for example.\n* [`useIsMounted`](src/useIsMounted/README.md) - Hook that returns a function that will yield the current mount state of the component.\n* [`useIsTransitioning`](src/useIsTransitioning/README.md) - Context + Hook that tracks `routeChange` events from [Next's Router](https://nextjs.org/docs/api-reference/next/router).\n* [`useKey`](src/useKey/README.md) - A convenient wrapper around [`useEvent`](src/useEvent/README.md) to handle key presses allowing to send either the key being watched, a function to evaluate or any truthy/falsy value.\n* [`useOnClickOutside`](src/useOnClickOutside/README.md) - Hook to add a handler to be executed when the user clicks outside a given ref.\n* [`useOnMount`](src/useOnMount/README.md) - Hook to add a handler to be executed when the component mounts.\n* [`useOnWindowResize`](src/useOnWindowResize/README.md) - Hook to attach a handler to window resize.\n* [`useSafeLayoutEffect`](src/useSafeLayoutEffect/README.md) - Alias hook to safely use `useLayoutEffect` within SSR environments.\n* [`useScript`](src/useScript/README.md) - Hook to append a script into the page, preventing the same script to be included more than once.\n\n## Development\n\nYou can create a new hook by running `npm run create-hook hookName` which will bootstrap the files for you. You might want to run `npm run create-hook` without any options if you want to see all possible inputs.\n","exports":{".":{"import":"./dist/headless-hooks.mjs","default":"./dist/headless-hooks.mjs","require":"./dist/headless-hooks.js"}},"gitHead":"066051657a21e7b2b39d66ce7e5765674b3031b8","scripts":{"test":"jest --selectProjects dom ssr","build":"rollup -c","test:watch":"jest --selectProjects dom ssr --watch","create-hook":"plop"},"typings":"dist/headless-hooks.d.ts","_npmUser":{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},"_npmVersion":"lerna/5.0.0/node@v16.15.0+x64 (linux)","description":"Battle tested hooks that can be reused and are safe to use within SSR environments.","directories":{},"_nodeVersion":"16.15.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.5.1","plop":"^3.1.0","react":"^17.0.2","rollup":"^2.70.2","esbuild":"^0.14.38","ts-jest":"^27.1.4","react-dom":"^17.0.2","typescript":"^4.6.4","@types/jest":"^27.4.1","rollup-plugin-dts":"^4.2.1","rollup-plugin-esbuild":"^4.9.1","@testing-library/react":"^12.1.5","@testing-library/jest-dom":"^5.16.4","@testing-library/user-event":"^13.5.0","@testing-library/react-hooks":"^8.0.0"},"peerDependencies":{"react":"^16.8 || ^17 || ^18","react-dom":"^16.8 || ^17 || ^18"},"_npmOperationalInternal":{"tmp":"tmp/react-hooks_1.0.1-alpha.7_1653505583267_0.9616616729481771","host":"s3://npm-registry-packages"}},"1.0.1-alpha.8":{"name":"@10up/react-hooks","version":"1.0.1-alpha.8","author":"","license":"ISC","_id":"@10up/react-hooks@1.0.1-alpha.8","maintainers":[{"name":"fabiankaegy","email":"mail@fabian-kaegy.de"},{"name":"brandwaffle","email":"vhauri@gmail.com"},{"name":"eugene-manuilov","email":"eugene.manuilov@gmail.com"},{"name":"christianc1","email":"christian.m.chung@gmail.com"},{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},{"name":"joesnellpdx","email":"joesnellpdx@gmail.com"},{"name":"tlovett1","email":"tlovett88@gmail.com"},{"name":"devinle","email":"devin.leggett@gmail.com"}],"dist":{"shasum":"d87e4c9e595a1b447f0ccb0ac28d9a542d0f59b2","tarball":"https://registry.npmjs.org/@10up/react-hooks/-/react-hooks-1.0.1-alpha.8.tgz","fileCount":77,"integrity":"sha512-0+VjG6ldHnzem/+efWg4JTtzimwyAwPD+GqfgcLTmNFvwVr67zu7HK96Ks3XrtlgfnORKBLU40xm+LiOzdGcNQ==","signatures":[{"sig":"MEYCIQDkGBxRMPhOw+/qnFeQa+Wng8VOKDKPaVpKbSnyp6YwugIhAM0lFun9Adw+wlSdq+48huGjnLz7DqccvRn1dwd+Xlu6","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88274,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJilMKGACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr4HA//dpoyEfYnjn4ZXA1Hx3drSz+AlcjigR/dIpioEefOBYvDa18A\r\nd4HMB5VLIYJiEpyC9WcHdNdFTc0LqEzpS4FyJV8yOwcKbGiunzxYU/UYCugn\r\nXak6tpRsC/jK49tNMe4R3W0vtKDM10PB+tlvQsHmLTJaXpr2k9eeLcbFLvfW\r\n8oe7ROkGqMZ4/Jav+dMM6vcpUTgO0ylLhWefnowrBFJ3ELnBDKN3Y7np4IFp\r\nzTnutGMjfdnHdPEYX+wsELijifMxvD20jobFngK7xn855UG6SaOr0zi6HgVK\r\nmwu9MHNjbRiLwqGpD8sVEIboZHTEJL03dCvcVrbA0XyTGVYAlp3SGDTVZehh\r\nfo75CcDa23f/JsH5BOs+E+cNPcwtk1tEx6Kb3rLjrlRAkTUEiIYaI53g/IsL\r\nTbT16BXS7/RZkKEXHmqv+cpp6su8rU/ew4iq/bKyZbwSSeMNUL28r6Ph/6Vy\r\nsPdXkTWjJUqdMT/rsqvnC/BifivF3PGdDV92ixxMDbCdYlebr26WJ41nx6Mr\r\nGGJhyHdE2TeVZIuxybBWzaSYMJasgZBIdAyM5WsFYFJ5Uz/WzylDeNAingBV\r\nyBeZHUI1JP6Z9KZLxvcFSHylZwUhqxXvtxXbjTDrztbo5+j95WGiXFsPFmeJ\r\nF41DJWcoyUEi6Eya9bWEXDu7aIvRl5yFK24=\r\n=Rlpp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/headless-hooks.js","module":"dist/headless-hooks.mjs","readme":"# Hooks\n\nBattle tested hooks that can be reused and are safe to use within SSR environments.\n\n## List\n\n* [`useCurrentBreakpoint`](src/useCurrentBreakpoint/README.md) - Context + Hook to track current CSS breakpoint by leveraging `matchMedia`.\n* [`useDebounce`](src/useDebounce/README.md) - Hook to debounce a quickly changing value, so it doesn't re-render as much.\n* [`useDebouncedCallback`](src/useDebouncedCallback/README.md) - Hook to debounce an effect that's quickly called.\n* [`useEffectAfterRender`](src/useEffectAfterRender/README.md) - Hook that only dispatches the effect if the component is mounted.\n* [`useEvent`](src/useEvent/README.md) - Hook for `addEventListener` to any element.\n* [`useFocusTrap`](src/useFocusTrap/README.md) - Hook to trap focus inside a DOM element. This is great for trapping the focus within a Modal for example.\n* [`useIsMounted`](src/useIsMounted/README.md) - Hook that returns a function that will yield the current mount state of the component.\n* [`useIsTransitioning`](src/useIsTransitioning/README.md) - Context + Hook that tracks `routeChange` events from [Next's Router](https://nextjs.org/docs/api-reference/next/router).\n* [`useKey`](src/useKey/README.md) - A convenient wrapper around [`useEvent`](src/useEvent/README.md) to handle key presses allowing to send either the key being watched, a function to evaluate or any truthy/falsy value.\n* [`useOnClickOutside`](src/useOnClickOutside/README.md) - Hook to add a handler to be executed when the user clicks outside a given ref.\n* [`useOnMount`](src/useOnMount/README.md) - Hook to add a handler to be executed when the component mounts.\n* [`useOnWindowResize`](src/useOnWindowResize/README.md) - Hook to attach a handler to window resize.\n* [`useSafeLayoutEffect`](src/useSafeLayoutEffect/README.md) - Alias hook to safely use `useLayoutEffect` within SSR environments.\n* [`useScript`](src/useScript/README.md) - Hook to append a script into the page, preventing the same script to be included more than once.\n\n## Development\n\nYou can create a new hook by running `npm run create-hook hookName` which will bootstrap the files for you. You might want to run `npm run create-hook` without any options if you want to see all possible inputs.\n","exports":{".":{"import":"./dist/headless-hooks.mjs","default":"./dist/headless-hooks.mjs","require":"./dist/headless-hooks.js"}},"gitHead":"03cecc6f1a05e52e67336e02f8aa9e0465ab3e81","scripts":{"test":"jest --selectProjects dom ssr","build":"rollup -c","test:watch":"jest --selectProjects dom ssr --watch","create-hook":"plop"},"typings":"dist/headless-hooks.d.ts","_npmUser":{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},"_npmVersion":"lerna/5.0.0/node@v16.15.0+x64 (linux)","description":"Battle tested hooks that can be reused and are safe to use within SSR environments.","directories":{},"_nodeVersion":"16.15.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.5.1","plop":"^3.1.0","react":"^17.0.2","rollup":"^2.70.2","esbuild":"^0.14.38","ts-jest":"^27.1.4","react-dom":"^17.0.2","typescript":"^4.6.4","@types/jest":"^27.4.1","rollup-plugin-dts":"^4.2.1","rollup-plugin-esbuild":"^4.9.1","@testing-library/react":"^12.1.5","@testing-library/jest-dom":"^5.16.4","@testing-library/user-event":"^13.5.0","@testing-library/react-hooks":"^8.0.0"},"peerDependencies":{"react":"^16.8 || ^17 || ^18","react-dom":"^16.8 || ^17 || ^18"},"_npmOperationalInternal":{"tmp":"tmp/react-hooks_1.0.1-alpha.8_1653916293824_0.4352667532025931","host":"s3://npm-registry-packages"}},"1.1.0":{"name":"@10up/react-hooks","version":"1.1.0","author":"","license":"ISC","_id":"@10up/react-hooks@1.1.0","maintainers":[{"name":"fabiankaegy","email":"mail@fabian-kaegy.de"},{"name":"brandwaffle","email":"vhauri@gmail.com"},{"name":"eugene-manuilov","email":"eugene.manuilov@gmail.com"},{"name":"christianc1","email":"christian.m.chung@gmail.com"},{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},{"name":"joesnellpdx","email":"joesnellpdx@gmail.com"},{"name":"tlovett1","email":"tlovett88@gmail.com"},{"name":"devinle","email":"devin.leggett@gmail.com"}],"dist":{"shasum":"dd3b3bbd3e5c2c115c6b9c61f244a185bc625d8b","tarball":"https://registry.npmjs.org/@10up/react-hooks/-/react-hooks-1.1.0.tgz","fileCount":81,"integrity":"sha512-JhIOj6Z4rSHgUjtcnUIHEIsjbA5tutM/EZutr/usIvJVmzO5Plq7ENdXlbAI7UdNsAKeK/T1VhlnFgzwuy0waw==","signatures":[{"sig":"MEYCIQCYtq9ZfvGK1mEQt5peCYs/lLM2O6n/T1SmFXHR3mVyPAIhAJJDx+1qThX4ytWKbG+z4K0F7McRivfbfNf1ARi6sATA","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116620,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJilNQCACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmokyRAAiPCwZOGX37uhPWvtGPLrJgclO34O/RRryprONPH5rhTpH2AJ\r\n2hwpIgA2O4QdpfiifkgiKkVhLVPlNuMiWEaKOM5rt55tQsWssrJCmgDvogp5\r\nQiPvC+MwTutQ+S9akxqIgMHeaWCuc75pI0h/T+1REP77nbpIsD0AV3LrK4cM\r\nIF28lM47VGvTeX19HylqiU1R3ZH0gTsxWpy29afNgNnemSEXE6eEgvWX4Ock\r\nODcxC0kPJAr4KVWOy0RKU75tJFWymIplIbT29XBPvvQ8rY/4A7NhzBaQZ1Tj\r\n8HM9psVEFXhCy3O8/2HdRrt+wn8LzNPnka6jFygKf9W3HQEg9WsSKsQ+XMXf\r\nDSWPLq6hihuzPajwMdEz16Ma67Ws8j2N7UmKI/8Ywj4mnnh/1ihoeluxoplv\r\nrM9c9leZ1zEhQ1+7QALSc6htwQA1B/GZyOIBynw8WEuinCEyLVDtOa6LnUzM\r\nn5JEV/CE3JbMrvI5UfyFZzj/VXjbQ64Zclswppjpg/rgsddLSimFWyHcVBGl\r\nvdlrcHL+zewyN/8yu0eEybUIZ6iLC3ZhL5ABWvRWgpRa+opL0uPe4d3pLdZM\r\nXtDl4GdIIfWjd/AazZC/XHpcGul0R0ufeqlFIGQpqeOpy+DElVAVi64j13u2\r\nYM82/UBmPBjv1wSEKOvY1IP+AJzdKHBn5K4=\r\n=69FV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/react-hooks.js","module":"dist/react-hooks.mjs","exports":{".":{"import":"./dist/react-hooks.mjs","default":"./dist/react-hooks.mjs","require":"./dist/react-hooks.js"}},"gitHead":"a68a9b73732db971b9f22d055324194729c297a9","scripts":{"test":"jest --selectProjects dom ssr","build":"rollup -c","test:watch":"jest --selectProjects dom ssr --watch","create-hook":"plop"},"typings":"dist/react-hooks.d.ts","_npmUser":{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},"_npmVersion":"8.5.5","description":"Battle tested hooks that can be reused and are safe to use within SSR environments.","directories":{},"_nodeVersion":"16.15.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.1","plop":"^3.1.0","react":"^17.0.2","rollup":"^2.73.0","esbuild":"^0.14.39","ts-jest":"^27.1.4","react-dom":"^17.0.2","typescript":"^4.6.4","@types/jest":"^27.4.1","@types/react":"^17.0.45","rollup-plugin-dts":"^4.2.1","rollup-plugin-esbuild":"^4.9.1","@testing-library/react":"^12.1.5","@testing-library/jest-dom":"^5.16.4","@testing-library/user-event":"^13.5.0","@testing-library/react-hooks":"^8.0.0"},"peerDependencies":{"react":"^16.8 || ^17 || ^18","react-dom":"^16.8 || ^17 || ^18"},"_npmOperationalInternal":{"tmp":"tmp/react-hooks_1.1.0_1653920770514_0.4345084369984007","host":"s3://npm-registry-packages"}},"1.2.0":{"name":"@10up/react-hooks","version":"1.2.0","author":"","license":"ISC","_id":"@10up/react-hooks@1.2.0","maintainers":[{"name":"fabiankaegy","email":"mail@fabian-kaegy.de"},{"name":"brandwaffle","email":"vhauri@gmail.com"},{"name":"eugene-manuilov","email":"eugene.manuilov@gmail.com"},{"name":"christianc1","email":"christian.m.chung@gmail.com"},{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},{"name":"joesnellpdx","email":"joesnellpdx@gmail.com"},{"name":"tlovett1","email":"tlovett88@gmail.com"},{"name":"devinle","email":"devin.leggett@gmail.com"}],"dist":{"shasum":"e6cd946f82aeb5eef24141dbc6919e0db1c13688","tarball":"https://registry.npmjs.org/@10up/react-hooks/-/react-hooks-1.2.0.tgz","fileCount":78,"integrity":"sha512-sSkGgprScMuM4Lz3TOTEJVNOG02plWciAFsgEfe+V8pgxiPDH12KIyMOSLsrsvrIP9gGVPEE7JinWStNfwfmpw==","signatures":[{"sig":"MEUCIAqiAt1GBhGVmOFJ3orHX+z0+2vwUyAluYy3qGvQxpAfAiEAyVGQz73o+yViqVMQdmu9hQp1+ZiPGDEgd3myrFypR8I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88505,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJil3ujACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo2gRAAj250VC/MB90cl7nCsKSdYXHwMRTQjZ3QfJqEv56gVUzptfJb\r\nMfzS9pNmEJMC73n18INdJsIq5JJtX2uRM4997x7MyyaFBhoqQ68krMNeEgZi\r\nQPRngJeKyYiZF3coQG318LuW7J4O0QajHPi4hJgV+NjTyXhQnwKZx5QG2R/N\r\ntpPs7Su8ugulBlDuoVu/BT5dnvAdBxZuZ092kU9vIl7jBIqL3kg51EtfjUaV\r\nVmuS4iXZT2oSC+F47uj8u0oYJ8QkSfRi64BTyA6uUTRibgysY1DduXqaXnIH\r\nzNeQ2luIKfC+dDvfdyaD54mUT/0/b5lKIIGQO4lhWTLwkFKFJ3xcxrQPMzIU\r\n6rjkqL2zl7QME1APjaHGKw+aJJa64ntjmnIXC9s0XLn3iHSoda5uQC0uShds\r\nXsy1KIfnUtq8y4+7rBaMgqHQzBWFXgSsd4btzpCHhdb8QtdYwo1PP0rQDT8p\r\nkbqvMZgH8yJ/AqSry/GoO0Wt4e8FFf4mVJwH0PjwfSy2GimxHm3eqatlS9Q7\r\n9MqZ+HCOydF8w7guTUDvGdt/+0CeIvLxK1C16JUwFg9lsryX2thcBjfspvSe\r\n2yp93L/O7+4cymB26bJ6tK/EpkmYwHgX+8Ee/5/N++MMddX//QegHLrQYf6H\r\n8ZB59o7PZRkUGhpoUA6XGyWW5BkYxKyqZJY=\r\n=c+Xl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/react-hooks.js","module":"dist/react-hooks.mjs","exports":{".":{"import":"./dist/react-hooks.mjs","default":"./dist/react-hooks.mjs","require":"./dist/react-hooks.js"}},"gitHead":"288552f5269d4d0910db030b8b0298534b509a78","scripts":{"test":"jest --selectProjects dom ssr","build":"rollup -c","test:watch":"jest --selectProjects dom ssr --watch","create-hook":"plop"},"typings":"dist/react-hooks.d.ts","_npmUser":{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},"deprecated":"This version is broken, please use v1.2.1","_npmVersion":"8.5.5","description":"Battle tested hooks that can be reused and are safe to use within SSR environments.","directories":{},"_nodeVersion":"16.15.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.1","plop":"^3.1.0","react":"^17.0.2","rollup":"^2.73.0","esbuild":"^0.14.39","ts-jest":"^27.1.4","react-dom":"^17.0.2","typescript":"^4.6.4","@types/jest":"^27.4.1","@types/react":"^17.0.45","rollup-plugin-dts":"^4.2.1","rollup-plugin-esbuild":"^4.9.1","@testing-library/react":"^12.1.5","@testing-library/jest-dom":"^5.16.4","@testing-library/user-event":"^13.5.0","@testing-library/react-hooks":"^8.0.0"},"peerDependencies":{"react":"^16.8 || ^17 || ^18","react-dom":"^16.8 || ^17 || ^18"},"_npmOperationalInternal":{"tmp":"tmp/react-hooks_1.2.0_1654094755431_0.6013181140359192","host":"s3://npm-registry-packages"}},"1.2.1-next.0":{"name":"@10up/react-hooks","version":"1.2.1-next.0","author":"","license":"ISC","_id":"@10up/react-hooks@1.2.1-next.0","maintainers":[{"name":"fabiankaegy","email":"mail@fabian-kaegy.de"},{"name":"brandwaffle","email":"vhauri@gmail.com"},{"name":"eugene-manuilov","email":"eugene.manuilov@gmail.com"},{"name":"christianc1","email":"christian.m.chung@gmail.com"},{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},{"name":"joesnellpdx","email":"joesnellpdx@gmail.com"},{"name":"tlovett1","email":"tlovett88@gmail.com"},{"name":"devinle","email":"devin.leggett@gmail.com"}],"dist":{"shasum":"004629b42a93419a908f936522a311f6fe724a79","tarball":"https://registry.npmjs.org/@10up/react-hooks/-/react-hooks-1.2.1-next.0.tgz","fileCount":82,"integrity":"sha512-8gNTG1dusJjGoVIjIeQ8qQjfj89Xn8Vfyrhnigta5q/J9FKxUVukW2n4sMVV3Sk1M9kWcu0XTS9qt7m/d9MbWg==","signatures":[{"sig":"MEUCIQC7J+xAhG5IlPT5wMV9dfTn7NzeHJj8gyKkmVMg9TitcwIgXd8uNtQQpmHx1bU/p0Ih6PVWirfCjWKtjE3a8lxPnec=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":125603,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJil5hFACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpQnw//ccF8MtdtKGUbvgAAcoVruFmwcWa2S8411hyPT8bgPRqFpimc\r\nyasVDxAvpKF34RvDOC49aJA2XBF00gqsL9MmJ/d9v5BPzILaWaqC4gKav43m\r\nDKL8wdaSeL5U973mk9b8iHvWGwOoOcz+EZ9+/FxR1+8ejejQ56bPsppL1kD1\r\nktSk7HVL60eKhqonMWmaqvtFxKUNFYoslac8+A3AjgZ7BgLBqJUJ/vZuKrGv\r\nwMofYaVXrkoLl72ccytktmasaHtdPUqDdZLUYxA9Pe7xQL/Cm4k1SPXxT0hN\r\nCguMSm2sx0u2/jHQ0G1mCE16VHuk90Gb4n1KC3E7N4rUgQdqDLStpWF8Zw7z\r\nFAZvvFyGdV4s3/s9kwFsByipz728Bt5kKxNkYMvhbpVVYlRAhHvUYGz3Sc95\r\n9QsA9+7ngmlCEOmIu0H2qp+MD4lJKC2xpcvIrg6yljfuAX5KJVHdTSIIB4SZ\r\n2+wi76/YaJPYyWycstv/L44dRMicdQ/mJTt6pSNLv+ZuXnFOU7vdtXp/VldT\r\nUnxGsU052Z+5FCISYOc4OV7IbfoQWn9M1qR8jH3mZzD9Z9ZHVaktwXln5iB/\r\nbrjY4KPD6T5KhmB+ZSCCv3lL8YVTs0kzH1k0RbYAXFxuuAuZTPFhi4ENte1j\r\njGrGB/MzFzV4Arp1kQ/yfBu6AyjACk77ED0=\r\n=UiYp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/react-hooks.js","module":"dist/react-hooks.mjs","readme":"# Hooks\n\nBattle tested hooks that can be reused and are safe to use within SSR environments.\n\n## List\n\n* [`useCurrentBreakpoint`](src/useCurrentBreakpoint/README.md) - Context + Hook to track current CSS breakpoint by leveraging `matchMedia`.\n* [`useDebounce`](src/useDebounce/README.md) - Hook to debounce a quickly changing value, so it doesn't re-render as much.\n* [`useDebouncedCallback`](src/useDebouncedCallback/README.md) - Hook to debounce an effect that's quickly called.\n* [`useEffectAfterRender`](src/useEffectAfterRender/README.md) - Hook that only dispatches the effect if the component is mounted.\n* [`useEvent`](src/useEvent/README.md) - Hook for `addEventListener` to any element.\n* [`useFocusTrap`](src/useFocusTrap/README.md) - Hook to trap focus inside a DOM element. This is great for trapping the focus within a Modal for example.\n* [`useIsMounted`](src/useIsMounted/README.md) - Hook that returns a function that will yield the current mount state of the component.\n* [`useIsTransitioning`](src/useIsTransitioning/README.md) - Context + Hook that tracks `routeChange` events from [Next's Router](https://nextjs.org/docs/api-reference/next/router).\n* [`useKey`](src/useKey/README.md) - A convenient wrapper around [`useEvent`](src/useEvent/README.md) to handle key presses allowing to send either the key being watched, a function to evaluate or any truthy/falsy value.\n* [`useOnClickOutside`](src/useOnClickOutside/README.md) - Hook to add a handler to be executed when the user clicks outside a given ref.\n* [`useOnMount`](src/useOnMount/README.md) - Hook to add a handler to be executed when the component mounts.\n* [`useOnWindowResize`](src/useOnWindowResize/README.md) - Hook to attach a handler to window resize.\n* [`useSafeLayoutEffect`](src/useSafeLayoutEffect/README.md) - Alias hook to safely use `useLayoutEffect` within SSR environments.\n* [`useScript`](src/useScript/README.md) - Hook to append a script into the page, preventing the same script to be included more than once.\n\n## Development\n\nYou can create a new hook by running `npm run create-hook hookName` which will bootstrap the files for you. You might want to run `npm run create-hook` without any options if you want to see all possible inputs.\n","exports":{".":{"import":"./dist/react-hooks.mjs","default":"./dist/react-hooks.mjs","require":"./dist/react-hooks.js"}},"gitHead":"886299b14007fd14d5130adbeaa4e40b90b52cd8","scripts":{"test":"jest --selectProjects dom ssr","build":"rollup -c","test:watch":"jest --selectProjects dom ssr --watch","create-hook":"plop"},"typings":"dist/react-hooks.d.ts","_npmUser":{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},"_npmVersion":"8.5.5","description":"Battle tested hooks that can be reused and are safe to use within SSR environments.","directories":{},"_nodeVersion":"16.15.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.5.1","plop":"^3.1.0","react":"^17.0.2","rollup":"^2.73.0","esbuild":"^0.14.39","ts-jest":"^27.1.4","react-dom":"^17.0.2","typescript":"^4.6.4","@types/jest":"^27.4.1","@types/react":"^17.0.45","rollup-plugin-dts":"^4.2.1","rollup-plugin-esbuild":"^4.9.1","@testing-library/react":"^12.1.5","@testing-library/jest-dom":"^5.16.4","@testing-library/user-event":"^13.5.0","@testing-library/react-hooks":"^8.0.0"},"peerDependencies":{"react":"^16.8 || ^17 || ^18","react-dom":"^16.8 || ^17 || ^18"},"_npmOperationalInternal":{"tmp":"tmp/react-hooks_1.2.1-next.0_1654102085351_0.3448763198708098","host":"s3://npm-registry-packages"}},"1.2.1":{"name":"@10up/react-hooks","version":"1.2.1","author":"","license":"ISC","_id":"@10up/react-hooks@1.2.1","maintainers":[{"name":"fabiankaegy","email":"mail@fabian-kaegy.de"},{"name":"brandwaffle","email":"vhauri@gmail.com"},{"name":"eugene-manuilov","email":"eugene.manuilov@gmail.com"},{"name":"christianc1","email":"christian.m.chung@gmail.com"},{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},{"name":"joesnellpdx","email":"joesnellpdx@gmail.com"},{"name":"tlovett1","email":"tlovett88@gmail.com"},{"name":"devinle","email":"devin.leggett@gmail.com"}],"dist":{"shasum":"3879931af1d68178ae21b93d3c4b9f99bc684b31","tarball":"https://registry.npmjs.org/@10up/react-hooks/-/react-hooks-1.2.1.tgz","fileCount":82,"integrity":"sha512-bs/9TdosSzgK8IXV/LjrqHhHDRt478lz/ML9njLegoo5abmEmLEQWEkBt1FhXdwpijG3btBSGg/4ezxlgq8X4w==","signatures":[{"sig":"MEUCIBuQrpKe9UZZGk3i3orX3FnOEul7QPLWqyZaGRWl96b7AiEA0PDBBwwD4Ad1Z8wjLm/K1mfBQW6oRJ5L4vQJgscHQ+Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":125685,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJil5weACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqjGw//e0vH5RsEzUJG0XPJarJsbRIHizuTmizSDF68puayG2Y+hTEF\r\nYqxT4MqcRjWhBfIuJslSL+F/gZmLaNd8wDdzU8SzdneqD6GHwDyj+3vjombz\r\nLyafVzhh6iSqgJZTnbQqywCpW7HQKRdNZOFYVrv71PoxS2xfKAPgDJRVSlWO\r\newS4lWRSny9vvqLScHvon5/cFUoRY4E3jHJ6hvo3L/Pi9CuJxUb5PAHloWRk\r\n0rtMYfm3kwZlBnMgatw/k3JNOs4EiwzZZk0yox260QipCWQXj/LgVIv61SNW\r\n/X67KG7XocwZrjNnwCDCuuq9Hv1wGk1Gy1slEa0nEn0Lt2gQDQ7N/x6p5BN7\r\nwb9zPXMakkQUs/CedywHwhB/+J/D8B/8ezP+2dJ8o8i+jRJalzwyPaNN3Yhd\r\nsicQo1NosaNiqasqqJjkn4u7lLGwzMXS6nShE+ewsVhKeOvhsQ9qNZA/yybS\r\nO6VpngNU59q6iodRi/i+N3MejU4vlIfFqjumHuuwB/3rXplcu3Q9G09s33Gk\r\nilA7hSV0tv31zDpUzz4ZtLOjqlrGyrJMBCQTPo3nUlZVQov78Go2B203jJOo\r\nXFFdoksOmokXToH5F0tRRTiIvnHz3xEUog+ble3sN3fAmMNMAuF9g5CjVHsb\r\n7BhyyjefrAknts15tkI8lrUKeggeQFxTaBA=\r\n=K5tu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/react-hooks.js","module":"dist/react-hooks.mjs","exports":{".":{"import":"./dist/react-hooks.mjs","default":"./dist/react-hooks.mjs","require":"./dist/react-hooks.js"}},"gitHead":"903daef9054a05ec509e086f8ad29fd5404ea5dd","scripts":{"test":"jest --selectProjects dom ssr","build":"rollup -c","test:watch":"jest --selectProjects dom ssr --watch","create-hook":"plop"},"typings":"dist/react-hooks.d.ts","_npmUser":{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},"_npmVersion":"8.5.5","description":"Battle tested hooks that can be reused and are safe to use within SSR environments.","directories":{},"_nodeVersion":"16.15.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.1","plop":"^3.1.0","react":"^17.0.2","rollup":"^2.73.0","esbuild":"^0.14.39","ts-jest":"^27.1.4","react-dom":"^17.0.2","typescript":"^4.6.4","@types/jest":"^27.4.1","@types/react":"^17.0.45","rollup-plugin-dts":"^4.2.1","rollup-plugin-esbuild":"^4.9.1","@testing-library/react":"^12.1.5","@testing-library/jest-dom":"^5.16.4","@testing-library/user-event":"^13.5.0","@testing-library/react-hooks":"^8.0.0"},"peerDependencies":{"react":"^16.8 || ^17 || ^18","react-dom":"^16.8 || ^17 || ^18"},"_npmOperationalInternal":{"tmp":"tmp/react-hooks_1.2.1_1654103070306_0.9820655219422156","host":"s3://npm-registry-packages"}},"1.2.2":{"name":"@10up/react-hooks","version":"1.2.2","author":"","license":"ISC","_id":"@10up/react-hooks@1.2.2","maintainers":[{"name":"fabiankaegy","email":"mail@fabian-kaegy.de"},{"name":"brandwaffle","email":"vhauri@gmail.com"},{"name":"eugene-manuilov","email":"eugene.manuilov@gmail.com"},{"name":"christianc1","email":"christian.m.chung@gmail.com"},{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},{"name":"joesnellpdx","email":"joesnellpdx@gmail.com"},{"name":"tlovett1","email":"tlovett88@gmail.com"},{"name":"devinle","email":"devin.leggett@gmail.com"}],"dist":{"shasum":"cc2fbe63fee6b84f73f66a4b86883409bbce2050","tarball":"https://registry.npmjs.org/@10up/react-hooks/-/react-hooks-1.2.2.tgz","fileCount":82,"integrity":"sha512-ucnpDnqYFt8yYm6JNdQeKAjG4t9t4a6sijvqpl9B9gr2G+v1K0qZuKUfazhuYfXTw3lY5SOYNaN0uTrXaZaY+g==","signatures":[{"sig":"MEYCIQCq8fstMqQwcQV6miyAb5S4bUgOscYK7LiFH1M9jOpnSgIhAPr6HU/hw36vHQPHXEooBZOnBcDzcHCqUphJ5BQaUFbk","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":125685,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJil584ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqqJw//aFMLo16bS/Nvm3xOg+hWSJZ23JpAg6qw5Ym+85k4JTpIyWqY\r\ns0vyeaCVKOUYlNxvb+P7Y5D1mwLntcX4CAP+cHfTqE+bt2boqPER2GtLBU0o\r\nR9WLwwKqq4/ADPMKYhRC2FTouniAxcSFCj5iyDzBwrU35xqwOxB0Dl3j4/me\r\nVMKcGWgxDt3TmGo1pLxFbcPWpExy5XLSKl0W0uxfwjw0udqudIwnQUhvA/Fa\r\nrC1+2n3IGX9/Stgw82tawQW57N6zMlMPNC+dpAwIBHT6zg5NQVSSYOxl1612\r\nDS78t40zgtpgw3sGtYvAFpoZuzzkltyVQKxtvg/GgHk+oe5z3hTUb71HRtGi\r\n5Uywj2XfokfLR5VczKqCp7kNBp9UB/i8vV5WqQHkUfppQrc1YvfJg1EDNj1s\r\nKi9qc6O508VZWxXApo+KHmy2kczEUab3PAEoUCCWSKqwn2jNwa4jh7+EqpaL\r\n0SedihoM/zr7AjcoWgfiMjVKMOAK2sB9mswShLbzxB6zc6bnF3pPaLH6zs/C\r\naymHvavpor1/I6nxm6Exrj2fjoxVaCDzf620Mfimv71SqMsgwp2gjX8SNFCj\r\nPHRHPKaPLpvsYlKl30wvfc+jbOAfvye/Uy3gXK2nADOwC+63TiNqYmZgj+Ay\r\niH5I1IkleUYo+txMWyh1sVxoe7lJf9F510M=\r\n=/5CB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/react-hooks.js","module":"dist/react-hooks.mjs","exports":{".":{"import":"./dist/react-hooks.mjs","default":"./dist/react-hooks.mjs","require":"./dist/react-hooks.js"}},"gitHead":"90d21c9e6e59c9c26e30c3758f75d7b06bf98d16","scripts":{"test":"jest --selectProjects dom ssr","build":"rollup -c","test:watch":"jest --selectProjects dom ssr --watch","create-hook":"plop"},"typings":"dist/react-hooks.d.ts","_npmUser":{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},"_npmVersion":"8.5.5","description":"Battle tested hooks that can be reused and are safe to use within SSR environments.","directories":{},"_nodeVersion":"16.15.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.1","plop":"^3.1.0","react":"^17.0.2","rollup":"^2.73.0","esbuild":"^0.14.39","ts-jest":"^27.1.4","react-dom":"^17.0.2","typescript":"^4.6.4","@types/jest":"^27.4.1","@types/react":"^17.0.45","rollup-plugin-dts":"^4.2.1","rollup-plugin-esbuild":"^4.9.1","@testing-library/react":"^12.1.5","@testing-library/jest-dom":"^5.16.4","@testing-library/user-event":"^13.5.0","@testing-library/react-hooks":"^8.0.0"},"peerDependencies":{"react":"^16.8 || ^17 || ^18","react-dom":"^16.8 || ^17 || ^18"},"_npmOperationalInternal":{"tmp":"tmp/react-hooks_1.2.2_1654103864711_0.19966659939746645","host":"s3://npm-registry-packages"}},"1.2.3":{"name":"@10up/react-hooks","version":"1.2.3","author":"","license":"ISC","_id":"@10up/react-hooks@1.2.3","maintainers":[{"name":"fabiankaegy","email":"mail@fabian-kaegy.de"},{"name":"brandwaffle","email":"vhauri@gmail.com"},{"name":"eugene-manuilov","email":"eugene.manuilov@gmail.com"},{"name":"christianc1","email":"christian.m.chung@gmail.com"},{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},{"name":"joesnellpdx","email":"joesnellpdx@gmail.com"},{"name":"tlovett1","email":"tlovett88@gmail.com"},{"name":"devinle","email":"devin.leggett@gmail.com"}],"dist":{"shasum":"60bb239e1a6abab53ab1f6ce9a680ec7953d601b","tarball":"https://registry.npmjs.org/@10up/react-hooks/-/react-hooks-1.2.3.tgz","fileCount":82,"integrity":"sha512-dVr1mChWG3y0EA5/DbNPYPd9Lv4UmmeZfLxG7j2iB5zCD0UYqUNG4g4v0nyV3QJVity+kvtEa5GIgttFbMnsbg==","signatures":[{"sig":"MEUCICVN3d+ojhiM1VuAo3igDNueiIGkZIaTtdL4GqzYluMpAiEA//siPMse91jBY5lKc5wOzat67l3olMCIYihUl4D7qYs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":125685,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJil6XWACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmomkQ//d4P53KADRSobEzreqXf4TCM6NSrbS9wNLciRGtZz3JMIrO0V\r\nCX1hSGic6EB3QCg+uxtsFLFlam7Y+xZTqe52taHgTDrzqr5d+cOaR6zVzuhF\r\n2Mf8EcXYqH6HoGmGbYBbqPX1jq+jDxMBJPEfmtXqPSFpf0QC0SQaJJtJw84m\r\nrnkWyH1vqvDhZKgCB6GhWzF9k/v7JC+CIByeHdlIO28M2Bi17mlG18i5ncPD\r\nvr3MzwEq0sTsL8YQLMTh6oEWK4FqjyfClA+e0N28Aw4fGli8oHYCEVRhk9Gz\r\nKCU4eY4XQNdphoHXWOy/cuEd+FBsmMQ8x+n94ZNG4sspMHSOG5yW5/jXKUap\r\nMjfOV9WY9tSel6MR1t1KhungRNI5d0B+5SN2IVAW+8K8DdqTGP2pjgM8lPQ1\r\n1DPUlyjhEjH73Y5wZthXlqQd57YGKpPpMgMtx/mjUI0+/U0/PBOunObZC0RX\r\n8sGUVC0lePwgLMs/5d1JEdIw9lNBUrNy11f4N+zlxz2EyWnL6et8BSDyVl6k\r\nRN8Q8Rzc5RypnT49u0fcOkzzfZiGtG4PF/EGAt8uYuD30g8qeRIdveH57Twt\r\nE8G6PPABabNC9dfK6TCQquHS5W41y2lgIM5fHf8NC0vki40Xv2dkYis5SjNb\r\n5D+usAUr8qklEglrksuT2DgOA1ghJB/LJS0=\r\n=VnZk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/react-hooks.js","module":"dist/react-hooks.mjs","exports":{".":{"import":"./dist/react-hooks.mjs","default":"./dist/react-hooks.mjs","require":"./dist/react-hooks.js"}},"gitHead":"af24701199c401aeb2c63e107a0f174f5e489a50","scripts":{"test":"jest --selectProjects dom ssr","build":"rollup -c","test:watch":"jest --selectProjects dom ssr --watch","create-hook":"plop"},"typings":"dist/react-hooks.d.ts","_npmUser":{"name":"nicholasio","email":"nicholasio.oliveira@gmail.com"},"_npmVersion":"8.5.5","description":"Battle tested hooks that can be reused and are safe to use within SSR environments.","directories":{},"_nodeVersion":"16.15.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.1","plop":"^3.1.0","react":"^17.0.2","rollup":"^2.73.0","esbuild":"^0.14.39","ts-jest":"^27.1.4","react-dom":"^17.0.2","typescript":"^4.6.4","@types/jest":"^27.4.1","@types/react":"^17.0.45","rollup-plugin-dts":"^4.2.1","rollup-plugin-esbuild":"^4.9.1","@testing-library/react":"^12.1.5","@testing-library/jest-dom":"^5.16.4","@testing-library/user-event":"^13.5.0","@testing-library/react-hooks":"^8.0.0"},"peerDependencies":{"react":"^16.8 || ^17 || ^18","react-dom":"^16.8 || ^17 || ^18"},"_npmOperationalInternal":{"tmp":"tmp/react-hooks_1.2.3_1654105557786_0.5360899592843762","host":"s3://npm-registry-packages"}}},"time":{"created":"2022-05-13T12:54:42.209Z","modified":"2026-08-21T19:38:53.696Z","1.0.0":"2022-05-13T12:54:42.456Z","1.0.1-alpha.0":"2022-05-16T13:52:49.514Z","1.0.1-alpha.1":"2022-05-16T15:53:04.280Z","1.0.1-alpha.2":"2022-05-17T22:59:33.954Z","1.0.1-alpha.3":"2022-05-19T03:53:07.326Z","1.0.1-alpha.4":"2022-05-23T16:15:53.673Z","1.0.1-alpha.5":"2022-05-24T12:07:46.589Z","1.0.1-alpha.6":"2022-05-24T14:32:17.023Z","1.0.1-alpha.7":"2022-05-25T19:06:23.448Z","1.0.1-alpha.8":"2022-05-30T13:11:33.995Z","1.1.0":"2022-05-30T14:26:10.736Z","1.2.0":"2022-06-01T14:45:55.663Z","1.2.1-next.0":"2022-06-01T16:48:05.518Z","1.2.1":"2022-06-01T17:04:30.454Z","1.2.2":"2022-06-01T17:17:44.937Z","1.2.3":"2022-06-01T17:45:57.994Z"},"license":"ISC","description":"Battle tested hooks that can be reused and are safe to use within SSR environments.","maintainers":[{"email":"mail@fabian-kaegy.de","name":"fabiankaegy"},{"email":"eugene.manuilov@gmail.com","name":"eugene-manuilov"},{"email":"christian.m.chung@gmail.com","name":"christianc1"},{"email":"nicholasio.oliveira@gmail.com","name":"nicholasio"},{"email":"joesnellpdx@gmail.com","name":"joesnellpdx"},{"email":"devin.leggett@gmail.com","name":"devinle"},{"email":"daryll.doyle@10up.com","name":"darylldoyle"},{"email":"jeffpaul@hotmail.com","name":"jeffpaul"}],"readme":"# Hooks\n\nBattle tested hooks that can be reused and are safe to use within SSR environments.\n\n## List\n\n* [`useCurrentBreakpoint`](src/useCurrentBreakpoint/README.md) - Context + Hook to track current CSS breakpoint by leveraging `matchMedia`.\n* [`useDebounce`](src/useDebounce/README.md) - Hook to debounce a quickly changing value, so it doesn't re-render as much.\n* [`useDebouncedCallback`](src/useDebouncedCallback/README.md) - Hook to debounce an effect that's quickly called.\n* [`useEffectAfterRender`](src/useEffectAfterRender/README.md) - Hook that only dispatches the effect if the component is mounted.\n* [`useEvent`](src/useEvent/README.md) - Hook for `addEventListener` to any element.\n* [`useFocusTrap`](src/useFocusTrap/README.md) - Hook to trap focus inside a DOM element. This is great for trapping the focus within a Modal for example.\n* [`useIsMounted`](src/useIsMounted/README.md) - Hook that returns a function that will yield the current mount state of the component.\n* [`useIsTransitioning`](src/useIsTransitioning/README.md) - Context + Hook that tracks `routeChange` events from [Next's Router](https://nextjs.org/docs/api-reference/next/router).\n* [`useKey`](src/useKey/README.md) - A convenient wrapper around [`useEvent`](src/useEvent/README.md) to handle key presses allowing to send either the key being watched, a function to evaluate or any truthy/falsy value.\n* [`useOnClickOutside`](src/useOnClickOutside/README.md) - Hook to add a handler to be executed when the user clicks outside a given ref.\n* [`useOnMount`](src/useOnMount/README.md) - Hook to add a handler to be executed when the component mounts.\n* [`useOnWindowResize`](src/useOnWindowResize/README.md) - Hook to attach a handler to window resize.\n* [`useSafeLayoutEffect`](src/useSafeLayoutEffect/README.md) - Alias hook to safely use `useLayoutEffect` within SSR environments.\n* [`useScript`](src/useScript/README.md) - Hook to append a script into the page, preventing the same script to be included more than once.\n\n## Development\n\nYou can create a new hook by running `npm run create-hook hookName` which will bootstrap the files for you. You might want to run `npm run create-hook` without any options if you want to see all possible inputs.\n","readmeFilename":"README.md"}