/* * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ #ifdef DEBUG #import "FlipperModule.h" #import "FlipperReactNativeJavaScriptPluginManager.h" @implementation FlipperModule { __weak FlipperReactNativeJavaScriptPluginManager* _manager; } - (instancetype)init { return [self initWithManager:[FlipperReactNativeJavaScriptPluginManager sharedInstance]]; } - (instancetype)initWithManager: (FlipperReactNativeJavaScriptPluginManager*)manager { if (self = [super init]) { _manager = manager; } return self; } RCT_EXPORT_MODULE(Flipper) + (BOOL)requiresMainQueueSetup { return NO; } - (NSArray*)supportedEvents { return @[ @"react-native-flipper-plugin-connect", @"react-native-flipper-plugin-disconnect", @"react-native-flipper-receive-event", ]; } - (void)startObserving { } - (void)stopObserving { } RCT_EXPORT_METHOD(registerPlugin : (NSString*)pluginId inBackground : (BOOL)inBackground statusCallback : (RCTResponseSenderBlock)statusCallback) { [_manager registerPluginWithModule:self pluginId:pluginId inBackground:inBackground statusCallback:statusCallback]; } RCT_EXPORT_METHOD(send : (NSString*)pluginId method : (NSString*)method data : (NSString*)data) { [_manager sendWithPluginId:pluginId method:method data:data]; } RCT_EXPORT_METHOD(reportErrorWithMetadata : (NSString*)pluginId reason : (NSString*)reason stackTrace : (NSString*)stackTrace) { [_manager reportErrorWithMetadata:reason stackTrace:stackTrace pluginId:pluginId]; } RCT_EXPORT_METHOD(reportError : (NSString*)pluginId error : (NSString*)error) { [_manager reportError:error pluginId:pluginId]; } RCT_EXPORT_METHOD(subscribe : (NSString*)pluginId method : (NSString*)method) { [_manager subscribeWithModule:self pluginId:pluginId method:method]; } RCT_EXPORT_METHOD(respondSuccess : (NSString*)responderId data : (NSString*)data) { [_manager respondSuccessWithResponderId:responderId data:data]; } RCT_EXPORT_METHOD(respondError : (NSString*)responderId data : (NSString*)data) { [_manager respondErrorWithResponderId:responderId data:data]; } @end #endif