@@ -349,7 +349,7 @@ class QueueAnim extends React.Component {
349
349
delay : interval * order + delay ,
350
350
duration,
351
351
easing : this . getVelocityEasing ( key , i ) [ 1 ] ,
352
- begin : this . leaveBegin . bind ( this ) ,
352
+ begin : this . leaveBegin . bind ( this , key ) ,
353
353
complete : this . leaveComplete . bind ( this , key ) ,
354
354
} ) ;
355
355
}
@@ -371,9 +371,10 @@ class QueueAnim extends React.Component {
371
371
elements . forEach ( ( elem ) => {
372
372
elem . className = elem . className . replace ( this . props . animatingClassName [ 0 ] , '' ) . trim ( ) ;
373
373
} ) ;
374
+ this . props . onEnd ( { key, type : 'enter' } ) ;
374
375
}
375
376
376
- leaveBegin ( elements ) {
377
+ leaveBegin ( key , elements ) {
377
378
elements . forEach ( ( elem ) => {
378
379
const animatingClassName = this . props . animatingClassName ;
379
380
elem . className = elem . className . replace ( animatingClassName [ 0 ] , '' ) ;
@@ -404,6 +405,7 @@ class QueueAnim extends React.Component {
404
405
elements . forEach ( ( elem ) => {
405
406
elem . className = elem . className . replace ( this . props . animatingClassName [ 1 ] , '' ) . trim ( ) ;
406
407
} ) ;
408
+ this . props . onEnd ( { key, type : 'leave' } ) ;
407
409
}
408
410
409
411
render ( ) {
@@ -431,6 +433,7 @@ class QueueAnim extends React.Component {
431
433
'leaveReverse' ,
432
434
'animatingClassName' ,
433
435
'enterForcedRePlay' ,
436
+ 'onEnd' ,
434
437
] . forEach ( key => delete tagProps [ key ] ) ;
435
438
return createElement ( this . props . component , { ...tagProps } , childrenToRender ) ;
436
439
}
@@ -455,6 +458,7 @@ QueueAnim.propTypes = {
455
458
leaveReverse : React . PropTypes . bool ,
456
459
enterForcedRePlay : React . PropTypes . bool ,
457
460
animatingClassName : React . PropTypes . array ,
461
+ onEnd : React . PropTypes . func ,
458
462
} ;
459
463
460
464
QueueAnim . defaultProps = {
@@ -468,6 +472,7 @@ QueueAnim.defaultProps = {
468
472
leaveReverse : false ,
469
473
enterForcedRePlay : false ,
470
474
animatingClassName : [ 'queue-anim-entering' , 'queue-anim-leaving' ] ,
475
+ onEnd : noop ,
471
476
} ;
472
477
473
478
export default QueueAnim ;
0 commit comments