Repository URL to install this package:
|
Version:
4.0.116 ▾
|
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
const tslib_1 = require("tslib");
const react_1 = tslib_1.__importDefault(require("react"));
const exotic_1 = require("exotic");
const mobx_react_1 = require("xmobx/mobx-react");
const state_1 = require("./state");
const renderProps_1 = require("./renderProps");
function toRangeSliderState(props) {
if (props.state === undefined) {
return new state_1.RangeSliderStateInstance(props);
} else {
return props.state;
}
}
exports.toRangeSliderState = toRangeSliderState;
let RangeSlider = class RangeSlider extends react_1.default.Component {
constructor() {
super(...arguments);
this.observableState = toRangeSliderState(this.props);
}
updateRange(props) {
this.observableState.setSelectedValue();
this.observableState.setSelectedMin(props.selectedMinValue);
this.observableState.setSelectedMax(props.selectedMaxValue);
}
componentWillMount() {
this.updateRange(this.props);
}
componentWillReceiveProps(nextProps) {
this.updateRange(nextProps);
}
render() {
const _a = this.props,
{
renderWrapper,
renderBox
} = _a,
remainingProps = tslib_1.__rest(_a, ["renderWrapper", "renderBox"]);
const children = renderBox(remainingProps, this.observableState);
return renderWrapper(Object.assign({
children
}, remainingProps), this.observableState);
}
};
RangeSlider.defaultProps = {
className: '',
maxValue: 5000,
selectedMinValue: 0,
selectedMaxValue: 5000,
stepValue: 500,
selectedValue: 0,
currencyType: '$',
currencyOrder: 'left',
color: '#ff6285',
// render Props
renderRangeValues: renderProps_1.defaultRangeValues,
renderSliderInput: renderProps_1.defaultSliderInput,
renderBox: renderProps_1.defaultRenderBox,
renderWrapper: renderProps_1.defaultRenderWrapper,
// event
onMinChange: exotic_1.NO_OP,
onMaxChange: exotic_1.NO_OP
};
RangeSlider = tslib_1.__decorate([mobx_react_1.observer], RangeSlider);
exports.RangeSlider = RangeSlider;
exports.default = RangeSlider; //# sourceMappingURL=RangeSlider.js.map