@lyra/form-builder
Version:
Lyra form builder
56 lines (41 loc) • 1.42 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = require('react');
var _react2 = _interopRequireDefault(_react);
var _resolveTypeName = require('../../utils/resolveTypeName');
var _InvalidValueInput = require('../InvalidValueInput');
var _InvalidValueInput2 = _interopRequireDefault(_InvalidValueInput);
var _PatchEvent = require('../../PatchEvent');
var _PatchEvent2 = _interopRequireDefault(_PatchEvent);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/*:: type Type = {
name: string,
of: Array<Type>
}*/
class Item extends _react2.default.PureComponent /*:: <*>*/ {
constructor(...args) {
var _temp;
return _temp = super(...args), this.handleChange = (event /*: PatchEvent*/) => {
var _props = this.props;
const onChange = _props.onChange,
value = _props.value;
onChange(event, value);
}, _temp;
}
render() {
var _props2 = this.props;
const type = _props2.type,
value = _props2.value;
const actualType = (0, _resolveTypeName.resolveTypeName)(value);
const validTypes = type.of.map(ofType => ofType.name);
return _react2.default.createElement(_InvalidValueInput2.default, {
actualType: actualType,
validTypes: validTypes,
onChange: this.handleChange,
value: value
});
}
}
exports.default = Item;