eslint-plugin-esm
Version:
ESLint plugin for linting ESM (import/export syntax)
55 lines (48 loc) • 2.02 kB
Markdown
<!-- prettier-ignore-start -->
# no-useless-path-segments
The relative source path should be a nearest relative path.
## Rule Details
### Fail
```ts
import xxx from ".././../a" // filename: /a/b/c/d/e.js
import ".././../a" // filename: /a/b/c/d/e.js
import(".././../a") // filename: /a/b/c/d/e.js
export * from ".././../a" // filename: /a/b/c/d/e.js
export {a} from ".././../a" // filename: /a/b/c/d/e.js
import xxx from "./../a" // filename: /a/b/c/d/e.js
import "./../a" // filename: /a/b/c/d/e.js
import("./../a") // filename: /a/b/c/d/e.js
export * from "./../a" // filename: /a/b/c/d/e.js
export {a} from "./../a" // filename: /a/b/c/d/e.js
import "././foo" // filename: /a/b/c/d/e.js
import "./../.././foo" // filename: /a/b/c/d/e.js
import("./../.././foo") // filename: /a/b/c/d/e.js
export * from "./../.././foo" // filename: /a/b/c/d/e.js
export {a} from "./../.././foo" // filename: /a/b/c/d/e.js
import "./../foo" // filename: /a/b/c/d/e.js
import("./../foo") // filename: /a/b/c/d/e.js
export * from "./../foo" // filename: /a/b/c/d/e.js
export {a} from "./../foo" // filename: /a/b/c/d/e.js
import foo from "./" // filename: /a/b/c/d/e.js
import foo from '../' // filename: /a/b/c/d/e.js
import foo from '../../' // filename: /a/b/c/d/e.js
import foo from './..' // filename: /a/b/c/d/e.js
```
### Pass
```ts
import xxx from "../a" // filename: /a/b/c/d/e.js
import "../a" // filename: /a/b/c/d/e.js
import("../a") // filename: /a/b/c/d/e.js
require("../a") // filename: /a/b/c/d/e.js
import xxx from "./a" // filename: /a/b/c/d/e.js
import xxx from "a" // filename: /a/b/c/d/e.js
import xxx from ".a" // filename: /a/b/c/d/e.js
export * from "a" // filename: /a/b/c/d/e.js
export * from "./a" // filename: /a/b/c/d/e.js
export {a} from "a" // filename: /a/b/c/d/e.js
export {a} from "./a" // filename: /a/b/c/d/e.js
import foo from "." // filename: /a/b/c/d/e.js
import foo from '..' // filename: /a/b/c/d/e.js
import foo from '../..' // filename: /a/b/c/d/e.js
```
<!-- prettier-ignore-end -->