import { patchModel, settingsAtom } from '@yaakapp-internal/models'; import { useAtomValue } from 'jotai'; import { useCallback } from 'react'; export function useZoom() { const settings = useAtomValue(settingsAtom); const zoomIn = useCallback(async () => { if (!settings) return; await patchModel(settings, { interfaceScale: Math.min(1.8, settings.interfaceScale * 1.1), }); }, [settings]); const zoomOut = useCallback(async () => { if (!settings) return; await patchModel(settings, { interfaceScale: Math.max(0.4, settings.interfaceScale * 0.9), }); }, [settings]); const zoomReset = useCallback(async () => { await patchModel(settings, { interfaceScale: 1 }); }, [settings]); return { zoomIn, zoomOut, zoomReset }; }