package com.dynamsoft.reactnativelib import com.dynamsoft.reactnativelib.dce.CameraEnhancerModuleImpl import com.facebook.react.bridge.Promise import com.facebook.react.bridge.ReactApplicationContext import com.facebook.react.bridge.ReadableMap import com.facebook.react.bridge.WritableMap class DCEModule(reactApplicationContext: ReactApplicationContext) : NativeDynamsoftCameraViewModuleSpec(reactApplicationContext) { val impl = CameraEnhancerModuleImpl(reactApplicationContext) override fun getName(): String = impl.getName() override fun createInstance(): String { return impl.createInstance() } override fun destroyInstance(isaId: String): Boolean { return impl.destroyInstance(isaId) } override fun requestCameraPermission() { impl.requestCameraPermission() } override fun open() { impl.open() } override fun close() { impl.close() } override fun setCameraView(viewId: Double) { impl.setCameraView(viewId.toInt()) } override fun selectCamera(position: Double) { impl.selectCamera(position.toInt()) } override fun getCameraPosition(promise: Promise) { impl.getCameraPosition(promise) } override fun setFocus(floatX: Double, floatY: Double, focusMode: Double) { impl.setFocus(floatX.toFloat(), floatY.toFloat(), focusMode.toInt()) } override fun getFocusMode(promise: Promise) { impl.getFocusMode(promise) } override fun setZoomFactor(factor: Double) { impl.setZoomFactor(factor.toFloat()) } override fun getZoomFactor(promise: Promise) { impl.getZoomFactor(promise) } override fun enableEnhancedFeatures(features: Double) { impl.enableEnhancedFeatures(features.toInt()) } override fun disableEnhancedFeatures(features: Double) { impl.disableEnhancedFeatures(features.toInt()) } override fun setScanRegion(region: ReadableMap?) { impl.setScanRegion(region) } override fun getScanRegion(promise: Promise) { impl.getScanRegion(promise) } override fun turnOnTorch() { impl.turnOnTorch() } override fun turnOffTorch() { impl.turnOffTorch() } override fun setResolution(resolution: Double) { impl.setResolution(resolution.toInt()) } override fun getResolution(promise: Promise) { impl.getResolution(promise) } override fun beep() { impl.beep() } override fun vibrate() { impl.vibrate() } override fun convertRectToViewCoordinates(rect: ReadableMap): WritableMap { return impl.convertRectToViewCoordinates(rect) } override fun convertPointToViewCoordinates(point: ReadableMap): WritableMap { return impl.convertPointToViewCoordinates(point) } }