UNPKG

sn-controls-react

Version:

React controls for sensenet ECM

76 lines 3.83 kB
"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 __()); }; })(); Object.defineProperty(exports, "__esModule", { value: true }); var React = require("react"); var react_materialize_1 = require("react-materialize"); var DropDownList = (function (_super) { __extends(DropDownList, _super); function DropDownList(props) { var _this = _super.call(this, props) || this; _this.state = {}; return _this; } DropDownList.prototype.getSelectedValue = function () { var selected; this.props.options.map(function (option) { if (option.Selected) { selected = option.Value; } }); return selected; }; DropDownList.prototype.getTextByValue = function (value) { var text = ''; if (value) { this.props.options.map(function (option) { if (option.Value === value.toString()) { text = option.Text; } }); } else { this.props.options.map(function (option) { if (option.Selected) { text = option.Text; } }); } return text; }; DropDownList.prototype.render = function () { switch (this.props['data-actionName']) { case 'edit': return (React.createElement(react_materialize_1.Input, { type: 'select', label: this.props.required ? this.props['data-labelText'] + ' *' : this.props['data-labelText'], multiple: this.props['data-allowMultiple'], name: this.props.name, defaultValue: this.getSelectedValue(), error: this.props['data-errorText'], onChange: this.props.onChange, s: 12 }, this.props.options.map(function (option) { return (React.createElement("option", { key: option.Value, value: option.Value, className: 'indent' }, option.Text)); }))); case 'new': return (React.createElement(react_materialize_1.Input, { type: 'select', label: this.props.required ? this.props['data-labelText'] + ' *' : this.props['data-labelText'], multiple: this.props['data-allowMultiple'], name: this.props.name, defaultValue: this.props['data-defaultValue'], error: this.props['data-errorText'], onChange: this.props.onChange, s: 12 }, this.props.options.map(function (option) { return (React.createElement("option", { key: option.Value, value: option.Value, className: 'indent' }, option.Text)); }))); case 'browse': return (React.createElement("div", null, React.createElement("label", null, this.props['data-labelText']), React.createElement("div", null, this.getTextByValue(this.props['data-fieldValue'])))); default: return (React.createElement("div", null, React.createElement("label", null, this.props['data-labelText']), React.createElement("div", null, this.getTextByValue(this.props['data-fieldValue'])))); } }; return DropDownList; }(React.Component)); exports.DropDownList = DropDownList; //# sourceMappingURL=DropDownList.js.map