{"_id":"@18f/eslint-plugin-identity","_rev":"28-9a0fecf9d2cb2a68182bda5187dc9304","name":"@18f/eslint-plugin-identity","dist-tags":{"latest":"2.0.0"},"versions":{"1.0.0":{"name":"@18f/eslint-plugin-identity","version":"1.0.0","license":"CC0-1.0","_id":"@18f/eslint-plugin-identity@1.0.0","maintainers":[{"name":"aduth","email":"andrew@andrewduthie.com"},{"name":"rori123","email":"rochelle.ribeiro@gsa.gov"},{"name":"adborden","email":"adborden@a14n.net"},{"name":"18f-devops","email":"devops@gsa.gov"},{"name":"mgwalker","email":"npm@darkcooger.net"},{"name":"stvnrlly","email":"stvnrlly@stvnrlly.com"},{"name":"aidanfeldman","email":"aidan.feldman@gmail.com"}],"homepage":"https://github.com/18f/identity-idp","bugs":{"url":"https://github.com/18f/identity-idp/issues"},"dist":{"shasum":"1c9526306a93bcb596cacbb59760268db143dbc9","tarball":"https://registry.npmjs.org/@18f/eslint-plugin-identity/-/eslint-plugin-identity-1.0.0.tgz","fileCount":7,"integrity":"sha512-7bZVqpKesR5nJejm02FCxGENgkelwEPf2CEN2z8nsTJdBwkFWeJHuF1BwNdxNgRtdJjuA0eD0gCiot6MTMgwYg==","signatures":[{"sig":"MEYCIQDZkZJy43qTwZE89C8Z/V2K4KdafKJyH6sUKI+hpIBBEwIhAPcUt1cT1ki61CQYv9VpZBWsW7JNhQpQjgTKp2/A5Gvj","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":7733,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMn/JCRA9TVsSAnZWagAAlt4P/1pgTPtFIwIFBZ8FEkqD\nCk4+hSGp0HmAwPuL2k1/b753PL66ffm+R3il8/0NY6WthaaZ3nD0BwBoLKRE\nE0fsomjdwq41Iq9Hg9ba4D8j8kh2TreIqlzHywEsf6gIZXoOS4X/UZp4l0cW\nRhTRjC5wFnUvFbwiXF4Y1mueGFhX6ASnRhXc8IAhLQ8TWa5jVA9z5FBxAmzU\nU2K0yZDeZN13Ic2YY9nY90ZxvnsVX9vtKawyiqWvs99ABV1yJrYVnoRH6iVU\nNSDa0ZzBQ9k2j1cUbiSDDX3bYdVBTsuO+CeNgM6OVopNT9cMg0CW/DGJytti\nJw8qnqa3jelPZcB0vrlXfIdidu6qzFd/FFh0wy39G1vKqvVHKWu/6i3rltvW\nQvXroZLcec03oPF3hjO5tOFu7HKQvtyu7Cd94SXeOj4QwBCUVNxMSL41zqK0\nnmMtiBgN/ycxHdBH4Lk43/mLDI7UDe+rQeG8rW9HTWGiRtf9qUnShs0B12uV\nlbvyKV8rTXFPkGRQ39si1fdE77Mda0OcwbO0BVEEMrfgbo4wiBxs3Rf9GazP\nURN+g6h8cv0pXIZclSaAqe4gs1dbICN87p1ngDGz9yZdJW2FRuIghQcA9SvH\nT6LN0LB5BMsMRS96TySDij66i18b0peJFu4mntSQWJPYfOhjnWR25pVkwSKO\nwHMv\r\n=z5Lf\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"aduth","email":"andrew@andrewduthie.com"},"repository":{"url":"git+https://github.com/18f/identity-idp.git","type":"git","directory":"app/javascript/packages/eslint-plugin"},"_npmVersion":"6.14.13","description":"ESLint plugin and shareable configurations for Login.gov JavaScript standards","directories":{},"_nodeVersion":"12.22.3","dependencies":{"eslint-plugin-mocha":"^9.0.0","eslint-plugin-react":"^7.25.1","@babel/eslint-parser":"^7.15.0","@babel/eslint-plugin":"^7.14.5","eslint-config-airbnb":"^18.2.1","eslint-plugin-import":"^2.24.2","eslint-plugin-jsx-a11y":"^6.4.1","eslint-plugin-prettier":"^3.4.1","eslint-config-airbnb-base":"^14.2.1","eslint-plugin-react-hooks":"^4.2.0"},"_hasShrinkwrap":false,"peerDependencies":{"mocha":"*","react":"*","eslint":"*","preact":"*","prettier":"*","@babel/core":"*"},"peerDependenciesMeta":{"mocha":{"optional":true},"react":{"optional":true},"preact":{"optional":true},"prettier":{"optional":true},"@babel/core":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-plugin-identity_1.0.0_1630699465274_0.0026790618368146557","host":"s3://npm-registry-packages"}},"2.0.0":{"name":"@18f/eslint-plugin-identity","version":"2.0.0","license":"CC0-1.0","_id":"@18f/eslint-plugin-identity@2.0.0","maintainers":[{"name":"tts-tech-portfolio","email":"tts-tech-portfolio@gsa.gov"},{"name":"18f-devops","email":"devops@gsa.gov"},{"name":"mgwalker","email":"npm@darkcooger.net"},{"name":"stvnrlly","email":"stvnrlly@stvnrlly.com"},{"name":"rori123","email":"rochelle.ribeiro@gsa.gov"},{"name":"aduth","email":"andrew@andrewduthie.com"}],"homepage":"https://github.com/18f/identity-idp","bugs":{"url":"https://github.com/18f/identity-idp/issues"},"dist":{"shasum":"019bdf2f5269d643c572fcdf229f93360a7c97af","tarball":"https://registry.npmjs.org/@18f/eslint-plugin-identity/-/eslint-plugin-identity-2.0.0.tgz","fileCount":8,"integrity":"sha512-dhafEDQ8hvL1WUIEeEngaqO/UTxcUOd4BT68fa9BSb1sH5kN3PeM7Ir/KtgDpvrWmx40BQYp41MmcJjN1CHL+A==","signatures":[{"sig":"MEUCIQCM5u3DDtYHRE4cxlHI8tldo2SiYMss2k6bUjUXAX8LggIgDvZCP6r3exdDFstCS4z4M6t30V19wnUJbx/6fMrVRok=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":10602,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiL52eACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoqjQ//RD/kAn+PxmQMwduKFlOLYres/Dyqlq4/TqVx65aG7ateYCWL\r\nNPUse1mAzJUJD+7LLLvEvkjOM56O7K9BMlg8OoeyoRMgsH8J0sceouqqwZcn\r\n5WnT6qEoOOtBgzxptP340kkmg1oCRE3fCaACtFlNKYWzTPI4LCZf9pwUsmRz\r\n84JL3fpOHKt9sdL4+icZKwTuqh960Rk2Sak6FZO6ykdFgp1JU+KwXBRdcIqk\r\ncO65hubi9PC7S44MnEaVOGESdtZDj2SbeFD2d91wxPVUB2JGy/GTyK/Nihqt\r\nkhidP3G+B+Q7LcU6z4UaLyr+06JMfT6URhKoMDDU3IeDQmRYwsSceH5hPx5y\r\nHg51wetxldfgRB0cJdqPbEobfwiFJrbHsvkYod0UPmFb0y57bf4ilRoiFLnm\r\nEhH7Nkmz9q/d2wzS0OKQ0Ekx8d/YbQKyryiY/4EfGVhcypimntKS2LTDyYLb\r\nXFN9XrpOJdOgJoG1BnTdT3UyUjbP5/ncPDelwpH5IsysEyvZZOHdzDeYPWuK\r\nbxHom+tG5DUYW8psmUUE0FBucqifk82v8YeajWH1NLkJFYEYUf7exskMxLkB\r\n3MCaMI4/PNbOurx6FXRt+Wtcw0RGrRFlMplPAsvBrCFYHt8Hpj+nFlJmMYTD\r\nVtKDLNOEcZw3fWe52MynJ5iYNIcQSxIiIYw=\r\n=Vwkc\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"aduth","email":"andrew@andrewduthie.com"},"repository":{"url":"git+https://github.com/18f/identity-idp.git","type":"git","directory":"app/javascript/packages/eslint-plugin"},"_npmVersion":"6.14.15","description":"ESLint plugin and shareable configurations for Login.gov JavaScript standards","directories":{},"_nodeVersion":"14.18.2","dependencies":{"eslint-config-airbnb":"^19.0.4","eslint-config-airbnb-base":"^15.0.0"},"_hasShrinkwrap":false,"peerDependencies":{"eslint":">=8","eslint-plugin-mocha":"*","eslint-plugin-react":"*","eslint-plugin-import":"*","eslint-plugin-jsx-a11y":"*","eslint-plugin-prettier":"*","@typescript-eslint/parser":"*","eslint-plugin-react-hooks":"*","@typescript-eslint/eslint-plugin":"*"},"peerDependenciesMeta":{"eslint-plugin-mocha":{"optional":true},"eslint-plugin-react":{"optional":true},"eslint-plugin-jsx-a11y":{"optional":true},"eslint-plugin-prettier":{"optional":true},"@typescript-eslint/parser":{"optional":true},"eslint-plugin-react-hooks":{"optional":true},"@typescript-eslint/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-plugin-identity_2.0.0_1647287710539_0.09451962245190204","host":"s3://npm-registry-packages"}}},"time":{"created":"2021-09-03T20:04:25.231Z","modified":"2026-07-30T16:17:29.105Z","1.0.0":"2021-09-03T20:04:25.432Z","2.0.0":"2022-03-14T19:55:10.713Z"},"bugs":{"url":"https://github.com/18f/identity-idp/issues"},"license":"CC0-1.0","homepage":"https://github.com/18f/identity-idp","repository":{"url":"git+https://github.com/18f/identity-idp.git","type":"git","directory":"app/javascript/packages/eslint-plugin"},"description":"ESLint plugin and shareable configurations for Login.gov JavaScript standards","maintainers":[{"email":"devops@gsa.gov","name":"18f-devops"},{"email":"rochelle.ribeiro@gsa.gov","name":"rori123"},{"email":"sheldon@navapbc.com","name":"sb-nava"},{"email":"gina.yamada@gsa.gov","name":"ginayam"},{"email":"micah.neveu@gsa.gov","name":"mneveunava"},{"email":"tts-tech-portfolio@gsa.gov","name":"tts-tech-portfolio"},{"email":"michael.r.king@gsa.gov","name":"mkgsa"},{"email":"charles.ferguson@gsa.gov","name":"cvfergus"},{"email":"matt.gardner@gsa.gov","name":"nava-matt"},{"email":"keithwilliams@navapbc.com","name":"keithnava"},{"email":"tai@taigrr.com","name":"taigrr"},{"email":"luigi.ray-montanez@gsa.gov","name":"luigiraymontanez"},{"email":"john.jediny@gsa.gov","name":"jjediny"},{"email":"lakeisha.russell@gsa.gov","name":"lrussell01"},{"email":"gerardo.cruz-ortiz@gsa.gov","name":"gerardo.cruz-ortiz"},{"email":"aj.farkas@gsa.gov","name":"ajfarkas_gsa"}],"readme":"# `@18f/eslint-plugin-identity`\n\nESLint plugin and shareable configurations for Login.gov JavaScript standards.\n\nThese configurations largely inherit from the [TTS JavaScript coding standards](https://engineering.18f.gov/javascript/#style), pre-bundled with recommended rulesets and extended to provide support for Login.gov-specific implementation choices (React, Mocha, TypeScript).\n\n## Installation\n\nInstall using [NPM](https://www.npmjs.com/) or [Yarn](https://yarnpkg.com/). [ESLint](https://eslint.org/) and `eslint-plugin-import` are required as peer dependencies and should be installed if it is not already.\n\n```\nnpm install --save-dev @18f/eslint-plugin-identity eslint eslint-plugin-import\n```\n\nThe configuration automatically includes additional behavior if any of the following packages are installed in your project:\n\n- If `eslint-plugin-mocha` is installed, the Mocha environment and Mocha-specific rules are enabled.\n- If `eslint-plugin-react`, `eslint-plugin-jsx-a11y`, and `eslint-plugin-react-hooks` are installed, JSX and React rules are enabled.\n- If `eslint-plugin-prettier` is installed, Prettier rules are enabled.\n- If `@typescript-eslint/parser` and `@typescript-eslint/eslint-plugin` are installed, TypeScript rules are enabled.\n\n## Usage\n\nCurrently, one configuration is made available for use: the `recommended` ruleset.\n\nBecause the module is published as an ESLint plugin, you should configure it as both a `plugins` and an `extends` in your [ESLint configuration](https://eslint.org/docs/user-guide/configuring/):\n\n```json\n{\n  \"extends\": [\"plugin:@18f/eslint-plugin-identity/recommended\"],\n  \"plugins\": [\"@18f/eslint-plugin-identity\"]\n}\n```\n\n## Frequently Asked Questions\n\n### Why are the configurations published under an ESLint plugin?\n\nPublishing the package as an ESLint plugin has the advantage of allowing for custom rules to be implemented and used within the same package as the configurations.\n\n## License\n\nThis project is in the public domain within the United States, and copyright and related rights in the work worldwide are waived through the [CC0 1.0 Universal public domain dedication](https://creativecommons.org/publicdomain/zero/1.0/).\n\nAll contributions to this project will be released under the CC0 dedication. By submitting a pull request or issue, you are agreeing to comply with this waiver of copyright interest.\n","readmeFilename":"README.md"}