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

Package detail

replace-immediate-require-call

bendrucker14MIT1.0.1

Replace immediate calls to a required function

require, call, immediate, replacement, ast

readme

replace-immediate-require-call Build Status

Replace immediate calls to a required function

Install

$ npm install --save replace-immediate-require-call

Usage

var replaceImmediateRequireCall = require('replace-immediate-require-call');

replaceImmediateRequireCall('require("foo")()', {
  foo: function () {
    return '"foo"'
  }
});
//=> replace require("foo")() with "foo"

API

replaceImmediateRequireCall(code, replacements) -> string

code

Required
Type: string

Your JavaScript.

replacements

Required
Type: object

An object with keys corresponding to the expecting module ids (strings passed to required). Values are functions that receive the argument nodes to the immediate require call.

The arguments are passed directly as AST nodes, not their string values.

var code = 'require("foo")(bar, "baz")'
var replaced = replaceImmediateRequireCall(code, {
  foo: function (node1, node2) {
    return [node1.type, node2.type].join(', ')
  }
})
assert.equal(replaced, 'Identifier, Literal')

License

MIT © Ben Drucker