Native Penguin Milk

    babel-plugin-module-rewrite

    0.2.0 • Public • Published

    babel-plugin-module-rewrite

    Version Build Status

    A babel plugin to rewrite module imports (and require) using a custom function

    Description

    You can supply a replace function to dynamically replace module paths when Babel traverses them.

    Usage

    Install the plugin

    $ npm install --save-dev babel babel-plugin-module-rewrite
    

    Specify the plugin in your .babelrc with the file that exports the replace function.

    {
      "plugins": [
        ["module-rewrite", { "replaceFunc": "./utils/replace-module-paths.js" }]
      ]
    }

    Let's say you want ~/moduleFile to be replaced to utils/moduleFile if the calling file is in utils, and common/moduleFile otherwise. So in your replace-module-paths.js, just export:

    export default function replaceImport(originalPath, callingFileName, options) {
        if(callingFileName.indexOf('/utils/') !== -1) {
            return originalPath.replace('~', 'utils');
        } else {
            return originalPath.replace('~', 'common');
        }
    }

    License

    MIT

    Install

    npm i babel-plugin-module-rewrite

    DownloadsWeekly Downloads

    2,419

    Version

    0.2.0

    License

    MIT

    Last publish

    Collaborators

    • liady