1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 | "use strict"; var __extends = (this && this.__extends) || (function () { var extendStatics = Object.setPrototypeOf || ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; return function (d, b) { extendStatics(d, b); function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata = (this && this.__metadata) || function (k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports, "__esModule", { value: true }); var React = require("react"); var ReactDOM = require("react-dom"); var react_materialize_1 = require("react-materialize"); require("./NumberStyles.css"); var radium_1 = require("radium"); var Number = (function (_super) { __extends(Number, _super); function Number(props) { var _this = _super.call(this, props) || this; _this.state = { value: _this.props['data-fieldValue'] ? _this.setValue(_this.props['data-fieldValue']) : _this.setValue(_this.props['data-defaultValue']) }; return _this; } Number.prototype.setValue = function (value) { if (value) { return value; } else { if (this.props['data-defaultValue']) { return this.props['data-defaultValue']; } else { return null; } } }; Number.prototype.isValid = function (value) { return value > this.props.min && value < this.props.max; }; Number.prototype.componentDidMount = function () { if (this.refs[this.props.name]) { var input = ReactDOM.findDOMNode(this.refs[this.props.name]).getElementsByTagName('input')[0]; if (this.isValid(input.value)) { input.setAttribute('class', 'validate'); } } }; Number.prototype.render = function () { switch (this.props['data-actionName']) { case 'edit': return (React.createElement(react_materialize_1.Input, { name: this.props.name, ref: this.props.name, type: 'number', label: this.props.required ? this.props['data-labelText'] + ' *' : this.props['data-labelText'], className: this.props.className, style: this.props.style, defaultValue: this.state.value, readOnly: this.props.readOnly, min: this.props.min, max: this.props.max, step: this.props['data-step'] ? this.props['data-step'] : 'any', required: this.props.required, disabled: this.props.readOnly, error: this.props['data-'], onChange: this.props.onChange, validate: true, s: 12, m: 12, l: 12 }, React.createElement(react_materialize_1.Icon, { className: 'numbericon' }, "%"))); case 'new': return (React.createElement(react_materialize_1.Input, { name: this.props.name, ref: this.props.name, type: 'number', label: this.props.required ? this.props['data-labelText'] + ' *' : this.props['data-labelText'], className: this.props.className, style: this.props.style, defaultValue: this.state.value, readOnly: this.props.readOnly, step: this.props['data-step'] ? this.props['data-step'] : 'any', min: this.props.min, max: this.props.max, required: this.props.required, disabled: this.props.readOnly, onChange: this.props.onChange, validate: true, s: 12, m: 12, l: 12 }, React.createElement(react_materialize_1.Icon, { className: 'numbericon' }, "%"))); case 'browse': return (React.createElement("div", null, React.createElement("label", null, this.props['data-labelText']), React.createElement("p", null, this.props['data-fieldValue'], this.props['data-isPercentage'] ? '%' : ''))); default: break; } }; Number = __decorate([ radium_1.default, __metadata("design:paramtypes", [Object]) ], Number); return Number; }(React.Component)); exports.Number = Number; //# sourceMappingURL=Number.js.map |