mirror of
https://github.com/less/less.js.git
synced 2026-01-22 13:48:03 -05:00
refactor of module system. Things work properly now, and it's all much cleaner.
This commit is contained in:
26
lib/less.js
26
lib/less.js
@@ -1,2 +1,24 @@
|
||||
less = exports || {};
|
||||
less.version = [2, 0, 0];
|
||||
var path = require('path');
|
||||
|
||||
require.paths.unshift(__dirname);
|
||||
|
||||
var less = {
|
||||
version: [2, 0, 0],
|
||||
parser: require('less/parser').parser,
|
||||
tree: require('less/tree')
|
||||
};
|
||||
|
||||
['color', 'directive', 'operation', 'dimension',
|
||||
'keyword', 'variable', 'ruleset', 'element',
|
||||
'selector', 'quoted', 'expression', 'rule',
|
||||
'call', 'url', 'alpha',
|
||||
'mixin', 'comment'
|
||||
].forEach(function (n) {
|
||||
require(path.join('less', 'tree', n));
|
||||
});
|
||||
|
||||
require('less/functions');
|
||||
require('ext/array');
|
||||
|
||||
process.mixin(exports, less);
|
||||
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
var path = require('path');
|
||||
|
||||
require.paths.unshift(path.join(__dirname, '..', '..'));
|
||||
|
||||
var less = require('less');
|
||||
|
||||
process.mixin(less, require('less/parser'));
|
||||
process.mixin(less.tree, require('less/tree'));
|
||||
process.mixin(exports, less);
|
||||
|
||||
require('ext/array');
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
if (typeof(window) === 'undefined') { var tree = require(require('path').join(__dirname, '..', 'less', 'tree')); }
|
||||
if (typeof(require) !== 'undefined') { var tree = require('less/tree') }
|
||||
|
||||
tree.functions = {
|
||||
rgb: function (r, g, b) {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
if (typeof(window) === 'undefined') {
|
||||
if (typeof(require) !== 'undefined') {
|
||||
var less = exports || {};
|
||||
var tree = require(require('path').join(__dirname, '..', 'less', 'tree'));
|
||||
var tree = require('less/tree');
|
||||
}
|
||||
//
|
||||
// less.js - parser
|
||||
|
||||
@@ -1,19 +1,5 @@
|
||||
var path = require('path');
|
||||
var tree = exports;
|
||||
|
||||
require.paths.unshift(__dirname);
|
||||
|
||||
['color', 'directive', 'operation', 'dimension',
|
||||
'keyword', 'variable', 'ruleset', 'element',
|
||||
'selector', 'quoted', 'expression', 'rule',
|
||||
'call', 'url', 'alpha',
|
||||
'mixin', 'comment'
|
||||
].forEach(function (n) {
|
||||
process.mixin(tree, require(path.join('less', 'tree', n)));
|
||||
});
|
||||
|
||||
require('functions');
|
||||
|
||||
tree.operate = function (op, a, b) {
|
||||
switch (op) {
|
||||
case '+': return a + b;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
if (typeof(window) === 'undefined') { var tree = require(require('path').join(__dirname, '..', '..', 'less', 'tree')); }
|
||||
if (typeof(require) !== 'undefined') { var tree = require('less/tree') }
|
||||
|
||||
tree.Alpha = function Alpha(val) {
|
||||
this.value = val;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
if (typeof(window) === 'undefined') { var tree = require(require('path').join(__dirname, '..', '..', 'less', 'tree')); }
|
||||
if (typeof(require) !== 'undefined') { var tree = require('less/tree') }
|
||||
|
||||
tree.Call = function Call(name, args) {
|
||||
this.name = name;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
if (typeof(window) === 'undefined') { var tree = require(require('path').join(__dirname, '..', '..', 'less', 'tree')); }
|
||||
if (typeof(require) !== 'undefined') { var tree = require('less/tree') }
|
||||
//
|
||||
// RGB Colors - #ff0014, #eee
|
||||
//
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
if (typeof(window) === 'undefined') { var tree = require(require('path').join(__dirname, '..', '..', 'less', 'tree')); }
|
||||
if (typeof(require) !== 'undefined') { var tree = require('less/tree') }
|
||||
|
||||
tree.Comment = function Comment(value) {
|
||||
this.value = value;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
if (typeof(window) === 'undefined') { var tree = require(require('path').join(__dirname, '..', '..', 'less', 'tree')); }
|
||||
if (typeof(require) !== 'undefined') { var tree = require('less/tree') }
|
||||
|
||||
tree.Dimension = function Dimension(value, unit) {
|
||||
this.value = parseFloat(value);
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
if (typeof(window) === 'undefined') { var tree = require(require('path').join(__dirname, '..', '..', 'less', 'tree')); }
|
||||
if (typeof(require) !== 'undefined') { var tree = require('less/tree') }
|
||||
|
||||
tree.Directive = function Directive(name, value) {
|
||||
this.name = name;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
if (typeof(window) === 'undefined') { var tree = require(require('path').join(__dirname, '..', '..', 'less', 'tree')); }
|
||||
if (typeof(require) !== 'undefined') { var tree = require('less/tree') }
|
||||
|
||||
tree.Element = function Element(combinator, value) {
|
||||
this.combinator = combinator instanceof tree.Combinator ?
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
if (typeof(window) === 'undefined') { var tree = require(require('path').join(__dirname, '..', '..', 'less', 'tree')); }
|
||||
if (typeof(require) !== 'undefined') { var tree = require('less/tree') }
|
||||
|
||||
tree.Expression = function Expression(value) { this.value = value };
|
||||
tree.Expression.prototype = {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
if (typeof(window) === 'undefined') { var tree = require(require('path').join(__dirname, '..', '..', 'less', 'tree')); }
|
||||
if (typeof(require) !== 'undefined') { var tree = require('less/tree') }
|
||||
|
||||
tree.Keyword = function Keyword(value) { this.value = value };
|
||||
tree.Keyword.prototype = {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
if (typeof(window) === 'undefined') { var tree = require(require('path').join(__dirname, '..', '..', 'less', 'tree')); }
|
||||
if (typeof(require) !== 'undefined') { var tree = require('less/tree') }
|
||||
|
||||
tree.mixin = {};
|
||||
tree.mixin.Call = function MixinCall(elements, args) {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
if (typeof(window) === 'undefined') { var tree = require(require('path').join(__dirname, '..', '..', 'less', 'tree')); }
|
||||
if (typeof(require) !== 'undefined') { var tree = require('less/tree') }
|
||||
|
||||
tree.Operation = function Operation(op, operands) {
|
||||
this.op = op.trim();
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
if (typeof(window) === 'undefined') { var tree = require(require('path').join(__dirname, '..', '..', 'less', 'tree')); }
|
||||
if (typeof(require) !== 'undefined') { var tree = require('less/tree') }
|
||||
|
||||
tree.Quoted = function Quoted(value, content) {
|
||||
this.value = value;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
if (typeof(window) === 'undefined') { var tree = require(require('path').join(__dirname, '..', '..', 'less', 'tree')); }
|
||||
if (typeof(require) !== 'undefined') { var tree = require('less/tree') }
|
||||
|
||||
tree.Rule = function Rule(name, value) {
|
||||
this.name = name;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
if (typeof(window) === 'undefined') { var tree = require(require('path').join(__dirname, '..', '..', 'less', 'tree')); }
|
||||
if (typeof(require) !== 'undefined') { var tree = require('less/tree') }
|
||||
|
||||
tree.Ruleset = function Ruleset(selectors, rules) {
|
||||
this.selectors = selectors;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
if (typeof(window) === 'undefined') { var tree = require(require('path').join(__dirname, '..', '..', 'less', 'tree')); }
|
||||
if (typeof(require) !== 'undefined') { var tree = require('less/tree') }
|
||||
|
||||
tree.Selector = function Selector(elements) {
|
||||
this.elements = elements;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
if (typeof(window) === 'undefined') { var tree = require(require('path').join(__dirname, '..', '..', 'less', 'tree')); }
|
||||
if (typeof(require) !== 'undefined') { var tree = require('less/tree') }
|
||||
|
||||
tree.URL = function URL(val) {
|
||||
this.value = val;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
if (typeof(window) === 'undefined') { var tree = require(require('path').join(__dirname, '..', '..', 'less', 'tree')); }
|
||||
if (typeof(require) !== 'undefined') { var tree = require('less/tree') }
|
||||
|
||||
tree.Variable = function Variable(name) { this.name = name };
|
||||
tree.Variable.prototype = {
|
||||
|
||||
@@ -4,10 +4,7 @@ var path = require('path'),
|
||||
|
||||
require.paths.unshift(__dirname, path.join(__dirname, '..'));
|
||||
|
||||
var less = require('lib/less/adapters/server');
|
||||
|
||||
less.tree = {};
|
||||
process.mixin(less.tree, require(path.join(__dirname, '..', 'lib', 'less', 'tree')));
|
||||
var less = require('lib/less');
|
||||
|
||||
less.tree.functions.add = function (a, b) {
|
||||
return new(less.tree.Dimension)(a.value + b.value);
|
||||
|
||||
Reference in New Issue
Block a user