@react-awesome-query-builder/fluent
Version:
User-friendly query builder for React. Fluent 8 widgets
45 lines (44 loc) • 1.78 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _react = _interopRequireDefault(require("react"));
var _react2 = require("@fluentui/react");
var _ui = require("@react-awesome-query-builder/ui");
var _Utils$NumberFormat = _ui.Utils.NumberFormat,
NumericFormat = _Utils$NumberFormat.NumericFormat,
getNumberFormatProps = _Utils$NumberFormat.getNumberFormatProps;
var FluentUIPrice = function FluentUIPrice(props) {
var value = props.value,
setValue = props.setValue,
readonly = props.readonly,
placeholder = props.placeholder,
min = props.min,
max = props.max,
customProps = props.customProps,
prefix = props.prefix,
suffix = props.suffix;
var numericFormatProps = getNumberFormatProps(props, ["prefix", "suffix"]);
var formattedValue = value == undefined ? "" : value;
var isValid = value != undefined && (max == undefined || value <= max) && (min == undefined || value >= min);
var handleValueChange = function handleValueChange(values) {
var floatValue = values.floatValue;
setValue(floatValue === undefined ? null : floatValue);
};
return /*#__PURE__*/_react["default"].createElement(NumericFormat, (0, _extends2["default"])({
value: formattedValue,
invalid: value != undefined && !isValid,
readOnly: readonly
//disabled={readonly}
,
placeholder: placeholder,
customInput: _react2.TextField,
onValueChange: handleValueChange,
prefix: prefix,
suffix: suffix
}, customProps, numericFormatProps));
};
var _default = exports["default"] = FluentUIPrice;