| 'use strict'; |
| |
| var _ = require('lodash'), |
| async = require('async'), |
| path = require('path'), |
| webpack = require('webpack'); |
| |
| var file = require('../common/file'); |
| |
| var basePath = path.join(__dirname, '..', '..'), |
| distPath = path.join(basePath, 'dist'), |
| fpPath = path.join(basePath, 'fp'), |
| filename = 'lodash.fp.js'; |
| |
| var fpConfig = { |
| 'entry': path.join(fpPath, '_convertBrowser.js'), |
| 'output': { |
| 'path': distPath, |
| 'filename': filename, |
| 'library': 'fp', |
| 'libraryTarget': 'umd' |
| }, |
| 'plugins': [ |
| new webpack.optimize.OccurenceOrderPlugin, |
| new webpack.optimize.DedupePlugin |
| ] |
| }; |
| |
| var mappingConfig = { |
| 'entry': path.join(fpPath, '_mapping.js'), |
| 'output': { |
| 'path': distPath, |
| 'filename': 'mapping.fp.js', |
| 'library': 'mapping', |
| 'libraryTarget': 'umd' |
| } |
| }; |
| |
| /*----------------------------------------------------------------------------*/ |
| |
| function onComplete(error) { |
| if (error) { |
| throw error; |
| } |
| } |
| |
| function build() { |
| async.series([ |
| _.partial(webpack, mappingConfig), |
| _.partial(webpack, fpConfig), |
| file.min(path.join(distPath, filename)) |
| ], onComplete); |
| } |
| |
| build(); |