import-js/eslint-plugin-import
View on GitHubAdd 'allow' option to the no-relative-parent-imports rule or 'ignoreChildren' option to no-internal-modules rule.
Open
#1,118 opened on Jun 7, 2018
acceptedenhancementhelp wantedquestion
Description
Our use case is to have some util classes/functions in a folder on top and then always import using relative path. Eg.
src/
utils/
util1.js
comp1/
index.js
comp2/
index.js
From src/comp1/index.js i'd like to be able to import from ../utils/util1 but prohibit import from ../comp2
To achieve this, I see two options:
- add 'allow' option to no-relative-parent-imports rule (in the same form as no-internal-modules 'allow'), eg.
"import/no-relative-parent-imports": [ "error", { "allow": ["**/src/utils/**"] } ]
- add 'ignoreChildren' option to no-internal-modules to only inspect parent's internal modules, eg.
"import/no-internal-modules": [ "error", { "allow": ["**/src/utils/**"], "ignoreChildren": true } ]
I'm willing to provide a PR to any of the rules.