|
1 | 1 | import importPlugin from "eslint-plugin-import"; |
2 | 2 | import globals from "globals"; |
| 3 | +import isTypescriptInstalled from "./utils/is-typescript-installed.js"; |
3 | 4 |
|
4 | 5 | const commonRules = { |
5 | 6 | // No need |
@@ -263,50 +264,60 @@ async function getDirtyConfig() { |
263 | 264 |
|
264 | 265 | const dirtyConfig = await getDirtyConfig(); |
265 | 266 |
|
| 267 | +const jsExtensions = isTypescriptInstalled() |
| 268 | + ? ["**/*.{js,jsx,ts,tsx}"] |
| 269 | + : ["**/*.{js,jsx}"]; |
| 270 | +const cjsExtensions = isTypescriptInstalled() |
| 271 | + ? ["**/*.{cjs,cts}"] |
| 272 | + : ["**/*.{cjs}"]; |
| 273 | +const mjsExtensions = isTypescriptInstalled() |
| 274 | + ? ["**/*.{mjs,mts}"] |
| 275 | + : ["**/*.{mjs}"]; |
| 276 | + |
266 | 277 | export default { |
267 | 278 | "node/dirty": dirtyConfig, |
268 | 279 | "node/commonjs": commonjsConfig, |
269 | 280 | "node/module": moduleConfig, |
270 | 281 | "node/recommended": moduleConfig, |
271 | 282 | "node/mixed-dirty": [ |
272 | 283 | { |
273 | | - files: ["**/*.{js,jsx,ts,tsx}"], |
| 284 | + files: jsExtensions, |
274 | 285 | ...dirtyConfig, |
275 | 286 | }, |
276 | 287 | { |
277 | | - files: ["**/*.{cjs,cts}"], |
| 288 | + files: cjsExtensions, |
278 | 289 | ...commonjsConfig, |
279 | 290 | }, |
280 | 291 | { |
281 | | - files: ["**/*.{mjs,mts}"], |
| 292 | + files: mjsExtensions, |
282 | 293 | ...moduleConfig, |
283 | 294 | }, |
284 | 295 | ], |
285 | 296 | "node/mixed-module-and-commonjs": [ |
286 | 297 | { |
287 | | - files: ["**/*.{js,jsx,ts,tsx}"], |
| 298 | + files: jsExtensions, |
288 | 299 | ...moduleConfig, |
289 | 300 | }, |
290 | 301 | { |
291 | | - files: ["**/*.{cjs,cts}"], |
| 302 | + files: cjsExtensions, |
292 | 303 | ...commonjsConfig, |
293 | 304 | }, |
294 | 305 | { |
295 | | - files: ["**/*.{mjs,mts}"], |
| 306 | + files: mjsExtensions, |
296 | 307 | ...moduleConfig, |
297 | 308 | }, |
298 | 309 | ], |
299 | 310 | "node/mixed-commonjs-and-module": [ |
300 | 311 | { |
301 | | - files: ["**/*.{js,jsx,ts,tsx}"], |
| 312 | + files: jsExtensions, |
302 | 313 | ...commonjsConfig, |
303 | 314 | }, |
304 | 315 | { |
305 | | - files: ["**/*.{cjs,cts}"], |
| 316 | + files: cjsExtensions, |
306 | 317 | ...commonjsConfig, |
307 | 318 | }, |
308 | 319 | { |
309 | | - files: ["**/*.{mjs,mts}"], |
| 320 | + files: mjsExtensions, |
310 | 321 | ...moduleConfig, |
311 | 322 | }, |
312 | 323 | ], |
|
0 commit comments