import React from 'react';
import { Dropdown } from '@theorchard/suite-components';
import { CURRENCIES } from 'src/constants';
import { getSelectedOptions } from 'src/utils/searchable-dropdown-option';

export interface CurrencySelectPropTypes {
    className?: string;
    isClearable?: boolean;
    isDisabled?: boolean;
    id: string;
    isMultiSelect?: boolean;
    onChange: any;
    name: string;
    placeholder?: string;
    value: string | [];
}

export const CurrencySelect: React.FC<CurrencySelectPropTypes> = ({
    className = '',
    isClearable = true,
    isDisabled = false,
    id,
    isMultiSelect = false,
    name,
    onChange,
    placeholder = '',
    value,
}) => (
    <>
        <Dropdown
            controlled
            className={`SelectCurrency ${className}`}
            closeMenuOnSelect={!isMultiSelect}
            id={id}
            isClearable={isClearable}
            isDisabled={isDisabled}
            isMulti={isMultiSelect}
            name={name}
            onChange={onChange}
            options={CURRENCIES}
            value={getSelectedOptions(CURRENCIES, value)}
            placeholder={placeholder}
            isLoading={false}
            selectedValue={value}
            testId="currencySelect"
        />
    </>
);

export default CurrencySelect;
