This package has been deprecated

Author message:

This package is deprecated. See: https://neutrinojs.org/migration-guide/#neutrino-v7-to-v8

neutrino-middleware-compile-loader

7.4.0 • Public • Published

Neutrino Compile Loader Middleware

neutrino-middleware-compile-loader is Neutrino middleware for compiling source code with Babel.

NPM version NPM downloads Join the Neutrino community on Spectrum

Requirements

  • Node.js v6.10+
  • Yarn or npm client
  • Neutrino v7

Installation

neutrino-middleware-compile-loader can be installed via the Yarn or npm clients.

Yarn

❯ yarn add neutrino-middleware-compile-loader

npm

❯ npm install --save neutrino-middleware-compile-loader

Usage

neutrino-middleware-compile-loader can be consumed from the Neutrino API, middleware, or presets. Require this package and plug it into Neutrino:

// Using function middleware format
 
const compile = require('neutrino-middleware-compile-loader');
 
neutrino.use(compile, {
  include: [],
  exclude: [],
  babel: {}
});
// Using object or array middleware format
 
module.exports = {
  use: [
    ['neutrino-middleware-compile-loader', {
      include: [],
      exclude: [],
      babel: {}
    }]
  ]
};
  • include should be an array of paths to include in the compilation. Maps to Webpack's Rule.include
  • exclude should be an array of paths to exclude from the compilation. Maps to Webpack's Rule.exclude
  • babel is a Babel configuration object, consumed by babel-loader. Use this to set properties such as presets, plugins, and env.

Merging Babel Configuration

This package also exposes a function for merging Babel configurations. This comes from the babel-merge package.

const { merge } = require('neutrino-middleware-compile-loader');
 
const together = merge(
  {
    presets: [
      ['babel-preset-env', {
        targets: {
          browsers: ['latest 1 Chrome']
        }
      }]
    ]
  },
  {
    presets: [
      ['babel-preset-env', {
        targets: {
          browsers: ['latest 1 Firefox']
        }
      }]
    ]
  }
);
 
console.log(together);
 
// Logs:
{
  presets: [
    ['babel-preset-env', {
      targets: {
        browsers: [
          'latest 1 Chrome',
          'latest 1 Firefox'
        ]
      }
    }]
  ]
}

Customization

neutrino-middleware-compile-loader creates some conventions to make overriding the configuration easier once you are ready to make changes.

Rules

The following is a list of rules and their identifiers which can be overridden:

Name Description Environments and Commands
compile Compiles JS and JSX files from the src directory using Babel. Contains a single loader named babel. all

Contributing

This middleware is part of the neutrino-dev repository, a monorepo containing all resources for developing Neutrino and its core presets and middleware. Follow the contributing guide for details.

Package Sidebar

Install

npm i neutrino-middleware-compile-loader

Weekly Downloads

25

Version

7.4.0

License

MPL-2.0

Last publish

Collaborators

  • edmorley
  • eliperelman
  • helfi92
  • timkelty