@@ -232,7 +232,7 @@ function get_widget_sizes(METRIC) {
232
232
doc . body . appendChild ( div )
233
233
div . classList . add ( 'measure' )
234
234
div . classList . add ( "measureScale" )
235
- let parent = dom [ id ]
235
+ let parent = dom [ id ] , isFirst = true
236
236
for ( const key of Object . keys ( oList ) ) {
237
237
tmpdata [ key ] = { } , newobj [ key ] = { } , data [ key ] = { }
238
238
for ( const k of Object . keys ( oList [ key ] ) ) {
@@ -252,11 +252,22 @@ function get_widget_sizes(METRIC) {
252
252
} else if ( isDomRect == 2 ) { method = range . getBoundingClientRect ( )
253
253
} else if ( isDomRect > 2 ) { method = range . getClientRects ( ) [ 0 ]
254
254
}
255
+ // typecheck
255
256
let itemdata = [ method . width , method . height , method . x , method . y ]
257
+ if ( isFirst ) {
258
+ isFirst = false
259
+ if ( runST ) { itemdata = [ null ] }
260
+ itemdata . forEach ( function ( item ) {
261
+ let typeCheck = typeFn ( item )
262
+ if ( 'number' !== typeCheck ) { throw 'tzp' + zErrType + typeCheck }
263
+ } )
264
+ }
256
265
let itemhash = mini ( itemdata )
257
266
if ( undefined == tmpdata [ key ] [ itemhash ] ) { tmpdata [ key ] [ itemhash ] = { 'data' : itemdata , 'group' : [ k ] }
258
267
} else { tmpdata [ key ] [ itemhash ] [ 'group' ] . push ( k ) }
259
268
} catch ( e ) {
269
+ if ( 'tzpTypeError: ' == e . slice ( 0 , 14 ) ) { throw e . slice ( 3 ) }
270
+
260
271
newobj [ key ] [ k ] = zErr
261
272
log_error ( 15 , METRIC + '_' + k + ( 'unstyled' == key ? '_unstyled' : '' ) , e )
262
273
}
0 commit comments