broccoli-less-single
Advanced tools
Comparing version 0.2.0 to 0.3.0
50
index.js
@@ -10,2 +10,13 @@ var fs = require('fs') | ||
function writeFilePromise(filename, data, options) { | ||
return new RSVP.Promise(function(resolve, reject) { | ||
fs.writeFile(filename, data, options, function (err) { | ||
if (err) { | ||
return reject(err); | ||
} | ||
return resolve(data); | ||
}); | ||
}); | ||
} | ||
module.exports = LessCompiler; | ||
@@ -22,6 +33,16 @@ LessCompiler.prototype = Object.create(CachingWriter.prototype) | ||
options = options || {}; | ||
if (options.sourceMap) { | ||
if (typeof options.sourceMap !== 'object') { | ||
options.sourceMap = {}; | ||
} | ||
if (!options.sourceMap.sourceMapURL) { | ||
options.sourceMap.sourceMapURL = outputFile + '.map'; | ||
} | ||
} | ||
this.sourceTrees = sourceTrees | ||
this.inputFile = inputFile | ||
this.outputFile = outputFile | ||
this.lessOptions = options || {} | ||
this.lessOptions = options | ||
} | ||
@@ -45,19 +66,22 @@ | ||
less.render(data, lessOptions) | ||
.then(function (output) { | ||
less.render(data, lessOptions).then(function (output) { | ||
fs.writeFile(destFile, output.css, { encoding: 'utf8' }, function (err) { | ||
if (err) { | ||
return reject(err); | ||
} | ||
var fileWriterPromises = [ writeFilePromise(destFile, output.css, { encoding: 'utf8' }) ]; | ||
var sourceMapURL = lessOptions.sourceMap && lessOptions.sourceMap.sourceMapURL; | ||
if (sourceMapURL) { | ||
fileWriterPromises.push( writeFilePromise(destDir + '/' + sourceMapURL, output.map, { encoding: 'utf8' }) ); | ||
} | ||
return resolve(output); | ||
}); | ||
}, function (err) { | ||
less.writeError(err, lessOptions); | ||
reject(err); | ||
RSVP.all(fileWriterPromises).then(function() { | ||
return resolve(output); | ||
}, function(err) { | ||
return reject(err); | ||
}); | ||
}, function (err) { | ||
less.writeError(err, lessOptions); | ||
reject(err); | ||
}); | ||
}); | ||
} |
{ | ||
"name": "broccoli-less-single", | ||
"description": "Single-file-output LESS compiler for Broccoli", | ||
"version": "0.2.0", | ||
"version": "0.3.0", | ||
"author": { | ||
@@ -13,6 +13,8 @@ "name": "Gabriel Grant", | ||
"email": "joliss42@gmail.com" | ||
}, { | ||
}, | ||
{ | ||
"name": "Jason Mitchell", | ||
"email": "jason.mitchell.w@gmail.com" | ||
}, { | ||
}, | ||
{ | ||
"name": "Eugene Song", | ||
@@ -33,2 +35,5 @@ "email": "tilleps@gmail.com" | ||
], | ||
"scripts": { | ||
"test": "mocha test/runner.js --reporter spec" | ||
}, | ||
"dependencies": { | ||
@@ -38,4 +43,4 @@ "mkdirp": "^0.5.0", | ||
"include-path-searcher": "^0.1.0", | ||
"less": "^2.1.1", | ||
"rsvp": "^3.0.15", | ||
"less": "^2.5.0", | ||
"rsvp": "^3.0.17", | ||
"broccoli-caching-writer": "^0.5.4" | ||
@@ -47,3 +52,7 @@ }, | ||
}, | ||
"homepage": "https://github.com/gabrielgrant/broccoli-less-single" | ||
"homepage": "https://github.com/gabrielgrant/broccoli-less-single", | ||
"devDependencies": { | ||
"broccoli": "^0.13.3", | ||
"mocha": "^2.2.1" | ||
} | ||
} |
# broccoli-less-single | ||
[![npm Version][npm-badge]][npm] | ||
[![Build Status][travis-badge]][travis] | ||
@@ -84,1 +86,5 @@ The broccoli-less-single plugin compiles `.less` files with | ||
``` | ||
[npm]: https://www.npmjs.org/package/broccoli-less-single | ||
[npm-badge]: https://img.shields.io/npm/v/broccoli-less-single.svg?style=flat-square | ||
[travis]: https://travis-ci.org/gabrielgrant/broccoli-less-single | ||
[travis-badge]: https://img.shields.io/travis/gabrielgrant/broccoli-less-single.svg?branch=master&style=flat-square |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
10046
17
148
90
0
2
2
Updatedless@^2.5.0
Updatedrsvp@^3.0.17