{"_id":"react-axe","_rev":"64-9203f7cc6b9a6f78ac5aa9e812ffac71","name":"react-axe","description":"Dynamic accessibility analysis for React using axe-core","dist-tags":{"latest":"3.5.4","next":"3.5.3-canary.44b2e9fd"},"versions":{"1.0.0":{"name":"react-axe","version":"1.0.0","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["accessibility","a11y","lint","test"],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MIT","dependencies":{"axe-core":"^1.1.1"},"gitHead":"7dc9f989baffa8e52255182d6d2e13a721ba8088","_id":"react-axe@1.0.0","_shasum":"a144dedd2b2efbc0caa898f15b05cf372b84bc02","_from":".","_npmVersion":"2.7.5","_nodeVersion":"0.12.2","_npmUser":{"name":"dylanb","email":"dylan@barrell.com"},"dist":{"shasum":"a144dedd2b2efbc0caa898f15b05cf372b84bc02","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-1.0.0.tgz","integrity":"sha512-0sNCPRt4uSOSG/0AOlDS22TRfI9WOnw0HRbEnC9z6ODi2Bhu/CH5Jy+BNHQIajCP4PZaDxVl8GoE7BMT+/T/6w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCH1XYo+W9qM+eU04JRsnaQ+meAkTUseAaGtv7j8qPsRoCIQCpWODiE9Z4Krlsdo6ocAv4dmk/2NDDgeJSdrRzOr6EjA=="}]},"maintainers":[{"name":"dylanb","email":"dylan@barrell.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/react-axe-1.0.0.tgz_1462842581434_0.6049819018226117"},"directories":{},"deprecated":"deprecated"},"1.0.1":{"name":"react-axe","version":"1.0.1","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["accessibility","a11y","lint","test"],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MIT","dependencies":{"axe-core":"^1.1.1"},"gitHead":"f21992d32df5b43a64e4fd2223d34007b9fe9d55","_id":"react-axe@1.0.1","_shasum":"14daf4a80c5eab954c22b4421aed610093397b30","_from":".","_npmVersion":"2.7.5","_nodeVersion":"0.12.2","_npmUser":{"name":"dylanb","email":"dylan@barrell.com"},"dist":{"shasum":"14daf4a80c5eab954c22b4421aed610093397b30","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-1.0.1.tgz","integrity":"sha512-o8hocfguDmC5pySa4AIHS3+Xz78t09ls3tXyCpshQa19jAj7HyQwf4Xj/o9Ls6wlRWpyhcW2hhF61bFbsVHNpQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDXwz5zvDN5xgE/gVX73VTr/E5qNiWnHSQRMfFH4Jal7wIhANKck94nehTv6aU+SZ+L8F6ijTqupN9BID8WczFHGR19"}]},"maintainers":[{"name":"dylanb","email":"dylan@barrell.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/react-axe-1.0.1.tgz_1462985468305_0.5821978515014052"},"directories":{},"deprecated":"deprecated"},"1.0.2":{"name":"react-axe","version":"1.0.2","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["accessibility","a11y","lint","test"],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MIT","dependencies":{"axe-core":"^1.1.1"},"repository":{"type":"git","url":"https://github.com/dylanb/react-axe"},"gitHead":"05887c62cee989d8bd4dd21d990a8d4b983be118","bugs":{"url":"https://github.com/dylanb/react-axe/issues"},"homepage":"https://github.com/dylanb/react-axe","_id":"react-axe@1.0.2","_shasum":"75b13c89d2b007aab07362932db31502f4295bec","_from":".","_npmVersion":"2.13.2","_nodeVersion":"2.5.0","_npmUser":{"name":"dylanb","email":"dylan@barrell.com"},"maintainers":[{"name":"dylanb","email":"dylan@barrell.com"}],"dist":{"shasum":"75b13c89d2b007aab07362932db31502f4295bec","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-1.0.2.tgz","integrity":"sha512-uhgPpT0YNX71sRmZ2oAfg7BYf72aEvgnRgZdpdfugszGAbQ5Fmc3umNLjS8zGBhwdfZ02etnseEB8DAchvQ89w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHlFLYFCOG/PeDtT+dLzx3j7D8yvdDxevA0yLP/oLv8GAiALl7LGM+ff/ekX41P2HuIQorwFHriPAipoauAjPNBLbA=="}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/react-axe-1.0.2.tgz_1462991376506_0.4335126818623394"},"directories":{},"deprecated":"deprecated"},"1.0.3":{"name":"react-axe","version":"1.0.3","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["accessibility","a11y","lint","test"],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MIT","dependencies":{"axe-core":"^1.1.1"},"repository":{"type":"git","url":"git+https://github.com/dylanb/react-axe.git"},"gitHead":"0a4d8c994700bde1e26f508a36d144f0de56d854","bugs":{"url":"https://github.com/dylanb/react-axe/issues"},"homepage":"https://github.com/dylanb/react-axe#readme","_id":"react-axe@1.0.3","_shasum":"1aea8ee1ff96d6e9a4cc5f7244d51303bb30d0fc","_from":".","_npmVersion":"2.14.7","_nodeVersion":"4.2.2","_npmUser":{"name":"dylanb","email":"dylan@barrell.com"},"maintainers":[{"name":"dylanb","email":"dylan@barrell.com"}],"dist":{"shasum":"1aea8ee1ff96d6e9a4cc5f7244d51303bb30d0fc","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-1.0.3.tgz","integrity":"sha512-Ga5Nm3fgRpS/KpN4TwWlrYd/DDVhqU6R4usiulezV6zqSeYyyZ27k8xy3B3uIE/kr2okPwkVQksGxibaUuoVLw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEEIsXOSuM1Rlv5/PkklcDelsujN/FHusPH0tmfPMEReAiBvIH6pkKxDaM2q1s/vMYmYNryvMETGaUkoWxVPKGH34A=="}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/react-axe-1.0.3.tgz_1462997272100_0.7064593394752592"},"directories":{},"deprecated":"deprecated"},"1.0.4":{"name":"react-axe","version":"1.0.4","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["accessibility","a11y","lint","test"],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MIT","dependencies":{"axe-core":"^2.0.5"},"repository":{"type":"git","url":"git+https://github.com/dylanb/react-axe.git"},"gitHead":"0a4d8c994700bde1e26f508a36d144f0de56d854","bugs":{"url":"https://github.com/dylanb/react-axe/issues"},"homepage":"https://github.com/dylanb/react-axe#readme","_id":"react-axe@1.0.4","_shasum":"02ab3fee6e1217337bf540452005cc7b457b82ed","_from":".","_npmVersion":"2.14.7","_nodeVersion":"4.2.2","_npmUser":{"name":"dylanb","email":"dylan@barrell.com"},"maintainers":[{"name":"dylanb","email":"dylan@barrell.com"},{"name":"marcysutton","email":"marcy.sutton@deque.com"}],"dist":{"shasum":"02ab3fee6e1217337bf540452005cc7b457b82ed","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-1.0.4.tgz","integrity":"sha512-eVr7AGdTI5KIW8eZqlHGloADp60uOLG2yxGRpxgJMWxAAq8M6/nJGSVAABehoj72VtDG3e2S0RbTRYUMTSok0A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCnDIE308na4zyqSaY+Fa+bN6it529I0++HiiDZ+TeNfAIhAMWZvpevzcxHxV7NxyQGSTYv4UIxfNbavXAhunV0ut1R"}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/react-axe-1.0.4.tgz_1468613989143_0.7368164150975645"},"directories":{},"deprecated":"deprecated"},"1.0.5":{"name":"react-axe","version":"1.0.5","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["accessibility","a11y","lint","test"],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MIT","dependencies":{"axe-core":"^2.0.5"},"repository":{"type":"git","url":"git+https://github.com/dylanb/react-axe.git"},"gitHead":"0a4d8c994700bde1e26f508a36d144f0de56d854","bugs":{"url":"https://github.com/dylanb/react-axe/issues"},"homepage":"https://github.com/dylanb/react-axe#readme","_id":"react-axe@1.0.5","_shasum":"8db2c1bd90451ac3bbd8b0a11a887b39a86321e3","_from":".","_npmVersion":"2.14.7","_nodeVersion":"4.2.2","_npmUser":{"name":"dylanb","email":"dylan@barrell.com"},"maintainers":[{"name":"dylanb","email":"dylan@barrell.com"},{"name":"marcysutton","email":"marcy.sutton@deque.com"}],"dist":{"shasum":"8db2c1bd90451ac3bbd8b0a11a887b39a86321e3","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-1.0.5.tgz","integrity":"sha512-lZO0ixb1vBh3u08rCow+59ZQXxEYs3IZI0RIRS4pKK0VFoNyGaJVPWUOGxom/DMtHRW/UJOAywhy0ELwU0vlDA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCCKuetWToRTPWsAFDEI3VoswhL2+tkIg3xfMRQfGivmAIgDl2Ahk0VhdbcJz0PdNXlo4+03MfESNpZ+ksgW+nlIT8="}]},"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/react-axe-1.0.5.tgz_1468614149746_0.9538988538552076"},"directories":{},"deprecated":"deprecated"},"1.0.6":{"name":"react-axe","version":"1.0.6","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["accessibility","a11y","lint","test"],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MIT","dependencies":{"axe-core":"~2.0.5"},"repository":{"type":"git","url":"git+https://github.com/dylanb/react-axe.git"},"gitHead":"325ac6244ba8c300d969daac5f17307ccb9409c1","bugs":{"url":"https://github.com/dylanb/react-axe/issues"},"homepage":"https://github.com/dylanb/react-axe#readme","_id":"react-axe@1.0.6","_shasum":"a3c11f0bb0c8f652d402ee5734bafa64a99881f7","_from":".","_npmVersion":"2.15.1","_nodeVersion":"4.4.3","_npmUser":{"name":"dylanb","email":"dylan@barrell.com"},"dist":{"shasum":"a3c11f0bb0c8f652d402ee5734bafa64a99881f7","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-1.0.6.tgz","integrity":"sha512-osXa96m+IyZP2oy+CgxGD7i+lga5dUVGbqBlOVTVJE/X0l9SxhWEDmVeH7FFAocSWchLb/j2IlrM7nYeekn1bA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCYosb6sp+Se7JShfvNbYE6F7M6PREg84Xcscy8M+aolgIgCYymzUGvpMoI14WmuzkxGW+S0rRscdKh0BzMCQqU+qg="}]},"maintainers":[{"name":"dylanb","email":"dylan@barrell.com"},{"name":"marcysutton","email":"marcy.sutton@deque.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/react-axe-1.0.6.tgz_1470321058094_0.12434520176611841"},"directories":{},"deprecated":"deprecated"},"1.0.7":{"name":"react-axe","version":"1.0.7","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["accessibility","a11y","lint","test"],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MIT","dependencies":{"axe-core":"~2.0.5"},"repository":{"type":"git","url":"https://github.com/dylanb/react-axe"},"gitHead":"0148a5a06a87c691f401be54bd13ca6b8224f17b","bugs":{"url":"https://github.com/dylanb/react-axe/issues"},"homepage":"https://github.com/dylanb/react-axe","_id":"react-axe@1.0.7","_shasum":"b4485e30fea4949b07d3b49a91d63f83b41ba9e0","_from":".","_npmVersion":"2.7.5","_nodeVersion":"0.12.2","_npmUser":{"name":"dylanb","email":"dylan@barrell.com"},"dist":{"shasum":"b4485e30fea4949b07d3b49a91d63f83b41ba9e0","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-1.0.7.tgz","integrity":"sha512-q3DVgqPR2Ks9ZWIRUunb6f1qz4RdtNhmFP0d5jVdn5Nc21ueLl7FrOxeBgLkeqvGvkVta9oeRB5sjldTUHBTHA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGLh4SE5JOx1ax0tYoytAFv3n+MQdFY4skAIBsrtubM4AiEAhHO62E6z6FREudDsZilYKVFWPC6Eq1L9VodQYquJMuQ="}]},"maintainers":[{"name":"dylanb","email":"dylan@barrell.com"},{"name":"marcysutton","email":"marcy.sutton@deque.com"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/react-axe-1.0.7.tgz_1471104945541_0.722275783540681"},"directories":{},"deprecated":"deprecated"},"2.0.0":{"name":"react-axe","version":"2.0.0","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MIT","dependencies":{"axe-core":"~2.0.5"},"repository":{"type":"git","url":"git+https://github.com/dylanb/react-axe.git"},"gitHead":"3edfa76b8fbb88dc436c696b582a02eb81aeb6c4","bugs":{"url":"https://github.com/dylanb/react-axe/issues"},"homepage":"https://github.com/dylanb/react-axe#readme","_id":"react-axe@2.0.0","_shasum":"ea41dfa7d333e35cca05cab9c09609ac248e9fc9","_from":".","_npmVersion":"2.14.7","_nodeVersion":"4.2.2","_npmUser":{"name":"dylanb","email":"dylan@barrell.com"},"maintainers":[{"name":"dylanb","email":"dylan@barrell.com"},{"name":"marcysutton","email":"marcy.sutton@deque.com"}],"dist":{"shasum":"ea41dfa7d333e35cca05cab9c09609ac248e9fc9","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-2.0.0.tgz","integrity":"sha512-LzW6SomM79S8aMagcUvGsJ0FG+jJnQw0qQ6qaB0MTGsMbMpWXsNe0o3NOgNFaQF+jA3ERCI9lpt53ohgSscVWQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD6LW+PujAoRYlkcs0VQuCNRA1cSWNMYDDkN4RpfiGAWAIgJp+UhWoDzqvaSsRv2+ftBoRXQJ48OE8zqCg57a65rpg="}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/react-axe-2.0.0.tgz_1471810642677_0.5687987715937197"},"directories":{},"deprecated":"deprecated"},"2.0.1":{"name":"react-axe","version":"2.0.1","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MIT","dependencies":{"axe-core":"~2.0.5"},"repository":{"type":"git","url":"git+https://github.com/dylanb/react-axe.git"},"gitHead":"f89dd1ffd87fc9ce334e1182e0d7462decd606fd","bugs":{"url":"https://github.com/dylanb/react-axe/issues"},"homepage":"https://github.com/dylanb/react-axe#readme","_id":"react-axe@2.0.1","_shasum":"d10bc69954e7010a85bf3fb6ea7fab50dc757d20","_from":".","_npmVersion":"2.14.7","_nodeVersion":"4.2.2","_npmUser":{"name":"dylanb","email":"dylan@barrell.com"},"maintainers":[{"name":"dylanb","email":"dylan@barrell.com"},{"name":"marcysutton","email":"marcy.sutton@deque.com"}],"dist":{"shasum":"d10bc69954e7010a85bf3fb6ea7fab50dc757d20","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-2.0.1.tgz","integrity":"sha512-+XXRiKKsofZ0W9zqZgBXF1UTA1yoX5RE6oC/OdQoq+1J/DLKDAzbrG4trS+hI9fQn6ScA5/MwwxyHVC7fzm7WQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFEtv7BIguDJ7q7MMS1b14FZGZhBEoQGRDX15ilVDuBXAiEA4I2Vwio697vK0T2CFl3hl4cyDAgnYfEMXbQ1ut2LGGM="}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/react-axe-2.0.1.tgz_1471840839818_0.3283194229006767"},"directories":{},"deprecated":"deprecated"},"2.1.0":{"name":"react-axe","version":"2.1.0","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","eslint":"eslint *.js"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MIT","dependencies":{"axe-core":"~2.0.5"},"devDependencies":{"eslint":"~3.6.0"},"repository":{"type":"git","url":"git+https://github.com/dylanb/react-axe.git"},"gitHead":"8f5996e9b840784904bf5090a8866f0c353e7ff2","bugs":{"url":"https://github.com/dylanb/react-axe/issues"},"homepage":"https://github.com/dylanb/react-axe#readme","_id":"react-axe@2.1.0","_shasum":"d360c91830741821cff0823ec1e128f3a4eb8198","_from":".","_npmVersion":"2.14.7","_nodeVersion":"4.2.2","_npmUser":{"name":"dylanb","email":"dylan@barrell.com"},"maintainers":[{"name":"dylanb","email":"dylan@barrell.com"},{"name":"marcysutton","email":"marcy.sutton@deque.com"}],"dist":{"shasum":"d360c91830741821cff0823ec1e128f3a4eb8198","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-2.1.0.tgz","integrity":"sha512-e0Jos4PohZM4NhVL6/FAPeKBm9UfgvkQb6+9y43IVbJPztJqA7lJuGGaOHaYSINRIU1tyXGCj1/aXsksInAWqw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB04zl5DsInWtE31Xb6GU86OWBQjZjCi92n1GhrldQhEAiEAyAM8x3/mxBMP94jgwx3Au00wIn1MynecXPKW+cS9HWA="}]},"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/react-axe-2.1.0.tgz_1475072875052_0.0116953004617244"},"directories":{},"deprecated":"deprecated"},"2.1.1":{"name":"react-axe","version":"2.1.1","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","eslint":"eslint *.js"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MIT","dependencies":{"axe-core":"~2.1.7"},"devDependencies":{"eslint":"~3.6.0"},"repository":{"type":"git","url":"git+https://github.com/dylanb/react-axe.git"},"gitHead":"bbdaa629332ae8beaaf769f227a915100e20d8bb","bugs":{"url":"https://github.com/dylanb/react-axe/issues"},"homepage":"https://github.com/dylanb/react-axe#readme","_id":"react-axe@2.1.1","_shasum":"a5ccaee32a7ed0a3e75aa1024b2a031487a6be4c","_from":".","_npmVersion":"2.14.7","_nodeVersion":"4.2.2","_npmUser":{"name":"dylanb","email":"dylan@barrell.com"},"maintainers":[{"name":"dylanb","email":"dylan@barrell.com"},{"name":"marcysutton","email":"marcy.sutton@deque.com"}],"dist":{"shasum":"a5ccaee32a7ed0a3e75aa1024b2a031487a6be4c","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-2.1.1.tgz","integrity":"sha512-Ri1TaIHP8qzr6QoMSCpx7IWi5P2E4JJMJA7F+RbP33kVK6C7ey6GK+SjMYYfGKtdEKQ48CtKUziOoPjEwI4z/g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD0qUJ2RjP4jchtcVgM83tAblUyjCP8+xPN42Ea6iQb+AIgG6SoL9wuyzd5daWndSL7XOQb3kzpPW/7cOU+/y42AEc="}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/react-axe-2.1.1.tgz_1481667530717_0.5575306543614715"},"directories":{},"deprecated":"deprecated"},"2.1.2":{"name":"react-axe","version":"2.1.2","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","eslint":"eslint *.js"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MIT","dependencies":{"axe-core":"~2.2.0"},"devDependencies":{"eslint":"~3.6.0"},"repository":{"type":"git","url":"https://github.com/dylanb/react-axe"},"gitHead":"3d79ea802ce3a5e7cb2d1a2f484e4f6f4fd4f5c2","bugs":{"url":"https://github.com/dylanb/react-axe/issues"},"homepage":"https://github.com/dylanb/react-axe","_id":"react-axe@2.1.2","_shasum":"29889ed1f93ca47f4e0a15f9ac5e63b4f96fcb87","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.2","_npmUser":{"name":"dylanb","email":"dylan@barrell.com"},"maintainers":[{"name":"dylanb","email":"dylan@barrell.com"},{"name":"marcysutton","email":"marcy.sutton@deque.com"}],"dist":{"shasum":"29889ed1f93ca47f4e0a15f9ac5e63b4f96fcb87","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-2.1.2.tgz","integrity":"sha512-WUqBGPYi/w8PUb2+ryRHTdDatc9iKTR+9qNmG3uDOxnMkkS5QYnqDJMn972oop4lZmicImEq3UVZXoQyUSBUfg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCkrLtHCp2jC3HsiT7e2QU4x9Grjw4e6OpoiL7VqB++fAIhAM4xHdYFifhwZ/NGzfrQW1KRMv/BmooiEq4X2PohHXZY"}]},"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/react-axe-2.1.2.tgz_1493677444821_0.8027466642670333"},"directories":{},"deprecated":"deprecated"},"2.1.3":{"name":"react-axe","version":"2.1.3","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","eslint":"eslint *.js"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MIT","dependencies":{"axe-core":"~2.2.1"},"devDependencies":{"eslint":"~3.6.0"},"repository":{"type":"git","url":"https://github.com/dylanb/react-axe"},"gitHead":"3d79ea802ce3a5e7cb2d1a2f484e4f6f4fd4f5c2","bugs":{"url":"https://github.com/dylanb/react-axe/issues"},"homepage":"https://github.com/dylanb/react-axe","_id":"react-axe@2.1.3","_shasum":"a98f15a565d08402905e64daacc6734dbef444c9","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.3","_npmUser":{"name":"dylanb","email":"dylan@barrell.com"},"maintainers":[{"name":"dylanb","email":"dylan@barrell.com"},{"name":"marcysutton","email":"marcy.sutton@deque.com"}],"dist":{"shasum":"a98f15a565d08402905e64daacc6734dbef444c9","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-2.1.3.tgz","integrity":"sha512-3SWuFvycGp5lBviUsXTu+gXXgMybeDraopQA2on9GqdCZ2ZgMFuGSoZj+BQlntPY6yK4/B3QcJn+l3U7n1XlNw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHZOEIN3XRQ6fVpJZfbup7rYtSNMA6M4WueHC0AsvaWoAiEA5oZWZHxOnmbhKIyZ1wQzzORbnKfKSqPhlWU0j5J74io="}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe-2.1.3.tgz_1495620622224_0.10253939032554626"},"directories":{},"deprecated":"deprecated"},"2.1.4":{"name":"react-axe","version":"2.1.4","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","eslint":"eslint *.js"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"~2.2.1"},"devDependencies":{"eslint":"~3.6.0"},"repository":{"type":"git","url":"https://github.com/dequelabs/react-axe"},"gitHead":"efc57383f5a20fb857c4f6819afc9cc9ab907dfa","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe","_id":"react-axe@2.1.4","_shasum":"619e2bd2f6dd6026c90ad43b9c0243b7ab9e51c3","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.3","_npmUser":{"name":"dylanb","email":"dylan@barrell.com"},"maintainers":[{"name":"dylanb","email":"dylan@barrell.com"},{"name":"marcysutton","email":"marcy.sutton@deque.com"}],"dist":{"shasum":"619e2bd2f6dd6026c90ad43b9c0243b7ab9e51c3","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-2.1.4.tgz","integrity":"sha512-ZWNNkpBOPk6wIPv6cvgDdwJ/MA1o30jEtU84sGthuRBn/sAu4Np9dsVRkRhKaQug99+mSKuqKqvez+0vvc3QTQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD6ofvPeX0s7mwKqYhuo/lNXdn/bADJw46oH+sWUhOi/QIhAO82m6gPib3CwkAe21hSOM+sxM9BQgxL5zYMwOAO9ZvS"}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe-2.1.4.tgz_1495745932331_0.14473255537450314"},"directories":{},"deprecated":"deprecated"},"2.1.5":{"name":"react-axe","version":"2.1.5","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","eslint":"eslint *.js"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"~2.2.3"},"devDependencies":{"eslint":"~3.6.0"},"repository":{"type":"git","url":"https://github.com/dequelabs/react-axe"},"gitHead":"008dfb952c95ea9f7703e45a7552a110fa0cc5d8","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe","_id":"react-axe@2.1.5","_shasum":"b0f9107a452884bc3143b4b089b5fbfce35500d3","_from":".","_npmVersion":"2.15.11","_nodeVersion":"4.8.3","_npmUser":{"name":"dylanb","email":"dylan@barrell.com"},"maintainers":[{"name":"dylanb","email":"dylan@barrell.com"},{"name":"marcysutton","email":"marcy.sutton@deque.com"}],"dist":{"shasum":"b0f9107a452884bc3143b4b089b5fbfce35500d3","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-2.1.5.tgz","integrity":"sha512-k7q1SiWDYHE2uIv+4PNtkpZpQ6K3FvoAvzmJwPBmN4/uwwRrMg+uRY7zP6VD0WPpA1FjljtmhAsjZ5+8ibvChA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFbtuyARm9HUvK98a2P8tOTg1wVJwzQGTL2Bkq7h+WcRAiEAt1efb/WL9etc40tdf+uLnxIx40hhlQMLqkEUjLu103M="}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe-2.1.5.tgz_1496668549392_0.0692960328888148"},"directories":{},"deprecated":"deprecated"},"2.1.6":{"name":"react-axe","version":"2.1.6","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","eslint":"eslint *.js"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"~2.2.3"},"devDependencies":{"eslint":"~3.6.0"},"repository":{"type":"git","url":"https://github.com/dequelabs/react-axe"},"gitHead":"31aa5ebfdf31a307f474c0c5d356c420ee5036f8","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe","_id":"react-axe@2.1.6","_shasum":"71a055fcee381593c54fcdc801a2018d86882e14","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.3","_npmUser":{"name":"dylanb","email":"dylan@barrell.com"},"maintainers":[{"name":"dylanb","email":"dylan@barrell.com"},{"name":"marcysutton","email":"marcy.sutton@deque.com"}],"dist":{"shasum":"71a055fcee381593c54fcdc801a2018d86882e14","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-2.1.6.tgz","integrity":"sha512-aSm0LjiSiKl+MUWMV8VlAXE+/7RPYnoyWATEqd22Kw/mu2x5bTiaImZh72b0Q4gIvz9SqodccNmHWT6iWGBPqA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIC8xJB8EyUPDsmsrI26V11KW4S0MZQf+gAk3FFVjFDbYAiAxyE2jOkan7Mk8EK+P6Zl2WB33XT1drpL3zDeZ6SWUAw=="}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe-2.1.6.tgz_1497124154543_0.10682304739020765"},"directories":{},"deprecated":"deprecated"},"2.1.7":{"name":"react-axe","version":"2.1.7","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","eslint":"eslint *.js"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"~2.3.1"},"devDependencies":{"eslint":"~3.6.0"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"gitHead":"a8cadb0687db2c00768b993f86ed627f4c2313b0","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@2.1.7","_shasum":"1641839ca97607164ae24c837b526b39cf7da170","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.11.0","_npmUser":{"name":"dylanb","email":"dylan@barrell.com"},"maintainers":[{"name":"dylanb","email":"dylan@barrell.com"},{"name":"marcysutton","email":"marcy.sutton@deque.com"}],"dist":{"shasum":"1641839ca97607164ae24c837b526b39cf7da170","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-2.1.7.tgz","integrity":"sha512-sc/sYcgI3mXqLBqL8hz8NuSYuks2JRNTq/sQ+V2S1ohYcJ33tPBY1WI1rZd08XFqjoNkg9detLg7gJeucUj52A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAdpxi63SwXd7fJz6G5/xUJQExfzOT5HnVVcAnCAbx7IAiB4WHZarNZuvjiVo2VXYJweKnfZaWq7I5pqa4F64fpORw=="}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe-2.1.7.tgz_1498598578229_0.001010234234854579"},"directories":{},"deprecated":"deprecated"},"2.1.9":{"name":"react-axe","version":"2.1.9","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","eslint":"eslint *.js"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^2.6.0"},"devDependencies":{"eslint":"~3.6.0"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"gitHead":"f124adac20bdc7d0f08f58de52c6c023c5e7f182","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@2.1.9","_npmVersion":"5.5.1","_nodeVersion":"8.9.1","_npmUser":{"name":"wilcofiers","email":"wilcofiers@gmail.com"},"dist":{"integrity":"sha512-4u44w5qo6q14nS+TU2vcJA0ayen/BVQW2eC2tqMDuX0bcfPA5pDOL4neBgKGLENSQV327rUx1IcKYev8mWNUqw==","shasum":"fc2c9ab3b304f7ffc0d5c07be0c1972033680355","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-2.1.9.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAz+POg/ME3e0V1Pu/QpPNthrADBxK6TcgD8TVQNixHsAiEA1XlAvlOqR88gjx4c43POYOKODTR4nfY/4feEoxmp/nw="}]},"maintainers":[{"email":"wilcofiers@gmail.com","name":"wilcofiers"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"dylan@barrell.com","name":"dylanb"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe-2.1.9.tgz_1513781773570_0.399996985681355"},"directories":{},"deprecated":"deprecated"},"3.0.0-alpha.1":{"name":"react-axe","version":"3.0.0-alpha.1","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"eslint":"eslint *.js","pretest":"cd example && grunt default && http-server . &","test":"eslint index.js && cypress run","test:debug":"cypress open"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.0.0-beta.1"},"devDependencies":{"cypress":"^1.4.1","eslint":"^4.13.1","http-server":"^0.10.0","react":"^16.2.0","react-dom":"^16.2.0","eslint-config-airbnb":"^16.1.0","eslint-plugin-import":"^2.8.0","eslint-plugin-jsx-a11y":"^6.0.3","eslint-plugin-react":"^7.5.1"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"gitHead":"6f2e25cd4a13736cb8f9919cf9b791a7736c7597","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.0.0-alpha.1","_npmVersion":"5.5.1","_nodeVersion":"8.9.1","_npmUser":{"name":"wilcofiers","email":"wilcofiers@gmail.com"},"dist":{"integrity":"sha512-6+HWaQLVW5bcScngesBcXzGUevFJLdGhM8UAD0cxPspkZXPfgPHGgGoQa8bR4FyWTegYH9lpYHU2kTuh7vm8xA==","shasum":"11bb80d125d552fcaa44826e87e2d93d404efc01","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.0.0-alpha.1.tgz","fileCount":20,"unpackedSize":20138,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC8zPYE8dDYa7eU7w4clukdbihcBH1W20OUkG5C5aoqrgIhAKYAwiGIGXCqRl8LHkROylJezSA9GQ8j70/a+vnM5SZ/"}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.0.0-alpha.1_1519119676220_0.015644134202978055"},"_hasShrinkwrap":false},"3.0.0":{"name":"react-axe","version":"3.0.0","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"eslint":"eslint *.js","pretest":"cd example && npm run start &","test":"eslint index.js && cypress run","test:debug":"cypress open"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.0.0"},"devDependencies":{"cypress":"^1.4.1","eslint":"^4.13.1","http-server":"^0.10.0","react":"^16.2.0","react-dom":"^16.2.0","eslint-config-airbnb":"^16.1.0","eslint-plugin-import":"^2.8.0","eslint-plugin-jsx-a11y":"^6.0.3","eslint-plugin-react":"^7.5.1"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"gitHead":"1893f3921be12f75026f261bf51ca0c1d6c334bf","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.0.0","_npmVersion":"5.8.0","_nodeVersion":"8.9.1","_npmUser":{"name":"wilcofiers","email":"wilcofiers@gmail.com"},"dist":{"integrity":"sha512-87a364QdwvRoYbGixsYqz2IxLDaqVff5I5PYItb3/0xmQ6kP112g39fXHWa7z/eC9rQQHKmNwuigO8vTQO1N0w==","shasum":"7d79c26c51deae23e683bdaf802e4d74b1a58e57","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.0.0.tgz","fileCount":21,"unpackedSize":20406,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC+G6s0lrMjudnoyAAN1BrI/Pt2eTmo4/lPB7FmiXgUJQIgDTHSRR/nO5EI4VqzpVC/3GI6fZWVVRL1AjZ+AqXFdpY="}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.0.0_1522254208237_0.25834387479608734"},"_hasShrinkwrap":false,"deprecated":"deprecated"},"3.0.1":{"name":"react-axe","version":"3.0.1","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"eslint":"eslint *.js","pretest":"cd example && npm run start &","test":"eslint index.js && cypress run","test:debug":"cypress open"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.0.0"},"devDependencies":{"cypress":"^1.4.1","eslint":"^4.13.1","http-server":"^0.10.0","react":"^16.2.0","react-dom":"^16.2.0","eslint-config-airbnb":"^16.1.0","eslint-plugin-import":"^2.8.0","eslint-plugin-jsx-a11y":"^6.0.3","eslint-plugin-react":"^7.5.1"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"gitHead":"023773aa3d90ef5a8b5328f3f710f6939a70e439","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.0.1","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"stephenmathieson","email":"me@stephenmathieson.com"},"dist":{"integrity":"sha512-Nc1nyss+HPQ6svVwALzr+Ohl2iSl2d37NU+TDGB4Aq3wzmARiKP/Y7uojmhUxZPAUmjeBDnzvDkvA2smzrVKAg==","shasum":"cda4e53cef5731d93427f721427783f5caf66050","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.0.1.tgz","fileCount":21,"unpackedSize":21172,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDXYD2h6d0nfnPXaQPJmXin6MtTaABKKCrOMx4wUl6yzAiBMp875fdYMRalfbe/hjyTuhZvrzz++qVF1weY6pWTeZw=="}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.0.1_1522955039579_0.020866725747310966"},"_hasShrinkwrap":false,"deprecated":"deprecated"},"3.0.2":{"name":"react-axe","version":"3.0.2","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"eslint":"eslint *.js","pretest":"cd example && npm run start &","test":"eslint index.js && cypress run","test:debug":"cypress open"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.0.0"},"devDependencies":{"cypress":"^3.0.3","eslint":"^5.0.0","http-server":"^0.11.1","react":"^16.2.0","react-dom":"^16.2.0","eslint-config-airbnb":"^17.0.0","eslint-plugin-import":"^2.8.0","eslint-plugin-jsx-a11y":"^6.0.3","eslint-plugin-react":"^7.5.1"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"gitHead":"dbd36de94e6f25e45f6a24aa56dcfe27b0fa2e26","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.0.2","_shasum":"91e4265b665dd1f45cf3d0254a90c72ff6fd88cb","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.14.3","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"shasum":"91e4265b665dd1f45cf3d0254a90c72ff6fd88cb","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.0.2.tgz","integrity":"sha512-cYuxIyOVhZ0kF54V4LMTE33B/ATTzcZtIlU7F7XhP7/gBDWvkxsfjq1oAMLolvI2OhNNivNFEIIJa/rhYj96Pw==","fileCount":26,"unpackedSize":138530,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbpRHnCRA9TVsSAnZWagAAA3gP/RrFWIdWDpHIC0uTgjKC\nQzir8iyR7Ou5IYOCI0C72LIAKRpzKtUbXqriVAY+sJ/tHQr+EEv6juYRXyed\nalttXmpHPbnGs+D4rhXhzNwtGpXDoVDglC6vLVwcuQ4y8wXIsZalFCx15CnS\nYnwklYLKsDPnvquc/wFLe2VptK1o6Zt5F0LONg9jr3BOHCgJC//z/gTAu85B\nPk2zYQIsliWX4G9TpX+jEZLeDdCDpzLEVaeDTvSeq1p0wYuJ3bPOxOROAtmC\nMT40Nr9TG5Qh6cvgmDiUCo0PzM8UjIYIvozJr2gjJ8e6HRj4ie4agIrqVJGt\nUsDkPC0wVcuTXd7M9sH2DLs8Sx+TdMmOtvaYXz6rXM0Jl9FDUTEXkMIrKH5+\nwHecj5Y4s4c/VL7lOBJ2qISUuNT0L1j1A9/8BmbO+vRn+XI77l3KdaH0zkB6\neb4BAY45sODrH8DCCatqkYyqQHJ8SOEQNCkH5EChVfnhGa2IFyAEZLCgsbch\n09DKD7E8gISr+WMFFzVA53nmzsgF/X7KxR8TNYi6MpEHybZ5bJcH3oPPv0Pe\nepu/GmVP3VqpHy0+YKCu7l+Qq7vl4Lz7nGzx7lQL3aqSPB827tesFQvUHmB+\nRSORW9y9el7STx476Ei72jqGORQDiF057Wiv28R3lwPjPBWX9BhBtvbWkBRL\n3xvP\r\n=baQ1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDwYuQE5n0nwK8U+o1zd7qs5qE4PypPo9owV6c+NPPrLAIhAI6neJ4sjKn/szvgZDJ2YJYzglCpknYZBGosnX2MD+AD"}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.0.2_1537544678576_0.29879594113329233"},"_hasShrinkwrap":false,"deprecated":"deprecated"},"3.1.0":{"name":"react-axe","version":"3.1.0","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"eslint":"eslint *.js","pretest":"cd example && npm run start &","test":"eslint index.js && cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.0.0","requestidlecallback":"^0.3.0"},"devDependencies":{"cypress":"^3.0.3","eslint":"^5.0.0","eslint-config-airbnb":"^17.0.0","eslint-plugin-import":"^2.8.0","eslint-plugin-jsx-a11y":"^6.0.3","eslint-plugin-react":"^7.5.1","http-server":"^0.11.1","husky":"^1.3.1","lint-staged":"^8.1.0","prettier":"^1.15.3","react":"^16.7.0","react-dom":"^16.7.0"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,json,css,md}":["prettier --write","git add"]},"gitHead":"dd0ae27c16247816fd566daad45bc21bab66bc40","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.1.0","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-aUkgYpYVFhQ9hAF3DkvUqWTN5eOIN5K+WqQItgBzSbL5MpJssnd2hN09QoloYEAo6BhBsV0k0O9S0tNquyni2w==","shasum":"77f920642ab34a39f971c8195ea3b44c02c05b8f","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.1.0.tgz","fileCount":24,"unpackedSize":27484,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcho6+CRA9TVsSAnZWagAA8YUP/jKP+5SlsR8xjKmCgF2y\n7NQe6+7EvyAKZUjxW3knzWBq4OT75/sylA/urT2VXUVjDi8TY0BcFPIG0GJT\nCoVCYHHuds4lpiHZT/60yNWDLziMHGDb2IJ8nj+ykNNE6U6yATVFdu2gyx++\nVzuvRlYDlkqp/iKI9xCk3Qa5NMnyoWcckoRzwT/qPr7MVD0lWfWTWpw+022B\na8zIrI7v09PfJQPpUBTps/gFJGX8DiwsGznJQpvWKTD/d4Fumk7evLS3Y/Kp\nbZQVr4rwMt3+3YFw01wCD8ThBCdoO0t7F/SE7UGvHpWlueF2M1xinI24qOY4\nxymtlunb4y92Q/xHa92PO5iXoV29BI6kstHKedscSKMng6+Joz0TBro07AYR\nvUMrODCU8it9ntTxZXi78GBpEbdfnARgxWKtWTVgAOZysSZ5W7ONSZ9Ly9gs\nOCAuHkSbpZDoTSAcoJGKSumdelNgmiG0R0tO47Yg5cheBKpRZA4B+8TqzkIQ\nEiYBLuQxn2u033Vw+dtRoS5izDhA5sYDIdUmqee6G5fWjph8G+6Gs+Fk12s6\nI8dSfYrQo0Tt/+qiQHIfn3vE9uNYGazlhabiYUNqm+5JnkR/U8xV66UMvp20\nZyCh29ome2EgFLXi3q6+7CbRlmAz5mR6xK7LYcV4839JXSN4+AkSxRjkWV2Q\nT0Gv\r\n=V+Jv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDEmfq9ZZrvp/WjGROLOeKkP/RcthZ6mtfqAXn33xMj7AIhAKAXZ2knZ3cS1iOk7sKgOwJ7Kn18o5teIMKK1Ibs97xX"}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.1.0_1552322237380_0.952335721294749"},"_hasShrinkwrap":false,"deprecated":"deprecated"},"3.2.0":{"name":"react-axe","version":"3.2.0","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"eslint":"eslint *.js","pretest":"cd example && npm run start &","test":"eslint index.js && cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.0.0","requestidlecallback":"^0.3.0"},"devDependencies":{"cypress":"^3.0.3","cypress-shadow-dom":"^0.1.0","eslint":"^5.0.0","eslint-config-airbnb":"^17.0.0","eslint-plugin-import":"^2.8.0","eslint-plugin-jsx-a11y":"^6.0.3","eslint-plugin-react":"^7.5.1","http-server":"^0.11.1","husky":"^2.0.0","lint-staged":"^8.1.0","prettier":"^1.15.3","react":"^16.8.6","react-dom":"^16.8.6"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,json,css,md}":["prettier --write","git add"]},"gitHead":"ff3bd2fe5c77d6f55808ae089678bf9d0a60e5e0","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.2.0","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-2KlO2wZq58+GSFP4oWA2ZjU1ggbXdDLJc7tMUXUXkE4NVQ3FftdYtb7qNR+x1nTLeuVYiH4nH4hzIz9vQZ/Chw==","shasum":"d17427e5d54d6c4561e74ad9cf8c1839e411bde3","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.2.0.tgz","fileCount":25,"unpackedSize":29946,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdHMlOCRA9TVsSAnZWagAAQVEQAIq6EFluTnjdwe/tXqsa\nEJoF5VIA78ExMSLTDEDVNk31JMvArsg0fZ7QZjWwk0dnwlOflZev4nWRfxcw\nokHwGnoJw1q6vfCeiaKlZcxEsZO8fpTlmE39J9zcxweLxjHiCQkp0D9MpljN\n9wH7DalcV7qPexeSI1r6nXOhTpMOGmmrQHjR9dY51Qh/akh/GXnypMJiOLIq\ngSNQeydSB5mKmtRcgLXGT82VaKvp0L6sLQK2gAvtEhGL6e61klohYLQ4Yrkl\nErZ8R0BVRMYultZ7HIwvps486Yfpt9JHO+hLR7M5MWtLf7le7pdV0/FO/WAQ\n2BTfH2TpKzikC7GHKSMBtO4ymbnMdiU0LCAqZ4Df70DCq/0g9r0uVA28Oyp2\nFAeWndGhBiKnq4eg4M1VR6CCU5/C85HOYOxNlBmTzrQQ9Fae5szqPR8qfyyY\nLUHGGXVx9ytLVBYtUpbvJeySXewrplEBSy2jLHXasPyIWAi6eCkfR6Qc/QPI\nKQiQj/BIxRjH7i5e40RimG5brd9mXgike4KkLmneMTBBLsmNkiiNK0CL0XCZ\nIfr0lzEruDu4A1rTYlkrWSkYZjXqabT2AtnjWEFAqe1lXlHCjrlXYObiOv3x\n74nE4/C7WgV5/f7DAXUh7y6+u4WBlstWZFFlDAWs3RY/ksjHkkfEreaeBoyC\nYCG2\r\n=wExz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDUgaFOAdTE1LYli3d8NPvImktWowPwN+GUWASVYZ7fLwIhANIfkCaJBmuHCEpb7e8plmU2XbspOobWJMFL+CEZbCrU"}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.2.0_1562167630020_0.9558837653260168"},"_hasShrinkwrap":false,"deprecated":"deprecated"},"3.3.0":{"name":"react-axe","version":"3.3.0","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"prepare":"npm run install:example","install:example":"cd example && npm install","eslint":"eslint *.js","test":"eslint index.js && start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.3.2","requestidlecallback":"^0.3.0"},"devDependencies":{"cypress":"^3.4.1","cypress-shadow-dom":"^1.0.0","eslint":"^6.2.2","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.14.3","http-server":"^0.11.1","husky":"^3.0.4","lint-staged":"^9.2.4","prettier":"^1.18.2","react":"^16.9.0","react-dom":"^16.9.0","standard-version":"^7.0.0","start-server-and-test":"^1.10.0"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,json,css,md}":["prettier --write","git add"]},"gitHead":"12e01d08dec6b95712360cde77aab6f518783ce8","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.3.0","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-JoxU2jcTla37U6MtqIoYnGaRQcAHkNm9JxTjx2wcEgFm8Zd2A2vo9eboxcmpLjklXDKJwJNbyDo2Jcbbme6xwA==","shasum":"b87bff644ed3ed6f1ca12bcc64c00000e359c25b","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.3.0.tgz","fileCount":25,"unpackedSize":31343,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdZ6mvCRA9TVsSAnZWagAAaKcP/1P912rhR4nxqTqtq3js\nQOnhLaHW0I1JmJ5MWLp01hifYId3Fmm3ODQAdorJ4paOzLp/+ZLi3EHSEaQp\nssqZSo9eAJ4sDpv0xhFOlZzUh58Kh9zqqPJJ5S+BrzUALSPo9qAQKfjOfx+C\ns2Yuezs9L7eoiHNx9UISWbto7tMqLbfrI5TWiUigoOWYLXC954+rKrc7ilw4\nlVW6emeNC3RM9tPamhTBjN0vUVeMc+qBgNLhJ+4nwKQ15wzS/Wv7iFyS5iiX\n4Btj4dt9azUuRSd2AwRdSqkIexwhv2IcOMljOYvgPdfdBUC6Ggs+yf2niJbN\nUWym8Q7c5IkqMTmmpw/DAt5K9c5EwJcNraogOflURwDCAGQmQ0qKu7sg2abE\n0ORjJ8kXvDtktyePXIp6Nm0Z7wJ6cxMNQTqodcpfQ+Sp/gQY84DaNeYUPhdu\nTCYnUdqUQDkOrs8fqkO/F2GXEOYt+UwC1hXCK3AGcOYathmkV42pEcskDiKv\nBOSO7Y8VTbgbB9lf7BsyY6pTpJTQwf4i4jPml+Ukn4GGKvuVpGgapGFkCbsg\nVmXgoUflsAcnkhlJB+87trOdZkkhAXEXrPXDsh6d9r4tXmhE1GLj5bgvdME9\nevSGi6QyX3+AurVyP35XOP79SFRhBi725NtkJGG6LVRE+rOXfm1p+tzk8kZn\nd5rb\r\n=1Rn1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC9KiKldusD9wDEroUngtKYWE1Rx4EWNcBmkO9weXGb6wIhAMTtT75y7JXm95LDuiu6aEG4GokpjJkPTSc++VCIh62S"}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.3.0_1567074734887_0.08703012135639798"},"_hasShrinkwrap":false,"deprecated":"deprecated"},"3.4.0":{"name":"react-axe","version":"3.4.0","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"prepare":"npm run install:example","install:example":"cd example && npm install","eslint":"eslint *.js","test":"eslint index.js && start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^7.1.0","start-server-and-test":"^1.10.8"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,json,css,md}":["prettier --write","git add"]},"gitHead":"75a3ead8193a7b583051f59a791008f1f4740a92","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.4.0","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-X+fLVGCBhp9HNaz+4xW22G2GcUySMz9RefPCXJ5/wy2cflqdfhCGCVKarAJx/wW1TL6iyiNNXYob0GCNsfo9rQ==","shasum":"a145fbf5a0595f303537120890669c8825397202","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.4.0.tgz","fileCount":25,"unpackedSize":32011,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeRSA5CRA9TVsSAnZWagAAoXcP/03fCBgHEw2HpKtw3KNa\nY6cD1V0YdFaQvLZ+o1tsMK8a74MXTyqz5xpE3egah2glEc1aoC75LthJ0QLU\n1c1vX0DeYrF83vSo4LEsTM4iLUKCqGEE2uOwggXhXlgheDdLYvAPvsfIdFkT\nqbbC5AhKI0m7ZTgSZSTYVbBKh5wfEfs4IY3vrCh3FvN2VJIWBX8jAqbqi+0F\nwJYBy2au1hor6UK9PjxGRTKVTWyDF/xds+AsNIAa8t49Uy1EWztu8VywB7oI\n9SQ/TM/l0IObBH4ZNvp+xEQBB7UG4VZdIs2RM30ImKYVZX1PwIXqFMBZndRP\nqOQQLXIGSvCvqck2pCttNCsnFDEdSwnr/X8N9f2xDd4OtMmNEyMJWUOpT+Ma\nu4enPBLpYiA8OJVeSjTjjJsNRAebAjKUxCGtw/HINbs5gw5dBEKtjASK0AiL\nyG78HXmRH5RIG1Iu2t8fao6V3WtBLz6VkHuU1zEgj4rRyNe/jrCK56oxAMkP\nDZL1ridFs4c+pqIhNStW5QEIQE5VkMVSFEi23Sr13THy60iXTy8CQNh0fplP\na7bRPcxsleTT3vpIUzLK/Yf81Egaqf831sNvAf3SYo/HnauHE6E6ksssOQJj\nT795AooJwHsph9Ifo2s/OxHMLT+cRUvvYK94PmQdZHgT1g5dfwE90XQF2nkK\n1lDh\r\n=XUJ8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCFLnTmDkZvV830i9pc/iyNfZDUA48iHZylTHA09oEdMAIgRSiaRtsw7YNesKBAbKgYVInXnBV+oiRl9fB/WuxUx+M="}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.4.0_1581588536771_0.07778396339226323"},"_hasShrinkwrap":false,"deprecated":"deprecated"},"3.4.1":{"name":"react-axe","version":"3.4.1","description":"Dynamic accessibility analysis for React using axe-core","main":"index.js","scripts":{"prepare":"npm run install:example","install:example":"cd example && npm install","eslint":"eslint *.js","test":"eslint index.js && start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^7.1.0","start-server-and-test":"^1.10.8"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,json,css,md}":["prettier --write","git add"]},"gitHead":"9b40986c1f707aae7dae841daae0005d94dfee89","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.4.1","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-1UDeqesgb5gCj2XPE5WXqKv2xcwGGeWIock3uBVtZSVGbZGVzjmgYf4eRyNJ8BNnHpPQKUs4Ro5jW2+V037deg==","shasum":"8874ca48b5af71452d97c2991d37cdcbba6c3a48","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.4.1.tgz","fileCount":25,"unpackedSize":33072,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeRsy6CRA9TVsSAnZWagAAv1sP/RBCMr0avG88Y2mZDhK/\nMd/LxnYFYvsI/JrXNXUD7NPIP1NFzpTvh+g3/XoL2amktV9OHoFU5r+48T6T\nANs2Wv2nmVfFCx+wvuULei/0+3jpguJHxPwfVX9Mqy78jRXV0HrqTlrC7+t2\nM4nwsylQyPFD6v5uMCE1THwV9xZag8qs+oLKqns+gNAsf9fR5qXaGgK6JAFm\non7lHypIALslOmpLMcshFKqC8ktniST9qkgLUpeI+fLD2mL0ccs5XmihtGS/\neyzVjwPG9IMxrugFY+XhRvvfyP7ZZAu2qnQs/yl14/bPKmaurGu8mC08Ax/P\nTv9eJzPFRem771kWfwGa4XhD/dGrza+heDhJ5uv7DObOg1LX7LNB9sJ3NYoA\n0+weDDwDVsWWSAOZ09kIHnQ7lEGeNkzYB7K5tdB/StWmmxlrJzZ+89g0Z8UK\nbNQy73cds3/ElViQcILZqG8+twW8SoudioqzzLK52NspeaCx1KyCIS648tUz\nyP7eewPjALqX7fLUAvIk9DuliA6Nz+5W+KAfZQx5KMHb01ow1j8fEbr3HVNi\nAm9AOVbl9JP3Y8lympYm/SMNzjoLlUGRe3QOc5k96FFyXXZYU/JIcn+9UY1t\n2E0RgvnbItak2AZyhtpgLB3osORrtDwQw4g/+tD3KPIcEZTgyDxU3CvZSPlq\nkyxL\r\n=HGm6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICciDrAWvn63T2igxFKCuq8giIMvaNvnOASz2hGXLczWAiBEdJrH39lbm1pHTjQgng47MAbXtwJx6NZQbJYK0UdU4A=="}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.4.1_1581698234212_0.11555483824890178"},"_hasShrinkwrap":false,"deprecated":"deprecated"},"3.5.0":{"name":"react-axe","version":"3.5.0","description":"Dynamic accessibility analysis for React using axe-core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"npm run build && npm run install:example","install:example":"cd example && npm install","eslint":"eslint --ext .js,.ts *.ts","test":"eslint index.ts && tsc && start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,ts,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"@types/react":"^16.9.20","@types/requestidlecallback":"^0.3.1","@typescript-eslint/eslint-plugin":"^2.20.0","@typescript-eslint/parser":"^2.20.0","cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^7.1.0","start-server-and-test":"^1.10.8","ts-node":"^8.6.2","typescript":"^3.7.5"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,json,css,md}":["prettier --write","git add"]},"gitHead":"705c0da323b7f59829cee35a498d705732b75194","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.5.0","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-1UCf7I+RPYXRHHTI2ohVNIyd2gAgx3XhkoQ0sNG8ZjKqE7i+V0XQyDOUHVbteebBNgxS2no9zvobl+ohOAnk8Q==","shasum":"3db57990698441ddca579db11c7d68bf11c2be71","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.5.0.tgz","fileCount":25,"unpackedSize":37482,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe65u8CRA9TVsSAnZWagAAQHUP/1hT1PjrGmgoDXqN/xtQ\nFk/Uyby9GDxAkIzTxhPvcKmvlevxCChne3jf14ny7hyKs1zvfsyCSl1M/ge4\nMB44Am+uuKk5QDuq76Iq9OusR8KX2kaKlU4ob9L1s28kYXZHf/NvFOMFlM4s\nYR83WH18rx92UsC8+aWp6xj50rPiR2ZG0PxrdRZLmmj9DZW7ptfB3L7f8OgC\nlhiHEA53M4mMSLID65ayr9MzQbDvW5ZvGyNIY7zS0qwCleKJnwu28WhVNvLM\nRHBNNUuuU+C4/XB1byfvlxOWn+cuSXb7NRGLKuSr+GSNcAx98GnA0aNKfJA+\nprUgpjL1zYgn2q2KvQtjmEbc+yK7m5pIROYx+0bhzxKzRMLNkY157JJXcOt+\n1fr8Dk7YVXlDJeZCHQA6BP2Qa2JHT0ATUkYZUl+FxcbxDLPHLvXwb6QtltQs\njrQ1G1T16BTcInyEju5UZ7dOc4LjxEbhQ0vM10TO2MRGMeT6glVZsBoRrx7x\nbowfwK1hxMXAQAKwUt84qAarpG01qOTVJfM7P5bOhKpmpzHQkUBd+LQnCZ3W\n9AZ1KKtfzKitwSY4fxhtY3BpGExjvDEEkCXHEhot7812x3H3vzBiG9oNOCPh\n+QtoVDP7YX7fv8C+R0dd95YlSp//GDaYAAXafFQdiYW0uNe0XYEYKtMSzjCD\nfB+t\r\n=gUdd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHsc9wmfLagrVmR5CoiqyGE54CJEE7rq8VCSsIyIESOtAiBGhdYQhVFCsv0xteZmI3u71UGdk2WRnVW6dvF5o3i5xg=="}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.5.0_1592499131713_0.23461619298842407"},"_hasShrinkwrap":false,"deprecated":"deprecated"},"3.4.1-canary.88a0b58d":{"name":"react-axe","version":"3.4.1-canary.88a0b58d","description":"Dynamic accessibility analysis for React using axe-core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"npm run build && npm run install:example","install:example":"cd example && npm install","eslint":"eslint --ext .js,.ts *.ts","test":"eslint index.ts && tsc && start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,ts,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"@types/react":"^16.9.20","@types/requestidlecallback":"^0.3.1","@typescript-eslint/eslint-plugin":"^2.20.0","@typescript-eslint/parser":"^2.20.0","cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^7.1.0","start-server-and-test":"^1.10.8","ts-node":"^8.6.2","typescript":"^3.7.5"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,json,css,md}":["prettier --write","git add"]},"readme":"# React-axe\n\nTest your React application with the [axe-core](https://github.com/dequelabs/axe-core) accessibility testing library. Results will show in the Chrome DevTools console.\n\n## Usage\n\n[![Greenkeeper badge](https://badges.greenkeeper.io/dequelabs/react-axe.svg)](https://greenkeeper.io/)\n\nInstall the module from NPM or elsewhere\n\n```sh\nnpm install --save-dev react-axe\n```\n\n## Initialize the module\n\nCall the exported function passing in the React and ReactDOM objects as well as a timing delay in milliseconds that will be observed between each component change and the time the analysis starts.\n\n```js\nvar React = require('react');\nvar ReactDOM = require('react-dom');\n\nif (process.env.NODE_ENV !== 'production') {\n  var axe = require('react-axe');\n  axe(React, ReactDOM, 1000);\n}\n```\n\nBe sure to only run the module in your development environment (as shown in the code above) or else your application will use more resources than necessary when in production. You can use [envify](https://www.npmjs.com/package/envify) to do this as is shown in the [example](./example/package.json#L35).\n\nOnce initialized, the module will output accessibility defect information to the Chrome Devtools console every time a component updates.\n\n## Deduplicating\n\nreact-axe will deduplicate violations using the rule that raised the violation and the CSS selector and the failureSummary of the specific node. This will ensure that each unique issue will only be printed to the console once.\n\n## Debouncing\n\nThe third argument to the exported function is the number of milliseconds to wait for component updates to cease before performing an analysis of all the changes. The changes will be batched and analyzed from the closest common ancestor of all the components that changed within the batch. This generally leads to the first analysis for a dynamic application, analyzing the entire page (which is what you want), while subsequent updates will only analyze a portion of the page (which is probably also what you want).\n\n## Shadow DOM\n\nWith version 3.0.0, react-axe now runs accessibility tests inside of open Shadow DOM. You don't have to do anything special other than run react-axe on an component encapsulated with open Shadow DOM (as opposed to closed). For more information, see the [axe-core repo](https://github.com/dequelabs/axe-core).\n\n## Configuration\n\nThere is a fourth optional argument that is a configuration object for axe-core. Read about the object here: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#api-name-axeconfigure\n\n```js\nvar config = {\n  rules: [\n    {\n      id: 'skip-link',\n      enabled: true\n    }\n  ]\n};\n\naxe(React, ReactDOM, 1000, config);\n```\n\nAxe-core's context object can be given as a fifth optional argument to specify which element should (and which should not) be tested. Read more from the Axe-core documentation: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#context-parameter\n\n```js\nvar context = {\n  include: [['#preview']]\n};\n\naxe(React, ReactDOM, 1000, undefined, context);\n```\n\n## Run the example\n\nRun a build in the example directory and start a server to see React-aXe in action in the Chrome Devtools console (opens on localhost:8888):\n\n```sh\nnpm install\ncd example\nnpm install\nnpm install -g http-server\nnpm start\n```\n\n## Run the tests\n\nInstall dependencies in the root directory (which also installs them in the example directory) and then run the tests:\n\n```\nnpm install\nnpm test\n```\n\nTo debug tests in the Cypress application:\n\n```\nnpm run test:debug\n```\n\n## Compatibility\n\nreact-axe uses advanced console logging features and works best in the Chrome browser, with limited functionality in Safari and Firefox.\n\n## Advantages\n\nI have been asked how this is different from modules like react-a11y which test the jsx.\n\nThe main difference is that react-axe tests the accessibility of the rendered DOM. This is important because many accessibility issues exist at the intersection of the DOM and the CSS and unless you have a fully rendered DOM, you will get two sorts of inaccuracies:\n\n1. False negatives because of lacking information. Example is in order to test color contrast you must know the foreground and background colors, and\n1. False positives because the element being evaluated is not in its final state and the information to communicate this to the testing algorithm is not available. Example is an inert piece of code that will be augmented once it becomes active.\n\nIf you have nice clean code, number 2 will be negligible but number 1 will always be a concern.\n","readmeFilename":"README.md","gitHead":"88a0b58d6725010879fdd25c06b3594f8f62bfcb","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.4.1-canary.88a0b58d","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-7zW/M2OaDiUr0z/hMrYND5GxjM9WpyZ3qlGtPmtLcFlLELtPTONOlFmk32c7wMkgzsNuU9hoN5nRyskZ89vbCA==","shasum":"4c8a0be093756c2f320292ccb4b9b565f03aa2d1","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.4.1-canary.88a0b58d.tgz","fileCount":4,"unpackedSize":14016,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7N/PCRA9TVsSAnZWagAAJ6wP/AkSBv9bGpY39VVZIY2z\nN+2tHS22hScdA22JYhDtRZK4GC6KqohM/qLlOMQzOVA/j99wgNpPZKX0XeNZ\n54IoZI37B3cIqcdNVjmwJcXDG1mvqnuU5bN7q44ey0lKDFUvYepr2XEgMIwE\nCLDFwF/arPDITvHNKZ03nktfIvWGvoN4rpsXOlM1NnoFqcCe0e2VLRcF3Xzc\n+B4eWoalZKMA/KOOeuRKWWfvJqN3IX1GLi/GAjEKCtwjjE9Mf8vWiwevxV+z\ngLDD0VngL1VH5rYapIe8b07qMQn5LZK7h/2R6g9adpyrDkUT1Kjs9zqz3qn6\nxiLdIl/nSual1Xd3/KnOJqILn8gwFAHOqLeVzVqztLYwX+NstvS7GYBRDCZT\nRblimx3pArl9MIIXrcT0Won++GJON0gImqoXM/wgTaP1AoP/GrG98Hs6tVtQ\nIIAb706yZStZAVRllpHO2GXI6AF0vbVl0a0NEN5n5U15j//Bs7MzvfsSlgoS\nlCtovE8VHXKn23kENEfNIO8TMWtdesCidu0O0HsxHOZHzL/7MsxMDoSbI3pe\nWkJUbcOq/ChP59VVmiJHL0BEkkdNXe8GNVhq15T5dGRU1ytgYxyBP4T0YMy0\nrNJ73Cu2R4froG0sUnx6x8wvoUnX+oaDdYGJYOX2PJVpQPPREFl6boBs5PgK\nr9M8\r\n=OOtb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAmImwS+q+2g2/N0YoxvMZXen3DWgw9M4tPU8ZLXWBWnAiEA/Xozs5Ga0ajgCAgiDRFFQLK0Z10xx3EZj0uD/q42Lws="}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.4.1-canary.88a0b58d_1592582095414_0.26806137347868786"},"_hasShrinkwrap":false},"3.4.1-canary.6bd3ddfc":{"name":"react-axe","version":"3.4.1-canary.6bd3ddfc","description":"Dynamic accessibility analysis for React using axe-core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"npm run build && npm run install:example","install:example":"cd example && npm install","eslint":"eslint --ext .js,.ts *.ts","test":"eslint index.ts && tsc && start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,ts,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"@types/react":"^16.9.20","@types/requestidlecallback":"^0.3.1","@typescript-eslint/eslint-plugin":"^2.20.0","@typescript-eslint/parser":"^2.20.0","cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^7.1.0","start-server-and-test":"^1.10.8","ts-node":"^8.6.2","typescript":"^3.7.5"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,json,css,md}":["prettier --write","git add"]},"readme":"# React-axe\n\nTest your React application with the [axe-core](https://github.com/dequelabs/axe-core) accessibility testing library. Results will show in the Chrome DevTools console.\n\n## Usage\n\n[![Greenkeeper badge](https://badges.greenkeeper.io/dequelabs/react-axe.svg)](https://greenkeeper.io/)\n\nInstall the module from NPM or elsewhere\n\n```sh\nnpm install --save-dev react-axe\n```\n\n## Initialize the module\n\nCall the exported function passing in the React and ReactDOM objects as well as a timing delay in milliseconds that will be observed between each component change and the time the analysis starts.\n\n```js\nvar React = require('react');\nvar ReactDOM = require('react-dom');\n\nif (process.env.NODE_ENV !== 'production') {\n  var axe = require('react-axe');\n  axe(React, ReactDOM, 1000);\n}\n```\n\nBe sure to only run the module in your development environment (as shown in the code above) or else your application will use more resources than necessary when in production. You can use [envify](https://www.npmjs.com/package/envify) to do this as is shown in the [example](./example/package.json#L35).\n\nOnce initialized, the module will output accessibility defect information to the Chrome Devtools console every time a component updates.\n\n## Deduplicating\n\nreact-axe will deduplicate violations using the rule that raised the violation and the CSS selector and the failureSummary of the specific node. This will ensure that each unique issue will only be printed to the console once.\n\n## Debouncing\n\nThe third argument to the exported function is the number of milliseconds to wait for component updates to cease before performing an analysis of all the changes. The changes will be batched and analyzed from the closest common ancestor of all the components that changed within the batch. This generally leads to the first analysis for a dynamic application, analyzing the entire page (which is what you want), while subsequent updates will only analyze a portion of the page (which is probably also what you want).\n\n## Shadow DOM\n\nWith version 3.0.0, react-axe now runs accessibility tests inside of open Shadow DOM. You don't have to do anything special other than run react-axe on an component encapsulated with open Shadow DOM (as opposed to closed). For more information, see the [axe-core repo](https://github.com/dequelabs/axe-core).\n\n## Configuration\n\nThere is a fourth optional argument that is a configuration object for axe-core. Read about the object here: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#api-name-axeconfigure\n\n```js\nvar config = {\n  rules: [\n    {\n      id: 'skip-link',\n      enabled: true\n    }\n  ]\n};\n\naxe(React, ReactDOM, 1000, config);\n```\n\nAxe-core's context object can be given as a fifth optional argument to specify which element should (and which should not) be tested. Read more from the Axe-core documentation: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#context-parameter\n\n```js\nvar context = {\n  include: [['#preview']]\n};\n\naxe(React, ReactDOM, 1000, undefined, context);\n```\n\n## Run the example\n\nRun a build in the example directory and start a server to see React-aXe in action in the Chrome Devtools console (opens on localhost:8888):\n\n```sh\nnpm install\ncd example\nnpm install\nnpm install -g http-server\nnpm start\n```\n\n## Run the tests\n\nInstall dependencies in the root directory (which also installs them in the example directory) and then run the tests:\n\n```\nnpm install\nnpm test\n```\n\nTo debug tests in the Cypress application:\n\n```\nnpm run test:debug\n```\n\n## Compatibility\n\nreact-axe uses advanced console logging features and works best in the Chrome browser, with limited functionality in Safari and Firefox.\n\n## Advantages\n\nI have been asked how this is different from modules like react-a11y which test the jsx.\n\nThe main difference is that react-axe tests the accessibility of the rendered DOM. This is important because many accessibility issues exist at the intersection of the DOM and the CSS and unless you have a fully rendered DOM, you will get two sorts of inaccuracies:\n\n1. False negatives because of lacking information. Example is in order to test color contrast you must know the foreground and background colors, and\n1. False positives because the element being evaluated is not in its final state and the information to communicate this to the testing algorithm is not available. Example is an inert piece of code that will be augmented once it becomes active.\n\nIf you have nice clean code, number 2 will be negligible but number 1 will always be a concern.\n","readmeFilename":"README.md","gitHead":"6bd3ddfcfd1fb621d95096b10becc7bf72123f02","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.4.1-canary.6bd3ddfc","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-jMZQFsHnlmoEyRpnncozhxujOXXySDMr3nEPdkT9vKFkNRzll8Fw1K1gZqu7+TIIj2nqhhryrQYjy8gAPu67Yw==","shasum":"dec6b555dfd0456e3965b06d8511e93cdd374581","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.4.1-canary.6bd3ddfc.tgz","fileCount":4,"unpackedSize":14141,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7OIaCRA9TVsSAnZWagAAECcP/jomKRXf9g0Iik36T7l6\nLougB7np7rJPMyDYs+DzV4IcMmFxyS50DTlwNykuLsMkODE+/AvZH+fzR75D\nk12jvoTbibJtQEC+NMdNT75jxbEoPQxyPpyw3oBAWOpCXXJz1w/zd5nxLLiK\nQr/ugIyuwOaeiBvarGL1y34q8VUZC3fdHU+u9QAkQtIe3JRCx2wnPXl6KhzI\nCGXiXCzey450xFEJii+/lQSNjAoIRk18bJWmSJtYll9mxM+rcYgqPRUzM/sX\nVykDUdX7bKZ5OkX4ILnamZrFwu6gnYaCYDLwhG3zv30zriqxIQzEA7fBMfGR\npQPvfR4sVBIBlH27Lsk7O3+aDklydwWXmBQMBL1bDYnwl0bnOP2qiZ3TIYQp\nSyVbwJbWi7yhSFWu5DCQuF9FIeOxG/cryCzUl8YGMedNQjbfRMUuF6+U7Xlw\nqkVj15UoWsh4+k2wiqcn1AnSl66F+dj/19LIjD6CUi7CWenQMg6y629C+eYK\nS9RJnYSDLOROkw7/mm6WlDjMRNWt/a2YAY90perAUbfRe3py3MFzD4+Bu/ev\nZGQIIJUa1i+dfUU/EccyHDIUMQJ7Od1U2BaNZq2g+Vgn2gMDiZFMXIfgf2dD\nJf0wjUryyjmr3mQ8ad95yV4DscCjuqrqxUdiQnj7j/xWRi8SlsvG14TCFla8\nq5wL\r\n=rKfg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICJn5WdhPE0L7Bv56HCkVWvecjKO2gQ456Gmp0t6Raw2AiAMSGZY/x8qZNHRu3u6cjih9fhioOfssBgCb0QmUNP/Jw=="}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.4.1-canary.6bd3ddfc_1592582682058_0.7842772231706461"},"_hasShrinkwrap":false},"3.4.1-canary.3771b262":{"name":"react-axe","version":"3.4.1-canary.3771b262","description":"Dynamic accessibility analysis for React using axe-core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"npm run build && npm run install:example","install:example":"cd example && npm install","eslint":"eslint --ext .js,.ts *.ts","test":"eslint index.ts && tsc && start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,ts,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"@types/react":"^16.9.20","@types/requestidlecallback":"^0.3.1","@typescript-eslint/eslint-plugin":"^2.20.0","@typescript-eslint/parser":"^2.20.0","cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^7.1.0","start-server-and-test":"^1.10.8","ts-node":"^8.6.2","typescript":"^3.7.5"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,json,css,md}":["prettier --write","git add"]},"readme":"# React-axe\n\nTest your React application with the [axe-core](https://github.com/dequelabs/axe-core) accessibility testing library. Results will show in the Chrome DevTools console.\n\n## Usage\n\n[![Greenkeeper badge](https://badges.greenkeeper.io/dequelabs/react-axe.svg)](https://greenkeeper.io/)\n\nInstall the module from NPM or elsewhere\n\n```sh\nnpm install --save-dev react-axe\n```\n\n## Initialize the module\n\nCall the exported function passing in the React and ReactDOM objects as well as a timing delay in milliseconds that will be observed between each component change and the time the analysis starts.\n\n```js\nvar React = require('react');\nvar ReactDOM = require('react-dom');\n\nif (process.env.NODE_ENV !== 'production') {\n  var axe = require('react-axe');\n  axe(React, ReactDOM, 1000);\n}\n```\n\nBe sure to only run the module in your development environment (as shown in the code above) or else your application will use more resources than necessary when in production. You can use [envify](https://www.npmjs.com/package/envify) to do this as is shown in the [example](./example/package.json#L35).\n\nOnce initialized, the module will output accessibility defect information to the Chrome Devtools console every time a component updates.\n\n## Deduplicating\n\nreact-axe will deduplicate violations using the rule that raised the violation and the CSS selector and the failureSummary of the specific node. This will ensure that each unique issue will only be printed to the console once.\n\n## Debouncing\n\nThe third argument to the exported function is the number of milliseconds to wait for component updates to cease before performing an analysis of all the changes. The changes will be batched and analyzed from the closest common ancestor of all the components that changed within the batch. This generally leads to the first analysis for a dynamic application, analyzing the entire page (which is what you want), while subsequent updates will only analyze a portion of the page (which is probably also what you want).\n\n## Shadow DOM\n\nWith version 3.0.0, react-axe now runs accessibility tests inside of open Shadow DOM. You don't have to do anything special other than run react-axe on an component encapsulated with open Shadow DOM (as opposed to closed). For more information, see the [axe-core repo](https://github.com/dequelabs/axe-core).\n\n## Configuration\n\nThere is a fourth optional argument that is a configuration object for axe-core. Read about the object here: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#api-name-axeconfigure\n\n```js\nvar config = {\n  rules: [\n    {\n      id: 'skip-link',\n      enabled: true\n    }\n  ]\n};\n\naxe(React, ReactDOM, 1000, config);\n```\n\nAxe-core's context object can be given as a fifth optional argument to specify which element should (and which should not) be tested. Read more from the Axe-core documentation: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#context-parameter\n\n```js\nvar context = {\n  include: [['#preview']]\n};\n\naxe(React, ReactDOM, 1000, undefined, context);\n```\n\n## Run the example\n\nRun a build in the example directory and start a server to see React-aXe in action in the Chrome Devtools console (opens on localhost:8888):\n\n```sh\nnpm install\ncd example\nnpm install\nnpm install -g http-server\nnpm start\n```\n\n## Run the tests\n\nInstall dependencies in the root directory (which also installs them in the example directory) and then run the tests:\n\n```\nnpm install\nnpm test\n```\n\nTo debug tests in the Cypress application:\n\n```\nnpm run test:debug\n```\n\n## Compatibility\n\nreact-axe uses advanced console logging features and works best in the Chrome browser, with limited functionality in Safari and Firefox.\n\n## Advantages\n\nI have been asked how this is different from modules like react-a11y which test the jsx.\n\nThe main difference is that react-axe tests the accessibility of the rendered DOM. This is important because many accessibility issues exist at the intersection of the DOM and the CSS and unless you have a fully rendered DOM, you will get two sorts of inaccuracies:\n\n1. False negatives because of lacking information. Example is in order to test color contrast you must know the foreground and background colors, and\n1. False positives because the element being evaluated is not in its final state and the information to communicate this to the testing algorithm is not available. Example is an inert piece of code that will be augmented once it becomes active.\n\nIf you have nice clean code, number 2 will be negligible but number 1 will always be a concern.\n","readmeFilename":"README.md","gitHead":"3771b262df4e8919f5370d1d45ae1ebdd608ca73","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.4.1-canary.3771b262","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-QS/nMzZ/wchXmHH5waSM2oWIicB6u4kNgNxL7ID1fnVAGAEDjkK51R3ImfDs4aosijKiQjuI9Pxag6usTWRpsQ==","shasum":"147202512d69f50487f4354a2b16118f27142b3a","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.4.1-canary.3771b262.tgz","fileCount":4,"unpackedSize":14141,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7O1LCRA9TVsSAnZWagAAYA4P/AlKH8GzVVkWjyCmlNNa\n2PsDCRIafhGv1WGCo1AZclYy9wVig6dSzSzvL7yB2VT0FzCM9PEosk1ZkYhR\nFQvRPg6Yx1tDVOBqQiFwci8uFdTYbswjTfrK8CSfaXx/5tWDTLtNjIwCQQ4Z\n+ivMDd8YQZv2nZ0arT5Dcl2VDhCZ1NduyIx6Mnv6NXavBdpkOX2qT03+WDr8\nbjffPrNxrueiQnnBooSgYEXsZgVuj0vhdJohdxEZwbvqrmbNOIOvskSozCz8\nX8cXGyy47H/nn/V+CHS2OjyAFv6pndXYtb2ddeF4+54ysKzL40xzAYwogH7m\n+anUJBeaWCMkBMk2+/HLRsYLLdHL95sAyv5oC8xTlsLVgfj+GPHgYWzh0Ag+\nRedlhasAQGwfJCcQMRmYAhUZAA9Dn7sQqaqaWvme72vLitzGQGWhcYowUX0u\nomIpEyawvhHNj3qTsqhqg+0rgK/PsFCgvHZLBSINZOtn+HwtYtWdBA6sli3y\nAUALgToqRvIqonqGCsYmYI9LVZdsRK1XrmFX/hQIK16L9Cjxiltcpz8oBEwj\negscRlYDYVEVu+15bzY3yU9FKDI60oh9aMT9kPG0mgXT9vOxOWcclebMEcUU\njod6Aat5OQO8Y9EdNeNN57O2UMMtX8t+75sm+kyf69M6I+zvIkxsBgJtTlK9\nik5I\r\n=jpw5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGfH6Um0K8fHRV/Dje2QfNKY2syTVQklHO3HVMdZB/qxAiAFHEAv0s7PpHJm09a7038fakIZkUcsha8Jq0IQPAzgTg=="}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.4.1-canary.3771b262_1592585546788_0.5624114906481428"},"_hasShrinkwrap":false},"3.5.0-canary.bd25b2e9":{"name":"react-axe","version":"3.5.0-canary.bd25b2e9","description":"Dynamic accessibility analysis for React using axe-core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"npm run build && npm run install:example","install:example":"cd example && npm install","eslint":"eslint --ext .js,.ts *.ts","test":"eslint index.ts && tsc && start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,ts,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"@types/react":"^16.9.20","@types/requestidlecallback":"^0.3.1","@typescript-eslint/eslint-plugin":"^2.20.0","@typescript-eslint/parser":"^2.20.0","cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^7.1.0","start-server-and-test":"^1.10.8","ts-node":"^8.6.2","typescript":"^3.7.5"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,json,css,md}":["prettier --write","git add"]},"readme":"# React-axe\n\nTest your React application with the [axe-core](https://github.com/dequelabs/axe-core) accessibility testing library. Results will show in the Chrome DevTools console.\n\n## Usage\n\n[![Greenkeeper badge](https://badges.greenkeeper.io/dequelabs/react-axe.svg)](https://greenkeeper.io/)\n\nInstall the module from NPM or elsewhere\n\n```sh\nnpm install --save-dev react-axe\n```\n\n## Initialize the module\n\nCall the exported function passing in the React and ReactDOM objects as well as a timing delay in milliseconds that will be observed between each component change and the time the analysis starts.\n\n```js\nvar React = require('react');\nvar ReactDOM = require('react-dom');\n\nif (process.env.NODE_ENV !== 'production') {\n  var axe = require('react-axe');\n  axe(React, ReactDOM, 1000);\n}\n```\n\nBe sure to only run the module in your development environment (as shown in the code above) or else your application will use more resources than necessary when in production. You can use [envify](https://www.npmjs.com/package/envify) to do this as is shown in the [example](./example/package.json#L35).\n\nOnce initialized, the module will output accessibility defect information to the Chrome Devtools console every time a component updates.\n\n## Deduplicating\n\nreact-axe will deduplicate violations using the rule that raised the violation and the CSS selector and the failureSummary of the specific node. This will ensure that each unique issue will only be printed to the console once.\n\n## Debouncing\n\nThe third argument to the exported function is the number of milliseconds to wait for component updates to cease before performing an analysis of all the changes. The changes will be batched and analyzed from the closest common ancestor of all the components that changed within the batch. This generally leads to the first analysis for a dynamic application, analyzing the entire page (which is what you want), while subsequent updates will only analyze a portion of the page (which is probably also what you want).\n\n## Shadow DOM\n\nWith version 3.0.0, react-axe now runs accessibility tests inside of open Shadow DOM. You don't have to do anything special other than run react-axe on an component encapsulated with open Shadow DOM (as opposed to closed). For more information, see the [axe-core repo](https://github.com/dequelabs/axe-core).\n\n## Configuration\n\nThere is a fourth optional argument that is a configuration object for axe-core. Read about the object here: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#api-name-axeconfigure\n\n```js\nvar config = {\n  rules: [\n    {\n      id: 'skip-link',\n      enabled: true\n    }\n  ]\n};\n\naxe(React, ReactDOM, 1000, config);\n```\n\nAxe-core's context object can be given as a fifth optional argument to specify which element should (and which should not) be tested. Read more from the Axe-core documentation: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#context-parameter\n\n```js\nvar context = {\n  include: [['#preview']]\n};\n\naxe(React, ReactDOM, 1000, undefined, context);\n```\n\n## Run the example\n\nRun a build in the example directory and start a server to see React-aXe in action in the Chrome Devtools console (opens on localhost:8888):\n\n```sh\nnpm install\ncd example\nnpm install\nnpm install -g http-server\nnpm start\n```\n\n## Run the tests\n\nInstall dependencies in the root directory (which also installs them in the example directory) and then run the tests:\n\n```\nnpm install\nnpm test\n```\n\nTo debug tests in the Cypress application:\n\n```\nnpm run test:debug\n```\n\n## Compatibility\n\nreact-axe uses advanced console logging features and works best in the Chrome browser, with limited functionality in Safari and Firefox.\n\n## Advantages\n\nI have been asked how this is different from modules like react-a11y which test the jsx.\n\nThe main difference is that react-axe tests the accessibility of the rendered DOM. This is important because many accessibility issues exist at the intersection of the DOM and the CSS and unless you have a fully rendered DOM, you will get two sorts of inaccuracies:\n\n1. False negatives because of lacking information. Example is in order to test color contrast you must know the foreground and background colors, and\n1. False positives because the element being evaluated is not in its final state and the information to communicate this to the testing algorithm is not available. Example is an inert piece of code that will be augmented once it becomes active.\n\nIf you have nice clean code, number 2 will be negligible but number 1 will always be a concern.\n","readmeFilename":"README.md","gitHead":"bd25b2e92b90af9c8b98a546e7dafa70bbaa3559","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.5.0-canary.bd25b2e9","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-kYEhR6S9UAZw+OPKNhL4PAP8+VZn35xdlq2n8av1n1QC9pQIAURD7M8uJBfV6HTblYCFWqbNiOMsC2uBfwS6sg==","shasum":"1ce370c0c1d9c947a83d68d94758daa97fa7fbe8","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.5.0-canary.bd25b2e9.tgz","fileCount":4,"unpackedSize":14860,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7Pk1CRA9TVsSAnZWagAAgWcQAKMxfBdgOjpjzel9gxtr\nD9wXmnsfcyxtduy8RiJLsx5g0K4nUvCqZ0NWYh3qHBuylSt4YUAumwx4dps/\ntTUAiW+fKV79ELSHPzyUPLVB5Exs6c9jm/qeFFiV9Fgi1E/lAd6SAp+1jvVQ\n1eI+7OZs9BZlaP3ALFLTJrAXPTtofZJ592hcvg7E+P7JTDb+k+IZBSS8+2bf\n2QTUvXnEfP6V1Um84IG8mGToVEszpSFgy1lu90Ehmhb3az2W/hdQabsnCAUM\nB6KYzXx10pC9c/70mtHMmp6Ektm/04elhiyE7BYGCPVjSiIsGL90sgV7Ppki\nq3OOBk6mQf4ZeaGv8IhziIDpk4BbtGB9IBBVqk9MCSptdj/9d/pdVov5uxWA\nW6vW2qH9q7uQCZ0Q5r2KpwYUrbmaYT9N5TvwmSsxIhu+RGvYTkCR6CsnjBzH\ngLcGURY55TaVcnEgwwlZX0pXQksSl0qdR28l7F7xChR0SEwMlY/r3xJ8Kaia\nAG4rBBo3rXJrgx7D+A6TEGVthQMrpajYBfHf5QHev7hU3mo/ti+CMihOdPmz\nVyxnsdTV2A7gNUbUOs4zETIvZ/yH4dOnNEV7dWqYbcCdc5q0tArRB/w3g3RH\nk1M1KL0BxeR307oIMexi8i63LTL78Cll+7/v+hEk7LI+fhabfGTlduJEubXI\nQfcQ\r\n=YBnx\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDTcwteKeRzVAGCyhCKJdrM9vwhy8bUgMYm7PBitXMc6gIhALriO63DAUet+0z/i3H6ggEoh1Q1y3xCTd8dgxekIdkH"}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.5.0-canary.bd25b2e9_1592588597147_0.6206720504924952"},"_hasShrinkwrap":false},"3.5.1":{"name":"react-axe","version":"3.5.1","description":"Dynamic accessibility analysis for React using axe-core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"npm run build && npm run install:example","install:example":"cd example && npm install","eslint":"eslint --ext .js,.ts *.ts","test":"eslint index.ts && tsc && start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,ts,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"@types/react":"^16.9.20","@types/requestidlecallback":"^0.3.1","@typescript-eslint/eslint-plugin":"^2.20.0","@typescript-eslint/parser":"^2.20.0","cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^7.1.0","start-server-and-test":"^1.10.8","ts-node":"^8.6.2","typescript":"^3.7.5"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,json,css,md}":["prettier --write","git add"]},"gitHead":"d347e971ee981e60d15ce123e65109ee1e974fc1","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.5.1","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-T4bKlZdG46XtXF68WVj4X/4suTLPbtMiUlLvNuGPzjOi22qZXHKMpyvtCYe1hyoRB4sww2MfmRhWOnrA8jkcyQ==","shasum":"abd40df5b5c9087563777076389d28ae6faeb26e","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.5.1.tgz","fileCount":4,"unpackedSize":15560,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7PvUCRA9TVsSAnZWagAA08cP/09mIpv6jLcPU66GoPNF\nmZhhbchhQuHAT0tZfPEcuqcZ0A16lVRJ+Shz+zQqzATX4UoyK03/Hx8GY428\nwavDJ+Q850eKGa4BY2Lp1F/Th6V4nROiLlQzZVOdxxARN+Rn70H6NaZi3nPe\nLnwkZexbsaBt263VR6P4Yo0HMN2zQztlL4n6BVuKxSoKMpIWL+puYtdiehDG\nWaRs4D/FtkXCuy6mTvaveb7MaPOcEYdsLT6AlRgJAnFdfD+MRA6EFtcuSzcc\nJU2Enehp/AYyQkD2g+4b31RhYGk4sFqaFxoPHHVoCABBZw/AkzRjmCr7Iko9\nbf4mCC8rZ3u5XpSYksaewoerXmUsu88gjsUj8lJ1U3psRT02FTP430NDc6gA\njzi2p6v+1nfx/QVVzCAQ69NMj0eXmBoS6avPN2lYRUy8Ro/cLyq6E66nhVxa\nRl7E4EK+QUNwIEq9+f9oL9NCS5cSj/STUhIsozqU2FIfaDDIW4Z3h5Jr08/T\nwMSI5+iK9cvLiUrPOEskispWPQDcZLG59Nh2Ce4K+GHco+/V/S+4BeMxRQq6\nbUHWve8xcMeTBYUmiNtbu1Fdkfq/bBCjF0k2x0fukSi2nzvPJNeBBzGepfB8\ncoOfvZdS+ISvcA3qLFdVZKYctDuC/C96bPk4C8JV9+bWCYanR4LOTZlhlufQ\nQHSQ\r\n=EBwb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDHaOX5XTIT+6sZW0YuC8TGiJgKbEhYBZ0Z2zVYbHP5sAiBcNHW3jO0U4YvY+/uSK7JSVS27vFOQseWwyXQZNNkyHw=="}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.5.1_1592589268284_0.4005338867692374"},"_hasShrinkwrap":false,"deprecated":"deprecated"},"3.5.1-canary.1ee20886":{"name":"react-axe","version":"3.5.1-canary.1ee20886","description":"Dynamic accessibility analysis for React using axe-core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"npm run build && npm run install:example","install:example":"cd example && npm install","eslint":"eslint --ext .js,.ts *.ts","test":"eslint index.ts && tsc && start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,ts,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"@types/react":"^16.9.20","@types/requestidlecallback":"^0.3.1","@typescript-eslint/eslint-plugin":"^2.20.0","@typescript-eslint/parser":"^2.20.0","cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^7.1.0","start-server-and-test":"^1.10.8","ts-node":"^8.6.2","typescript":"^3.7.5"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,json,css,md}":["prettier --write","git add"]},"readme":"# React-axe\n\nTest your React application with the [axe-core](https://github.com/dequelabs/axe-core) accessibility testing library. Results will show in the Chrome DevTools console.\n\n## Usage\n\n[![Greenkeeper badge](https://badges.greenkeeper.io/dequelabs/react-axe.svg)](https://greenkeeper.io/)\n\nInstall the module from NPM or elsewhere\n\n```sh\nnpm install --save-dev react-axe\n```\n\n## Initialize the module\n\nCall the exported function passing in the React and ReactDOM objects as well as a timing delay in milliseconds that will be observed between each component change and the time the analysis starts.\n\n```js\nvar React = require('react');\nvar ReactDOM = require('react-dom');\n\nif (process.env.NODE_ENV !== 'production') {\n  var axe = require('react-axe');\n  axe(React, ReactDOM, 1000);\n}\n```\n\nBe sure to only run the module in your development environment (as shown in the code above) or else your application will use more resources than necessary when in production. You can use [envify](https://www.npmjs.com/package/envify) to do this as is shown in the [example](./example/package.json#L35).\n\nOnce initialized, the module will output accessibility defect information to the Chrome Devtools console every time a component updates.\n\n## Deduplicating\n\nreact-axe will deduplicate violations using the rule that raised the violation and the CSS selector and the failureSummary of the specific node. This will ensure that each unique issue will only be printed to the console once.\n\n## Debouncing\n\nThe third argument to the exported function is the number of milliseconds to wait for component updates to cease before performing an analysis of all the changes. The changes will be batched and analyzed from the closest common ancestor of all the components that changed within the batch. This generally leads to the first analysis for a dynamic application, analyzing the entire page (which is what you want), while subsequent updates will only analyze a portion of the page (which is probably also what you want).\n\n## Shadow DOM\n\nWith version 3.0.0, react-axe now runs accessibility tests inside of open Shadow DOM. You don't have to do anything special other than run react-axe on an component encapsulated with open Shadow DOM (as opposed to closed). For more information, see the [axe-core repo](https://github.com/dequelabs/axe-core).\n\n## Configuration\n\nThere is a fourth optional argument that is a configuration object for axe-core. Read about the object here: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#api-name-axeconfigure\n\n```js\nvar config = {\n  rules: [\n    {\n      id: 'skip-link',\n      enabled: true\n    }\n  ]\n};\n\naxe(React, ReactDOM, 1000, config);\n```\n\nAxe-core's context object can be given as a fifth optional argument to specify which element should (and which should not) be tested. Read more from the Axe-core documentation: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#context-parameter\n\n```js\nvar context = {\n  include: [['#preview']]\n};\n\naxe(React, ReactDOM, 1000, undefined, context);\n```\n\n## Run the example\n\nRun a build in the example directory and start a server to see React-aXe in action in the Chrome Devtools console (opens on localhost:8888):\n\n```sh\nnpm install\ncd example\nnpm install\nnpm install -g http-server\nnpm start\n```\n\n## Run the tests\n\nInstall dependencies in the root directory (which also installs them in the example directory) and then run the tests:\n\n```\nnpm install\nnpm test\n```\n\nTo debug tests in the Cypress application:\n\n```\nnpm run test:debug\n```\n\n## Compatibility\n\nreact-axe uses advanced console logging features and works best in the Chrome browser, with limited functionality in Safari and Firefox.\n\n## Advantages\n\nI have been asked how this is different from modules like react-a11y which test the jsx.\n\nThe main difference is that react-axe tests the accessibility of the rendered DOM. This is important because many accessibility issues exist at the intersection of the DOM and the CSS and unless you have a fully rendered DOM, you will get two sorts of inaccuracies:\n\n1. False negatives because of lacking information. Example is in order to test color contrast you must know the foreground and background colors, and\n1. False positives because the element being evaluated is not in its final state and the information to communicate this to the testing algorithm is not available. Example is an inert piece of code that will be augmented once it becomes active.\n\nIf you have nice clean code, number 2 will be negligible but number 1 will always be a concern.\n","readmeFilename":"README.md","gitHead":"1ee20886fcff4b23633bda1cf3985bf18f10ecc8","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.5.1-canary.1ee20886","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-DHdIlVL53YR4JWPZDJHLBGGsw2J3wSDBtyvKZ529XY8Jxzjjl19laSc2pkXrOsBgvfhkJ8ZyWfHdZE0VisMK+g==","shasum":"5b2d15ef2a591c1fff09503f2185cca67c5532a8","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.5.1-canary.1ee20886.tgz","fileCount":4,"unpackedSize":15575,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7P73CRA9TVsSAnZWagAA+b8P/iULz6XZW+PiwxCO2DM7\njFiVXzMDNBw/M/5iI1ZOpL9Vkumwzp6hNwNrtE8OHkMvK6Hi+/4h/xhXczWn\nDzCXqoKdcSr9nfd7TYDWCBdpGVq/VLuSRc/Axnr36i7Q8WX2sP3DHFrmtwDd\nQvMPwb36bx2U/MJZnjRqOHt+DrDnqzDNEonNCc4EwIP3m9Fq/VWo1TMDM8mk\nS8uDAEZjPGdz1gL8ESe4ek6zi7YTox3gr5lU/p1LebGXH20d8CR06WCQ8b/M\n8M72Aa/EtkSrRgBic0o9tGDX+u6MvF7ICrqw6HlwO/KTXKovKS4fYhbnxn9Q\n9ADBWC5JqAeUmRbGAJNTtLV/rOaPQ38g12Jha1lAxXM8CDwRog0GUg1uKcju\nudwZjYr6tL57v1PcFjTTR/Zf+spqhJZy6wZXrl6KzxhlHodAC68Q0+uBNKvO\nhoimm8LTI2OAPgA3Cy8SKd1QIdupKmdnlJyU77wgyDz71jQEfYb2RnSGiWdh\nk9RuNKql2mI5vsgWzRBuJcIa/E2mMEZ+9ccO5j5sx+tTgXZERg/oOXOK6yvF\njspCxdYricsqp60k42SlyqvT+kXkn2nnNNKIhP1vaH0R0rpUqHfSIyVTMXXZ\nT57NuRPzUDNOfHJ4uaP1bHgUwxS8hcnr5bSQNTL8p9GGPdcT4OTWdZ3ZcfCI\nBx4C\r\n=9BkB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCnegxqRdCimb+of4eYZshJ2Pj18Snb+ebz7rbw7sr/yAIhAMea8keUjzi9W+PjzP6JiI6P83DvZqBYE4549F9q1B6l"}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.5.1-canary.1ee20886_1592590070790_0.4327077951040017"},"_hasShrinkwrap":false},"3.5.1-canary.a0ebeb41":{"name":"react-axe","version":"3.5.1-canary.a0ebeb41","description":"Dynamic accessibility analysis for React using axe-core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"npm run build && npm run install:example","install:example":"cd example && npm install","eslint":"eslint --ext .js,.ts *.ts","test":"eslint index.ts && tsc && start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,ts,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"@types/react":"^16.9.20","@types/requestidlecallback":"^0.3.1","@typescript-eslint/eslint-plugin":"^2.20.0","@typescript-eslint/parser":"^2.20.0","cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^7.1.0","start-server-and-test":"^1.10.8","ts-node":"^8.6.2","typescript":"^3.7.5"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,json,css,md}":["prettier --write","git add"]},"readme":"# React-axe\n\nTest your React application with the [axe-core](https://github.com/dequelabs/axe-core) accessibility testing library. Results will show in the Chrome DevTools console.\n\n## Usage\n\n[![Greenkeeper badge](https://badges.greenkeeper.io/dequelabs/react-axe.svg)](https://greenkeeper.io/)\n\nInstall the module from NPM or elsewhere\n\n```sh\nnpm install --save-dev react-axe\n```\n\n## Initialize the module\n\nCall the exported function passing in the React and ReactDOM objects as well as a timing delay in milliseconds that will be observed between each component change and the time the analysis starts.\n\n```js\nvar React = require('react');\nvar ReactDOM = require('react-dom');\n\nif (process.env.NODE_ENV !== 'production') {\n  var axe = require('react-axe');\n  axe(React, ReactDOM, 1000);\n}\n```\n\nBe sure to only run the module in your development environment (as shown in the code above) or else your application will use more resources than necessary when in production. You can use [envify](https://www.npmjs.com/package/envify) to do this as is shown in the [example](./example/package.json#L35).\n\nOnce initialized, the module will output accessibility defect information to the Chrome Devtools console every time a component updates.\n\n## Deduplicating\n\nreact-axe will deduplicate violations using the rule that raised the violation and the CSS selector and the failureSummary of the specific node. This will ensure that each unique issue will only be printed to the console once.\n\n## Debouncing\n\nThe third argument to the exported function is the number of milliseconds to wait for component updates to cease before performing an analysis of all the changes. The changes will be batched and analyzed from the closest common ancestor of all the components that changed within the batch. This generally leads to the first analysis for a dynamic application, analyzing the entire page (which is what you want), while subsequent updates will only analyze a portion of the page (which is probably also what you want).\n\n## Shadow DOM\n\nWith version 3.0.0, react-axe now runs accessibility tests inside of open Shadow DOM. You don't have to do anything special other than run react-axe on an component encapsulated with open Shadow DOM (as opposed to closed). For more information, see the [axe-core repo](https://github.com/dequelabs/axe-core).\n\n## Configuration\n\nThere is a fourth optional argument that is a configuration object for axe-core. Read about the object here: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#api-name-axeconfigure\n\n```js\nvar config = {\n  rules: [\n    {\n      id: 'skip-link',\n      enabled: true\n    }\n  ]\n};\n\naxe(React, ReactDOM, 1000, config);\n```\n\nAxe-core's context object can be given as a fifth optional argument to specify which element should (and which should not) be tested. Read more from the Axe-core documentation: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#context-parameter\n\n```js\nvar context = {\n  include: [['#preview']]\n};\n\naxe(React, ReactDOM, 1000, undefined, context);\n```\n\n## Run the example\n\nRun a build in the example directory and start a server to see React-aXe in action in the Chrome Devtools console (opens on localhost:8888):\n\n```sh\nnpm install\ncd example\nnpm install\nnpm install -g http-server\nnpm start\n```\n\n## Run the tests\n\nInstall dependencies in the root directory (which also installs them in the example directory) and then run the tests:\n\n```\nnpm install\nnpm test\n```\n\nTo debug tests in the Cypress application:\n\n```\nnpm run test:debug\n```\n\n## Compatibility\n\nreact-axe uses advanced console logging features and works best in the Chrome browser, with limited functionality in Safari and Firefox.\n\n## Advantages\n\nI have been asked how this is different from modules like react-a11y which test the jsx.\n\nThe main difference is that react-axe tests the accessibility of the rendered DOM. This is important because many accessibility issues exist at the intersection of the DOM and the CSS and unless you have a fully rendered DOM, you will get two sorts of inaccuracies:\n\n1. False negatives because of lacking information. Example is in order to test color contrast you must know the foreground and background colors, and\n1. False positives because the element being evaluated is not in its final state and the information to communicate this to the testing algorithm is not available. Example is an inert piece of code that will be augmented once it becomes active.\n\nIf you have nice clean code, number 2 will be negligible but number 1 will always be a concern.\n","readmeFilename":"README.md","gitHead":"a0ebeb41d8854ebc993c3c7fdd8212d0091b07ec","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.5.1-canary.a0ebeb41","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-DVWfZiJAI/HQ2Y19mbrMLG6/JOtV3GBQi2lRhJBgEIBHy3JZifRphNb/aHM0pjfqg4gs+xcivK70CA4SUm9GNQ==","shasum":"d91433583384475fc0a38bbe03245c013531d52c","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.5.1-canary.a0ebeb41.tgz","fileCount":4,"unpackedSize":15575,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7QJ7CRA9TVsSAnZWagAA2RAP/22RttPjbs829BOUNxF+\nEPBLdy361uKQm3+zpthVYfW0lmGEaoEi/T/mcoPHLIIYioQKpUS5cKPsQO/2\nRH8QHiN87Cz/lWOiQ9qRrkTBywNIDXzVWlX1q1dUovTJiXQP0ECSSISagtEI\nGxwmF5b4wL0NRy6SyTy9o36RVLbdtwTN3GmHesJClkSxLW19zK7KlRikhLqb\nxHDb4ZOV5BiEbNor2SBG/4BtuXlmN6x1NAyXpV0aND5trGnO+ihiRzqmIKAk\nV18qB4egmJSOqjgU9KH4sZxKvLtTn68hk0ZJ2dxScNuIr/VDsqKJKMuh42Su\nsIuM2WbkNgLECGUfLDE/OWRf301FIqWC1jsKujPzIMuuXqx9YufaHSlkManO\nguSIi28LpwoxDIvwH8Rzaw4zYU5tGwmuBLGMfLifuSehS3Aa+sLHUiiGw+Fz\ndPT5xcYVHFQy5flaw8dgSusaJB3LjmhsLSXZvaxcx/4Vw8S9jO8aqbinmgoa\nPJLnFRuT1jQaWmX4TAe0PGChKGm58VkzGejcZAwTF/vPxXNYMK3v8o7AfA8l\ngfxJZfKpEEaKicMx1d4qzLIUHQa3AhJPHqyBaXUpaVoA0wDEqG394NO+lZjZ\neepEsMSwrZl/XSgCQ+ne56G66xlWgfhvYOM93IyN6BbO1yLJxMozB8UrxhZr\nhlus\r\n=3IFM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFK4LReV0+EqSGfWOVwmmCTYYaXMDWF/EhBz0DPMNqKAAiAA/a/L0oRAIsZzttIj8FqzimG01gN/o/w/qO3xa8XlSQ=="}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.5.1-canary.a0ebeb41_1592590971455_0.3400902168457678"},"_hasShrinkwrap":false},"3.5.1-canary.342b1705":{"name":"react-axe","version":"3.5.1-canary.342b1705","description":"Dynamic accessibility analysis for React using axe-core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"npm run build && npm run install:example","install:example":"cd example && npm install","eslint":"eslint --ext .js,.ts *.ts","test":"eslint index.ts && tsc && start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,ts,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"@types/react":"^16.9.20","@types/requestidlecallback":"^0.3.1","@typescript-eslint/eslint-plugin":"^2.20.0","@typescript-eslint/parser":"^2.20.0","cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^7.1.0","start-server-and-test":"^1.10.8","ts-node":"^8.6.2","typescript":"^3.7.5"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,json,css,md}":["prettier --write","git add"]},"readme":"# React-axe\n\nTest your React application with the [axe-core](https://github.com/dequelabs/axe-core) accessibility testing library. Results will show in the Chrome DevTools console.\n\n## Usage\n\n[![Greenkeeper badge](https://badges.greenkeeper.io/dequelabs/react-axe.svg)](https://greenkeeper.io/)\n\nInstall the module from NPM or elsewhere\n\n```sh\nnpm install --save-dev react-axe\n```\n\n## Initialize the module\n\nCall the exported function passing in the React and ReactDOM objects as well as a timing delay in milliseconds that will be observed between each component change and the time the analysis starts.\n\n```js\nvar React = require('react');\nvar ReactDOM = require('react-dom');\n\nif (process.env.NODE_ENV !== 'production') {\n  var axe = require('react-axe');\n  axe(React, ReactDOM, 1000);\n}\n```\n\nBe sure to only run the module in your development environment (as shown in the code above) or else your application will use more resources than necessary when in production. You can use [envify](https://www.npmjs.com/package/envify) to do this as is shown in the [example](./example/package.json#L35).\n\nOnce initialized, the module will output accessibility defect information to the Chrome Devtools console every time a component updates.\n\n## Deduplicating\n\nreact-axe will deduplicate violations using the rule that raised the violation and the CSS selector and the failureSummary of the specific node. This will ensure that each unique issue will only be printed to the console once.\n\n## Debouncing\n\nThe third argument to the exported function is the number of milliseconds to wait for component updates to cease before performing an analysis of all the changes. The changes will be batched and analyzed from the closest common ancestor of all the components that changed within the batch. This generally leads to the first analysis for a dynamic application, analyzing the entire page (which is what you want), while subsequent updates will only analyze a portion of the page (which is probably also what you want).\n\n## Shadow DOM\n\nWith version 3.0.0, react-axe now runs accessibility tests inside of open Shadow DOM. You don't have to do anything special other than run react-axe on an component encapsulated with open Shadow DOM (as opposed to closed). For more information, see the [axe-core repo](https://github.com/dequelabs/axe-core).\n\n## Configuration\n\nThere is a fourth optional argument that is a configuration object for axe-core. Read about the object here: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#api-name-axeconfigure\n\n```js\nvar config = {\n  rules: [\n    {\n      id: 'skip-link',\n      enabled: true\n    }\n  ]\n};\n\naxe(React, ReactDOM, 1000, config);\n```\n\nAxe-core's context object can be given as a fifth optional argument to specify which element should (and which should not) be tested. Read more from the Axe-core documentation: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#context-parameter\n\n```js\nvar context = {\n  include: [['#preview']]\n};\n\naxe(React, ReactDOM, 1000, undefined, context);\n```\n\n## Run the example\n\nRun a build in the example directory and start a server to see React-aXe in action in the Chrome Devtools console (opens on localhost:8888):\n\n```sh\nnpm install\ncd example\nnpm install\nnpm install -g http-server\nnpm start\n```\n\n## Run the tests\n\nInstall dependencies in the root directory (which also installs them in the example directory) and then run the tests:\n\n```\nnpm install\nnpm test\n```\n\nTo debug tests in the Cypress application:\n\n```\nnpm run test:debug\n```\n\n## Compatibility\n\nreact-axe uses advanced console logging features and works best in the Chrome browser, with limited functionality in Safari and Firefox.\n\n## Advantages\n\nI have been asked how this is different from modules like react-a11y which test the jsx.\n\nThe main difference is that react-axe tests the accessibility of the rendered DOM. This is important because many accessibility issues exist at the intersection of the DOM and the CSS and unless you have a fully rendered DOM, you will get two sorts of inaccuracies:\n\n1. False negatives because of lacking information. Example is in order to test color contrast you must know the foreground and background colors, and\n1. False positives because the element being evaluated is not in its final state and the information to communicate this to the testing algorithm is not available. Example is an inert piece of code that will be augmented once it becomes active.\n\nIf you have nice clean code, number 2 will be negligible but number 1 will always be a concern.\n","readmeFilename":"README.md","gitHead":"342b17054a81e1a24e4d8b37073fe8bcc63949a9","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.5.1-canary.342b1705","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-iSwJOrFqV6+1Sx56Zuxpohvm66Lm2jBS2E6o/ILU6pVOvA4fn5uYkbRLr/a46ny7xtyQOgOQtTALHZt5cBxg1A==","shasum":"56bd3a2734f90d509f70c9bd8c547b487fa301fe","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.5.1-canary.342b1705.tgz","fileCount":15,"unpackedSize":33010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7QSsCRA9TVsSAnZWagAArZoQAIrw866Ub1CnLxISRoyL\nO5Crt0uxncQKCW/bpl1ARPNCJ3OVQGS7quyoYvN6RFKXN0eurVNRko8umNlS\nLTsoP05DY3/NzAzIQSxXdQqDJwbkfHDs4z/kQONAh/+GXUrUu0yWqYnXTiAD\n6DeWxDOMx5eMBDiZfoDOpW8NUKGtbAFLpIW0mGtmwVMIsQjqlN5LVmdkDwdK\n97dR8IrLlHE3gzp4VTlFoI7ozZHwflBTImKyJQaci8XHKd6b0A1tIwBarGFI\n0eF03F5zflxdEeWjEU3jJ53gsvmkt0IWwXbcAFMKmH/eM0buTIhMPXdTqeC/\nUcGRQcl4d4AeHvmVmlxMWXy6Lv9wHoCNU/1xOmoXYxq4YwXdkPryaxRvH4V/\ngvRRb4x16anMj+qJjfNQuyb9kIAl332Hp4XNXslgUceM6OfwCy3XgZE30sdR\nwpt0YO8O9GqTGf8RZ2KoT3kSTXL9iP1DOMUWuIZCAItUu2dnzU2AwBheM5l0\n7P4TnzIfDe0GKgJiWFe1XaxgPBLb0WKQ14NjDUXWg6L3Ix0E+hqOc1BNfJcK\ngoJZFEIiEG+ydwEmBp8gEYZ8lBdWFYLg6bq46K6fyMXOoAAWB/YRaDY3oSZL\nS3Z1VZYyxYeVRvnwT088d3O/FmK2/6awmOZCtwP5TZVr5lYK4hlHlSsRKaUo\nATLf\r\n=+R/E\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCpq6MaSCpqw9LO14qyCr4K9A6YPKdt+peEX/P7mtFWvQIgWurb0r7jESeSPa1DGLXNXm0iKTCWNcCdc9U3dqImDC0="}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.5.1-canary.342b1705_1592591532096_0.3541379593327403"},"_hasShrinkwrap":false},"3.5.1-canary.363b623e":{"name":"react-axe","version":"3.5.1-canary.363b623e","description":"Dynamic accessibility analysis for React using axe-core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"npm run build","install:example":"cd example && npm install","eslint":"eslint --ext .js,.ts *.ts","pretest":"npm run install:example","test":"eslint index.ts && tsc && start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,ts,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"@types/react":"^16.9.20","@types/requestidlecallback":"^0.3.1","@typescript-eslint/eslint-plugin":"^2.20.0","@typescript-eslint/parser":"^2.20.0","cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^7.1.0","start-server-and-test":"^1.10.8","ts-node":"^8.6.2","typescript":"^3.7.5"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,json,css,md}":["prettier --write","git add"]},"readme":"# React-axe\n\nTest your React application with the [axe-core](https://github.com/dequelabs/axe-core) accessibility testing library. Results will show in the Chrome DevTools console.\n\n## Usage\n\n[![Greenkeeper badge](https://badges.greenkeeper.io/dequelabs/react-axe.svg)](https://greenkeeper.io/)\n\nInstall the module from NPM or elsewhere\n\n```sh\nnpm install --save-dev react-axe\n```\n\n## Initialize the module\n\nCall the exported function passing in the React and ReactDOM objects as well as a timing delay in milliseconds that will be observed between each component change and the time the analysis starts.\n\n```js\nvar React = require('react');\nvar ReactDOM = require('react-dom');\n\nif (process.env.NODE_ENV !== 'production') {\n  var axe = require('react-axe');\n  axe(React, ReactDOM, 1000);\n}\n```\n\nBe sure to only run the module in your development environment (as shown in the code above) or else your application will use more resources than necessary when in production. You can use [envify](https://www.npmjs.com/package/envify) to do this as is shown in the [example](./example/package.json#L35).\n\nOnce initialized, the module will output accessibility defect information to the Chrome Devtools console every time a component updates.\n\n## Deduplicating\n\nreact-axe will deduplicate violations using the rule that raised the violation and the CSS selector and the failureSummary of the specific node. This will ensure that each unique issue will only be printed to the console once.\n\n## Debouncing\n\nThe third argument to the exported function is the number of milliseconds to wait for component updates to cease before performing an analysis of all the changes. The changes will be batched and analyzed from the closest common ancestor of all the components that changed within the batch. This generally leads to the first analysis for a dynamic application, analyzing the entire page (which is what you want), while subsequent updates will only analyze a portion of the page (which is probably also what you want).\n\n## Shadow DOM\n\nWith version 3.0.0, react-axe now runs accessibility tests inside of open Shadow DOM. You don't have to do anything special other than run react-axe on an component encapsulated with open Shadow DOM (as opposed to closed). For more information, see the [axe-core repo](https://github.com/dequelabs/axe-core).\n\n## Configuration\n\nThere is a fourth optional argument that is a configuration object for axe-core. Read about the object here: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#api-name-axeconfigure\n\n```js\nvar config = {\n  rules: [\n    {\n      id: 'skip-link',\n      enabled: true\n    }\n  ]\n};\n\naxe(React, ReactDOM, 1000, config);\n```\n\nAxe-core's context object can be given as a fifth optional argument to specify which element should (and which should not) be tested. Read more from the Axe-core documentation: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#context-parameter\n\n```js\nvar context = {\n  include: [['#preview']]\n};\n\naxe(React, ReactDOM, 1000, undefined, context);\n```\n\n## Run the example\n\nRun a build in the example directory and start a server to see React-aXe in action in the Chrome Devtools console (opens on localhost:8888):\n\n```sh\nnpm install\ncd example\nnpm install\nnpm install -g http-server\nnpm start\n```\n\n## Run the tests\n\nInstall dependencies in the root directory (which also installs them in the example directory) and then run the tests:\n\n```\nnpm install\nnpm test\n```\n\nTo debug tests in the Cypress application:\n\n```\nnpm run test:debug\n```\n\n## Compatibility\n\nreact-axe uses advanced console logging features and works best in the Chrome browser, with limited functionality in Safari and Firefox.\n\n## Advantages\n\nI have been asked how this is different from modules like react-a11y which test the jsx.\n\nThe main difference is that react-axe tests the accessibility of the rendered DOM. This is important because many accessibility issues exist at the intersection of the DOM and the CSS and unless you have a fully rendered DOM, you will get two sorts of inaccuracies:\n\n1. False negatives because of lacking information. Example is in order to test color contrast you must know the foreground and background colors, and\n1. False positives because the element being evaluated is not in its final state and the information to communicate this to the testing algorithm is not available. Example is an inert piece of code that will be augmented once it becomes active.\n\nIf you have nice clean code, number 2 will be negligible but number 1 will always be a concern.\n","readmeFilename":"README.md","gitHead":"363b623e4afeadc70d36a2a46147bda494dea97d","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.5.1-canary.363b623e","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-eb4WwRfyBMmcox7atXWgNkNfZU4D9c16497yj69k02v4Au0qUVKqfJr1HEZyh98eJDLuppmcwlqdMm49lxb17w==","shasum":"c35b8363b8874ae41b388c0aed0d49d58671fb43","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.5.1-canary.363b623e.tgz","fileCount":15,"unpackedSize":33025,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7QYMCRA9TVsSAnZWagAAGLgP/0H3mLzDwCmO8r9sAkSr\n1xD7rzkThb2esxT49m3qE5P+yRLQecMoKrMw3HnjlG7mhaERXf7avXBJy0Qe\nnUFQZh3mNgm7J9F/srL5sZSX1l3cC3NWwOP101dPUSZHOy35+vcqn2jondqb\nctFhMj860Yp0HSWibGsdLCdQqqiNc+pC+EZ+MHYXOwMa7ezwTnIt3ltmrwCP\n1z91HJ/2IVqT2GSxMc3myfoR/4yqmH7v9qHfzmQTAI91EXuljUokRCR7WYcn\nr561EohG2qe+0HhvMmH6/0trKwHsjqlhldA9AeDn++j/nOdo/+2aTzW2meCP\nDbnKoHeEinXmKlo84nHN4clZLwvyLGNvOcRTPBMa2/G7VQZV8WRKB5CP2Gif\n+j10zCCcnv5sQ7qD6x/vhLTIw3DjOn5Wtt8bGt4tFaweQBRHNaEDFbKgJEWS\nD6O3YPJFUKHV0OWLypT4FxdV9QXT2XYOuFtfmUifr0fBbokcHWqmZDggHT+f\nv42EzJ7DAUD3g6kYB27EpmlXyELww7R17wOBvXTzW9MhxpHzYjoFAaWb/Nrw\n1+R6EN/OCVauftYNSKEEiWRcC4OvELhvDk39sQS4YgWpqNQ9/YxP3LaUdJVb\n85xmzEXrU9hZ4QdUC7fFB28IM9WFRxxTsOGuze932Z039qKTGrHNi3p9ed1k\ng53t\r\n=/y2C\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDS9Zx7bKERgU7xp0rOQLNK2yp0SgcP7nOgEsI7sN4ruQIhAOhJVdA9hK4Eq/7xFrUTKsQ0vYhA78EAuV1mFgFjCf9g"}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.5.1-canary.363b623e_1592591883612_0.7616650063094534"},"_hasShrinkwrap":false},"3.5.1-canary.55555555":{"name":"react-axe","version":"3.5.1-canary.55555555","description":"Dynamic accessibility analysis for React using axe-core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"npm run build","install:example":"cd example && npm install","eslint":"eslint --ext .js,.ts *.ts","pretest":"npm run install:example","test":"eslint index.ts && tsc && start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,ts,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"@types/react":"^16.9.20","@types/requestidlecallback":"^0.3.1","@typescript-eslint/eslint-plugin":"^2.20.0","@typescript-eslint/parser":"^2.20.0","cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^7.1.0","start-server-and-test":"^1.10.8","ts-node":"^8.6.2","typescript":"^3.7.5"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,json,css,md}":["prettier --write","git add"]},"gitHead":"363b623e4afeadc70d36a2a46147bda494dea97d","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.5.1-canary.55555555","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-sTGrCQevA1j5OoA7VmZNCOjnMoZTEWjS/UsVlpZLLiXuHxUHbn7j5+FfJ/0h5JCkpjaHk6A+eabAZz2JqA9ERA==","shasum":"bfa4af54abc03b5a9406210c4065d072b82797bc","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.5.1-canary.55555555.tgz","fileCount":10,"unpackedSize":37486,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7QdOCRA9TVsSAnZWagAAdv8P/iQwLMEQEyVLPmddruvW\nmv7NtgoEbXhuy416hQpWuMBuA9KflaHK6tbL5I2d0KZ2WIHaCHWAPSZwZAZ8\nfCJM1CZNPYjHLgaTZBlrdaxlwWUAGVvVLCUW3qSpTAtdUiRufMK5eG0S5oUU\nM0U05HlQ53xJoxGqH1Rjyh8pXGJQLX+a1FA60FlxPWnpP3cHKBpE7GhWBK5F\nFeSdyA6C9aokp/OY5IQdYRfCJZ21n+W7CWBLF779c0miE6P9gwG69T3ft8cP\nX8HT+idyF2ObfPu0VPRk2/BXLaQno4vZPpTU4AaB0Hz2vDtBe+uNNTnQl/j6\nT4Lci6xrTZVj3utts2YdQDjhvIhUfN3eZzDjRoWEyoUATZdr298qcXo6twLZ\ntAM0TGHrd0tKA9aS2cqMq4zCuL7Zx/7etkrYTseyi6WbLdfPXYJf8VBbhyOj\n94wll/HXoPuxAICpPQ3lJHF+Tzr5gl687/Lr/q3v5Am7QF5KMCc03R/SCeLn\nnO+IjtF9bf/n/rt4wp9PwTW2mwsKz/fz6eqLN1/wiXheNKxx0MzBM4dXVVVQ\nnzF49Jm/iQwRSpdVjU3CLyxei9LCU9HQY13Q8rohkpHzyQc0+6EQnIescXtG\n1i7UGDqGLs35KwfrIR/qoOiTR7bJWOS5MxdGedHsJkgsvm4xVzEVuxyrLz77\ntkpt\r\n=jgtI\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDJtwhOvmS9gxnPva7i8kBQnhWQFbsMbUsRmSnoMcBlWgIgNGGcvF7OgRWGHdYxhg0U8eQR6q+zyl3OVZUfjOiZPUk="}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.5.1-canary.55555555_1592592206141_0.37659348899216294"},"_hasShrinkwrap":false},"3.5.1-canary.e81a5ac9":{"name":"react-axe","version":"3.5.1-canary.e81a5ac9","description":"Dynamic accessibility analysis for React using axe-core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"npm run build","install:example":"cd example && npm install","eslint":"eslint --ext .js,.ts *.ts","pretest":"npm run install:example","test":"eslint index.ts && tsc && start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,ts,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"@types/react":"^16.9.20","@types/requestidlecallback":"^0.3.1","@typescript-eslint/eslint-plugin":"^2.20.0","@typescript-eslint/parser":"^2.20.0","cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^7.1.0","start-server-and-test":"^1.10.8","ts-node":"^8.6.2","typescript":"^3.7.5"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,json,css,md}":["prettier --write","git add"]},"readme":"# React-axe\n\nTest your React application with the [axe-core](https://github.com/dequelabs/axe-core) accessibility testing library. Results will show in the Chrome DevTools console.\n\n## Usage\n\n[![Greenkeeper badge](https://badges.greenkeeper.io/dequelabs/react-axe.svg)](https://greenkeeper.io/)\n\nInstall the module from NPM or elsewhere\n\n```sh\nnpm install --save-dev react-axe\n```\n\n## Initialize the module\n\nCall the exported function passing in the React and ReactDOM objects as well as a timing delay in milliseconds that will be observed between each component change and the time the analysis starts.\n\n```js\nvar React = require('react');\nvar ReactDOM = require('react-dom');\n\nif (process.env.NODE_ENV !== 'production') {\n  var axe = require('react-axe');\n  axe(React, ReactDOM, 1000);\n}\n```\n\nBe sure to only run the module in your development environment (as shown in the code above) or else your application will use more resources than necessary when in production. You can use [envify](https://www.npmjs.com/package/envify) to do this as is shown in the [example](./example/package.json#L35).\n\nOnce initialized, the module will output accessibility defect information to the Chrome Devtools console every time a component updates.\n\n## Deduplicating\n\nreact-axe will deduplicate violations using the rule that raised the violation and the CSS selector and the failureSummary of the specific node. This will ensure that each unique issue will only be printed to the console once.\n\n## Debouncing\n\nThe third argument to the exported function is the number of milliseconds to wait for component updates to cease before performing an analysis of all the changes. The changes will be batched and analyzed from the closest common ancestor of all the components that changed within the batch. This generally leads to the first analysis for a dynamic application, analyzing the entire page (which is what you want), while subsequent updates will only analyze a portion of the page (which is probably also what you want).\n\n## Shadow DOM\n\nWith version 3.0.0, react-axe now runs accessibility tests inside of open Shadow DOM. You don't have to do anything special other than run react-axe on an component encapsulated with open Shadow DOM (as opposed to closed). For more information, see the [axe-core repo](https://github.com/dequelabs/axe-core).\n\n## Configuration\n\nThere is a fourth optional argument that is a configuration object for axe-core. Read about the object here: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#api-name-axeconfigure\n\n```js\nvar config = {\n  rules: [\n    {\n      id: 'skip-link',\n      enabled: true\n    }\n  ]\n};\n\naxe(React, ReactDOM, 1000, config);\n```\n\nAxe-core's context object can be given as a fifth optional argument to specify which element should (and which should not) be tested. Read more from the Axe-core documentation: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#context-parameter\n\n```js\nvar context = {\n  include: [['#preview']]\n};\n\naxe(React, ReactDOM, 1000, undefined, context);\n```\n\n## Run the example\n\nRun a build in the example directory and start a server to see React-aXe in action in the Chrome Devtools console (opens on localhost:8888):\n\n```sh\nnpm install\ncd example\nnpm install\nnpm install -g http-server\nnpm start\n```\n\n## Run the tests\n\nInstall dependencies in the root directory (which also installs them in the example directory) and then run the tests:\n\n```\nnpm install\nnpm test\n```\n\nTo debug tests in the Cypress application:\n\n```\nnpm run test:debug\n```\n\n## Compatibility\n\nreact-axe uses advanced console logging features and works best in the Chrome browser, with limited functionality in Safari and Firefox.\n\n## Advantages\n\nI have been asked how this is different from modules like react-a11y which test the jsx.\n\nThe main difference is that react-axe tests the accessibility of the rendered DOM. This is important because many accessibility issues exist at the intersection of the DOM and the CSS and unless you have a fully rendered DOM, you will get two sorts of inaccuracies:\n\n1. False negatives because of lacking information. Example is in order to test color contrast you must know the foreground and background colors, and\n1. False positives because the element being evaluated is not in its final state and the information to communicate this to the testing algorithm is not available. Example is an inert piece of code that will be augmented once it becomes active.\n\nIf you have nice clean code, number 2 will be negligible but number 1 will always be a concern.\n","readmeFilename":"README.md","gitHead":"e81a5ac99a84a0b41e3a0681d21558e608b13f69","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.5.1-canary.e81a5ac9","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-3+nD/4+tDCvi0aMG/OYxlsEuwyR7EJua9U2F3d7aJ6itS1W3204V5ndBwSyHpNatz/S+9T+errNAbf8xDSTv6w==","shasum":"ee44cad73a63d3233dff6d456fb10d73d46203da","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.5.1-canary.e81a5ac9.tgz","fileCount":4,"unpackedSize":15590,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7QgUCRA9TVsSAnZWagAAl8AP+wU7JgI4R8TlKAjLR95L\nOrWLcQ342PnB+ieaIle/vXNUWuYK8GCiY0FNWveWXDnp3tHdHZoafF8vlAeQ\nVs5sBlZ0f/LGZIJc1T1JFkNMpNOBfC835QRXcHxghVNTGyB4QIXovDyNrDHa\ng3+h4bq41F2ArHN5YFZjiRAv94RyeHY3VMmnAH35FraJxyUhiF7jAENEGNqk\niArEvThUYIbGKc5rPV3aOVKOf0nz9pKEEb90rYqMqLjwH27HnJqGvVDpF+Bg\nYbADG1NtwmXQ3xTm2ltMoTQfaWNwC9uAWfS95XwUp84H6W8hBO8ZPc+9d7Pt\nFDdVwuUJZeythHrVYEJPOOU8ucArZSMnfG4ps888YWYm7OmZ7sEMPchJQOdW\nadp+bDdpBohnd94ew2Hds56TCKbOjx0Ior78rnZmNlihs0INSvZu65UM/IzD\nvo/Ufma2n4MwAIQvj3owFHQxR5fhzmcBLZ9p3NtnH7n+3M0gWybsgUHNW+5M\nZAqe3e8k3Jszp5b6ZHh1MTKUtLRdoBJHycy4DXhILR0PILopIM+Wr4O/dHt1\n8AOgRTdRw2aDSB7wJMXJOaan1g+6UVPvBcUPZTZbLhDo19TlSezBMhVoL/h8\nLk79qS8hE7lpyD5e+MpiYil0VfzSWQE3pWWtgnAyBD9e1Ncul1QRTFidQe5i\nESR2\r\n=XlTr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCz/CfqUTTpt22C7/vFsDWLVrT3RfMJN/Zslq9PQdrq7QIgBREq6FBgGFUdu1o/skvOvi7A/N2weFqijZUqMA5QCvU="}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.5.1-canary.e81a5ac9_1592592404233_0.5271002479723195"},"_hasShrinkwrap":false},"3.5.1-canary.752e547e":{"name":"react-axe","version":"3.5.1-canary.752e547e","description":"Dynamic accessibility analysis for React using axe-core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"npm run build","install:example":"cd example && npm install","eslint":"eslint --ext .js,.ts *.ts","pretest":"npm run install:example","test":"eslint index.ts && tsc && start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,ts,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"@types/react":"^16.9.20","@types/requestidlecallback":"^0.3.1","@typescript-eslint/eslint-plugin":"^2.20.0","@typescript-eslint/parser":"^2.20.0","cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^7.1.0","start-server-and-test":"^1.10.8","ts-node":"^8.6.2","typescript":"^3.7.5"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,json,css,md}":["prettier --write","git add"]},"readme":"# React-axe\n\nTest your React application with the [axe-core](https://github.com/dequelabs/axe-core) accessibility testing library. Results will show in the Chrome DevTools console.\n\n## Usage\n\n[![Greenkeeper badge](https://badges.greenkeeper.io/dequelabs/react-axe.svg)](https://greenkeeper.io/)\n\nInstall the module from NPM or elsewhere\n\n```sh\nnpm install --save-dev react-axe\n```\n\n## Initialize the module\n\nCall the exported function passing in the React and ReactDOM objects as well as a timing delay in milliseconds that will be observed between each component change and the time the analysis starts.\n\n```js\nvar React = require('react');\nvar ReactDOM = require('react-dom');\n\nif (process.env.NODE_ENV !== 'production') {\n  var axe = require('react-axe');\n  axe(React, ReactDOM, 1000);\n}\n```\n\nBe sure to only run the module in your development environment (as shown in the code above) or else your application will use more resources than necessary when in production. You can use [envify](https://www.npmjs.com/package/envify) to do this as is shown in the [example](./example/package.json#L35).\n\nOnce initialized, the module will output accessibility defect information to the Chrome Devtools console every time a component updates.\n\n## Deduplicating\n\nreact-axe will deduplicate violations using the rule that raised the violation and the CSS selector and the failureSummary of the specific node. This will ensure that each unique issue will only be printed to the console once.\n\n## Debouncing\n\nThe third argument to the exported function is the number of milliseconds to wait for component updates to cease before performing an analysis of all the changes. The changes will be batched and analyzed from the closest common ancestor of all the components that changed within the batch. This generally leads to the first analysis for a dynamic application, analyzing the entire page (which is what you want), while subsequent updates will only analyze a portion of the page (which is probably also what you want).\n\n## Shadow DOM\n\nWith version 3.0.0, react-axe now runs accessibility tests inside of open Shadow DOM. You don't have to do anything special other than run react-axe on an component encapsulated with open Shadow DOM (as opposed to closed). For more information, see the [axe-core repo](https://github.com/dequelabs/axe-core).\n\n## Configuration\n\nThere is a fourth optional argument that is a configuration object for axe-core. Read about the object here: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#api-name-axeconfigure\n\n```js\nvar config = {\n  rules: [\n    {\n      id: 'skip-link',\n      enabled: true\n    }\n  ]\n};\n\naxe(React, ReactDOM, 1000, config);\n```\n\nAxe-core's context object can be given as a fifth optional argument to specify which element should (and which should not) be tested. Read more from the Axe-core documentation: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#context-parameter\n\n```js\nvar context = {\n  include: [['#preview']]\n};\n\naxe(React, ReactDOM, 1000, undefined, context);\n```\n\n## Run the example\n\nRun a build in the example directory and start a server to see React-aXe in action in the Chrome Devtools console (opens on localhost:8888):\n\n```sh\nnpm install\ncd example\nnpm install\nnpm install -g http-server\nnpm start\n```\n\n## Run the tests\n\nInstall dependencies in the root directory (which also installs them in the example directory) and then run the tests:\n\n```\nnpm install\nnpm test\n```\n\nTo debug tests in the Cypress application:\n\n```\nnpm run test:debug\n```\n\n## Compatibility\n\nreact-axe uses advanced console logging features and works best in the Chrome browser, with limited functionality in Safari and Firefox.\n\n## Advantages\n\nI have been asked how this is different from modules like react-a11y which test the jsx.\n\nThe main difference is that react-axe tests the accessibility of the rendered DOM. This is important because many accessibility issues exist at the intersection of the DOM and the CSS and unless you have a fully rendered DOM, you will get two sorts of inaccuracies:\n\n1. False negatives because of lacking information. Example is in order to test color contrast you must know the foreground and background colors, and\n1. False positives because the element being evaluated is not in its final state and the information to communicate this to the testing algorithm is not available. Example is an inert piece of code that will be augmented once it becomes active.\n\nIf you have nice clean code, number 2 will be negligible but number 1 will always be a concern.\n","readmeFilename":"README.md","gitHead":"752e547e7e1802c541e7ba005bc4b90447de1d89","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.5.1-canary.752e547e","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-GH5UkefTYc2VTyajPaAbQAzuYNRvKNUjvkrZCXglgvCXBbA+Xou/zs/y1h7WqR+F9ykWVZRugfJEBMthDiGLGg==","shasum":"79d028fd11533f54f5eabcecbad7513fcb4d2927","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.5.1-canary.752e547e.tgz","fileCount":4,"unpackedSize":15590,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7QkaCRA9TVsSAnZWagAAkCQP/Ap/7GYY6hONG09S0wCv\nmCo8HkczvU+tApjt9bVpBBl2D6Xn9dZQgx3K+AO0NhyuCqUhr1vhn8R/Yg2W\nMADOI/boU0aQQh4nU5QMhUxtOWshULpmk+M0uFcuG+mV2vxRupAqodU22x1v\nEPVAUH1MqNdVfVh2rptcM0mudFU0GAy5zkg+LkHbdo0ehTxwpppsZ3Yk+2Hu\nWt4HuN8I3RZTWbYwhn1HfsrV6PdZSINeOKC+QEmyYlu5BfKVZ48kLFszlNkH\n5+RvhQQYP+no19faKgIwbafA+owj+QWJCenebNaj//MEZ05s701S0qoZVy1W\n1QRvygJC3OZAehOmbqZhzrTiZA+4P/6j3AysagMa7HYQ4AxcAnYmjCLO90xb\nmcGLAMCoaDDwui/ph1Yv7u3D8YGfnRDXJ8Dm2gr0H2Ks7ECADU30qivwDtc4\nJrs8LraIZrsomzhJxdCKXeHQhaAu4xWPoV5tuy5oPL1MIXM7IVkKNG9F7+d1\nPITmrKy2ayAZzhUOJNTcEvY93uSozT55G6p+SqSeHy79Fo0MFUwMLuSRIaGD\nC99SJynRu3NeHZDp1MrP+spA1WCqILfRfrW59ss+obr5E2VdOBqlep6Ku+KI\nOFYzAT0Zae4drqk1VHzEr4wpCzqDc828bdsXqtYIfxeovfXVVxvsbj/Z/+qv\ns2e0\r\n=SLOk\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHK+DRyj9JqkS3dRjk2rjxxT69sXNTpuMUFEygkuCIBEAiAtoCyAoQirODWNlvKbG5MQoKBz2hwgmo9TlfyA0HAH7w=="}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.5.1-canary.752e547e_1592592665978_0.0641951180847733"},"_hasShrinkwrap":false},"3.5.1-canary.32fa8b00":{"name":"react-axe","version":"3.5.1-canary.32fa8b00","description":"Dynamic accessibility analysis for React using axe-core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"npm run build","install:example":"cd example && npm install","eslint":"eslint --ext .js,.ts *.ts","pretest":"npm run install:example","test":"eslint index.ts && tsc && start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,ts,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"@types/react":"^16.9.20","@types/requestidlecallback":"^0.3.1","@typescript-eslint/eslint-plugin":"^2.20.0","@typescript-eslint/parser":"^2.20.0","cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^7.1.0","start-server-and-test":"^1.10.8","ts-node":"^8.6.2","typescript":"^3.7.5"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,json,css,md}":["prettier --write","git add"]},"readme":"# React-axe\n\nTest your React application with the [axe-core](https://github.com/dequelabs/axe-core) accessibility testing library. Results will show in the Chrome DevTools console.\n\n## Usage\n\n[![Greenkeeper badge](https://badges.greenkeeper.io/dequelabs/react-axe.svg)](https://greenkeeper.io/)\n\nInstall the module from NPM or elsewhere\n\n```sh\nnpm install --save-dev react-axe\n```\n\n## Initialize the module\n\nCall the exported function passing in the React and ReactDOM objects as well as a timing delay in milliseconds that will be observed between each component change and the time the analysis starts.\n\n```js\nvar React = require('react');\nvar ReactDOM = require('react-dom');\n\nif (process.env.NODE_ENV !== 'production') {\n  var axe = require('react-axe');\n  axe(React, ReactDOM, 1000);\n}\n```\n\nBe sure to only run the module in your development environment (as shown in the code above) or else your application will use more resources than necessary when in production. You can use [envify](https://www.npmjs.com/package/envify) to do this as is shown in the [example](./example/package.json#L35).\n\nOnce initialized, the module will output accessibility defect information to the Chrome Devtools console every time a component updates.\n\n## Deduplicating\n\nreact-axe will deduplicate violations using the rule that raised the violation and the CSS selector and the failureSummary of the specific node. This will ensure that each unique issue will only be printed to the console once.\n\n## Debouncing\n\nThe third argument to the exported function is the number of milliseconds to wait for component updates to cease before performing an analysis of all the changes. The changes will be batched and analyzed from the closest common ancestor of all the components that changed within the batch. This generally leads to the first analysis for a dynamic application, analyzing the entire page (which is what you want), while subsequent updates will only analyze a portion of the page (which is probably also what you want).\n\n## Shadow DOM\n\nWith version 3.0.0, react-axe now runs accessibility tests inside of open Shadow DOM. You don't have to do anything special other than run react-axe on an component encapsulated with open Shadow DOM (as opposed to closed). For more information, see the [axe-core repo](https://github.com/dequelabs/axe-core).\n\n## Configuration\n\nThere is a fourth optional argument that is a configuration object for axe-core. Read about the object here: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#api-name-axeconfigure\n\n```js\nvar config = {\n  rules: [\n    {\n      id: 'skip-link',\n      enabled: true\n    }\n  ]\n};\n\naxe(React, ReactDOM, 1000, config);\n```\n\nAxe-core's context object can be given as a fifth optional argument to specify which element should (and which should not) be tested. Read more from the Axe-core documentation: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#context-parameter\n\n```js\nvar context = {\n  include: [['#preview']]\n};\n\naxe(React, ReactDOM, 1000, undefined, context);\n```\n\n## Run the example\n\nRun a build in the example directory and start a server to see React-aXe in action in the Chrome Devtools console (opens on localhost:8888):\n\n```sh\nnpm install\ncd example\nnpm install\nnpm install -g http-server\nnpm start\n```\n\n## Run the tests\n\nInstall dependencies in the root directory (which also installs them in the example directory) and then run the tests:\n\n```\nnpm install\nnpm test\n```\n\nTo debug tests in the Cypress application:\n\n```\nnpm run test:debug\n```\n\n## Compatibility\n\nreact-axe uses advanced console logging features and works best in the Chrome browser, with limited functionality in Safari and Firefox.\n\n## Advantages\n\nI have been asked how this is different from modules like react-a11y which test the jsx.\n\nThe main difference is that react-axe tests the accessibility of the rendered DOM. This is important because many accessibility issues exist at the intersection of the DOM and the CSS and unless you have a fully rendered DOM, you will get two sorts of inaccuracies:\n\n1. False negatives because of lacking information. Example is in order to test color contrast you must know the foreground and background colors, and\n1. False positives because the element being evaluated is not in its final state and the information to communicate this to the testing algorithm is not available. Example is an inert piece of code that will be augmented once it becomes active.\n\nIf you have nice clean code, number 2 will be negligible but number 1 will always be a concern.\n","readmeFilename":"README.md","gitHead":"32fa8b0076a4df4a6030d1065faa4093c8a89a71","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.5.1-canary.32fa8b00","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-f2HtdYuxZvF7tseDpDTfRQu4jdXKH+RpKsM7no0cZGXyCCQPRtU6XAn5jBAtKqnSbaTibSplWVh/ikEwuQz3Cw==","shasum":"be3994e3472f94a0cc2410204b974ebe940a8228","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.5.1-canary.32fa8b00.tgz","fileCount":10,"unpackedSize":37485,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7QnZCRA9TVsSAnZWagAAmZ0P/AyLeadSX+TN4W7ZHGhm\nbvuvgc63RsKtfuVUoYbahkyr69EcAYmRRgaUMkkqQSVZDep9U7uM9zoMFOeX\nilN2LkXWp/aQP4ofX97+FQIGMcvSOBqpjw5ugx1or+JE8yiiTsB96JcoXBTR\npbuNselc7sovwJNWvky9l8E5fPB4p6e08jj62IpWl09M0fuUnWGRoLslK8Mo\nYTjq5Id+5qP5huhEZiqWsI64a7AYi4k1AQsR49NXLVrYciwkjcIR5meRlpoG\nCy0oJX+lLBGSMFKy7/B4hbA2F5SueYp0XFSft0oVoR0EElSNGh27kIXfr/wS\ng0Pcl8pxqC6TMLxw1ie897eRY7LXaIzy+AJeEXGzUEll8fE7MJMu/Asb0YsW\nE/LWJiHj/9SgrvEFyqpntNQVof7cNGQ6KaZvNsYW0Yaj8HIpUiqJKHX49p4H\nSA245rDKUtVmrNYarcFIVf8p7Lu8zmHtwOZ+yChSTTDavyvFBNFOmCk9fYn3\nrNUQbCeTss/D3uj2GBwHezhbeKNQjmzXo4euog9RLUw92OIzQ4anrp4ddhif\nLGwTeSumoxhwb9IMf2+wstn6+aXAPj59kyOp8AI2PuePMM1cnaPppugieYfM\naH0Ek8S2Rdq1Fh4x/NIcmjqK5OAq71GX68oDLNAcfG59OIcuT3UpkYRXXltq\nb0k1\r\n=gt2s\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAQGkDJGhxdsUPj4mOP5vndJ3SDjPv8mQwkMr53BxI1IAiEA/3SR9VIjrouD2L1qZZQNPl3d33kAswEzcHaFzr+7fys="}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.5.1-canary.32fa8b00_1592592856940_0.26087997124410056"},"_hasShrinkwrap":false},"3.5.1-canary.5e4bfed7":{"name":"react-axe","version":"3.5.1-canary.5e4bfed7","description":"Dynamic accessibility analysis for React using axe-core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"npm run build","install:example":"cd example && npm install","eslint":"eslint --ext .js,.ts *.ts","pretest":"npm run install:example","test":"eslint index.ts && tsc && start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,ts,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"@types/react":"^16.9.20","@types/requestidlecallback":"^0.3.1","@typescript-eslint/eslint-plugin":"^2.20.0","@typescript-eslint/parser":"^2.20.0","cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^7.1.0","start-server-and-test":"^1.10.8","ts-node":"^8.6.2","typescript":"^3.7.5"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,json,css,md}":["prettier --write","git add"]},"readme":"# React-axe\n\nTest your React application with the [axe-core](https://github.com/dequelabs/axe-core) accessibility testing library. Results will show in the Chrome DevTools console.\n\n## Usage\n\n[![Greenkeeper badge](https://badges.greenkeeper.io/dequelabs/react-axe.svg)](https://greenkeeper.io/)\n\nInstall the module from NPM or elsewhere\n\n```sh\nnpm install --save-dev react-axe\n```\n\n## Initialize the module\n\nCall the exported function passing in the React and ReactDOM objects as well as a timing delay in milliseconds that will be observed between each component change and the time the analysis starts.\n\n```js\nvar React = require('react');\nvar ReactDOM = require('react-dom');\n\nif (process.env.NODE_ENV !== 'production') {\n  var axe = require('react-axe');\n  axe(React, ReactDOM, 1000);\n}\n```\n\nBe sure to only run the module in your development environment (as shown in the code above) or else your application will use more resources than necessary when in production. You can use [envify](https://www.npmjs.com/package/envify) to do this as is shown in the [example](./example/package.json#L35).\n\nOnce initialized, the module will output accessibility defect information to the Chrome Devtools console every time a component updates.\n\n## Deduplicating\n\nreact-axe will deduplicate violations using the rule that raised the violation and the CSS selector and the failureSummary of the specific node. This will ensure that each unique issue will only be printed to the console once.\n\n## Debouncing\n\nThe third argument to the exported function is the number of milliseconds to wait for component updates to cease before performing an analysis of all the changes. The changes will be batched and analyzed from the closest common ancestor of all the components that changed within the batch. This generally leads to the first analysis for a dynamic application, analyzing the entire page (which is what you want), while subsequent updates will only analyze a portion of the page (which is probably also what you want).\n\n## Shadow DOM\n\nWith version 3.0.0, react-axe now runs accessibility tests inside of open Shadow DOM. You don't have to do anything special other than run react-axe on an component encapsulated with open Shadow DOM (as opposed to closed). For more information, see the [axe-core repo](https://github.com/dequelabs/axe-core).\n\n## Configuration\n\nThere is a fourth optional argument that is a configuration object for axe-core. Read about the object here: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#api-name-axeconfigure\n\n```js\nvar config = {\n  rules: [\n    {\n      id: 'skip-link',\n      enabled: true\n    }\n  ]\n};\n\naxe(React, ReactDOM, 1000, config);\n```\n\nAxe-core's context object can be given as a fifth optional argument to specify which element should (and which should not) be tested. Read more from the Axe-core documentation: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#context-parameter\n\n```js\nvar context = {\n  include: [['#preview']]\n};\n\naxe(React, ReactDOM, 1000, undefined, context);\n```\n\n## Run the example\n\nRun a build in the example directory and start a server to see React-aXe in action in the Chrome Devtools console (opens on localhost:8888):\n\n```sh\nnpm install\ncd example\nnpm install\nnpm install -g http-server\nnpm start\n```\n\n## Run the tests\n\nInstall dependencies in the root directory (which also installs them in the example directory) and then run the tests:\n\n```\nnpm install\nnpm test\n```\n\nTo debug tests in the Cypress application:\n\n```\nnpm run test:debug\n```\n\n## Compatibility\n\nreact-axe uses advanced console logging features and works best in the Chrome browser, with limited functionality in Safari and Firefox.\n\n## Advantages\n\nI have been asked how this is different from modules like react-a11y which test the jsx.\n\nThe main difference is that react-axe tests the accessibility of the rendered DOM. This is important because many accessibility issues exist at the intersection of the DOM and the CSS and unless you have a fully rendered DOM, you will get two sorts of inaccuracies:\n\n1. False negatives because of lacking information. Example is in order to test color contrast you must know the foreground and background colors, and\n1. False positives because the element being evaluated is not in its final state and the information to communicate this to the testing algorithm is not available. Example is an inert piece of code that will be augmented once it becomes active.\n\nIf you have nice clean code, number 2 will be negligible but number 1 will always be a concern.\n","readmeFilename":"README.md","gitHead":"5e4bfed7c3f55fd32e15b7efacf15b2114ec0296","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.5.1-canary.5e4bfed7","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-5SavBRJcUaPq5fIQEYczWjuTK2Ln4KFpUbNhdiPMTZtW6tjRuI35YNdXI3B/NczRKNjaMMS5cjnGoJ7Ec+Ypug==","shasum":"62c66bd8df39adab8a3edcd17efa864c0ae7b137","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.5.1-canary.5e4bfed7.tgz","fileCount":10,"unpackedSize":37485,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7QpdCRA9TVsSAnZWagAAkdwP/2e4hKzVwvR4EZlDrDBA\njqNtEzlplifp/HYtBMutustqOIza9ydeU0RdO0OHILCA4aT2RPEjvTOLhUGp\nK/G3qXI+Yo6fMu6gFShqjXFi2bMFlca9apeQz33dj19ImgkX+9YJw8qS+uQy\nl/rwDM+5onNQNJg2qX6wWrjk0JfaNxhyLS9kXyFGsqDKkAlqmblF+pKmMvWq\ncTwMuLZJO8eIZCcjOcq2lx+/g53PnT+3C1zAfxip2SNdfmGQx9mrcLA6jmYR\nEG5HbNoTvwNVKr1UHofmRwNj1pQq+jYdxuDzMzOkRtBcXg7IER9Oc1fAWK2s\nr84kqXSjmCrYbVLWInmzupHwGam5xXNrhbaYorKkWFklDjviCrmbtCdntlO4\nZmXAetUKeuvjA14nzJJr0tu3FGywbh9Ox7vg0T5ujMXyyKkJEIpjuWjyYzzn\ntybnhJfVYuN8DDVEepve8drMR0H+7LNIa0Zlcj7qvmPdtbC+c7kV3NtPXPsV\nhL3oS2HlPYXT3m+vTmU1xtw3FtGk7gn5JACh/1zJAOb27NxrFBSiCU66Wm6F\ne+k4hajD5wt36UIrIOtCQm6VKT+2wYViRZ6iAddnPTiEmBWR2OBc5nXtXuhC\nPky4LE+5oXa//5pexZ0OKLsAu0n8Xwk4CyInp9YOhC+k/un+IYKldQgqc1+l\nPK8E\r\n=oBIg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEH1UJZ3IDqHCbxin9ZiPI8vw2uHOYgHuGT5mZgjEZgXAiBJKWYMObgpNT862JmbQyNUexN+ERwOZh6go5o7dUQ/vg=="}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.5.1-canary.5e4bfed7_1592592988453_0.4621113303713824"},"_hasShrinkwrap":false},"3.5.1-canary.b0f3f7bb":{"name":"react-axe","version":"3.5.1-canary.b0f3f7bb","description":"Dynamic accessibility analysis for React using axe-core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"npm run build","install:example":"cd example && npm install","eslint":"eslint --ext .js,.ts *.ts","pretest":"npm run install:example","test":"eslint index.ts && tsc && start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,ts,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"@types/react":"^16.9.20","@types/requestidlecallback":"^0.3.1","@typescript-eslint/eslint-plugin":"^2.20.0","@typescript-eslint/parser":"^2.20.0","cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^7.1.0","start-server-and-test":"^1.10.8","ts-node":"^8.6.2","typescript":"^3.7.5"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,json,css,md}":["prettier --write","git add"]},"readme":"# React-axe\n\nTest your React application with the [axe-core](https://github.com/dequelabs/axe-core) accessibility testing library. Results will show in the Chrome DevTools console.\n\n## Usage\n\n[![Greenkeeper badge](https://badges.greenkeeper.io/dequelabs/react-axe.svg)](https://greenkeeper.io/)\n\nInstall the module from NPM or elsewhere\n\n```sh\nnpm install --save-dev react-axe\n```\n\n## Initialize the module\n\nCall the exported function passing in the React and ReactDOM objects as well as a timing delay in milliseconds that will be observed between each component change and the time the analysis starts.\n\n```js\nvar React = require('react');\nvar ReactDOM = require('react-dom');\n\nif (process.env.NODE_ENV !== 'production') {\n  var axe = require('react-axe');\n  axe(React, ReactDOM, 1000);\n}\n```\n\nBe sure to only run the module in your development environment (as shown in the code above) or else your application will use more resources than necessary when in production. You can use [envify](https://www.npmjs.com/package/envify) to do this as is shown in the [example](./example/package.json#L35).\n\nOnce initialized, the module will output accessibility defect information to the Chrome Devtools console every time a component updates.\n\n## Deduplicating\n\nreact-axe will deduplicate violations using the rule that raised the violation and the CSS selector and the failureSummary of the specific node. This will ensure that each unique issue will only be printed to the console once.\n\n## Debouncing\n\nThe third argument to the exported function is the number of milliseconds to wait for component updates to cease before performing an analysis of all the changes. The changes will be batched and analyzed from the closest common ancestor of all the components that changed within the batch. This generally leads to the first analysis for a dynamic application, analyzing the entire page (which is what you want), while subsequent updates will only analyze a portion of the page (which is probably also what you want).\n\n## Shadow DOM\n\nWith version 3.0.0, react-axe now runs accessibility tests inside of open Shadow DOM. You don't have to do anything special other than run react-axe on an component encapsulated with open Shadow DOM (as opposed to closed). For more information, see the [axe-core repo](https://github.com/dequelabs/axe-core).\n\n## Configuration\n\nThere is a fourth optional argument that is a configuration object for axe-core. Read about the object here: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#api-name-axeconfigure\n\n```js\nvar config = {\n  rules: [\n    {\n      id: 'skip-link',\n      enabled: true\n    }\n  ]\n};\n\naxe(React, ReactDOM, 1000, config);\n```\n\nAxe-core's context object can be given as a fifth optional argument to specify which element should (and which should not) be tested. Read more from the Axe-core documentation: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#context-parameter\n\n```js\nvar context = {\n  include: [['#preview']]\n};\n\naxe(React, ReactDOM, 1000, undefined, context);\n```\n\n## Run the example\n\nRun a build in the example directory and start a server to see React-aXe in action in the Chrome Devtools console (opens on localhost:8888):\n\n```sh\nnpm install\ncd example\nnpm install\nnpm install -g http-server\nnpm start\n```\n\n## Run the tests\n\nInstall dependencies in the root directory (which also installs them in the example directory) and then run the tests:\n\n```\nnpm install\nnpm test\n```\n\nTo debug tests in the Cypress application:\n\n```\nnpm run test:debug\n```\n\n## Compatibility\n\nreact-axe uses advanced console logging features and works best in the Chrome browser, with limited functionality in Safari and Firefox.\n\n## Advantages\n\nI have been asked how this is different from modules like react-a11y which test the jsx.\n\nThe main difference is that react-axe tests the accessibility of the rendered DOM. This is important because many accessibility issues exist at the intersection of the DOM and the CSS and unless you have a fully rendered DOM, you will get two sorts of inaccuracies:\n\n1. False negatives because of lacking information. Example is in order to test color contrast you must know the foreground and background colors, and\n1. False positives because the element being evaluated is not in its final state and the information to communicate this to the testing algorithm is not available. Example is an inert piece of code that will be augmented once it becomes active.\n\nIf you have nice clean code, number 2 will be negligible but number 1 will always be a concern.\n","readmeFilename":"README.md","gitHead":"b0f3f7bb167810574994c3c567d04ddcc8ae9897","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.5.1-canary.b0f3f7bb","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-e9+A9K00+gDQw4TAYiv3ARdS4UFiQak4IFbdcXGjEPQtXY6mkcOzYg3Ufy/t+jPnsaQHXQmaBbEvpoJ6DpTuDQ==","shasum":"02ad0c9dcf132ecfc483bcd6662c6444096789bd","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.5.1-canary.b0f3f7bb.tgz","fileCount":10,"unpackedSize":37485,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7QvoCRA9TVsSAnZWagAAuoEP/3+mlxgXLQM2CYzafKfI\nj23oVFfHCfbgoj08pN43p0+7hawCOr9WGy8GvZaSEvelcHto5VAeYhPeIsT1\n+9gotHXnITCCUk9YTyR4WAfoQ7Nf2GzV+UrFaSjrJ9w6SFpgUmNkUV0CU9Do\nvKiQ7kFKk6UhbIFeokNj9vd65DRR9FGOoeOpKZCtihBYdsDgaoLLkOFCOGgb\nhbKp29xVV4+S+Y/ZR8xm8JCt8p78zV/Ejik52/+wCWhsyqBlR09COxGHnZeA\nUILYDB66/pI+YpCYPCaDIWbQOVuLkKXYvcjtLSb8CcvyESLupGssD7r66NsE\nDfiJeypbm6vR06byPxPpZxewwtRPOZwC07TmYiUn4tXvQxF/wyg20orShJ68\nX9WyX14BtPju3B5l+hHtJlczAMVLzidda7TCWZoX4hxUBLx5u5hub7AuABST\newAf4yf2Oa9yCoAmNFo/sUbNM0XBcz8B5UKVjPI7cEWxjq8VDL1PPxKi03O/\nVfVuM8lnmTKVAyPdA2ppEO6bHREaKXBikgcUp4jkFal/D4cAZeE1qUOnthF3\nl0Uo76qW69MY8R0Yr2LLSOI5QvdoaD2dOT9c9RrjZSgPcxrXoUVAZK0gIRXI\nHig1fCSb5vu6wXMCK89rSqQgjgQXjS7/dHM8pvFg/02L2+6z2Uo4hbPiZ0GO\n2Yxy\r\n=oI/q\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC2/T3lD+ubdk1Yrr/fDDvOMXgFFKsiE6QI7avA6G1z8gIgOw+vP3F/sDrQyFLbwJQ7MkCf+NbWXZJTNI694vI04KI="}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.5.1-canary.b0f3f7bb_1592593384276_0.8892961124441994"},"_hasShrinkwrap":false},"3.5.2":{"name":"react-axe","version":"3.5.2","description":"Dynamic accessibility analysis for React using axe-core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"npm run build","install:example":"cd example && npm install","eslint":"eslint --ext .js,.ts *.ts","pretest":"npm run install:example","test":"eslint index.ts && tsc && start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,ts,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"@types/react":"^16.9.20","@types/requestidlecallback":"^0.3.1","@typescript-eslint/eslint-plugin":"^2.20.0","@typescript-eslint/parser":"^2.20.0","cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^7.1.0","start-server-and-test":"^1.10.8","ts-node":"^8.6.2","typescript":"^3.7.5"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,json,css,md}":["prettier --write","git add"]},"gitHead":"b50254e5a7415a3979c5c5a077c273797ce0d0db","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.5.2","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-uEgCO0lg3e2iseKi+pWiyJO6T63b4K7EN7PD2y73Dz++A7o1DKD5Cw1+fRDlcDeqNYUVM8bFF7jFYtEOxJpQkg==","shasum":"09b25d7e169a64b680d921de9a735c4d66689e0d","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.5.2.tgz","fileCount":10,"unpackedSize":37560,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7ROMCRA9TVsSAnZWagAAs1sP/iQkbrTo4PdWRILgUBpP\nyj47RMDnhQmboc2HJw3TGQXtrqOb3JfrYyW1O0YDdWIKO57O+xxeRMh6jIPa\n1a+lAOA5piO94322Y8KNC8m+dK02cBmazx+TEPdwLw2ODOtDFPLhy2QZaGOz\n3tWXq+6kEhT6f5WKaAokTzW2zRpqzTCDkn76ModPhiZC30nEMxUyGWnr+gJU\n8lJvt1br0n8K8DUdiOOr78K3cC9jejpeosXtOtR/PaCdmnkBeJNa+fxBckxm\nm5PPuIYmWQ5A1W72wgR3ubQCCWVGWvZq7IoNCWKmk0I/DZhERfckQ3AixAhO\ne1tcujw6TUuVu75y4sEyJhP2KhOvJoNWLh4EaJ6YJetpjQNwoXcnIVDz9OYf\nRqPnwcAcqM2ShMI2EgCgutlste9Qc2sMJUSRaihsge9qT6Rbe6c36PshLRw1\nCFsJlJu4sviWHqOhTYK0szEckjxlY6r/IkAPszLFSufrVzwgQ5Jd61XjrALo\nkKuJbaiUjycxPFQGhIa6ck5BS8oF5N/rDXMTQ46guFmacLlZO6bf1IH9damu\nGDbYyiQeRSZHt05oLeoPonaWfjXrX9eXFpEQ3VFR5K6lK1pWCeiQnfOKJGX+\nSsrZe3rS2IV+rl0eCg2KqgwRx84xX18gg6Ql+TloNFOdzzF3adMkGTLZRd89\nsl0R\r\n=Df+I\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC+u/8+pWKmMg6KAwGXpiN51xVN7kq/b1LQiNGMZH0BrwIgeUUkqnxCEymwz/q3kv+vPfCWehl5v7S4SIkILq5Icg0="}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.5.2_1592595340374_0.5606059291896635"},"_hasShrinkwrap":false,"deprecated":"deprecated"},"3.5.1-canary.605cab8d":{"name":"react-axe","version":"3.5.1-canary.605cab8d","description":"Dynamic accessibility analysis for React using axe-core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"npm run build","install:example":"cd example && npm install","eslint":"eslint --ext .js,.ts *.ts","pretest":"npm run install:example","test":"eslint index.ts && tsc && start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,ts,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"@types/react":"^16.9.20","@types/requestidlecallback":"^0.3.1","@typescript-eslint/eslint-plugin":"^2.20.0","@typescript-eslint/parser":"^2.20.0","cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^7.1.0","start-server-and-test":"^1.10.8","ts-node":"^8.6.2","typescript":"^3.7.5"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,json,css,md}":["prettier --write","git add"]},"readme":"# React-axe\n\nTest your React application with the [axe-core](https://github.com/dequelabs/axe-core) accessibility testing library. Results will show in the Chrome DevTools console.\n\n## Usage\n\n[![Greenkeeper badge](https://badges.greenkeeper.io/dequelabs/react-axe.svg)](https://greenkeeper.io/)\n\nInstall the module from NPM or elsewhere\n\n```sh\nnpm install --save-dev react-axe\n```\n\n## Initialize the module\n\nCall the exported function passing in the React and ReactDOM objects as well as a timing delay in milliseconds that will be observed between each component change and the time the analysis starts.\n\n```js\nvar React = require('react');\nvar ReactDOM = require('react-dom');\n\nif (process.env.NODE_ENV !== 'production') {\n  var axe = require('react-axe');\n  axe(React, ReactDOM, 1000);\n}\n```\n\nBe sure to only run the module in your development environment (as shown in the code above) or else your application will use more resources than necessary when in production. You can use [envify](https://www.npmjs.com/package/envify) to do this as is shown in the [example](./example/package.json#L35).\n\nOnce initialized, the module will output accessibility defect information to the Chrome Devtools console every time a component updates.\n\n## Deduplicating\n\nreact-axe will deduplicate violations using the rule that raised the violation and the CSS selector and the failureSummary of the specific node. This will ensure that each unique issue will only be printed to the console once.\n\n## Debouncing\n\nThe third argument to the exported function is the number of milliseconds to wait for component updates to cease before performing an analysis of all the changes. The changes will be batched and analyzed from the closest common ancestor of all the components that changed within the batch. This generally leads to the first analysis for a dynamic application, analyzing the entire page (which is what you want), while subsequent updates will only analyze a portion of the page (which is probably also what you want).\n\n## Shadow DOM\n\nWith version 3.0.0, react-axe now runs accessibility tests inside of open Shadow DOM. You don't have to do anything special other than run react-axe on an component encapsulated with open Shadow DOM (as opposed to closed). For more information, see the [axe-core repo](https://github.com/dequelabs/axe-core).\n\n## Configuration\n\nThere is a fourth optional argument that is a configuration object for axe-core. Read about the object here: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#api-name-axeconfigure\n\n```js\nvar config = {\n  rules: [\n    {\n      id: 'skip-link',\n      enabled: true\n    }\n  ]\n};\n\naxe(React, ReactDOM, 1000, config);\n```\n\nAxe-core's context object can be given as a fifth optional argument to specify which element should (and which should not) be tested. Read more from the Axe-core documentation: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#context-parameter\n\n```js\nvar context = {\n  include: [['#preview']]\n};\n\naxe(React, ReactDOM, 1000, undefined, context);\n```\n\n## Run the example\n\nRun a build in the example directory and start a server to see React-aXe in action in the Chrome Devtools console (opens on localhost:8888):\n\n```sh\nnpm install\ncd example\nnpm install\nnpm install -g http-server\nnpm start\n```\n\n## Run the tests\n\nInstall dependencies in the root directory (which also installs them in the example directory) and then run the tests:\n\n```\nnpm install\nnpm test\n```\n\nTo debug tests in the Cypress application:\n\n```\nnpm run test:debug\n```\n\n## Compatibility\n\nreact-axe uses advanced console logging features and works best in the Chrome browser, with limited functionality in Safari and Firefox.\n\n## Advantages\n\nI have been asked how this is different from modules like react-a11y which test the jsx.\n\nThe main difference is that react-axe tests the accessibility of the rendered DOM. This is important because many accessibility issues exist at the intersection of the DOM and the CSS and unless you have a fully rendered DOM, you will get two sorts of inaccuracies:\n\n1. False negatives because of lacking information. Example is in order to test color contrast you must know the foreground and background colors, and\n1. False positives because the element being evaluated is not in its final state and the information to communicate this to the testing algorithm is not available. Example is an inert piece of code that will be augmented once it becomes active.\n\nIf you have nice clean code, number 2 will be negligible but number 1 will always be a concern.\n","readmeFilename":"README.md","gitHead":"605cab8d922c2a65bf6c823209073dcb407ad761","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.5.1-canary.605cab8d","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-XnYbLtd2PaCY+DSu5s59jIihD/PFLflauxlawC1MeW9+DoMw2C7mcOgDlXoAGEIz+gOUONRDaiunOMKg08jYAg==","shasum":"4de3989b6a38de9024bbf421b972ced45bfb5bf7","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.5.1-canary.605cab8d.tgz","fileCount":10,"unpackedSize":37487,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8M9qCRA9TVsSAnZWagAAl/4P/it5eEzfk8fQiFqL75YC\nFkGPz+VyT7qVI99y+ivY3Tl/5obZhUDslUyAlOYhS7n8Up5DZa6wldosJUtB\nurHPbhlkkIEfh/cQ3u5++ztjAJ3m6rCxwPOBwhgCyRFASAS/Jzos127Iw7TP\nLK9cKRGkGbthpT9nKMnsk0AVgeUalqRF8wWmmD7ESWc4z5sUpU0IA/XrC0ce\nsdHzS5nvyWOshqGNZ5iScJ6frM7Y/aRtOQNZZgVbH1SRCofvt1Zz/RzFcqxb\n9scLPD8G164s/3ERMuKca7gWcXwvqkdGbDBGL9pX8V0dMpC623dLxtBmeszQ\nw4I8YRaX/iEaWQgc1REQNShIdQjpnSx748yLwRiCD6nR+eHWPNh+GQrn8oyR\nr/xvrtbbRVcvQL9zFInJEKqSILFf6aRpI38UNqD04A1t5A8v1xXMtnrqF/VD\nH43D5E+/3haf/dWMRA8WHDbKw79JkXeKYHWrE3mY/tq9Pg12xIkF3AaWwFto\n0JB0XYyjkeMqg+ZTBbW1cV+lUG2hS0fAv3lczr5O/aCMiD4IsCajtpcW6rrm\nKhkIxE4KkhKY4MUFBCZaIyZIuy5cMjECWY8p38NLzx4flJHepqRcG5Gqh8Dr\njIki1DJmzgQZxtYnOlgTvirRxX1DZoxGSwbrpRu6ZtM8kmoXsL6JWKGjHt47\nWQFX\r\n=42W9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCvAKvNh7DefmQIUwiTlJUVn1KfEJRjXwjeRXjy9pR+QwIhAJS7vRHYucowkBLX9ExBm1fbVDpU0x+9S/Q+xiwTS5iq"}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.5.1-canary.605cab8d_1592840041529_0.7703808491032653"},"_hasShrinkwrap":false},"3.5.1-canary.9913a15e":{"name":"react-axe","version":"3.5.1-canary.9913a15e","description":"Dynamic accessibility analysis for React using axe-core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"npm run build","install:example":"cd example && npm install","eslint":"eslint --ext .js,.ts *.ts","pretest":"npm run install:example","test":"eslint index.ts after.ts && tsc && npm run test:types && npm run test:cypress","test:types":"cd test && tsc","test:cypress":"start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,ts,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"@types/react":"^16.9.20","@types/requestidlecallback":"^0.3.1","@typescript-eslint/eslint-plugin":"^2.20.0","@typescript-eslint/parser":"^2.20.0","cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^7.1.0","start-server-and-test":"^1.10.8","ts-node":"^8.6.2","typescript":"^3.7.5"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,json,css,md}":["prettier --write","git add"]},"readme":"# React-axe\n\nTest your React application with the [axe-core](https://github.com/dequelabs/axe-core) accessibility testing library. Results will show in the Chrome DevTools console.\n\n## Usage\n\n[![Greenkeeper badge](https://badges.greenkeeper.io/dequelabs/react-axe.svg)](https://greenkeeper.io/)\n\nInstall the module from NPM or elsewhere\n\n```sh\nnpm install --save-dev react-axe\n```\n\n## Initialize the module\n\nCall the exported function passing in the React and ReactDOM objects as well as a timing delay in milliseconds that will be observed between each component change and the time the analysis starts.\n\n```js\nvar React = require('react');\nvar ReactDOM = require('react-dom');\n\nif (process.env.NODE_ENV !== 'production') {\n  var axe = require('react-axe');\n  axe(React, ReactDOM, 1000);\n}\n```\n\nBe sure to only run the module in your development environment (as shown in the code above) or else your application will use more resources than necessary when in production. You can use [envify](https://www.npmjs.com/package/envify) to do this as is shown in the [example](./example/package.json#L35).\n\nOnce initialized, the module will output accessibility defect information to the Chrome Devtools console every time a component updates.\n\n## Deduplicating\n\nreact-axe will deduplicate violations using the rule that raised the violation and the CSS selector and the failureSummary of the specific node. This will ensure that each unique issue will only be printed to the console once.\n\n## Debouncing\n\nThe third argument to the exported function is the number of milliseconds to wait for component updates to cease before performing an analysis of all the changes. The changes will be batched and analyzed from the closest common ancestor of all the components that changed within the batch. This generally leads to the first analysis for a dynamic application, analyzing the entire page (which is what you want), while subsequent updates will only analyze a portion of the page (which is probably also what you want).\n\n## Shadow DOM\n\nWith version 3.0.0, react-axe now runs accessibility tests inside of open Shadow DOM. You don't have to do anything special other than run react-axe on an component encapsulated with open Shadow DOM (as opposed to closed). For more information, see the [axe-core repo](https://github.com/dequelabs/axe-core).\n\n## Configuration\n\nThere is a fourth optional argument that is a configuration object for axe-core. Read about the object here: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#api-name-axeconfigure\n\n```js\nvar config = {\n  rules: [\n    {\n      id: 'skip-link',\n      enabled: true\n    }\n  ]\n};\n\naxe(React, ReactDOM, 1000, config);\n```\n\nAxe-core's context object can be given as a fifth optional argument to specify which element should (and which should not) be tested. Read more from the Axe-core documentation: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#context-parameter\n\n```js\nvar context = {\n  include: [['#preview']]\n};\n\naxe(React, ReactDOM, 1000, undefined, context);\n```\n\n## Run the example\n\nRun a build in the example directory and start a server to see React-aXe in action in the Chrome Devtools console (opens on localhost:8888):\n\n```sh\nnpm install\ncd example\nnpm install\nnpm install -g http-server\nnpm start\n```\n\n## Run the tests\n\nInstall dependencies in the root directory (which also installs them in the example directory) and then run the tests:\n\n```\nnpm install\nnpm test\n```\n\nTo debug tests in the Cypress application:\n\n```\nnpm run test:debug\n```\n\n## Compatibility\n\nreact-axe uses advanced console logging features and works best in the Chrome browser, with limited functionality in Safari and Firefox.\n\n## Advantages\n\nI have been asked how this is different from modules like react-a11y which test the jsx.\n\nThe main difference is that react-axe tests the accessibility of the rendered DOM. This is important because many accessibility issues exist at the intersection of the DOM and the CSS and unless you have a fully rendered DOM, you will get two sorts of inaccuracies:\n\n1. False negatives because of lacking information. Example is in order to test color contrast you must know the foreground and background colors, and\n1. False positives because the element being evaluated is not in its final state and the information to communicate this to the testing algorithm is not available. Example is an inert piece of code that will be augmented once it becomes active.\n\nIf you have nice clean code, number 2 will be negligible but number 1 will always be a concern.\n","readmeFilename":"README.md","gitHead":"9913a15e4f9bf8dd54821b6756615e92a3e407ab","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.5.1-canary.9913a15e","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-/8A1at/7LOE832Q9ptIywloj4HLC46Wa0/PBW9gU+uk8BYRd2yf/Q4YuKYFR5SXFV/EQyib2aGe0vunzzgoa+g==","shasum":"a3c4935a038170cc134765a3ec623341c307565a","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.5.1-canary.9913a15e.tgz","fileCount":10,"unpackedSize":37598,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8h+HCRA9TVsSAnZWagAAodAP/2F+G1PBBeFsdZrVTb55\nFZKFMxyKIjHmSAKwQQ9HGaGTZexkghXaHyyUWGRHIhUZKKF6TFGgY0CDvpLo\n1dcUL1ePliVqNlMBtFsmhv4nhAS0RVVRg4lGljhZxKf2EYBiPV9NMapcrrXD\nIKczc9LUim9c6XwrQ1G8shivM168KABVc6baawVS3mDwkgn/hugaeBoTgYIO\ndZQJ651uc+p0bheV+grZngrYI2IpD2KHaOB+R9WXeb5RjLVvy2gMqwiqZ0am\nCgaaTlPv9tJ/C9Dnz31+wZLlTD144DwWD0oKjamurd8T6UP/OrcKbTDarXd8\nw4db1CvW6Pw1hHbjyhQtUqfo2hNtgla43ZgGI2o8XVkP3h/WQ2UV6GZ2+TaX\nMg+6HcLvX+DKHdDvdN2mx6i6bcz7zLoCV7EpM5zYeoEmRuhDLvrcmVuN84ra\nBO5gUxkWTC+7MZEa4dW65FDhB8kB3w4M5eoKrM4Gt6nfe2Gj2kIwhPPJT1Ng\nluCLSYWzwJMq4aFJLsb59iimkmFQC0HJWH2DS/4wRVoF297BFV9x6Mv0okog\n4RI/v4BLyE+/g2eVAcDmHA8qts5N1CckwuapaQXlIzScozyV7BGKDvbbSEH7\n0ELUjLOysHKi2M2Wu0B1WSUJHtqez/xjUTTvK8hMKH2XJ9jtYLXjelXQNFYk\nZ5HY\r\n=UN9a\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAthvFZpu7jALbDR41Yoj+9ApBeOk/iy3i4Cn0Idr87JAiEA7erU7zENlNorTeYPBD9fb/O5JWaW7MAod5gZ+OmmqWA="}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.5.1-canary.9913a15e_1592926086938_0.6753458875587517"},"_hasShrinkwrap":false},"3.5.2-canary.7228046e":{"name":"react-axe","version":"3.5.2-canary.7228046e","description":"Dynamic accessibility analysis for React using axe-core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"npm run build","install:example":"cd example && npm install","eslint":"eslint --ext .js,.ts *.ts","pretest":"npm run install:example","test":"eslint index.ts after.ts && tsc && npm run test:types && npm run test:cypress","test:types":"cd test && tsc","test:cypress":"start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,ts,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"@types/react":"^16.9.20","@types/requestidlecallback":"^0.3.1","@typescript-eslint/eslint-plugin":"^2.20.0","@typescript-eslint/parser":"^2.20.0","cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^7.1.0","start-server-and-test":"^1.10.8","ts-node":"^8.6.2","typescript":"^3.7.5"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,json,css,md}":["prettier --write","git add"]},"readme":"# React-axe\n\nTest your React application with the [axe-core](https://github.com/dequelabs/axe-core) accessibility testing library. Results will show in the Chrome DevTools console.\n\n## Usage\n\n[![Greenkeeper badge](https://badges.greenkeeper.io/dequelabs/react-axe.svg)](https://greenkeeper.io/)\n\nInstall the module from NPM or elsewhere\n\n```sh\nnpm install --save-dev react-axe\n```\n\n## Initialize the module\n\nCall the exported function passing in the React and ReactDOM objects as well as a timing delay in milliseconds that will be observed between each component change and the time the analysis starts.\n\n```js\nvar React = require('react');\nvar ReactDOM = require('react-dom');\n\nif (process.env.NODE_ENV !== 'production') {\n  var axe = require('react-axe');\n  axe(React, ReactDOM, 1000);\n}\n```\n\nBe sure to only run the module in your development environment (as shown in the code above) or else your application will use more resources than necessary when in production. You can use [envify](https://www.npmjs.com/package/envify) to do this as is shown in the [example](./example/package.json#L35).\n\nOnce initialized, the module will output accessibility defect information to the Chrome Devtools console every time a component updates.\n\n## Deduplicating\n\nreact-axe will deduplicate violations using the rule that raised the violation and the CSS selector and the failureSummary of the specific node. This will ensure that each unique issue will only be printed to the console once.\n\n## Debouncing\n\nThe third argument to the exported function is the number of milliseconds to wait for component updates to cease before performing an analysis of all the changes. The changes will be batched and analyzed from the closest common ancestor of all the components that changed within the batch. This generally leads to the first analysis for a dynamic application, analyzing the entire page (which is what you want), while subsequent updates will only analyze a portion of the page (which is probably also what you want).\n\n## Shadow DOM\n\nWith version 3.0.0, react-axe now runs accessibility tests inside of open Shadow DOM. You don't have to do anything special other than run react-axe on an component encapsulated with open Shadow DOM (as opposed to closed). For more information, see the [axe-core repo](https://github.com/dequelabs/axe-core).\n\n## Configuration\n\nThere is a fourth optional argument that is a configuration object for axe-core. Read about the object here: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#api-name-axeconfigure\n\n```js\nvar config = {\n  rules: [\n    {\n      id: 'skip-link',\n      enabled: true\n    }\n  ]\n};\n\naxe(React, ReactDOM, 1000, config);\n```\n\nAxe-core's context object can be given as a fifth optional argument to specify which element should (and which should not) be tested. Read more from the Axe-core documentation: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#context-parameter\n\n```js\nvar context = {\n  include: [['#preview']]\n};\n\naxe(React, ReactDOM, 1000, undefined, context);\n```\n\n## Run the example\n\nRun a build in the example directory and start a server to see React-aXe in action in the Chrome Devtools console (opens on localhost:8888):\n\n```sh\nnpm install\ncd example\nnpm install\nnpm install -g http-server\nnpm start\n```\n\n## Run the tests\n\nInstall dependencies in the root directory (which also installs them in the example directory) and then run the tests:\n\n```\nnpm install\nnpm test\n```\n\nTo debug tests in the Cypress application:\n\n```\nnpm run test:debug\n```\n\n## Compatibility\n\nreact-axe uses advanced console logging features and works best in the Chrome browser, with limited functionality in Safari and Firefox.\n\n## Advantages\n\nI have been asked how this is different from modules like react-a11y which test the jsx.\n\nThe main difference is that react-axe tests the accessibility of the rendered DOM. This is important because many accessibility issues exist at the intersection of the DOM and the CSS and unless you have a fully rendered DOM, you will get two sorts of inaccuracies:\n\n1. False negatives because of lacking information. Example is in order to test color contrast you must know the foreground and background colors, and\n1. False positives because the element being evaluated is not in its final state and the information to communicate this to the testing algorithm is not available. Example is an inert piece of code that will be augmented once it becomes active.\n\nIf you have nice clean code, number 2 will be negligible but number 1 will always be a concern.\n","readmeFilename":"README.md","gitHead":"7228046e1a80fdfbe03b091802ad79e262b09731","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.5.2-canary.7228046e","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-k6ublfIuVqOZYVIm+RrnSvyX3FlHqCQoNZgj2Rs/S0/ZTvCe1TsaK9IraEuBXWrYliN/5ZYmLXrbingzBFwxvA==","shasum":"c07af412bed04a98c27fdf96a8e26191679e629b","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.5.2-canary.7228046e.tgz","fileCount":10,"unpackedSize":37688,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8iIZCRA9TVsSAnZWagAAIl0P/3uFNp98e6p/qpBxXibt\nlSS0FBJVkbGyz9Xr0ioSMbPaAvGvccPaKPftl+k7PZwiBsLdGUYUxEEl0A1j\nLNYvEiMFwwofFhVx3UvRG89gWJW+sTitgzzttUqFvRZASoF+nhUG8bGHT2Eg\nftyuDTXT/uUxci2qzJT3s9a1Dwhw+WKzL8pqk/ij1Xzjy6Ib0nhiHnXckowQ\ntJMXoSFe77PdPzv87lUK+Ajldo9+a6XcMCbDvWGYJdZipqhYI9N+7DNxmXeM\nXAVQL/0TAwukV1nJePxgLqNDrQiPpyxlrON8hm+zJsHsxhCSTTT7VCPhL/t4\nH7TkRrhOIAm5bSi5+ctr5irLgY5y9Bg1PHpKUWqMC6NorSmXuZtAagbm+dyM\nQYV/U3vztYmFuvHjlvOqC/EuGwQPILmK2XxdWPO4Ni+QdrlTLokP2mlGvK1f\nKcu26ecJMBPwbFu5AbATNSnemNc/8qGcyB8xsi94qDKux9sDs7ng/+wk/16r\nBSWHeXabIhT4zu4BJXDOhMmLbV0kuR3pN2OrqCLuAKWpx3wLietySM/XqToI\nSMUartCA/w5aAkxd+gTW/uPQhxGDKD/W3j06zDD5RnEhfQBvBhU8ke5tz71k\nT5Xmqj2FbgzzeaxiwLORgIZp7i8Y11BRVbGa+z8tO33bD53TDnPY+NvPUCO9\nh1qs\r\n=rQCC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDor17lXYBMTN6Xm6zCShevtuU58zGVU4DedpJNwE9eqAiBkKXR867Pu62jBKLn9Lby83RX4W/WlxXz/v9AWB7rYug=="}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.5.2-canary.7228046e_1592926745240_0.0864878673963172"},"_hasShrinkwrap":false},"3.5.3":{"name":"react-axe","version":"3.5.3","description":"Dynamic accessibility analysis for React using axe-core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"npm run build","install:example":"cd example && npm install","eslint":"eslint --ext .js,.ts *.ts","pretest":"npm run install:example","test":"eslint index.ts after.ts && tsc && npm run test:types && npm run test:cypress","test:types":"cd test && tsc","test:cypress":"start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,ts,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"@types/react":"^16.9.20","@types/requestidlecallback":"^0.3.1","@typescript-eslint/eslint-plugin":"^2.20.0","@typescript-eslint/parser":"^2.20.0","cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^7.1.0","start-server-and-test":"^1.10.8","ts-node":"^8.6.2","typescript":"^3.7.5"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,json,css,md}":["prettier --write","git add"]},"gitHead":"0a057d8ceedb63c3722b6f9f9ff1c33e07fc3c99","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.5.3","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-WDKAoLVsC6rsmYboXThY7OnVDaQOOOecySHJJjggn1cFOJyWtzNh2uiV3oSxoAolONGTi22G9zKDxw53g/8Vqg==","shasum":"38dac84e20cdf3e09e5752eb405b30c5ac845fa8","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.5.3.tgz","fileCount":10,"unpackedSize":37989,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8ibGCRA9TVsSAnZWagAAjT0P/3fONOH1l2oMWnbUa69J\njyw/pSfUEgssGVRhUrXojSTjQP3UfKzqGYsvBRDYbreXNtky7q8J6LSVpOQu\n66axd6SJpcLp3YlGRkIKMx6aENwkiKeKmpZBb3ZGFsg8NDnk0pZSgDI1S67H\nA4pzX0m4TuKxQz9oNjGp2pS7RddcRQ+42ZfAgpr46Ugg0EoMUusSt2kzUwo5\nDIquN7uUryL3Ck/v1x8PnFNl5oNL70+eWx5gPhO01lVt243wDts7un6RtnqB\nQgeF65QkNU/uSEHt7uoYDY9Ov6jofAZNN9ThYE3479wmGpiSIwMaAH9HD6lB\n/5i5/P/aC1/ZUX+AJ279SNyaKGAygkLyIdQ0VB23jd70U7tsKJ+KX1Lbc1n+\nuiK4lHLdmBsO3O3C9M6t8rY1+sJbSu+ZBf7bT7siqbCKVlFVv7F/I4ZS54/n\nxUkRicptjVVQ8jqJxW5mffRIGu56dIDxDgvyPioE4acXYSFSFTy56qEDdZDx\nrRXy8Nfl1UioO8+mDOgZAUBMrgZTK8Irj3CL3g+kWVGFGLM95ZQInrZmX77c\nEFryYcq6jDSrRXqLnL+Rx3qpt+qDgsJK6zuRRVqLWT2crwB6phbbTd8NgleC\n6gaqWaRm4KdKCNuHAIfEJbun85fJLgRisiYmh2FS733iRxucV7sdsE10Pj3p\nFpvS\r\n=vqiq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCbc28FbeXoJSCu7uPDzhIpQzjMi801Ctlly5Dx5xJnBwIhAIPsHujpYA2rJbB6R9SNygABeWrt3CBS9/Wnaf/vpNP5"}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.5.3_1592927942544_0.07384508473910145"},"_hasShrinkwrap":false,"deprecated":"deprecated"},"3.5.3-canary.ecdafb38":{"name":"react-axe","version":"3.5.3-canary.ecdafb38","description":"Dynamic accessibility analysis for React using axe-core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"npm run build","install:example":"cd example && npm install","eslint":"eslint --ext .js,.ts *.ts","pretest":"npm run install:example","test":"eslint index.ts after.ts && tsc && npm run test:types && npm run test:cypress","test:types":"cd test && tsc","test:cypress":"start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,ts,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"@types/react":"^16.9.20","@types/requestidlecallback":"^0.3.1","@typescript-eslint/eslint-plugin":"^2.20.0","@typescript-eslint/parser":"^2.20.0","cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^7.1.0","start-server-and-test":"^1.10.8","ts-node":"^8.6.2","typescript":"^3.7.5"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,json,css,md}":["prettier --write","git add"]},"readme":"# React-axe\n\nTest your React application with the [axe-core](https://github.com/dequelabs/axe-core) accessibility testing library. Results will show in the Chrome DevTools console.\n\n## Usage\n\n[![Greenkeeper badge](https://badges.greenkeeper.io/dequelabs/react-axe.svg)](https://greenkeeper.io/)\n\nInstall the module from NPM or elsewhere\n\n```sh\nnpm install --save-dev react-axe\n```\n\n## Initialize the module\n\nCall the exported function passing in the React and ReactDOM objects as well as a timing delay in milliseconds that will be observed between each component change and the time the analysis starts.\n\n```js\nvar React = require('react');\nvar ReactDOM = require('react-dom');\n\nif (process.env.NODE_ENV !== 'production') {\n  var axe = require('react-axe');\n  axe(React, ReactDOM, 1000);\n}\n```\n\nBe sure to only run the module in your development environment (as shown in the code above) or else your application will use more resources than necessary when in production. You can use [envify](https://www.npmjs.com/package/envify) to do this as is shown in the [example](./example/package.json#L35).\n\nOnce initialized, the module will output accessibility defect information to the Chrome Devtools console every time a component updates.\n\n## Deduplicating\n\nreact-axe will deduplicate violations using the rule that raised the violation and the CSS selector and the failureSummary of the specific node. This will ensure that each unique issue will only be printed to the console once.\n\n## Debouncing\n\nThe third argument to the exported function is the number of milliseconds to wait for component updates to cease before performing an analysis of all the changes. The changes will be batched and analyzed from the closest common ancestor of all the components that changed within the batch. This generally leads to the first analysis for a dynamic application, analyzing the entire page (which is what you want), while subsequent updates will only analyze a portion of the page (which is probably also what you want).\n\n## Shadow DOM\n\nWith version 3.0.0, react-axe now runs accessibility tests inside of open Shadow DOM. You don't have to do anything special other than run react-axe on an component encapsulated with open Shadow DOM (as opposed to closed). For more information, see the [axe-core repo](https://github.com/dequelabs/axe-core).\n\n## Configuration\n\nThere is a fourth optional argument that is a configuration object for axe-core. Read about the object here: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#api-name-axeconfigure\n\n```js\nvar config = {\n  rules: [\n    {\n      id: 'skip-link',\n      enabled: true\n    }\n  ]\n};\n\naxe(React, ReactDOM, 1000, config);\n```\n\nAxe-core's context object can be given as a fifth optional argument to specify which element should (and which should not) be tested. Read more from the Axe-core documentation: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#context-parameter\n\n```js\nvar context = {\n  include: [['#preview']]\n};\n\naxe(React, ReactDOM, 1000, undefined, context);\n```\n\n## Run the example\n\nRun a build in the example directory and start a server to see React-aXe in action in the Chrome Devtools console (opens on localhost:8888):\n\n```sh\nnpm install\ncd example\nnpm install\nnpm install -g http-server\nnpm start\n```\n\n## Run the tests\n\nInstall dependencies in the root directory (which also installs them in the example directory) and then run the tests:\n\n```\nnpm install\nnpm test\n```\n\nTo debug tests in the Cypress application:\n\n```\nnpm run test:debug\n```\n\n## Compatibility\n\nreact-axe uses advanced console logging features and works best in the Chrome browser, with limited functionality in Safari and Firefox.\n\n## Advantages\n\nI have been asked how this is different from modules like react-a11y which test the jsx.\n\nThe main difference is that react-axe tests the accessibility of the rendered DOM. This is important because many accessibility issues exist at the intersection of the DOM and the CSS and unless you have a fully rendered DOM, you will get two sorts of inaccuracies:\n\n1. False negatives because of lacking information. Example is in order to test color contrast you must know the foreground and background colors, and\n1. False positives because the element being evaluated is not in its final state and the information to communicate this to the testing algorithm is not available. Example is an inert piece of code that will be augmented once it becomes active.\n\nIf you have nice clean code, number 2 will be negligible but number 1 will always be a concern.\n","readmeFilename":"README.md","gitHead":"ecdafb387233725382b30a7b5506e026815d3ba2","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.5.3-canary.ecdafb38","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-B0VCgZkRVBb2D4At+q3x1tEn6bstTvfSDWXhD4eHKqVxiWi1TVhwd2FUhauJTEFSVpRREfdt8utSfX2IU+ivhA==","shasum":"0eeb5dcc61e2d47b0e0a6837247d17c09ed5eaca","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.5.3-canary.ecdafb38.tgz","fileCount":10,"unpackedSize":38004,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe89AVCRA9TVsSAnZWagAAhDwQAJEiOTlRCpCtom1IeM7e\ns5EN0doXPGANHbbXkM7bIgn2zKhli2sU9YfTVssZxz3ByI0AkKXcnIbBP8Hs\n8BigQRsXskaaO+AlNX2zpEtyNPzGNct+g6W0deKD5DkEpaBEHWtjSgFTUkGo\n8oMOtaERUuLAAEGWB/ig7vg8fioaSfYfIE3jU9FosFhS3onifia8l2LPiXSR\n9y6vVcecNh6TVyVSnQq+q7iyZ9feA55KSaFyMGS6X5nGM5FdfgGvJgCNXOAy\n4HmMNtoobEymderyD6GHuPzONlypMyLXqKunujE9mNlA0uCrH/enE9xwwaLA\nwpFIfTSRGB/KoOerzZr5Nfp4yJkcGSAjxIrt0JJR2kZUBLZ01YUAvkQud0a1\nlCM3AKxMPxEZmfhMMwzY+tRHrVgeOkye3sVtLcjjeqqivbPPOlmf1rIETX1X\n/pFqej8MCrSMZuauO6AFIV4L/UjNfC6g+rNhZu2mLI3h9M06mMa2Fi43wDCr\na0ZqJ7z/dZIsW6RgT0Ju0KCxAo5YllPLqHuzIHlfMroajjVkkIWpCjNh4mXe\nxNqEtQMRgPjDvgt1xy/Q5ZW2up6ZbZMY9Rs/sqFLVv0KqzJwV7dey1gNvP+l\nZ5DHltqtF8nKs9605cLs1idik6mnCZB2NBnNIeqBvGmTc3bQ6SFGviJEPQrR\nWY9b\r\n=f1Ca\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEMCH114OyRmnVceqlG+kXyj5aFO83+YEFniORyWH6fvzPkCIHaBSZaOmiFCjOiLAwHc/TLiPx7HgwUYNsUx9omoTkMH"}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.5.3-canary.ecdafb38_1593036821080_0.6122426177786016"},"_hasShrinkwrap":false},"3.5.3-canary.87274c7c":{"name":"react-axe","version":"3.5.3-canary.87274c7c","description":"Dynamic accessibility analysis for React using axe-core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"npm run build","install:example":"cd example && npm install","eslint":"eslint --ext .js,.ts *.ts","pretest":"npm run install:example","test":"eslint index.ts after.ts && tsc && npm run test:types && npm run test:cypress","test:types":"cd test && tsc","test:cypress":"start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,ts,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"@types/react":"^16.9.20","@types/requestidlecallback":"^0.3.1","@typescript-eslint/eslint-plugin":"^2.20.0","@typescript-eslint/parser":"^2.20.0","cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^7.1.0","start-server-and-test":"^1.10.8","ts-node":"^8.6.2","typescript":"^3.7.5"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,json,css,md}":["prettier --write","git add"]},"readme":"# React-axe\n\nTest your React application with the [axe-core](https://github.com/dequelabs/axe-core) accessibility testing library. Results will show in the Chrome DevTools console.\n\n## Usage\n\n[![Greenkeeper badge](https://badges.greenkeeper.io/dequelabs/react-axe.svg)](https://greenkeeper.io/)\n\nInstall the module from NPM or elsewhere\n\n```sh\nnpm install --save-dev react-axe\n```\n\n## Initialize the module\n\nCall the exported function passing in the React and ReactDOM objects as well as a timing delay in milliseconds that will be observed between each component change and the time the analysis starts.\n\n```js\nvar React = require('react');\nvar ReactDOM = require('react-dom');\n\nif (process.env.NODE_ENV !== 'production') {\n  var axe = require('react-axe');\n  axe(React, ReactDOM, 1000);\n}\n```\n\nBe sure to only run the module in your development environment (as shown in the code above) or else your application will use more resources than necessary when in production. You can use [envify](https://www.npmjs.com/package/envify) to do this as is shown in the [example](./example/package.json#L35).\n\nOnce initialized, the module will output accessibility defect information to the Chrome Devtools console every time a component updates.\n\n## Deduplicating\n\nreact-axe will deduplicate violations using the rule that raised the violation and the CSS selector and the failureSummary of the specific node. This will ensure that each unique issue will only be printed to the console once.\n\n## Debouncing\n\nThe third argument to the exported function is the number of milliseconds to wait for component updates to cease before performing an analysis of all the changes. The changes will be batched and analyzed from the closest common ancestor of all the components that changed within the batch. This generally leads to the first analysis for a dynamic application, analyzing the entire page (which is what you want), while subsequent updates will only analyze a portion of the page (which is probably also what you want).\n\n## Shadow DOM\n\nWith version 3.0.0, react-axe now runs accessibility tests inside of open Shadow DOM. You don't have to do anything special other than run react-axe on an component encapsulated with open Shadow DOM (as opposed to closed). For more information, see the [axe-core repo](https://github.com/dequelabs/axe-core).\n\n## Configuration\n\nThere is a fourth optional argument that is a configuration object for axe-core. Read about the object here: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#api-name-axeconfigure\n\n```js\nvar config = {\n  rules: [\n    {\n      id: 'skip-link',\n      enabled: true\n    }\n  ]\n};\n\naxe(React, ReactDOM, 1000, config);\n```\n\nAxe-core's context object can be given as a fifth optional argument to specify which element should (and which should not) be tested. Read more from the Axe-core documentation: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#context-parameter\n\n```js\nvar context = {\n  include: [['#preview']]\n};\n\naxe(React, ReactDOM, 1000, undefined, context);\n```\n\n## Run the example\n\nRun a build in the example directory and start a server to see React-aXe in action in the Chrome Devtools console (opens on localhost:8888):\n\n```sh\nnpm install\ncd example\nnpm install\nnpm install -g http-server\nnpm start\n```\n\n## Run the tests\n\nInstall dependencies in the root directory (which also installs them in the example directory) and then run the tests:\n\n```\nnpm install\nnpm test\n```\n\nTo debug tests in the Cypress application:\n\n```\nnpm run test:debug\n```\n\n## Compatibility\n\nreact-axe uses advanced console logging features and works best in the Chrome browser, with limited functionality in Safari and Firefox.\n\n## Advantages\n\nI have been asked how this is different from modules like react-a11y which test the jsx.\n\nThe main difference is that react-axe tests the accessibility of the rendered DOM. This is important because many accessibility issues exist at the intersection of the DOM and the CSS and unless you have a fully rendered DOM, you will get two sorts of inaccuracies:\n\n1. False negatives because of lacking information. Example is in order to test color contrast you must know the foreground and background colors, and\n1. False positives because the element being evaluated is not in its final state and the information to communicate this to the testing algorithm is not available. Example is an inert piece of code that will be augmented once it becomes active.\n\nIf you have nice clean code, number 2 will be negligible but number 1 will always be a concern.\n","readmeFilename":"README.md","gitHead":"87274c7c1c9bde4d7b3d8f6e428c52878839a633","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.5.3-canary.87274c7c","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-DCeTsZN7v26Liq7K7SmC3k/1YhZL6RbpUWWVnz+OKNeLmZEcM1t1+AEEFwWYyOETIdtLqIzNV8PpRyU8+2Q3iw==","shasum":"b3a44d0263d9d76b4c8e454c22b696d9b1e99bc6","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.5.3-canary.87274c7c.tgz","fileCount":10,"unpackedSize":38004,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe/KpGCRA9TVsSAnZWagAAs4IP/RAOoc1G+5sf8nJTF5Of\nhh7VRnmxl2e+T1C32IeCwBX/ETftHj52W3H6Gq68gMYLCVOuVsaCVDcDGZHQ\npg4ikJHSUU/sMk2ZaRpcQmZhbCBqAc3uQZnIXIItpnMUcm1WBi4La+8wfJJS\ngmcy8UUERTmjioMEM8oSezfrRkgF5Loh1pesnkHdT+77mSPF7O1MDqCu9nyA\noXfTyFw3k4873uLnllz6/NuPszc/FVCY3iJnsZoUmO/ndFR0VF64VKvQ9k8X\nuIz74PcDC+KjB7jlNzAb8Cvi2Z5DxYw7uvWS/kHvdPoDnkuEsyj5NGygBtkv\ne/6IrRGhFK5gluxzCbHSrRPeXWb+ty+k2AqJW6eYUT1+SuElTGFFWqLecLKU\njvh98IFaG8pPcVIJxwvV5wn60yH5FHq9gCyAWTPCupeHfpmjAHgpL5riCeup\ng6p5SZX9Nx6t4X/PFKqPJtUZ3Nd+Ou+SjVWzDbaZnc5Dlh1ZQxyaatHaQ+6I\nG8SHXQHkEhkr5JtyTgq8yAwLXfrMaN1FWjSqmB+75z59Aw2Vr5pXYN2Y792C\nHDKKzVz4jQlK8cQ8NVwM0fo4nBTFd/BuXJs2zdgYaJg3lR4rCec1YzRAy5uG\n9dw7p98Qm3Vz/wwAm+ICgA8leefFLKOqDVSxGVVha9h8BnHflovTKpoqPW75\nyLE+\r\n=nw5m\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGPk9Fv14bO62PoK9pOwTW3NGIQ47jI6VGEt5GA5hW/kAiEAju1zXRgKqS+/hitTdfrOILCMQAxhIUJKKsvcPKRX7zA="}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.5.3-canary.87274c7c_1593616965551_0.28122351406765955"},"_hasShrinkwrap":false},"3.5.3-canary.d3245b32":{"name":"react-axe","version":"3.5.3-canary.d3245b32","description":"Dynamic accessibility analysis for React using axe-core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"npm run build","install:example":"cd example && npm install","eslint":"eslint --ext .js,.ts *.ts","pretest":"npm run install:example","test":"eslint index.ts after.ts && tsc && npm run test:types && npm run test:cypress","test:types":"cd test && tsc","test:cypress":"start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,ts,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"@types/react":"^16.9.20","@types/requestidlecallback":"^0.3.1","@typescript-eslint/eslint-plugin":"^2.20.0","@typescript-eslint/parser":"^2.20.0","cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^8.0.1","start-server-and-test":"^1.10.8","ts-node":"^8.6.2","typescript":"^3.7.5"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,json,css,md}":["prettier --write","git add"]},"readme":"# React-axe\n\nTest your React application with the [axe-core](https://github.com/dequelabs/axe-core) accessibility testing library. Results will show in the Chrome DevTools console.\n\n## Usage\n\n[![Greenkeeper badge](https://badges.greenkeeper.io/dequelabs/react-axe.svg)](https://greenkeeper.io/)\n\nInstall the module from NPM or elsewhere\n\n```sh\nnpm install --save-dev react-axe\n```\n\n## Initialize the module\n\nCall the exported function passing in the React and ReactDOM objects as well as a timing delay in milliseconds that will be observed between each component change and the time the analysis starts.\n\n```js\nvar React = require('react');\nvar ReactDOM = require('react-dom');\n\nif (process.env.NODE_ENV !== 'production') {\n  var axe = require('react-axe');\n  axe(React, ReactDOM, 1000);\n}\n```\n\nBe sure to only run the module in your development environment (as shown in the code above) or else your application will use more resources than necessary when in production. You can use [envify](https://www.npmjs.com/package/envify) to do this as is shown in the [example](./example/package.json#L35).\n\nOnce initialized, the module will output accessibility defect information to the Chrome Devtools console every time a component updates.\n\n## Deduplicating\n\nreact-axe will deduplicate violations using the rule that raised the violation and the CSS selector and the failureSummary of the specific node. This will ensure that each unique issue will only be printed to the console once.\n\n## Debouncing\n\nThe third argument to the exported function is the number of milliseconds to wait for component updates to cease before performing an analysis of all the changes. The changes will be batched and analyzed from the closest common ancestor of all the components that changed within the batch. This generally leads to the first analysis for a dynamic application, analyzing the entire page (which is what you want), while subsequent updates will only analyze a portion of the page (which is probably also what you want).\n\n## Shadow DOM\n\nWith version 3.0.0, react-axe now runs accessibility tests inside of open Shadow DOM. You don't have to do anything special other than run react-axe on an component encapsulated with open Shadow DOM (as opposed to closed). For more information, see the [axe-core repo](https://github.com/dequelabs/axe-core).\n\n## Configuration\n\nThere is a fourth optional argument that is a configuration object for axe-core. Read about the object here: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#api-name-axeconfigure\n\n```js\nvar config = {\n  rules: [\n    {\n      id: 'skip-link',\n      enabled: true\n    }\n  ]\n};\n\naxe(React, ReactDOM, 1000, config);\n```\n\nAxe-core's context object can be given as a fifth optional argument to specify which element should (and which should not) be tested. Read more from the Axe-core documentation: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#context-parameter\n\n```js\nvar context = {\n  include: [['#preview']]\n};\n\naxe(React, ReactDOM, 1000, undefined, context);\n```\n\n## Run the example\n\nRun a build in the example directory and start a server to see React-aXe in action in the Chrome Devtools console (opens on localhost:8888):\n\n```sh\nnpm install\ncd example\nnpm install\nnpm install -g http-server\nnpm start\n```\n\n## Run the tests\n\nInstall dependencies in the root directory (which also installs them in the example directory) and then run the tests:\n\n```\nnpm install\nnpm test\n```\n\nTo debug tests in the Cypress application:\n\n```\nnpm run test:debug\n```\n\n## Compatibility\n\nreact-axe uses advanced console logging features and works best in the Chrome browser, with limited functionality in Safari and Firefox.\n\n## Advantages\n\nI have been asked how this is different from modules like react-a11y which test the jsx.\n\nThe main difference is that react-axe tests the accessibility of the rendered DOM. This is important because many accessibility issues exist at the intersection of the DOM and the CSS and unless you have a fully rendered DOM, you will get two sorts of inaccuracies:\n\n1. False negatives because of lacking information. Example is in order to test color contrast you must know the foreground and background colors, and\n1. False positives because the element being evaluated is not in its final state and the information to communicate this to the testing algorithm is not available. Example is an inert piece of code that will be augmented once it becomes active.\n\nIf you have nice clean code, number 2 will be negligible but number 1 will always be a concern.\n","readmeFilename":"README.md","gitHead":"d3245b32fc5ed19e3c7b2c43d2815fe63f5875cb","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.5.3-canary.d3245b32","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"dist":{"integrity":"sha512-fIl4c0EN8Wael6oyp/Dykp0XeXTq6Xzklf6Qxyh8PWEUWKhuOMS/sWZzs1qrMpLgAdhs2wrqDMkSzIWWIUD2xg==","shasum":"449cb2a2bfc88172d415c0e61182105142e10a72","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.5.3-canary.d3245b32.tgz","fileCount":10,"unpackedSize":38004,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfDXvUCRA9TVsSAnZWagAAE20P/1dDjZoj91O1G7RY8Bf8\n087v0jR7u8rZvVLTT6EG3ZRd5hTPw2/x2EBbVPEq+OjxClhE1zymw939EoSl\nBdqO/z1pFvmw1tuDcNL7f3FRaXrr4CklJiKsTErDi+ceV6js9P5yxXLDDCtQ\nf/6Bqq/g8Bpg1XrAPbZNwO6rN1PG18gZQeQ/0vDTwtRjUogSbO5EfBPVAASh\nmmoRU2j11pCYJ5ybDlaSrnAcgexv7R/ZvWYIJ4/KrIay+BTH751ygzWYp5d9\nt1IltlCLQPiJzRhTD61KjGoxIxYetataq/XMIAbuqbOHi2lHDWSpSxXJKpuL\nW4TYZN3Xhr6IN9EifB47SMpyYbo8Tmvo2Mz/g1ONZbQL8OfIE4d20q2rK8KN\nJRyn8sNuq1dSrvPAJQm+2JiKGrW5zqn3HN6Lm9pNzVQr7PUeJCeBKmgrMFl0\nvH9AFZoVarYZLetQrA02dB+Eo9/fnysQ3G4iyeFXwny0XfCE2pRiDc6TbK5K\nayXWRH8zBSt3so/rw7N9NYbFhZyPyaUMzFyBsAiAio3VH5auEQzmTgiYFke6\nZJo/uC2OnwQL/LD0wCe2UcejgtiLI7DaFf44HcBDlekp/Z8mODe4Mbz6k5oh\nDAZtf52VwnzT8XjxCFAST6qNcmJa8lWHVF5EQFCd/tNfmKe7p3KHaFJHeN7P\namIi\r\n=NfkW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF/lDuHqScL29rRZOuSr+2oMQmpCvU/Rlf+UhsCmypv3AiAV/w+8zjaJzhRvlch9kB7E/0NuXMIiUzYYYEc/J4v+7g=="}]},"maintainers":[{"email":"dylan@barrell.com","name":"dylanb"},{"email":"marcy.sutton@deque.com","name":"marcysutton"},{"email":"me@stephenmathieson.com","name":"stephenmathieson"},{"email":"wilcofiers@gmail.com","name":"wilcofiers"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.5.3-canary.d3245b32_1594719188456_0.5659915012578633"},"_hasShrinkwrap":false},"3.5.3-canary.2095c206":{"name":"react-axe","version":"3.5.3-canary.2095c206","description":"Dynamic accessibility analysis for React using axe-core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"npm run build","install:example":"cd example && npm install","eslint":"eslint --ext .js,.ts *.ts","pretest":"npm run install:example","test":"eslint index.ts after.ts && tsc && npm run test:types && npm run test:cypress","test:types":"cd test && tsc","test:cypress":"start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,ts,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"@types/react":"^16.9.20","@types/requestidlecallback":"^0.3.1","@typescript-eslint/eslint-plugin":"^2.20.0","@typescript-eslint/parser":"^2.20.0","cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^8.0.1","start-server-and-test":"^1.10.8","ts-node":"^8.6.2","typescript":"^3.7.5"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,json,css,md}":["prettier --write","git add"]},"readme":"# React-axe\n\nTest your React application with the [axe-core](https://github.com/dequelabs/axe-core) accessibility testing library. Results will show in the Chrome DevTools console.\n\n## Usage\n\n[![Greenkeeper badge](https://badges.greenkeeper.io/dequelabs/react-axe.svg)](https://greenkeeper.io/)\n\nInstall the module from NPM or elsewhere\n\n```sh\nnpm install --save-dev react-axe\n```\n\n## Initialize the module\n\nCall the exported function passing in the React and ReactDOM objects as well as a timing delay in milliseconds that will be observed between each component change and the time the analysis starts.\n\n```js\nvar React = require('react');\nvar ReactDOM = require('react-dom');\n\nif (process.env.NODE_ENV !== 'production') {\n  var axe = require('react-axe');\n  axe(React, ReactDOM, 1000);\n}\n```\n\nBe sure to only run the module in your development environment (as shown in the code above) or else your application will use more resources than necessary when in production. You can use [envify](https://www.npmjs.com/package/envify) to do this as is shown in the [example](./example/package.json#L35).\n\nOnce initialized, the module will output accessibility defect information to the Chrome Devtools console every time a component updates.\n\n## Deduplicating\n\nreact-axe will deduplicate violations using the rule that raised the violation and the CSS selector and the failureSummary of the specific node. This will ensure that each unique issue will only be printed to the console once.\n\n## Debouncing\n\nThe third argument to the exported function is the number of milliseconds to wait for component updates to cease before performing an analysis of all the changes. The changes will be batched and analyzed from the closest common ancestor of all the components that changed within the batch. This generally leads to the first analysis for a dynamic application, analyzing the entire page (which is what you want), while subsequent updates will only analyze a portion of the page (which is probably also what you want).\n\n## Shadow DOM\n\nWith version 3.0.0, react-axe now runs accessibility tests inside of open Shadow DOM. You don't have to do anything special other than run react-axe on an component encapsulated with open Shadow DOM (as opposed to closed). For more information, see the [axe-core repo](https://github.com/dequelabs/axe-core).\n\n## Configuration\n\nThere is a fourth optional argument that is a configuration object for axe-core. Read about the object here: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#api-name-axeconfigure\n\n```js\nvar config = {\n  rules: [\n    {\n      id: 'skip-link',\n      enabled: true\n    }\n  ]\n};\n\naxe(React, ReactDOM, 1000, config);\n```\n\nAxe-core's context object can be given as a fifth optional argument to specify which element should (and which should not) be tested. Read more from the Axe-core documentation: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#context-parameter\n\n```js\nvar context = {\n  include: [['#preview']]\n};\n\naxe(React, ReactDOM, 1000, undefined, context);\n```\n\n## Run the example\n\nRun a build in the example directory and start a server to see React-aXe in action in the Chrome Devtools console (opens on localhost:8888):\n\n```sh\nnpm install\ncd example\nnpm install\nnpm install -g http-server\nnpm start\n```\n\n## Run the tests\n\nInstall dependencies in the root directory (which also installs them in the example directory) and then run the tests:\n\n```\nnpm install\nnpm test\n```\n\nTo debug tests in the Cypress application:\n\n```\nnpm run test:debug\n```\n\n## Compatibility\n\nreact-axe uses advanced console logging features and works best in the Chrome browser, with limited functionality in Safari and Firefox.\n\n## Advantages\n\nI have been asked how this is different from modules like react-a11y which test the jsx.\n\nThe main difference is that react-axe tests the accessibility of the rendered DOM. This is important because many accessibility issues exist at the intersection of the DOM and the CSS and unless you have a fully rendered DOM, you will get two sorts of inaccuracies:\n\n1. False negatives because of lacking information. Example is in order to test color contrast you must know the foreground and background colors, and\n1. False positives because the element being evaluated is not in its final state and the information to communicate this to the testing algorithm is not available. Example is an inert piece of code that will be augmented once it becomes active.\n\nIf you have nice clean code, number 2 will be negligible but number 1 will always be a concern.\n","readmeFilename":"README.md","gitHead":"2095c20612e8eceb37c204e67c7c31f66870feec","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.5.3-canary.2095c206","_nodeVersion":"10.22.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-XZJeqAeqejbagxbID/ULDRs6qFBb2Wd+UN4yuSCe50nGZAiLBCstxdhXudSHKwwnwayN5YI3uzfVB2Hjs9ef2A==","shasum":"76c0d3d2bd8031d9d29b8577524e097f54ace349","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.5.3-canary.2095c206.tgz","fileCount":10,"unpackedSize":38004,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfX5JTCRA9TVsSAnZWagAArL4P/jQJ7mlp7P7Tgo6Sxsbe\nxpEdbkvIuebpjudSjs/2a+6NIt8w77V5GXT5YmRVwerJiVPWtSXT+LLkvpA+\n3eUBwNvyRc3YcnTNqVfRMux7v+Zt2eeZZykUHspjLrNg6ArGN7Ei3q6UARdQ\nkNU1dRamVj1yj5QR6AYZMhPKK9TgF5HtbCpVoe2qk9vhUwq0yxLxiW37030/\n4hkkgcvhIadmRuFe3K8ocOVCzM4Uzx3WQ4T5Aa4E6pe1PMwz9rNLHUV0tDTX\n6e0OT71Ev96cvE3wCRQc+m+PUZyWj47r8oGAoyo+CoQUiQblzBvG0B7vzV+y\n6YFhyfPLOjMcowPBLtWtacEUkQBf8fLqllt9h2ioFdZrlZ3B+BT6x/bDILCv\nY4gakiif1CUrSVg58oDsLLVAm6wExH1dJaHPOdMMtUTvt4gzyW3qm0VzR2Ew\noJd83/cow4ebANB7wcsYvx8vrmO/lQV6X9nSVlk6Fx15uU/DDDBvQuckxUCc\nMiUam4Y4ZX1lhE1jNgbNAmpQ5R1K7kRZV/gbj3Qs0uIgNnFSC8nsrSEir4rM\n3pxFQBISgeCNVuey9v1oDEo/xC0gTNcWq2x3gIHKSFK5cnb1s+u4jnSpjshP\nwTuspPNT4NrRoN/v6qqwtJlB2Kh3R5X4n7Oz/yxxnuxvyFBRbp0oaTjGK6AF\nG0HG\r\n=oqFA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCKCdys5qphn+pdS4SiIWbGUcOSdDYqY9AMVE0poLJubgIhAIBJy2ZkoZoqcYpYE/wft4C1OeckcsMeJydFs7a+2Nys"}]},"maintainers":[{"name":"dylanb","email":"dylan@barrell.com"},{"name":"stephenmathieson","email":"me@stephenmathieson.com"},{"name":"wilcofiers","email":"wilcofiers@gmail.com"},{"name":"npmdeque","email":"axe@deque.com"}],"_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.5.3-canary.2095c206_1600098899347_0.9506929457916291"},"_hasShrinkwrap":false},"3.5.3-canary.44b2e9fd":{"name":"react-axe","version":"3.5.3-canary.44b2e9fd","description":"Dynamic accessibility analysis for React using axe-core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"npm run build","install:example":"cd example && npm install","eslint":"eslint --ext .js,.ts *.ts","pretest":"npm run install:example","test":"eslint index.ts after.ts && tsc && npm run test:types && npm run test:cypress","test:types":"cd test && tsc","test:cypress":"start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,ts,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"@types/react":"^16.9.20","@types/requestidlecallback":"^0.3.1","@typescript-eslint/eslint-plugin":"^2.20.0","@typescript-eslint/parser":"^2.20.0","cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^8.0.1","start-server-and-test":"^1.10.8","ts-node":"^8.6.2","typescript":"^3.7.5"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,json,css,md}":["prettier --write","git add"]},"readme":"# [DEPRECATED] react-axe\n\n[![No Maintenance Intended](http://unmaintained.tech/badge.svg)](http://unmaintained.tech/)\n\n> This repository has been deprecated. The package has been moved to [axe-core-npm](https://github.com/dequelabs/axe-core-npm/tree/develop/packages/react). The package will be available via NPM as [`@axe-core/react`](https://www.npmjs.com/package/@axe-core/react).\n\n---\n\n# React-axe\n\nTest your React application with the [axe-core](https://github.com/dequelabs/axe-core) accessibility testing library. Results will show in the Chrome DevTools console.\n\n## Usage\n\n[![Greenkeeper badge](https://badges.greenkeeper.io/dequelabs/react-axe.svg)](https://greenkeeper.io/)\n\nInstall the module from NPM or elsewhere\n\n```sh\nnpm install --save-dev react-axe\n```\n\n## Initialize the module\n\nCall the exported function passing in the React and ReactDOM objects as well as a timing delay in milliseconds that will be observed between each component change and the time the analysis starts.\n\n```js\nvar React = require('react');\nvar ReactDOM = require('react-dom');\n\nif (process.env.NODE_ENV !== 'production') {\n  var axe = require('react-axe');\n  axe(React, ReactDOM, 1000);\n}\n```\n\nBe sure to only run the module in your development environment (as shown in the code above) or else your application will use more resources than necessary when in production. You can use [envify](https://www.npmjs.com/package/envify) to do this as is shown in the [example](./example/package.json#L35).\n\nOnce initialized, the module will output accessibility defect information to the Chrome Devtools console every time a component updates.\n\n## Deduplicating\n\nreact-axe will deduplicate violations using the rule that raised the violation and the CSS selector and the failureSummary of the specific node. This will ensure that each unique issue will only be printed to the console once.\n\n## Debouncing\n\nThe third argument to the exported function is the number of milliseconds to wait for component updates to cease before performing an analysis of all the changes. The changes will be batched and analyzed from the closest common ancestor of all the components that changed within the batch. This generally leads to the first analysis for a dynamic application, analyzing the entire page (which is what you want), while subsequent updates will only analyze a portion of the page (which is probably also what you want).\n\n## Shadow DOM\n\nWith version 3.0.0, react-axe now runs accessibility tests inside of open Shadow DOM. You don't have to do anything special other than run react-axe on an component encapsulated with open Shadow DOM (as opposed to closed). For more information, see the [axe-core repo](https://github.com/dequelabs/axe-core).\n\n## Configuration\n\nThere is a fourth optional argument that is a configuration object for axe-core. Read about the object here: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#api-name-axeconfigure\n\n```js\nvar config = {\n  rules: [\n    {\n      id: 'skip-link',\n      enabled: true\n    }\n  ]\n};\n\naxe(React, ReactDOM, 1000, config);\n```\n\nAxe-core's context object can be given as a fifth optional argument to specify which element should (and which should not) be tested. Read more from the Axe-core documentation: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#context-parameter\n\n```js\nvar context = {\n  include: [['#preview']]\n};\n\naxe(React, ReactDOM, 1000, undefined, context);\n```\n\n## Run the example\n\nRun a build in the example directory and start a server to see React-aXe in action in the Chrome Devtools console (opens on localhost:8888):\n\n```sh\nnpm install\ncd example\nnpm install\nnpm install -g http-server\nnpm start\n```\n\n## Run the tests\n\nInstall dependencies in the root directory (which also installs them in the example directory) and then run the tests:\n\n```\nnpm install\nnpm test\n```\n\nTo debug tests in the Cypress application:\n\n```\nnpm run test:debug\n```\n\n## Compatibility\n\nreact-axe uses advanced console logging features and works best in the Chrome browser, with limited functionality in Safari and Firefox.\n\n## Advantages\n\nI have been asked how this is different from modules like react-a11y which test the jsx.\n\nThe main difference is that react-axe tests the accessibility of the rendered DOM. This is important because many accessibility issues exist at the intersection of the DOM and the CSS and unless you have a fully rendered DOM, you will get two sorts of inaccuracies:\n\n1. False negatives because of lacking information. Example is in order to test color contrast you must know the foreground and background colors, and\n1. False positives because the element being evaluated is not in its final state and the information to communicate this to the testing algorithm is not available. Example is an inert piece of code that will be augmented once it becomes active.\n\nIf you have nice clean code, number 2 will be negligible but number 1 will always be a concern.\n","readmeFilename":"README.md","gitHead":"44b2e9fdb1ff814754bec32113d71e34b4220f1f","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.5.3-canary.44b2e9fd","_nodeVersion":"10.22.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-HV2n2ZsL57ZXGkgziWSQx5XJNRHRcVhCLxi1hRRusqqFyCIrLDVnuW76w7ozC5nDFM7q7lhRo0dF0Q83PL9Whw==","shasum":"c845785f676811be4a73efff390818b6781262bc","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.5.3-canary.44b2e9fd.tgz","fileCount":10,"unpackedSize":38394,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfckGFCRA9TVsSAnZWagAAGywP/2eYE3BhkhSXCVBCy8iW\nZxRqBRheCXaY48SDIlySNWMZ1UYyG70LOuH765XRfxINaehmtdxPCV0G6zU3\n41IeMAwXW/G2BFMgIh1b7NbG8xZHxfIhFaRn0mPQMFUwYfKxE5VB3iucZYdU\nNgFn7OieX8H3usoT/ZdShmpTTooKa0LPIu87nfY2tupEI8WHc65N4+B+661M\nixsmMa0UXtusf8+zvGr8xtlNjEjJ/4ltZGa0H4/FQ7sD7H4OAS68sXMvy4PK\ncySmp5zLy4sMMvm+jfFLze/VfdykPE3yN5zgp1/QgfuRa+fIQ9ZeeQ6gYtTK\ncOvyyQFNMclvyUjBC91zR4MlZz8xL7XutPv5YQTAVILYubh420zFQ+FQSyLW\no4qOBjFtVOowgj0r7OIdLbKk46mLLc8yoXxm69aAnvkBb1Cm7qRl3l1BP3pX\nQ+kxc6GOVmz/RyocEqAF30WGTPnyKnI9RW5wopn4eMQzo1wkYWs3kUEVswIS\nfFa3v7Lq5QBJ6fqMTAN53EPmBF98jMIG4JPRE+3xj1BU37dVcFYV0RqGNJr1\ny2AWME6JIsxYTkz7VTmg+ubFOU+0fp17AkgdLwtXX07pqr9mn8dD4yKzOqc0\nK5ocg1ymdx7VTHn7j+2m1uk3AiaVUtE4a5o1oEz5gyEt3g3NQgtwLrlyHBds\nKXN5\r\n=hTFx\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCeiJvf08etrsNoPTuQrPxWT8b45JY3pxm+sZhPC/E4ugIgNWHWykrt+kyoqj26hTOjzHi2+K6jq/R2CZ+WKBOqWW8="}]},"maintainers":[{"name":"dylanb","email":"dylan@barrell.com"},{"name":"stephenmathieson","email":"me@stephenmathieson.com"},{"name":"wilcofiers","email":"wilcofiers@gmail.com"},{"name":"npmdeque","email":"axe@deque.com"}],"_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.5.3-canary.44b2e9fd_1601323396840_0.4124853898277667"},"_hasShrinkwrap":false},"3.5.4":{"name":"react-axe","version":"3.5.4","description":"Dynamic accessibility analysis for React using axe-core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepare":"npm run build","install:example":"cd example && npm install","eslint":"eslint --ext .js,.ts *.ts","pretest":"npm run install:example","test":"eslint index.ts after.ts && tsc && npm run test:types && npm run test:cypress","test:types":"cd test && tsc","test:cypress":"start-server-and-test start-server http://localhost:8080 test:run","start-server":"cd example && npm run start","test:run":"cypress run","test:debug":"cypress open","fmt":"prettier --write *.{js,ts,json,md} example/*.json example/src/*.{js,css} cypress/**/*.{js,json}","release":"standard-version -a"},"keywords":["accessibility","a11y","lint","test"],"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","dependencies":{"axe-core":"^3.5.0","requestidlecallback":"^0.3.0"},"devDependencies":{"@types/react":"^16.9.20","@types/requestidlecallback":"^0.3.1","@typescript-eslint/eslint-plugin":"^2.20.0","@typescript-eslint/parser":"^2.20.0","cypress":"^3.8.3","cypress-shadow-dom":"^1.3.0","eslint":"^6.8.0","eslint-config-airbnb":"^18.0.1","eslint-plugin-import":"^2.20.1","eslint-plugin-jsx-a11y":"^6.2.3","eslint-plugin-react":"^7.18.3","http-server":"^0.11.1","husky":"^3.1.0","lint-staged":"^9.5.0","prettier":"^1.19.1","react":"^16.12.0","react-dom":"^16.12.0","standard-version":"^8.0.1","start-server-and-test":"^1.10.8","ts-node":"^8.6.2","typescript":"^3.7.5"},"repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"prettier":{"arrowParens":"avoid","bracketSpacing":true,"printWidth":80,"semi":true,"singleQuote":true,"useTabs":false},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,json,css,md}":["prettier --write","git add"]},"gitHead":"d4946adec193d1b8e436182c067d9ebdf9697c6c","bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"homepage":"https://github.com/dequelabs/react-axe#readme","_id":"react-axe@3.5.4","_nodeVersion":"10.22.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-5xNO0QVCCEZnJiyhAGox0MGFyclgU3XL8se+5H+whdxV1VTtA9/uux9BSCF5mGNSgtSZkb+tQtrOaF+zGf/oWw==","shasum":"f59b9ea08eb82341f53cb26c5c53724417bc8c8f","tarball":"https://registry.npmjs.org/react-axe/-/react-axe-3.5.4.tgz","fileCount":10,"unpackedSize":38469,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJffznvCRA9TVsSAnZWagAAfPsP/Rn4rBdBf+lUPaS59QR8\nrXDgD7EsZIiH81WAoQBeXOasVmrsj9sgV3ZM9WPOmDPJBSzuO5qb4LBmtw0/\n4G4D2gpYdN6JjPJAkvijYPfJx7ZWsJtcTqTztK9ue2HRyPH/mSYvOCvhhqYn\nGIzoM7ik8e2lqKOPGLYbJ7LQrw2iMYXo68I8zqkndP/vVvGoLMFjUpijX2wa\nmjNJ/R2g3x5H29vMRGdA6xeq5zHa9MtD7zAK2nel0QAHpDg+3Zug1CN+1X+f\nItQh9Yg+ST3Lu0hLWOQmexebI7UmYP/m5okkfVkUvu/OMX5PMuTkEns6zPdp\neFdFsgIZL8m9p3M72Tolp8Cv2ZyeJRsOmY3j8Ynrxu+hhfhj5trBx9qvCzZ9\nSl0HJ/o+PCYg6/pxn761ug01eUJ3cuuJCJWPFHn7zsk2YJA0Dpx8x+skSGGg\nCZ70YMvYZrBlbc2mF4I7Tv0rBZyLPJ0x692eNL0LqdqEUh1YH0O4h20gJPod\ndNqeLjk4UbQ4byDrg1WkLci2KBhZUHsbifSZH3VXkIbPXtn4YO5guJH4tsMj\nEGbwF8waN6d7A5YYhvnq5QHtVfLO/infjwBg5R6eyGzHLgs/HjmNfKGJpdlo\nEh5fZpEHXbzu2COwjGYbCs+K3fmT/A21BwJ5S5QYDHE3ZP3pP8WZUJ3oayTA\n24dH\r\n=95EE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICTl48IJw/tQWuOKwFFL0yddHpwEcjo++rt7JMoqAZx9AiByS8CBZayGYD/PwMinzOFE+QEoxBipt6MqskozKGuj/w=="}]},"maintainers":[{"name":"dylanb","email":"dylan@barrell.com"},{"name":"stephenmathieson","email":"me@stephenmathieson.com"},{"name":"wilcofiers","email":"wilcofiers@gmail.com"},{"name":"npmdeque","email":"axe@deque.com"}],"_npmUser":{"name":"npmdeque","email":"axe@deque.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-axe_3.5.4_1602173422514_0.7810164285270067"},"_hasShrinkwrap":false,"deprecated":"deprecated"}},"readme":"# [DEPRECATED] react-axe\n\n[![No Maintenance Intended](http://unmaintained.tech/badge.svg)](http://unmaintained.tech/)\n\n> This repository has been deprecated. The package has been moved to [axe-core-npm](https://github.com/dequelabs/axe-core-npm/tree/develop/packages/react). The package will be available via NPM as [`@axe-core/react`](https://www.npmjs.com/package/@axe-core/react).\n\n---\n\n# React-axe\n\nTest your React application with the [axe-core](https://github.com/dequelabs/axe-core) accessibility testing library. Results will show in the Chrome DevTools console.\n\n## Usage\n\n[![Greenkeeper badge](https://badges.greenkeeper.io/dequelabs/react-axe.svg)](https://greenkeeper.io/)\n\nInstall the module from NPM or elsewhere\n\n```sh\nnpm install --save-dev react-axe\n```\n\n## Initialize the module\n\nCall the exported function passing in the React and ReactDOM objects as well as a timing delay in milliseconds that will be observed between each component change and the time the analysis starts.\n\n```js\nvar React = require('react');\nvar ReactDOM = require('react-dom');\n\nif (process.env.NODE_ENV !== 'production') {\n  var axe = require('react-axe');\n  axe(React, ReactDOM, 1000);\n}\n```\n\nBe sure to only run the module in your development environment (as shown in the code above) or else your application will use more resources than necessary when in production. You can use [envify](https://www.npmjs.com/package/envify) to do this as is shown in the [example](./example/package.json#L35).\n\nOnce initialized, the module will output accessibility defect information to the Chrome Devtools console every time a component updates.\n\n## Deduplicating\n\nreact-axe will deduplicate violations using the rule that raised the violation and the CSS selector and the failureSummary of the specific node. This will ensure that each unique issue will only be printed to the console once.\n\n## Debouncing\n\nThe third argument to the exported function is the number of milliseconds to wait for component updates to cease before performing an analysis of all the changes. The changes will be batched and analyzed from the closest common ancestor of all the components that changed within the batch. This generally leads to the first analysis for a dynamic application, analyzing the entire page (which is what you want), while subsequent updates will only analyze a portion of the page (which is probably also what you want).\n\n## Shadow DOM\n\nWith version 3.0.0, react-axe now runs accessibility tests inside of open Shadow DOM. You don't have to do anything special other than run react-axe on an component encapsulated with open Shadow DOM (as opposed to closed). For more information, see the [axe-core repo](https://github.com/dequelabs/axe-core).\n\n## Configuration\n\nThere is a fourth optional argument that is a configuration object for axe-core. Read about the object here: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#api-name-axeconfigure\n\n```js\nvar config = {\n  rules: [\n    {\n      id: 'skip-link',\n      enabled: true\n    }\n  ]\n};\n\naxe(React, ReactDOM, 1000, config);\n```\n\nAxe-core's context object can be given as a fifth optional argument to specify which element should (and which should not) be tested. Read more from the Axe-core documentation: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#context-parameter\n\n```js\nvar context = {\n  include: [['#preview']]\n};\n\naxe(React, ReactDOM, 1000, undefined, context);\n```\n\n## Run the example\n\nRun a build in the example directory and start a server to see React-aXe in action in the Chrome Devtools console (opens on localhost:8888):\n\n```sh\nnpm install\ncd example\nnpm install\nnpm install -g http-server\nnpm start\n```\n\n## Run the tests\n\nInstall dependencies in the root directory (which also installs them in the example directory) and then run the tests:\n\n```\nnpm install\nnpm test\n```\n\nTo debug tests in the Cypress application:\n\n```\nnpm run test:debug\n```\n\n## Compatibility\n\nreact-axe uses advanced console logging features and works best in the Chrome browser, with limited functionality in Safari and Firefox.\n\n## Advantages\n\nI have been asked how this is different from modules like react-a11y which test the jsx.\n\nThe main difference is that react-axe tests the accessibility of the rendered DOM. This is important because many accessibility issues exist at the intersection of the DOM and the CSS and unless you have a fully rendered DOM, you will get two sorts of inaccuracies:\n\n1. False negatives because of lacking information. Example is in order to test color contrast you must know the foreground and background colors, and\n1. False positives because the element being evaluated is not in its final state and the information to communicate this to the testing algorithm is not available. Example is an inert piece of code that will be augmented once it becomes active.\n\nIf you have nice clean code, number 2 will be negligible but number 1 will always be a concern.\n","maintainers":[{"name":"dylanb","email":"dylan@barrell.com"},{"name":"npmdeque","email":"axe@deque.com"},{"name":"stephenmathieson","email":"me@stephenmathieson.com"},{"name":"wilcofiers","email":"wilcofiers@gmail.com"}],"time":{"modified":"2022-06-25T16:44:27.964Z","created":"2016-05-10T01:09:44.043Z","1.0.0":"2016-05-10T01:09:44.043Z","1.0.1":"2016-05-11T16:51:10.938Z","1.0.2":"2016-05-11T18:29:39.091Z","1.0.3":"2016-05-11T20:07:54.673Z","1.0.4":"2016-07-15T20:19:51.487Z","1.0.5":"2016-07-15T20:22:30.710Z","1.0.6":"2016-08-04T14:30:59.906Z","1.0.7":"2016-08-13T16:15:47.121Z","2.0.0":"2016-08-21T20:17:24.475Z","2.0.1":"2016-08-22T04:40:41.535Z","2.1.0":"2016-09-28T14:27:55.619Z","2.1.1":"2016-12-13T22:18:52.626Z","2.1.2":"2017-05-01T22:24:05.488Z","2.1.3":"2017-05-24T10:10:23.234Z","2.1.4":"2017-05-25T20:58:53.281Z","2.1.5":"2017-06-05T13:15:50.264Z","2.1.6":"2017-06-10T19:49:14.734Z","2.1.7":"2017-06-27T21:22:59.336Z","2.1.9":"2017-12-20T14:56:14.539Z","3.0.0-alpha.1":"2018-02-20T09:41:16.276Z","3.0.0":"2018-03-28T16:23:28.340Z","3.0.1":"2018-04-05T19:03:59.745Z","3.0.2":"2018-09-21T15:44:38.800Z","3.1.0":"2019-03-11T16:37:17.532Z","3.2.0":"2019-07-03T15:27:10.108Z","3.3.0":"2019-08-29T10:32:15.047Z","3.4.0":"2020-02-13T10:08:56.863Z","3.4.1":"2020-02-14T16:37:14.328Z","3.5.0":"2020-06-18T16:52:11.817Z","3.4.1-canary.88a0b58d":"2020-06-19T15:54:55.542Z","3.4.1-canary.6bd3ddfc":"2020-06-19T16:04:42.214Z","3.4.1-canary.3771b262":"2020-06-19T16:52:26.915Z","3.5.0-canary.bd25b2e9":"2020-06-19T17:43:17.277Z","3.5.1":"2020-06-19T17:54:28.385Z","3.5.1-canary.1ee20886":"2020-06-19T18:07:50.926Z","3.5.1-canary.a0ebeb41":"2020-06-19T18:22:51.583Z","3.5.1-canary.342b1705":"2020-06-19T18:32:12.297Z","3.5.1-canary.363b623e":"2020-06-19T18:38:03.841Z","3.5.1-canary.55555555":"2020-06-19T18:43:26.253Z","3.5.1-canary.e81a5ac9":"2020-06-19T18:46:44.411Z","3.5.1-canary.752e547e":"2020-06-19T18:51:06.124Z","3.5.1-canary.32fa8b00":"2020-06-19T18:54:17.095Z","3.5.1-canary.5e4bfed7":"2020-06-19T18:56:28.662Z","3.5.1-canary.b0f3f7bb":"2020-06-19T19:03:04.440Z","3.5.2":"2020-06-19T19:35:40.482Z","3.5.1-canary.605cab8d":"2020-06-22T15:34:01.682Z","3.5.1-canary.9913a15e":"2020-06-23T15:28:07.121Z","3.5.2-canary.7228046e":"2020-06-23T15:39:05.380Z","3.5.3":"2020-06-23T15:59:02.666Z","3.5.3-canary.ecdafb38":"2020-06-24T22:13:41.225Z","3.5.3-canary.87274c7c":"2020-07-01T15:22:45.723Z","3.5.3-canary.d3245b32":"2020-07-14T09:33:08.606Z","3.5.3-canary.2095c206":"2020-09-14T15:54:59.452Z","3.5.3-canary.44b2e9fd":"2020-09-28T20:03:17.065Z","3.5.4":"2020-10-08T16:10:22.615Z"},"keywords":["accessibility","a11y","lint","test"],"author":{"name":"Dylan Barrell","url":"dylan@barrell.com"},"license":"MPL-2.0","readmeFilename":"README.md","homepage":"https://github.com/dequelabs/react-axe#readme","repository":{"type":"git","url":"git+https://github.com/dequelabs/react-axe.git"},"bugs":{"url":"https://github.com/dequelabs/react-axe/issues"},"contributors":[{"name":"Niklas Holmberg","url":"@badtant"},{"name":"Dylan Barrell","url":"dylan@barrell.com"},{"name":"Jennifer Stern","url":"@junyper"},{"name":"Marcy Sutton","url":"@marcysutton"},{"name":"Wilco Fiers","url":"@wilcofiers"}],"users":{"codedsignal":true}}