broccoli-less-single v2.0.1
broccoli-less-single
The broccoli-less-single plugin compiles .less
files with
less.js.
This plugin is designed to compile a single, primary input file
into a single output file, with a node of @import
d dependencies. This
differs from broccoli-less,
which compiles each .less
file individually into a .css
file and doesn't
support @import
s or a single output file depending on multiple inputs.
This code is based heavily on broccoli-sass
Installation
npm install --save-dev broccoli-less-single
Usage
const compileLess = require('broccoli-less-single');
const outputNode = compileLess(inputNodes, inputFile, outputFile, options)
inputNodes
: An array of nodes that act as the include paths for less. If you have a single node, pass[node]
.inputFile
: Relative path of the main.less
file to compile. This file must exist in one of theinputNodes
.outputFile
: Relative path of the output CSS file.options
: A hash of options for less + caching options.
Example
var appCss = compileLess(sourceNodes, 'myapp/app.less', 'assets/app.css')
@import
-Example
/* file: sub.less */
h1 {
font-size: 200em;
}
/* =================== */
/* file: app.less */
@import "sub.less";
html, body {
margin: 20px;
}
Bootstrap-Example
A sample project using bootstrap and broccoli-less-single can be found here.
// Brocfile.js
const Funnel = require('broccoli-funnel');
const compileLess = require('broccoli-less-single');
const mergeTrees = require('broccoli-merge-trees');
const appTree = funnel('app');
const lessTree = compileLess(appTree, 'styles/app.less', 'assets/app.css', {
paths: ['.', 'bower_components/bootstrap/less'],
// Note: if you want to cache to avoid possibly expensive rebuilds
cacheInclude: [/.*\.(css|less)$/],
cacheExclude: [],
});
module.exports = mergeTrees([appTree, lessTree]);
4 years ago
5 years ago
5 years ago
6 years ago
6 years ago
7 years ago
7 years ago
8 years ago
9 years ago
9 years ago
9 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago