page: number;
defaultIcon: IconType;
defaultMessages: string[];
+ contextMenuColumn: boolean;
}
interface DataExplorerActionProps<T> {
+ onSetColumns: (columns: DataColumns<T>) => void;
onSearch: (value: string) => void;
onRowClick: (item: T) => void;
onRowDoubleClick: (item: T) => void;
export const DataExplorer = withStyles(styles)(
class DataExplorerGeneric<T> extends React.Component<DataExplorerProps<T>> {
+ componentDidMount() {
+ if (this.props.onSetColumns) {
+ this.props.onSetColumns(this.props.columns);
+ }
+ }
render() {
const {
columns, onContextMenu, onFiltersChange, onSortToggle, extractKey,
</Grid>
</Toolbar>
<DataTable
- columns={[...columns, this.contextMenuColumn]}
+ columns={this.props.contextMenuColumn ? [...columns, this.contextMenuColumn] : columns}
items={items}
onRowClick={(_, item: T) => onRowClick(item)}
onContextMenu={onContextMenu}
</IconButton>
</Grid>
- contextMenuColumn = {
+ contextMenuColumn: DataColumn<any> = {
name: "Actions",
selected: true,
configurable: false,