@jaswinda/react-native-uvc-camera
Version:
51 lines • 1.92 kB
JavaScript
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
import React from 'react';
import { NativeModules, findNodeHandle, requireNativeComponent } from 'react-native';
const CameraModule = NativeModules.UVCCameraView;
if (CameraModule == null) {
console.error("Camera: Native Module 'UVCCameraView' was null!");
}
const ComponentName = 'UVCCameraView';
const NativeUVCCameraView = requireNativeComponent(ComponentName);
export class UVCCamera extends React.PureComponent {
constructor(props) {
super(props);
this.ref = /*#__PURE__*/React.createRef();
}
get handle() {
return findNodeHandle(this.ref.current);
}
render() {
return /*#__PURE__*/React.createElement(NativeUVCCameraView, _extends({}, this.props, {
ref: this.ref
}));
}
async openCamera() {
await CameraModule.openCamera(this.handle);
}
async closeCamera() {
await CameraModule.closeCamera(this.handle);
}
async takePhoto() {
return await CameraModule.takePhoto(this.handle);
}
async updateAspectRatio(width, height) {
await CameraModule.updateAspectRatio(this.handle, width, height);
}
async setCameraBright(value) {
await CameraModule.setCameraBright(this.handle, value);
}
async setCameraContrast(value) {
await CameraModule.setContast(this.handle, value);
}
async setCameraSaturation(value) {
await CameraModule.setSaturation(this.handle, value);
}
async setCameraSharpness(value) {
await CameraModule.setSharpness(this.handle, value);
}
async setCameraZoom(value) {
await CameraModule.setZoom(this.handle, value);
}
}
//# sourceMappingURL=UVCCamera.js.map