From 93a5de8d8e725cb6fff256a54544d39cf50a16f8 Mon Sep 17 00:00:00 2001 From: Vijay Aravamudhan Date: Mon, 7 Nov 2022 06:50:40 +0530 Subject: Revert "Remove duplicated Toggle.js component" (#742) Revert "Remove duplicated Toggle.js component (#741)" This reverts commit dd238ae7949e72e3b90235f56e14686cc5231f34. --- src/components/ui/Toggle.js | 72 ++++++++++++++++++++++++++++++++++++++ src/components/ui/toggle/index.tsx | 56 ++++++++++++++++------------- 2 files changed, 104 insertions(+), 24 deletions(-) create mode 100644 src/components/ui/Toggle.js (limited to 'src/components/ui') diff --git a/src/components/ui/Toggle.js b/src/components/ui/Toggle.js new file mode 100644 index 000000000..c1d86a7f6 --- /dev/null +++ b/src/components/ui/Toggle.js @@ -0,0 +1,72 @@ +import { Component } from 'react'; +import PropTypes from 'prop-types'; +import { observer } from 'mobx-react'; +import classnames from 'classnames'; +import { Field } from 'mobx-react-form'; + +// Can this file be merged into the './toggle/index.tsx' file? +class Toggle extends Component { + static propTypes = { + field: PropTypes.instanceOf(Field).isRequired, + className: PropTypes.string, + showLabel: PropTypes.bool, + disabled: PropTypes.bool, + }; + + static defaultProps = { + className: '', + showLabel: true, + disabled: false, + }; + + onChange(e) { + const { field } = this.props; + + field.onChange(e); + } + + render() { + const { field, className, showLabel, disabled } = this.props; + + if (field.value === '' && field.default !== '') { + field.value = field.default; + } + + return ( +
+ - {error ? : null} + {error && } ); } } -export default withStyles(styles, { injectTheme: true })(ToggleComponent); +export default injectStyle(styles, { injectTheme: true })(ToggleComponent); -- cgit v1.2.3-54-g00ecf