import React, {FC, useRef} from 'react'; import PropTypes from 'prop-types'; import {useTheme} from '../Theme'; import defaultTheme from '../Theme/defaultTheme'; import RBSheet from 'react-native-raw-bottom-sheet'; import {Button} from '..'; interface SelectProps { children?: React.ReactNode | React.ReactNode[]; value: number; label: string; cardHeight: number; accentLeft?: React.ReactNode; accentRight?: React.ReactNode; handleChange?: (i: number) => void; } const Select: FC = ({ children, handleChange, value, label, cardHeight, accentRight, accentLeft, ...props }) => { var theme = useTheme(); if (theme === undefined) { theme = defaultTheme; } const styles = theme.override.KoiSelect.default; const refRBSheet = useRef(null); return ( <> {React.Children.map(children, (child, i) => { return React.cloneElement(child as React.ReactElement, { selected: value === i, handleChange: handleChange, key: i, }); })} ); }; export default Select; Select.propTypes = { children: PropTypes.node, value: PropTypes.number, label: PropTypes.string, handleChange: PropTypes.func, }; Select.defaultProps = {};