1 | var _ = require("lodash")
|
2 | , Base = require("./base")
|
3 | , config = require("./config")
|
4 | , excludes = require("./exclude_bundle")
|
5 | , includes = require("./include_bundle");
|
6 |
|
7 | module.exports = function(minify, input, server){
|
8 |
|
9 | var files = (_.isUndefined(input)) ? config.get("files") : input;
|
10 | files = (_.isArray(files)) ? files : [files];
|
11 |
|
12 | var bundle = Base(files, minify)
|
13 | .addTransforms()
|
14 |
|
15 | var factor = false;
|
16 | var obj = {
|
17 | build:function(watch){
|
18 | bundle.setFileStream(config.get("outputFile"), server)
|
19 |
|
20 | if(watch){
|
21 | bundle.watch(factor)
|
22 | } else {
|
23 | bundle.build(factor)
|
24 | }
|
25 | }
|
26 | , setFactor(f){
|
27 | factor = f;
|
28 | if(factor) bundle.setFileStream(config.get("shared"), server)
|
29 | return obj;
|
30 | }
|
31 | , setOutput(output){
|
32 | if(output){
|
33 | bundle.setFileStream(output, server);
|
34 | }
|
35 |
|
36 | return obj;
|
37 | }
|
38 | , setVendors:function(v){
|
39 | if(v){
|
40 | bundle.setFileStream(config.get("vendor"), server)
|
41 | includes(bundle.getBundle());
|
42 | } else {
|
43 | excludes(bundle.getBundle());
|
44 | }
|
45 |
|
46 | return obj;
|
47 | }
|
48 | }
|
49 |
|
50 | return obj;
|
51 | }
|