package io.scanbot.barcodesdk.plugin.reactnative import com.facebook.react.bridge.Promise import io.scanbot.barcodesdk.plugin.reactnative.extensions.toWritableArray import io.scanbot.barcodesdk.plugin.reactnative.extensions.toWritableMap import io.scanbot.sdk_wrapper.exceptions.SBWrapperError import io.scanbot.sdk_wrapper.interfaces.SBResultDelegate import org.json.JSONArray import org.json.JSONObject class ScanbotBarcodeSdkPluginResultDelegate(private val promise: Promise) : SBResultDelegate { override fun onResolvePromise(result: Any?) { when (result) { is JSONArray -> promise.resolve(result.toWritableArray()) is JSONObject -> promise.resolve(result.toWritableMap()) else -> promise.resolve(result) } } override fun onRejectPromise(error: SBWrapperError) { promise.reject(error.code.toString(), error.message) } }