@@ -26,30 +26,37 @@ export default (selector, conditions, stylesheet) => {
26
26
}
27
27
}
28
28
29
- let generatedStyles = ''
30
- let count = 0
29
+ return Array . from ( document . querySelectorAll ( selector ) )
31
30
32
- document . querySelectorAll ( selector ) . forEach ( tag => {
31
+ . reduce ( ( styles , tag , count ) => {
33
32
34
- const identifier = ( selector
35
- + Object . keys ( conditions )
36
- + Object . values ( conditions ) ) . replace ( / \W / g, '' )
33
+ const identifier = (
34
+ selector
35
+ + Object . keys ( conditions )
36
+ + Object . values ( conditions )
37
+ ) . replace ( / \W / g, '' )
37
38
38
- if ( Object . entries ( conditions )
39
- . every ( test => features [ test [ 0 ] ] ( tag , test [ 1 ] ) ) ) {
39
+ if (
40
+ Object . entries ( conditions ) . every ( test =>
41
+ features [ test [ 0 ] ] ( tag , test [ 1 ] )
42
+ )
43
+ ) {
40
44
41
- tag . setAttribute ( `data-${ identifier } ` , count )
42
- generatedStyles += stylesheet . replace ( / : s e l f | \$ t h i s / g, `[data-${ identifier } ="${ count } "]` )
43
- count ++
45
+ tag . setAttribute ( `data-${ identifier } ` , count )
46
+ styles += stylesheet . replace (
47
+ / : s e l f | \$ t h i s / g,
48
+ `[data-${ identifier } ="${ count } "]`
49
+ )
50
+ count ++
44
51
45
- } else {
52
+ } else {
46
53
47
- tag . setAttribute ( `data-${ identifier } ` , '' )
54
+ tag . setAttribute ( `data-${ identifier } ` , '' )
48
55
49
- }
56
+ }
50
57
51
- } )
58
+ return styles
52
59
53
- return generatedStyles
60
+ } , '' )
54
61
55
62
}
0 commit comments