UNPKG

webpack-config-vacuumlabs

Version:
55 lines (38 loc) 3.03 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = makeConfig; var _isomorphic = _interopRequireDefault(require("./isomorphic")); var styles = _interopRequireWildcard(require("./styles")); var _assetsLoaders = _interopRequireDefault(require("./assetsLoaders")); var _babelLoader = _interopRequireDefault(require("./babelLoader")); var _polyfills = _interopRequireDefault(require("./polyfills")); var devtools = _interopRequireWildcard(require("./devtools")); var _globals = _interopRequireDefault(require("./globals")); var _optimize = _interopRequireDefault(require("./optimize")); var _output = _interopRequireDefault(require("./output")); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread(); } function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance"); } function _iterableToArray(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); } function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } } function makeConfig(options) { return { // the cache seems to be in-memory only: https://webpack.github.io/docs/configuration.html#cache cache: options.useDevServer, // cheap-module-eval-source-map, because we want original source, but we don't // care about columns, which makes this devtool faster than eval-source-map. // http://webpack.github.io/docs/configuration.html#devtool devtool: options.env === 'development' ? 'cheap-module-eval-source-map' : '', entry: { app: [].concat(_toConsumableArray(_polyfills["default"]), _toConsumableArray(devtools.entry(options)), [options.entry]) }, module: { rules: [].concat(_toConsumableArray(_assetsLoaders["default"]), [(0, _babelLoader["default"])(options)], _toConsumableArray(devtools.loaders(options)), _toConsumableArray(styles.loaders(options))) }, output: (0, _output["default"])(options), plugins: [].concat(_toConsumableArray((0, _globals["default"])(options)), _toConsumableArray(devtools.plugins(options)), _toConsumableArray(styles.plugins(options)), _toConsumableArray((0, _optimize["default"])(options)), _toConsumableArray((0, _isomorphic["default"])(options))) }; }