How to use the webpack-chain function in webpack-chain

To help you get started, we’ve selected a few webpack-chain examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github bitcrowd / tickety-tick / webpack.common.js View on Github external
// Common build options for all browsers are set below. Browser-specific
// settings and overrides are defined in separate files, specifically:
//
// - entry
//   - popup entry point differs between web-extension browsers and safari
//   - content script differs between web-extension browsers and safari
//   - web-extension browsers include a background.js and options.js
// - output.path: we create separate output directories for each browser
// - plugins:
//   - copy:
//     - web-extension browsers add manifest.json
//     - safari adds Info.plist and Settings.plist
//   - options-html: web-extension browsers add options.html

const config = new Config();

config.context(__dirname);

config.output.filename('[name].js');

config.resolve.extensions
  .add('.js')
  .add('.jsx')
  .add('.json');

config.module.rule('js')
  .test(/\.jsx?$/)
  .exclude.add(/node_modules/).end()
  .use('babel').loader('babel-loader');

config.module.rule('css')
github lavas-project / lavas / packages / lavas-core-react / src / webpack.js View on Github external
async base(buildConfig = {}) {
        let {globals, build} = this.config;
        /* eslint-disable fecs-one-var-per-line */
        let {path, publicPath, filenames, babel, cssSourceMap, cssMinimize,
            cssExtract, jsSourceMap,
            alias: {base: baseAlias = {}},
            defines: {base: baseDefines = {}}
        } = Object.assign({}, build, buildConfig);
        /* eslint-enable fecs-one-var-per-line */

        let baseConfig = new WebpackChainConfig();

        // set output
        baseConfig.output
            .path(path)
            .publicPath(publicPath);

        // set extensions & alias
        baseConfig.resolve
            .extensions.add('.js').add('.jsx').add('.json');
        let aliasObject = Object.assign({
            '@': globals.rootDir,
            '$': join(globals.rootDir, '.lavas')
        }, baseAlias);
        Object.keys(aliasObject).forEach(aliasKey => {
            baseConfig.resolve.alias.set(aliasKey, aliasObject[aliasKey]);
        });
github lavas-project / lavas / packages / lavas-core-vue / core / webpack.js View on Github external
async base(buildConfig = {}) {
        let {globals, build} = this.config;
        /* eslint-disable fecs-one-var-per-line */
        let {path, publicPath, filenames, cssSourceMap, cssMinimize,
            cssExtract, jsSourceMap, babelOptions,
            alias: {base: baseAlias = {}},
            defines: {base: baseDefines = {}}
        } = Object.assign({}, build, buildConfig);
        /* eslint-enable fecs-one-var-per-line */

        let baseConfig = new WebpackChainConfig();

        // set output
        baseConfig.output
            .path(path)
            .publicPath(publicPath);

        // set extensions & alias
        baseConfig.resolve
            .extensions.add('.js').add('.vue').add('.json');
        let aliasObject = Object.assign({
            '@': globals.rootDir,
            '$': join(globals.rootDir, '.lavas')
        }, baseAlias);
        Object.keys(aliasObject).forEach(aliasKey => {
            baseConfig.resolve.alias.set(aliasKey, aliasObject[aliasKey]);
        });
github umijs / umi / packages / af-webpack / src / getWebpackConfig / index.js View on Github external
export default function(opts) {
  const { cwd } = opts || {};
  const isDev = opts.isDev || process.env.NODE_ENV === 'development';

  const webpackConfig = new Config();

  // mode
  webpackConfig.mode('development');

  // entry
  if (opts.entry) {
    // eslint-disable-next-line guard-for-in
    for (const key in opts.entry) {
      const entry = webpackConfig.entry(key);
      makeArray(opts.entry[key]).forEach(file => {
        entry.add(file);
      });
    }
  }

  // output
github noahehall / theBookOfNoah / node / webpack.base.js View on Github external
import path from 'path';
import clientConfig from './config/webpack/client';
import Config from 'webpack-chain';

let config = new Config();

import webpack from 'webpack';


export default function webpackBase(nconf) {
  config.context(path.resolve(__dirname, "src"))
  config.resolve.modules
    .add(__dirname)
    .add('node_modules')
    .add('src')
    .end()

  config.resolve.extensions
    .add('*')
    .add('.js')
    .add('.scss')
github noahehall / theBookOfNoah / web_apps / node / webpack.base.js View on Github external
import path from 'path';
import Config from 'webpack-chain';
import webpack from 'webpack';
import clientConfig from './config/webpack/client';

let config = new Config();
const filepath = path.resolve(__dirname, 'build');


export default function webpackBase(nconf) {
  config.context(path.resolve(__dirname, "src"))
  config.resolve.modules
    .add(__dirname)
    .add('node_modules')
    .add('src')
    .end()

  config.resolve.extensions
    .add('*')
    .add('.js')
    .add('.scss')
    .end()

webpack-chain

[![NPM version][npm-image]][npm-url] [![NPM downloads][npm-downloads]][npm-url] [![Build Status][travis-image]][travis-url]

MPL-2.0
Latest version published 4 years ago

Package Health Score

58 / 100
Full package analysis

Popular webpack-chain functions