Skip to content
This repository has been archived by the owner on May 10, 2021. It is now read-only.

ABuffSeagull/eslint-import-resolver-parcel

Repository files navigation

eslint-import-resolver-parcel

Build Status Known Vulnerabilities

About

Parcel import resolution plugin for eslint-plugin-import. This allows for eslint/import to work with parcel's module resolution.

Installation

npm install eslint-import-resolver-parcel -D

Usage

Add this to your eslint config:

settings: {
  'import/resolver': 'parcel'
}

Current status

  • Relative paths (import foo from '../foo.js')
  • Absolute paths (import _ from 'lodash')
  • Tilde paths (import foo from '~/foo.js')
  • Root paths* (import foo from '/foo.js')
  • Aliasing (parcel docs)
  • Glob Paths (parcel docs)

*About Root Paths

Because root paths require knowledge of the entry points, you must pass in the folder where the entry points are located into the config:

settings: {
  'import/resolver': {
    parcel: {
      rootDir: 'src' // wherever your entrypoints are located
    }
  }
}

If not specified, it will assume process.cwd() (where eslint is called from, probably where the package.json is located).

Extensions

If you want to automatically add extra extensions to resolve to, e.g., test-file resolves to test-file.ts, just pass in an array to the extensions key of the config.

settings: {
  'import/resolver': {
    parcel: {
      extensions: ['.ts'] // whatever extra extensions you want to look for
    }
  }
}

Current default extensions are .js and .jsx.