Skip to content

Commit 77f0ad9

Browse files
committed
feat: first implementation of array addon
1 parent cd8a8e7 commit 77f0ad9

1 file changed

Lines changed: 33 additions & 0 deletions

File tree

addon/array.js

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
'use strict';
2+
3+
exports.addon = function (renderer) {
4+
if (process.env.NODE_ENV !== 'production') {
5+
require('./__dev__/warnOnMissingDependencies')('rule', renderer, ['put', 'decl']);
6+
}
7+
8+
var decl = renderer.decl;
9+
10+
renderer.decl = function (prop, value) {
11+
var result = decl(prop, value);
12+
13+
if (value instanceof Array) {
14+
var pos = result.indexOf(':');
15+
16+
prop = result.substr(0, pos + 1);
17+
18+
result = prop + value.join(';' + prop) + ';';
19+
}
20+
21+
return result;
22+
};
23+
24+
var put = renderer.put;
25+
26+
renderer.put = function (selector, decls, atrule) {
27+
if (decls instanceof Array) {
28+
decls = renderer.assign.apply(null, decls);
29+
}
30+
31+
return put(selector, decls, atrule);
32+
};
33+
};

0 commit comments

Comments
 (0)