UNPKG

react-native-slider-intro

Version:

A simple and full customizable React Native package which implements a unique slider.

61 lines (60 loc) 1.72 kB
"use strict"; import React, { useContext } from 'react'; import { Animated, StyleSheet, TouchableOpacity, View } from 'react-native'; import { SliderContext } from './SliderProvider'; import { ButtonType } from '../types/Button.types'; import Button from './Button'; import { jsx as _jsx } from "react/jsx-runtime"; const styles = StyleSheet.create({ wrapper: { flex: 1, justifyContent: 'center', alignItems: 'center' } }); const Next = () => { const { renderNextButton, renderDoneButton, buttonsMaxSize, nextLabel, doneLabel, slide, goToNewSlide, isLastSlide, animations } = useContext(SliderContext); const { _opacityOfNextButton, _opacityOfDoneButton } = animations; const renderDefaultNextButton = label => /*#__PURE__*/_jsx(Button, { label: label, type: ButtonType.Next }); const renderDefaultDoneButton = label => /*#__PURE__*/_jsx(Button, { label: label, type: ButtonType.Done }); return /*#__PURE__*/_jsx(View, { style: [styles.wrapper, { maxWidth: buttonsMaxSize }], children: /*#__PURE__*/_jsx(TouchableOpacity, { onPress: () => goToNewSlide(slide.active + 1), children: !isLastSlide ? /*#__PURE__*/_jsx(Animated.View, { style: { opacity: _opacityOfNextButton }, children: renderNextButton ? renderNextButton(nextLabel) : renderDefaultNextButton(nextLabel) }) : /*#__PURE__*/_jsx(Animated.View, { style: { opacity: _opacityOfDoneButton }, children: renderDoneButton ? renderDoneButton(doneLabel) : renderDefaultDoneButton(doneLabel) }) }) }); }; export default Next; //# sourceMappingURL=Next.js.map