package com.noibu.mobile.reactnative import com.facebook.react.bridge.Promise import com.facebook.react.bridge.ReactApplicationContext import com.facebook.react.bridge.ReadableMap /** New-architecture TurboModule. `NativeNoibuReactNativeSpec` is generated by RN codegen from * `specs/NativeNoibuReactNative.ts` inside the consumer app build. */ class NoibuReactNativeModule(private val reactContext: ReactApplicationContext) : NativeNoibuReactNativeSpec(reactContext) { override fun getName(): String = NoibuModuleImpl.NAME override fun initialize(config: ReadableMap, promise: Promise) { NoibuModuleImpl.initialize(reactContext, config) { error -> if (error == null) promise.resolve(true) else promise.reject("E_INIT", error) } } override fun enableWebViewTracking(viewTag: Double, promise: Promise) { NoibuModuleImpl.enableWebViewTracking(reactContext, viewTag.toInt()) { error -> if (error == null) promise.resolve(true) else promise.reject("E_WEBVIEW", error) } } override fun trackNavigation(name: String?) = NoibuModuleImpl.trackNavigation(name) override fun addCustomAttribute(name: String, value: String) = NoibuModuleImpl.addCustomAttribute(name, value) override fun addError(message: String, stack: String?) = NoibuModuleImpl.addError(message, stack) override fun recordNetwork(event: ReadableMap) = NoibuModuleImpl.recordNetwork(event) }