diff --git a/CHANGELOG.md b/CHANGELOG.md index ae9f5bca7..fac8b782c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,9 +11,8 @@ This change log adheres to standards from [Keep a CHANGELOG](http://keepachangel ### Fixed - [`no-unused-modules`]: fix usage of `import/extensions` settings ([#1560], thanks [@stekycz]) - -### Fixed - [`import/extensions`]: ignore non-main modules ([#1563], thanks [@saschanaz]) +- TypeScript config: lookup for external modules in @types folder ([#1526], thanks [@joaovieira]) ## [2.19.1] - 2019-12-08 ### Fixed @@ -634,6 +633,7 @@ for info on changes for earlier releases. [#1560]: https://github.com/benmosher/eslint-plugin-import/pull/1560 [#1551]: https://github.com/benmosher/eslint-plugin-import/pull/1551 [#1542]: https://github.com/benmosher/eslint-plugin-import/pull/1542 +[#1526]: https://github.com/benmosher/eslint-plugin-import/pull/1526 [#1521]: https://github.com/benmosher/eslint-plugin-import/pull/1521 [#1519]: https://github.com/benmosher/eslint-plugin-import/pull/1519 [#1507]: https://github.com/benmosher/eslint-plugin-import/pull/1507 @@ -1054,3 +1054,4 @@ for info on changes for earlier releases. [@stekycz]: https://github.com/stekycz [@dbrewer5]: https://github.com/dbrewer5 [@rsolomon]: https://github.com/rsolomon +[@joaovieira]: https://github.com/joaovieira diff --git a/config/typescript.js b/config/typescript.js index fdd1d5910..262e3c799 100644 --- a/config/typescript.js +++ b/config/typescript.js @@ -8,6 +8,7 @@ module.exports = { settings: { 'import/extensions': allExtensions, + 'import/external-module-folders': ['node_modules', 'node_modules/@types'], 'import/parsers': { '@typescript-eslint/parser': ['.ts', '.tsx', '.d.ts'], }, diff --git a/tests/src/config/typescript.js b/tests/src/config/typescript.js new file mode 100644 index 000000000..d5e3ec850 --- /dev/null +++ b/tests/src/config/typescript.js @@ -0,0 +1,14 @@ +import path from 'path' +import { expect } from 'chai' + +const config = require(path.join(__dirname, '..', '..', '..', 'config', 'typescript')) + +describe('config typescript', () => { + // https://github.com/benmosher/eslint-plugin-import/issues/1525 + it('should mark @types paths as external', () => { + const externalModuleFolders = config.settings['import/external-module-folders'] + expect(externalModuleFolders).to.exist + expect(externalModuleFolders).to.contain('node_modules') + expect(externalModuleFolders).to.contain('node_modules/@types') + }) +})