import React from 'react';
import {
Button,
Checkbox,
Dropdown,
DropdownPosition,
DropdownToggle,
DropdownItem,
Level,
LevelItem,
TextInput,
Toolbar,
ToolbarGroup,
ToolbarItem,
} from '@patternfly/react-core';
import {
BarsIcon,
EqualsIcon,
SortAlphaDownIcon,
SortAlphaUpIcon,
SortNumericDownIcon,
SortNumericUpIcon,
TrashAltIcon,
} from '@patternfly/react-icons';
import {
Link
} from 'react-router-dom';
import Tooltip from '../Tooltip';
class DataListToolbar extends React.Component {
constructor (props) {
super(props);
const { sortedColumnKey } = this.props;
this.state = {
isSearchDropdownOpen: false,
isSortDropdownOpen: false,
searchKey: sortedColumnKey,
searchValue: '',
};
}
handleSearchInputChange = searchValue => {
this.setState({ searchValue });
};
onSortDropdownToggle = isSortDropdownOpen => {
this.setState({ isSortDropdownOpen });
};
onSortDropdownSelect = ({ target }) => {
const { columns, onSort, sortOrder } = this.props;
const [{ key }] = columns.filter(({ name }) => name === target.innerText);
this.setState({ isSortDropdownOpen: false });
onSort(key, sortOrder);
};
onSearchDropdownToggle = isSearchDropdownOpen => {
this.setState({ isSearchDropdownOpen });
};
onSearchDropdownSelect = ({ target }) => {
const { columns } = this.props;
const targetName = target.innerText;
const [{ key }] = columns.filter(({ name }) => name === targetName);
this.setState({ isSearchDropdownOpen: false, searchKey: key });
};
render () {
const { up } = DropdownPosition;
const {
columns,
isAllSelected,
onSearch,
onSelectAll,
onSort,
sortedColumnKey,
sortOrder,
addUrl
} = this.props;
const {
// isActionDropdownOpen,
isSearchDropdownOpen,
isSortDropdownOpen,
searchKey,
searchValue,
} = this.state;
const [searchColumn] = columns
.filter(({ key }) => key === searchKey);
const searchColumnName = searchColumn.name;
const [sortedColumn] = columns
.filter(({ key }) => key === sortedColumnKey);
const sortedColumnName = sortedColumn.name;
const isSortNumeric = sortedColumn.isNumeric;
const displayedSortIcon = () => {
let icon;
if (sortOrder === 'ascending') {
icon = isSortNumeric ? (