@@ -125,11 +125,11 @@ const applyStyles = ({
125
125
appendRule,
126
126
__development__enableVerboseClassnames
127
127
} ) => {
128
+ let cacheValues = [ ] ;
129
+ let index = 0 ;
128
130
// Reuse styles entries array to avoid extra allocations.
129
- let cacheValues = Object . entries ( styles ) ;
130
-
131
- for ( let index = 0 ; index < cacheValues . length ; index ++ ) {
132
- const [ name , value ] = cacheValues [ index ] ;
131
+ for ( const name in styles ) {
132
+ const value = styles [ name ] ;
133
133
134
134
cacheValues [ index ] = styleToCacheValue ( {
135
135
style : { name, value } ,
@@ -140,6 +140,7 @@ const applyStyles = ({
140
140
appendRule,
141
141
__development__enableVerboseClassnames
142
142
} ) ;
143
+ index ++ ;
143
144
}
144
145
145
146
return cacheValues ;
@@ -154,15 +155,9 @@ const applyPseudos = ({
154
155
appendRule,
155
156
__development__enableVerboseClassnames
156
157
} ) => {
157
- const pseudosEntries = Object . entries ( pseudos ) ;
158
-
159
158
let cacheValues = [ ] ;
160
- for (
161
- let pseudosEntriesIndex = 0 ;
162
- pseudosEntriesIndex < pseudosEntries . length ;
163
- pseudosEntriesIndex ++
164
- ) {
165
- const [ pseudo , styles ] = pseudosEntries [ pseudosEntriesIndex ] ;
159
+ for ( const pseudo in pseudos ) {
160
+ const styles = pseudos [ pseudo ] ;
166
161
167
162
cacheValues . push (
168
163
...applyStyles ( {
@@ -187,34 +182,22 @@ const applyStylesOrPseudos = ({
187
182
appendRule,
188
183
__development__enableVerboseClassnames
189
184
} ) => {
190
- const stylesOrPseudosEntries = Object . entries ( stylesOrPseudos ) ;
191
185
// preallocate the array for original size of style entries to optimize for
192
186
// most common case where no pseudos or media queries are present, so
193
187
// style & cache length are equal
194
- let cacheValues = new Array ( stylesOrPseudosEntries . length ) ;
195
- let cacheValuesIndex = 0 ;
188
+ let cacheValues = [ ] ;
189
+ let index = 0 ;
196
190
// let cacheValues = [];
197
- for (
198
- let stylesOrPseudosEntriesIndex = 0 ;
199
- stylesOrPseudosEntriesIndex < stylesOrPseudosEntries . length ;
200
- stylesOrPseudosEntriesIndex ++
201
- ) {
202
- const [ entryName , entryValue ] = stylesOrPseudosEntries [
203
- stylesOrPseudosEntriesIndex
204
- ] ;
191
+ for ( const entryName in stylesOrPseudos ) {
192
+ const entryValue = stylesOrPseudos [ entryName ] ;
205
193
206
194
// startsWith might actually be faster than entryName[0] here!
207
195
// https://stackoverflow.com/a/62093300
208
196
if ( entryName . startsWith ( ":" ) ) {
209
- const stylesEntries = Object . entries ( entryValue ) ;
210
- for (
211
- let stylesEntriesIndex = 0 ;
212
- stylesEntriesIndex < stylesEntries . length ;
213
- stylesEntriesIndex ++
214
- ) {
215
- const [ name , value ] = stylesEntries [ stylesEntriesIndex ] ;
216
-
217
- cacheValues [ cacheValuesIndex ] = styleToCacheValue ( {
197
+ for ( const name in entryValue ) {
198
+ const value = entryValue [ name ] ;
199
+
200
+ cacheValues [ index ] = styleToCacheValue ( {
218
201
style : { name, value } ,
219
202
pseudo : entryName ,
220
203
mediaQuery,
@@ -223,20 +206,20 @@ const applyStylesOrPseudos = ({
223
206
appendRule,
224
207
__development__enableVerboseClassnames
225
208
} ) ;
226
- cacheValuesIndex ++ ;
209
+ index ++ ;
227
210
}
228
211
continue ;
229
212
}
230
213
231
- cacheValues [ cacheValuesIndex ] = styleToCacheValue ( {
214
+ cacheValues [ index ] = styleToCacheValue ( {
232
215
style : { name : entryName , value : entryValue } ,
233
216
mediaQuery,
234
217
cache,
235
218
resolveStyle,
236
219
appendRule,
237
220
__development__enableVerboseClassnames
238
221
} ) ;
239
- cacheValuesIndex ++ ;
222
+ index ++ ;
240
223
}
241
224
242
225
return cacheValues ;
@@ -252,15 +235,9 @@ const applyMediaQueries = ({
252
235
appendRule,
253
236
__development__enableVerboseClassnames
254
237
} ) => {
255
- const mediaQueriesEntries = Object . entries ( mediaQueries ) ;
256
238
let cacheValues = [ ] ;
257
- for (
258
- let mediaQueriesEntriesIndex = 0 ;
259
- mediaQueriesEntriesIndex < mediaQueriesEntries . length ;
260
- mediaQueriesEntriesIndex ++
261
- ) {
262
- const mediaQueriesEntry = mediaQueriesEntries [ mediaQueriesEntriesIndex ] ;
263
- const [ mediaQuery , stylesOrPseudos ] = mediaQueriesEntry ;
239
+ for ( const mediaQuery in mediaQueries ) {
240
+ const stylesOrPseudos = mediaQueries [ mediaQuery ] ;
264
241
265
242
// This is probably slower than directly pushing each result, but I really
266
243
// don't want to have to start sharing mutative counters
0 commit comments