is-resolvable

npm version Build Status Build status Coverage Status

A Node.js module to check if a given module ID is resolvable with require()

```javascript const isResolvable = require('is-resolvable');

isResolvable('fs'); //=> true isResolvable('path'); //=> true

// When ./index.js exists isResolvable('./index.js') //=> true isResolvable('./index') //=> true isResolvable('.') //=> true ```

Installation

Use npm.

npm install is-resolvable

API

javascript const isResolvable = require('is-resolvable');

isResolvable(moduleId [, options])

moduleId: string (module ID)
options: Object (require.resolve options)
Return: boolean

It returns true if require() can load a file form a given module ID, otherwise false.

```javascript const isResolvable = require('is-resolvable');

// When ./foo.json exists isResolvable('./foo.json'); //=> true isResolvable('./foo'); //=> true

isResolvable('./foo.js'); //=> false

// When eslint module is installed but jshint isn't isResolvable('eslint'); //=> true isResolvable('jshint'); //=> false

// When lodash module is installed isResolvable('lodash/isObject'); //=> true isResolvable('lodash/fp/reject.js'); //=> true ```

The second argument accepts an options object for require.resolve().

```javascript // When ./bar/baz.js exists

isResolvable('./baz.js'); //=> false isResolvable('./baz.js', {paths: ['bar']}); //=> true ```

License

ISC License © 2018 Shinnosuke Watanabe