mirror of
https://github.com/wu736139669/Monkey-Test.git
synced 2026-08-05 05:55:46 +00:00
56 lines
1.3 KiB
JavaScript
56 lines
1.3 KiB
JavaScript
"use strict";
|
|
|
|
module.exports = function (grunt) {
|
|
var pkg = require("../package.json");
|
|
pkg.name = pkg.name.toLowerCase().replace(
|
|
/^postcss-/,
|
|
""
|
|
).replace(
|
|
/-(.)/g,
|
|
function (m, c) {
|
|
return c.toUpperCase();
|
|
}
|
|
);
|
|
|
|
grunt.registerMultiTask(pkg.name, pkg.description, function () {
|
|
var fs = require("fs-extra");
|
|
var postcss = require("postcss");
|
|
|
|
var options = this.options({});
|
|
|
|
this.files.forEach(function (file) {
|
|
if (file.src.length !== 1) {
|
|
grunt.fail.warn("This Grunt plugin does not support multiple source files.");
|
|
}
|
|
|
|
var src = file.src[0];
|
|
var dest = file.dest;
|
|
|
|
if (!fs.existsSync(src)) {
|
|
grunt.log.warn('Source file "' + src + '" not found.');
|
|
|
|
return;
|
|
}
|
|
|
|
if (options.map) {
|
|
options.from = src;
|
|
options.to = dest;
|
|
}
|
|
|
|
var processed = postcss().use(
|
|
require("../index")()
|
|
).process(
|
|
fs.readFileSync(src, "utf8"), options
|
|
);
|
|
fs.outputFileSync(dest, processed.css);
|
|
grunt.log.writeln('File "' + dest + '" created.');
|
|
|
|
if (processed.map) {
|
|
var map = dest + ".map";
|
|
fs.outputFileSync(map, processed.map);
|
|
grunt.log.writeln('File "' + map + '" created.');
|
|
}
|
|
});
|
|
});
|
|
};
|