1 | #! /usr/bin/env node
|
2 |
|
3 | var _ = require('lodash')
|
4 | , config = require("../plugin/config")
|
5 | , es = require("event-stream")
|
6 | , fs = require('fs')
|
7 | , read = require('@djforth/ap_utils').read
|
8 | , path = require('path')
|
9 | , program = require('commander')
|
10 | , buildSprites = require("../plugin/build_sprites")
|
11 | , storeFiles = require("../plugin/store");
|
12 |
|
13 | program
|
14 | .version('0.0.1')
|
15 | .option('-e, --ext <list>', 'exts to process')
|
16 | .option('-i, --input <folder>', 'input folder')
|
17 | .option('-o, --output <folder>', 'output folder')
|
18 | .option('-co, --cssout <folder>', 'css output folder')
|
19 | .option('-c, --css', 'build css')
|
20 | .option('-s, --scss', 'build scss')
|
21 | .parse(process.argv);
|
22 |
|
23 | var manageFiles = storeFiles();
|
24 | var options = ["ext", "input", "output", "cssout", "css", "scss"]
|
25 |
|
26 | options.forEach(function(op){
|
27 | if(!_.isEmpty(program[op]) || program[op]){
|
28 | config.set(op, program[op])
|
29 | }
|
30 | });
|
31 |
|
32 |
|
33 |
|
34 | var stream = read(config.get("input"), config.get("ext") )
|
35 | .on("end", function(d){ buildSprites(manageFiles)})
|
36 | .pipe(es.mapSync(function (entry) {
|
37 | var ext = path.extname(entry.path);
|
38 | if(entry.path.match(/(.DS_Store$)/)){
|
39 | return null
|
40 | }
|
41 | return { path: entry.fullPath, dir: entry.parentDir };
|
42 | }))
|
43 | .pipe(es.map(function(d){
|
44 |
|
45 | if(!_.isNull(d)) manageFiles(d);
|
46 | })) |
\ | No newline at end of file |