package.json 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226
  1. {
  2. "name": "eslint",
  3. "version": "9.39.2",
  4. "author": "Nicholas C. Zakas <nicholas+npm@nczconsulting.com>",
  5. "description": "An AST-based pattern checker for JavaScript.",
  6. "type": "commonjs",
  7. "bin": {
  8. "eslint": "./bin/eslint.js"
  9. },
  10. "main": "./lib/api.js",
  11. "types": "./lib/types/index.d.ts",
  12. "exports": {
  13. ".": {
  14. "types": "./lib/types/index.d.ts",
  15. "default": "./lib/api.js"
  16. },
  17. "./config": {
  18. "types": "./lib/types/config-api.d.ts",
  19. "default": "./lib/config-api.js"
  20. },
  21. "./package.json": "./package.json",
  22. "./use-at-your-own-risk": {
  23. "types": "./lib/types/use-at-your-own-risk.d.ts",
  24. "default": "./lib/unsupported-api.js"
  25. },
  26. "./rules": {
  27. "types": "./lib/types/rules.d.ts"
  28. },
  29. "./universal": {
  30. "types": "./lib/types/universal.d.ts",
  31. "default": "./lib/universal.js"
  32. }
  33. },
  34. "typesVersions": {
  35. "*": {
  36. "use-at-your-own-risk": [
  37. "./lib/types/use-at-your-own-risk.d.ts"
  38. ],
  39. "rules": [
  40. "./lib/types/rules.d.ts"
  41. ],
  42. "universal": [
  43. "./lib/types/universal.d.ts"
  44. ],
  45. "config": [
  46. "./lib/types/config-api.d.ts"
  47. ]
  48. }
  49. },
  50. "scripts": {
  51. "build:docs:update-links": "node tools/fetch-docs-links.js",
  52. "build:site": "node Makefile.js gensite",
  53. "build:webpack": "node Makefile.js webpack",
  54. "build:readme": "node tools/update-readme.js",
  55. "build:rules-index": "node Makefile.js generateRuleIndexPage",
  56. "lint": "trunk check --no-fix --ignore=docs/**/*.js -a --filter=eslint && trunk check --no-fix --ignore=docs/**/*.js",
  57. "lint:docs:js": "trunk check --no-fix --ignore=** --ignore=!docs/**/*.js -a --filter=eslint && trunk check --no-fix --ignore=** --ignore=!docs/**/*.js",
  58. "lint:docs:rule-examples": "node Makefile.js checkRuleExamples",
  59. "lint:unused": "knip",
  60. "lint:fix": "trunk check -y --ignore=docs/**/*.js -a --filter=eslint && trunk check -y --ignore=docs/**/*.js",
  61. "lint:fix:docs:js": "trunk check -y --ignore=** --ignore=!docs/**/*.js -a --filter=eslint && trunk check -y --ignore=** --ignore=!docs/**/*.js",
  62. "lint:rule-types": "node tools/update-rule-type-headers.js --check",
  63. "lint:types": "attw --pack",
  64. "release:generate:alpha": "node Makefile.js generatePrerelease -- alpha",
  65. "release:generate:beta": "node Makefile.js generatePrerelease -- beta",
  66. "release:generate:latest": "node Makefile.js generateRelease -- latest",
  67. "release:generate:maintenance": "node Makefile.js generateRelease -- maintenance",
  68. "release:generate:rc": "node Makefile.js generatePrerelease -- rc",
  69. "release:publish": "node Makefile.js publishRelease",
  70. "test": "node Makefile.js test",
  71. "test:browser": "node Makefile.js cypress",
  72. "test:cli": "mocha",
  73. "test:emfile": "node tools/check-emfile-handling.js",
  74. "test:fuzz": "node Makefile.js fuzz",
  75. "test:performance": "node Makefile.js perf",
  76. "test:pnpm": "cd tests/pnpm && node check.js && pnpm install && pnpm exec tsc",
  77. "test:types": "tsc -p tests/lib/types/tsconfig.json"
  78. },
  79. "gitHooks": {
  80. "pre-commit": "lint-staged"
  81. },
  82. "lint-staged": {
  83. "*": "trunk check --fix",
  84. "lib/rules/*.js": [
  85. "node tools/update-eslint-all.js",
  86. "node tools/update-eslint-recommended.js",
  87. "node tools/update-rule-type-headers.js",
  88. "git add packages/js/src/configs/*.js lib/types/rules.d.ts"
  89. ],
  90. "docs/src/rules/*.md": [
  91. "node tools/check-rule-examples.js",
  92. "node tools/fetch-docs-links.js",
  93. "git add docs/src/_data/further_reading_links.json"
  94. ]
  95. },
  96. "files": [
  97. "LICENSE",
  98. "README.md",
  99. "bin",
  100. "conf",
  101. "lib",
  102. "messages"
  103. ],
  104. "repository": "eslint/eslint",
  105. "funding": "https://eslint.org/donate",
  106. "homepage": "https://eslint.org",
  107. "bugs": "https://github.com/eslint/eslint/issues/",
  108. "dependencies": {
  109. "@eslint-community/eslint-utils": "^4.8.0",
  110. "@eslint-community/regexpp": "^4.12.1",
  111. "@eslint/config-array": "^0.21.1",
  112. "@eslint/config-helpers": "^0.4.2",
  113. "@eslint/core": "^0.17.0",
  114. "@eslint/eslintrc": "^3.3.1",
  115. "@eslint/js": "9.39.2",
  116. "@eslint/plugin-kit": "^0.4.1",
  117. "@humanfs/node": "^0.16.6",
  118. "@humanwhocodes/module-importer": "^1.0.1",
  119. "@humanwhocodes/retry": "^0.4.2",
  120. "@types/estree": "^1.0.6",
  121. "ajv": "^6.12.4",
  122. "chalk": "^4.0.0",
  123. "cross-spawn": "^7.0.6",
  124. "debug": "^4.3.2",
  125. "escape-string-regexp": "^4.0.0",
  126. "eslint-scope": "^8.4.0",
  127. "eslint-visitor-keys": "^4.2.1",
  128. "espree": "^10.4.0",
  129. "esquery": "^1.5.0",
  130. "esutils": "^2.0.2",
  131. "fast-deep-equal": "^3.1.3",
  132. "file-entry-cache": "^8.0.0",
  133. "find-up": "^5.0.0",
  134. "glob-parent": "^6.0.2",
  135. "ignore": "^5.2.0",
  136. "imurmurhash": "^0.1.4",
  137. "is-glob": "^4.0.0",
  138. "json-stable-stringify-without-jsonify": "^1.0.1",
  139. "lodash.merge": "^4.6.2",
  140. "minimatch": "^3.1.2",
  141. "natural-compare": "^1.4.0",
  142. "optionator": "^0.9.3"
  143. },
  144. "devDependencies": {
  145. "@arethetypeswrong/cli": "^0.18.0",
  146. "@babel/core": "^7.4.3",
  147. "@babel/preset-env": "^7.4.3",
  148. "@cypress/webpack-preprocessor": "^6.0.2",
  149. "@eslint/json": "^0.13.2",
  150. "@trunkio/launcher": "^1.3.4",
  151. "@types/esquery": "^1.5.4",
  152. "@types/node": "^22.13.14",
  153. "@typescript-eslint/parser": "^8.4.0",
  154. "babel-loader": "^8.0.5",
  155. "c8": "^7.12.0",
  156. "chai": "^4.0.1",
  157. "cheerio": "^0.22.0",
  158. "common-tags": "^1.8.0",
  159. "core-js": "^3.1.3",
  160. "cypress": "^14.1.0",
  161. "ejs": "^3.0.2",
  162. "eslint": "file:.",
  163. "eslint-config-eslint": "file:packages/eslint-config-eslint",
  164. "eslint-plugin-eslint-plugin": "^6.0.0",
  165. "eslint-plugin-expect-type": "^0.6.0",
  166. "eslint-plugin-yml": "^1.14.0",
  167. "eslint-release": "^3.3.0",
  168. "eslint-rule-composer": "^0.3.0",
  169. "eslump": "^3.0.0",
  170. "esprima": "^4.0.1",
  171. "fast-glob": "^3.2.11",
  172. "fs-teardown": "^0.1.3",
  173. "glob": "^10.0.0",
  174. "globals": "^16.2.0",
  175. "got": "^11.8.3",
  176. "gray-matter": "^4.0.3",
  177. "jiti": "^2.6.1",
  178. "jiti-v2.0": "npm:jiti@2.0.x",
  179. "jiti-v2.1": "npm:jiti@2.1.x",
  180. "knip": "^5.60.2",
  181. "lint-staged": "^11.0.0",
  182. "markdown-it": "^12.2.0",
  183. "markdown-it-container": "^3.0.0",
  184. "marked": "^4.0.8",
  185. "metascraper": "^5.25.7",
  186. "metascraper-description": "^5.25.7",
  187. "metascraper-image": "^5.29.3",
  188. "metascraper-logo": "^5.25.7",
  189. "metascraper-logo-favicon": "^5.25.7",
  190. "metascraper-title": "^5.25.7",
  191. "mocha": "^11.7.1",
  192. "node-polyfill-webpack-plugin": "^1.0.3",
  193. "npm-license": "^0.3.3",
  194. "pirates": "^4.0.5",
  195. "progress": "^2.0.3",
  196. "proxyquire": "^2.0.1",
  197. "recast": "^0.23.0",
  198. "regenerator-runtime": "^0.14.0",
  199. "semver": "^7.5.3",
  200. "shelljs": "^0.10.0",
  201. "sinon": "^11.0.0",
  202. "typescript": "^5.3.3",
  203. "webpack": "^5.23.0",
  204. "webpack-cli": "^4.5.0",
  205. "yorkie": "^2.0.0"
  206. },
  207. "peerDependencies": {
  208. "jiti": "*"
  209. },
  210. "peerDependenciesMeta": {
  211. "jiti": {
  212. "optional": true
  213. }
  214. },
  215. "keywords": [
  216. "ast",
  217. "lint",
  218. "javascript",
  219. "ecmascript",
  220. "espree"
  221. ],
  222. "license": "MIT",
  223. "engines": {
  224. "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
  225. }
  226. }