import React, { useState } from 'react'; import classnames from 'classnames'; export interface OptionProp { name: string; value: string; isActive?: boolean; } export interface Props { options: OptionProp[]; selected: string; onChange: (value: string) => void; } const PeriodFilter = ({ options, selected, onChange }: Props) => { const [ isOpen, setOpen ] = useState(false); const toggleOpen = () => { setOpen(!isOpen); }; const close = () => { setOpen(false); }; const handleSelection = (option) => () => { if (option.isActive && onChange) { onChange(option.value); } }; const listClassName = classnames('c-period-filter__container', { 'c-period-filter__container--open': isOpen }); const blockerClassName = classnames('c-blocker', { 'c-blocker--active': isOpen }); const chevronClassName = classnames('c-period-filter__chevron', { 'icon-flat-arrow-up': isOpen, 'icon-flat-arrow-down': !isOpen }); return <>