office-ui-fabric-react
Version:
Reusable React components for building experiences for Office 365.
48 lines (46 loc) • 1.98 kB
JavaScript
;
var __extends = (this && this.__extends) || function (d, b) {
for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
var React = require("react");
var index_1 = require("../../../../index");
require("./NumberTextField.scss");
var NumberTextField = (function (_super) {
__extends(NumberTextField, _super);
function NumberTextField(props) {
var _this = _super.call(this, props) || this;
_this._restore = _this._restore.bind(_this);
_this._onChanged = _this._onChanged.bind(_this);
_this._validateNumber = _this._validateNumber.bind(_this);
_this.state = {
value: props.initialValue
};
return _this;
}
NumberTextField.prototype.render = function () {
return (React.createElement("div", { className: 'NumberTextField' },
React.createElement(index_1.TextField, { className: 'NumberTextField-textField', label: this.props.label, value: this.state.value, onChanged: this._onChanged, onGetErrorMessage: this._validateNumber }),
React.createElement("div", { className: 'NumberTextField-restoreButton' },
React.createElement(index_1.Button, { onClick: this._restore }, "Restore"))));
};
NumberTextField.prototype._validateNumber = function (value) {
return isNaN(Number(value))
? "The value should be a number, actual is " + value + "."
: '';
};
NumberTextField.prototype._onChanged = function (value) {
return this.setState({
value: value
});
};
NumberTextField.prototype._restore = function () {
this.setState({
value: this.props.initialValue
});
};
return NumberTextField;
}(React.Component));
exports.NumberTextField = NumberTextField;
//# sourceMappingURL=NumberTextField.js.map