import React = require('react'); import { computed } from 'mobx'; import { observer } from 'mobx-react'; import { EditableView } from '../../EditableView'; import './CollectionSchemaView.scss'; import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; export interface SchemaColumnHeaderProps { columnKeys: string[]; columnWidths: number[]; columnIndex: number; changeColumnKey: (index: number, newKey: string) => boolean; addColumn: (index: number) => void; removeColumn: (index: number) => void; resizeColumn: (e: any, index: number, left: boolean) => void; } @observer export class SchemaColumnHeader extends React.Component { @computed get fieldKey() { return this.props.columnKeys[this.props.columnIndex]; } render() { return (
this.props.resizeColumn(e, this.props.columnIndex, true)}>
this.props.changeColumnKey(this.props.columnIndex, newKey)} GetValue={() => this.fieldKey} contents={this.fieldKey} />
{ this.props.addColumn(this.props.columnIndex + 1); }}>
{ this.props.removeColumn(this.props.columnIndex); }}>
this.props.resizeColumn(e, this.props.columnIndex, false)}>
); } }