diff options
Diffstat (limited to 'js/dojo-1.7.2/dojox/mobile/themes/common/compile.js')
| -rw-r--r-- | js/dojo-1.7.2/dojox/mobile/themes/common/compile.js | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/js/dojo-1.7.2/dojox/mobile/themes/common/compile.js b/js/dojo-1.7.2/dojox/mobile/themes/common/compile.js new file mode 100644 index 0000000..159d06b --- /dev/null +++ b/js/dojo-1.7.2/dojox/mobile/themes/common/compile.js @@ -0,0 +1,42 @@ +// load libraries +var fs = require("fs"); +var path = require("path"); +var less = require("less"); + +// collect files +var folders = ["../android", "../blackberry", "../iphone", "../custom"]; +var files = []; +folders.forEach(function(folder){ + files = files.concat(fs.readdirSync(folder).map(function(file){ + return folder + "/" + file; + })); +}); +files = files.filter(function(file){ + return file && /\.less$/.test(file) && !/variables\.less$/.test(file); +}); + +// compile files +files.forEach(function(file){ + console.log("compiling " + file); + fs.readFile(file, "utf-8", function(error, data){ + if(error){ + console.error(error.message); + process.exit(1); + } + var parser = new(less.Parser)({paths: [path.dirname(file)], filename: file, optimization: 1}); + parser.parse(data, function(error, tree){ + if(error){ + less.writeError(error); + process.exit(1); + } + try{ + var css = tree.toCSS({compress: false}); + var fd = fs.openSync(file.replace(".less", ".css"), "w"); + fs.writeSync(fd, css, 0, "utf-8"); + }catch(error){ + less.writeError(error); + process.exit(2); + } + }); + }); +}); |
