Socket
Socket
Sign inDemoInstall

broccoli-less-single

Package Overview
Dependencies
Maintainers
2
Versions
20
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

broccoli-less-single - npm Package Compare versions

Comparing version 0.3.0 to 0.4.0

47

index.js

@@ -7,17 +7,8 @@ var fs = require('fs')

var less = require('less')
var _ = require('lodash')
var merge = require('lodash-node/modern/object/merge')
var RSVP = require('rsvp');
var writeFile = RSVP.denodeify(fs.writeFile);
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;
module.exports = LessCompiler;
LessCompiler.prototype = Object.create(CachingWriter.prototype)

@@ -59,28 +50,22 @@ LessCompiler.prototype.constructor = LessCompiler

_.merge(lessOptions, this.lessOptions)
merge(lessOptions, this.lessOptions)
lessOptions.paths = [path.dirname(lessOptions.filename)].concat(lessOptions.paths);
data = fs.readFileSync(lessOptions.filename, 'utf8');
return new RSVP.Promise(function(resolve, reject) {
return less.render(data, lessOptions).
catch(function(err) {
less.writeError(err, lessOptions);
throw err;
}).
then(function (output) {
var fileWriterPromises = [writeFile(destFile, output.css, { encoding: 'utf8' }) ];
var sourceMapURL = lessOptions.sourceMap && lessOptions.sourceMap.sourceMapURL;
less.render(data, lessOptions).then(function (output) {
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' }) );
fileWriterPromises.push( writeFile(destDir + '/' + sourceMapURL, output.map, { encoding: 'utf8' }) );
}
RSVP.all(fileWriterPromises).then(function() {
return resolve(output);
}, function(err) {
return reject(err);
});
}, function (err) {
less.writeError(err, lessOptions);
reject(err);
});
});
return RSVP.Promise.all(fileWriterPromises);
})
}
{
"name": "broccoli-less-single",
"description": "Single-file-output LESS compiler for Broccoli",
"version": "0.3.0",
"version": "0.4.0",
"author": {

@@ -35,11 +35,12 @@ "name": "Gabriel Grant",

"scripts": {
"test": "mocha test/runner.js --reporter spec"
"test": "mocha test/runner.js --reporter spec",
"test:debug": "mocha debug test/runner.js --reporter spec"
},
"dependencies": {
"mkdirp": "^0.5.0",
"lodash": "^2.4.1",
"broccoli-caching-writer": "^0.5.4",
"include-path-searcher": "^0.1.0",
"less": "^2.5.0",
"rsvp": "^3.0.17",
"broccoli-caching-writer": "^0.5.4"
"lodash-node": "^3.8.0",
"mkdirp": "^0.5.0",
"rsvp": "^3.0.17"
},

@@ -53,4 +54,4 @@ "readmeFilename": "README.md",

"broccoli": "^0.13.3",
"mocha": "^2.2.1"
"mocha": "^2.2.4"
}
}

@@ -6,20 +6,19 @@ var path = require('path');

function compare (name, done, lessOptions) {
lessCompile('../less', name + '.less', name + '.css', lessOptions).then(function (result) {
function compare (name, lessOptions) {
return lessCompile('../less', name + '.less', name + '.css', lessOptions).then(function (result) {
assert.equal(result.css, read(path.join(expected, result.outputFile)));
done();
}).catch(done);
});
}
describe('lessCompiler', function () {
it('basic less preprocessing', function (done) {
compare('basic', done);
it('basic less preprocessing', function () {
return compare('basic');
});
it('import statements functioning', function (done) {
compare('import', done);
it('import statements functioning', function () {
return compare('import');
});
it('`lessOption` discovers paths', function (done) {
compare('paths', done, {
it('`lessOption` discovers paths', function () {
return compare('paths', {
paths: ['../less/branch']

@@ -26,0 +25,0 @@ });

@@ -17,11 +17,9 @@ 'use strict';

return new RSVP.Promise(function (resolve, reject) {
return new broccoli.Builder(less).build().then(function (results) {
resolve({
css: read(path.join(results.directory, outputFile)),
directory: results.directory,
outputFile: outputFile
});
});
return new broccoli.Builder(less).build().then(function (results) {
return {
css: read(path.join(results.directory, outputFile)),
directory: results.directory,
outputFile: outputFile
};
});
}
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc