diff --git a/ios/FabricExample.xcodeproj/project.pbxproj b/ios/FabricExample.xcodeproj/project.pbxproj index 755c531..9c27459 100644 --- a/ios/FabricExample.xcodeproj/project.pbxproj +++ b/ios/FabricExample.xcodeproj/project.pbxproj @@ -14,6 +14,8 @@ 3A21707CF8BA2A8317872206 /* libPods-FabricExample.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1187585E51CFC5B2853E13D6 /* libPods-FabricExample.a */; }; 81AB9BB82411601600AC10FF /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */; }; 866E8F6C31273213B04362D8 /* libPods-FabricExample-FabricExampleTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 86110D4644D64952DF96D9C3 /* libPods-FabricExample-FabricExampleTests.a */; }; + DE32070B26CEA50D0068A4DC /* FabricExampleTurboModuleProvider.h in Sources */ = {isa = PBXBuildFile; fileRef = DE32070926CEA50D0068A4DC /* FabricExampleTurboModuleProvider.h */; }; + DE32070C26CEA50D0068A4DC /* FabricExampleTurboModuleProvider.mm in Sources */ = {isa = PBXBuildFile; fileRef = DE32070A26CEA50D0068A4DC /* FabricExampleTurboModuleProvider.mm */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -42,6 +44,8 @@ 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = LaunchScreen.storyboard; path = FabricExample/LaunchScreen.storyboard; sourceTree = ""; }; 86110D4644D64952DF96D9C3 /* libPods-FabricExample-FabricExampleTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-FabricExample-FabricExampleTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; CB43910038FE645F788B211A /* Pods-FabricExample.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-FabricExample.release.xcconfig"; path = "Target Support Files/Pods-FabricExample/Pods-FabricExample.release.xcconfig"; sourceTree = ""; }; + DE32070926CEA50D0068A4DC /* FabricExampleTurboModuleProvider.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = FabricExampleTurboModuleProvider.h; path = FabricExample/FabricExampleTurboModuleProvider.h; sourceTree = ""; }; + DE32070A26CEA50D0068A4DC /* FabricExampleTurboModuleProvider.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = FabricExampleTurboModuleProvider.mm; path = FabricExample/FabricExampleTurboModuleProvider.mm; sourceTree = ""; }; ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; }; F00065E4944EB1DB705AD658 /* Pods-FabricExample.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-FabricExample.debug.xcconfig"; path = "Target Support Files/Pods-FabricExample/Pods-FabricExample.debug.xcconfig"; sourceTree = ""; }; /* End PBXFileReference section */ @@ -127,6 +131,8 @@ 83CBB9F61A601CBA00E9B192 = { isa = PBXGroup; children = ( + DE32070926CEA50D0068A4DC /* FabricExampleTurboModuleProvider.h */, + DE32070A26CEA50D0068A4DC /* FabricExampleTurboModuleProvider.mm */, 13B07FAE1A68108700A75B9A /* FabricExample */, 832341AE1AAA6A7D00B99B32 /* Libraries */, 00E356EF1AD99517003FC87E /* FabricExampleTests */, @@ -410,6 +416,8 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + DE32070B26CEA50D0068A4DC /* FabricExampleTurboModuleProvider.h in Sources */, + DE32070C26CEA50D0068A4DC /* FabricExampleTurboModuleProvider.mm in Sources */, 13B07FBC1A68108700A75B9A /* AppDelegate.mm in Sources */, 13B07FC11A68108700A75B9A /* main.m in Sources */, ); @@ -532,7 +540,7 @@ buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "c++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -597,7 +605,7 @@ buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "c++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; diff --git a/ios/FabricExample/AppDelegate.h b/ios/FabricExample/AppDelegate.h index ef1de86..25c4461 100644 --- a/ios/FabricExample/AppDelegate.h +++ b/ios/FabricExample/AppDelegate.h @@ -1,8 +1,10 @@ -#import #import -@interface AppDelegate : UIResponder +@class RCTBridge; + +@interface AppDelegate : UIResponder @property (nonatomic, strong) UIWindow *window; +@property (nonatomic, readonly) RCTBridge *bridge; @end diff --git a/ios/FabricExample/AppDelegate.mm b/ios/FabricExample/AppDelegate.mm index 3be454d..d5488e4 100644 --- a/ios/FabricExample/AppDelegate.mm +++ b/ios/FabricExample/AppDelegate.mm @@ -1,8 +1,23 @@ #import "AppDelegate.h" #import +#import +#import +#import #import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import #import +#import #ifdef FB_SONARKIT_ENABLED #import @@ -11,52 +26,149 @@ #import #import #import +#endif -static void InitializeFlipper(UIApplication *application) { - FlipperClient *client = [FlipperClient sharedClient]; - SKDescriptorMapper *layoutDescriptorMapper = [[SKDescriptorMapper alloc] initWithDefaults]; - [client addPlugin:[[FlipperKitLayoutPlugin alloc] initWithRootNode:application withDescriptorMapper:layoutDescriptorMapper]]; - [client addPlugin:[[FKUserDefaultsPlugin alloc] initWithSuiteName:nil]]; - [client addPlugin:[FlipperKitReactPlugin new]]; - [client addPlugin:[[FlipperKitNetworkPlugin alloc] initWithNetworkAdapter:[SKIOSNetworkAdapter new]]]; - [client start]; +#import + +#import + +#import "FabricExampleTurboModuleProvider.h" + + +@interface AppDelegate () { + RCTSurfacePresenterBridgeAdapter *_bridgeAdapter; + std::shared_ptr _reactNativeConfig; + facebook::react::ContextContainer::Shared _contextContainer; + RCTTurboModuleManager *_turboModuleManager; } -#endif +@end @implementation AppDelegate - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { -#ifdef FB_SONARKIT_ENABLED - InitializeFlipper(application); -#endif - RCTBridge *bridge = [[RCTBridge alloc] initWithDelegate:self launchOptions:launchOptions]; - RCTRootView *rootView = [[RCTRootView alloc] initWithBridge:bridge - moduleName:@"FabricExample" - initialProperties:nil]; + RCTEnableTurboModule(YES); - if (@available(iOS 13.0, *)) { - rootView.backgroundColor = [UIColor systemBackgroundColor]; - } else { - rootView.backgroundColor = [UIColor whiteColor]; - } + _bridge = [[RCTBridge alloc] initWithDelegate:self launchOptions:launchOptions]; + + NSDictionary *initProps = @{}; + + _contextContainer = std::make_shared(); + _reactNativeConfig = std::make_shared(); + + _contextContainer->insert("ReactNativeConfig", _reactNativeConfig); + + _bridgeAdapter = [[RCTSurfacePresenterBridgeAdapter alloc] initWithBridge:_bridge contextContainer:_contextContainer]; + + _bridge.surfacePresenter = _bridgeAdapter.surfacePresenter; + UIView *rootView = [[RCTFabricSurfaceHostingProxyRootView alloc] initWithBridge:_bridge + moduleName:@"FabricExample" + initialProperties:initProps]; + self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds]; UIViewController *rootViewController = [UIViewController new]; rootViewController.view = rootView; self.window.rootViewController = rootViewController; [self.window makeKeyAndVisible]; + [self initializeFlipper:application]; return YES; } -- (NSURL *)sourceURLForBridge:(RCTBridge *)bridge + + +#ifdef FB_SONARKIT_ENABLED +- (void)initializeFlipper:(UIApplication *)application { + FlipperClient *client = [FlipperClient sharedClient]; + SKDescriptorMapper *layoutDescriptorMapper = [[SKDescriptorMapper alloc] initWithDefaults]; + [client addPlugin:[[FlipperKitLayoutPlugin alloc] initWithRootNode:application withDescriptorMapper:layoutDescriptorMapper]]; + [client addPlugin:[[FKUserDefaultsPlugin alloc] initWithSuiteName:nil]]; + [client addPlugin:[FlipperKitReactPlugin new]]; + [client addPlugin:[[FlipperKitNetworkPlugin alloc] initWithNetworkAdapter:[SKIOSNetworkAdapter new]]]; + [client start]; +} +#endif + + +- (NSURL *)sourceURLForBridge:(__unused RCTBridge *)bridge { -#if DEBUG return [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" fallbackResource:nil]; -#else - return [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"]; +} + +- (void)loadSourceForBridge:(RCTBridge *)bridge + onProgress:(RCTSourceLoadProgressBlock)onProgress + onComplete:(RCTSourceLoadBlock)loadCallback +{ + [RCTJavaScriptLoader loadBundleAtURL:[self sourceURLForBridge:bridge] onProgress:onProgress onComplete:loadCallback]; +} + +#pragma mark - RCTCxxBridgeDelegate + +- (std::unique_ptr)jsExecutorFactoryForBridge:(RCTBridge *)bridge +{ + _turboModuleManager = [[RCTTurboModuleManager alloc] initWithBridge:bridge + delegate:self + jsInvoker:bridge.jsCallInvoker]; + [bridge setRCTTurboModuleRegistry:_turboModuleManager]; + +#if RCT_DEV + /** + * Eagerly initialize RCTDevMenu so CMD + d, CMD + i, and CMD + r work. + * This is a stop gap until we have a system to eagerly init Turbo Modules. + */ + [_turboModuleManager moduleForName:"RCTDevMenu"]; #endif + + __weak __typeof(self) weakSelf = self; + return std::make_unique( + facebook::react::RCTJSIExecutorRuntimeInstaller([weakSelf, bridge](facebook::jsi::Runtime &runtime) { + if (!bridge) { + return; + } + __typeof(self) strongSelf = weakSelf; + if (strongSelf) { + facebook::react::RuntimeExecutor syncRuntimeExecutor = + [&](std::function &&callback) { callback(runtime); }; + [strongSelf->_turboModuleManager installJSBindingWithRuntimeExecutor:syncRuntimeExecutor]; + } + })); +} + +#pragma mark RCTTurboModuleManagerDelegate + +- (Class)getModuleClassFromName:(const char *)name +{ + return facebook::react::FabricExampleTurboModuleClassProvider(name); +} + +- (std::shared_ptr)getTurboModule:(const std::string &)name + jsInvoker:(std::shared_ptr)jsInvoker +{ + return facebook::react::FabricExampleTurboModuleProvider(name, jsInvoker); +} + +- (id)getModuleInstanceFromClass:(Class)moduleClass +{ + if (moduleClass == RCTImageLoader.class) { + return [[moduleClass alloc] initWithRedirectDelegate:nil + loadersProvider:^NSArray> *(RCTModuleRegistry * moduleRegistry) { + return @ [[RCTLocalAssetImageLoader new]]; + } + decodersProvider:^NSArray> *(RCTModuleRegistry * moduleRegistry) { + return @ [[RCTGIFImageDecoder new]]; + }]; + } else if (moduleClass == RCTNetworking.class) { + return [[moduleClass alloc] initWithHandlersProvider:^NSArray> *(RCTModuleRegistry * moduleRegistry) { + return @[ + [RCTHTTPRequestHandler new], + [RCTDataRequestHandler new], + [RCTFileRequestHandler new], + ]; + }]; + } + // No custom initializer here. + return [moduleClass new]; } @end diff --git a/ios/FabricExample/FabricExampleTurboModuleProvider.h b/ios/FabricExample/FabricExampleTurboModuleProvider.h new file mode 100644 index 0000000..a0bf8af --- /dev/null +++ b/ios/FabricExample/FabricExampleTurboModuleProvider.h @@ -0,0 +1,24 @@ +/* + * 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. + */ + +#import + +namespace facebook { +namespace react { + +/** + * Provide the TurboModule class for the given name. + */ +Class FabricExampleTurboModuleClassProvider(const char *name); + +/** + * Provide a pure C++ instance of a TurboModule, specific to this app. + */ +std::shared_ptr FabricExampleTurboModuleProvider(const std::string &name, std::shared_ptr jsInvoker); + +} // namespace react +} // namespace facebook diff --git a/ios/FabricExample/FabricExampleTurboModuleProvider.mm b/ios/FabricExample/FabricExampleTurboModuleProvider.mm new file mode 100644 index 0000000..e75d899 --- /dev/null +++ b/ios/FabricExample/FabricExampleTurboModuleProvider.mm @@ -0,0 +1,26 @@ +/* + * 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. + */ + +#import "FabricExampleTurboModuleProvider.h" + +#import + +// NOTE: This entire file should be codegen'ed. + +namespace facebook { +namespace react { + +Class FabricExampleTurboModuleClassProvider(const char *name) { + return RCTCoreModulesClassProvider(name); +} + +std::shared_ptr FabricExampleTurboModuleProvider(const std::string &name, std::shared_ptr jsInvoker) { + return nullptr; +} + +} // namespace react +} // namespace facebook diff --git a/ios/Podfile b/ios/Podfile index 046ae7a..40292a0 100644 --- a/ios/Podfile +++ b/ios/Podfile @@ -10,7 +10,7 @@ target 'FabricExample' do :path => config[:reactNativePath], # to enable hermes on iOS, change `false` to `true` and then install pods :hermes_enabled => false, - :enable_fabric => true + :fabric_enabled => true ) target 'FabricExampleTests' do diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 114b398..4e79625 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -85,6 +85,11 @@ PODS: - DoubleConversion - fmt (~> 6.2.1) - glog + - RCT-Folly/Fabric (2021.04.26.00): + - boost-for-react-native + - DoubleConversion + - fmt (~> 6.2.1) + - glog - RCTRequired (0.65.0) - RCTTypeSafety (0.65.0): - FBLazyVector (= 0.65.0) @@ -250,6 +255,334 @@ PODS: - React-jsinspector (= 0.65.0) - React-perflogger (= 0.65.0) - React-runtimeexecutor (= 0.65.0) + - React-Fabric (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-Fabric/animations (= 0.65.0) + - React-Fabric/attributedstring (= 0.65.0) + - React-Fabric/better (= 0.65.0) + - React-Fabric/componentregistry (= 0.65.0) + - React-Fabric/componentregistrynative (= 0.65.0) + - React-Fabric/components (= 0.65.0) + - React-Fabric/config (= 0.65.0) + - React-Fabric/core (= 0.65.0) + - React-Fabric/debug_core (= 0.65.0) + - React-Fabric/debug_renderer (= 0.65.0) + - React-Fabric/imagemanager (= 0.65.0) + - React-Fabric/leakchecker (= 0.65.0) + - React-Fabric/mounting (= 0.65.0) + - React-Fabric/runtimescheduler (= 0.65.0) + - React-Fabric/scheduler (= 0.65.0) + - React-Fabric/telemetry (= 0.65.0) + - React-Fabric/templateprocessor (= 0.65.0) + - React-Fabric/textlayoutmanager (= 0.65.0) + - React-Fabric/uimanager (= 0.65.0) + - React-Fabric/utils (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/animations (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/attributedstring (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/better (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/componentregistry (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/componentregistrynative (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/components (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-Fabric/components/activityindicator (= 0.65.0) + - React-Fabric/components/image (= 0.65.0) + - React-Fabric/components/inputaccessory (= 0.65.0) + - React-Fabric/components/legacyviewmanagerinterop (= 0.65.0) + - React-Fabric/components/modal (= 0.65.0) + - React-Fabric/components/picker (= 0.65.0) + - React-Fabric/components/rncore (= 0.65.0) + - React-Fabric/components/root (= 0.65.0) + - React-Fabric/components/safeareaview (= 0.65.0) + - React-Fabric/components/scrollview (= 0.65.0) + - React-Fabric/components/slider (= 0.65.0) + - React-Fabric/components/text (= 0.65.0) + - React-Fabric/components/textinput (= 0.65.0) + - React-Fabric/components/unimplementedview (= 0.65.0) + - React-Fabric/components/view (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/components/activityindicator (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/components/image (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/components/inputaccessory (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/components/legacyviewmanagerinterop (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/components/modal (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/components/picker (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/components/rncore (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/components/root (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/components/safeareaview (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/components/scrollview (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/components/slider (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/components/text (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/components/textinput (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/components/unimplementedview (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/components/view (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - Yoga + - React-Fabric/config (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/core (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/debug_core (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/debug_renderer (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/imagemanager (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - React-RCTImage (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/leakchecker (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/mounting (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/runtimescheduler (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/scheduler (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/telemetry (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/templateprocessor (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/textlayoutmanager (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-Fabric/uimanager + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/uimanager (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-Fabric/utils (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - RCTRequired (= 0.65.0) + - RCTTypeSafety (= 0.65.0) + - React-graphics (= 0.65.0) + - React-jsi (= 0.65.0) + - React-jsiexecutor (= 0.65.0) + - ReactCommon/turbomodule/core (= 0.65.0) + - React-graphics (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) - React-jsi (0.65.0): - boost-for-react-native (= 1.63.0) - DoubleConversion @@ -261,6 +594,11 @@ PODS: - DoubleConversion - glog - RCT-Folly (= 2021.04.26.00) + - React-jsi/Fabric (0.65.0): + - boost-for-react-native (= 1.63.0) + - DoubleConversion + - glog + - RCT-Folly (= 2021.04.26.00) - React-jsiexecutor (0.65.0): - DoubleConversion - glog @@ -287,6 +625,11 @@ PODS: - React-jsi (= 0.65.0) - React-RCTNetwork (= 0.65.0) - ReactCommon/turbomodule/core (= 0.65.0) + - React-RCTFabric (0.65.0): + - RCT-Folly/Fabric (= 2021.04.26.00) + - React-Core (= 0.65.0) + - React-Fabric (= 0.65.0) + - React-RCTImage (= 0.65.0) - React-RCTImage (0.65.0): - FBReactNativeSpec (= 0.65.0) - RCT-Folly (= 2021.04.26.00) @@ -364,6 +707,7 @@ DEPENDENCIES: - FlipperKit/SKIOSNetworkPlugin (= 0.93.0) - glog (from `../node_modules/react-native/third-party-podspecs/glog.podspec`) - RCT-Folly (from `../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`) + - RCT-Folly/Fabric (from `../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`) - RCTRequired (from `../node_modules/react-native/Libraries/RCTRequired`) - RCTTypeSafety (from `../node_modules/react-native/Libraries/TypeSafety`) - React (from `../node_modules/react-native/`) @@ -373,13 +717,17 @@ DEPENDENCIES: - React-Core/RCTWebSocket (from `../node_modules/react-native/`) - React-CoreModules (from `../node_modules/react-native/React/CoreModules`) - React-cxxreact (from `../node_modules/react-native/ReactCommon/cxxreact`) + - React-Fabric (from `../node_modules/react-native/ReactCommon`) + - React-graphics (from `../node_modules/react-native/ReactCommon/react/renderer/graphics`) - React-jsi (from `../node_modules/react-native/ReactCommon/jsi`) + - React-jsi/Fabric (from `../node_modules/react-native/ReactCommon/jsi`) - React-jsiexecutor (from `../node_modules/react-native/ReactCommon/jsiexecutor`) - React-jsinspector (from `../node_modules/react-native/ReactCommon/jsinspector`) - React-perflogger (from `../node_modules/react-native/ReactCommon/reactperflogger`) - React-RCTActionSheet (from `../node_modules/react-native/Libraries/ActionSheetIOS`) - React-RCTAnimation (from `../node_modules/react-native/Libraries/NativeAnimation`) - React-RCTBlob (from `../node_modules/react-native/Libraries/Blob`) + - React-RCTFabric (from `../node_modules/react-native/React`) - React-RCTImage (from `../node_modules/react-native/Libraries/Image`) - React-RCTLinking (from `../node_modules/react-native/Libraries/LinkingIOS`) - React-RCTNetwork (from `../node_modules/react-native/Libraries/Network`) @@ -433,6 +781,10 @@ EXTERNAL SOURCES: :path: "../node_modules/react-native/React/CoreModules" React-cxxreact: :path: "../node_modules/react-native/ReactCommon/cxxreact" + React-Fabric: + :path: "../node_modules/react-native/ReactCommon" + React-graphics: + :path: "../node_modules/react-native/ReactCommon/react/renderer/graphics" React-jsi: :path: "../node_modules/react-native/ReactCommon/jsi" React-jsiexecutor: @@ -447,6 +799,8 @@ EXTERNAL SOURCES: :path: "../node_modules/react-native/Libraries/NativeAnimation" React-RCTBlob: :path: "../node_modules/react-native/Libraries/Blob" + React-RCTFabric: + :path: "../node_modules/react-native/React" React-RCTImage: :path: "../node_modules/react-native/Libraries/Image" React-RCTLinking: @@ -493,6 +847,8 @@ SPEC CHECKSUMS: React-Core: f1bcd788883f37752437e9568ad9b0f257cb7f10 React-CoreModules: bd62bfb939055c37195cada907c9e6df3ddbe52a React-cxxreact: 6d8ac3b0f853f0d5e5de80f5784ddc144a9da23f + React-Fabric: f699226cd3f035dd80b30b64387452ca4c2a13b4 + React-graphics: df008e0175485cc0a32d35f7192a76e2ede9a551 React-jsi: 875bcbe2037c9cae07fbda7dd5827fbca06cbdc6 React-jsiexecutor: 11ec08ad247abb44113ccb3d2b66f7e856d1cdf4 React-jsinspector: 2aa5dc1b9a02a81c0dcc70c00f2cbe1cd4b875c4 @@ -500,6 +856,7 @@ SPEC CHECKSUMS: React-RCTActionSheet: 0ea18583618e2451889be1ce1f658ae8cb436b2e React-RCTAnimation: 487a44abe7f082afa2997add929765b9c81d4abc React-RCTBlob: 8c9a87d13fd9c0f5d25fb016c1f951f705a1aabe + React-RCTFabric: 30beae31e9f3196d21d35065cb3082a091a07928 React-RCTImage: 3c1ac8efb48dd024348827532207fd18f27b4608 React-RCTLinking: 7114aff83c2e580706c98fe9c7e520c0d72145ea React-RCTNetwork: 8e9177062891464e6f088c0c049afae9da997aad @@ -511,6 +868,6 @@ SPEC CHECKSUMS: Yoga: 1561f557b0c2b6047a91f7619f666134e2288916 YogaKit: f782866e155069a2cca2517aafea43200b01fd5a -PODFILE CHECKSUM: 036ccd0e8d7971351a4410d483d50516819a3407 +PODFILE CHECKSUM: 5409efae94c921b159b0c5db99a695112f3eee11 COCOAPODS: 1.10.1