×

Welcome to TagMyCode

Please login or create account to add a snippet.
1
0
 
1
Language: Javascript
Posted by: Isaac Dettman
Added: Oct 31, 2016 7:45 PM
Views: 13
Build webpack using the node module API
  1. 'use strict';
  2.  
  3. const
  4.                 webpack = require('webpack'),
  5.                 uglify = require("uglifyjs"),
  6.                 path = require('path'),
  7.                 MemoryFS = require('memory-fs'),
  8.  
  9.                 BASE_PATHS = {
  10.                         RESOURCES: 'src/main/webapp/resources/',
  11.                         JS: this.RESOURCES + 'js/',
  12.                         CONTROLLERS: this.JS + 'controllers/',
  13.                 },
  14.  
  15.                 WEBPACK_CONFIGURATION = {
  16.                         entry: {
  17.                                 apps: path.join(__dirname, BASE_PATHS.CONTROLLERS + 'more/apps.js'),
  18.                                 gallery: path.join(__dirname, __dirname, BASE_PATHS.CONTROLLERS + 'photos/gallery.js')
  19.                         },
  20.                         output: {
  21.  
  22.                                 pathinfo: false,
  23.                                 libraryTarget: 'umd',
  24.  
  25.                                 path: path.join(__dirname, BASE_PATHS.RESOURCES, 'bundle'),
  26.                                 filename: '[name].bundle.js'
  27.                         },
  28.                         devtool: 'source-map'
  29.                 };
  30.  
  31.  
  32. const fs = new MemoryFS();
  33.  
  34. /**
  35.  * @type {Compiler}
  36.  */
  37. const compiler = webpack(WEBPACK_CONFIGURATION);
  38. compiler.outputFileSystem = fs;
  39.  
  40. compiler.run((error, stats) =>
  41. {
  42.         console.log('webpack: bundle complete');
  43.         console.assert((error == null), error);
  44.         console.log('fs:', fs);
  45. });
  46.  
  47.  
  48.