react-input-range
Version:
React component for inputting numeric values within a range
34 lines (27 loc) • 1.1 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = valuePropType;
var _utils = require('../utils');
/**
* @ignore
* @param {Object} props
* @return {?Error} Return Error if validation fails
*/
function valuePropType(props, propName) {
var maxValue = props.maxValue,
minValue = props.minValue;
var value = props[propName];
if (!(0, _utils.isNumber)(value) && (!(0, _utils.isObject)(value) || !(0, _utils.isNumber)(value.min) || !(0, _utils.isNumber)(value.max))) {
return new Error('"' + propName + '" must be a number or a range object');
}
if ((0, _utils.isNumber)(value) && (value < minValue || value > maxValue)) {
return new Error('"' + propName + '" must be in between "minValue" and "maxValue"');
}
if ((0, _utils.isObject)(value) && (value.min < minValue || value.min > maxValue || value.max < minValue || value.max > maxValue)) {
return new Error('"' + propName + '" must be in between "minValue" and "maxValue"');
}
}
module.exports = exports['default'];
//# sourceMappingURL=value-prop-type.js.map