@anolilab/eslint-config 5.0.9 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (363) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/README.md +226 -73
  3. package/dist/chunk-3XUVOUJE.mjs +5 -0
  4. package/dist/chunk-3XUVOUJE.mjs.map +1 -0
  5. package/dist/chunk-6E2RGUNG.js +7 -0
  6. package/dist/chunk-6E2RGUNG.js.map +1 -0
  7. package/dist/chunk-ARKJLBXP.js +7 -0
  8. package/dist/chunk-ARKJLBXP.js.map +1 -0
  9. package/dist/chunk-B7GQAMYJ.js +9 -0
  10. package/dist/chunk-B7GQAMYJ.js.map +1 -0
  11. package/dist/chunk-DJDHW6UR.mjs +5 -0
  12. package/dist/chunk-DJDHW6UR.mjs.map +1 -0
  13. package/dist/chunk-F6JHPR4L.mjs +7 -0
  14. package/dist/chunk-F6JHPR4L.mjs.map +1 -0
  15. package/dist/chunk-G7JIJH44.mjs +5 -0
  16. package/dist/chunk-G7JIJH44.mjs.map +1 -0
  17. package/dist/chunk-NO36P4BR.js +9 -0
  18. package/dist/chunk-NO36P4BR.js.map +1 -0
  19. package/dist/chunk-PCIKFIV2.js +7 -0
  20. package/dist/chunk-PCIKFIV2.js.map +1 -0
  21. package/dist/chunk-RWRS63WY.mjs +7 -0
  22. package/dist/chunk-RWRS63WY.mjs.map +1 -0
  23. package/dist/chunk-SV64EPVP.js +7 -0
  24. package/dist/chunk-SV64EPVP.js.map +1 -0
  25. package/dist/chunk-UJAIXHCQ.js +13 -0
  26. package/dist/chunk-UJAIXHCQ.js.map +1 -0
  27. package/dist/chunk-WDMF75TJ.mjs +5 -0
  28. package/dist/chunk-WDMF75TJ.mjs.map +1 -0
  29. package/dist/chunk-WSETOOIE.mjs +5 -0
  30. package/dist/chunk-WSETOOIE.mjs.map +1 -0
  31. package/dist/chunk-XND2BWC4.mjs +7 -0
  32. package/dist/chunk-XND2BWC4.mjs.map +1 -0
  33. package/dist/chunk-YMWD4DNM.js +8 -0
  34. package/dist/chunk-YMWD4DNM.js.map +1 -0
  35. package/dist/config/best-practices.d.ts +5 -0
  36. package/dist/config/best-practices.js +9 -0
  37. package/dist/config/best-practices.js.map +1 -0
  38. package/dist/config/best-practices.mjs +3 -0
  39. package/dist/config/best-practices.mjs.map +1 -0
  40. package/dist/config/errors.d.ts +5 -0
  41. package/dist/config/errors.js +9 -0
  42. package/dist/config/errors.js.map +1 -0
  43. package/dist/config/errors.mjs +3 -0
  44. package/dist/config/errors.mjs.map +1 -0
  45. package/dist/config/es6.d.ts +5 -0
  46. package/dist/config/es6.js +9 -0
  47. package/dist/config/es6.js.map +1 -0
  48. package/dist/config/es6.mjs +3 -0
  49. package/dist/config/es6.mjs.map +1 -0
  50. package/dist/config/plugins/antfu.d.ts +5 -0
  51. package/dist/config/plugins/antfu.js +10 -0
  52. package/dist/config/plugins/antfu.js.map +1 -0
  53. package/dist/config/plugins/antfu.mjs +8 -0
  54. package/dist/config/plugins/antfu.mjs.map +1 -0
  55. package/dist/config/plugins/array-func.d.ts +5 -0
  56. package/dist/config/plugins/array-func.js +9 -0
  57. package/dist/config/plugins/array-func.js.map +1 -0
  58. package/dist/config/plugins/array-func.mjs +7 -0
  59. package/dist/config/plugins/array-func.mjs.map +1 -0
  60. package/dist/config/plugins/ava.d.ts +5 -0
  61. package/dist/config/plugins/ava.js +7 -0
  62. package/dist/config/plugins/ava.js.map +1 -0
  63. package/dist/config/plugins/ava.mjs +5 -0
  64. package/dist/config/plugins/ava.mjs.map +1 -0
  65. package/dist/config/plugins/babel.d.ts +5 -0
  66. package/dist/config/plugins/babel.js +12 -0
  67. package/dist/config/plugins/babel.js.map +1 -0
  68. package/dist/config/plugins/babel.mjs +10 -0
  69. package/dist/config/plugins/babel.mjs.map +1 -0
  70. package/dist/config/plugins/compat.d.ts +5 -0
  71. package/dist/config/plugins/compat.js +7 -0
  72. package/dist/config/plugins/compat.js.map +1 -0
  73. package/dist/config/plugins/compat.mjs +5 -0
  74. package/dist/config/plugins/compat.mjs.map +1 -0
  75. package/dist/config/plugins/cypress.d.ts +5 -0
  76. package/dist/config/plugins/cypress.js +7 -0
  77. package/dist/config/plugins/cypress.js.map +1 -0
  78. package/dist/config/plugins/cypress.mjs +5 -0
  79. package/dist/config/plugins/cypress.mjs.map +1 -0
  80. package/dist/config/plugins/es.d.ts +5 -0
  81. package/dist/config/plugins/es.js +7 -0
  82. package/dist/config/plugins/es.js.map +1 -0
  83. package/dist/config/plugins/es.mjs +5 -0
  84. package/dist/config/plugins/es.mjs.map +1 -0
  85. package/dist/config/plugins/eslint-comments.d.ts +5 -0
  86. package/dist/config/plugins/eslint-comments.js +7 -0
  87. package/dist/config/plugins/eslint-comments.js.map +1 -0
  88. package/dist/config/plugins/eslint-comments.mjs +5 -0
  89. package/dist/config/plugins/eslint-comments.mjs.map +1 -0
  90. package/dist/config/plugins/html.d.ts +5 -0
  91. package/dist/config/plugins/html.js +7 -0
  92. package/dist/config/plugins/html.js.map +1 -0
  93. package/dist/config/plugins/html.mjs +5 -0
  94. package/dist/config/plugins/html.mjs.map +1 -0
  95. package/dist/config/plugins/import.d.ts +5 -0
  96. package/dist/config/plugins/import.js +9 -0
  97. package/dist/config/plugins/import.js.map +1 -0
  98. package/dist/config/plugins/import.mjs +3 -0
  99. package/dist/config/plugins/import.mjs.map +1 -0
  100. package/dist/config/plugins/jest-async.d.ts +5 -0
  101. package/dist/config/plugins/jest-async.js +7 -0
  102. package/dist/config/plugins/jest-async.js.map +1 -0
  103. package/dist/config/plugins/jest-async.mjs +5 -0
  104. package/dist/config/plugins/jest-async.mjs.map +1 -0
  105. package/dist/config/plugins/jest-dom.d.ts +5 -0
  106. package/dist/config/plugins/jest-dom.js +7 -0
  107. package/dist/config/plugins/jest-dom.js.map +1 -0
  108. package/dist/config/plugins/jest-dom.mjs +5 -0
  109. package/dist/config/plugins/jest-dom.mjs.map +1 -0
  110. package/dist/config/plugins/jest-formatting.d.ts +5 -0
  111. package/dist/config/plugins/jest-formatting.js +7 -0
  112. package/dist/config/plugins/jest-formatting.js.map +1 -0
  113. package/dist/config/plugins/jest-formatting.mjs +5 -0
  114. package/dist/config/plugins/jest-formatting.mjs.map +1 -0
  115. package/dist/config/plugins/jest.d.ts +5 -0
  116. package/dist/config/plugins/jest.js +7 -0
  117. package/dist/config/plugins/jest.js.map +1 -0
  118. package/dist/config/plugins/jest.mjs +5 -0
  119. package/dist/config/plugins/jest.mjs.map +1 -0
  120. package/dist/config/plugins/jsdoc.d.ts +5 -0
  121. package/dist/config/plugins/jsdoc.js +11 -0
  122. package/dist/config/plugins/jsdoc.js.map +1 -0
  123. package/dist/config/plugins/jsdoc.mjs +9 -0
  124. package/dist/config/plugins/jsdoc.mjs.map +1 -0
  125. package/dist/config/plugins/jsonc.d.ts +5 -0
  126. package/dist/config/plugins/jsonc.js +11 -0
  127. package/dist/config/plugins/jsonc.js.map +1 -0
  128. package/dist/config/plugins/jsonc.mjs +9 -0
  129. package/dist/config/plugins/jsonc.mjs.map +1 -0
  130. package/dist/config/plugins/jsx-a11y.d.ts +5 -0
  131. package/dist/config/plugins/jsx-a11y.js +7 -0
  132. package/dist/config/plugins/jsx-a11y.js.map +1 -0
  133. package/dist/config/plugins/jsx-a11y.mjs +5 -0
  134. package/dist/config/plugins/jsx-a11y.mjs.map +1 -0
  135. package/dist/config/plugins/lodash-fp.d.ts +5 -0
  136. package/dist/config/plugins/lodash-fp.js +7 -0
  137. package/dist/config/plugins/lodash-fp.js.map +1 -0
  138. package/dist/config/plugins/lodash-fp.mjs +5 -0
  139. package/dist/config/plugins/lodash-fp.mjs.map +1 -0
  140. package/dist/config/plugins/lodash.d.ts +5 -0
  141. package/dist/config/plugins/lodash.js +7 -0
  142. package/dist/config/plugins/lodash.js.map +1 -0
  143. package/dist/config/plugins/lodash.mjs +5 -0
  144. package/dist/config/plugins/lodash.mjs.map +1 -0
  145. package/dist/config/plugins/markdown.d.ts +5 -0
  146. package/dist/config/plugins/markdown.js +7 -0
  147. package/dist/config/plugins/markdown.js.map +1 -0
  148. package/dist/config/plugins/markdown.mjs +5 -0
  149. package/dist/config/plugins/markdown.mjs.map +1 -0
  150. package/dist/config/plugins/mdx.d.ts +5 -0
  151. package/dist/config/plugins/mdx.js +7 -0
  152. package/dist/config/plugins/mdx.js.map +1 -0
  153. package/dist/config/plugins/mdx.mjs +5 -0
  154. package/dist/config/plugins/mdx.mjs.map +1 -0
  155. package/dist/config/plugins/no-extend-native.d.ts +5 -0
  156. package/dist/config/plugins/no-extend-native.js +7 -0
  157. package/dist/config/plugins/no-extend-native.js.map +1 -0
  158. package/dist/config/plugins/no-extend-native.mjs +5 -0
  159. package/dist/config/plugins/no-extend-native.mjs.map +1 -0
  160. package/dist/config/plugins/no-loops.d.ts +5 -0
  161. package/dist/config/plugins/no-loops.js +7 -0
  162. package/dist/config/plugins/no-loops.js.map +1 -0
  163. package/dist/config/plugins/no-loops.mjs +5 -0
  164. package/dist/config/plugins/no-loops.mjs.map +1 -0
  165. package/dist/config/plugins/no-secrets.d.ts +5 -0
  166. package/dist/config/plugins/no-secrets.js +7 -0
  167. package/dist/config/plugins/no-secrets.js.map +1 -0
  168. package/dist/config/plugins/no-secrets.mjs +5 -0
  169. package/dist/config/plugins/no-secrets.mjs.map +1 -0
  170. package/dist/config/plugins/no-unsanitized.d.ts +5 -0
  171. package/dist/config/plugins/no-unsanitized.js +7 -0
  172. package/dist/config/plugins/no-unsanitized.js.map +1 -0
  173. package/dist/config/plugins/no-unsanitized.mjs +5 -0
  174. package/dist/config/plugins/no-unsanitized.mjs.map +1 -0
  175. package/dist/config/plugins/node.d.ts +5 -0
  176. package/dist/config/plugins/node.js +9 -0
  177. package/dist/config/plugins/node.js.map +1 -0
  178. package/dist/config/plugins/node.mjs +7 -0
  179. package/dist/config/plugins/node.mjs.map +1 -0
  180. package/dist/config/plugins/optimize-regex.d.ts +5 -0
  181. package/dist/config/plugins/optimize-regex.js +7 -0
  182. package/dist/config/plugins/optimize-regex.js.map +1 -0
  183. package/dist/config/plugins/optimize-regex.mjs +5 -0
  184. package/dist/config/plugins/optimize-regex.mjs.map +1 -0
  185. package/dist/config/plugins/promise.d.ts +5 -0
  186. package/dist/config/plugins/promise.js +7 -0
  187. package/dist/config/plugins/promise.js.map +1 -0
  188. package/dist/config/plugins/promise.mjs +5 -0
  189. package/dist/config/plugins/promise.mjs.map +1 -0
  190. package/dist/config/plugins/react-hooks.d.ts +5 -0
  191. package/dist/config/plugins/react-hooks.js +7 -0
  192. package/dist/config/plugins/react-hooks.js.map +1 -0
  193. package/dist/config/plugins/react-hooks.mjs +5 -0
  194. package/dist/config/plugins/react-hooks.mjs.map +1 -0
  195. package/dist/config/plugins/react-redux.d.ts +5 -0
  196. package/dist/config/plugins/react-redux.js +7 -0
  197. package/dist/config/plugins/react-redux.js.map +1 -0
  198. package/dist/config/plugins/react-redux.mjs +5 -0
  199. package/dist/config/plugins/react-redux.mjs.map +1 -0
  200. package/dist/config/plugins/react.d.ts +5 -0
  201. package/dist/config/plugins/react.js +21 -0
  202. package/dist/config/plugins/react.js.map +1 -0
  203. package/dist/config/plugins/react.mjs +15 -0
  204. package/dist/config/plugins/react.mjs.map +1 -0
  205. package/dist/config/plugins/security.d.ts +5 -0
  206. package/dist/config/plugins/security.js +7 -0
  207. package/dist/config/plugins/security.js.map +1 -0
  208. package/dist/config/plugins/security.mjs +5 -0
  209. package/dist/config/plugins/security.mjs.map +1 -0
  210. package/dist/config/plugins/simple-import-sort.d.ts +5 -0
  211. package/dist/config/plugins/simple-import-sort.js +7 -0
  212. package/dist/config/plugins/simple-import-sort.js.map +1 -0
  213. package/dist/config/plugins/simple-import-sort.mjs +5 -0
  214. package/dist/config/plugins/simple-import-sort.mjs.map +1 -0
  215. package/dist/config/plugins/sonarjs.d.ts +5 -0
  216. package/dist/config/plugins/sonarjs.js +7 -0
  217. package/dist/config/plugins/sonarjs.js.map +1 -0
  218. package/dist/config/plugins/sonarjs.mjs +5 -0
  219. package/dist/config/plugins/sonarjs.mjs.map +1 -0
  220. package/dist/config/plugins/sort-keys-fix.d.ts +5 -0
  221. package/dist/config/plugins/sort-keys-fix.js +7 -0
  222. package/dist/config/plugins/sort-keys-fix.js.map +1 -0
  223. package/dist/config/plugins/sort-keys-fix.mjs +5 -0
  224. package/dist/config/plugins/sort-keys-fix.mjs.map +1 -0
  225. package/dist/config/plugins/tailwindcss.d.ts +5 -0
  226. package/dist/config/plugins/tailwindcss.js +7 -0
  227. package/dist/config/plugins/tailwindcss.js.map +1 -0
  228. package/dist/config/plugins/tailwindcss.mjs +5 -0
  229. package/dist/config/plugins/tailwindcss.mjs.map +1 -0
  230. package/dist/config/plugins/testing-library.d.ts +5 -0
  231. package/dist/config/plugins/testing-library.js +10 -0
  232. package/dist/config/plugins/testing-library.js.map +1 -0
  233. package/dist/config/plugins/testing-library.mjs +8 -0
  234. package/dist/config/plugins/testing-library.mjs.map +1 -0
  235. package/dist/config/plugins/toml.d.ts +5 -0
  236. package/dist/config/plugins/toml.js +7 -0
  237. package/dist/config/plugins/toml.js.map +1 -0
  238. package/dist/config/plugins/toml.mjs +5 -0
  239. package/dist/config/plugins/toml.mjs.map +1 -0
  240. package/dist/config/plugins/tsdoc.d.ts +5 -0
  241. package/dist/config/plugins/tsdoc.js +9 -0
  242. package/dist/config/plugins/tsdoc.js.map +1 -0
  243. package/dist/config/plugins/tsdoc.mjs +7 -0
  244. package/dist/config/plugins/tsdoc.mjs.map +1 -0
  245. package/dist/config/plugins/typescript-sort-keys.d.ts +5 -0
  246. package/dist/config/plugins/typescript-sort-keys.js +7 -0
  247. package/dist/config/plugins/typescript-sort-keys.js.map +1 -0
  248. package/dist/config/plugins/typescript-sort-keys.mjs +5 -0
  249. package/dist/config/plugins/typescript-sort-keys.mjs.map +1 -0
  250. package/dist/config/plugins/typescript.d.ts +5 -0
  251. package/dist/config/plugins/typescript.js +18 -0
  252. package/dist/config/plugins/typescript.js.map +1 -0
  253. package/dist/config/plugins/typescript.mjs +16 -0
  254. package/dist/config/plugins/typescript.mjs.map +1 -0
  255. package/dist/config/plugins/unicorn.d.ts +5 -0
  256. package/dist/config/plugins/unicorn.js +15 -0
  257. package/dist/config/plugins/unicorn.js.map +1 -0
  258. package/dist/config/plugins/unicorn.mjs +9 -0
  259. package/dist/config/plugins/unicorn.mjs.map +1 -0
  260. package/dist/config/plugins/vitest.d.ts +5 -0
  261. package/dist/config/plugins/vitest.js +7 -0
  262. package/dist/config/plugins/vitest.js.map +1 -0
  263. package/dist/config/plugins/vitest.mjs +5 -0
  264. package/dist/config/plugins/vitest.mjs.map +1 -0
  265. package/dist/config/plugins/yml.d.ts +5 -0
  266. package/dist/config/plugins/yml.js +7 -0
  267. package/dist/config/plugins/yml.js.map +1 -0
  268. package/dist/config/plugins/yml.mjs +5 -0
  269. package/dist/config/plugins/yml.mjs.map +1 -0
  270. package/dist/config/plugins/you-dont-need-lodash-underscore.d.ts +5 -0
  271. package/dist/config/plugins/you-dont-need-lodash-underscore.js +7 -0
  272. package/dist/config/plugins/you-dont-need-lodash-underscore.js.map +1 -0
  273. package/dist/config/plugins/you-dont-need-lodash-underscore.mjs +5 -0
  274. package/dist/config/plugins/you-dont-need-lodash-underscore.mjs.map +1 -0
  275. package/dist/config/plugins/you-dont-need-momentjs.d.ts +5 -0
  276. package/dist/config/plugins/you-dont-need-momentjs.js +7 -0
  277. package/dist/config/plugins/you-dont-need-momentjs.js.map +1 -0
  278. package/dist/config/plugins/you-dont-need-momentjs.mjs +5 -0
  279. package/dist/config/plugins/you-dont-need-momentjs.mjs.map +1 -0
  280. package/dist/config/plugins/zod.d.ts +5 -0
  281. package/dist/config/plugins/zod.js +7 -0
  282. package/dist/config/plugins/zod.js.map +1 -0
  283. package/dist/config/plugins/zod.mjs +5 -0
  284. package/dist/config/plugins/zod.mjs.map +1 -0
  285. package/dist/config/style.d.ts +5 -0
  286. package/dist/config/style.js +9 -0
  287. package/dist/config/style.js.map +1 -0
  288. package/dist/config/style.mjs +3 -0
  289. package/dist/config/style.mjs.map +1 -0
  290. package/dist/config/variables.d.ts +5 -0
  291. package/dist/config/variables.js +9 -0
  292. package/dist/config/variables.js.map +1 -0
  293. package/dist/config/variables.mjs +3 -0
  294. package/dist/config/variables.mjs.map +1 -0
  295. package/dist/index.d.ts +5 -0
  296. package/dist/index.js +22 -0
  297. package/dist/index.js.map +1 -0
  298. package/dist/index.mjs +16 -0
  299. package/dist/index.mjs.map +1 -0
  300. package/dist/postinstall.d.ts +2 -0
  301. package/dist/postinstall.js +65 -0
  302. package/dist/postinstall.js.map +1 -0
  303. package/dist/postinstall.mjs +63 -0
  304. package/dist/postinstall.mjs.map +1 -0
  305. package/dist/typescript-type-checking.d.ts +5 -0
  306. package/dist/typescript-type-checking.js +10 -0
  307. package/dist/typescript-type-checking.js.map +1 -0
  308. package/dist/typescript-type-checking.mjs +8 -0
  309. package/dist/typescript-type-checking.mjs.map +1 -0
  310. package/package.json +106 -50
  311. package/config.cjs +0 -88
  312. package/index.cjs +0 -58
  313. package/lib/check-missing.cjs +0 -57
  314. package/lib/is-module-available.cjs +0 -8
  315. package/lib/loggers.cjs +0 -12
  316. package/lib/postinstall.cjs +0 -115
  317. package/lib/show-loaded.cjs +0 -21
  318. package/lib/utils.cjs +0 -90
  319. package/rules/best-practices.cjs +0 -395
  320. package/rules/errors.cjs +0 -177
  321. package/rules/es6.cjs +0 -217
  322. package/rules/plugins/array-func.cjs +0 -13
  323. package/rules/plugins/babel.cjs +0 -36
  324. package/rules/plugins/compat.cjs +0 -3
  325. package/rules/plugins/cypress.cjs +0 -13
  326. package/rules/plugins/eslint-comments.cjs +0 -11
  327. package/rules/plugins/html.cjs +0 -3
  328. package/rules/plugins/import.cjs +0 -265
  329. package/rules/plugins/jest-async.cjs +0 -6
  330. package/rules/plugins/jest-dom.cjs +0 -3
  331. package/rules/plugins/jest-formatting.cjs +0 -3
  332. package/rules/plugins/jest.cjs +0 -43
  333. package/rules/plugins/jsdoc.cjs +0 -4
  334. package/rules/plugins/json.cjs +0 -40
  335. package/rules/plugins/jsonc.cjs +0 -70
  336. package/rules/plugins/jsx-a11y.cjs +0 -261
  337. package/rules/plugins/lodash-fp.cjs +0 -7
  338. package/rules/plugins/lodash.cjs +0 -52
  339. package/rules/plugins/markdown.cjs +0 -32
  340. package/rules/plugins/mdx.cjs +0 -4
  341. package/rules/plugins/no-loops.cjs +0 -7
  342. package/rules/plugins/no-secrets.cjs +0 -20
  343. package/rules/plugins/no-unsanitized.cjs +0 -8
  344. package/rules/plugins/node.cjs +0 -44
  345. package/rules/plugins/optimize-regex.cjs +0 -6
  346. package/rules/plugins/promise.cjs +0 -9
  347. package/rules/plugins/react-hooks.cjs +0 -20
  348. package/rules/plugins/react-redux.cjs +0 -9
  349. package/rules/plugins/react.cjs +0 -659
  350. package/rules/plugins/simple-import-sort.cjs +0 -10
  351. package/rules/plugins/sonarjs.cjs +0 -5
  352. package/rules/plugins/sort-keys-fix.cjs +0 -6
  353. package/rules/plugins/tailwindcss.cjs +0 -4
  354. package/rules/plugins/testing-library.cjs +0 -34
  355. package/rules/plugins/toml.cjs +0 -9
  356. package/rules/plugins/typescript-sort-keys.cjs +0 -19
  357. package/rules/plugins/typescript.cjs +0 -427
  358. package/rules/plugins/unicorn.cjs +0 -20
  359. package/rules/plugins/yml.cjs +0 -12
  360. package/rules/plugins/you-dont-need-lodash-underscore.cjs +0 -3
  361. package/rules/plugins/you-dont-need-momentjs.cjs +0 -3
  362. package/rules/style.cjs +0 -629
  363. package/rules/variables.cjs +0 -54
