pkg-components
Version:
18 lines (13 loc) • 495 B
text/typescript
import { useState } from 'react'
import { calculateHue } from '../helpers/huePosition'
import { handleHueKeyboard } from '../helpers/keyboardHandlers'
export const useHue = () => {
const [hue, setHue] = useState(0);
const update = (clientX: number, rect: DOMRect) => {
setHue(calculateHue(clientX, rect));
};
const onKey = (key: string, shiftKey: boolean) => {
setHue(prev => handleHueKeyboard(key, shiftKey, prev));
};
return { hue, update, onKey };
};