eslint-plugin-import-next 2.3.0 โ 2.3.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/AGENTS.md +1 -1
- package/CHANGELOG.md +4 -2
- package/README.md +93 -136
- package/package.json +3 -3
package/AGENTS.md
CHANGED
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
## [2.3.1] - 2026-02-02
|
|
2
|
+
|
|
3
|
+
This was a version bump only for eslint-plugin-import-next to align it with other projects, there were no code changes.
|
|
4
|
+
|
|
1
5
|
# Changelog
|
|
2
6
|
|
|
3
7
|
All notable changes to this project will be documented in this file.
|
|
@@ -5,8 +9,6 @@ All notable changes to this project will be documented in this file.
|
|
|
5
9
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
10
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
11
|
|
|
8
|
-
## [Unreleased]
|
|
9
|
-
|
|
10
12
|
### Documentation
|
|
11
13
|
|
|
12
14
|
- ๐ Launched new documentation site: [eslint.interlace.tools](https://eslint.interlace.tools/)
|
package/README.md
CHANGED
|
@@ -16,7 +16,8 @@
|
|
|
16
16
|
|
|
17
17
|
## Description
|
|
18
18
|
|
|
19
|
-
This plugin
|
|
19
|
+
This plugin provides Next-generation import sorting, validation, and architectural boundaries.
|
|
20
|
+
By using this plugin, you can proactively identify and mitigate security risks across your entire codebase.
|
|
20
21
|
|
|
21
22
|
## Philosophy
|
|
22
23
|
|
|
@@ -24,131 +25,18 @@ This plugin represents the next evolution of import validation, offering advance
|
|
|
24
25
|
|
|
25
26
|
## Getting Started
|
|
26
27
|
|
|
27
|
-
- To check out the [guide](https://eslint.interlace.tools/docs/import-next), visit [eslint.interlace.tools](https://eslint.interlace.tools). ๐
|
|
28
|
-
- ่ฆๆฅ็ไธญๆ [ๆๅ](https://eslint.interlace.tools/docs/import-next), ่ฏท่ฎฟ้ฎ [eslint.interlace.tools](https://eslint.interlace.tools). ๐
|
|
29
|
-
- [๊ฐ์ด๋](https://eslint.interlace.tools/docs/import-next) ๋ฌธ์๋ [eslint.interlace.tools](https://eslint.interlace.tools)์์ ํ์ธํ์ค ์ ์์ต๋๋ค. ๐
|
|
30
|
-
- [ใฌใคใ](https://eslint.interlace.tools/docs/import-next)ใฏ [eslint.interlace.tools](https://eslint.interlace.tools)ใงใ็ขบ่ชใใ ใใใ ๐
|
|
31
|
-
- Para ver la [guรญa](https://eslint.interlace.tools/docs/import-next), visita [eslint.interlace.tools](https://eslint.interlace.tools). ๐
|
|
32
|
-
- ููุงุทูุงุน ุนูู [ุงูุฏููู](https://eslint.interlace.tools/docs/import-next)ุ ูู
ุจุฒูุงุฑุฉ [eslint.interlace.tools](https://eslint.interlace.tools). ๐
|
|
28
|
+
- To check out the [guide](https://eslint.interlace.tools/docs/quality/plugin-import-next), visit [eslint.interlace.tools](https://eslint.interlace.tools). ๐
|
|
29
|
+
- ่ฆๆฅ็ไธญๆ [ๆๅ](https://eslint.interlace.tools/docs/quality/plugin-import-next), ่ฏท่ฎฟ้ฎ [eslint.interlace.tools](https://eslint.interlace.tools). ๐
|
|
30
|
+
- [๊ฐ์ด๋](https://eslint.interlace.tools/docs/quality/plugin-import-next) ๋ฌธ์๋ [eslint.interlace.tools](https://eslint.interlace.tools)์์ ํ์ธํ์ค ์ ์์ต๋๋ค. ๐
|
|
31
|
+
- [ใฌใคใ](https://eslint.interlace.tools/docs/quality/plugin-import-next)ใฏ [eslint.interlace.tools](https://eslint.interlace.tools)ใงใ็ขบ่ชใใ ใใใ ๐
|
|
32
|
+
- Para ver la [guรญa](https://eslint.interlace.tools/docs/quality/plugin-import-next), visita [eslint.interlace.tools](https://eslint.interlace.tools). ๐
|
|
33
|
+
- ููุงุทูุงุน ุนูู [ุงูุฏููู](https://eslint.interlace.tools/docs/quality/plugin-import-next)ุ ูู
ุจุฒูุงุฑุฉ [eslint.interlace.tools](https://eslint.interlace.tools). ๐
|
|
33
34
|
|
|
34
35
|
```bash
|
|
35
36
|
npm install eslint-plugin-import-next --save-dev
|
|
36
37
|
```
|
|
37
38
|
|
|
38
|
-
## AI-Optimized Messages
|
|
39
|
-
|
|
40
|
-
This plugin is optimized for ESLint's [Model Context Protocol (MCP)](https://eslint.org/docs/latest/use/mcp), enabling AI assistants like **Cursor**, **GitHub Copilot**, and **Claude** to:
|
|
41
|
-
|
|
42
|
-
- Understand the exact vulnerability type via CWE references
|
|
43
|
-
- Apply the correct fix using structured guidance
|
|
44
|
-
- Provide educational context to developers
|
|
45
|
-
|
|
46
|
-
Unlike legacy plugins, we analyze the _type_ of issue and suggest the correct fix:
|
|
47
|
-
|
|
48
|
-
```bash
|
|
49
|
-
# Type-only Cycle
|
|
50
|
-
๐งฉ CWE-407 | Circular Dependency (Types Only)
|
|
51
|
-
Path: auth.ts โ user.ts โ auth.ts
|
|
52
|
-
Fix: Extract shared types to 'types.ts' or use 'import type'
|
|
53
|
-
|
|
54
|
-
# Hard Dependency Cycle
|
|
55
|
-
๐๏ธ CWE-407 | Circular Dependency (Runtime)
|
|
56
|
-
Path: ServiceA โ ServiceB โ ServiceA
|
|
57
|
-
Fix: Use Dependency Injection or split into Core/Extended modules
|
|
58
|
-
|
|
59
|
-
# Deep Cycle (previously undetectable)
|
|
60
|
-
โ ๏ธ CWE-407 | Deep Circular Dependency (depth: 7)
|
|
61
|
-
Path: A โ B โ C โ D โ E โ F โ G โ A
|
|
62
|
-
Impact: May cause Vite/Next.js build failures
|
|
63
|
-
Fix: Introduce an abstraction layer between A and G
|
|
64
|
-
```
|
|
65
|
-
|
|
66
|
-
```json
|
|
67
|
-
// .cursor/mcp.json
|
|
68
|
-
{
|
|
69
|
-
"mcpServers": {
|
|
70
|
-
"eslint": {
|
|
71
|
-
"command": "npx",
|
|
72
|
-
"args": ["@eslint/mcp@latest"]
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
By providing this structured context (CWE, OWASP, Fix), we enable AI tools to **reason** about the security flaw rather than hallucinating. This allows Copilot/Cursor to suggest the _exact_ correct fix immediately.
|
|
79
|
-
|
|
80
|
-
---
|
|
81
|
-
|
|
82
|
-
## Rules
|
|
83
|
-
|
|
84
|
-
**Legend**
|
|
85
|
-
|
|
86
|
-
| Icon | Description |
|
|
87
|
-
| :--: | :----------------------------------------------------------------- |
|
|
88
|
-
| ๐ผ | **Recommended**: Included in the recommended preset. |
|
|
89
|
-
| โ ๏ธ | **Warns**: Set to warn in recommended preset. |
|
|
90
|
-
| ๐ง | **Auto-fixable**: Automatically fixable by the `--fix` CLI option. |
|
|
91
|
-
| ๐ก | **Suggestions**: Providing code suggestions in IDE. |
|
|
92
|
-
| ๐ซ | **Deprecated**: This rule is deprecated. |
|
|
93
|
-
|
|
94
|
-
| Rule | Pattern/Concept | Description | ๐ผ | โ ๏ธ | ๐ง | ๐ก | ๐ซ |
|
|
95
|
-
| :------------------------------------------------------------------------------------------------------------------------- | :--------------- | :-------------------------------------------------- | :-: | :-: | :-: | :-: | :-: |
|
|
96
|
-
| [`no-unresolved`](https://eslint.interlace.tools/docs/import-next/rules/no-unresolved) | Static Analysis | Ensure imports resolve | ๐ผ | | | ๐ก | |
|
|
97
|
-
| [`named`](https://eslint.interlace.tools/docs/import-next/rules/named) | Static Analysis | Ensure named imports exist | ๐ผ | | | | |
|
|
98
|
-
| [`default`](https://eslint.interlace.tools/docs/import-next/rules/default) | Static Analysis | Ensure default export exists | ๐ผ | | | | |
|
|
99
|
-
| [`namespace`](https://eslint.interlace.tools/docs/import-next/rules/namespace) | Static Analysis | Ensure namespace properties exist | ๐ผ | | | | |
|
|
100
|
-
| [`no-absolute-path`](https://eslint.interlace.tools/docs/import-next/rules/no-absolute-path) | Static Analysis | Forbid absolute paths | | | ๐ง | | |
|
|
101
|
-
| [`no-dynamic-require`](https://eslint.interlace.tools/docs/import-next/rules/no-dynamic-require) | Static Analysis | Forbid dynamic require() | | | | | |
|
|
102
|
-
| [`no-internal-modules`](https://eslint.interlace.tools/docs/import-next/rules/no-internal-modules) | Static Analysis | Enforce entry points only | | | | ๐ก | |
|
|
103
|
-
| [`no-relative-packages`](https://eslint.interlace.tools/docs/import-next/rules/no-relative-packages) | Static Analysis | Use package names | | | ๐ง | | |
|
|
104
|
-
| [`no-relative-parent-imports`](https://eslint.interlace.tools/docs/import-next/rules/no-relative-parent-imports) | Static Analysis | Prevent `../` imports | | | | | |
|
|
105
|
-
| [`no-self-import`](https://eslint.interlace.tools/docs/import-next/rules/no-self-import) | Static Analysis | Prevent self-imports | ๐ผ | | | ๐ก | |
|
|
106
|
-
| [`no-cycle`](https://eslint.interlace.tools/docs/import-next/rules/no-cycle) | Static Analysis | **100x faster** cycle detection | ๐ผ | | | ๐ก | |
|
|
107
|
-
| [`no-useless-path-segments`](https://eslint.interlace.tools/docs/import-next/rules/no-useless-path-segments) | Static Analysis | Simplify paths | | | ๐ง | | |
|
|
108
|
-
| [`no-restricted-paths`](https://eslint.interlace.tools/docs/import-next/rules/no-restricted-paths) | Static Analysis | Custom path restrictions | | | | | |
|
|
109
|
-
| [`export`](https://eslint.interlace.tools/docs/import-next/rules/export) | Helpful Warnings | Forbid duplicate exports | ๐ผ | | | | |
|
|
110
|
-
| [`no-deprecated`](https://eslint.interlace.tools/docs/import-next/rules/no-deprecated) | Helpful Warnings | Warn on `@deprecated` imports | | | | | |
|
|
111
|
-
| [`no-empty-named-blocks`](https://eslint.interlace.tools/docs/import-next/rules/no-empty-named-blocks) | Helpful Warnings | Forbid empty `{}` imports | | | ๐ง | ๐ก | |
|
|
112
|
-
| [`no-extraneous-dependencies`](https://eslint.interlace.tools/docs/import-next/rules/no-extraneous-dependencies) | Helpful Warnings | Prevent unlisted deps | ๐ผ | | | ๐ก | |
|
|
113
|
-
| [`no-mutable-exports`](https://eslint.interlace.tools/docs/import-next/rules/no-mutable-exports) | Helpful Warnings | Forbid `let`/`var` exports | | | | | |
|
|
114
|
-
| [`no-named-as-default`](https://eslint.interlace.tools/docs/import-next/rules/no-named-as-default) | Helpful Warnings | Warn on default shadowing | ๐ผ | | | | |
|
|
115
|
-
| [`no-named-as-default-member`](https://eslint.interlace.tools/docs/import-next/rules/no-named-as-default-member) | Helpful Warnings | Warn on property access | ๐ผ | | | | |
|
|
116
|
-
| [`no-unused-modules`](https://eslint.interlace.tools/docs/import-next/rules/no-unused-modules) | Helpful Warnings | Find dead code | | | | ๐ก | |
|
|
117
|
-
| [`no-amd`](https://eslint.interlace.tools/docs/import-next/rules/no-amd) | Module Systems | Forbid AMD require/define | | | | | |
|
|
118
|
-
| [`no-commonjs`](https://eslint.interlace.tools/docs/import-next/rules/no-commonjs) | Module Systems | Forbid CommonJS | | | | | |
|
|
119
|
-
| [`no-nodejs-modules`](https://eslint.interlace.tools/docs/import-next/rules/no-nodejs-modules) | Module Systems | Forbid Node.js builtins | | | | | |
|
|
120
|
-
| [`no-import-module-exports`](https://eslint.interlace.tools/docs/import-next/rules/no-import-module-exports) | Module Systems | No mixed ES/CJS | | | | | |
|
|
121
|
-
| [`unambiguous`](https://eslint.interlace.tools/docs/import-next/rules/unambiguous) | Module Systems | Warn on ambiguous modules | | | | | |
|
|
122
|
-
| [`consistent-type-specifier-style`](https://eslint.interlace.tools/docs/import-next/rules/consistent-type-specifier-style) | Style Guide | Type import style | | | ๐ง | | |
|
|
123
|
-
| [`dynamic-import-chunkname`](https://eslint.interlace.tools/docs/import-next/rules/dynamic-import-chunkname) | Style Guide | Require webpack chunk names | | | | ๐ก | |
|
|
124
|
-
| [`exports-last`](https://eslint.interlace.tools/docs/import-next/rules/exports-last) | Style Guide | Exports at end of file | | | | | |
|
|
125
|
-
| [`extensions`](https://eslint.interlace.tools/docs/import-next/rules/extensions) | Style Guide | Enforce file extension usage | | | | | |
|
|
126
|
-
| [`first`](https://eslint.interlace.tools/docs/import-next/rules/first) | Style Guide | Imports must be first | | | ๐ง | | |
|
|
127
|
-
| [`group-exports`](https://eslint.interlace.tools/docs/import-next/rules/group-exports) | Style Guide | Group exports together | | | | | |
|
|
128
|
-
| [`max-dependencies`](https://eslint.interlace.tools/docs/import-next/rules/max-dependencies) | Style Guide | Limit module dependencies | | | | | |
|
|
129
|
-
| [`newline-after-import`](https://eslint.interlace.tools/docs/import-next/rules/newline-after-import) | Style Guide | Newline after imports | | | ๐ง | | |
|
|
130
|
-
| [`no-anonymous-default-export`](https://eslint.interlace.tools/docs/import-next/rules/no-anonymous-default-export) | Style Guide | Require named default exports | | | | | |
|
|
131
|
-
| [`no-default-export`](https://eslint.interlace.tools/docs/import-next/rules/no-default-export) | Style Guide | Forbid default exports | | | | ๐ก | |
|
|
132
|
-
| [`no-duplicates`](https://eslint.interlace.tools/docs/import-next/rules/no-duplicates) | Style Guide | Merge duplicate imports | ๐ผ | | ๐ง | | |
|
|
133
|
-
| [`no-named-default`](https://eslint.interlace.tools/docs/import-next/rules/no-named-default) | Style Guide | Use default import syntax | | | | | |
|
|
134
|
-
| [`no-named-export`](https://eslint.interlace.tools/docs/import-next/rules/no-named-export) | Style Guide | Forbid named exports | | | | | |
|
|
135
|
-
| [`no-namespace`](https://eslint.interlace.tools/docs/import-next/rules/no-namespace) | Style Guide | Forbid `* as` imports | | | | | |
|
|
136
|
-
| [`no-unassigned-import`](https://eslint.interlace.tools/docs/import-next/rules/no-unassigned-import) | Style Guide | Forbid side-effect imports | | | | | |
|
|
137
|
-
| [`order`](https://eslint.interlace.tools/docs/import-next/rules/order) | Style Guide | Sort and group imports | ๐ผ | | ๐ง | | |
|
|
138
|
-
| [`prefer-default-export`](https://eslint.interlace.tools/docs/import-next/rules/prefer-default-export) | Style Guide | Prefer default for single exports | | | | | |
|
|
139
|
-
| [`no-cross-domain-imports`](https://eslint.interlace.tools/docs/import-next/rules/no-cross-domain-imports) | Architecture | Enforce clean architecture boundaries | | | | | |
|
|
140
|
-
| [`enforce-dependency-direction`](https://eslint.interlace.tools/docs/import-next/rules/enforce-dependency-direction) | Architecture | Enforce layered architecture (UI โ Services โ Data) | | | | | |
|
|
141
|
-
| [`prefer-node-protocol`](https://eslint.interlace.tools/docs/import-next/rules/prefer-node-protocol) | Architecture | Prefer `node:fs` over `fs` | | | | | |
|
|
142
|
-
| [`no-barrel-file`](https://eslint.interlace.tools/docs/import-next/rules/no-barrel-file) | Architecture | Detect barrel files that harm build performance | | | | | |
|
|
143
|
-
| [`no-barrel-import`](https://eslint.interlace.tools/docs/import-next/rules/no-barrel-import) | Architecture | Flag imports from barrel files | | | | | |
|
|
144
|
-
| [`prefer-tree-shakeable-imports`](https://eslint.interlace.tools/docs/import-next/rules/prefer-tree-shakeable-imports) | Architecture | Enforce tree-shakeable import patterns | | | | | |
|
|
145
|
-
| [`prefer-direct-import`](https://eslint.interlace.tools/docs/import-next/rules/prefer-direct-import) | Architecture | Suggest direct imports with autofix | | | | | |
|
|
146
|
-
| [`no-full-package-import`](https://eslint.interlace.tools/docs/import-next/rules/no-full-package-import) | Architecture | Block full imports from large packages | | | | | |
|
|
147
|
-
| [`enforce-team-boundaries`](https://eslint.interlace.tools/docs/import-next/rules/enforce-team-boundaries) | Architecture | Prevent unauthorized cross-team imports | | | | | |
|
|
148
|
-
| [`no-legacy-imports`](https://eslint.interlace.tools/docs/import-next/rules/no-legacy-imports) | Architecture | Detect deprecated imports with autofix | | | | | |
|
|
149
|
-
|
|
150
39
|
## ๐ Compatibility Matrix
|
|
151
|
-
|
|
152
40
|
| Rule | Original Plugin | Status | Notes |
|
|
153
41
|
| :-------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :----------- | :----------------------- |
|
|
154
42
|
| All Rules | [`eslint-plugin-import`](https://www.npmjs.com/package/eslint-plugin-import) [](https://www.npmjs.com/package/eslint-plugin-import) | โ
Supported | Full drop-in replacement |
|
|
@@ -156,7 +44,6 @@ By providing this structured context (CWE, OWASP, Fix), we enable AI tools to **
|
|
|
156
44
|
---
|
|
157
45
|
|
|
158
46
|
## โ๏ธ Configuration Presets
|
|
159
|
-
|
|
160
47
|
| Preset | Description |
|
|
161
48
|
| :------------------ | :----------------------------------------------- |
|
|
162
49
|
| `recommended` | Warns on import order issues |
|
|
@@ -171,28 +58,98 @@ By providing this structured context (CWE, OWASP, Fix), we enable AI tools to **
|
|
|
171
58
|
| `errors` | Matches eslint-plugin-import errors preset |
|
|
172
59
|
| `warnings` | Matches eslint-plugin-import warnings preset |
|
|
173
60
|
|
|
61
|
+
## Rules
|
|
62
|
+
|
|
63
|
+
**Legend**
|
|
64
|
+
|
|
65
|
+
| Icon | Description |
|
|
66
|
+
| :---: | :--- |
|
|
67
|
+
| ๐ผ | **Recommended**: Included in the recommended preset. |
|
|
68
|
+
| โ ๏ธ | **Warns**: Set towarn in recommended preset. |
|
|
69
|
+
| ๐ง | **Auto-fixable**: Automatically fixable by the `--fix` CLI option. |
|
|
70
|
+
| ๐ก | **Suggestions**: Providing code suggestions in IDE. |
|
|
71
|
+
| ๐ซ | **Deprecated**: This rule is deprecated. |
|
|
72
|
+
|
|
73
|
+
| Rule | CWE | OWASP | CVSS | Description | ๐ผ | โ ๏ธ | ๐ง | ๐ก | ๐ซ |
|
|
74
|
+
| :--- | :---: | :---: | :---: | :--- | :---: | :---: | :---: | :---: | :---: |
|
|
75
|
+
| [consistent-type-specifier-style](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/consistent-type-specifier-style) | | | | ESLint rule documentation for consistent-type-specifier-style | | | | | |
|
|
76
|
+
| [default](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/default) | | | | ESLint rule documentation for default | | | | | |
|
|
77
|
+
| [dynamic-import-chunkname](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/dynamic-import-chunkname) | | | | ESLint rule documentation for dynamic-import-chunkname | | | | | |
|
|
78
|
+
| [enforce-dependency-direction](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/enforce-dependency-direction) | | | | ESLint rule documentation for enforce-dependency-direction | | | | | |
|
|
79
|
+
| [enforce-import-order](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/enforce-import-order) | | | | ESLint rule documentation for enforce-import-order | | | | | |
|
|
80
|
+
| [enforce-team-boundaries](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/enforce-team-boundaries) | | | | ESLint rule documentation for enforce-team-boundaries | | | | | |
|
|
81
|
+
| [export](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/export) | | | | ESLint rule documentation for export | | | | | |
|
|
82
|
+
| [exports-last](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/exports-last) | | | | ESLint rule documentation for exports-last | | | | | |
|
|
83
|
+
| [extensions](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/extensions) | | | | ESLint rule documentation for extensions | | | | | |
|
|
84
|
+
| [first](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/first) | | | | ESLint rule documentation for first | | | | | |
|
|
85
|
+
| [group-exports](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/group-exports) | | | | ESLint rule documentation for group-exports | | | | | |
|
|
86
|
+
| [max-dependencies](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/max-dependencies) | | | | ESLint rule documentation for max-dependencies | | | | | |
|
|
87
|
+
| [named](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/named) | | | | ESLint rule documentation for named | | | | | |
|
|
88
|
+
| [namespace](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/namespace) | | | | ESLint rule documentation for namespace | | | | | |
|
|
89
|
+
| [newline-after-import](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/newline-after-import) | | | | ESLint rule documentation for newline-after-import | | | | | |
|
|
90
|
+
| [no-absolute-path](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-absolute-path) | | | | ESLint rule documentation for no-absolute-path | | | | | |
|
|
91
|
+
| [no-amd](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-amd) | | | | ESLint rule documentation for no-amd | | | | | |
|
|
92
|
+
| [no-anonymous-default-export](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-anonymous-default-export) | | | | ESLint rule documentation for no-anonymous-default-export | | | | | |
|
|
93
|
+
| [no-barrel-file](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-barrel-file) | | | | ESLint rule documentation for no-barrel-file | | | | | |
|
|
94
|
+
| [no-barrel-import](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-barrel-import) | | | | ESLint rule documentation for no-barrel-import | | | | | |
|
|
95
|
+
| [no-commonjs](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-commonjs) | | | | ESLint rule documentation for no-commonjs | | | | | |
|
|
96
|
+
| [no-cross-domain-imports](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-cross-domain-imports) | | | | ESLint rule documentation for no-cross-domain-imports | | | | | |
|
|
97
|
+
| [no-cycle](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-cycle) | | | | ESLint rule documentation for no-cycle | | | | | |
|
|
98
|
+
| [no-default-export](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-default-export) | | | | ESLint rule documentation for no-default-export | | | | | |
|
|
99
|
+
| [no-deprecated](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-deprecated) | | | | ESLint rule documentation for no-deprecated | | | | | |
|
|
100
|
+
| [no-duplicates](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-duplicates) | | | | ESLint rule documentation for no-duplicates | | | | | |
|
|
101
|
+
| [no-dynamic-require](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-dynamic-require) | | | | ESLint rule documentation for no-dynamic-require | | | | | |
|
|
102
|
+
| [no-empty-named-blocks](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-empty-named-blocks) | | | | ESLint rule documentation for no-empty-named-blocks | | | | | |
|
|
103
|
+
| [no-extraneous-dependencies](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-extraneous-dependencies) | | | | ESLint rule documentation for no-extraneous-dependencies | | | | | |
|
|
104
|
+
| [no-full-package-import](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-full-package-import) | | | | ESLint rule documentation for no-full-package-import | | | | | |
|
|
105
|
+
| [no-import-module-exports](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-import-module-exports) | | | | ESLint rule documentation for no-import-module-exports | | | | | |
|
|
106
|
+
| [no-internal-modules](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-internal-modules) | | | | ESLint rule documentation for no-internal-modules | | | | | |
|
|
107
|
+
| [no-legacy-imports](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-legacy-imports) | | | | ESLint rule documentation for no-legacy-imports | | | | | |
|
|
108
|
+
| [no-mutable-exports](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-mutable-exports) | | | | ESLint rule documentation for no-mutable-exports | | | | | |
|
|
109
|
+
| [no-named-as-default](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-named-as-default) | | | | ESLint rule documentation for no-named-as-default | | | | | |
|
|
110
|
+
| [no-named-as-default-member](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-named-as-default-member) | | | | ESLint rule documentation for no-named-as-default-member | | | | | |
|
|
111
|
+
| [no-named-default](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-named-default) | | | | ESLint rule documentation for no-named-default | | | | | |
|
|
112
|
+
| [no-named-export](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-named-export) | | | | ESLint rule documentation for no-named-export | | | | | |
|
|
113
|
+
| [no-namespace](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-namespace) | | | | ESLint rule documentation for no-namespace | | | | | |
|
|
114
|
+
| [no-nodejs-modules](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-nodejs-modules) | | | | ESLint rule documentation for no-nodejs-modules | | | | | |
|
|
115
|
+
| [no-relative-packages](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-relative-packages) | | | | ESLint rule documentation for no-relative-packages | | | | | |
|
|
116
|
+
| [no-relative-parent-imports](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-relative-parent-imports) | | | | ESLint rule documentation for no-relative-parent-imports | | | | | |
|
|
117
|
+
| [no-restricted-paths](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-restricted-paths) | | | | ESLint rule documentation for no-restricted-paths | | | | | |
|
|
118
|
+
| [no-self-import](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-self-import) | | | | ESLint rule documentation for no-self-import | | | | | |
|
|
119
|
+
| [no-unassigned-import](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-unassigned-import) | | | | ESLint rule documentation for no-unassigned-import | | | | | |
|
|
120
|
+
| [no-unresolved](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-unresolved) | | | | ESLint rule documentation for no-unresolved | | | | | |
|
|
121
|
+
| [no-unused-modules](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-unused-modules) | | | | ESLint rule documentation for no-unused-modules | | | | | |
|
|
122
|
+
| [no-useless-path-segments](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/no-useless-path-segments) | | | | ESLint rule documentation for no-useless-path-segments | | | | | |
|
|
123
|
+
| [prefer-default-export](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/prefer-default-export) | | | | ESLint rule documentation for prefer-default-export | | | | | |
|
|
124
|
+
| [prefer-direct-import](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/prefer-direct-import) | | | | ESLint rule documentation for prefer-direct-import | | | | | |
|
|
125
|
+
| [prefer-modern-api](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/prefer-modern-api) | | | | ESLint rule documentation for prefer-modern-api | | | | | |
|
|
126
|
+
| [prefer-node-protocol](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/prefer-node-protocol) | | | | ESLint rule documentation for prefer-node-protocol | | | | | |
|
|
127
|
+
| [prefer-tree-shakeable-imports](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/prefer-tree-shakeable-imports) | | | | ESLint rule documentation for prefer-tree-shakeable-imports | | | | | |
|
|
128
|
+
| [require-import-approval](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/require-import-approval) | | | | ESLint rule documentation for require-import-approval | | | | | |
|
|
129
|
+
| [unambiguous](https://eslint.interlace.tools/docs/quality/plugin-import-next/rules/unambiguous) | | | | ESLint rule documentation for unambiguous | | | | | |
|
|
130
|
+
|
|
174
131
|
## ๐ Related ESLint Plugins
|
|
175
132
|
|
|
176
133
|
Part of the **Interlace ESLint Ecosystem** โ AI-native security plugins with LLM-optimized error messages:
|
|
177
134
|
|
|
178
|
-
| Plugin
|
|
179
|
-
|
|
|
180
|
-
| [`eslint-plugin-secure-coding`](https://www.npmjs.com/package/eslint-plugin-secure-coding)
|
|
181
|
-
| [`eslint-plugin-pg`](https://www.npmjs.com/package/eslint-plugin-pg)
|
|
182
|
-
| [`eslint-plugin-crypto`](https://www.npmjs.com/package/eslint-plugin-crypto)
|
|
183
|
-
| [`eslint-plugin-jwt`](https://www.npmjs.com/package/eslint-plugin-jwt)
|
|
184
|
-
| [`eslint-plugin-browser-security`](https://www.npmjs.com/package/eslint-plugin-browser-security)
|
|
185
|
-
| [`eslint-plugin-express-security`](https://www.npmjs.com/package/eslint-plugin-express-security)
|
|
186
|
-
| [`eslint-plugin-lambda-security`](https://www.npmjs.com/package/eslint-plugin-lambda-security)
|
|
187
|
-
| [`eslint-plugin-nestjs-security`](https://www.npmjs.com/package/eslint-plugin-nestjs-security)
|
|
188
|
-
| [`eslint-plugin-mongodb-security`](https://www.npmjs.com/package/eslint-plugin-mongodb-security)
|
|
189
|
-
| [`eslint-plugin-vercel-ai-security`](https://www.npmjs.com/package/eslint-plugin-vercel-ai-security) | [](https://www.npmjs.com/package/eslint-plugin-vercel-ai-security) | Vercel AI SDK security hardening.
|
|
190
|
-
| [`eslint-plugin-import-next`](https://www.npmjs.com/package/eslint-plugin-import-next)
|
|
135
|
+
| Plugin | Downloads | Description |
|
|
136
|
+
| :--- | :---: | :--- |
|
|
137
|
+
| [`eslint-plugin-secure-coding`](https://www.npmjs.com/package/eslint-plugin-secure-coding) | [](https://www.npmjs.com/package/eslint-plugin-secure-coding) | General security rules & OWASP guidelines. |
|
|
138
|
+
| [`eslint-plugin-pg`](https://www.npmjs.com/package/eslint-plugin-pg) | [](https://www.npmjs.com/package/eslint-plugin-pg) | PostgreSQL security & best practices. |
|
|
139
|
+
| [`eslint-plugin-crypto`](https://www.npmjs.com/package/eslint-plugin-crypto) | [](https://www.npmjs.com/package/eslint-plugin-crypto) | NodeJS Cryptography security rules. |
|
|
140
|
+
| [`eslint-plugin-jwt`](https://www.npmjs.com/package/eslint-plugin-jwt) | [](https://www.npmjs.com/package/eslint-plugin-jwt) | JWT security & best practices. |
|
|
141
|
+
| [`eslint-plugin-browser-security`](https://www.npmjs.com/package/eslint-plugin-browser-security) | [](https://www.npmjs.com/package/eslint-plugin-browser-security) | Browser-specific security & XSS prevention. |
|
|
142
|
+
| [`eslint-plugin-express-security`](https://www.npmjs.com/package/eslint-plugin-express-security) | [](https://www.npmjs.com/package/eslint-plugin-express-security) | Express.js security hardening rules. |
|
|
143
|
+
| [`eslint-plugin-lambda-security`](https://www.npmjs.com/package/eslint-plugin-lambda-security) | [](https://www.npmjs.com/package/eslint-plugin-lambda-security) | AWS Lambda security best practices. |
|
|
144
|
+
| [`eslint-plugin-nestjs-security`](https://www.npmjs.com/package/eslint-plugin-nestjs-security) | [](https://www.npmjs.com/package/eslint-plugin-nestjs-security) | NestJS security rules & patterns. |
|
|
145
|
+
| [`eslint-plugin-mongodb-security`](https://www.npmjs.com/package/eslint-plugin-mongodb-security) | [](https://www.npmjs.com/package/eslint-plugin-mongodb-security) | MongoDB security best practices. |
|
|
146
|
+
| [`eslint-plugin-vercel-ai-security`](https://www.npmjs.com/package/eslint-plugin-vercel-ai-security) | [](https://www.npmjs.com/package/eslint-plugin-vercel-ai-security) | Vercel AI SDK security hardening. |
|
|
147
|
+
| [`eslint-plugin-import-next`](https://www.npmjs.com/package/eslint-plugin-import-next) | [](https://www.npmjs.com/package/eslint-plugin-import-next) | Next-gen import sorting & architecture. |
|
|
191
148
|
|
|
192
149
|
## ๐ License
|
|
193
150
|
|
|
194
151
|
MIT ยฉ [Ofri Peretz](https://github.com/ofri-peretz)
|
|
195
152
|
|
|
196
153
|
<p align="center">
|
|
197
|
-
<a href="https://eslint.interlace.tools/docs/import-next"><img src="https://eslint.interlace.tools/images/og-import-next.png" alt="ESLint Interlace Plugin" width="
|
|
198
|
-
</p>
|
|
154
|
+
<a href="https://eslint.interlace.tools/docs/quality/plugin-import-next"><img src="https://eslint.interlace.tools/images/og-import-next.png" alt="ESLint Interlace Plugin" width="100%" /></a>
|
|
155
|
+
</p>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "eslint-plugin-import-next",
|
|
3
|
-
"version": "2.3.
|
|
3
|
+
"version": "2.3.2",
|
|
4
4
|
"description": "Drop-in replacement for eslint-plugin-import. 100x faster no-cycle detection, AI-optimized fixes, zero config migration.",
|
|
5
5
|
"type": "commonjs",
|
|
6
6
|
"main": "./src/index.js",
|
|
@@ -17,10 +17,10 @@
|
|
|
17
17
|
},
|
|
18
18
|
"author": "Ofri Peretz <ofriperetzdev@gmail.com>",
|
|
19
19
|
"license": "MIT",
|
|
20
|
-
"homepage": "https://github.com/ofri-peretz/eslint#readme",
|
|
20
|
+
"homepage": "https://github.com/ofri-peretz/eslint/tree/main/packages/eslint-plugin-import-next#readme",
|
|
21
21
|
"repository": {
|
|
22
22
|
"type": "git",
|
|
23
|
-
"url": "
|
|
23
|
+
"url": "https://github.com/ofri-peretz/eslint",
|
|
24
24
|
"directory": "packages/eslint-plugin-import-next"
|
|
25
25
|
},
|
|
26
26
|
"bugs": {
|