package com.blaze.rtnblazesdk.events import com.blaze.blazesdk.shared.results.BlazeResult import com.facebook.react.bridge.Arguments import com.facebook.react.bridge.WritableMap class WidgetDataLoadCompletedEvent( surfaceId: Int, viewTag: Int, val widgetId: String?, val itemsCount: Int, val result: BlazeResult? ) : BaseEvent(surfaceId, viewTag) { companion object { // The name just needs to be unique, the way it's called on the React side is defined elsewhere. const val EVENT_NAME = "Blaze.WidgetDataLoadCompletedEvent" } override fun getEventName(): String { return EVENT_NAME } override fun getEventData(): WritableMap? { val event = Arguments.createMap() event.putString("widgetId", widgetId) event.putInt("itemsCount", itemsCount) if (result is BlazeResult.Error) { event.putString("error", result.message ?: "Unknown error") } return event } }