/* @oracle/oraclejet-preact: undefined */
import { jsx } from 'preact/jsx-runtime';
import { c as classNames } from './classNames-4e12b00d.js';
import { m as mergeProps } from './mergeProps-88ea8306.js';
import { u as useActive } from './useActive-fb6d4d52.js';
import { u as useTestId } from './useTestId-9b504481.js';
import { S as SvgDragV } from './DragV-a83df3e9.js';
import { iconStyle, activeStyle, hoverStyle } from './UNSAFE_DragHandle/themes/DragHandleStyles.css.js';

/**
 * A draggable icon that shows grab cursor when users hover the mouse on it,
 * and shows grabbing cursor when users click the icon.
 */
function DragHandle({ testId }) {
    const { isActive, activeProps } = useActive();
    const testIdProps = useTestId(testId);
    const classes = classNames([iconStyle, isActive ? activeStyle : hoverStyle]);
    return (jsx("div", { ...mergeProps(activeProps, testIdProps), draggable: true, class: classes, role: "presentation", children: jsx(SvgDragV, {}) }));
}

export { DragHandle as D };
//# sourceMappingURL=DragHandle-99d4c921.js.map
