UNPKG

react-multiselect-dropdown-configurable

Version:

fully configurable react multi select component

62 lines (58 loc) 1.69 kB
import * as react_jsx_runtime from 'react/jsx-runtime'; import React, { ReactNode } from 'react'; interface Option { value: string | number; label: string; key?: string; disabled?: boolean; checked?: boolean; data?: any; } interface ItemRendererProps { checked: boolean; option: { value: string | number; label: string; data?: any; }; onClick: () => void; disabled: boolean; } interface SelectProps { options: Option[]; value: Option[]; onChange?: any; PillRenderer?: ({ selectedOption, handlePillClose }: { selectedOption: any; handlePillClose: any; }) => React.JSX.Element; ItemRenderer?: (props: ItemRendererProps) => React.JSX.Element; showCheckedOnSelectedItems?: boolean; ArrowRenderer?: ({ expanded }: { expanded: any; }) => React.JSX.Element; isLoading?: boolean; disabled?: boolean; disableSearch?: boolean; shouldToggleOnHover?: boolean; searchFilterFunction?: (options: Option[], filterString: string) => Promise<Option[]> | Option[]; overrideStrings?: { [key: string]: string; }; labelledBy: string; className?: string; onMenuToggle?: any; ClearIcon?: ReactNode; debounceDuration?: number; HideClearIcon?: ReactNode; defaultIsOpen?: boolean; isOpen?: boolean; isCreatable?: boolean; onCreateOption?: (createText: string) => Option; closeOnChangedValue?: boolean; isError?: boolean; maxPillsToRender?: number; hidePickedOptions?: boolean; } declare const MultiSelect: (props: SelectProps) => react_jsx_runtime.JSX.Element; export { MultiSelect as default };