@sammwy/milkshake
Version:
<p align="center"> <img src="https://raw.githubusercontent.com/sammwyy/milkshake/master/docs/milkshake.png" height="64px"> <h1 align="center">MilkShake</h1> <p align="center"> <b>Automatize Tasks, Compile, concatenate and minify automaticall
61 lines (54 loc) • 1.67 kB
JavaScript
const sass = require('node-sass');
const less = require("less");
const stylus = require('stylus')
const fs = require("fs");
exports.compileSass = (fileDir) => {
return new Promise ( (resolve, reject ) => {
sass.render({
file: fileDir,
indentedSyntax: true,
outputStyle : 'expanded'
}, function(err, result) {
if(err) return console.log(err);
let compiled = result.css.toString();
resolve(compiled);
});
})
}
exports.compileStylus = (dir, fileDir) => {
dir = [dir];
return new Promise ( (resolve, reject) => {
fs.readFile(fileDir, (err, data) => {
stylus(data.toString())
.set("paths", dir)
.set("include css", true)
.render((err, css) => {
if (err) {
console.error(err);
resolve(null);
}
resolve(css);
})
});
});
}
exports.compileLess = (dir, fileDir) => {
return new Promise ( (resolve, reject) => {
fs.readFile(fileDir, (err, data) => {
if (err) {
console.error(err);
resolve(css);
return;
}
less.render(data.toString(), {
compress: true,
paths: dir
}, (e, css) => {
if (e) {
console.error(e);
}
resolve(css);
})
})
})
}