# All files / src/webpack/plugins dynamic-import-webpack.js

100% Statements 7/7
100% Branches 0/0
100% Functions 1/1
100% Lines 6/6

Press n or j to go to the next uncovered block, b, p or k for the previous block.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    192x
    2x

    2x

    2x

    38x

    38x

     const template = require("babel-template");
    const syntax =  require("babel-plugin-syntax-dynamic-import");

    const buildImport = template(`
      require(SOURCE)
    `);

    module.exports = () => ({
      inherits: syntax,

      visitor: {
        Import(path) {
          const newImport = buildImport({
            SOURCE: path.parentPath.node.arguments,
          });
          path.parentPath.replaceWith(newImport);
        },
      },
    });