stylus-source 0.41.0 → 0.41.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/VERSION +1 -1
- data/vendor/lib/functions/url.js +2 -1
- data/vendor/lib/nodes/block.js +17 -0
- data/vendor/lib/utils.js +0 -2
- data/vendor/lib/visitor/evaluator.js +13 -4
- data/vendor/node_modules/mkdirp/package.json +1 -5
- data/vendor/node_modules/mocha/node_modules/glob/package.json +5 -1
- data/vendor/node_modules/should/package.json +1 -5
- data/vendor/package.json +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0da3837b5a10b414fbb523315a3b063b991a2128
|
4
|
+
data.tar.gz: 4ac5f533a2c295655371b692d30bcec8710dcf17
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f2d6c0f2593ebe2d7fd5bd61381bf2728ae0ad824f44174271a9a0f531c5ed902a36ca42117138de0093aa70e71fcc1f3d6680f4420c743e9b9ab97da4994500
|
7
|
+
data.tar.gz: 8339b72b05ecc3531a9a01e37cd2091ffd50929d2a1a691e277397617d61ecc1042b5a6720526ab2d560dba76dab052c5254283fc1261de7cb919880ae821bdb
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.41.
|
1
|
+
0.41.1
|
data/vendor/lib/functions/url.js
CHANGED
@@ -71,6 +71,7 @@ module.exports = function(options) {
|
|
71
71
|
url = parse(url);
|
72
72
|
var ext = extname(url.pathname)
|
73
73
|
, mime = mimes[ext]
|
74
|
+
, hash = url.hash || ''
|
74
75
|
, literal = new nodes.Literal('url("' + url.href + '")')
|
75
76
|
, paths = _paths.concat(this.paths)
|
76
77
|
, buf;
|
@@ -101,7 +102,7 @@ module.exports = function(options) {
|
|
101
102
|
if (false !== sizeLimit && buf.length > sizeLimit) return literal;
|
102
103
|
|
103
104
|
// Encode
|
104
|
-
return new nodes.Literal('url("data:' + mime + ';base64,' + buf.toString('base64') + '")');
|
105
|
+
return new nodes.Literal('url("data:' + mime + ';base64,' + buf.toString('base64') + hash + '")');
|
105
106
|
};
|
106
107
|
|
107
108
|
fn.raw = true;
|
data/vendor/lib/nodes/block.js
CHANGED
@@ -47,6 +47,23 @@ Block.prototype.__defineGetter__('hasProperties', function(){
|
|
47
47
|
}
|
48
48
|
});
|
49
49
|
|
50
|
+
/**
|
51
|
+
* Check if this block has bubbling nodes.
|
52
|
+
*
|
53
|
+
* @return {Boolean}
|
54
|
+
* @api public
|
55
|
+
*/
|
56
|
+
|
57
|
+
Block.prototype.__defineGetter__('hasBubbling', function(){
|
58
|
+
for (var i = 0, len = this.nodes.length; i < len; ++i) {
|
59
|
+
var nodeName = this.nodes[i].nodeName;
|
60
|
+
if ('media' == nodeName || 'fontface' == nodeName) {
|
61
|
+
return true;
|
62
|
+
}
|
63
|
+
}
|
64
|
+
return false;
|
65
|
+
});
|
66
|
+
|
50
67
|
/**
|
51
68
|
* Check if this block is empty.
|
52
69
|
*
|
data/vendor/lib/utils.js
CHANGED
@@ -350,7 +350,6 @@ exports.compileSelectors = function(arr, leaveHidden){
|
|
350
350
|
function compile(arr, i) {
|
351
351
|
if (i) {
|
352
352
|
arr[i].forEach(function(selector){
|
353
|
-
selector.val = selector.val || selector.toString();
|
354
353
|
if (!leaveHidden && selector.val.match(hiddenSelectorRegexp)) return;
|
355
354
|
if (selector.inherits) {
|
356
355
|
buf.unshift(selector.val);
|
@@ -362,7 +361,6 @@ exports.compileSelectors = function(arr, leaveHidden){
|
|
362
361
|
});
|
363
362
|
} else {
|
364
363
|
arr[0].forEach(function(selector){
|
365
|
-
selector.val = selector.val || selector.toString();
|
366
364
|
if (!leaveHidden && selector.val.match(hiddenSelectorRegexp)) return;
|
367
365
|
var str = interpolateParent(selector, buf);
|
368
366
|
if (~str.indexOf('&')) str = str.replace(/&/g, '').trim();
|
@@ -679,8 +679,10 @@ Evaluator.prototype.visitIf = function(node){
|
|
679
679
|
}
|
680
680
|
}
|
681
681
|
|
682
|
-
// mixin conditional statements within
|
683
|
-
|
682
|
+
// mixin conditional statements within
|
683
|
+
// a selector group, @font-face block or @page block
|
684
|
+
if (ret && !node.postfix && block.node
|
685
|
+
&& ~['group', 'fontface', 'page'].indexOf(block.node.nodeName)) {
|
684
686
|
this.mixin(ret.nodes, block);
|
685
687
|
return nodes.null;
|
686
688
|
}
|
@@ -810,6 +812,7 @@ Evaluator.prototype.invokeFunction = function(fn, args, content){
|
|
810
812
|
// Clone the function body
|
811
813
|
// to prevent mutation of subsequent calls
|
812
814
|
var body = fn.block.clone();
|
815
|
+
body.scope = fn.block.hasBubbling;
|
813
816
|
|
814
817
|
// mixin block
|
815
818
|
var mixinBlock = this.stack.currentFrame.block;
|
@@ -1177,11 +1180,13 @@ Evaluator.prototype.__defineGetter__('currentSelector', function(){
|
|
1177
1180
|
for (var i = 0, len = this.stack.length; i < len; ++i) {
|
1178
1181
|
block = this.stack[i].block;
|
1179
1182
|
if (block.node && 'group' == block.node.nodeName) {
|
1183
|
+
block.node.nodes.forEach(function(selector) {
|
1184
|
+
if (!selector.val) selector.val = this.interpolate(selector);
|
1185
|
+
}, this);
|
1180
1186
|
stack.push(block.node.nodes);
|
1181
1187
|
}
|
1182
1188
|
}
|
1183
|
-
|
1184
|
-
return utils.compileSelectors(stack).join(',');
|
1189
|
+
return stack.length ? utils.compileSelectors(stack).join(',') : '&';
|
1185
1190
|
});
|
1186
1191
|
|
1187
1192
|
/**
|
@@ -1223,9 +1228,13 @@ Evaluator.prototype.interpolate = function(node){
|
|
1223
1228
|
case 'unit':
|
1224
1229
|
return node.val;
|
1225
1230
|
case 'expression':
|
1231
|
+
// Prevent cyclic `selector()` calls.
|
1232
|
+
var selectorCall = ('call' == node.first.nodeName && 'selector' == node.first.name);
|
1233
|
+
if (selectorCall && this._selector) return this._selector;
|
1226
1234
|
self.return++;
|
1227
1235
|
var ret = toString(self.visit(node).first);
|
1228
1236
|
self.return--;
|
1237
|
+
if (selectorCall) this._selector = ret;
|
1229
1238
|
return ret;
|
1230
1239
|
}
|
1231
1240
|
}
|
@@ -29,9 +29,5 @@
|
|
29
29
|
"url": "https://github.com/substack/node-mkdirp/issues"
|
30
30
|
},
|
31
31
|
"_id": "mkdirp@0.3.5",
|
32
|
-
"
|
33
|
-
"shasum": "3ca8fc91ed924e281236eec99e74505873ac5a45"
|
34
|
-
},
|
35
|
-
"_from": "mkdirp@0.3.x",
|
36
|
-
"_resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz"
|
32
|
+
"_from": "mkdirp@0.3.x"
|
37
33
|
}
|
@@ -35,5 +35,9 @@
|
|
35
35
|
"url": "https://github.com/isaacs/node-glob/issues"
|
36
36
|
},
|
37
37
|
"_id": "glob@3.2.3",
|
38
|
-
"
|
38
|
+
"dist": {
|
39
|
+
"shasum": "d8225c774cac17a9d50c83e739b3b9ac0f2216cf"
|
40
|
+
},
|
41
|
+
"_from": "glob@3.2.3",
|
42
|
+
"_resolved": "https://registry.npmjs.org/glob/-/glob-3.2.3.tgz"
|
39
43
|
}
|
@@ -34,9 +34,5 @@
|
|
34
34
|
"url": "https://github.com/visionmedia/should.js/issues"
|
35
35
|
},
|
36
36
|
"_id": "should@3.1.2",
|
37
|
-
"
|
38
|
-
"shasum": "4bc206253d736c2fb902153477982c2b2e988c02"
|
39
|
-
},
|
40
|
-
"_from": "should@*",
|
41
|
-
"_resolved": "https://registry.npmjs.org/should/-/should-3.1.2.tgz"
|
37
|
+
"_from": "should@*"
|
42
38
|
}
|
data/vendor/package.json
CHANGED