webpack-post-compile-plugin

1.2.3 • Public • Published

webpack-post-compile-plugin Build Status codecov.io

A webpack post compile plugin. It is used to include post compile modules in node_modules.

Install

npm i webpack-post-compile-plugin --save-dev

Usage

const PostCompilePlugin = require('webpack-post-compile-plugin')
const path = require('path')

module.exports = {
  // ...
  module: {
    rules: [
      // ...
      {
        test: /\.js$/,
        loader: 'babel-loader',
        include: [path.resolve(__dirname, './')]
        // eg: {"compileDependencies": ["cube-ui"]} // package.json
        // the current rule's loader will process node_modules/cube-ui/**/*.js too
      }
      // ...
    ]
  },
  plugins: [
    new PostCompilePlugin()
  ]
}

Config

And if you can control all the packages which you want to post compile, you can just add postCompile: true to the packages package.json:

{
  "name": "your-one-pkg",
  // ...
  "postCompile": true
  // ...
}

Or you can add compileDependencies to your application package.json:

{
  "name": "your-application",
  // ...
  "compileDependencies": ["xx-pkg"]
}

After 1.0.0+, you can alse use postCompile like this:

{
  "name": "your-one-pkg",
  // ...
  "postCompile": "src/*.js"
  // ...
}
{
  "name": "your-one-pkg",
  // ...
  "postCompile": [
    "*.js"
  ]
  // ...
}

1.0.0+ postCompile uses micromatch to match the post compile files.

Options

new PostCompilePlugin({
  dependenciesKey: 'myCompileDependencies',
  compileDependencies: ['a', 'b'],
  compilePaths: ['node_module/@test']
})
  • dependenciesKey {String} default 'compileDependencies', dependencies key in package.json, it is used to find and include post compile node modules.

  • compileDependencies {Array} default undefined, application init post compile node modules, if it is undefined then the plugin will get dependenciesKey value or dependencies keys value in package.json as the init application's post complie node modules.

  • sourceDir {String} 0.5.1+ default src, application source directory, if your application's source directory is lib you should set this config to lib.

  • compilePaths {Array} 1.1.0+ default undefined, a dependencies matching any of these conditions will be treated as post compile modules.

Package Sidebar

Install

npm i webpack-post-compile-plugin

Weekly Downloads

112

Version

1.2.3

License

MIT

Unpacked Size

13.3 kB

Total Files

8

Last publish

Collaborators

  • dolymood
  • commanderxl
  • candyj