{"_id":"@ast-tools/eslint-config","_rev":"2-dee35395ced5e1d65977b45bd9e513bc","name":"@ast-tools/eslint-config","dist-tags":{"latest":"0.1.1"},"versions":{"0.0.1":{"name":"@ast-tools/eslint-config","version":"0.0.1","description":"AST ESLint configs to rule them all","license":"MIT","keywords":["eslint","eslintconfig","eslint-config"],"scripts":{},"main":"index.js","author":{"name":"Gennadiy Ukhanov","email":"gukhanov@accesssoftek.com"},"dependencies":{"@babel/eslint-parser":"^7.18.2","@babel/eslint-plugin":"^7.17.7","@typescript-eslint/eslint-plugin":"^5.28.0","@typescript-eslint/parser":"^5.28.0","eslint":"^7.5.0","eslint-config-airbnb-base":"^14.2.0","eslint-config-prettier":"^6.11.0","eslint-import-resolver-typescript":"^2.7.1","eslint-import-resolver-webpack":"^0.13.2","eslint-plugin-eslint-comments":"^3.2.0","eslint-plugin-import":"^2.26.0","eslint-plugin-jest":"^26.5.3","eslint-plugin-prettier":"^3.4.1","eslint-plugin-promise":"^4.3.1","eslint-plugin-sort-class-members":"^1.14.1","prettier":"2.6.2"},"publishConfig":{"access":"public"},"gitHead":"ec10dd7e8c189581f7b0b916bd1c9e81ff700043","_id":"@ast-tools/eslint-config@0.0.1","_nodeVersion":"16.14.2","_npmVersion":"8.5.0","dist":{"integrity":"sha512-BojuWD7oy7bX39pqyTaT34gwEgXEjeyWRJLAB6qudEmDqIy+C8InfproUAHYOWckALqKiW40vLovoHvjgM6q4w==","shasum":"8c37a0ba5606844a5a986c2b8dcd78627cdb2785","tarball":"https://registry.npmjs.org/@ast-tools/eslint-config/-/eslint-config-0.0.1.tgz","fileCount":13,"unpackedSize":16277,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDy9GdXvTO953WsFveFLgQBEbUWwTVxcXwjCSJOXsustAiEA3iXQZe8y3kD8cZaHyGnonaFQ7nQy6WuG/Awo8RTmfiQ="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjUprRACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmohAxAAgG5B72ET4+DaxDcdV7kIQ8vXbFxx7EZBF/ajnHBxdMr5pySd\r\nvE9d7z21TkPXHC0w0JdwxTZX5i1h6Drn7cWCpBLYyAZNn3z6Nsp1RDrr6moA\r\nBGCHfp01WDGBO0MN/6q5/CJIqG0KC7SIy+pQn7ROBWdU0+QZC9ahAGWY5tgR\r\nMVBp5nfLmvHx8Vzr+QgyoXqkDEpHmXGqfzupeFFHLMkPVd7hQZgOJqpH+noy\r\nTObRzb2JYgCYEJU02U4RJd/B6RzYiUnXd95ksJnCtndwpNuVKizVZIhUIN01\r\nppsfS6wgsu+kftB0nBotQlrS0FbBEEgPGgULnKV6HRoUdTSOBgCoyeJSqyE9\r\nmPuoPDEpXBZu+SfDi0ZnJowLOXj8nDEjKQwxynWU8pVyLUbHM78pg7xi0f3z\r\nmO6W2HEUF4TCavTamLdAlTuyZ6Tc9QGglzULL2WgCJ9lnkU9ucTMMQaOTS/i\r\noRu7PWU7b45OERWE1q+wH4JnLm8bayarRZWSHFKWMdcr8UDf2EdOqW+aqW5K\r\nwNBtbtyYm2SSyaZeFjexTGbmWczRn+6DAG3BRcVHJhysMtx7kiE7qc1jzljn\r\naMMJsygNFtXGpMptK7BACfBTyAAnRTcmH8qm61C7c1RcK6oy1OpqzTre8goF\r\nLlr77wlyqGyMnNV5u9dYlGXaJ6XQIacWRuc=\r\n=uqZ8\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"gukhan0v","email":"shaggysmile@gmail.com"},"directories":{},"maintainers":[{"name":"gukhan0v","email":"shaggysmile@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/eslint-config_0.0.1_1666357969203_0.9678633042503699"},"_hasShrinkwrap":false},"0.1.0":{"name":"@ast-tools/eslint-config","version":"0.1.0","description":"AST ESLint configs to rule them all","license":"MIT","keywords":["eslint","eslintconfig","eslint-config"],"scripts":{},"main":"index.js","author":{"name":"Gennadiy Ukhanov","email":"gukhanov@accesssoftek.com"},"dependencies":{"@babel/eslint-parser":"^7.18.2","@babel/eslint-plugin":"^7.17.7","@typescript-eslint/eslint-plugin":"^5.28.0","@typescript-eslint/parser":"^5.28.0","eslint":"^7.5.0","eslint-config-airbnb-base":"^14.2.0","eslint-config-prettier":"^6.11.0","eslint-import-resolver-typescript":"^2.7.1","eslint-import-resolver-webpack":"^0.13.2","eslint-plugin-eslint-comments":"^3.2.0","eslint-plugin-import":"^2.26.0","eslint-plugin-jest":"^26.5.3","eslint-plugin-prettier":"^3.4.1","eslint-plugin-promise":"^4.3.1","eslint-plugin-sort-class-members":"^1.14.1","prettier":"2.6.2"},"publishConfig":{"access":"public"},"gitHead":"4b1456679e64e0c65839da8f6a653121e3188f21","_id":"@ast-tools/eslint-config@0.1.0","_nodeVersion":"16.14.2","_npmVersion":"8.5.0","dist":{"integrity":"sha512-yObNwUzlS7vqkLZsf4lux4HHQj7lyKrjJ4ppJfSQzHK4gzGdT2EyOTzcbbFNez97nHKNdO/jmQFRGVR8rtaT5A==","shasum":"c5b2861961172f7d9e5a694f2a9afa06116b1862","tarball":"https://registry.npmjs.org/@ast-tools/eslint-config/-/eslint-config-0.1.0.tgz","fileCount":14,"unpackedSize":16351,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFEC0TEFgCaaH7xJdI2ndgvWBLQ51R7pB+//vE7ZnygYAiEAuCJbBsSIutGsXLSY3UkGI7tW+To2d79k7LmEj7eBHfk="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjViPFACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmodeg//fsI4UeEqST4qFMM4P9nLFiEvZ7X1lsOkUlotSXawSMBDm4Xm\r\nKvvTfT+goxn1vLGYJiVwkymCdw53O3lFIbG2ZJA0gZUqKTZlD3+0jRZCEgFO\r\nBBtS8doDkGzObcbt8ZuFasxfjsfQcr3amxuX8eZc55Uihfy0HhZvBVkeZTFr\r\nA5T3MfVIhSJLU3VUHUVWWfjcbzXvE6EAnbYk4KeGfojJ971VpgFUNPv7AWgq\r\nO0by3C7/OEt9GXunegB0SP9muScFSRYt19HIQ1t1LlpONG48moMBHX2dHpk8\r\nBa2Wzp2Xd1XZTUNpTIN9SigI3shMdHA7I2y2EX+5BKBDxFmxXV4hli9zVpVu\r\nQaaaBhT8OQxLKR1h/cjHQbNFJ9frTnjqJaFXUu0VBeiKAaCYY7oQ3Klcy59M\r\nr6qwMbrS/myxvs0wDqVc7UYPcHVoiAU+MMfZaL0XH52BSrufkFago1kpyPwo\r\n19DmpCVo/AzvYbkB+UIOBkXXWK5L3v+y1mF11ecOx1YvOMoROtSLkHY250s7\r\nhJZb1KkPMj/q7DZql3G3ReVBABTLB1HOonofju16E5Zv98ACbfkCsqbikLIf\r\nM3L4TkdoViZyLnG511iYhVZTQMf7EXHPfiWc5y1gid/pX+PL9/aJjBenJj+g\r\nbG4i0h/ktF0wLFvwMgMg6EcBhV3sO32TVrQ=\r\n=WB4/\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"gukhan0v","email":"shaggysmile@gmail.com"},"directories":{},"maintainers":[{"name":"gukhan0v","email":"shaggysmile@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/eslint-config_0.1.0_1666589636913_0.8092522239807243"},"_hasShrinkwrap":false},"0.1.1":{"name":"@ast-tools/eslint-config","version":"0.1.1","description":"AST ESLint configs to rule them all","license":"MIT","keywords":["eslint","eslintconfig","eslint-config"],"scripts":{},"main":"index.js","author":{"name":"Gennadiy Ukhanov","email":"gukhanov@accesssoftek.com"},"dependencies":{"@babel/eslint-parser":"^7.18.2","@babel/eslint-plugin":"^7.17.7","@typescript-eslint/eslint-plugin":"^5.28.0","@typescript-eslint/parser":"^5.28.0","eslint":"^7.5.0","eslint-config-airbnb-base":"^14.2.0","eslint-config-prettier":"^6.11.0","eslint-import-resolver-typescript":"^2.7.1","eslint-import-resolver-webpack":"^0.13.2","eslint-plugin-eslint-comments":"^3.2.0","eslint-plugin-import":"^2.26.0","eslint-plugin-jest":"^26.5.3","eslint-plugin-prettier":"^3.4.1","eslint-plugin-promise":"^4.3.1","eslint-plugin-sort-class-members":"^1.14.1","prettier":"2.6.2"},"publishConfig":{"access":"public"},"gitHead":"4b1456679e64e0c65839da8f6a653121e3188f21","_id":"@ast-tools/eslint-config@0.1.1","_nodeVersion":"16.14.2","_npmVersion":"8.5.0","dist":{"integrity":"sha512-lLl5KahRp4qPc9tLjRGuuFjyJgKi1WRFGX+KeP8c7vivi6sT+FZK0oYRBI4Vbz87RN5Cwm90afBsHglC2EbcIg==","shasum":"7cf74a3b62f98c58c4634f36e7f4de90a02b49fe","tarball":"https://registry.npmjs.org/@ast-tools/eslint-config/-/eslint-config-0.1.1.tgz","fileCount":13,"unpackedSize":16277,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDaZ6GG89JyExxuEBqs4NVUYNwKmCS7sp+d+W1iO5wHqQIhAI2+nD+DBr7TEBg1NpERE+09EBgScDx7oKkXFghSU2yj"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjd42UACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrTxw/5AQM7dpSQKiHoWvw9CYUAjx3dG3VWDmPsnpgEAaoaxoBeuQxv\r\nm7flTfYlH2IlKfP7beXnOSr021icoGAT0TD9mBHTYgpyVpSFh9Cj38qBeY4K\r\n4lRUz+qXnhMwZBuqB2emfb2mXfiSkTcIliP7+A7M+MyCZH41/DaK3fEzbRY/\r\nXxAJ5pY4MMYRN+RyjPTfD5mpblsfEW24qPr/8XKbqm849/6vfa6Zfmn4tMNn\r\nnU8wrKlBeknxAkXhxZVj3cftpg5oiFZdhIrg/Hzv0ejMNctFtnfwf2rYHXKx\r\nYiUOcqVDuv7x5DvSAiMwXz8dMD99fUK3Y/bi+QL/YyGvrR40vF0C9rbyNqIW\r\nx/sgOCaqLxk47CWarc+Xr4uQ+zaA2L1FgAEc4mBJrIRNkaeL+ID+gB190bOd\r\nVaCNtpbeyTBKFwbYW0ZAismCHF209p0kEo4FM8FIy50NgubVDml7JRXoHUFY\r\nhZ5fdYs7UL6rL1Q4eSLGas7VlGy9bnn7YGRuw1DRCGG4uMJcSUF/jKZ50wRp\r\nhwMJud/1mx12vuUkBO1BuF/BrtaK7/sV1Hpc9UvNSjkosmmhhfxnzYdoBsFx\r\nnfD3bY/Urod8X8Csmm7sVNxY1CkFYPY9ZDQc8yzea4wONSye5cM3B3xWVAML\r\nEboP/rO4HwKS7gLQlRTzdeyJp3WE7fm2gsU=\r\n=AjwI\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"gukhan0v","email":"shaggysmile@gmail.com"},"directories":{},"maintainers":[{"name":"gukhan0v","email":"shaggysmile@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/eslint-config_0.1.1_1668779412690_0.07992882594104267"},"_hasShrinkwrap":false}},"time":{"created":"2022-10-21T13:12:49.131Z","0.0.1":"2022-10-21T13:12:49.702Z","modified":"2022-11-18T13:50:12.916Z","0.1.0":"2022-10-24T05:33:57.112Z","0.1.1":"2022-11-18T13:50:12.829Z"},"maintainers":[{"name":"gukhan0v","email":"shaggysmile@gmail.com"}],"description":"AST ESLint configs to rule them all","keywords":["eslint","eslintconfig","eslint-config"],"author":{"name":"Gennadiy Ukhanov","email":"gukhanov@accesssoftek.com"},"license":"MIT","readme":"# @ast-tools/eslint-config\n\nESLint plugin includes Access Softek rules for JS and TS codebase.\nBetter to use with framework-oriented packages `@ast-tools/eslint-config-react`\n\n## Usage\n\nInstall from npm\n\n```bash\nnpm i --save-dev @ast-tools/eslint-config\n```\n\nThen, need to include necessary configurations sets to `.eslintrc.js`. We need to choose base configuration, and any\nnecessary additional configs. Package include `eslint@7` and `prettier@2` dependencies, so you should remove `eslint`,\n`prettier`, and `@ast-tools/eslint-config` internal dependencies from your project `package.json`.\n\n### Base configurations\n\n#### For application\n\n```bash\n{\n  \"extends\": [\"@ast-tools/eslint-config/app\"]\n}\n```\n\n#### For library\n\n```bash\n{\n  \"extends\": [\"@ast-tools/eslint-config/lib\"]\n}\n```\n\n### Additional configurations\n\n#### If we use Jest\n\n```bash\n{\n  \"extends\": [\"@ast-tools/eslint-config/app\", \"@ast-tools/eslint-config/jest\"]\n}\n```\n\n## Configurations overview\n\nMain configurations sets contains common rules\n\n- `@ast-tools/eslint-config/app` - common rules and specific rules for applications\n- `@ast-tools/eslint-config/lib` - common rules and specific rules for libraries\n\nAdditional configurations sets. This configs **not** contain common eslint rules, and must be included with main\nconfigurations\n\n- `@ast-tools/eslint-config/jest` - rules for lint Jest test suits\n\n## Internal used plugins\n\n`@ast-tools/eslint-config/app` and `@ast-tools/eslint-config/lib` include:\n\n- `eslint-config-airbnb` - common and popular configuration\n- `eslint-plugin-eslint-comments` - validate `eslint` comments\n- `eslint-plugin-import` - validate proper imports\n- `eslint-plugin-promise` - enforce best practices for promises\n- `eslint-plugin-jest` - validate jest tests\n- `@typescript-eslint/eslint-plugin` - lint TypeScript files, adopt many eslint rules to TS code, and provide specific\n  TS rules\n- `eslint-plugin-prettier` - disable code formatting using eslint tools and transfers all the logic to a prettier, and\n  report differences as eslint issues\n\n## Troubleshooting\n\n### Wrong or duplicated eslint or some eslint plugins versions\n\nTry to remove `eslint`, `prettier`, and `@ast-tools/eslint-config` internal dependencies from your project `package.json`,\nthen reinstall dependencies.\n\n## Usage tips for [Nx monorepo](https://nrwl.io/)\n\n### Connect to nx workspace\n\n#### In root config\n\nAdd `\"@ast-tools/eslint-config/app\"` to extends section on config.\nAlso, if you monorepo contains only buildable/publishable libs without apps, use `\"@ast-tools/eslint-config/lib\"` instead of `\"@ast-tools/eslint-config/app\"`\n\n```json\n{\n\n    \"root\": true,\n    \"ignorePatterns\": [\"**/*\"],\n    \"extends\": [\"@ast-tools/eslint-config/app\"]\n    ...optionally some other configs\n}\n```\n\n#### In apps and non-buildable/non-publishable libs\n\nIn app/lib eslint configuration just extends root config\n\n```json\n{\n    \"extends\": [\"../../.eslintrc.json\"],\n    \"ignorePatterns\": [\"!**/*\"]\n    ...optionally some other configs\n}\n```\n\n#### Only in buildable/publishable libs (if repo contain apps or non-buildable/non-publishable libs)\n\nAdd `\"@ast-tools/eslint-config/lib\"` in extends section after root config\n\n```json\n{\n    \"extends\": [\"../../.eslintrc.json\", \"@ast-tools/eslint-config/lib\"],\n    \"ignorePatterns\": [\"!**/*\"]\n    ...optionally some other configs\n}\n```\n\n### Non-JSON configs usage\n\nNx means usage `.eslintrc.json` for configure ESLint. Just provide it! In `.eslintrc.json` add extension of actual root config file:\n\n```\n{\n  \"extends\": [\"./.eslintrc.js\"]\n}\n```\n\nAfter that:\n\n- Nx see what they need and don't re-initialize lint infrastructure\n- You can use [better config formats](https://eslint.org/docs/latest/user-guide/configuring/configuration-files#configuration-file-formats) and nx generators\n","readmeFilename":"README.md"}