import * as React from 'react'; import * as _ from 'lodash'; import LexSingleInput from './LexSingleInput'; import { Image, Input, Card, Button } from 'semantic-ui-react'; const { Box } = require('reflexbox'); const imageRoot = '/png/'; export class LexEdit extends React.Component { public render() { let li = this.props.lexItem; let lexFields = _.keys(this.props.fieldMetaMap).map(field => { let defaultText = _.get(li, this.props.fieldMetaMap[field].lens, ''); let sh = (e: any) => { let eventData = {}; eventData[field] = e.target.value; this.handleOnChange(eventData); }; // let pred = (x: any) => _.isEqual(fieldMetaMap[ft].type, x); // _.findIndex(['text', 'number'], pred) !== -1 if (this.props.fieldMetaMap[field].type === 'text') { return ( ); } else if (this.props.fieldMetaMap[field].type === 'select') { return ( ); } else if (this.props.fieldMetaMap[field].type === 'preview' && defaultText !== '') { let imageSrc = imageRoot + defaultText; return ( ); } else { return null; } }); return ( {_.get(li, 'label', '')} language: {_.get(li, '$.id', '')} {lexFields} ); } private handleOnChange(event: any) { this.setState(event); } private handleOnSave(event: any) { console.log('saving object', this.props.lexItem); } }