@react-awesome-query-builder/mui
Version:
User-friendly query builder for React. MUI 5 widgets
45 lines • 1.38 kB
JavaScript
import _extends from "@babel/runtime/helpers/extends";
import React, { useMemo } from "react";
import TextField from "@mui/material/TextField";
import FormControl from "@mui/material/FormControl";
export default (function (props) {
var value = props.value,
setValue = props.setValue,
config = props.config,
readonly = props.readonly,
min = props.min,
max = props.max,
step = props.step,
placeholder = props.placeholder,
customProps = props.customProps;
var renderSize = config.settings.renderSize;
var onChange = function onChange(e) {
var val = e.target.value;
if (val === "" || val === null) val = undefined;else val = Number(val);
setValue(val);
};
var numberValue = value == undefined ? "" : value;
var InputProps = useMemo(function () {
return {
readOnly: readonly
};
}, [readonly]);
var inputProps = useMemo(function () {
return {
min: min,
max: max,
step: step
};
}, [min, max, step]);
return /*#__PURE__*/React.createElement(FormControl, null, /*#__PURE__*/React.createElement(TextField, _extends({
variant: "standard",
type: "number",
value: numberValue,
placeholder: !readonly ? placeholder : "",
InputProps: InputProps,
inputProps: inputProps,
disabled: readonly,
onChange: onChange,
size: renderSize
}, customProps)));
});