package io.scanbot.sdk.reactnative.components.cropping_view import com.facebook.react.bridge.Arguments import com.facebook.react.bridge.WritableMap import io.scanbot.sdk.reactnative.extensions.toWritableMap import io.scanbot.sdk.reactnative.models.BaseEvent import io.scanbot.sdk.reactnative.models.CroppingViewCroppedAreaResult import io.scanbot.sdk_wrapper.SBWrapper import io.scanbot.sdk_wrapper.exceptions.SBWrapperError class CroppingViewExtractCroppedAreaEvent(private val result: CroppingViewCroppedAreaResult) : BaseEvent { companion object { const val NAME = "croppedAreaResult" } override val eventName = NAME override fun parseData(): WritableMap { return Arguments.createMap().apply { putString("result", SBWrapper.gson.toJson(result)) } } } class CroppingViewErrorEvent(private val error: SBWrapperError) : BaseEvent { constructor(ex: Throwable) : this(SBWrapperError(ex)) companion object { const val NAME = "error" } override val eventName = NAME override fun parseData(): WritableMap { return error.toJson().toWritableMap() } }