exadev-eslint-config 1.2.1 → 1.2.2

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.
package/README.md CHANGED
@@ -52,6 +52,25 @@ export default defineConfig([
52
52
  ]);
53
53
  ```
54
54
 
55
+ `typescript-eslint`'s own `tseslint.config()` helper (rather than ESLint's `defineConfig()`) does **not** accept the string form of `extends` at all -- it throws `has an 'extends' array that contains a string ... This is a feature of eslint's defineConfig() helper and is not supported by typescript-eslint`. A `tseslint.config()`-based project passes the config value directly instead:
56
+
57
+ ```ts
58
+ import exadev from '@exadev/eslint-config';
59
+ import tseslint from 'typescript-eslint';
60
+
61
+ export default tseslint.config(
62
+ // ...your own config...
63
+ {
64
+ files: ['**/*.ts'],
65
+ plugins: { exadev },
66
+ extends: [exadev.configs.recommended], // or exadev.configs.barrel
67
+ },
68
+ );
69
+ ```
70
+
71
+ **`recommended`/`barrel` carry no `files`/`ignores` of their own, and applying either unscoped will misfire.** `no-side-effects-in-index` flags any top-level statement that isn't a bare re-export -- applied to an ordinary file with real `export function`/`export const`/`export interface` declarations, every one of them trips it (confirmed directly: 88 false-positive errors on a single real source file in a repo that tried this). Scope the `extends` block itself to just `src/index.ts` if you want `no-side-effects-in-index`'s coverage from `recommended`/`barrel`, or -- what every current consumer of this plugin actually does -- skip `recommended`/`barrel` and wire the four `exadev/*` rules individually, each with your own project's real `files`/`ignores`, exactly as shown in the first example above. That's not a workaround; it's the intended shape once a project's re-export-ban exceptions and barrel location are genuinely project-specific.
72
+ ```
73
+
55
74
  Both `recommended` and `barrel` are usable in a plain JavaScript project with no TypeScript and no `typescript-eslint` installed: this plugin's own four rules operate on plain ESTree import/export/declaration nodes, nothing TypeScript-specific, and neither config references `typescript-eslint` at all.
56
75
 
57
76
  ### The typed-linting bundle: `@exadev/eslint-config/recommended-type-checked`
package/dist/index.cjs CHANGED
@@ -1,2 +1,2 @@
1
- const require_plugin = require("./plugin-B_lOdZQD.cjs");
1
+ const require_plugin = require("./plugin-DZKXx2me.cjs");
2
2
  module.exports = require_plugin.plugin;
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- import { t as plugin } from "./plugin-CpzdmIrK.js";
1
+ import { t as plugin } from "./plugin-PQMeiTvg.js";
2
2
  export { plugin as default };
@@ -3,7 +3,7 @@
3
3
  const plugin = {
4
4
  meta: {
5
5
  name: "@exadev/eslint-config",
6
- version: "1.2.1",
6
+ version: "1.2.2",
7
7
  namespace: "exadev"
8
8
  },
9
9
  rules: {
@@ -7,7 +7,7 @@ import noSideEffectsInIndex from "./rules/no-side-effects-in-index.js";
7
7
  const plugin = {
8
8
  meta: {
9
9
  name: "@exadev/eslint-config",
10
- version: "1.2.1",
10
+ version: "1.2.2",
11
11
  namespace: "exadev"
12
12
  },
13
13
  rules: {
package/dist/plugin.cjs CHANGED
@@ -1,2 +1,2 @@
1
- const require_plugin = require("./plugin-B_lOdZQD.cjs");
1
+ const require_plugin = require("./plugin-DZKXx2me.cjs");
2
2
  module.exports = require_plugin.plugin;
package/dist/plugin.js CHANGED
@@ -1,2 +1,2 @@
1
- import { t as plugin } from "./plugin-CpzdmIrK.js";
1
+ import { t as plugin } from "./plugin-PQMeiTvg.js";
2
2
  export { plugin as default };
@@ -20,7 +20,7 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
20
20
  enumerable: true
21
21
  }) : target, mod));
22
22
  //#endregion
23
- const require_plugin = require("./plugin-B_lOdZQD.cjs");
23
+ const require_plugin = require("./plugin-DZKXx2me.cjs");
24
24
  let typescript_eslint = require("typescript-eslint");
25
25
  typescript_eslint = __toESM(typescript_eslint, 1);
26
26
  //#region src/recommended-type-checked.ts
@@ -1,4 +1,4 @@
1
- import { t as plugin } from "./plugin-CpzdmIrK.js";
1
+ import { t as plugin } from "./plugin-PQMeiTvg.js";
2
2
  import tseslint from "typescript-eslint";
3
3
  //#region src/recommended-type-checked.ts
4
4
  const recommendedTypeChecked = [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "exadev-eslint-config",
3
- "version": "1.2.1",
3
+ "version": "1.2.2",
4
4
  "description": "Shared custom ESLint rules and plugin for ExaDev projects",
5
5
  "type": "module",
6
6
  "sideEffects": false,