module-definition

6.0.0 • Public • Published

module-definition

CI npm version npm downloads

Determines the module definition type (CommonJS, AMD, ES6, or none) for a given JavaScript file by walking through the AST.

npm install module-definition

Usage

const getModuleType = require('module-definition');

// Async
getModuleType('myscript.js', (error, type) => {
  console.log(type);
});

// Sync
let type = getModuleType.sync('myscript.js');
console.log(type);

// From source (string or an AST)
type = getModuleType.fromSource('define({foo: "foo"});');
console.log(type);

Passes one of the following strings to the given callback or returns the string in sync API:

  • amd
  • commonjs
  • es6
  • none

You may also pass an AST to fromSource to avoid an internal parsing of the source.

When specifying a filename, using the sync or async API, you can also provide an options object with an alternative fs implementation used to read the source file with.

const myFs = GetFs();
const options = { fileSystem: myFs };

// Async
getModuleType('myscript.js', (error, type) => {
  console.log(type);
}, options);

// Sync
const type = getModuleType.sync('myscript.js', options);

CLI

Assumes a global install module-definition with npm install -g module-definition

module-definition filename

License

MIT

Readme

Keywords

none

Package Sidebar

Install

npm i module-definition

Weekly Downloads

1,151,036

Version

6.0.0

License

MIT

Unpacked Size

7.57 kB

Total Files

5

Last publish

Collaborators

  • pahen
  • xhmikosr
  • mrjoelkemp