package.json 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. {
  2. "name": "eslint-plugin-unicorn",
  3. "version": "39.0.0",
  4. "description": "Various awesome ESLint rules",
  5. "license": "MIT",
  6. "repository": "sindresorhus/eslint-plugin-unicorn",
  7. "funding": "https://github.com/sindresorhus/eslint-plugin-unicorn?sponsor=1",
  8. "author": {
  9. "name": "Sindre Sorhus",
  10. "email": "sindresorhus@gmail.com",
  11. "url": "https://sindresorhus.com"
  12. },
  13. "engines": {
  14. "node": ">=12"
  15. },
  16. "scripts": {
  17. "fix": "run-p --continue-on-error fix:*",
  18. "fix:js": "npm run lint:js -- --fix",
  19. "fix:md": "npm run lint:md -- --fix",
  20. "lint": "run-p --continue-on-error lint:*",
  21. "lint:js": "xo",
  22. "lint:md": "markdownlint \"**/*.md\"",
  23. "test": "npm-run-all --continue-on-error lint test:*",
  24. "test:js": "nyc ava",
  25. "create-rule": "node ./scripts/create-rule.mjs && npm run generate-rules-table && npm run generate-usage-example",
  26. "run-rules-on-codebase": "node ./test/run-rules-on-codebase/lint.mjs",
  27. "integration": "node ./test/integration/test.mjs",
  28. "smoke": "eslint-remote-tester --config ./test/smoke/eslint-remote-tester.config.js",
  29. "generate-rules-table": "node ./scripts/generate-rules-table.mjs",
  30. "generate-usage-example": "node ./scripts/generate-usage-example.mjs"
  31. },
  32. "files": [
  33. "index.js",
  34. "rules",
  35. "configs"
  36. ],
  37. "keywords": [
  38. "eslint",
  39. "eslintplugin",
  40. "eslint-plugin",
  41. "unicorn",
  42. "linter",
  43. "lint",
  44. "style",
  45. "xo"
  46. ],
  47. "dependencies": {
  48. "@babel/helper-validator-identifier": "^7.14.9",
  49. "ci-info": "^3.2.0",
  50. "clean-regexp": "^1.0.0",
  51. "eslint-template-visitor": "^2.3.2",
  52. "eslint-utils": "^3.0.0",
  53. "esquery": "^1.4.0",
  54. "indent-string": "4",
  55. "is-builtin-module": "^3.1.0",
  56. "lodash": "^4.17.21",
  57. "pluralize": "^8.0.0",
  58. "read-pkg-up": "^7.0.1",
  59. "regexp-tree": "^0.1.23",
  60. "safe-regex": "^2.1.1",
  61. "semver": "^7.3.5",
  62. "strip-indent": "^3.0.0"
  63. },
  64. "devDependencies": {
  65. "@babel/code-frame": "^7.14.5",
  66. "@babel/core": "^7.15.5",
  67. "@babel/eslint-parser": "^7.16.0",
  68. "@lubien/fixture-beta-package": "^1.0.0-beta.1",
  69. "@typescript-eslint/parser": "^5.2.0",
  70. "ava": "^3.15.0",
  71. "chalk": "^4.1.2",
  72. "enquirer": "2.3.6",
  73. "eslint": "^8.0.0",
  74. "eslint-ava-rule-tester": "^4.0.0",
  75. "eslint-plugin-eslint-plugin": "^4.0.2",
  76. "eslint-remote-tester": "^2.0.1",
  77. "eslint-remote-tester-repositories": "^0.0.3",
  78. "execa": "^5.1.1",
  79. "listr": "^0.14.3",
  80. "lodash-es": "4.17.21",
  81. "markdownlint-cli": "^0.29.0",
  82. "mem": "^9.0.1",
  83. "npm-run-all": "^4.1.5",
  84. "nyc": "^15.1.0",
  85. "outdent": "^0.8.0",
  86. "typescript": "^4.4.2",
  87. "vue-eslint-parser": "^8.0.0",
  88. "xo": "^0.46.3"
  89. },
  90. "peerDependencies": {
  91. "eslint": ">=7.32.0"
  92. },
  93. "ava": {
  94. "files": [
  95. "test/*.mjs",
  96. "test/unit/*.mjs"
  97. ]
  98. },
  99. "nyc": {
  100. "reporter": [
  101. "text",
  102. "lcov"
  103. ]
  104. },
  105. "xo": {
  106. "ignores": [
  107. ".cache-eslint-remote-tester",
  108. "eslint-remote-tester-results",
  109. "test/integration/{fixtures,fixtures-local}/**"
  110. ],
  111. "rules": {
  112. "unicorn/no-null": "error"
  113. },
  114. "overrides": [
  115. {
  116. "files": [
  117. "**/*.js"
  118. ],
  119. "parserOptions": {
  120. "sourceType": "script"
  121. },
  122. "rules": {
  123. "strict": "error",
  124. "unicorn/prefer-module": "off"
  125. }
  126. },
  127. {
  128. "files": [
  129. "rules/*.js"
  130. ],
  131. "plugins": [
  132. "eslint-plugin"
  133. ],
  134. "extends": [
  135. "plugin:eslint-plugin/all"
  136. ],
  137. "rules": {
  138. "eslint-plugin/require-meta-docs-description": [
  139. "error",
  140. {
  141. "pattern": ".+"
  142. }
  143. ],
  144. "eslint-plugin/require-meta-docs-url": "off",
  145. "eslint-plugin/require-meta-has-suggestions": "off",
  146. "eslint-plugin/require-meta-schema": "off"
  147. }
  148. }
  149. ]
  150. }
  151. }