nitro-react/src/transitions/TransitionAnimation.tsx

19 lines
717 B
TypeScript
Raw Normal View History

2021-04-21 05:36:39 +02:00
import { Transition } from 'react-transition-group';
import { TransitionAnimationProps } from './TransitionAnimation.types';
import { getTransitionAnimationStyle } from './TransitionAnimationStyles';
export function TransitionAnimation(props: TransitionAnimationProps): JSX.Element
{
const { type = null, inProp = false, timeout = 300, className = null, children = null } = props;
return (
<Transition in={ inProp } timeout={ timeout }>
{state => (
<div className={ className + " animate__animated" } style={ { ...getTransitionAnimationStyle(type, state, timeout) } }>
{ children }
</div>
)}
</Transition>
);
}