eslint-config-isaacscript 6.0.0 → 6.0.1

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 (2) hide show
  1. package/package.json +1 -1
  2. package/src/mod.js +35 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eslint-config-isaacscript",
3
- "version": "6.0.0",
3
+ "version": "6.0.1",
4
4
  "description": "A sharable ESLint config for IsaacScript projects.",
5
5
  "keywords": [
6
6
  "eslint",
package/src/mod.js CHANGED
@@ -211,4 +211,39 @@ export const isaacScriptModConfigBase = defineConfig(
211
211
  // plugin, we include it here defensively.)
212
212
  ignores: ["*.json", "*.jsonc"],
213
213
  },
214
+
215
+ {
216
+ files: [
217
+ "eslint.config.js",
218
+ "eslint.config.cjs",
219
+ "eslint.config.mjs",
220
+ "eslint.config.ts",
221
+ "eslint.config.cts",
222
+ "eslint.config.mts",
223
+ ],
224
+ rules: {
225
+ // TypeScript projects that use "complete-lint" have a false positive when importing
226
+ // "defineConfig" from "eslint/config", because "eslint" is a transitive dependency in
227
+ // "complete-lint". Similarly, importing "completeConfigBase" from "eslint-config-complete"
228
+ // fails, because "eslint-config-complete" is a transitive dependency in "complete-lint". (We
229
+ // extend the logic from "eslint-config-complete" and add a new value for
230
+ // "eslint-config-isaacscript.")
231
+ "import-x/no-extraneous-dependencies": [
232
+ "warn",
233
+ {
234
+ devDependencies: ["**/eslint.config.{js,cjs,mjs,ts,cts,mts}"],
235
+ optionalDependencies: false,
236
+ whitelist: [
237
+ "eslint",
238
+ "eslint-config-complete",
239
+ "eslint-config-isaacscript",
240
+ ],
241
+ },
242
+ ],
243
+
244
+ // ESLint configuration files in monorepos often intentionally import from the "packages"
245
+ // subdirectory, because the config files are JavaScript so they cannot use tsconfig-paths.
246
+ "import-x/no-relative-packages": "off",
247
+ },
248
+ },
214
249
  );