A tiny (349B) utility to rewrite `import` statements as `require()`s; via RegExp
npm install rewrite-importsA tiny (349B) utility to transform various import statements into require() calls, using regular expressions.
> Looking for something _more_ backwards compatible?
> Check out v1.4.0 which does not rely on destructured assignment!
This module returns a string and does not provide a runtime nor does it evaluate the output.
> :bulb: For this behavior, use rewrite-module or check out @taskr/esnext for an example.
The output requires a JavaScript runtime that supports require calls and destructuring assignments with Objects.
* At least Node 6.x is required
* Or, for browsers:
* A require shim is always needed – see fn
* Ensure your target browsers support destructuring – see chart
If you have false positives, you may want to use an AST to find actual import statements before transformation.
> Check out an example implementation.
```
$ npm install --save rewrite-imports
`js
import { rewrite } from 'rewrite-imports';
// or
const { rewrite } = require('rewrite-imports');
rewrite(import foo from '../bar');
//=> const foo = require('../bar');
rewrite(import { foo } from 'bar');
//=> const { foo } = require('bar');
rewrite(import * as path from 'path';);
//=> const path = require('path');
rewrite(import { foo as bar, baz as bat, lol } from 'quz';);
//=> const { foo:bar, baz:bat, lol } = require('quz');
rewrite(import foobar, { foo as FOO, bar } from 'foobar';);`
//=> const foobar = require('foobar');
//=> const { foo:FOO, bar } = foobar;
#### input
Type: String
The import statement(s) or the code containing import statement(s).
> See MDN for valid import statement syntax.
#### fn
Type: String'require'
Default:
The require-like function name to use. Defaults to require but you may choose to pass the name of a custom shim function; for example, __webpack_require__` may work for webpack in the browser.
MIT © Luke Edwards