UNPKG

desmy-react

Version:

Introducing an easy-to-use, lightning-fast React.js component that streamlines your development process. Our solution prioritizes simplicity, speed, and optimization, making it a breeze to build projects in React.

78 lines (77 loc) 2.51 kB
import { default as React, Component, ChangeEvent } from 'react'; import { DesmyDropdownItem } from '../apis/SharedProps'; interface DropdownRequest { url: string; token?: string; } interface Props { defaultValue?: string | any | DesmyDropdownItem | DesmyDropdownItem[]; data?: DesmyDropdownItem[]; request?: DropdownRequest; selectedData?: DesmyDropdownItem | DesmyDropdownItem[] | undefined; is_multiple?: boolean; type?: string; handleChange?: (data: DesmyDropdownItem | DesmyDropdownItem[]) => void; handleDropdownChange?: (data: DesmyDropdownItem | DesmyDropdownItem[], type?: string) => void; disabled?: boolean; placeholder?: string; emptymessage?: string; all?: string; dropdownClass?: string; dropdownListClass?: string; containerClassName?: string; enableDecrypt?: boolean; onClear?: string; handleClear?: () => void; className?: string; onRef?: (ref: DesmyDropdown | null) => void; } interface State { dropdownPopoverShow: boolean; selectedMultiple: DesmyDropdownItem[]; datalist: DesmyDropdownItem[]; defaultValue?: string; intervalId: number; hasLoaded: boolean; clear: boolean; requestUrl: string; bgColor: string; isLoading: boolean; input: { search: string; }; selectedAll?: boolean; selectedList: DesmyDropdownItem; error: { state: boolean; message: string; }; } declare class DesmyDropdown extends Component<Props, State> { private btnDropdownRef; private divRef; private dropdownContentRef; private searchRef; private hasCleared; constructor(props: Props); componentDidMount(): void; componentDidUpdate(prevProps: Props): void; componentWillUnmount(): void; handleClickOutside: (event: MouseEvent) => void; handleChange: (event: ChangeEvent<HTMLInputElement>) => void; handleDefault: () => Promise<void>; handleDefaultClear: () => void; handleEncrypt: (data: any) => any; fetch: () => Promise<void>; handleError: (message?: string) => void; onClear: () => void; openDropdownPopover: () => void; closeDropdownPopover: () => void; handleSelectAll: () => void; handleClear: () => void; handleSelectedItem: (e: React.MouseEvent<HTMLDivElement>, data: DesmyDropdownItem) => void; handleClearSearch: () => void; handleClickAway: () => void; render(): import("react/jsx-runtime").JSX.Element; } export { DesmyDropdown };