monday-ui-react-core
Version:
Official monday.com UI resources for application development in React.js
22 lines (21 loc) • 1.16 kB
TypeScript
import React from "react";
import { ClickableProps } from "../../components/Clickable/Clickable";
/**
* Return props for adding clickable functionality to the element except for the styles and classNames
*/
export default function useClickableProps({ onClick, onMouseDown, onMouseEnter, onMouseLeave, disabled, id, dataTestId: backwardCompatabilityDataTestId, "data-testid": dataTestId, role, tabIndex, ariaLabel, ariaHidden, ariaHasPopup, ariaExpanded }: ClickableProps, ref: React.ForwardedRef<HTMLElement>): {
ref: React.RefObject<HTMLElement>;
id: string;
"data-testid": string;
onClick: (event: React.MouseEvent<Element, MouseEvent> | React.KeyboardEvent<Element>) => void;
onKeyDown: (e: React.KeyboardEvent<Element>) => void;
onMouseDown: (event: React.MouseEvent<Element, MouseEvent>) => void;
onMouseEnter: (event: React.MouseEvent<Element, MouseEvent>) => void;
onMouseLeave: (event: React.MouseEvent<Element, MouseEvent>) => void;
tabIndex: number;
role: React.AriaRole;
"aria-label": string;
"aria-hidden": boolean;
"aria-haspopup": boolean;
"aria-expanded": boolean;
};