react-native-vision-camera
Version:
VisionCamera is the fastest and most powerful Camera for react-native.
22 lines (21 loc) • 714 B
JavaScript
import { useEffect } from 'react';
import { VisionCameraWorkletsProxy } from '../../third-party/VisionCameraWorkletsProxy';
export function useZoomUpdater(controller, zoom) {
useEffect(() => {
if (controller == null)
return;
if (zoom == null)
return;
if (typeof zoom === 'number') {
// number
controller.setZoom(zoom);
return;
}
else {
// SharedValue<number>
controller.setZoom(zoom.get());
const listener = VisionCameraWorkletsProxy.bindUIUpdatesToController(zoom, controller, 'setZoom');
return () => listener.remove();
}
}, [controller, zoom]);
}