Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

eslint-import-resolver-parcel

abuffseagull1.5kMIT1.10.6

Parcel import resolution plugin for eslint-plugin-import.

parceljs, parcel-bundler, eslint, eslint-import-resolver

readme

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

  • <input checked="" disabled="" type="checkbox"> Relative paths (import foo from '../foo.js')
  • <input checked="" disabled="" type="checkbox"> Absolute paths (import _ from 'lodash')
  • <input checked="" disabled="" type="checkbox"> Tilde paths (import foo from '~/foo.js')
  • <input checked="" disabled="" type="checkbox"> Root paths* (import foo from '/foo.js')
  • <input checked="" disabled="" type="checkbox"> Aliasing (parcel docs)
  • <input disabled="" type="checkbox"> 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.