UseEyeDropper
guarahooks/use-eye-dropperFreeHook
Pick colors from anywhere on the screen using the EyeDropper API.
Install it
npx shadcn@latest add https://guarahooks.com/r/use-eye-dropper.jsonSource
1'use client';23import { useCallback, useState } from 'react';45import useEyeDropper from 'use-eye-dropper';67type UseColorPickerReturn = {8 color: string;9 error: Error | null;10 isSupported: () => boolean;11 pickColor: () => void;12};1314export function useColorPicker(): UseColorPickerReturn {15 const { open, close, isSupported } = useEyeDropper();16 const [color, setColor] = useState('#fff');17 const [error, setError] = useState<Error | null>(null);1819 const pickColor = useCallback(() => {20 const openPicker = async () => {21 try {22 const pickedColor = await open();23 setColor(pickedColor.sRGBHex);24 setError(null);25 } catch (e: any) {26 console.log(e);27 if (!e.canceled) setError(e);28 }29 };30 openPicker();31 }, [open]);3233 return {34 color,35 error,36 isSupported,37 pickColor,38 };39}
Files it writes
More from guarahooks
All 100 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| UseAbortControlleruse-abort-controller | guarahooks | Hooks | Free | no deps | |
| UseArrayStateuse-array-state | guarahooks | Hooks | Free | no deps | |
| UseAxiosuse-axios | guarahooks | Hooks | Free | no deps | |
| UseBatteryStatususe-battery-status | guarahooks | Hooks | Free | no deps | |
| UseBetterAuthuse-better-auth | guarahooks | Hooks | Free | no deps | |
| UseClickOutsideuse-click-outside | guarahooks | Hooks | Free | no deps | |
| UseConfirmuse-confirm | guarahooks | Hooks | Free | no deps | |
| UseCookieuse-cookie | guarahooks | Hooks | Free | no deps |
