Security News
GitHub Removes Malicious Pull Requests Targeting Open Source Repositories
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
react-native-camera-hooks
Advanced tools
Hooks for React Native Camera
React Native Camera Hooks provides you with functionality to use the React Native Camera API with Functional Components.
import { View, TouchableOpacity, TouchableWithoutFeedback } from 'react-native';
import { RNCamera } from 'react-native-camera';
import { useCamera } from 'react-native-camera-hooks';
const FunctionalComponentExample = ({ initialProps }) => {
const [
{ cameraRef, type, ratio, autoFocus, autoFocusPoint, isRecording },
{
toggleFacing,
touchToFocus,
textRecognized,
facesDetected,
recordVideo,
setIsRecording,
},
] = useCamera(initialProps);
return (
<View style={{ flex: 1 }}>
<RNCamera
ref={cameraRef}
autoFocusPointOfInterest={autoFocusPoint.normalized}
type={type}
ratio={ratio}
style={{ flex: 1 }}
autoFocus={autoFocus}
onTextRecognized={textRecognized}
onFacesDetected={facesDetected}
/>
<TouchableWithoutFeedback
style={{
flex: 1,
}}
onPress={touchToFocus}
/>
<TouchableOpacity
testID="button"
onPress={toggleFacing}
style={{ width: '100%', height: 45 }}>
{type}
</TouchableOpacity>
{!isRecording && (
<TouchableOpacity
onPress={async () => {
try {
setIsRecording(true);
const data = await recordVideo();
console.warn(data);
} catch (error) {
console.warn(error);
} finally {
setIsRecording(false);
}
}}
style={{ width: '100%', height: 45 }}
/>
)}
</View>
);
};
Constants are defined in constants and initalState.
Function | Description |
---|---|
useCamera(initialState) | Includes all camera hooks described below. See also the example above |
useZoom(state) | Zoom feature. Includes zoom , setZoom , zoomIn (increment by 0.01) and zoomOut (decrement by 0.1) |
useToggleFacing(state, modes) | Toggles between two values (front and back side of the camera). Includes type , toggleFacing . |
useAutoFocus(state, modes) | Toggles between two values (focus on or off). Includes autoFocus and toggleAutoFocus . |
useWhiteBalance(state) | Toggles between white balance values. Includes whiteBalance , toggleWB and setWhiteBalance . |
useFlash(state) | Toggles between flash modes. Includes flash , toggleFlash and setFlash . |
useAutoFocusTouch(state) | Touch to focus feature. Includes autoFocusPoint , touchToFocus (callback to be used in onPress for example) and setAutoFocusPoint . |
useTextRecognition(state) | Text recognition feature. Includes textBlocks , setTextblocks and textRecognized (callback). |
useFaceDetection(state) | Face detection feature. Includes faces , setFaces and facesDetected (callback). |
useBarcodeDetection(state) | Barcode detection feature. Includes barcodes , setBarcodes and barcodeRecognized (callback). |
takePicture({ cameraRef }, options) | Function to take a picture. Returns a Promise with the result. defaultPictureTakeOptions can also be imported from the same file. |
recordVideo({ cameraRef }, options) | Function to record a video. Returns a Promise with the result. defaultVideoRecordOptions can also be imported from the same file. |
stopRecording({ cameraRef }) | Function to stop recording. Returns a Promise. |
pausePreview({ cameraRef }) | Function to pause the camera preview. Returns a Promise with the result as a boolean. |
resumePreview({ cameraRef }) | Function to resume the camera preview. Returns a Promise with the result as a boolean. |
To install react-native-camera-hooks, do either
npm install --save react-native-camera-hooks
or
yarn add react-native-camera-hooks
Note that this requires a react-native version > 0.59 which supports React Hooks. Also, react-native-camera has to be installed.
FAQs
React Native Hooks for the react-native-camera module.
We found that react-native-camera-hooks demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
Security News
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.
Security News
Node.js will be enforcing stricter semver-major PR policies a month before major releases to enhance stability and ensure reliable release candidates.