text: import { StyleSheet, View, //@ts-ignore
  unstable_createElement } from 'react-native';
  import * as React from 'react';
  
  const Div = props => unstable_createElement('div', props);
  
  const RIPPLE_DURATION = 250;
  export const RippleStatus = {
    Pressed: 'pressed',
    NotPressed: 'not_pressed'
  };
  
  function Ripple(_ref) {
    let {
      onRemove,
      ripple,
      ripple: {
        status,
        animationDuration,
        style
      }
    } = _ref;
  
    const onAnimationEnd = () => {
      if (status === RippleStatus.NotPressed) {
        onRemove(ripple);
      }
    };
  
    return /*#__PURE__*/React.createElement(View, {
      style: [rippleStyles.container, status === RippleStatus.Pressed ? rippleStyles.show : rippleStyles.hide]
    }, /*#__PURE__*/React.createElement(Div, {
      onAnimationEnd: onAnimationEnd,
      style: [rippleStyles.ripple, style, {
        // @ts-ignore
        animationDuration: `${animationDuration}ms`
      }]
    }));
  }
  
  const fromRippleStyle = {
    transform: [{
      translateY: '-50%'
    }, {
      translateX: '-50%'
    }, {
      scale: '0.1'
    }]
  };
  const toRippleStyle = {
    transform: [{
      translateY: '-50%'
    }, {
      translateX: '-50%'
    }, {
      scale: '1'
    }]
  };
  const rippleStyles = StyleSheet.create({
    ripple: {
      position: 'absolute',
      willChange: 'transform',
      borderRadius: '50%',
      transformOrigin: 'center',
      animationDuration: `${RIPPLE_DURATION}ms`,
      animationTimingFunction: 'linear',
      ...toRippleStyle,
      //@ts-ignore
      animationKeyframes: {
        '0%': fromRippleStyle,
        '100%': toRippleStyle
      }
    },
    container: {
      //@ts-ignore
      transitionDuration: `250ms`,
      willChange: 'opacity',
      transitionProperty: 'opacity',
      transitionTimingFunction: 'linear'
    },
    show: {
      opacity: 0.5
    },
    hide: {
      opacity: 0
    }
  });
  export default /*#__PURE__*/React.memo(Ripple);
  //# sourceMappingURL=Ripple.js.map