Skip to content

Latest commit

 

History

History
38 lines (29 loc) · 934 Bytes

require-dependency.md

File metadata and controls

38 lines (29 loc) · 934 Bytes

workspaces/require-dependency

Disallow importing from packages that are not listed in the dependencies, devDependencies, peerDependencies or optionalDependencies of the package that is being imported to. This rule only affects files that are inside a package.

Example

These examples have the following project structure:

project
└───packages
    └─── A
    └─── B
    └─── C

Examples of incorrect code for this rule:

// inside "project/packages/A/index.js"
import foo from "@project/B/foo";
import bar from "../B/bar";

Examples of correct code for this rule:

// "project/packages/A/package.json" containing:
// {
//   "dependencies": { "@project/B": "1.0.0" },
//   "devDependencies": { "@project/C": "1.0.0" }
// }

// inside "project/packages/A/index.js"
import foo from "@project/B/foo";
import bar from "../B/bar";
import baz from "@project/C/baz";