UNPKG

react95-native

Version:

Refreshed Windows 95 style UI components for your React Native app

52 lines (47 loc) 1.45 kB
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } import React from 'react'; import { StyleSheet, View } from 'react-native'; import { withTheme } from '../../core/theming'; import getSelectOptions from './SelectBase'; import { ScrollView, Panel } from '../..'; // TODO: multiselect const SelectBox = ({ onChange, options = [], style, theme, value, ...rest }) => { const [, selectOptions] = getSelectOptions({ theme, options, values: [value], onChange: handleOptionSelect }); function handleOptionSelect(option) { onChange(option.value); } return /*#__PURE__*/React.createElement(Panel, _extends({ theme: theme, variant: "cutout", background: "canvas", style: [styles.wrapper, style] }, rest), /*#__PURE__*/React.createElement(ScrollView, { theme: theme }, /*#__PURE__*/React.createElement(View, { style: [styles.content, { backgroundColor: theme.canvas }] }, selectOptions))); }; export default withTheme(SelectBox); const styles = StyleSheet.create({ wrapper: { paddingVertical: 4, paddingHorizontal: 4 }, content: { padding: 2 } }); //# sourceMappingURL=SelectBox.js.map