@@ -93,6 +93,8 @@ module.exports = function plot(gd, wrappedTraceHolders) {
9393 . append ( 'g' )
9494 . classed ( c . cn . yColumn , true ) ;
9595
96+ yColumn . exit ( ) . remove ( ) ;
97+
9698 yColumn
9799 . attr ( 'transform' , function ( d ) { return 'translate(' + d . x + ' 0)' ; } )
98100 . call ( d3 . behavior . drag ( )
@@ -242,7 +244,7 @@ function renderScrollbarKit(tableControlView, gd, bypassVisibleBar) {
242244
243245 function calcTotalHeight ( d ) {
244246 var blocks = d . rowBlocks ;
245- return firstRowAnchor ( blocks , blocks . length - 1 ) + rowsHeight ( blocks [ blocks . length - 1 ] , Infinity ) ;
247+ return firstRowAnchor ( blocks , blocks . length - 1 ) + ( blocks . length ? rowsHeight ( blocks [ blocks . length - 1 ] , Infinity ) : 1 ) ;
246248 }
247249
248250 var scrollbarKit = tableControlView . selectAll ( '.' + c . cn . scrollbarKit )
@@ -288,7 +290,7 @@ function renderScrollbarKit(tableControlView, gd, bypassVisibleBar) {
288290
289291 scrollbarSlider
290292 . attr ( 'transform' , function ( d ) {
291- return 'translate(0 ' + d . scrollbarState . topY + ')' ;
293+ return 'translate(0 ' + ( d . scrollbarState . topY || 0 ) + ')' ;
292294 } ) ;
293295
294296 var scrollbarGlyph = scrollbarSlider . selectAll ( '.' + c . cn . scrollbarGlyph )
@@ -603,7 +605,7 @@ function headerBlock(d) {return d.type === 'header';}
603605 */
604606
605607function headerHeight ( d ) {
606- var headerBlocks = d . rowBlocks [ 0 ] . auxiliaryBlocks ;
608+ var headerBlocks = d . rowBlocks . length ? d . rowBlocks [ 0 ] . auxiliaryBlocks : [ ] ;
607609 return headerBlocks . reduce ( function ( p , n ) { return p + rowsHeight ( n , Infinity ) ; } , 0 ) ;
608610}
609611
@@ -643,6 +645,7 @@ function findPagesAndCacheHeights(blocks, scrollY, scrollHeight) {
643645
644646function updateBlockYPosition ( gd , cellsColumnBlock , tableControlView ) {
645647 var d = flatData ( cellsColumnBlock ) [ 0 ] ;
648+ if ( d === undefined ) return ;
646649 var blocks = d . rowBlocks ;
647650 var calcdata = d . calcdata ;
648651
0 commit comments