import React, { useState } from 'react';
import PropTypes from 'prop-types';
import { Spinner, Select, SelectOption, SelectVariant, Level, LevelItem } from '@patternfly/react-core';
import { ErrorCircleOIcon } from '@patternfly/react-icons';
const SelectableDropdown = ({
items, title, showTitle, selected, setSelected, loading, error,
}) => {
const [isOpen, setIsOpen] = useState(false);
const icon = () => {
if (error) return ;
if (loading) return ;
return null;
};
const onSelect = (_event, selection) => {
setSelected(selection);
setIsOpen(false);
};
const onToggle = open => setIsOpen(open);
const selectItems = items.map(item => );
return (
{showTitle &&
}
);
};
SelectableDropdown.propTypes = {
items: PropTypes.arrayOf(PropTypes.string).isRequired,
title: PropTypes.string.isRequired,
showTitle: PropTypes.bool,
selected: PropTypes.string.isRequired,
setSelected: PropTypes.func.isRequired,
// If the items are loaded dynamically, you can pass in loading or error states
loading: PropTypes.bool,
error: PropTypes.bool,
};
SelectableDropdown.defaultProps = {
loading: false,
error: false,
showTitle: true,
};
export default SelectableDropdown;