@wordpress/components
Version:
UI components for WordPress.
64 lines (59 loc) • 1.61 kB
JavaScript
import { createElement } from "@wordpress/element";
/**
* External dependencies
*/
import { Text, TouchableOpacity, View } from 'react-native';
/**
* WordPress dependencies
*/
import { withPreferredColorScheme } from '@wordpress/compose';
import { Icon, plus, reset } from '@wordpress/icons';
/**
* Internal dependencies
*/
import styles from './style.scss';
function Stepper(_ref) {
let {
getStylesFromColorScheme,
isMaxValue,
isMinValue,
onPressInDecrement,
onPressInIncrement,
onPressOut,
value,
children,
shouldDisplayTextInput
} = _ref;
const valueStyle = getStylesFromColorScheme(styles.value, styles.valueTextDark);
const buttonStyle = getStylesFromColorScheme(styles.button, styles.buttonDark);
return createElement(View, {
style: styles.container
}, !shouldDisplayTextInput && createElement(Text, {
style: valueStyle
}, value), children, createElement(TouchableOpacity, {
disabled: isMinValue,
onPressIn: onPressInDecrement,
onPressOut: onPressOut,
style: [buttonStyle, isMinValue ? {
opacity: 0.4
} : null]
}, createElement(Icon, {
icon: reset,
size: 24,
color: buttonStyle.color
})), createElement(TouchableOpacity, {
testID: 'Increment',
disabled: isMaxValue,
onPressIn: onPressInIncrement,
onPressOut: onPressOut,
style: [buttonStyle, isMaxValue ? {
opacity: 0.4
} : null]
}, createElement(Icon, {
icon: plus,
size: 24,
color: buttonStyle.color
})));
}
export default withPreferredColorScheme(Stepper);
//# sourceMappingURL=stepper.ios.js.map