@@ -1,5 +0,0 @@
1
- // @see https://github.com/SonarSource/eslint-plugin-sonarjs
2
- module.exports = {
3
- extends: ["plugin:sonarjs/recommended"],
4
- plugins: ["sonarjs"],
5
- };
@@ -1,6 +0,0 @@
1
- module.exports = {
2
- plugins: ["sort-keys-fix"],
3
- rules: {
4
- "sort-keys-fix/sort-keys-fix": "error",
5
- },
6
- };
@@ -1,4 +0,0 @@
1
- module.exports = {
2
- plugins: ["tailwindcss"],
3
- extends: ["plugin:tailwindcss/recommended"],
4
- };
@@ -1,34 +0,0 @@
1
- const isModuleAvailable = require("../../lib/is-module-available.cjs");
2
- const { consoleLog } = require("../../lib/loggers.cjs");
3
-
4
- let ruleset = "dom";
5
-
6
- if (isModuleAvailable("react")) {
7
- ruleset = "react";
8
- }
9
-
10
- if (!global.hasAnolilabEsLintTestConfigLoaded) {
11
- consoleLog(` eslint-plugin-testing-library/${ruleset}`);
12
-
13
- global.hasAnolilabEsLintTestConfigLoaded = true;
14
- }
15
-
16
- module.exports = {
17
- extends: [`plugin:testing-library/${ruleset}`],
18
- rules: {
19
- // Not included in jest/recommended
20
- "testing-library/await-fire-event": 0,
21
- "testing-library/consistent-data-testid": 0,
22
- "testing-library/no-debug": 0,
23
- "testing-library/no-dom-import": 0,
24
- "testing-library/no-manual-cleanup": 0,
25
- "testing-library/no-render-in-setup": 0,
26
- "testing-library/no-await-sync-events": 0,
27
- "testing-library/no-wait-for-empty-callback": 0,
28
- "testing-library/no-wait-for-snapshot": 0,
29
- "testing-library/prefer-explicit-assert": 0,
30
- "testing-library/prefer-presence-queries": 0,
31
- "testing-library/prefer-screen-queries": 0,
32
- "testing-library/prefer-wait-for": 0,
33
- },
34
- };
@@ -1,9 +0,0 @@
1
- module.exports = {
2
- extends: ["plugin:toml/standard"],
3
- overrides: [
4
- {
5
- files: ["*.toml"],
6
- parser: "toml-eslint-parser",
7
- },
8
- ],
9
- };
@@ -1,19 +0,0 @@
1
- module.exports = {
2
- overrides: [
3
- {
4
- files: ["*.ts", "*.tsx"],
5
- plugins: ["typescript-sort-keys"],
6
- rules: {
7
- "typescript-sort-keys/interface": "error",
8
- "typescript-sort-keys/string-enum": "error",
9
- },
10
- },
11
- {
12
- files: ["*.js", "*.cjs", "*.mjs"],
13
- rules: {
14
- "typescript-sort-keys/interface": "off",
15
- "typescript-sort-keys/string-enum": "off",
16
- },
17
- },
18
- ],
19
- };
@@ -1,427 +0,0 @@
1
- const { rules: baseBestPracticesRules } = require("../best-practices.cjs");
2
- const { rules: baseErrorsRules } = require("../errors.cjs");
3
- const { rules: baseES6Rules } = require("../es6.cjs");
4
- const { rules: baseImportsRules } = require("./import.cjs");
5
- const { rules: baseStyleRules } = require("../style.cjs");
6
- const { rules: baseVariablesRules } = require("../variables.cjs");
7
- const { hasDep } = require("../../lib/utils.cjs");
8
- const { consoleLog } = require("../../lib/loggers.cjs");
9
-
10
- const { quotes, semi } = baseStyleRules;
11
- let { indent } = baseStyleRules;
12
-
13
- if (hasDep("prettier")) {
14
- // Workaround VS Code trying to run this file twice!
15
- if (!global?.hasAnolilabEsLintConfigPrettier) {
16
- global.hasAnolilabEsLintConfigPrettier = true;
17
-
18
- consoleLog(
19
- "Found prettier as dependency, disabling the '@typescript-eslint/indent' rule to fix wrong behavior of the rule; @see https://github.com/typescript-eslint/typescript-eslint/issues/1824",
20
- );
21
- }
22
-
23
- indent = "off";
24
- }
25
-
26
- module.exports = {
27
- overrides: [
28
- {
29
- files: ["*.ts", "*.mts", "*.cts", "*.tsx"],
30
- extends: ["plugin:import/typescript"],
31
- plugins: ["@typescript-eslint"],
32
- parser: "@typescript-eslint/parser",
33
- parserOptions: {
34
- sourceType: "module",
35
- ecmaFeatures: {
36
- jsx: true,
37
- },
38
- warnOnUnsupportedTypeScriptVersion: true,
39
- },
40
- settings: {
41
- // Apply special parsing for TypeScript files
42
- "import/parsers": {
43
- "@typescript-eslint/parser": [".ts", ".tsx", "*.mts", "*.cts", ".d.ts"],
44
- },
45
- // Append 'ts' extensions to 'import/resolver' setting
46
- "import/resolver": {
47
- node: {
48
- extensions: [".mjs", ".js", ".json", ".ts", ".d.ts"],
49
- },
50
- },
51
- // Append 'ts' extensions to 'import/extensions' setting
52
- "import/extensions": [".js", ".mjs", ".jsx", ".ts", ".tsx", "*.mts", "*.cts", ".d.ts"],
53
- // Resolve type definition packages
54
- "import/external-module-folders": ["node_modules", "node_modules/@types"],
55
- },
56
- rules: {
57
- // Replace 'brace-style' rule with '@typescript-eslint' version
58
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/brace-style.md
59
- "brace-style": "off",
60
- "@typescript-eslint/brace-style": baseStyleRules["brace-style"],
61
-
62
- // Replace 'camelcase' rule with '@typescript-eslint/naming-convention'
63
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/naming-convention.md
64
- camelcase: "off",
65
- // eslint-disable-next-line max-len
66
- // The `@typescript-eslint/naming-convention` rule allows `leadingUnderscore` and `trailingUnderscore` settings. However, the existing `no-underscore-dangle` rule already takes care of this.
67
- "@typescript-eslint/naming-convention": [
68
- "error",
69
- // Allow camelCase variables (23.2), PascalCase variables (23.8), and UPPER_CASE variables (23.10)
70
- {
71
- selector: "variable",
72
- format: ["camelCase", "PascalCase", "UPPER_CASE"],
73
- },
74
- // Allow camelCase functions (23.2), and PascalCase functions (23.8)
75
- {
76
- selector: "function",
77
- format: ["camelCase", "PascalCase"],
78
- },
79
- // eslint-disable-next-line max-len
80
- // recommends PascalCase for classes (23.3), and although it does not make TypeScript recommendations, we are assuming this rule would similarly apply to anything "type like", including interfaces, type aliases, and enums
81
- {
82
- selector: "typeLike",
83
- format: ["PascalCase"],
84
- },
85
- ],
86
-
87
- // Replace 'comma-dangle' rule with '@typescript-eslint' version
88
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/comma-dangle.md
89
- // The TypeScript version also adds 3 new options, all of which should be set to the same value as the base config
90
- "comma-dangle": "off",
91
- "@typescript-eslint/comma-dangle": [
92
- // eslint-disable-next-line sonarjs/no-duplicate-string
93
- baseStyleRules["comma-dangle"][0],
94
- {
95
- ...baseStyleRules["comma-dangle"][1],
96
- enums: baseStyleRules["comma-dangle"][1].arrays,
97
- generics: baseStyleRules["comma-dangle"][1].arrays,
98
- tuples: baseStyleRules["comma-dangle"][1].arrays,
99
- },
100
- ],
101
-
102
- // Replace 'comma-spacing' rule with '@typescript-eslint' version
103
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/comma-spacing.md
104
- "comma-spacing": "off",
105
- "@typescript-eslint/comma-spacing": baseStyleRules["comma-spacing"],
106
-
107
- // Replace 'dot-notation' rule with '@typescript-eslint' version
108
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/dot-notation.md
109
- "dot-notation": "off",
110
- "@typescript-eslint/dot-notation": baseBestPracticesRules["dot-notation"],
111
-
112
- // Replace 'func-call-spacing' rule with '@typescript-eslint' version
113
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/func-call-spacing.md
114
- "func-call-spacing": "off",
115
- "@typescript-eslint/func-call-spacing": baseStyleRules["func-call-spacing"],
116
-
117
- // Replace 'indent' rule with '@typescript-eslint' version
118
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/indent.md
119
- indent: "off",
120
- "@typescript-eslint/indent": indent,
121
-
122
- // Replace 'keyword-spacing' rule with '@typescript-eslint' version
123
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/keyword-spacing.md
124
- "keyword-spacing": "off",
125
- "@typescript-eslint/keyword-spacing": baseStyleRules["keyword-spacing"],
126
-
127
- // Replace 'lines-between-class-members' rule with '@typescript-eslint' version
128
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/lines-between-class-members.md
129
- "lines-between-class-members": "off",
130
- "@typescript-eslint/lines-between-class-members": baseStyleRules["lines-between-class-members"],
131
-
132
- // Replace 'no-array-constructor' rule with '@typescript-eslint' version
133
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-array-constructor.md
134
- "no-array-constructor": "off",
135
- "@typescript-eslint/no-array-constructor": baseStyleRules["no-array-constructor"],
136
-
137
- // Replace 'no-dupe-class-members' rule with '@typescript-eslint' version
138
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-dupe-class-members.md
139
- "no-dupe-class-members": "off",
140
- "@typescript-eslint/no-dupe-class-members": baseES6Rules["no-dupe-class-members"],
141
-
142
- // Replace 'no-empty-function' rule with '@typescript-eslint' version
143
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-empty-function.md
144
- "no-empty-function": "off",
145
- "@typescript-eslint/no-empty-function": baseBestPracticesRules["no-empty-function"],
146
-
147
- // Replace 'no-extra-parens' rule with '@typescript-eslint' version
148
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-extra-parens.md
149
- "no-extra-parens": "off",
150
- "@typescript-eslint/no-extra-parens": baseErrorsRules["no-extra-parens"],
151
-
152
- // Replace 'no-extra-semi' rule with '@typescript-eslint' version
153
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-extra-semi.md
154
- "no-extra-semi": "off",
155
- "@typescript-eslint/no-extra-semi": baseErrorsRules["no-extra-semi"],
156
-
157
- // Replace 'no-implied-eval' and 'no-new-func' rules with '@typescript-eslint' version
158
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-implied-eval.md
159
- "no-implied-eval": "off",
160
- "no-new-func": "off",
161
- "@typescript-eslint/no-implied-eval": baseBestPracticesRules["no-implied-eval"],
162
-
163
- // Replace 'no-loop-func' rule with '@typescript-eslint' version
164
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-loop-func.md
165
- "no-loop-func": "off",
166
- "@typescript-eslint/no-loop-func": baseBestPracticesRules["no-loop-func"],
167
-
168
- // Replace 'no-magic-numbers' rule with '@typescript-eslint' version
169
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-magic-numbers.md
170
- "no-magic-numbers": "off",
171
- "@typescript-eslint/no-magic-numbers": baseBestPracticesRules["no-magic-numbers"],
172
-
173
- // Replace 'no-redeclare' rule with '@typescript-eslint' version
174
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-redeclare.md
175
- "no-redeclare": "off",
176
- "@typescript-eslint/no-redeclare": baseBestPracticesRules["no-redeclare"],
177
-
178
- // Replace 'no-shadow' rule with '@typescript-eslint' version
179
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-shadow.md
180
- "no-shadow": "off",
181
- "@typescript-eslint/no-shadow": baseVariablesRules["no-shadow"],
182
-
183
- // Replace 'no-throw-literal' rule with '@typescript-eslint' version
184
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-throw-literal.md
185
- "no-throw-literal": "off",
186
- "@typescript-eslint/no-throw-literal": baseBestPracticesRules["no-throw-literal"],
187
-
188
- // Replace 'no-unused-expressions' rule with '@typescript-eslint' version
189
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-unused-expressions.md
190
- "no-unused-expressions": "off",
191
- "@typescript-eslint/no-unused-expressions": baseBestPracticesRules["no-unused-expressions"],
192
-
193
- // Replace 'no-unused-vars' rule with '@typescript-eslint' version
194
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-unused-vars.md
195
- "no-unused-vars": "off",
196
- "@typescript-eslint/no-unused-vars": baseVariablesRules["no-unused-vars"],
197
-
198
- // Replace 'no-use-before-define' rule with '@typescript-eslint' version
199
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-use-before-define.md
200
- "no-use-before-define": "off",
201
- "@typescript-eslint/no-use-before-define": baseVariablesRules["no-use-before-define"],
202
-
203
- // Replace 'no-useless-constructor' rule with '@typescript-eslint' version
204
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-useless-constructor.md
205
- "no-useless-constructor": "off",
206
- "@typescript-eslint/no-useless-constructor": baseES6Rules["no-useless-constructor"],
207
-
208
- // Replace 'quotes' rule with '@typescript-eslint' version
209
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/quotes.md
210
- quotes: "off",
211
- "@typescript-eslint/quotes": quotes,
212
-
213
- // Replace 'semi' rule with '@typescript-eslint' version
214
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/semi.md
215
- semi: "off",
216
- "@typescript-eslint/semi": semi,
217
-
218
- // Replace 'space-before-function-paren' rule with '@typescript-eslint' version
219
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/space-before-function-paren.md
220
- "space-before-function-paren": "off",
221
- "@typescript-eslint/space-before-function-paren": baseStyleRules["space-before-function-paren"],
222
-
223
- // Replace 'require-await' rule with '@typescript-eslint' version
224
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/require-await.md
225
- "require-await": "off",
226
- "@typescript-eslint/require-await": baseBestPracticesRules["require-await"],
227
-
228
- // Replace 'no-return-await' rule with '@typescript-eslint' version
229
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/return-await.md
230
- "no-return-await": "off",
231
- "@typescript-eslint/return-await": baseBestPracticesRules["no-return-await"],
232
-
233
- // Replace 'space-infix-ops' rule with '@typescript-eslint' version
234
- // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/space-infix-ops.md
235
- "space-infix-ops": "off",
236
- "@typescript-eslint/space-infix-ops": baseStyleRules["space-infix-ops"],
237
-
238
- // Append 'ts' and 'tsx' to 'import/extensions' rule
239
- // https://github.com/benmosher/eslint-plugin-import/blob/master/docs/rules/extensions.md
240
- "import/extensions": [
241
- // eslint-disable-next-line sonarjs/no-duplicate-string
242
- baseImportsRules["import/extensions"][0],
243
- baseImportsRules["import/extensions"][1],
244
- {
245
- ...baseImportsRules["import/extensions"][2],
246
- ts: "never",
247
- tsx: "never",
248
- },
249
- ],
250
-
251
- // Append 'ts' and 'tsx' extensions to 'import/no-extraneous-dependencies' rule
252
- // https://github.com/benmosher/eslint-plugin-import/blob/master/docs/rules/no-extraneous-dependencies.md
253
- "import/no-extraneous-dependencies": [
254
- // eslint-disable-next-line sonarjs/no-duplicate-string
255
- baseImportsRules["import/no-extraneous-dependencies"][0],
256
- {
257
- ...baseImportsRules["import/no-extraneous-dependencies"][1],
258
- devDependencies: baseImportsRules["import/no-extraneous-dependencies"][1].devDependencies.map(
259
- (glob) => glob.replaceAll(/\bjs(x?)\b/g, "ts$1"),
260
- ),
261
- },
262
- ],
263
-
264
- // The following rules are enabled in config, but are already checked (more thoroughly) by the TypeScript compiler
265
- // Some rules also fail in TypeScript files, for example: https://github.com/typescript-eslint/typescript-eslint/issues/662#issuecomment-507081586
266
- "constructor-super": "off",
267
- "getter-return": "off",
268
- "no-const-assign": "off",
269
- "no-dupe-args": "off",
270
- "no-dupe-keys": "off",
271
- "no-func-assign": "off",
272
- "no-new-symbol": "off",
273
- "no-obj-calls": "off",
274
- "no-this-before-super": "off",
275
- "no-undef": "off",
276
- "no-unreachable": "off",
277
- "no-unsafe-negation": "off",
278
- "valid-typeof": "off",
279
- "import/named": "off",
280
- "import/no-unresolved": "off",
281
- "react/require-default-props": "off",
282
-
283
- // Enforce consistent usage of type imports.
284
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/consistent-type-imports.md
285
- "@typescript-eslint/consistent-type-imports": "error",
286
- // Require that function overload signatures be consecutive.
287
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/adjacent-overload-signatures.md
288
- "@typescript-eslint/adjacent-overload-signatures": "error",
289
- // Some built-in types have aliases, while some types are considered dangerous or harmful.
290
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/ban-types.md
291
- "@typescript-eslint/ban-types": "error",
292
- // Enforce constituents of a type union/intersection to be sorted alphabetically.
293
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/sort-type-constituents.md
294
- "@typescript-eslint/sort-type-constituents": "error",
295
- // Enforce using @ts-expect-error over @ts-ignore.
296
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/prefer-ts-expect-error.md
297
- "@typescript-eslint/prefer-ts-expect-error": "error",
298
- // Enforce specifying generic type arguments on constructor name of a constructor call.
299
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/consistent-generic-constructors.md
300
- "@typescript-eslint/consistent-generic-constructors": "error",
301
- // Require explicit accessibility modifiers on class properties and methods.
302
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/explicit-member-accessibility.md
303
- "@typescript-eslint/explicit-member-accessibility": "error",
304
- // Require explicit return and argument types on exported functions' and classes' public class methods.
305
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/explicit-module-boundary-types.md
306
- "@typescript-eslint/explicit-module-boundary-types": "error",
307
- // Enforce using a particular method signature syntax.
308
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/method-signature-style.md
309
- "@typescript-eslint/method-signature-style": "error",
310
- // Disallow non-null assertion in locations that may be confusing.
311
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/no-confusing-non-null-assertion.md
312
- "@typescript-eslint/no-confusing-non-null-assertion": "error",
313
- // Disallow duplicate enum member values.
314
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/no-duplicate-enum-values.md
315
- "@typescript-eslint/no-duplicate-enum-values": "error",
316
- // Disallow using to delete operator on computed key expressions.
317
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/no-dynamic-delete.md
318
- "@typescript-eslint/no-dynamic-delete": "warn",
319
- // Disallow extra non-null assertions.
320
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/no-extra-non-null-assertion.md
321
- "@typescript-eslint/no-extra-non-null-assertion": "error",
322
- // Disallow void type outside of generic or return types.
323
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/no-invalid-void-type.md
324
- "@typescript-eslint/no-invalid-void-type": "warn",
325
- // Disallow the void operator except when used to discard a value.
326
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/no-meaningless-void-operator.md
327
- "@typescript-eslint/no-meaningless-void-operator": ["error", { checkNever: true }],
328
- // Enforce valid definition of new and constructor.
329
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/no-misused-new.md
330
- "@typescript-eslint/no-misused-new": "error",
331
- // Disallow Promises in places not designed to handle them.
332
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/no-misused-promises.md
333
- "@typescript-eslint/no-misused-promises": "error",
334
- // Disallow TypeScript namespaces.
335
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/no-namespace.md
336
- "@typescript-eslint/no-namespace": "error",
337
- // Disallow non-null assertions in the left operand of a nullish coalescing operator.
338
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/no-non-null-asserted-nullish-coalescing.md
339
- "@typescript-eslint/no-non-null-asserted-nullish-coalescing": "warn",
340
- // Disallow non-null assertions after an optional chain expression.
341
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/no-non-null-asserted-optional-chain.md
342
- "@typescript-eslint/no-non-null-asserted-optional-chain": "error",
343
- // Disallow non-null assertions using the ! postfix operator.
344
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/no-non-null-assertion.md
345
- "@typescript-eslint/no-non-null-assertion": "error",
346
- // Disallow invocation of require().
347
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/no-require-imports.md
348
- "@typescript-eslint/no-require-imports": "error",
349
- // Disallow aliasing this.
350
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/no-this-alias.md
351
- "@typescript-eslint/no-this-alias": "error",
352
- // Disallow conditionals where the type is always truthy or always falsy.
353
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/no-unnecessary-condition.md
354
- "@typescript-eslint/no-unnecessary-condition": "error",
355
- // Disallow unnecessary namespace qualifiers.
356
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/no-unnecessary-qualifier.md
357
- "@typescript-eslint/no-unnecessary-qualifier": "error",
358
- // Disallow type arguments that are equal to the default.
359
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/no-unnecessary-type-arguments.md
360
- "@typescript-eslint/no-unnecessary-type-arguments": "error",
361
- // Disallow type assertions that do not change the type of expression.
362
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/no-unnecessary-type-assertion.md
363
- "@typescript-eslint/no-unnecessary-type-assertion": "error",
364
- // Disallow unnecessary constraints on generic types.
365
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/no-unnecessary-type-constraint.md
366
- "@typescript-eslint/no-unnecessary-type-constraint": "error",
367
- // Disallow calling a function with a value with type any.
368
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/no-unsafe-argument.md
369
- "@typescript-eslint/no-unsafe-argument": "error",
370
- // Disallow assigning a value with type any to variables and properties.
371
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/no-unsafe-assignment.md
372
- "@typescript-eslint/no-unsafe-assignment": "error",
373
- // Disallow calling a value with type any.
374
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/no-unsafe-call.md
375
- "@typescript-eslint/no-unsafe-call": "error",
376
- // Disallow unsafe declaration merging.
377
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/no-unsafe-declaration-merging.md
378
- "@typescript-eslint/no-unsafe-declaration-merging": "error",
379
- // Disallow member access on a value with type any.
380
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/no-unsafe-member-access.md
381
- "@typescript-eslint/no-unsafe-member-access": "error",
382
- // Disallow returning a value with type any from a function.
383
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/no-unsafe-return.md
384
- "@typescript-eslint/no-unsafe-return": "error",
385
- // Disallow empty exports that don't change anything in a module file.
386
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/no-useless-empty-export.md
387
- "@typescript-eslint/no-useless-empty-export": "error",
388
- // Enforce non-null assertions over explicit type casts. This rule is disabled by @typescript-eslint/no-non-null-assertion.
389
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/non-nullable-type-assertion-style.md
390
- "@typescript-eslint/non-nullable-type-assertion-style": "off",
391
- // Require each enum member value to be explicitly initialized.
392
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/prefer-enum-initializers.md
393
- "@typescript-eslint/prefer-enum-initializers": "error",
394
- // Enforce includes method over indexOf method.
395
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/prefer-includes.md
396
- "@typescript-eslint/prefer-includes": "error",
397
- // Enforce using function types instead of interfaces with call signatures.
398
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/prefer-function-type.md
399
- "@typescript-eslint/prefer-function-type": "error",
400
- // Enforce using the nullish coalescing operator instead of logical chaining.
401
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/prefer-nullish-coalescing.md
402
- "@typescript-eslint/prefer-nullish-coalescing": "error",
403
- // Enforce using concise optional chain expressions instead of chained logical ands, negated logical ors, or empty objects.
404
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/prefer-optional-chain.md
405
- "@typescript-eslint/prefer-optional-chain": "error",
406
- // Enforce using type parameter when calling Array#reduce instead of casting.
407
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/prefer-reduce-type-parameter.md
408
- "@typescript-eslint/prefer-reduce-type-parameter": "error",
409
- // Enforce RegExp#exec over String#match if no global flag is provided.
410
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/prefer-regexp-exec.md
411
- "@typescript-eslint/prefer-regexp-exec": "error",
412
- // Enforce that this is used when only this type is returned.
413
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/prefer-return-this-type.md
414
- "@typescript-eslint/prefer-return-this-type": "error",
415
- // Enforce using String#startsWith and String#endsWith over other equivalent methods of checking substrings.
416
- // https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin/docs/rules/prefer-string-starts-ends-with.md
417
- "@typescript-eslint/prefer-string-starts-ends-with": "error",
418
- },
419
- },
420
- {
421
- files: ["*.d.ts"],
422
- rules: {
423
- "import/no-duplicates": "off",
424
- },
425
- },
426
- ],
427
- };
@@ -1,20 +0,0 @@
1
- const semver = require("semver");
2
-
3
- module.exports = {
4
- plugins: ["unicorn"],
5
- extends: ["plugin:unicorn/recommended"],
6
- rules: {
7
- // eslint-disable-next-line no-undef
8
- "unicorn/prefer-node-protocol": semver.gte(process.version, "v16.0.0") ? "error" : "off",
9
- "unicorn/template-indent": [
10
- "warn",
11
- {
12
- tags: ["outdent", "dedent", "gql", "sql", "html", "styled"],
13
- functions: ["dedent", "stripIndent"],
14
- selectors: [],
15
- comments: ["HTML", "indent"],
16
- },
17
- ],
18
- "unicorn/no-array-for-each": "off",
19
- },
20
- };
@@ -1,12 +0,0 @@
1
- module.exports = {
2
- extends: ["plugin:yml/standard"],
3
- overrides: [
4
- {
5
- files: ["*.yaml", "*.yml"],
6
- parser: "yaml-eslint-parser",
7
- rules: {
8
- "spaced-comment": "off",
9
- },
10
- },
11
- ],
12
- };
@@ -1,3 +0,0 @@
1
- module.exports = {
2
- extends: ["plugin:you-dont-need-lodash-underscore/compatible"],
3
- };
@@ -1,3 +0,0 @@
1
- module.exports = {
2
- extends: ["plugin:you-dont-need-momentjs/recommended"],
3
- };