- index.ts
- Functions
- Interfaces
- Types
- Enums
- Variables
function useDropdownHandler(options: RequiredUndefined<DropdownHandlerOptions>): DropdownHandlerResult;
Parameters
Name | Type |
---|---|
options | RequiredUndefined<DropdownHandlerOptions> |
Return type
function useDropdownOpenState(isOpen: boolean | undefined = undefined, defaultIsOpen: boolean = false): [boolean, Dispatch];
Parameters
Name | Type | Default value |
---|---|---|
isOpen | boolean | undefined | undefined |
defaultIsOpen | boolean | false |
Return type
[boolean, Dispatch]
function useKeyboardKeyUp(callback: (event: KeyboardEvent) => void): void;
Parameters
Name | Type |
---|---|
callback | (event: KeyboardEvent) => void |
Return type
void
function useWindowClick(callback: (event: MouseEvent) => void): void;
Parameters
Name | Type |
---|---|
callback | (event: MouseEvent) => void |
Return type
void
interface DropdownHandlerProps extends ClassNameProps, Partial<DropdownHandlerOptions> {
children?: ReactNode;
toggleOnHeaderClick?: boolean | undefined;
closeOnSectionClick?: boolean | undefined;
}
Extends
Partial<DropdownHandlerOptions>
Properties
Name | Type | Optional |
---|---|---|
children | ReactNode | true |
toggleOnHeaderClick | boolean | undefined | true |
closeOnSectionClick | boolean | undefined | true |
interface DropdownHeaderProps extends ClassNameProps {
children?: ReactNode;
}
Extends
Properties
Name | Type | Optional |
---|---|---|
children | ReactNode | true |
interface DropdownSectionProps extends ClassNameProps {
children?: ReactNode;
}
Extends
Properties
Name | Type | Optional |
---|---|---|
children | ReactNode | true |
interface DropdownHandlerOptions {
defaultIsOpen: boolean;
isOpen: boolean;
onToggle: DropdownOnToggleHandler;
disabled: boolean;
closeOnOutsideClick: boolean;
closeOnEscapeClick: boolean;
}
Properties
Name | Type | Optional |
---|---|---|
defaultIsOpen | boolean | false |
isOpen | boolean | false |
onToggle | DropdownOnToggleHandler | false |
disabled | boolean | false |
closeOnOutsideClick | boolean | false |
closeOnEscapeClick | boolean | false |
interface DropdownHandlerResult {
updateOpenState: (isOpen: boolean, eventSource: DropdownEventSource) => void;
isOpen: boolean;
containerRef: RefObject<HTMLElement | undefined>;
}
Properties
Name | Type | Optional |
---|---|---|
updateOpenState | (isOpen: boolean, eventSource: DropdownEventSource) => void | false |
isOpen | boolean | false |
containerRef | RefObject<HTMLElement | undefined> | false |
interface DropdownContextDto {
isOpen: boolean;
isDisabled: boolean;
onHeaderClick: () => void;
onSectionClick: () => void;
}
Properties
Name | Type | Optional |
---|---|---|
isOpen | boolean | false |
isDisabled | boolean | false |
onHeaderClick | () => void | false |
onSectionClick | () => void | false |
interface ClassNameProps {
className?: string | undefined;
openClassName?: string | undefined;
closedClassName?: string | undefined;
disabledClassName?: string | undefined;
}
Properties
Name | Type | Optional |
---|---|---|
className | string | undefined | true |
openClassName | string | undefined | true |
closedClassName | string | undefined | true |
disabledClassName | string | undefined | true |
type OpenStateUpdater = Dispatch<SetStateAction<boolean>>;
Type
Dispatch<SetStateAction>
type DropdownOnToggleHandler = (isOpen: boolean, source: DropdownEventSource) => void;
Type
(isOpen: boolean, source: DropdownEventSource) => void
type RequiredUndefined<TT> = {
[TKey extends keyof TT]: TT[TKey] | undefined
};
Type parameters
Name |
---|
TT |
Type
{ [TKey extends keyof TT]: TT[TKey] | undefined }
enum DropdownEventSource {
HeaderClick = 8,
SectionClick = 16,
OutsideClick = 24,
EscapeClick = 32,
ManualTrigger = 64
}
Members
Name | Value |
---|---|
HeaderClick | 8 |
SectionClick | 16 |
OutsideClick | 24 |
EscapeClick | 32 |
ManualTrigger | 64 |
const DropdownHandler: (_props: DropdownHandlerProps) => Element;
Type
(_props: DropdownHandlerProps) => Element
const DropdownHeader: (props: DropdownHeaderProps) => Element;
Type
(props: DropdownHeaderProps) => Element
const DropdownSection: (props: DropdownSectionProps) => Element | null;
Type
(props: DropdownSectionProps) => Element | null
const DropdownContext: Context<DropdownContextDto>;
Type
Context<DropdownContextDto>