@react-awesome-query-builder/antd
Version:
User-friendly query builder for React. AntDesign widgets
120 lines (119 loc) • 4.85 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _typeof = require("@babel/runtime/helpers/typeof");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
var _react = _interopRequireWildcard(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _antd = require("antd");
var _excluded = ["width"];
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
var SliderWidget = /*#__PURE__*/_react["default"].memo(function (_ref) {
var setValue = _ref.setValue,
placeholder = _ref.placeholder,
config = _ref.config,
field = _ref.field,
value = _ref.value,
customProps = _ref.customProps,
fieldDefinition = _ref.fieldDefinition,
readonly = _ref.readonly,
errorMessage = _ref.errorMessage,
min = _ref.min,
max = _ref.max,
step = _ref.step,
marks = _ref.marks;
var _config$settings = config.settings,
renderSize = _config$settings.renderSize,
showErrorMessage = _config$settings.showErrorMessage,
defaultSliderWidth = _config$settings.defaultSliderWidth;
var _ref2 = customProps || {},
width = _ref2.width,
rest = (0, _objectWithoutProperties2["default"])(_ref2, _excluded);
var customInputProps = (0, _react.useMemo)(function () {
return rest.input || {};
}, [customProps]);
var customSliderProps = (0, _react.useMemo)(function () {
return rest.slider || rest;
}, [customProps]);
var tooltipFormatter = (0, _react.useCallback)(function (val) {
return val != undefined ? val.toString() : undefined;
}, []);
var tooltip = (0, _react.useMemo)(function () {
return {
formatter: tooltipFormatter
};
}, [tooltipFormatter]);
var handleChange = (0, _react.useCallback)(function (val) {
if (val === "") val = undefined;
setValue(val);
}, [setValue]);
var aValue = value;
if (aValue == undefined) aValue = null;
var sliderValue = aValue == null && min ? min : aValue;
return /*#__PURE__*/_react["default"].createElement(_antd.Col, {
style: {
display: "inline-flex",
flexWrap: "wrap"
}
}, /*#__PURE__*/_react["default"].createElement(_antd.Col, {
key: "col-number",
style: {
"float": "left",
marginRight: "5px"
}
}, /*#__PURE__*/_react["default"].createElement(_antd.InputNumber, (0, _extends2["default"])({
key: "input-number",
disabled: readonly,
size: renderSize,
value: aValue,
min: min,
max: max,
step: step,
placeholder: placeholder,
onChange: handleChange
}, customInputProps))), /*#__PURE__*/_react["default"].createElement(_antd.Col, {
key: "col-slider",
style: {
"float": "left",
width: width || defaultSliderWidth
}
}, /*#__PURE__*/_react["default"].createElement(_antd.Slider, (0, _extends2["default"])({
key: "input-slider",
disabled: readonly,
value: sliderValue,
tooltip: tooltip,
min: min,
max: max,
included: true,
step: step,
marks: marks,
onChange: handleChange
}, customSliderProps))), /*#__PURE__*/_react["default"].createElement(_antd.Col, {
key: "col-clear",
style: {
clear: "both"
}
}));
});
SliderWidget.displayName = "SliderWidget";
SliderWidget.propTypes = {
setValue: _propTypes["default"].func.isRequired,
placeholder: _propTypes["default"].string,
config: _propTypes["default"].object.isRequired,
field: _propTypes["default"].any,
value: _propTypes["default"].number,
customProps: _propTypes["default"].object,
fieldDefinition: _propTypes["default"].object,
readonly: _propTypes["default"].bool,
// from fieldSettings:
min: _propTypes["default"].number,
max: _propTypes["default"].number,
step: _propTypes["default"].number,
marks: _propTypes["default"].object
};
var _default = exports["default"] = SliderWidget;