package io.scanbot.sdk.capacitor import com.getcapacitor.JSObject import com.getcapacitor.PluginCall import io.scanbot.sdk_wrapper.exceptions.SBWrapperError import io.scanbot.sdk_wrapper.interfaces.SBResultDelegate import org.json.JSONObject class ScanbotSDKPluginResultDelegate(private val pluginCall: PluginCall) : SBResultDelegate { override fun onResolvePromise(result: Any?) { result?.let { when (it) { is JSONObject -> pluginCall.resolve(JSObject.fromJSONObject(it)) else -> pluginCall.resolve(JSObject.fromJSONObject(JSONObject().apply { put( "result", it ) })) } } ?: run { pluginCall.resolve() } } override fun onRejectPromise(error: SBWrapperError) { pluginCall.reject( error.message, error.code.toString(), ) } }