Skip to content

Commit c21e255

Browse files
authored
use WeakSet to track processed nodes (#34)
1 parent 1980919 commit c21e255

File tree

1 file changed

+5
-5
lines changed

1 file changed

+5
-5
lines changed

index.js

+5-5
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ const crypto = require('crypto');
1616

1717
const glob = require('tiny-glob/sync');
1818

19-
const processed = Symbol('processed')
19+
const processed = new WeakSet();
2020

2121
const getAdaptivePropSelector = (userProps) => {
2222
return (prop) => {
@@ -138,7 +138,7 @@ module.exports = (UserProps) => {
138138
AtRule: {
139139
media: atrule => {
140140
// bail early if possible
141-
if (atrule[processed]) return
141+
if (processed.has(atrule)) return
142142

143143
// extract prop from atrule params
144144
let prop = atrule.params.replace(/[( )]+/g, '');
@@ -162,14 +162,14 @@ module.exports = (UserProps) => {
162162
STATE.target_ss.prepend(value)
163163

164164
// track work to prevent duplication
165-
atrule[processed] = true
165+
processed.add(atrule)
166166
STATE.mapped.add(prop)
167167
}
168168
},
169169

170170
Declaration(node, { Declaration }) {
171171
// bail early
172-
if (node[processed] || !node.value) return
172+
if (processed.has(node) || !node.value) return
173173
// console.log(node)
174174
let matches = node.value.match(/var\(\s*(--[\w\d-_]+)/g)
175175

@@ -223,7 +223,7 @@ module.exports = (UserProps) => {
223223
}
224224

225225
// track work to prevent duplicative processing
226-
node[processed] = true
226+
processed.add(node)
227227
}
228228
}
229229
}

0 commit comments

Comments
 (0)