{"_id":"@authentiqagency/eslint-config","_rev":"1-5f39eb1f594c3d66a7ec2c5d58863e7d","name":"@authentiqagency/eslint-config","dist-tags":{"latest":"0.4.17"},"versions":{"0.4.16":{"version":"0.4.16","type":"commonjs","name":"@authentiqagency/eslint-config","description":"ESLint and prettier config","author":{"name":"Roger Schönbächler"},"homepage":"https://github.com/authentiqagency/eslint-config#readme","repository":{"type":"git","url":"git+https://github.com/authentiqagency/eslint-config.git"},"bugs":{"url":"https://github.com/authentiqagency/eslint-config/issues"},"exports":{"./eslint":{"import":"./eslint/index.js","require":"./eslint/index.js"},"./prettier":{"import":"./prettier/index.js","require":"./prettier/index.js"},"./stylelint":{"import":"./stylelint/index.js","require":"./stylelint/index.js"}},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"dependencies":{"@stylelint/postcss-css-in-js":"^0.38.0","@typescript-eslint/eslint-plugin":"^5.46.1","@typescript-eslint/parser":"^5.46.1","eslint":"^8.29.0","eslint-config-next":"^13.0.6","eslint-config-prettier":"^8.5.0","eslint-plugin-import":"npm:eslint-plugin-i@^2.26.0-2","eslint-plugin-jsonc":"^2.5.0","eslint-plugin-jsx-a11y":"^6.6.1","eslint-plugin-markdown":"^3.0.0","eslint-plugin-no-secrets":"^0.8.9","eslint-plugin-prettier":"^4.2.1","eslint-plugin-react":"7.31.11","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-security":"^1.5.0","eslint-plugin-simple-import-sort":"^8.0.0","eslint-plugin-sonarjs":"^0.17.0","eslint-plugin-sort-keys":"^2.3.5","eslint-plugin-tsdoc":"^0.2.17","eslint-plugin-typescript-sort-keys":"^2.1.0","eslint-plugin-yml":"^1.3.0","postcss-syntax":"^0.36.2","prettier":"^2.8.1","stylelint":"14.16.0","stylelint-config-idiomatic-order":"^9.0.0","stylelint-config-prettier":"^9.0.4","stylelint-config-recommended":"9.0.0","stylelint-config-standard":"29.0.0","typescript":"^4.9.4"},"_id":"@authentiqagency/eslint-config@0.4.16","dist":{"shasum":"1e23b3cdef900598f3b57b2f11e9af28ba843d67","integrity":"sha512-1f1NvN2jPoqD5xsoKSxT63C9PoRtUXJRAJocXHySNDxQhcFaBvI6WWPQpabnx0c3+OyLAYgA+BhMgWdJ1FMsug==","tarball":"https://registry.npmjs.org/@authentiqagency/eslint-config/-/eslint-config-0.4.16.tgz","fileCount":9,"unpackedSize":15119,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHTo6mS+I0sG1SSOqT/POK3jzD0kXxLLc0LwafTu1nr1AiALWafssSTwTGaOUorF7FTrp/D2xxN2Q+6GNb1CNG/SCw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkEXtEACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqaUBAAozF0buIN3il9XrXClkj1MAOUz6SQyD+JF8APBPAqfr8kX68b\r\npytLqSuteIR0WCvc+96RN8nMX2Ahd0PIqEQiKe2e6hSbNncDBvzVjdF5a8nM\r\nXdekc5viVIpF5KmkUObxuonvPmENeLfaQ6zhc9t5vf36UuJaku1x/tLoX3J3\r\nwrajerfUQwFVcEa0mKGvf6BFU88P5hv98I5qDFgVSngI7KDl8g8oVD+NTW7/\r\nWH5SNcqwWXUzrkTIYkLEfbpvTyP/+hW7AGPJH38a8TOI3lhz+nvo3PiACaIh\r\nz+EUDhBSAXhVXMFZGsEjtS7Wp3Gv7nm3BHAXUvX/jw5fkytxEXWYE4WYzh6a\r\nmIc6ZfBzRh00IN4Dntd8zuB94DD2qtzQ9WZ6z0/x3Y7Yz2IRF5786VwDWgy3\r\njDxtNqts/q1vs47sFRz5sGULb9rnYyBxPoEb7CjOpan8opsokwVCnOb2aTVV\r\nyzB3CudmaFT2g85vzNZvRrp3NbHk/WQ+9fQaU0YArrfpgvsJKgrdDlDEB0Hp\r\nLrcaQs6AZ8ySWJTLuPM4liWJhe2tImV8QzM4WhTJuM0VD9Ewd/6oCSN0HUwG\r\nseY4W1uTJvvBYRGkYxKbho9aoi69W6KY1e/6KA40whubrlEGj5niSazwvaxk\r\nS5nCm6QlPa01NBh5uUWd/Ox3j2gBVXxihUs=\r\n=m8+y\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"authentiqagency","email":"admin@authentiq.ch"},"directories":{},"maintainers":[{"name":"authentiqagency","email":"admin@authentiq.ch"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/eslint-config_0.4.16_1678867268476_0.6558695936120138"},"_hasShrinkwrap":false},"0.4.17":{"version":"0.4.17","type":"commonjs","name":"@authentiqagency/eslint-config","description":"ESLint and prettier config","author":{"name":"Roger Schönbächler"},"homepage":"https://github.com/authentiqagency/eslint-config#readme","repository":{"type":"git","url":"git+https://github.com/authentiqagency/eslint-config.git"},"bugs":{"url":"https://github.com/authentiqagency/eslint-config/issues"},"exports":{"./eslint":{"import":"./eslint/index.js","require":"./eslint/index.js"},"./prettier":{"import":"./prettier/index.js","require":"./prettier/index.js"},"./stylelint":{"import":"./stylelint/index.js","require":"./stylelint/index.js"}},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"dependencies":{"@stylelint/postcss-css-in-js":"^0.38.0","@typescript-eslint/eslint-plugin":"^5.46.1","@typescript-eslint/parser":"^5.46.1","eslint":"^8.29.0","eslint-config-next":"^13.0.6","eslint-config-prettier":"^8.5.0","eslint-plugin-import":"npm:eslint-plugin-i@^2.26.0-2","eslint-plugin-jsonc":"^2.5.0","eslint-plugin-jsx-a11y":"^6.6.1","eslint-plugin-markdown":"^3.0.0","eslint-plugin-no-secrets":"^0.8.9","eslint-plugin-prettier":"^4.2.1","eslint-plugin-react":"7.31.11","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-security":"^1.5.0","eslint-plugin-simple-import-sort":"^8.0.0","eslint-plugin-sonarjs":"^0.17.0","eslint-plugin-sort-keys":"^2.3.5","eslint-plugin-tsdoc":"^0.2.17","eslint-plugin-typescript-sort-keys":"^2.1.0","eslint-plugin-yml":"^1.3.0","postcss-syntax":"^0.36.2","prettier":"^2.8.1","stylelint":"14.16.0","stylelint-config-prettier":"^9.0.4","stylelint-config-recommended":"9.0.0","stylelint-config-standard":"29.0.0","typescript":"^4.9.4"},"gitHead":"86e1227908ae92b54827079e0fe3307a4ad88a91","_id":"@authentiqagency/eslint-config@0.4.17","_nodeVersion":"18.14.2","_npmVersion":"9.5.0","dist":{"integrity":"sha512-2zmGwv7w+w+7sWcuhGjJGfFhOV94YBogbSmZfOV9yhuonbnqXM0mQQK+lYmbPOrlEu036O/+KZM/3OV0JCDYKg==","shasum":"d521eeb18f64620528d1018f1125b541a3a8c4aa","tarball":"https://registry.npmjs.org/@authentiqagency/eslint-config/-/eslint-config-0.4.17.tgz","fileCount":5,"unpackedSize":15029,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDVO5Na+HAwW/b59Tk4GqNuehNSMIphy3bbj9BmQtLHjAIgadSBBZPG58G47374upUBWiTSX5vi3GRkQpuEKHGUFCs="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkGcK7ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoWtA//bPZx/6FSSF0mr7QLSchP4v0VTeUNq4djPQQ4ywkIB6mw1VdN\r\nBCphpx5pr+u5y0TKI6bmPNfcvssn5vHJ6RWNZxcOwWljtp7q65zbhEywkomH\r\n1jraBn2QjKMeI0A2RI3pw8U2gyPIvIlXup+ALZa5/EJr6D0h8gCoIi8SaAoz\r\nBxrVRHM9HqqtHTDJRB9Pr+wObIypxPJjjeGtEiCFl7SYOyMPMgZz/xMD6IuB\r\nqIMDUT+n7IR4nJDs/0zpVRu3USmbPL0jM87NzWqhn3lfIK5hxT++RCGDK9pF\r\nVVwp2Z0GIZZLQ163nhGBZ9w4RfZ+NZOSsQmz6zK7Dd7pLaptIYvhffQO0uAz\r\nwnsluI+4Tvfz65Pw2jdLjXDxH3ROKzvERT2keuq9Y+UNrxuKCkQnFx5MIGup\r\nw0WQShfMto9PypijcnPo8EA2ofpCn3/RXJGnULszFpznfptJsJWihox+umqh\r\n0c+4/eGlyUUZh+IwV140ngJhhjvVxr3lD19LxLlI5QXKj5Z6KOj9sSrhAMQL\r\nAD6dc7PsFRPQmpbdauyfnqvyIG0+SWOU5O5wNfq5PpQ8JAcvIrffPjZx31VC\r\nP72IgwbknKhQHusLqxhmCxgqoTWFUKGMmPmjrejsz3OEyXZzUtdpBJx4FDk7\r\nqAogk3ZeE/VGcGvkdStsjL9Z+sTkr/XS5W4=\r\n=IAsx\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"authentiqagency","email":"admin@authentiq.ch"},"directories":{},"maintainers":[{"name":"authentiqagency","email":"admin@authentiq.ch"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/eslint-config_0.4.17_1679409850877_0.45440008797418185"},"_hasShrinkwrap":false}},"time":{"created":"2023-03-15T08:01:08.375Z","0.4.16":"2023-03-15T08:01:08.732Z","modified":"2023-03-21T14:44:11.148Z","0.4.17":"2023-03-21T14:44:11.024Z"},"maintainers":[{"name":"authentiqagency","email":"admin@authentiq.ch"}],"description":"ESLint and prettier config","homepage":"https://github.com/authentiqagency/eslint-config#readme","repository":{"type":"git","url":"git+https://github.com/authentiqagency/eslint-config.git"},"author":{"name":"Roger Schönbächler"},"bugs":{"url":"https://github.com/authentiqagency/eslint-config/issues"},"readme":"# eslint-config\n\nThis repository contains shared configs for ESLint, Stylelint and Prettier.\n\n## Installation\n\n```bash\nyarn i --save-dev @authentiqagency/eslint-config\n```\n\n## Usage\n\n```jsonc\n// .eslintrc\n{\n  \"extends\": \"@authentiqagency/eslint-config/eslint\"\n}\n```\n\n```jsonc\n// .stylelintrc\n{\n    \"extends\": \"@authentiqagency/eslint-config/stylelint\"\n}\n```\n\n```jsonc\n// .prettierrc\n\"@authentiqagency/eslint-config/prettier\"\n```\n\n## VSCode integration\n\nFor automatic code formatting on save, install the [ESLint extension](https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint) and the [stylelint]() config.\nPrettier will also run through eslint, so you don't need to install the Prettier extension.\n\nTo recommend the extension in your repository create a `.vscode/extensions.json` with the following content:\n\n```jsonc\n{\n  \"recommendations\": [\n    \"dbaeumer.vscode-eslint\",\n    \"stylelint.vscode-stylelint\"\n  ]\n}\n```\n\nIt should also be configured which files and directories should be excluded from linting.\n\n```jsonc\n// .eslintignore, .stylelintignore, .prettierignore\n.next\n.swc\n!/.vscode\n*.min.js\nplop-templates\nnode_modules\nscripts\nq-core/lib\nq-core/node_modules\n```\n\nTo configure the extension properly, create a `.vscode/settings.json` with the following content:\n\n```jsonc\n{\n    // ESLint\n    \"[javascript]\": {\n        \"editor.defaultFormatter\": \"dbaeumer.vscode-eslint\"\n    },\n    \"[javascriptreact]\": {\n        \"editor.defaultFormatter\": \"dbaeumer.vscode-eslint\"\n    },\n    \"[json]\": {\n        \"editor.defaultFormatter\": \"dbaeumer.vscode-eslint\"\n    },\n    \"[json5]\": {\n        \"editor.defaultFormatter\": \"dbaeumer.vscode-eslint\"\n    },\n    \"[jsonc]\": {\n        \"editor.defaultFormatter\": \"dbaeumer.vscode-eslint\"\n    },\n    \"[typescript]\": {\n        \"editor.defaultFormatter\": \"dbaeumer.vscode-eslint\"\n    },\n    \"[typescriptreact]\": {\n        \"editor.defaultFormatter\": \"dbaeumer.vscode-eslint\"\n    },\n    \"editor.codeActionsOnSave\": {\n        \"source.fixAll.eslint\": true,\n        \"source.fixAll.stylelint\": true,\n        \"source.organizeImports\": false\n    },\n\n    // VSCode\n    \"editor.formatOnSave\": false,\n    \"eslint.validate\": [\n        \"javascript\",\n        \"javascriptreact\",\n        \"json\",\n        \"jsonc\",\n        \"json5\",\n        \"typescript\",\n        \"typescriptreact\",\n        \"yaml\"\n    ],\n\n    // Prettier\n    \"prettier.enable\": false,\n\n    // Stylelint\n    \"stylelint.enable\": true,\n    \"stylelint.validate\": [\n        \"javascript\",\n        \"javascriptreact\",\n        \"typescript\",\n        \"typescriptreact\"\n        \"css\",\n        \"less\",\n        \"scss\",\n        \"postcss\",\n    ]\n}\n```\n\nIf you want to have linting scripts, you can use something like this in the `package.json`:\n\n```jsonc\n{\n  \"scripts\": {\n      \"lint\": \"yarn lint:js && yarn lint:css\",\n      \"lint:ci\": \"yarn lint:js --max-warnings 0 && yarn lint:css --max-warnings 0\",\n      \"lint:css\": \"node_modules/.bin/stylelint ./**/*.styled.{js,jsx,ts,tsx}\",\n      \"lint:css:fix\": \"yarn lint:css --fix\",\n      \"lint:fix\": \"yarn lint:js --fix && yarn lint:css --fix\",\n      \"lint:js\": \"node_modules/.bin/eslint --ext .ts,.tsx,.js,.jsx,.json,.jsonc,.yml,.md ./\",\n      \"lint:js:fix\": \"yarn lint:js --fix\"\n  }\n}\n```\n","readmeFilename":"README.md"}