├── .buckconfig ├── .buckjavaargs ├── .editorconfig ├── .eslintignore ├── .eslintrc ├── .flowconfig ├── .gitattributes ├── .github ├── ISSUE_TEMPLATE.md └── PULL_REQUEST_TEMPLATE.md ├── .gitignore ├── .npmignore ├── .travis.yml ├── CONTRIBUTING.md ├── ContainerShip ├── Dockerfile.android ├── Dockerfile.android-base ├── Dockerfile.javascript └── scripts │ ├── run-android-ci-instrumentation-tests.js │ ├── run-android-docker-instrumentation-tests.sh │ ├── run-android-docker-unit-tests.sh │ ├── run-ci-e2e-tests.sh │ └── run-instrumentation-tests-via-adb-shell.sh ├── DockerTests.md ├── Examples ├── .eslintrc └── UIExplorer │ ├── README.md │ ├── UIExplorer-tvOS │ └── Info.plist │ ├── UIExplorer.xcodeproj │ ├── project.pbxproj │ └── xcshareddata │ │ └── xcschemes │ │ ├── UIExplorer-tvOS.xcscheme │ │ └── UIExplorer.xcscheme │ ├── UIExplorer │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Base.lproj │ │ └── LaunchScreen.xib │ ├── Images.xcassets │ │ ├── AppIcon.appiconset │ │ │ ├── Contents.json │ │ │ ├── Icon-40@2x.png │ │ │ ├── Icon-40@3x.png │ │ │ ├── Icon-60@2x.png │ │ │ ├── Icon-60@3x.png │ │ │ ├── Icon-Small@2x.png │ │ │ └── Icon-Small@3x.png │ │ ├── Contents.json │ │ ├── NavBarButtonPlus.imageset │ │ │ ├── Contents.json │ │ │ └── NavBarButtonPlus@3x.png │ │ ├── story-background.imageset │ │ │ ├── Contents.json │ │ │ └── story-background@2x.png │ │ ├── tabnav_list.imageset │ │ │ ├── Contents.json │ │ │ └── tabnav_list@3x.png │ │ ├── tabnav_notification.imageset │ │ │ ├── Contents.json │ │ │ └── tabnav_notification@3x.png │ │ └── tabnav_settings.imageset │ │ │ ├── Contents.json │ │ │ └── tabnav_settings@3x.png │ ├── Info.plist │ ├── NativeExampleViews │ │ ├── FlexibleSizeExampleView.h │ │ ├── FlexibleSizeExampleView.m │ │ ├── UpdatePropertiesExampleView.h │ │ └── UpdatePropertiesExampleView.m │ ├── UIExplorerBundle │ │ ├── ImageInBundle.png │ │ ├── Info.plist │ │ └── OtherImages.xcassets │ │ │ ├── Contents.json │ │ │ └── ImageInAssetCatalog.imageset │ │ │ ├── Contents.json │ │ │ └── react-logo.png │ ├── legacy_image@2x.png │ └── main.m │ ├── UIExplorerCxx.xcodeproj │ ├── project.pbxproj │ └── xcshareddata │ │ └── xcschemes │ │ ├── UIExplorer-tvOS.xcscheme │ │ └── UIExplorer.xcscheme │ ├── UIExplorerIntegrationTests │ ├── Info.plist │ ├── RCTLoggingTests.m │ ├── RCTRootViewIntegrationTests.m │ ├── RCTUIManagerScenarioTests.m │ ├── ReferenceImages │ │ ├── Examples-UIExplorer-js-UIExplorerApp.ios │ │ │ ├── testLayoutExample_1-iOS10@2x.png │ │ │ ├── testLayoutExample_1-iOS10_tvOS.png │ │ │ ├── testLayoutExample_1@2x.png │ │ │ ├── testLayoutExample_1_tvOS.png │ │ │ ├── testScrollViewExample_1-iOS10@2x.png │ │ │ ├── testScrollViewExample_1-iOS10_tvOS.png │ │ │ ├── testScrollViewExample_1@2x.png │ │ │ ├── testScrollViewExample_1_tvOS.png │ │ │ ├── testSliderExample_1-iOS10@2x.png │ │ │ ├── testSliderExample_1@2x.png │ │ │ ├── testSwitchExample_1-iOS10@2x.png │ │ │ ├── testSwitchExample_1@2x.png │ │ │ ├── testTabBarExample_1-iOS10@2x.png │ │ │ ├── testTabBarExample_1-iOS10_tvOS.png │ │ │ ├── testTabBarExample_1@2x.png │ │ │ ├── testTabBarExample_1_tvOS.png │ │ │ ├── testTextExample_1-iOS10@2x.png │ │ │ ├── testTextExample_1-iOS10_tvOS.png │ │ │ ├── testTextExample_1@2x.png │ │ │ ├── testTextExample_1_tvOS.png │ │ │ ├── testViewExample_1-iOS10@2x.png │ │ │ ├── testViewExample_1-iOS10_tvOS.png │ │ │ ├── testViewExample_1@2x.png │ │ │ └── testViewExample_1_tvOS.png │ │ └── IntegrationTests-IntegrationTestsApp │ │ │ ├── testImageSnapshotTest_1@2x.png │ │ │ ├── testImageSnapshotTest_1_tvOS.png │ │ │ ├── testSimpleSnapshotTest_1@2x.png │ │ │ └── testSimpleSnapshotTest_1_tvOS.png │ ├── UIExplorerIntegrationTests.m │ ├── UIExplorerSnapshotTests.m │ ├── blue_square.png │ └── red_square.png │ ├── UIExplorerUnitTests │ ├── Info.plist │ ├── OCMock │ │ ├── NSNotificationCenter+OCMAdditions.h │ │ ├── OCMArg.h │ │ ├── OCMConstraint.h │ │ ├── OCMLocation.h │ │ ├── OCMMacroState.h │ │ ├── OCMRecorder.h │ │ ├── OCMStubRecorder.h │ │ ├── OCMock.h │ │ └── OCMockObject.h │ ├── RCTAllocationTests.m │ ├── RCTAnimationUtilsTests.m │ ├── RCTBridgeTests.m │ ├── RCTBundleURLProviderTests.m │ ├── RCTComponentPropsTests.m │ ├── RCTConvert_NSURLTests.m │ ├── RCTConvert_YGValueTests.m │ ├── RCTDevMenuTests.m │ ├── RCTEventDispatcherTests.m │ ├── RCTFontTests.m │ ├── RCTGzipTests.m │ ├── RCTImageLoaderHelpers.h │ ├── RCTImageLoaderHelpers.m │ ├── RCTImageLoaderTests.m │ ├── RCTImageUtilTests.m │ ├── RCTJSCExecutorTests.m │ ├── RCTJSONTests.m │ ├── RCTMethodArgumentTests.m │ ├── RCTModuleInitNotificationRaceTests.m │ ├── RCTModuleInitTests.m │ ├── RCTModuleMethodTests.m │ ├── RCTMultipartStreamReaderTests.m │ ├── RCTNativeAnimatedNodesManagerTests.m │ ├── RCTShadowViewTests.m │ ├── RCTUIManagerTests.m │ ├── RCTURLUtilsTests.m │ ├── RCTUnicodeDecodeTests.m │ ├── UIExplorerUnitTestsBundle.js │ └── libOCMock.a │ ├── android │ └── app │ │ ├── BUCK │ │ ├── build.gradle │ │ ├── gradle.properties │ │ ├── proguard-rules.pro │ │ ├── react.gradle │ │ └── src │ │ └── main │ │ ├── AndroidManifest.xml │ │ ├── assets │ │ └── fonts │ │ │ ├── notoserif.ttf │ │ │ └── notoserif_bold_italic.ttf │ │ ├── java │ │ └── com │ │ │ └── facebook │ │ │ └── react │ │ │ └── uiapp │ │ │ ├── UIExplorerActivity.java │ │ │ └── UIExplorerApplication.java │ │ └── res │ │ ├── drawable │ │ ├── ic_create_black_48dp.png │ │ ├── ic_menu_black_24dp.png │ │ ├── ic_settings_black_48dp.png │ │ ├── launcher_icon.png │ │ └── legacy_image.png │ │ ├── layout │ │ └── activity_main.xml │ │ └── values │ │ ├── strings.xml │ │ └── styles.xml │ └── js │ ├── AccessibilityAndroidExample.android.js │ ├── AccessibilityIOSExample.js │ ├── ActionSheetIOSExample.js │ ├── ActivityIndicatorExample.js │ ├── AdSupportIOSExample.js │ ├── AlertExample.js │ ├── AlertIOSExample.js │ ├── AnimatedExample.js │ ├── AnimatedGratuitousApp │ ├── AnExApp.js │ ├── AnExBobble.js │ ├── AnExChained.js │ ├── AnExScroll.js │ ├── AnExSet.js │ ├── AnExSlides.md │ ├── AnExTilt.js │ └── trees.jpg │ ├── AppStateExample.js │ ├── AssetScaledImageExample.js │ ├── AsyncStorageExample.js │ ├── BorderExample.js │ ├── BoxShadowExample.js │ ├── ButtonExample.js │ ├── CameraRollExample.js │ ├── CameraRollView.js │ ├── ClipboardExample.js │ ├── DatePickerAndroidExample.js │ ├── DatePickerIOSExample.js │ ├── ExampleTypes.js │ ├── FlatListExample.js │ ├── GeolocationExample.js │ ├── ImageCapInsetsExample.js │ ├── ImageEditingExample.js │ ├── ImageExample.js │ ├── KeyboardAvoidingViewExample.js │ ├── LayoutAnimationExample.js │ ├── LayoutEventsExample.js │ ├── LayoutExample.js │ ├── LinkingExample.js │ ├── ListExampleShared.js │ ├── ListViewExample.js │ ├── ListViewGridLayoutExample.js │ ├── ListViewPagingExample.js │ ├── ModalExample.js │ ├── MultiColumnExample.js │ ├── NativeAnimationsExample.js │ ├── NavigatorIOSColorsExample.js │ ├── NavigatorIOSExample.js │ ├── NetInfoExample.js │ ├── OrientationChangeExample.js │ ├── PanResponderExample.js │ ├── PermissionsExampleAndroid.android.js │ ├── PickerExample.js │ ├── PickerIOSExample.js │ ├── PointerEventsExample.js │ ├── ProgressBarAndroidExample.android.js │ ├── ProgressViewIOSExample.js │ ├── PushNotificationIOSExample.js │ ├── RCTRootViewIOSExample.js │ ├── RTLExample.js │ ├── RefreshControlExample.js │ ├── RootViewSizeFlexibilityExampleApp.js │ ├── ScrollViewExample.js │ ├── ScrollViewSimpleExample.js │ ├── SectionListExample.js │ ├── SegmentedControlIOSExample.js │ ├── SetPropertiesExampleApp.js │ ├── ShareExample.js │ ├── SliderExample.js │ ├── SnapshotExample.js │ ├── StatusBarExample.js │ ├── SwipeableListViewExample.js │ ├── SwitchExample.js │ ├── TabBarIOSExample.js │ ├── TextExample.android.js │ ├── TextExample.ios.js │ ├── TextInputExample.android.js │ ├── TextInputExample.ios.js │ ├── Thumbnails │ ├── bandaged.png │ ├── call.png │ ├── dislike.png │ ├── fist.png │ ├── flowers.png │ ├── heart.png │ ├── like.png │ ├── liking.png │ ├── party.png │ ├── poke.png │ ├── superlike.png │ └── victory.png │ ├── TimePickerAndroidExample.js │ ├── TimerExample.js │ ├── ToastAndroidExample.android.js │ ├── ToolbarAndroidExample.android.js │ ├── TouchableExample.js │ ├── TransformExample.js │ ├── TransparentHitTestExample.js │ ├── UIExplorerActions.js │ ├── UIExplorerApp.android.js │ ├── UIExplorerApp.ios.js │ ├── UIExplorerBlock.js │ ├── UIExplorerButton.js │ ├── UIExplorerExampleContainer.js │ ├── UIExplorerExampleList.js │ ├── UIExplorerList.android.js │ ├── UIExplorerList.ios.js │ ├── UIExplorerNavigationReducer.js │ ├── UIExplorerPage.js │ ├── UIExplorerSettingSwitchRow.js │ ├── UIExplorerStatePersister.js │ ├── UIExplorerTitle.js │ ├── URIActionMap.js │ ├── VibrationExample.js │ ├── VibrationIOSExample.js │ ├── ViewExample.js │ ├── ViewPagerAndroidExample.android.js │ ├── WebSocketExample.js │ ├── WebViewExample.js │ ├── XHRExample.js │ ├── XHRExampleBinaryUpload.js │ ├── XHRExampleCookies.js │ ├── XHRExampleDownload.js │ ├── XHRExampleFetch.js │ ├── XHRExampleFormData.js │ ├── XHRExampleHeaders.js │ ├── XHRExampleOnTimeOut.js │ ├── bunny.png │ ├── createExamplePage.js │ ├── flux@3x.png │ ├── hawk.png │ ├── helloworld.html │ ├── http_test_server.js │ ├── messagingtest.html │ ├── relay@3x.png │ ├── slider-left.png │ ├── slider-left@2x.png │ ├── slider-right.png │ ├── slider-right@2x.png │ ├── slider.png │ ├── slider@2x.png │ ├── uie_comment_highlighted@2x.png │ ├── uie_comment_normal@2x.png │ ├── uie_thumb_big.png │ ├── uie_thumb_normal@2x.png │ ├── uie_thumb_selected@2x.png │ └── websocket_test_server.js ├── IntegrationTests ├── AppEventsTest.js ├── AsyncStorageTest.js ├── ImageCachePolicyTest.js ├── ImageSnapshotTest.js ├── IntegrationTestHarnessTest.js ├── IntegrationTestsApp.js ├── LayoutEventsTest.js ├── LoggingTestModule.js ├── PromiseTest.js ├── PropertiesUpdateTest.js ├── RCTRootViewIntegrationTestApp.js ├── ReactContentSizeUpdateTest.js ├── SimpleSnapshotTest.js ├── SizeFlexibilityUpdateTest.js ├── TimersTest.js ├── WebSocketTest.js ├── blue_square.png ├── launchWebSocketServer.command ├── red_square.png └── websocket_integration_test_server.js ├── JSCLegacyProfiler ├── JSCLegacyProfiler.h ├── JSCLegacyProfiler.mm ├── Makefile ├── Makefile.base ├── json2trace ├── parseSDKVersion.awk ├── smap.py └── trace_data.py ├── Jenkinsfile ├── LICENSE ├── LICENSE-docs ├── LICENSE-examples ├── Libraries ├── ART │ ├── ART.xcodeproj │ │ └── project.pbxproj │ ├── ARTCGFloatArray.h │ ├── ARTContainer.h │ ├── ARTGroup.h │ ├── ARTGroup.m │ ├── ARTNode.h │ ├── ARTNode.m │ ├── ARTRenderable.h │ ├── ARTRenderable.m │ ├── ARTSerializablePath.js │ ├── ARTShape.h │ ├── ARTShape.m │ ├── ARTSurfaceView.h │ ├── ARTSurfaceView.m │ ├── ARTText.h │ ├── ARTText.m │ ├── ARTTextFrame.h │ ├── Brushes │ │ ├── ARTBrush.h │ │ ├── ARTBrush.m │ │ ├── ARTLinearGradient.h │ │ ├── ARTLinearGradient.m │ │ ├── ARTPattern.h │ │ ├── ARTPattern.m │ │ ├── ARTRadialGradient.h │ │ ├── ARTRadialGradient.m │ │ ├── ARTSolidColor.h │ │ └── ARTSolidColor.m │ ├── RCTConvert+ART.h │ ├── RCTConvert+ART.m │ ├── ReactNativeART.js │ └── ViewManagers │ │ ├── ARTGroupManager.h │ │ ├── ARTGroupManager.m │ │ ├── ARTNodeManager.h │ │ ├── ARTNodeManager.m │ │ ├── ARTRenderableManager.h │ │ ├── ARTRenderableManager.m │ │ ├── ARTShapeManager.h │ │ ├── ARTShapeManager.m │ │ ├── ARTSurfaceViewManager.h │ │ ├── ARTSurfaceViewManager.m │ │ ├── ARTTextManager.h │ │ └── ARTTextManager.m ├── ActionSheetIOS │ ├── ActionSheetIOS.js │ ├── RCTActionSheet.xcodeproj │ │ └── project.pbxproj │ ├── RCTActionSheetManager.h │ └── RCTActionSheetManager.m ├── AdSupport │ ├── AdSupportIOS.js │ ├── RCTAdSupport.h │ ├── RCTAdSupport.m │ └── RCTAdSupport.xcodeproj │ │ └── project.pbxproj ├── Alert │ ├── Alert.js │ ├── AlertIOS.js │ ├── RCTAlertManager.android.js │ └── RCTAlertManager.ios.js ├── Animated │ ├── examples │ │ ├── demo.html │ │ ├── pic1.jpg │ │ ├── pic2.jpg │ │ ├── pic3.jpg │ │ └── style.css │ ├── release │ │ ├── gulpfile.js │ │ └── package.json │ └── src │ │ ├── Animated.js │ │ ├── AnimatedImplementation.js │ │ ├── AnimatedWeb.js │ │ ├── Easing.js │ │ ├── Interpolation.js │ │ ├── NativeAnimatedHelper.js │ │ ├── SpringConfig.js │ │ ├── __tests__ │ │ ├── Animated-test.js │ │ ├── AnimatedNative-test.js │ │ ├── Easing-test.js │ │ ├── Interpolation-test.js │ │ └── bezier-test.js │ │ ├── bezier.js │ │ └── polyfills │ │ ├── InteractionManager.js │ │ ├── Set.js │ │ └── flattenStyle.js ├── AppState │ └── AppState.js ├── BatchedBridge │ ├── BatchedBridge.js │ ├── MessageQueue.js │ ├── NativeModules.js │ ├── __mocks__ │ │ ├── MessageQueueTestConfig.js │ │ └── MessageQueueTestModule.js │ └── __tests__ │ │ ├── MessageQueue-test.js │ │ └── NativeModules-test.js ├── BugReporting │ ├── BugReporting.js │ ├── dumpReactTree.js │ └── getReactData.js ├── CameraRoll │ ├── CameraRoll.js │ ├── ImagePickerIOS.js │ ├── RCTAssetsLibraryRequestHandler.h │ ├── RCTAssetsLibraryRequestHandler.m │ ├── RCTCameraRoll.xcodeproj │ │ └── project.pbxproj │ ├── RCTCameraRollManager.h │ ├── RCTCameraRollManager.m │ ├── RCTImagePickerManager.h │ ├── RCTImagePickerManager.m │ ├── RCTPhotoLibraryImageLoader.h │ └── RCTPhotoLibraryImageLoader.m ├── Components │ ├── AccessibilityInfo │ │ ├── AccessibilityInfo.android.js │ │ └── AccessibilityInfo.ios.js │ ├── ActivityIndicator │ │ └── ActivityIndicator.js │ ├── AppleTV │ │ ├── TVEventHandler.android.js │ │ ├── TVEventHandler.ios.js │ │ └── TVViewPropTypes.js │ ├── Button.js │ ├── Clipboard │ │ └── Clipboard.js │ ├── DatePicker │ │ ├── DatePickerIOS.android.js │ │ └── DatePickerIOS.ios.js │ ├── DatePickerAndroid │ │ ├── DatePickerAndroid.android.js │ │ └── DatePickerAndroid.ios.js │ ├── DrawerAndroid │ │ ├── DrawerLayoutAndroid.android.js │ │ └── DrawerLayoutAndroid.ios.js │ ├── Keyboard │ │ ├── Keyboard.js │ │ └── KeyboardAvoidingView.js │ ├── LazyRenderer.js │ ├── Navigation │ │ ├── NavigatorIOS.android.js │ │ └── NavigatorIOS.ios.js │ ├── Picker │ │ ├── Picker.js │ │ ├── PickerAndroid.android.js │ │ ├── PickerAndroid.ios.js │ │ ├── PickerIOS.android.js │ │ └── PickerIOS.ios.js │ ├── ProgressBarAndroid │ │ ├── ProgressBarAndroid.android.js │ │ └── ProgressBarAndroid.ios.js │ ├── ProgressViewIOS │ │ ├── ProgressViewIOS.android.js │ │ └── ProgressViewIOS.ios.js │ ├── RefreshControl │ │ ├── RefreshControl.js │ │ └── __mocks__ │ │ │ └── RefreshControlMock.js │ ├── ScrollResponder.js │ ├── ScrollView │ │ ├── ScrollView.js │ │ ├── ScrollViewStickyHeader.js │ │ ├── __mocks__ │ │ │ └── ScrollViewMock.js │ │ └── processDecelerationRate.js │ ├── SegmentedControlIOS │ │ ├── SegmentedControlIOS.android.js │ │ └── SegmentedControlIOS.ios.js │ ├── Slider │ │ └── Slider.js │ ├── StaticContainer.react.js │ ├── StaticRenderer.js │ ├── StatusBar │ │ ├── StatusBar.js │ │ ├── StatusBarIOS.android.js │ │ └── StatusBarIOS.ios.js │ ├── Subscribable.js │ ├── Switch │ │ └── Switch.js │ ├── TabBarIOS │ │ ├── TabBarIOS.android.js │ │ ├── TabBarIOS.ios.js │ │ ├── TabBarItemIOS.android.js │ │ └── TabBarItemIOS.ios.js │ ├── TextInput │ │ ├── TextInput.js │ │ └── TextInputState.js │ ├── TimePickerAndroid │ │ ├── TimePickerAndroid.android.js │ │ └── TimePickerAndroid.ios.js │ ├── ToastAndroid │ │ ├── ToastAndroid.android.js │ │ └── ToastAndroid.ios.js │ ├── ToolbarAndroid │ │ ├── ToolbarAndroid.android.js │ │ └── ToolbarAndroid.ios.js │ ├── Touchable │ │ ├── BoundingDimensions.js │ │ ├── Position.js │ │ ├── Touchable.js │ │ ├── TouchableBounce.js │ │ ├── TouchableHighlight.js │ │ ├── TouchableNativeFeedback.android.js │ │ ├── TouchableNativeFeedback.ios.js │ │ ├── TouchableOpacity.js │ │ ├── TouchableWithoutFeedback.js │ │ ├── __mocks__ │ │ │ └── ensureComponentIsNative.js │ │ ├── __tests__ │ │ │ ├── TouchableHighlight-test.js │ │ │ └── __snapshots__ │ │ │ │ └── TouchableHighlight-test.js.snap │ │ ├── ensureComponentIsNative.js │ │ └── ensurePositiveDelayProps.js │ ├── UnimplementedViews │ │ └── UnimplementedView.js │ ├── View │ │ ├── ReactNativeStyleAttributes.js │ │ ├── ReactNativeViewAttributes.js │ │ ├── ShadowPropTypesIOS.js │ │ ├── View.js │ │ ├── ViewAccessibility.js │ │ ├── ViewPropTypes.js │ │ └── ViewStylePropTypes.js │ ├── ViewPager │ │ ├── ViewPagerAndroid.android.js │ │ └── ViewPagerAndroid.ios.js │ └── WebView │ │ ├── WebView.android.js │ │ └── WebView.ios.js ├── Core │ ├── Devtools │ │ ├── __tests__ │ │ │ └── parseErrorStack-test.js │ │ ├── getDevServer.js │ │ ├── openFileInEditor.js │ │ ├── parseErrorStack.js │ │ ├── setupDevtools.js │ │ └── symbolicateStackTrace.js │ ├── ErrorUtils.js │ ├── ExceptionsManager.js │ ├── InitializeCore.js │ ├── Timers │ │ ├── JSTimers.js │ │ └── JSTimersExecution.js │ └── __mocks__ │ │ └── ErrorUtils.js ├── DebugComponentHierarchy │ └── RCTDebugComponentOwnership.js ├── EventEmitter │ ├── EmitterSubscription.js │ ├── EventEmitter.js │ ├── EventEmitterWithHolding.js │ ├── EventHolder.js │ ├── EventSubscription.js │ ├── EventSubscriptionVendor.js │ ├── EventValidator.js │ ├── NativeEventEmitter.js │ ├── RCTDeviceEventEmitter.js │ ├── RCTEventEmitter.js │ ├── RCTNativeAppEventEmitter.js │ ├── __mocks__ │ │ └── NativeEventEmitter.js │ └── mixInEventEmitter.js ├── Experimental │ ├── Incremental.js │ ├── IncrementalExample.js │ ├── IncrementalGroup.js │ ├── IncrementalPresenter.js │ ├── SwipeableRow │ │ ├── SwipeableListView.js │ │ ├── SwipeableListViewDataSource.js │ │ ├── SwipeableQuickActionButton.js │ │ ├── SwipeableQuickActions.js │ │ └── SwipeableRow.js │ └── WindowedListView.js ├── Geolocation │ ├── Geolocation.js │ ├── RCTGeolocation.xcodeproj │ │ └── project.pbxproj │ ├── RCTLocationObserver.h │ └── RCTLocationObserver.m ├── Image │ ├── AssetRegistry.js │ ├── AssetSourceResolver.js │ ├── Image.android.js │ ├── Image.ios.js │ ├── ImageEditor.js │ ├── ImageResizeMode.js │ ├── ImageSource.js │ ├── ImageSourcePropType.js │ ├── ImageStore.js │ ├── ImageStylePropTypes.js │ ├── RCTGIFImageDecoder.h │ ├── RCTGIFImageDecoder.m │ ├── RCTImage.xcodeproj │ │ └── project.pbxproj │ ├── RCTImageBlurUtils.h │ ├── RCTImageBlurUtils.m │ ├── RCTImageCache.h │ ├── RCTImageCache.m │ ├── RCTImageEditingManager.h │ ├── RCTImageEditingManager.m │ ├── RCTImageLoader.h │ ├── RCTImageLoader.m │ ├── RCTImageStoreManager.h │ ├── RCTImageStoreManager.m │ ├── RCTImageUtils.h │ ├── RCTImageUtils.m │ ├── RCTImageView.h │ ├── RCTImageView.m │ ├── RCTImageViewManager.h │ ├── RCTImageViewManager.m │ ├── RCTLocalAssetImageLoader.h │ ├── RCTLocalAssetImageLoader.m │ ├── RCTResizeMode.h │ ├── RCTResizeMode.m │ ├── RelativeImageStub.js │ ├── __tests__ │ │ └── resolveAssetSource-test.js │ ├── nativeImageSource.js │ └── resolveAssetSource.js ├── Inspector │ ├── BorderBox.js │ ├── BoxInspector.js │ ├── ElementBox.js │ ├── ElementProperties.js │ ├── Inspector.js │ ├── InspectorOverlay.js │ ├── InspectorPanel.js │ ├── InspectorUtils.js │ ├── NetworkOverlay.js │ ├── PerformanceOverlay.js │ ├── StyleInspector.js │ └── resolveBoxStyle.js ├── Interaction │ ├── Batchinator.js │ ├── BridgeSpyStallHandler.js │ ├── FrameRateLogger.js │ ├── InteractionManager.js │ ├── InteractionMixin.js │ ├── InteractionStallDebugger.js │ ├── JSEventLoopWatchdog.js │ ├── PanResponder.js │ ├── ReactPerfStallHandler.js │ ├── TaskQueue.js │ └── __tests__ │ │ ├── Batchinator-test.js │ │ ├── InteractionManager-test.js │ │ ├── InteractionMixin-test.js │ │ └── TaskQueue-test.js ├── JSInspector │ ├── InspectorAgent.js │ ├── JSInspector.js │ └── NetworkAgent.js ├── LayoutAnimation │ └── LayoutAnimation.js ├── Linking │ └── Linking.js ├── LinkingIOS │ ├── RCTLinking.xcodeproj │ │ └── project.pbxproj │ ├── RCTLinkingManager.h │ └── RCTLinkingManager.m ├── Lists │ ├── FillRateHelper.js │ ├── FlatList.js │ ├── ListView │ │ ├── ListView.js │ │ ├── ListViewDataSource.js │ │ └── __mocks__ │ │ │ └── ListViewMock.js │ ├── MetroListView.js │ ├── SectionList.js │ ├── ViewabilityHelper.js │ ├── VirtualizeUtils.js │ ├── VirtualizedList.js │ ├── VirtualizedSectionList.js │ ├── __flowtests__ │ │ ├── FlatList-flowtest.js │ │ └── SectionList-flowtest.js │ └── __tests__ │ │ ├── FillRateHelper-test.js │ │ ├── FlatList-test.js │ │ ├── SectionList-test.js │ │ ├── ViewabilityHelper-test.js │ │ ├── VirtualizeUtils-test.js │ │ └── __snapshots__ │ │ ├── FlatList-test.js.snap │ │ └── SectionList-test.js.snap ├── Modal │ └── Modal.js ├── NativeAnimation │ ├── Drivers │ │ ├── RCTAnimationDriver.h │ │ ├── RCTEventAnimation.h │ │ ├── RCTEventAnimation.m │ │ ├── RCTFrameAnimation.h │ │ ├── RCTFrameAnimation.m │ │ ├── RCTSpringAnimation.h │ │ └── RCTSpringAnimation.m │ ├── Nodes │ │ ├── RCTAdditionAnimatedNode.h │ │ ├── RCTAdditionAnimatedNode.m │ │ ├── RCTAnimatedNode.h │ │ ├── RCTAnimatedNode.m │ │ ├── RCTDiffClampAnimatedNode.h │ │ ├── RCTDiffClampAnimatedNode.m │ │ ├── RCTDivisionAnimatedNode.h │ │ ├── RCTDivisionAnimatedNode.m │ │ ├── RCTInterpolationAnimatedNode.h │ │ ├── RCTInterpolationAnimatedNode.m │ │ ├── RCTModuloAnimatedNode.h │ │ ├── RCTModuloAnimatedNode.m │ │ ├── RCTMultiplicationAnimatedNode.h │ │ ├── RCTMultiplicationAnimatedNode.m │ │ ├── RCTPropsAnimatedNode.h │ │ ├── RCTPropsAnimatedNode.m │ │ ├── RCTStyleAnimatedNode.h │ │ ├── RCTStyleAnimatedNode.m │ │ ├── RCTTransformAnimatedNode.h │ │ ├── RCTTransformAnimatedNode.m │ │ ├── RCTValueAnimatedNode.h │ │ └── RCTValueAnimatedNode.m │ ├── RCTAnimation.xcodeproj │ │ └── project.pbxproj │ ├── RCTAnimationUtils.h │ ├── RCTAnimationUtils.m │ ├── RCTNativeAnimatedModule.h │ ├── RCTNativeAnimatedModule.m │ ├── RCTNativeAnimatedNodesManager.h │ └── RCTNativeAnimatedNodesManager.m ├── Network │ ├── FormData.js │ ├── NetInfo.js │ ├── RCTDataRequestHandler.h │ ├── RCTDataRequestHandler.m │ ├── RCTFileRequestHandler.h │ ├── RCTFileRequestHandler.m │ ├── RCTHTTPRequestHandler.h │ ├── RCTHTTPRequestHandler.mm │ ├── RCTNetInfo.h │ ├── RCTNetInfo.m │ ├── RCTNetwork.xcodeproj │ │ └── project.pbxproj │ ├── RCTNetworkTask.h │ ├── RCTNetworkTask.m │ ├── RCTNetworking.android.js │ ├── RCTNetworking.h │ ├── RCTNetworking.ios.js │ ├── RCTNetworking.mm │ ├── XHRInterceptor.js │ ├── XMLHttpRequest.js │ ├── __tests__ │ │ ├── FormData-test.js │ │ └── XMLHttpRequest-test.js │ ├── convertRequestBody.js │ └── fetch.js ├── Performance │ ├── CPUProfiler.js │ ├── QuickPerformanceLogger.js │ ├── RCTRenderingPerf.js │ ├── SamplingProfiler.js │ └── Systrace.js ├── PermissionsAndroid │ └── PermissionsAndroid.js ├── Promise.js ├── PushNotificationIOS │ ├── PushNotificationIOS.js │ ├── RCTPushNotification.xcodeproj │ │ └── project.pbxproj │ ├── RCTPushNotificationManager.h │ └── RCTPushNotificationManager.m ├── RCTTest │ ├── FBSnapshotTestCase │ │ ├── FBSnapshotTestCase.h │ │ ├── FBSnapshotTestCase.m │ │ ├── FBSnapshotTestController.h │ │ ├── FBSnapshotTestController.m │ │ ├── UIImage+Compare.h │ │ ├── UIImage+Compare.m │ │ ├── UIImage+Diff.h │ │ └── UIImage+Diff.m │ ├── RCTSnapshotManager.h │ ├── RCTSnapshotManager.m │ ├── RCTTest.xcodeproj │ │ └── project.pbxproj │ ├── RCTTestModule.h │ ├── RCTTestModule.m │ ├── RCTTestRunner.h │ ├── RCTTestRunner.m │ ├── SnapshotViewIOS.android.js │ └── SnapshotViewIOS.ios.js ├── ReactNative │ ├── AppContainer.js │ ├── AppRegistry.js │ ├── I18nManager.js │ ├── UIManager.js │ ├── UIManagerStatTracker.js │ ├── YellowBox.js │ ├── queryLayoutByID.js │ ├── renderApplication.js │ ├── requireNativeComponent.js │ └── verifyPropTypes.js ├── Renderer │ ├── README.md │ └── src │ │ ├── ReactVersion.js │ │ ├── renderers │ │ ├── native │ │ │ ├── NativeMethodsMixin.js │ │ │ ├── NativeMethodsMixinUtils.js │ │ │ ├── ReactNative.js │ │ │ ├── ReactNativeAttributePayload.js │ │ │ ├── ReactNativeBaseComponent.js │ │ │ ├── ReactNativeBridgeEventPlugin.js │ │ │ ├── ReactNativeComponentEnvironment.js │ │ │ ├── ReactNativeComponentTree.js │ │ │ ├── ReactNativeContainerInfo.js │ │ │ ├── ReactNativeDOMIDOperations.js │ │ │ ├── ReactNativeEventEmitter.js │ │ │ ├── ReactNativeEventPluginOrder.js │ │ │ ├── ReactNativeFeatureFlags.js │ │ │ ├── ReactNativeFiber.js │ │ │ ├── ReactNativeFiberErrorDialog.js │ │ │ ├── ReactNativeFiberHostComponent.js │ │ │ ├── ReactNativeGlobalResponderHandler.js │ │ │ ├── ReactNativeInjection.js │ │ │ ├── ReactNativeMount.js │ │ │ ├── ReactNativePropRegistry.js │ │ │ ├── ReactNativeReconcileTransaction.js │ │ │ ├── ReactNativeStack.js │ │ │ ├── ReactNativeStackInjection.js │ │ │ ├── ReactNativeTagHandles.js │ │ │ ├── ReactNativeTextComponent.js │ │ │ ├── ReactNativeViewConfigRegistry.js │ │ │ ├── __mocks__ │ │ │ │ └── ReactNative.js │ │ │ ├── __tests__ │ │ │ │ ├── ReactNativeAttributePayload-test.js │ │ │ │ ├── ReactNativeEvents-test.js │ │ │ │ └── ReactNativeMount-test.js │ │ │ ├── createReactNativeComponentClass.js │ │ │ ├── findNodeHandle.js │ │ │ └── takeSnapshot.js │ │ ├── noop │ │ │ └── ReactNoop.js │ │ └── shared │ │ │ ├── ReactDebugTool.js │ │ │ ├── ReactInstrumentation.js │ │ │ ├── ReactPerf.js │ │ │ ├── __tests__ │ │ │ └── ReactDebugTool-test.js │ │ │ ├── fiber │ │ │ ├── ReactChildFiber.js │ │ │ ├── ReactDebugCurrentFiber.js │ │ │ ├── ReactDebugFiberPerf.js │ │ │ ├── ReactFiber.js │ │ │ ├── ReactFiberBeginWork.js │ │ │ ├── ReactFiberClassComponent.js │ │ │ ├── ReactFiberCommitWork.js │ │ │ ├── ReactFiberCompleteWork.js │ │ │ ├── ReactFiberContext.js │ │ │ ├── ReactFiberDevToolsHook.js │ │ │ ├── ReactFiberErrorLogger.js │ │ │ ├── ReactFiberHostContext.js │ │ │ ├── ReactFiberInstrumentation.js │ │ │ ├── ReactFiberReconciler.js │ │ │ ├── ReactFiberRoot.js │ │ │ ├── ReactFiberScheduler.js │ │ │ ├── ReactFiberStack.js │ │ │ ├── ReactFiberTreeReflection.js │ │ │ ├── ReactFiberUpdateQueue.js │ │ │ ├── ReactPriorityLevel.js │ │ │ ├── ReactTypeOfSideEffect.js │ │ │ ├── __tests__ │ │ │ │ ├── ReactCoroutine-test.js │ │ │ │ ├── ReactIncremental-test.js │ │ │ │ ├── ReactIncrementalErrorHandling-test.js │ │ │ │ ├── ReactIncrementalPerf-test.js │ │ │ │ ├── ReactIncrementalReflection-test.js │ │ │ │ ├── ReactIncrementalScheduling-test.js │ │ │ │ ├── ReactIncrementalSideEffects-test.js │ │ │ │ ├── ReactIncrementalUpdates-test.js │ │ │ │ ├── ReactTopLevelFragment-test.js │ │ │ │ ├── ReactTopLevelText-test.js │ │ │ │ └── __snapshots__ │ │ │ │ │ └── ReactIncrementalPerf-test.js.snap │ │ │ └── isomorphic │ │ │ │ ├── ReactCoroutine.js │ │ │ │ ├── ReactPortal.js │ │ │ │ └── ReactTypes.js │ │ │ ├── hooks │ │ │ ├── ReactHostOperationHistoryHook.js │ │ │ └── ReactInvalidSetStateWarningHook.js │ │ │ ├── shared │ │ │ ├── ReactInstanceMap.js │ │ │ ├── ReactTreeTraversal.js │ │ │ ├── event │ │ │ │ ├── EventConstants.js │ │ │ │ ├── EventPluginHub.js │ │ │ │ ├── EventPluginRegistry.js │ │ │ │ ├── EventPluginUtils.js │ │ │ │ ├── EventPropagators.js │ │ │ │ ├── PluginModuleType.js │ │ │ │ ├── ReactControlledComponent.js │ │ │ │ ├── ReactEventEmitterMixin.js │ │ │ │ ├── ReactGenericBatching.js │ │ │ │ ├── ReactSyntheticEventType.js │ │ │ │ ├── SyntheticEvent.js │ │ │ │ ├── __tests__ │ │ │ │ │ └── EventPluginRegistry-test.js │ │ │ │ └── eventPlugins │ │ │ │ │ ├── ResponderEventPlugin.js │ │ │ │ │ ├── ResponderSyntheticEvent.js │ │ │ │ │ ├── ResponderTouchHistoryStore.js │ │ │ │ │ ├── TouchHistoryMath.js │ │ │ │ │ └── __tests__ │ │ │ │ │ └── ResponderEventPlugin-test.js │ │ │ ├── getContextForSubtree.js │ │ │ └── shouldUpdateReactComponent.js │ │ │ ├── stack │ │ │ └── reconciler │ │ │ │ ├── CallbackQueue.js │ │ │ │ ├── ReactChildReconciler.js │ │ │ │ ├── ReactComponentEnvironment.js │ │ │ │ ├── ReactCompositeComponent.js │ │ │ │ ├── ReactCompositeComponentTypes.js │ │ │ │ ├── ReactDefaultBatchingStrategy.js │ │ │ │ ├── ReactEmptyComponent.js │ │ │ │ ├── ReactHostComponent.js │ │ │ │ ├── ReactInstanceType.js │ │ │ │ ├── ReactMultiChild.js │ │ │ │ ├── ReactMultiChildUpdateTypes.js │ │ │ │ ├── ReactNodeTypes.js │ │ │ │ ├── ReactOwner.js │ │ │ │ ├── ReactReconciler.js │ │ │ │ ├── ReactRef.js │ │ │ │ ├── ReactSimpleEmptyComponent.js │ │ │ │ ├── ReactUpdateQueue.js │ │ │ │ ├── ReactUpdates.js │ │ │ │ ├── Transaction.js │ │ │ │ ├── __tests__ │ │ │ │ └── Transaction-test.js │ │ │ │ ├── getHostComponentFromComposite.js │ │ │ │ └── instantiateReactComponent.js │ │ │ └── utils │ │ │ ├── ReactErrorUtils.js │ │ │ ├── ReactFeatureFlags.js │ │ │ ├── __tests__ │ │ │ ├── ReactErrorUtils-test.js │ │ │ ├── accumulateInto-test.js │ │ │ └── adler32-test.js │ │ │ ├── accumulate.js │ │ │ ├── accumulateInto.js │ │ │ ├── adler32.js │ │ │ ├── forEachAccumulated.js │ │ │ ├── isTextInputElement.js │ │ │ └── validateCallback.js │ │ └── shared │ │ ├── ReactElementType.js │ │ ├── ReactFiberComponentTreeHook.js │ │ ├── ReactTypeOfWork.js │ │ ├── types │ │ ├── ReactPropTypesSecret.js │ │ └── checkReactTypeSpec.js │ │ └── utils │ │ ├── KeyEscapeUtils.js │ │ ├── PooledClass.js │ │ ├── ReactElementSymbol.js │ │ ├── __tests__ │ │ ├── KeyEscapeUtils-test.js │ │ ├── PooledClass-test.js │ │ └── reactProdInvariant-test.js │ │ ├── canDefineProperty.js │ │ ├── deprecated.js │ │ ├── flattenChildren.js │ │ ├── getComponentName.js │ │ ├── getIteratorFn.js │ │ ├── getNextDebugID.js │ │ ├── reactProdInvariant.js │ │ └── traverseAllChildren.js ├── Sample │ ├── Sample.android.js │ ├── Sample.h │ ├── Sample.ios.js │ ├── Sample.m │ ├── Sample.xcodeproj │ │ └── project.pbxproj │ └── package.json ├── Settings │ ├── RCTSettings.xcodeproj │ │ └── project.pbxproj │ ├── RCTSettingsManager.h │ ├── RCTSettingsManager.m │ ├── Settings.android.js │ └── Settings.ios.js ├── Share │ └── Share.js ├── Storage │ └── AsyncStorage.js ├── StyleSheet │ ├── ColorPropType.js │ ├── EdgeInsetsPropType.js │ ├── LayoutPropTypes.js │ ├── PointPropType.js │ ├── StyleSheet.js │ ├── StyleSheetPropType.js │ ├── StyleSheetTypes.js │ ├── StyleSheetValidation.js │ ├── TransformPropTypes.js │ ├── __tests__ │ │ ├── __snapshots__ │ │ │ └── processTransform-test.js.snap │ │ ├── flattenStyle-test.js │ │ ├── normalizeColor-test.js │ │ ├── processColor-test.js │ │ ├── processTransform-test.js │ │ └── setNormalizedColorAlpha-test.js │ ├── flattenStyle.js │ ├── normalizeColor.js │ ├── processColor.js │ ├── processTransform.js │ └── setNormalizedColorAlpha.js ├── Text │ ├── RCTConvert+Text.h │ ├── RCTConvert+Text.m │ ├── RCTRawTextManager.h │ ├── RCTRawTextManager.m │ ├── RCTShadowRawText.h │ ├── RCTShadowRawText.m │ ├── RCTShadowText.h │ ├── RCTShadowText.m │ ├── RCTShadowTextField.h │ ├── RCTShadowTextField.m │ ├── RCTShadowTextView.h │ ├── RCTShadowTextView.m │ ├── RCTText.h │ ├── RCTText.m │ ├── RCTText.xcodeproj │ │ └── project.pbxproj │ ├── RCTTextField.h │ ├── RCTTextField.m │ ├── RCTTextFieldManager.h │ ├── RCTTextFieldManager.m │ ├── RCTTextManager.h │ ├── RCTTextManager.m │ ├── RCTTextSelection.h │ ├── RCTTextSelection.m │ ├── RCTTextView.h │ ├── RCTTextView.m │ ├── RCTTextViewManager.h │ ├── RCTTextViewManager.m │ ├── RCTUITextView.h │ ├── RCTUITextView.m │ ├── Text.js │ ├── TextStylePropTypes.js │ └── TextUpdateTest.js ├── Utilities │ ├── BackAndroid.js │ ├── BackHandler.android.js │ ├── BackHandler.ios.js │ ├── DeviceInfo.js │ ├── Dimensions.js │ ├── HMRClient.js │ ├── HMRLoadingView.android.js │ ├── HMRLoadingView.ios.js │ ├── HeapCapture.js │ ├── MatrixMath.js │ ├── PerformanceLogger.js │ ├── PixelRatio.js │ ├── Platform.android.js │ ├── Platform.ios.js │ ├── RCTLog.js │ ├── SceneTracker.js │ ├── __mocks__ │ │ └── PixelRatio.js │ ├── __tests__ │ │ ├── MatrixMath-test.js │ │ ├── Platform-test.js │ │ ├── SceneTracker-test.js │ │ ├── buildStyleInterpolator-test.js │ │ ├── deepFreezeAndThrowOnMutationInDev-test.js │ │ ├── groupByEveryN-test.js │ │ ├── mapWithSeparator-test.js │ │ ├── truncate-test.js │ │ └── utf8-test.js │ ├── binaryToBase64.js │ ├── buildStyleInterpolator.js │ ├── clamp.js │ ├── createStrictShapeTypeChecker.js │ ├── deepFreezeAndThrowOnMutationInDev.js │ ├── defineLazyObjectProperty.js │ ├── deprecatedPropType.js │ ├── differ │ │ ├── __tests__ │ │ │ └── deepDiffer-test.js │ │ ├── deepDiffer.js │ │ ├── insetsDiffer.js │ │ ├── matricesDiffer.js │ │ ├── pointsDiffer.js │ │ └── sizesDiffer.js │ ├── dismissKeyboard.js │ ├── groupByEveryN.js │ ├── infoLog.js │ ├── logError.js │ ├── mapWithSeparator.js │ ├── mergeFast.js │ ├── mergeIntoFast.js │ ├── stringifySafe.js │ ├── throwOnWrongReactAPI.js │ ├── truncate.js │ └── utf8.js ├── Vibration │ ├── RCTVibration.h │ ├── RCTVibration.m │ ├── RCTVibration.xcodeproj │ │ └── project.pbxproj │ ├── Vibration.js │ ├── VibrationIOS.android.js │ └── VibrationIOS.ios.js ├── WebSocket │ ├── RCTReconnectingWebSocket.h │ ├── RCTReconnectingWebSocket.m │ ├── RCTSRWebSocket.h │ ├── RCTSRWebSocket.m │ ├── RCTWebSocket.xcodeproj │ │ └── project.pbxproj │ ├── RCTWebSocketExecutor.h │ ├── RCTWebSocketExecutor.m │ ├── RCTWebSocketModule.h │ ├── RCTWebSocketModule.m │ ├── RCTWebSocketObserver.h │ ├── RCTWebSocketObserver.m │ ├── WebSocket.js │ ├── WebSocketEvent.js │ ├── WebSocketInterceptor.js │ ├── __mocks__ │ │ └── event-target-shim.js │ └── __tests__ │ │ └── WebSocket-test.js ├── promiseRejectionIsError.js ├── react-native │ ├── React.js │ ├── react-native-implementation.js │ └── react-native-interface.js └── vendor │ ├── core │ ├── Map.js │ ├── Set.js │ ├── _shouldPolyfillES6Collection.js │ ├── getObjectValues.js │ ├── guid.js │ ├── isEmpty.js │ ├── merge.js │ ├── mergeHelpers.js │ ├── mergeInto.js │ └── toIterator.js │ └── document │ └── selection │ └── DocumentSelectionState.js ├── PATENTS ├── README.md ├── React.podspec ├── React ├── Base │ ├── RCTAssert.h │ ├── RCTAssert.m │ ├── RCTBatchedBridge.m │ ├── RCTBridge+JavaScriptCore.h │ ├── RCTBridge+Private.h │ ├── RCTBridge.h │ ├── RCTBridge.m │ ├── RCTBridgeDelegate.h │ ├── RCTBridgeMethod.h │ ├── RCTBridgeModule.h │ ├── RCTBundleURLProvider.h │ ├── RCTBundleURLProvider.m │ ├── RCTConvert.h │ ├── RCTConvert.m │ ├── RCTDefines.h │ ├── RCTDisplayLink.h │ ├── RCTDisplayLink.m │ ├── RCTErrorCustomizer.h │ ├── RCTErrorInfo.h │ ├── RCTErrorInfo.m │ ├── RCTEventDispatcher.h │ ├── RCTEventDispatcher.m │ ├── RCTFrameUpdate.h │ ├── RCTFrameUpdate.m │ ├── RCTImageSource.h │ ├── RCTImageSource.m │ ├── RCTInvalidating.h │ ├── RCTJSCErrorHandling.h │ ├── RCTJSCErrorHandling.mm │ ├── RCTJSStackFrame.h │ ├── RCTJSStackFrame.m │ ├── RCTJavaScriptExecutor.h │ ├── RCTJavaScriptLoader.h │ ├── RCTJavaScriptLoader.mm │ ├── RCTKeyCommands.h │ ├── RCTKeyCommands.m │ ├── RCTLog.h │ ├── RCTLog.mm │ ├── RCTModuleData.h │ ├── RCTModuleData.mm │ ├── RCTModuleMethod.h │ ├── RCTModuleMethod.m │ ├── RCTMultipartDataTask.h │ ├── RCTMultipartDataTask.m │ ├── RCTMultipartStreamReader.h │ ├── RCTMultipartStreamReader.m │ ├── RCTNullability.h │ ├── RCTParserUtils.h │ ├── RCTParserUtils.m │ ├── RCTPerformanceLogger.h │ ├── RCTPerformanceLogger.m │ ├── RCTPlatform.h │ ├── RCTPlatform.m │ ├── RCTReloadCommand.h │ ├── RCTReloadCommand.m │ ├── RCTRootContentView.h │ ├── RCTRootContentView.m │ ├── RCTRootView.h │ ├── RCTRootView.m │ ├── RCTRootViewDelegate.h │ ├── RCTRootViewInternal.h │ ├── RCTTVRemoteHandler.h │ ├── RCTTVRemoteHandler.m │ ├── RCTTouchEvent.h │ ├── RCTTouchEvent.m │ ├── RCTTouchHandler.h │ ├── RCTTouchHandler.m │ ├── RCTURLRequestDelegate.h │ ├── RCTURLRequestHandler.h │ ├── RCTUtils.h │ ├── RCTUtils.m │ └── RCTWebSocketObserverProtocol.h ├── CxxBridge │ ├── NSDataBigString.h │ ├── NSDataBigString.mm │ ├── RCTCxxBridge.mm │ ├── RCTJSCHelpers.h │ ├── RCTJSCHelpers.mm │ ├── RCTMessageThread.h │ ├── RCTMessageThread.mm │ ├── RCTObjcExecutor.h │ └── RCTObjcExecutor.mm ├── CxxModule │ ├── DispatchMessageQueueThread.h │ ├── RCTCxxMethod.h │ ├── RCTCxxMethod.mm │ ├── RCTCxxModule.h │ ├── RCTCxxModule.mm │ ├── RCTCxxUtils.h │ ├── RCTCxxUtils.mm │ ├── RCTNativeModule.h │ └── RCTNativeModule.mm ├── CxxUtils │ ├── RCTFollyConvert.h │ └── RCTFollyConvert.mm ├── DevSupport │ ├── RCTPackagerClient.h │ ├── RCTPackagerClient.m │ ├── RCTPackagerClientResponder.h │ ├── RCTPackagerClientResponder.m │ ├── RCTReloadPackagerMethod.h │ ├── RCTReloadPackagerMethod.m │ ├── RCTSamplingProfilerPackagerMethod.h │ └── RCTSamplingProfilerPackagerMethod.mm ├── Executors │ ├── RCTJSCExecutor.h │ └── RCTJSCExecutor.mm ├── Modules │ ├── JSCSamplingProfiler.h │ ├── JSCSamplingProfiler.m │ ├── RCTAccessibilityManager.h │ ├── RCTAccessibilityManager.m │ ├── RCTAlertManager.h │ ├── RCTAlertManager.m │ ├── RCTAppState.h │ ├── RCTAppState.m │ ├── RCTAsyncLocalStorage.h │ ├── RCTAsyncLocalStorage.m │ ├── RCTClipboard.h │ ├── RCTClipboard.m │ ├── RCTDevLoadingView.h │ ├── RCTDevLoadingView.m │ ├── RCTDevMenu.h │ ├── RCTDevMenu.m │ ├── RCTDevSettings.h │ ├── RCTDevSettings.mm │ ├── RCTDeviceInfo.h │ ├── RCTDeviceInfo.m │ ├── RCTEventEmitter.h │ ├── RCTEventEmitter.m │ ├── RCTExceptionsManager.h │ ├── RCTExceptionsManager.m │ ├── RCTI18nManager.h │ ├── RCTI18nManager.m │ ├── RCTI18nUtil.h │ ├── RCTI18nUtil.m │ ├── RCTKeyboardObserver.h │ ├── RCTKeyboardObserver.m │ ├── RCTRedBox.h │ ├── RCTRedBox.m │ ├── RCTSourceCode.h │ ├── RCTSourceCode.m │ ├── RCTStatusBarManager.h │ ├── RCTStatusBarManager.m │ ├── RCTTVNavigationEventEmitter.h │ ├── RCTTVNavigationEventEmitter.m │ ├── RCTTiming.h │ ├── RCTTiming.m │ ├── RCTUIManager.h │ └── RCTUIManager.m ├── Profiler │ ├── RCTFPSGraph.h │ ├── RCTFPSGraph.m │ ├── RCTJSCProfiler.h │ ├── RCTJSCProfiler.m │ ├── RCTMacros.h │ ├── RCTPerfMonitor.m │ ├── RCTProfile.h │ ├── RCTProfile.m │ ├── RCTProfileTrampoline-arm.S │ ├── RCTProfileTrampoline-arm64.S │ ├── RCTProfileTrampoline-i386.S │ └── RCTProfileTrampoline-x86_64.S ├── React.xcodeproj │ └── project.pbxproj ├── ReactCxx.xcodeproj │ └── project.pbxproj ├── Views │ ├── RCTActivityIndicatorView.h │ ├── RCTActivityIndicatorView.m │ ├── RCTActivityIndicatorViewManager.h │ ├── RCTActivityIndicatorViewManager.m │ ├── RCTAnimationType.h │ ├── RCTAutoInsetsProtocol.h │ ├── RCTBorderDrawing.h │ ├── RCTBorderDrawing.m │ ├── RCTBorderStyle.h │ ├── RCTComponent.h │ ├── RCTComponentData.h │ ├── RCTComponentData.m │ ├── RCTConvert+CoreLocation.h │ ├── RCTConvert+CoreLocation.m │ ├── RCTConvert+Transform.h │ ├── RCTConvert+Transform.m │ ├── RCTDatePicker.h │ ├── RCTDatePicker.m │ ├── RCTDatePickerManager.h │ ├── RCTDatePickerManager.m │ ├── RCTFont.h │ ├── RCTFont.mm │ ├── RCTModalHostView.h │ ├── RCTModalHostView.m │ ├── RCTModalHostViewController.h │ ├── RCTModalHostViewController.m │ ├── RCTModalHostViewManager.h │ ├── RCTModalHostViewManager.m │ ├── RCTNavItem.h │ ├── RCTNavItem.m │ ├── RCTNavItemManager.h │ ├── RCTNavItemManager.m │ ├── RCTNavigator.h │ ├── RCTNavigator.m │ ├── RCTNavigatorManager.h │ ├── RCTNavigatorManager.m │ ├── RCTPicker.h │ ├── RCTPicker.m │ ├── RCTPickerManager.h │ ├── RCTPickerManager.m │ ├── RCTPointerEvents.h │ ├── RCTProgressViewManager.h │ ├── RCTProgressViewManager.m │ ├── RCTRefreshControl.h │ ├── RCTRefreshControl.m │ ├── RCTRefreshControlManager.h │ ├── RCTRefreshControlManager.m │ ├── RCTRootShadowView.h │ ├── RCTRootShadowView.m │ ├── RCTScrollContentShadowView.h │ ├── RCTScrollContentShadowView.m │ ├── RCTScrollContentViewManager.h │ ├── RCTScrollContentViewManager.m │ ├── RCTScrollView.h │ ├── RCTScrollView.m │ ├── RCTScrollViewManager.h │ ├── RCTScrollViewManager.m │ ├── RCTScrollableProtocol.h │ ├── RCTSegmentedControl.h │ ├── RCTSegmentedControl.m │ ├── RCTSegmentedControlManager.h │ ├── RCTSegmentedControlManager.m │ ├── RCTShadowView.h │ ├── RCTShadowView.m │ ├── RCTSlider.h │ ├── RCTSlider.m │ ├── RCTSliderManager.h │ ├── RCTSliderManager.m │ ├── RCTSwitch.h │ ├── RCTSwitch.m │ ├── RCTSwitchManager.h │ ├── RCTSwitchManager.m │ ├── RCTTVView.h │ ├── RCTTVView.m │ ├── RCTTabBar.h │ ├── RCTTabBar.m │ ├── RCTTabBarItem.h │ ├── RCTTabBarItem.m │ ├── RCTTabBarItemManager.h │ ├── RCTTabBarItemManager.m │ ├── RCTTabBarManager.h │ ├── RCTTabBarManager.m │ ├── RCTTextDecorationLineType.h │ ├── RCTView.h │ ├── RCTView.m │ ├── RCTViewControllerProtocol.h │ ├── RCTViewManager.h │ ├── RCTViewManager.m │ ├── RCTWebView.h │ ├── RCTWebView.m │ ├── RCTWebViewManager.h │ ├── RCTWebViewManager.m │ ├── RCTWrapperViewController.h │ ├── RCTWrapperViewController.m │ ├── UIView+Private.h │ ├── UIView+React.h │ └── UIView+React.m └── folly.xcconfig ├── ReactAndroid ├── .npmignore ├── DEFS ├── DevExperience.md ├── README.md ├── build.gradle ├── gradle.properties ├── libs │ └── BUCK ├── release.gradle └── src │ ├── androidTest │ ├── AndroidManifest.xml │ ├── assets │ │ └── BUCK │ ├── buck-runner │ │ ├── AndroidManifest.xml │ │ └── BUCK │ ├── java │ │ └── com │ │ │ └── facebook │ │ │ └── react │ │ │ ├── testing │ │ │ ├── AbstractScrollViewTestCase.java │ │ │ ├── AssertModule.java │ │ │ ├── BUCK │ │ │ ├── FakeAsyncLocalStorage.java │ │ │ ├── FakeWebSocketModule.java │ │ │ ├── InstanceSpecForTestPackage.java │ │ │ ├── IntRecordingModule.java │ │ │ ├── JSIntegrationTestChecker.java │ │ │ ├── MultipleFailureException.java │ │ │ ├── ReactAppInstrumentationTestCase.java │ │ │ ├── ReactAppTestActivity.java │ │ │ ├── ReactInstanceSpecForTest.java │ │ │ ├── ReactIntegrationTestCase.java │ │ │ ├── ReactSettingsForTests.java │ │ │ ├── ReactTestAppShell.java │ │ │ ├── ReactTestApplicationImpl.java │ │ │ ├── ReactTestFactory.java │ │ │ ├── ReactTestHelper.java │ │ │ ├── ScreenshotingFrameLayout.java │ │ │ ├── SingleTouchGestureGenerator.java │ │ │ ├── StringRecordingModule.java │ │ │ ├── idledetection │ │ │ │ ├── BUCK │ │ │ │ ├── IdleWaiter.java │ │ │ │ ├── ReactBridgeIdleSignaler.java │ │ │ │ └── ReactIdleDetectionUtil.java │ │ │ └── network │ │ │ │ ├── BUCK │ │ │ │ └── NetworkRecordingModuleMock.java │ │ │ └── tests │ │ │ ├── BUCK │ │ │ ├── CatalystMeasureLayoutTest.java │ │ │ ├── CatalystMultitouchHandlingTestCase.java │ │ │ ├── CatalystNativeJSToJavaParametersTestCase.java │ │ │ ├── CatalystNativeJavaToJSArgumentsTestCase.java │ │ │ ├── CatalystNativeJavaToJSReturnValuesTestCase.java │ │ │ ├── CatalystSubviewsClippingTestCase.java │ │ │ ├── CatalystTouchBubblingTestCase.java │ │ │ ├── CatalystUIManagerTestCase.java │ │ │ ├── DatePickerDialogTestCase.java │ │ │ ├── InitialPropsTestCase.java │ │ │ ├── JSLocaleTest.java │ │ │ ├── JSResponderTestCase.java │ │ │ ├── LayoutEventsTestCase.java │ │ │ ├── NativeIdTestCase.java │ │ │ ├── ProgressBarTestCase.java │ │ │ ├── ReactHorizontalScrollViewTestCase.java │ │ │ ├── ReactPickerTestCase.java │ │ │ ├── ReactRootViewTestCase.java │ │ │ ├── ReactScrollViewTestCase.java │ │ │ ├── ReactSwipeRefreshLayoutTestCase.java │ │ │ ├── ShareTestCase.java │ │ │ ├── TestIdTestCase.java │ │ │ ├── TextInputTestCase.java │ │ │ ├── TimePickerDialogTestCase.java │ │ │ └── ViewRenderingTestCase.java │ └── js │ │ ├── Asserts.js │ │ ├── CatalystRootViewTestModule.js │ │ ├── DatePickerDialogTestModule.js │ │ ├── InitialPropsTestApp.js │ │ ├── JSResponderTestApp.js │ │ ├── LayoutEventsTestApp.js │ │ ├── MeasureLayoutTestModule.js │ │ ├── MultitouchHandlingTestAppModule.js │ │ ├── NativeIdTestModule.js │ │ ├── PickerAndroidTestModule.js │ │ ├── ProgressBarTestModule.js │ │ ├── ScrollViewTestModule.js │ │ ├── ShareTestModule.js │ │ ├── SubviewsClippingTestModule.js │ │ ├── SwipeRefreshLayoutTestModule.js │ │ ├── TestBundle.js │ │ ├── TestIdTestModule.js │ │ ├── TestJSLocaleModule.js │ │ ├── TestJSToJavaParametersModule.js │ │ ├── TestJavaToJSArgumentsModule.js │ │ ├── TestJavaToJSReturnValuesModule.js │ │ ├── TextInputTestModule.js │ │ ├── TimePickerDialogTestModule.js │ │ ├── TouchBubblingTestAppModule.js │ │ ├── UIManagerTestModule.js │ │ └── ViewRenderingTestModule.js │ ├── main │ ├── AndroidManifest.xml │ ├── android_res │ │ └── com │ │ │ └── facebook │ │ │ └── catalyst │ │ │ └── appcompat │ │ │ └── BUCK │ ├── java │ │ └── com │ │ │ └── facebook │ │ │ ├── BUCK │ │ │ ├── jni │ │ │ ├── BUCK │ │ │ ├── Countable.java │ │ │ ├── HybridData.java │ │ │ ├── IteratorHelper.java │ │ │ ├── MapIteratorHelper.java │ │ │ ├── NativeRunnable.java │ │ │ ├── ThreadScopeSupport.java │ │ │ └── fbjni.pro │ │ │ ├── perftest │ │ │ ├── BUCK │ │ │ └── PerfTestConfig.java │ │ │ ├── proguard │ │ │ └── annotations │ │ │ │ ├── BUCK │ │ │ │ ├── DoNotStrip.java │ │ │ │ ├── KeepGettersAndSetters.java │ │ │ │ └── proguard_annotations.pro │ │ │ ├── quicklog │ │ │ ├── BUCK │ │ │ ├── QuickPerformanceLogger.java │ │ │ ├── QuickPerformanceLoggerProvider.java │ │ │ └── identifiers │ │ │ │ ├── ActionId.java │ │ │ │ ├── BUCK │ │ │ │ └── ReactNativeBridge.java │ │ │ ├── react │ │ │ ├── BUCK │ │ │ ├── CompositeReactPackage.java │ │ │ ├── CoreModulesPackage.java │ │ │ ├── EagerModuleProvider.java │ │ │ ├── HeadlessJsTaskService.java │ │ │ ├── JSCConfig.java │ │ │ ├── LazyReactPackage.java │ │ │ ├── MemoryPressureRouter.java │ │ │ ├── NativeModuleRegistryBuilder.java │ │ │ ├── ReactActivity.java │ │ │ ├── ReactActivityDelegate.java │ │ │ ├── ReactApplication.java │ │ │ ├── ReactFragmentActivity.java │ │ │ ├── ReactInstanceManager.java │ │ │ ├── ReactInstanceManagerBuilder.java │ │ │ ├── ReactInstancePackage.java │ │ │ ├── ReactNativeHost.java │ │ │ ├── ReactPackage.java │ │ │ ├── ReactPackageLogger.java │ │ │ ├── ReactRootView.java │ │ │ ├── animated │ │ │ │ ├── AdditionAnimatedNode.java │ │ │ │ ├── AnimatedNode.java │ │ │ │ ├── AnimatedNodeValueListener.java │ │ │ │ ├── AnimationDriver.java │ │ │ │ ├── BUCK │ │ │ │ ├── DecayAnimation.java │ │ │ │ ├── DiffClampAnimatedNode.java │ │ │ │ ├── DivisionAnimatedNode.java │ │ │ │ ├── EventAnimationDriver.java │ │ │ │ ├── FrameBasedAnimationDriver.java │ │ │ │ ├── InterpolationAnimatedNode.java │ │ │ │ ├── ModulusAnimatedNode.java │ │ │ │ ├── MultiplicationAnimatedNode.java │ │ │ │ ├── NativeAnimatedModule.java │ │ │ │ ├── NativeAnimatedNodesManager.java │ │ │ │ ├── PropsAnimatedNode.java │ │ │ │ ├── SpringAnimation.java │ │ │ │ ├── StyleAnimatedNode.java │ │ │ │ ├── TransformAnimatedNode.java │ │ │ │ └── ValueAnimatedNode.java │ │ │ ├── animation │ │ │ │ ├── AbstractFloatPairPropertyUpdater.java │ │ │ │ ├── AbstractSingleFloatProperyUpdater.java │ │ │ │ ├── Animation.java │ │ │ │ ├── AnimationListener.java │ │ │ │ ├── AnimationPropertyUpdater.java │ │ │ │ ├── AnimationRegistry.java │ │ │ │ ├── BUCK │ │ │ │ ├── ImmediateAnimation.java │ │ │ │ ├── NoopAnimationPropertyUpdater.java │ │ │ │ ├── OpacityAnimationPropertyUpdater.java │ │ │ │ ├── PositionAnimationPairPropertyUpdater.java │ │ │ │ ├── RotationAnimationPropertyUpdater.java │ │ │ │ ├── ScaleXAnimationPropertyUpdater.java │ │ │ │ ├── ScaleXYAnimationPairPropertyUpdater.java │ │ │ │ └── ScaleYAnimationPropertyUpdater.java │ │ │ ├── bridge │ │ │ │ ├── ActivityEventListener.java │ │ │ │ ├── Arguments.java │ │ │ │ ├── AssertionException.java │ │ │ │ ├── BUCK │ │ │ │ ├── BaseActivityEventListener.java │ │ │ │ ├── BaseJavaModule.java │ │ │ │ ├── Callback.java │ │ │ │ ├── CallbackImpl.java │ │ │ │ ├── CatalystInstance.java │ │ │ │ ├── ContextBaseJavaModule.java │ │ │ │ ├── DefaultNativeModuleCallExceptionHandler.java │ │ │ │ ├── Dynamic.java │ │ │ │ ├── DynamicFromArray.java │ │ │ │ ├── DynamicFromMap.java │ │ │ │ ├── ExecutorToken.java │ │ │ │ ├── GuardedAsyncTask.java │ │ │ │ ├── GuardedResultAsyncTask.java │ │ │ │ ├── GuardedRunnable.java │ │ │ │ ├── Inspector.java │ │ │ │ ├── InvalidIteratorException.java │ │ │ │ ├── JSApplicationCausedNativeException.java │ │ │ │ ├── JSApplicationIllegalArgumentException.java │ │ │ │ ├── JSInstance.java │ │ │ │ ├── JavaJSExecutor.java │ │ │ │ ├── JavaOnlyArray.java │ │ │ │ ├── JavaOnlyMap.java │ │ │ │ ├── JavaScriptModule.java │ │ │ │ ├── JavaScriptModuleRegistration.java │ │ │ │ ├── JavaScriptModuleRegistry.java │ │ │ │ ├── JsonWriter.java │ │ │ │ ├── JsonWriterHelper.java │ │ │ │ ├── LifecycleEventListener.java │ │ │ │ ├── MemoryPressure.java │ │ │ │ ├── MemoryPressureListener.java │ │ │ │ ├── ModuleSpec.java │ │ │ │ ├── NativeArgumentsParseException.java │ │ │ │ ├── NativeArray.java │ │ │ │ ├── NativeMap.java │ │ │ │ ├── NativeModule.java │ │ │ │ ├── NativeModuleCallExceptionHandler.java │ │ │ │ ├── NoSuchKeyException.java │ │ │ │ ├── NotThreadSafeBridgeIdleDebugListener.java │ │ │ │ ├── ObjectAlreadyConsumedException.java │ │ │ │ ├── OnBatchCompleteListener.java │ │ │ │ ├── OnExecutorUnregisteredListener.java │ │ │ │ ├── PerformanceCounter.java │ │ │ │ ├── Promise.java │ │ │ │ ├── PromiseImpl.java │ │ │ │ ├── ReactApplicationContext.java │ │ │ │ ├── ReactBridge.java │ │ │ │ ├── ReactContext.java │ │ │ │ ├── ReactContextBaseJavaModule.java │ │ │ │ ├── ReactMarker.java │ │ │ │ ├── ReactMarkerConstants.java │ │ │ │ ├── ReactMethod.java │ │ │ │ ├── ReadableArray.java │ │ │ │ ├── ReadableMap.java │ │ │ │ ├── ReadableMapKeySetIterator.java │ │ │ │ ├── ReadableNativeArray.java │ │ │ │ ├── ReadableNativeMap.java │ │ │ │ ├── ReadableType.java │ │ │ │ ├── SoftAssertions.java │ │ │ │ ├── SupportsWebWorkers.java │ │ │ │ ├── Systrace.java │ │ │ │ ├── UiThreadUtil.java │ │ │ │ ├── UnexpectedNativeTypeException.java │ │ │ │ ├── WritableArray.java │ │ │ │ ├── WritableMap.java │ │ │ │ ├── WritableNativeArray.java │ │ │ │ ├── WritableNativeMap.java │ │ │ │ ├── package_js.py │ │ │ │ ├── queue │ │ │ │ │ ├── MessageQueueThread.java │ │ │ │ │ ├── MessageQueueThreadHandler.java │ │ │ │ │ ├── MessageQueueThreadImpl.java │ │ │ │ │ ├── MessageQueueThreadRegistry.java │ │ │ │ │ ├── MessageQueueThreadSpec.java │ │ │ │ │ ├── NativeRunnable.java │ │ │ │ │ ├── NativeRunnableDeprecated.java │ │ │ │ │ ├── ProxyQueueThreadExceptionHandler.java │ │ │ │ │ ├── QueueThreadExceptionHandler.java │ │ │ │ │ ├── ReactQueueConfiguration.java │ │ │ │ │ ├── ReactQueueConfigurationImpl.java │ │ │ │ │ └── ReactQueueConfigurationSpec.java │ │ │ │ └── reactnative.pro │ │ │ ├── common │ │ │ │ ├── ApplicationHolder.java │ │ │ │ ├── BUCK │ │ │ │ ├── ClearableSynchronizedPool.java │ │ │ │ ├── JavascriptException.java │ │ │ │ ├── LifecycleState.java │ │ │ │ ├── LongArray.java │ │ │ │ ├── MapBuilder.java │ │ │ │ ├── ReactConstants.java │ │ │ │ ├── SetBuilder.java │ │ │ │ ├── ShakeDetector.java │ │ │ │ ├── SingleThreadAsserter.java │ │ │ │ ├── SystemClock.java │ │ │ │ ├── annotations │ │ │ │ │ └── VisibleForTesting.java │ │ │ │ ├── build │ │ │ │ │ └── ReactBuildConfig.java │ │ │ │ ├── futures │ │ │ │ │ └── SimpleSettableFuture.java │ │ │ │ └── network │ │ │ │ │ ├── BUCK │ │ │ │ │ └── OkHttpCallUtil.java │ │ │ ├── cxxbridge │ │ │ │ ├── Arguments.java │ │ │ │ ├── BUCK │ │ │ │ ├── CallbackImpl.java │ │ │ │ ├── CatalystInstanceImpl.java │ │ │ │ ├── CxxModuleWrapper.java │ │ │ │ ├── CxxModuleWrapperBase.java │ │ │ │ ├── ExecutorToken.java │ │ │ │ ├── FallbackJSBundleLoader.java │ │ │ │ ├── JSBundleLoader.java │ │ │ │ ├── JSCJavaScriptExecutor.java │ │ │ │ ├── JavaMethodWrapper.java │ │ │ │ ├── JavaModuleWrapper.java │ │ │ │ ├── JavaScriptExecutor.java │ │ │ │ ├── ModuleHolder.java │ │ │ │ ├── NativeModuleRegistry.java │ │ │ │ ├── ProxyJavaScriptExecutor.java │ │ │ │ ├── ReactCallback.java │ │ │ │ ├── SoftAssertions.java │ │ │ │ ├── UiThreadUtil.java │ │ │ │ └── bridge.pro │ │ │ ├── devsupport │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── BUCK │ │ │ │ ├── DebugOverlayController.java │ │ │ │ ├── DebugServerException.java │ │ │ │ ├── DevInternalSettings.java │ │ │ │ ├── DevLoadingViewController.java │ │ │ │ ├── DevServerHelper.java │ │ │ │ ├── DevSettingsActivity.java │ │ │ │ ├── DevSupportManagerFactory.java │ │ │ │ ├── DevSupportManagerImpl.java │ │ │ │ ├── DisabledDevSupportManager.java │ │ │ │ ├── DoubleTapReloadRecognizer.java │ │ │ │ ├── FpsView.java │ │ │ │ ├── HMRClient.java │ │ │ │ ├── InspectorPackagerConnection.java │ │ │ │ ├── JSCHeapCapture.java │ │ │ │ ├── JSCSamplingProfiler.java │ │ │ │ ├── JSDebuggerWebSocketClient.java │ │ │ │ ├── JSException.java │ │ │ │ ├── MultipartStreamReader.java │ │ │ │ ├── ReactInstanceDevCommandsHandler.java │ │ │ │ ├── RedBoxDialog.java │ │ │ │ ├── RedBoxHandler.java │ │ │ │ ├── StackTraceHelper.java │ │ │ │ ├── WebsocketJavaScriptExecutor.java │ │ │ │ └── interfaces │ │ │ │ │ ├── DevOptionHandler.java │ │ │ │ │ ├── DevSupportManager.java │ │ │ │ │ ├── PackagerStatusCallback.java │ │ │ │ │ └── StackFrame.java │ │ │ ├── flat │ │ │ │ ├── AbstractDrawBorder.java │ │ │ │ ├── AbstractDrawCommand.java │ │ │ │ ├── AndroidView.java │ │ │ │ ├── AttachDetachListener.java │ │ │ │ ├── BUCK │ │ │ │ ├── BitmapUpdateListener.java │ │ │ │ ├── ClippingDrawCommandManager.java │ │ │ │ ├── DrawBackgroundColor.java │ │ │ │ ├── DrawBorder.java │ │ │ │ ├── DrawCommand.java │ │ │ │ ├── DrawCommandManager.java │ │ │ │ ├── DrawImage.java │ │ │ │ ├── DrawImageWithDrawee.java │ │ │ │ ├── DrawTextLayout.java │ │ │ │ ├── DrawView.java │ │ │ │ ├── DraweeRequestHelper.java │ │ │ │ ├── ElementsList.java │ │ │ │ ├── FlatARTSurfaceViewManager.java │ │ │ │ ├── FlatARTSurfaceViewShadowNode.java │ │ │ │ ├── FlatMeasuredViewGroup.java │ │ │ │ ├── FlatNativeViewHierarchyManager.java │ │ │ │ ├── FlatReactModalShadowNode.java │ │ │ │ ├── FlatRootShadowNode.java │ │ │ │ ├── FlatRootViewManager.java │ │ │ │ ├── FlatShadowNode.java │ │ │ │ ├── FlatTextShadowNode.java │ │ │ │ ├── FlatUI.java │ │ │ │ ├── FlatUIImplementation.java │ │ │ │ ├── FlatUIImplementationProvider.java │ │ │ │ ├── FlatUIViewOperationQueue.java │ │ │ │ ├── FlatViewGroup.java │ │ │ │ ├── FlatViewManager.java │ │ │ │ ├── FontStylingSpan.java │ │ │ │ ├── HitSlopNodeRegion.java │ │ │ │ ├── HorizontalDrawCommandManager.java │ │ │ │ ├── InlineImageSpanWithPipeline.java │ │ │ │ ├── MoveProxy.java │ │ │ │ ├── NativeViewWrapper.java │ │ │ │ ├── NodeRegion.java │ │ │ │ ├── PipelineRequestHelper.java │ │ │ │ ├── RCTImageView.java │ │ │ │ ├── RCTImageViewManager.java │ │ │ │ ├── RCTModalHostManager.java │ │ │ │ ├── RCTRawText.java │ │ │ │ ├── RCTRawTextManager.java │ │ │ │ ├── RCTText.java │ │ │ │ ├── RCTTextInlineImage.java │ │ │ │ ├── RCTTextInlineImageManager.java │ │ │ │ ├── RCTTextInput.java │ │ │ │ ├── RCTTextInputManager.java │ │ │ │ ├── RCTTextManager.java │ │ │ │ ├── RCTView.java │ │ │ │ ├── RCTViewManager.java │ │ │ │ ├── RCTViewPagerManager.java │ │ │ │ ├── RCTVirtualText.java │ │ │ │ ├── RCTVirtualTextManager.java │ │ │ │ ├── README.md │ │ │ │ ├── ShadowStyleSpan.java │ │ │ │ ├── StateBuilder.java │ │ │ │ ├── TextNodeRegion.java │ │ │ │ ├── TypefaceCache.java │ │ │ │ ├── VerticalDrawCommandManager.java │ │ │ │ ├── ViewResolver.java │ │ │ │ └── VirtualViewManager.java │ │ │ ├── jstasks │ │ │ │ ├── BUCK │ │ │ │ ├── HeadlessJsTaskConfig.java │ │ │ │ ├── HeadlessJsTaskContext.java │ │ │ │ └── HeadlessJsTaskEventListener.java │ │ │ ├── module │ │ │ │ ├── annotations │ │ │ │ │ ├── BUCK │ │ │ │ │ ├── ReactModule.java │ │ │ │ │ └── ReactModuleList.java │ │ │ │ ├── model │ │ │ │ │ ├── BUCK │ │ │ │ │ ├── ReactModuleInfo.java │ │ │ │ │ └── ReactModuleInfoProvider.java │ │ │ │ └── processing │ │ │ │ │ ├── BUCK │ │ │ │ │ └── ReactModuleSpecProcessor.java │ │ │ ├── modules │ │ │ │ ├── accessibilityinfo │ │ │ │ │ ├── AccessibilityInfoModule.java │ │ │ │ │ └── BUCK │ │ │ │ ├── appregistry │ │ │ │ │ ├── AppRegistry.java │ │ │ │ │ └── BUCK │ │ │ │ ├── appstate │ │ │ │ │ ├── AppStateModule.java │ │ │ │ │ └── BUCK │ │ │ │ ├── camera │ │ │ │ │ ├── BUCK │ │ │ │ │ ├── CameraRollManager.java │ │ │ │ │ ├── ImageEditingManager.java │ │ │ │ │ └── ImageStoreManager.java │ │ │ │ ├── clipboard │ │ │ │ │ ├── BUCK │ │ │ │ │ └── ClipboardModule.java │ │ │ │ ├── common │ │ │ │ │ ├── BUCK │ │ │ │ │ └── ModuleDataCleaner.java │ │ │ │ ├── core │ │ │ │ │ ├── BUCK │ │ │ │ │ ├── ChoreographerCompat.java │ │ │ │ │ ├── DefaultHardwareBackBtnHandler.java │ │ │ │ │ ├── DeviceEventManagerModule.java │ │ │ │ │ ├── ExceptionsManagerModule.java │ │ │ │ │ ├── HeadlessJsTaskSupportModule.java │ │ │ │ │ ├── JSTimersExecution.java │ │ │ │ │ ├── PermissionAwareActivity.java │ │ │ │ │ ├── PermissionListener.java │ │ │ │ │ ├── RCTNativeAppEventEmitter.java │ │ │ │ │ ├── ReactChoreographer.java │ │ │ │ │ └── Timing.java │ │ │ │ ├── datepicker │ │ │ │ │ ├── BUCK │ │ │ │ │ ├── DatePickerDialogFragment.java │ │ │ │ │ ├── DatePickerDialogModule.java │ │ │ │ │ ├── DatePickerMode.java │ │ │ │ │ ├── DismissableDatePickerDialog.java │ │ │ │ │ └── SupportDatePickerDialogFragment.java │ │ │ │ ├── debug │ │ │ │ │ ├── AnimationsDebugModule.java │ │ │ │ │ ├── BUCK │ │ │ │ │ ├── DidJSUpdateUiDuringFrameDetector.java │ │ │ │ │ ├── FpsDebugFrameCallback.java │ │ │ │ │ ├── SourceCodeModule.java │ │ │ │ │ └── interfaces │ │ │ │ │ │ └── DeveloperSettings.java │ │ │ │ ├── deviceinfo │ │ │ │ │ ├── BUCK │ │ │ │ │ └── DeviceInfoModule.java │ │ │ │ ├── dialog │ │ │ │ │ ├── AlertFragment.java │ │ │ │ │ ├── BUCK │ │ │ │ │ ├── DialogModule.java │ │ │ │ │ └── SupportAlertFragment.java │ │ │ │ ├── fresco │ │ │ │ │ ├── BUCK │ │ │ │ │ ├── FrescoModule.java │ │ │ │ │ ├── ReactNetworkImageRequest.java │ │ │ │ │ ├── ReactOkHttpNetworkFetcher.java │ │ │ │ │ └── SystraceRequestListener.java │ │ │ │ ├── i18nmanager │ │ │ │ │ ├── BUCK │ │ │ │ │ ├── I18nManagerModule.java │ │ │ │ │ └── I18nUtil.java │ │ │ │ ├── image │ │ │ │ │ ├── BUCK │ │ │ │ │ └── ImageLoaderModule.java │ │ │ │ ├── intent │ │ │ │ │ ├── BUCK │ │ │ │ │ └── IntentModule.java │ │ │ │ ├── location │ │ │ │ │ ├── BUCK │ │ │ │ │ ├── LocationModule.java │ │ │ │ │ └── PositionError.java │ │ │ │ ├── netinfo │ │ │ │ │ ├── BUCK │ │ │ │ │ └── NetInfoModule.java │ │ │ │ ├── network │ │ │ │ │ ├── BUCK │ │ │ │ │ ├── CookieJarContainer.java │ │ │ │ │ ├── ForwardingCookieHandler.java │ │ │ │ │ ├── NetworkInterceptorCreator.java │ │ │ │ │ ├── NetworkingModule.java │ │ │ │ │ ├── OkHttpClientProvider.java │ │ │ │ │ ├── ProgressListener.java │ │ │ │ │ ├── ProgressRequestBody.java │ │ │ │ │ ├── ProgressResponseBody.java │ │ │ │ │ ├── ReactCookieJarContainer.java │ │ │ │ │ ├── RequestBodyUtil.java │ │ │ │ │ ├── ResponseUtil.java │ │ │ │ │ └── TLSSocketFactory.java │ │ │ │ ├── permissions │ │ │ │ │ ├── BUCK │ │ │ │ │ └── PermissionsModule.java │ │ │ │ ├── share │ │ │ │ │ ├── BUCK │ │ │ │ │ └── ShareModule.java │ │ │ │ ├── statusbar │ │ │ │ │ ├── BUCK │ │ │ │ │ └── StatusBarModule.java │ │ │ │ ├── storage │ │ │ │ │ ├── AsyncLocalStorageUtil.java │ │ │ │ │ ├── AsyncStorageErrorUtil.java │ │ │ │ │ ├── AsyncStorageModule.java │ │ │ │ │ ├── BUCK │ │ │ │ │ └── ReactDatabaseSupplier.java │ │ │ │ ├── systeminfo │ │ │ │ │ ├── AndroidInfoHelpers.java │ │ │ │ │ ├── AndroidInfoModule.java │ │ │ │ │ └── BUCK │ │ │ │ ├── timepicker │ │ │ │ │ ├── BUCK │ │ │ │ │ ├── DismissableTimePickerDialog.java │ │ │ │ │ ├── SupportTimePickerDialogFragment.java │ │ │ │ │ ├── TimePickerDialogFragment.java │ │ │ │ │ └── TimePickerDialogModule.java │ │ │ │ ├── toast │ │ │ │ │ ├── BUCK │ │ │ │ │ └── ToastModule.java │ │ │ │ ├── vibration │ │ │ │ │ ├── BUCK │ │ │ │ │ └── VibrationModule.java │ │ │ │ └── websocket │ │ │ │ │ ├── BUCK │ │ │ │ │ └── WebSocketModule.java │ │ │ ├── packagerconnection │ │ │ │ ├── BUCK │ │ │ │ ├── FileIoHandler.java │ │ │ │ ├── JSPackagerClient.java │ │ │ │ ├── NotificationOnlyHandler.java │ │ │ │ ├── PackagerConnectionSettings.java │ │ │ │ ├── ReconnectingWebSocket.java │ │ │ │ ├── RequestHandler.java │ │ │ │ ├── RequestOnlyHandler.java │ │ │ │ └── Responder.java │ │ │ ├── processing │ │ │ │ ├── BUCK │ │ │ │ └── ReactPropertyProcessor.java │ │ │ ├── shell │ │ │ │ ├── BUCK │ │ │ │ ├── MainPackageConfig.java │ │ │ │ └── MainReactPackage.java │ │ │ ├── touch │ │ │ │ ├── BUCK │ │ │ │ ├── JSResponderHandler.java │ │ │ │ ├── OnInterceptTouchEventListener.java │ │ │ │ ├── ReactHitSlopView.java │ │ │ │ └── ReactInterceptingViewGroup.java │ │ │ ├── uimanager │ │ │ │ ├── AccessibilityHelper.java │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── BUCK │ │ │ │ ├── BaseViewManager.java │ │ │ │ ├── DisplayMetricsHolder.java │ │ │ │ ├── FloatUtil.java │ │ │ │ ├── GuardedFrameCallback.java │ │ │ │ ├── IllegalViewOperationException.java │ │ │ │ ├── JSTouchDispatcher.java │ │ │ │ ├── LayoutShadowNode.java │ │ │ │ ├── MatrixMathHelper.java │ │ │ │ ├── MeasureSpecAssertions.java │ │ │ │ ├── NativeViewHierarchyManager.java │ │ │ │ ├── NativeViewHierarchyOptimizer.java │ │ │ │ ├── NoSuchNativeViewException.java │ │ │ │ ├── OnLayoutEvent.java │ │ │ │ ├── PixelUtil.java │ │ │ │ ├── PointerEvents.java │ │ │ │ ├── ReactClippingViewGroup.java │ │ │ │ ├── ReactClippingViewGroupHelper.java │ │ │ │ ├── ReactCompoundView.java │ │ │ │ ├── ReactCompoundViewGroup.java │ │ │ │ ├── ReactInvalidPropertyException.java │ │ │ │ ├── ReactPointerEventsView.java │ │ │ │ ├── ReactShadowNode.java │ │ │ │ ├── ReactStylesDiffMap.java │ │ │ │ ├── RootView.java │ │ │ │ ├── RootViewManager.java │ │ │ │ ├── RootViewUtil.java │ │ │ │ ├── ShadowNodeRegistry.java │ │ │ │ ├── SimpleViewManager.java │ │ │ │ ├── SizeMonitoringFrameLayout.java │ │ │ │ ├── Spacing.java │ │ │ │ ├── ThemedReactContext.java │ │ │ │ ├── TouchTargetHelper.java │ │ │ │ ├── TransformHelper.java │ │ │ │ ├── UIBlock.java │ │ │ │ ├── UIImplementation.java │ │ │ │ ├── UIImplementationProvider.java │ │ │ │ ├── UIManagerModule.java │ │ │ │ ├── UIManagerModuleConstants.java │ │ │ │ ├── UIManagerModuleConstantsHelper.java │ │ │ │ ├── UIViewOperationQueue.java │ │ │ │ ├── ViewAtIndex.java │ │ │ │ ├── ViewDefaults.java │ │ │ │ ├── ViewGroupDrawingOrderHelper.java │ │ │ │ ├── ViewGroupManager.java │ │ │ │ ├── ViewHierarchyDumper.java │ │ │ │ ├── ViewManager.java │ │ │ │ ├── ViewManagerPropertyUpdater.java │ │ │ │ ├── ViewManagerRegistry.java │ │ │ │ ├── ViewManagersPropertyCache.java │ │ │ │ ├── ViewProps.java │ │ │ │ ├── YogaNodePool.java │ │ │ │ ├── annotations │ │ │ │ │ ├── BUCK │ │ │ │ │ ├── ReactProp.java │ │ │ │ │ ├── ReactPropGroup.java │ │ │ │ │ └── ReactPropertyHolder.java │ │ │ │ ├── debug │ │ │ │ │ ├── DebugComponentOwnershipModule.java │ │ │ │ │ └── NotThreadSafeViewHierarchyUpdateDebugListener.java │ │ │ │ ├── events │ │ │ │ │ ├── ContentSizeChangeEvent.java │ │ │ │ │ ├── Event.java │ │ │ │ │ ├── EventDispatcher.java │ │ │ │ │ ├── EventDispatcherListener.java │ │ │ │ │ ├── NativeGestureUtil.java │ │ │ │ │ ├── RCTEventEmitter.java │ │ │ │ │ ├── TouchEvent.java │ │ │ │ │ ├── TouchEventCoalescingKeyHelper.java │ │ │ │ │ ├── TouchEventType.java │ │ │ │ │ └── TouchesHelper.java │ │ │ │ ├── layoutanimation │ │ │ │ │ ├── AbstractLayoutAnimation.java │ │ │ │ │ ├── AnimatedPropertyType.java │ │ │ │ │ ├── BaseLayoutAnimation.java │ │ │ │ │ ├── HandlesLayout.java │ │ │ │ │ ├── InterpolatorType.java │ │ │ │ │ ├── LayoutAnimationController.java │ │ │ │ │ ├── LayoutAnimationListener.java │ │ │ │ │ ├── LayoutAnimationType.java │ │ │ │ │ ├── LayoutCreateAnimation.java │ │ │ │ │ ├── LayoutDeleteAnimation.java │ │ │ │ │ ├── LayoutUpdateAnimation.java │ │ │ │ │ ├── OpacityAnimation.java │ │ │ │ │ ├── PositionAndSizeAnimation.java │ │ │ │ │ └── SimpleSpringInterpolator.java │ │ │ │ └── util │ │ │ │ │ ├── BUCK │ │ │ │ │ └── ReactFindViewUtil.java │ │ │ └── views │ │ │ │ ├── art │ │ │ │ ├── ARTGroupShadowNode.java │ │ │ │ ├── ARTGroupViewManager.java │ │ │ │ ├── ARTRenderableViewManager.java │ │ │ │ ├── ARTShapeShadowNode.java │ │ │ │ ├── ARTShapeViewManager.java │ │ │ │ ├── ARTSurfaceView.java │ │ │ │ ├── ARTSurfaceViewManager.java │ │ │ │ ├── ARTSurfaceViewShadowNode.java │ │ │ │ ├── ARTTextShadowNode.java │ │ │ │ ├── ARTTextViewManager.java │ │ │ │ ├── ARTVirtualNode.java │ │ │ │ ├── BUCK │ │ │ │ └── PropHelper.java │ │ │ │ ├── drawer │ │ │ │ ├── BUCK │ │ │ │ ├── ReactDrawerLayout.java │ │ │ │ ├── ReactDrawerLayoutManager.java │ │ │ │ └── events │ │ │ │ │ ├── DrawerClosedEvent.java │ │ │ │ │ ├── DrawerOpenedEvent.java │ │ │ │ │ ├── DrawerSlideEvent.java │ │ │ │ │ └── DrawerStateChangedEvent.java │ │ │ │ ├── image │ │ │ │ ├── BUCK │ │ │ │ ├── ImageLoadEvent.java │ │ │ │ ├── ImageResizeMethod.java │ │ │ │ ├── ImageResizeMode.java │ │ │ │ ├── ReactImageManager.java │ │ │ │ └── ReactImageView.java │ │ │ │ ├── imagehelper │ │ │ │ ├── BUCK │ │ │ │ ├── ImageSource.java │ │ │ │ ├── MultiSourceHelper.java │ │ │ │ └── ResourceDrawableIdHelper.java │ │ │ │ ├── modal │ │ │ │ ├── BUCK │ │ │ │ ├── ModalHostHelper.java │ │ │ │ ├── ModalHostShadowNode.java │ │ │ │ ├── ReactModalHostManager.java │ │ │ │ ├── ReactModalHostView.java │ │ │ │ ├── RequestCloseEvent.java │ │ │ │ └── ShowEvent.java │ │ │ │ ├── picker │ │ │ │ ├── BUCK │ │ │ │ ├── ReactDialogPickerManager.java │ │ │ │ ├── ReactDropdownPickerManager.java │ │ │ │ ├── ReactPicker.java │ │ │ │ ├── ReactPickerManager.java │ │ │ │ └── events │ │ │ │ │ └── PickerItemSelectEvent.java │ │ │ │ ├── progressbar │ │ │ │ ├── BUCK │ │ │ │ ├── ProgressBarContainerView.java │ │ │ │ ├── ProgressBarShadowNode.java │ │ │ │ └── ReactProgressBarViewManager.java │ │ │ │ ├── scroll │ │ │ │ ├── BUCK │ │ │ │ ├── FpsListener.java │ │ │ │ ├── OnScrollDispatchHelper.java │ │ │ │ ├── ReactHorizontalScrollView.java │ │ │ │ ├── ReactHorizontalScrollViewManager.java │ │ │ │ ├── ReactScrollView.java │ │ │ │ ├── ReactScrollViewCommandHelper.java │ │ │ │ ├── ReactScrollViewHelper.java │ │ │ │ ├── ReactScrollViewManager.java │ │ │ │ ├── ScrollEvent.java │ │ │ │ └── ScrollEventType.java │ │ │ │ ├── slider │ │ │ │ ├── BUCK │ │ │ │ ├── ReactSlider.java │ │ │ │ ├── ReactSliderEvent.java │ │ │ │ ├── ReactSliderManager.java │ │ │ │ └── ReactSlidingCompleteEvent.java │ │ │ │ ├── swiperefresh │ │ │ │ ├── BUCK │ │ │ │ ├── ReactSwipeRefreshLayout.java │ │ │ │ ├── RefreshEvent.java │ │ │ │ └── SwipeRefreshLayoutManager.java │ │ │ │ ├── switchview │ │ │ │ ├── BUCK │ │ │ │ ├── ReactSwitch.java │ │ │ │ ├── ReactSwitchEvent.java │ │ │ │ └── ReactSwitchManager.java │ │ │ │ ├── text │ │ │ │ ├── BUCK │ │ │ │ ├── CustomLineHeightSpan.java │ │ │ │ ├── CustomStyleSpan.java │ │ │ │ ├── DefaultStyleValuesUtil.java │ │ │ │ ├── ReactFontManager.java │ │ │ │ ├── ReactRawTextManager.java │ │ │ │ ├── ReactTagSpan.java │ │ │ │ ├── ReactTextInlineImageShadowNode.java │ │ │ │ ├── ReactTextShadowNode.java │ │ │ │ ├── ReactTextUpdate.java │ │ │ │ ├── ReactTextView.java │ │ │ │ ├── ReactTextViewManager.java │ │ │ │ ├── ReactVirtualTextShadowNode.java │ │ │ │ ├── ReactVirtualTextViewManager.java │ │ │ │ ├── ShadowStyleSpan.java │ │ │ │ ├── TextInlineImageSpan.java │ │ │ │ └── frescosupport │ │ │ │ │ ├── BUCK │ │ │ │ │ ├── FrescoBasedReactTextInlineImageShadowNode.java │ │ │ │ │ ├── FrescoBasedReactTextInlineImageSpan.java │ │ │ │ │ └── FrescoBasedReactTextInlineImageViewManager.java │ │ │ │ ├── textinput │ │ │ │ ├── BUCK │ │ │ │ ├── ContentSizeWatcher.java │ │ │ │ ├── ReactContentSizeChangedEvent.java │ │ │ │ ├── ReactEditText.java │ │ │ │ ├── ReactTextChangedEvent.java │ │ │ │ ├── ReactTextInputBlurEvent.java │ │ │ │ ├── ReactTextInputEndEditingEvent.java │ │ │ │ ├── ReactTextInputEvent.java │ │ │ │ ├── ReactTextInputFocusEvent.java │ │ │ │ ├── ReactTextInputManager.java │ │ │ │ ├── ReactTextInputSelectionEvent.java │ │ │ │ ├── ReactTextInputShadowNode.java │ │ │ │ ├── ReactTextInputSubmitEditingEvent.java │ │ │ │ ├── ScrollWatcher.java │ │ │ │ └── SelectionWatcher.java │ │ │ │ ├── toolbar │ │ │ │ ├── BUCK │ │ │ │ ├── DrawableWithIntrinsicSize.java │ │ │ │ ├── ReactToolbar.java │ │ │ │ ├── ReactToolbarManager.java │ │ │ │ └── events │ │ │ │ │ └── ToolbarClickEvent.java │ │ │ │ ├── view │ │ │ │ ├── BUCK │ │ │ │ ├── ColorUtil.java │ │ │ │ ├── MeasureUtil.java │ │ │ │ ├── ReactDrawableHelper.java │ │ │ │ ├── ReactViewBackgroundDrawable.java │ │ │ │ ├── ReactViewGroup.java │ │ │ │ └── ReactViewManager.java │ │ │ │ ├── viewpager │ │ │ │ ├── BUCK │ │ │ │ ├── PageScrollEvent.java │ │ │ │ ├── PageScrollStateChangedEvent.java │ │ │ │ ├── PageSelectedEvent.java │ │ │ │ ├── ReactViewPager.java │ │ │ │ └── ReactViewPagerManager.java │ │ │ │ └── webview │ │ │ │ ├── BUCK │ │ │ │ ├── ReactWebViewManager.java │ │ │ │ ├── WebViewConfig.java │ │ │ │ └── events │ │ │ │ ├── TopLoadingErrorEvent.java │ │ │ │ ├── TopLoadingFinishEvent.java │ │ │ │ ├── TopLoadingStartEvent.java │ │ │ │ └── TopMessageEvent.java │ │ │ ├── systrace │ │ │ ├── BUCK │ │ │ ├── Systrace.java │ │ │ ├── SystraceMessage.java │ │ │ └── TraceListener.java │ │ │ └── yoga │ │ │ ├── YogaAlign.java │ │ │ ├── YogaBaselineFunction.java │ │ │ ├── YogaConfig.java │ │ │ ├── YogaConstants.java │ │ │ ├── YogaDimension.java │ │ │ ├── YogaDirection.java │ │ │ ├── YogaDisplay.java │ │ │ ├── YogaEdge.java │ │ │ ├── YogaExperimentalFeature.java │ │ │ ├── YogaFlexDirection.java │ │ │ ├── YogaJustify.java │ │ │ ├── YogaLogLevel.java │ │ │ ├── YogaLogger.java │ │ │ ├── YogaMeasureFunction.java │ │ │ ├── YogaMeasureMode.java │ │ │ ├── YogaMeasureOutput.java │ │ │ ├── YogaNode.java │ │ │ ├── YogaNodeAPI.java │ │ │ ├── YogaOverflow.java │ │ │ ├── YogaPositionType.java │ │ │ ├── YogaPrintOptions.java │ │ │ ├── YogaUnit.java │ │ │ ├── YogaValue.java │ │ │ └── YogaWrap.java │ ├── jni │ │ ├── Application.mk │ │ ├── first-party │ │ │ ├── fb │ │ │ │ ├── Android.mk │ │ │ │ ├── BUCK │ │ │ │ ├── Doxyfile │ │ │ │ ├── assert.cpp │ │ │ │ ├── include │ │ │ │ │ ├── fb │ │ │ │ │ │ ├── ALog.h │ │ │ │ │ │ ├── Countable.h │ │ │ │ │ │ ├── Doxyfile │ │ │ │ │ │ ├── Environment.h │ │ │ │ │ │ ├── ProgramLocation.h │ │ │ │ │ │ ├── RefPtr.h │ │ │ │ │ │ ├── StaticInitialized.h │ │ │ │ │ │ ├── ThreadLocal.h │ │ │ │ │ │ ├── assert.h │ │ │ │ │ │ ├── fbjni.h │ │ │ │ │ │ ├── fbjni │ │ │ │ │ │ │ ├── Boxed.h │ │ │ │ │ │ │ ├── ByteBuffer.h │ │ │ │ │ │ │ ├── Common.h │ │ │ │ │ │ │ ├── Context.h │ │ │ │ │ │ │ ├── CoreClasses-inl.h │ │ │ │ │ │ │ ├── CoreClasses.h │ │ │ │ │ │ │ ├── Exceptions.h │ │ │ │ │ │ │ ├── File.h │ │ │ │ │ │ │ ├── Hybrid.h │ │ │ │ │ │ │ ├── Iterator-inl.h │ │ │ │ │ │ │ ├── Iterator.h │ │ │ │ │ │ │ ├── JThread.h │ │ │ │ │ │ │ ├── Meta-forward.h │ │ │ │ │ │ │ ├── Meta-inl.h │ │ │ │ │ │ │ ├── Meta.h │ │ │ │ │ │ │ ├── MetaConvert.h │ │ │ │ │ │ │ ├── NativeRunnable.h │ │ │ │ │ │ │ ├── ReferenceAllocators-inl.h │ │ │ │ │ │ │ ├── ReferenceAllocators.h │ │ │ │ │ │ │ ├── References-forward.h │ │ │ │ │ │ │ ├── References-inl.h │ │ │ │ │ │ │ ├── References.h │ │ │ │ │ │ │ ├── Registration-inl.h │ │ │ │ │ │ │ ├── Registration.h │ │ │ │ │ │ │ └── TypeTraits.h │ │ │ │ │ │ ├── log.h │ │ │ │ │ │ ├── lyra.h │ │ │ │ │ │ ├── noncopyable.h │ │ │ │ │ │ ├── nonmovable.h │ │ │ │ │ │ └── visibility.h │ │ │ │ │ └── jni │ │ │ │ │ │ ├── Countable.h │ │ │ │ │ │ ├── GlobalReference.h │ │ │ │ │ │ ├── LocalReference.h │ │ │ │ │ │ ├── LocalString.h │ │ │ │ │ │ ├── Registration.h │ │ │ │ │ │ ├── WeakReference.h │ │ │ │ │ │ └── jni_helpers.h │ │ │ │ ├── jni │ │ │ │ │ ├── ByteBuffer.cpp │ │ │ │ │ ├── Countable.cpp │ │ │ │ │ ├── Environment.cpp │ │ │ │ │ ├── Exceptions.cpp │ │ │ │ │ ├── Hybrid.cpp │ │ │ │ │ ├── LocalString.cpp │ │ │ │ │ ├── OnLoad.cpp │ │ │ │ │ ├── References.cpp │ │ │ │ │ ├── WeakReference.cpp │ │ │ │ │ ├── fbjni.cpp │ │ │ │ │ ├── java │ │ │ │ │ │ ├── CppException.java │ │ │ │ │ │ ├── CppSystemErrorException.java │ │ │ │ │ │ └── UnknownCppException.java │ │ │ │ │ └── jni_helpers.cpp │ │ │ │ ├── log.cpp │ │ │ │ ├── lyra │ │ │ │ │ └── lyra.cpp │ │ │ │ └── onload.cpp │ │ │ ├── fbgloginit │ │ │ │ ├── Android.mk │ │ │ │ ├── BUCK │ │ │ │ ├── fb │ │ │ │ │ └── glog_init.h │ │ │ │ └── glog_init.cpp │ │ │ ├── jni-hack │ │ │ │ ├── BUCK │ │ │ │ ├── README.md │ │ │ │ ├── jni.h │ │ │ │ └── real │ │ │ │ │ └── jni.h │ │ │ └── yogajni │ │ │ │ ├── Android.mk │ │ │ │ ├── BUCK │ │ │ │ └── jni │ │ │ │ └── YGJNI.cpp │ │ ├── prebuilt │ │ │ ├── BUCK │ │ │ └── lib │ │ │ │ └── DUMMY │ │ ├── react │ │ │ └── jni │ │ │ │ ├── Android.mk │ │ │ │ ├── BUCK │ │ │ │ └── Dummy.cpp │ │ ├── third-party │ │ │ ├── android-ndk │ │ │ │ └── BUCK │ │ │ ├── boost │ │ │ │ └── Android.mk │ │ │ ├── double-conversion │ │ │ │ └── Android.mk │ │ │ ├── folly │ │ │ │ └── Android.mk │ │ │ ├── glibc │ │ │ │ └── BUCK │ │ │ ├── glog │ │ │ │ ├── Android.mk │ │ │ │ └── config.h │ │ │ └── jsc │ │ │ │ └── Android.mk │ │ └── xreact │ │ │ ├── Android.mk │ │ │ ├── jni │ │ │ ├── Android.mk │ │ │ ├── BUCK │ │ │ ├── CatalystInstanceImpl.cpp │ │ │ ├── CatalystInstanceImpl.h │ │ │ ├── CxxModuleWrapper.cpp │ │ │ ├── CxxModuleWrapper.h │ │ │ ├── CxxModuleWrapperBase.h │ │ │ ├── CxxSharedModuleWrapper.h │ │ │ ├── JCallback.h │ │ │ ├── JExecutorToken.cpp │ │ │ ├── JExecutorToken.h │ │ │ ├── JInspector.cpp │ │ │ ├── JInspector.h │ │ │ ├── JMessageQueueThread.cpp │ │ │ ├── JMessageQueueThread.h │ │ │ ├── JNativeRunnable.h │ │ │ ├── JSCPerfLogging.cpp │ │ │ ├── JSCPerfLogging.h │ │ │ ├── JSLoader.cpp │ │ │ ├── JSLoader.h │ │ │ ├── JSLogging.cpp │ │ │ ├── JSLogging.h │ │ │ ├── JavaModuleWrapper.cpp │ │ │ ├── JavaModuleWrapper.h │ │ │ ├── JavaScriptExecutorHolder.h │ │ │ ├── JniJSModulesUnbundle.cpp │ │ │ ├── JniJSModulesUnbundle.h │ │ │ ├── JniWebWorkers.h │ │ │ ├── MethodInvoker.cpp │ │ │ ├── MethodInvoker.h │ │ │ ├── ModuleRegistryBuilder.cpp │ │ │ ├── ModuleRegistryBuilder.h │ │ │ ├── NativeArray.cpp │ │ │ ├── NativeArray.h │ │ │ ├── NativeCommon.cpp │ │ │ ├── NativeCommon.h │ │ │ ├── NativeMap.cpp │ │ │ ├── NativeMap.h │ │ │ ├── OnLoad.cpp │ │ │ ├── OnLoad.h │ │ │ ├── ProxyExecutor.cpp │ │ │ ├── ProxyExecutor.h │ │ │ ├── ReadableNativeArray.cpp │ │ │ ├── ReadableNativeArray.h │ │ │ ├── ReadableNativeMap.cpp │ │ │ ├── ReadableNativeMap.h │ │ │ ├── WebWorkers.h │ │ │ ├── WritableNativeArray.cpp │ │ │ ├── WritableNativeArray.h │ │ │ ├── WritableNativeMap.cpp │ │ │ └── WritableNativeMap.h │ │ │ └── perftests │ │ │ ├── BUCK │ │ │ └── OnLoad.cpp │ ├── libraries │ │ ├── fbcore │ │ │ └── src │ │ │ │ ├── main │ │ │ │ └── java │ │ │ │ │ └── com │ │ │ │ │ └── facebook │ │ │ │ │ └── common │ │ │ │ │ └── logging │ │ │ │ │ └── BUCK │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── facebook │ │ │ │ └── powermock │ │ │ │ └── BUCK │ │ ├── fresco │ │ │ └── fresco-react-native │ │ │ │ └── BUCK │ │ ├── soloader │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── facebook │ │ │ │ └── soloader │ │ │ │ └── BUCK │ │ └── textlayoutbuilder │ │ │ └── BUCK │ ├── res │ │ ├── BUCK │ │ ├── devsupport │ │ │ ├── anim │ │ │ │ ├── catalyst_push_up_in.xml │ │ │ │ └── catalyst_push_up_out.xml │ │ │ ├── layout │ │ │ │ ├── dev_loading_view.xml │ │ │ │ ├── fps_view.xml │ │ │ │ ├── redbox_item_frame.xml │ │ │ │ ├── redbox_item_title.xml │ │ │ │ └── redbox_view.xml │ │ │ ├── values │ │ │ │ ├── colors.xml │ │ │ │ ├── strings.xml │ │ │ │ └── styles.xml │ │ │ └── xml │ │ │ │ └── preferences.xml │ │ ├── shell │ │ │ └── values │ │ │ │ └── styles.xml │ │ └── views │ │ │ ├── modal │ │ │ ├── anim │ │ │ │ ├── fade_in.xml │ │ │ │ ├── fade_out.xml │ │ │ │ ├── slide_down.xml │ │ │ │ └── slide_up.xml │ │ │ └── values │ │ │ │ └── themes.xml │ │ │ └── uimanager │ │ │ └── values │ │ │ └── ids.xml │ └── third-party │ │ ├── android │ │ ├── support-annotations │ │ │ └── BUCK │ │ └── support │ │ │ ├── v4 │ │ │ └── BUCK │ │ │ └── v7 │ │ │ └── appcompat-orig │ │ │ ├── BUCK │ │ │ └── aar-unpacker.py │ │ └── java │ │ ├── asm │ │ └── BUCK │ │ ├── buck-android-support │ │ ├── BUCK │ │ └── buck-android-support.jar │ │ ├── fest │ │ └── BUCK │ │ ├── infer-annotations │ │ ├── BUCK │ │ └── infer-annotations-1.5.jar │ │ ├── javapoet │ │ └── BUCK │ │ ├── jsr-305 │ │ └── BUCK │ │ ├── jsr-330 │ │ └── BUCK │ │ ├── junit │ │ └── BUCK │ │ ├── mockito │ │ └── BUCK │ │ ├── okhttp │ │ └── BUCK │ │ ├── okio │ │ └── BUCK │ │ ├── robolectric3 │ │ └── robolectric │ │ │ └── BUCK │ │ ├── sqlite │ │ └── BUCK │ │ └── testing-support-lib │ │ └── BUCK │ └── test │ └── java │ ├── com │ └── facebook │ │ ├── common │ │ └── logging │ │ │ ├── BUCK │ │ │ └── FakeLoggingDelegate.java │ │ └── react │ │ ├── BUCK │ │ ├── CompositeReactPackageTest.java │ │ ├── RootViewTest.java │ │ ├── animated │ │ ├── BUCK │ │ ├── NativeAnimatedInterpolationTest.java │ │ └── NativeAnimatedNodeTraversalTest.java │ │ ├── bridge │ │ ├── BUCK │ │ ├── JavaOnlyArrayTest.java │ │ ├── JsonWriterTest.java │ │ ├── ModuleSpecTest.java │ │ └── ReactTestHelper.java │ │ ├── cxxbridge │ │ ├── BUCK │ │ ├── BaseJavaModuleTest.java │ │ └── FallbackJSBundleLoaderTest.java │ │ ├── devsupport │ │ ├── BUCK │ │ ├── JSDebuggerWebSocketClientTest.java │ │ └── MultipartStreamReaderTest.java │ │ ├── modules │ │ ├── BUCK │ │ ├── clipboard │ │ │ └── ClipboardModuleTest.java │ │ ├── dialog │ │ │ └── DialogModuleTest.java │ │ ├── network │ │ │ └── NetworkingModuleTest.java │ │ ├── share │ │ │ └── ShareModuleTest.java │ │ ├── storage │ │ │ └── AsyncStorageModuleTest.java │ │ └── timing │ │ │ └── TimingModuleTest.java │ │ ├── packagerconnection │ │ ├── BUCK │ │ └── JSPackagerClientTest.java │ │ ├── uimanager │ │ ├── BUCK │ │ ├── LayoutPropertyApplicatorTest.java │ │ ├── MatrixMathHelperTest.java │ │ ├── ReactPropAnnotationSetterSpecTest.java │ │ ├── ReactPropAnnotationSetterTest.java │ │ ├── ReactPropConstantsTest.java │ │ ├── ReactPropForShadowNodeSetterTest.java │ │ ├── ReactPropForShadowNodeSpecTest.java │ │ ├── SimpleViewPropertyTest.java │ │ ├── UIManagerModuleConstantsTest.java │ │ └── UIManagerModuleTest.java │ │ └── views │ │ ├── BUCK │ │ ├── image │ │ ├── ImageResizeModeTest.java │ │ └── ReactImagePropertyTest.java │ │ ├── slider │ │ └── ReactSliderPropertyTest.java │ │ ├── text │ │ └── ReactTextTest.java │ │ ├── textinput │ │ ├── ReactTextInputPropertyTest.java │ │ └── TextInputTest.java │ │ └── view │ │ └── ColorUtilTest.java │ └── org │ └── mockito │ └── configuration │ ├── BUCK │ └── MockitoConfiguration.java ├── ReactCommon ├── DEFS ├── cxxreact │ ├── Android.mk │ ├── BUCK │ ├── CxxModule.h │ ├── CxxNativeModule.cpp │ ├── CxxNativeModule.h │ ├── Executor.h │ ├── ExecutorToken.h │ ├── ExecutorTokenFactory.h │ ├── Instance.cpp │ ├── Instance.h │ ├── JSBigString.cpp │ ├── JSBigString.h │ ├── JSBundleType.cpp │ ├── JSBundleType.h │ ├── JSCExecutor.cpp │ ├── JSCExecutor.h │ ├── JSCLegacyProfiler.cpp │ ├── JSCLegacyProfiler.h │ ├── JSCLegacyTracing.cpp │ ├── JSCLegacyTracing.h │ ├── JSCMemory.cpp │ ├── JSCMemory.h │ ├── JSCNativeModules.cpp │ ├── JSCNativeModules.h │ ├── JSCPerfStats.cpp │ ├── JSCPerfStats.h │ ├── JSCSamplingProfiler.cpp │ ├── JSCSamplingProfiler.h │ ├── JSCTracing.cpp │ ├── JSCTracing.h │ ├── JSCUtils.cpp │ ├── JSCUtils.h │ ├── JSCWebWorker.cpp │ ├── JSCWebWorker.h │ ├── JSIndexedRAMBundle.cpp │ ├── JSIndexedRAMBundle.h │ ├── JSModulesUnbundle.h │ ├── JsArgumentHelpers-inl.h │ ├── JsArgumentHelpers.h │ ├── MessageQueueThread.h │ ├── MethodCall.cpp │ ├── MethodCall.h │ ├── ModuleRegistry.cpp │ ├── ModuleRegistry.h │ ├── NativeModule.h │ ├── NativeToJsBridge.cpp │ ├── NativeToJsBridge.h │ ├── Platform.cpp │ ├── Platform.h │ ├── RecoverableError.h │ ├── SampleCxxModule.cpp │ ├── SampleCxxModule.h │ ├── SharedProxyCxxModule.h │ ├── SystraceSection.h │ ├── oss-compat-util.h │ └── tests │ │ ├── BUCK │ │ ├── RecoverableErrorTest.cpp │ │ ├── jsarg_helpers.cpp │ │ ├── jsbigstring.cpp │ │ ├── jscexecutor.cpp │ │ ├── jsclogging.cpp │ │ ├── methodcall.cpp │ │ └── value.cpp ├── jschelpers │ ├── Android.mk │ ├── BUCK │ ├── JSCHelpers.cpp │ ├── JSCHelpers.h │ ├── JSCWrapper.cpp │ ├── JSCWrapper.h │ ├── JavaScriptCore.h │ ├── Unicode.cpp │ ├── Unicode.h │ ├── Value.cpp │ ├── Value.h │ ├── noncopyable.h │ └── systemJSCWrapper.cpp ├── microprofiler │ ├── BUCK │ ├── MicroProfiler.cpp │ └── MicroProfiler.h └── yoga │ ├── Android.mk │ ├── BUCK │ ├── Yoga.podspec │ └── yoga │ ├── YGEnums.c │ ├── YGEnums.h │ ├── YGMacros.h │ ├── YGNodeList.c │ ├── YGNodeList.h │ ├── Yoga.c │ └── Yoga.h ├── Releases.md ├── Windows ├── babel-preset ├── README.md ├── configs │ ├── hmr.js │ ├── internal.js │ └── main.js ├── index.js ├── lib │ └── resolvePlugins.js ├── package.json ├── plugins.js └── transforms │ └── transform-symbol-member.js ├── blog ├── 2016-03-24-introducing-hot-reloading.md ├── 2016-07-06-toward-better-documentation.md ├── 2016-08-12-react-native-meetup-san-francisco.md ├── 2016-08-19-right-to-left-support-for-react-native-apps.md ├── 2016-09-08-exponent-talks-unraveling-navigation.md ├── 2016-10-25-0.36-headless-js-the-keyboard-api-and-more.md ├── 2016-11-08-introducing-button-yarn-and-a-public-roadmap.md ├── 2016-12-05-easier-upgrades.md ├── 2017-01-07-monthly-release-cadence.md ├── 2017-02-14-using-native-driver-for-animated.md ├── 2017-03-13-better-list-views.md ├── 2017-03-13-idx-the-existential-function.md ├── 2017-03-13-introducing-create-react-native-app.md └── img │ ├── animated-diagram.png │ ├── button-android-ios.png │ ├── git-upgrade-conflict.png │ ├── git-upgrade-output.png │ ├── hmr-architecture.png │ ├── hmr-diamond.png │ ├── hmr-log.png │ ├── hmr-proxy.png │ ├── hmr-step.png │ ├── rnmsf-august-2016-airbnb.jpg │ ├── rnmsf-august-2016-docs.jpg │ ├── rnmsf-august-2016-hero.jpg │ ├── rnmsf-august-2016-netflix.jpg │ ├── rtl-ama-android-hebrew.png │ ├── rtl-ama-ios-arabic.png │ ├── rtl-demo-forcertl.png │ ├── rtl-demo-icon-ltr.png │ ├── rtl-demo-icon-rtl.png │ ├── rtl-demo-listitem-ltr.png │ ├── rtl-demo-listitem-rtl.png │ ├── rtl-demo-swipe-ltr.png │ ├── rtl-demo-swipe-rtl.png │ ├── rtl-rn-core-updates.png │ └── yarn-rncli.png ├── bots ├── IssueCommands.txt ├── NewIssueGreeting.md ├── QuestionGreeting.md ├── README.md ├── code-analysis-bot.js ├── pr-inactivity-bookmarklet.js └── question-bookmarklet.js ├── breaking-changes.md ├── build.gradle ├── circle.yml ├── cli.js ├── docs ├── Accessibility.md ├── AndroidBuildingFromSource.md ├── AndroidUIPerformance.md ├── Animations.md ├── BuildingForAppleTV.md ├── Colors.md ├── CommunicationIOS.md ├── Debugging.md ├── DirectManipulation.md ├── GestureResponderSystem.md ├── GettingStarted.md ├── HandlingTextInput.md ├── HandlingTouches.md ├── HeadlessJSAndroid.md ├── HeightAndWidth.md ├── Images.md ├── IntegrationWithExistingApps.md ├── IssueGuidelines.md ├── JavaScriptEnvironment.md ├── LayoutWithFlexbox.md ├── LinkingLibraries.md ├── MoreResources.md ├── MoviesExample.json ├── NativeComponentsAndroid.md ├── NativeComponentsIOS.md ├── NativeModulesAndroid.md ├── NativeModulesIOS.md ├── Navigation.md ├── Networking.md ├── Performance.md ├── PixelRatio.md ├── PlatformSpecificInformation.md ├── Props.md ├── PullRequestGuidelines.md ├── RunningOnDevice.md ├── RunningOnDeviceAndroid.md ├── RunningOnDeviceIOS.md ├── RunningOnSimulatorIOS.md ├── SignedAPKAndroid.md ├── State.md ├── Style.md ├── Testing.md ├── Text.md ├── Timers.md ├── Troubleshooting.md ├── Tutorial.md ├── UnderstandingCLI.md ├── Upgrading.md ├── UsingAListView.md └── UsingAScrollView.md ├── flow ├── Map.js ├── Position.js ├── Promise.js ├── Set.js ├── babel.js.flow ├── console.js ├── fbjs.js └── react.js ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── ios-cc.sh ├── ios-install-third-party.sh ├── jest-preset.json ├── jest ├── mockComponent.js ├── preprocessor.js └── setup.js ├── keystores ├── BUCK ├── debug.keystore └── debug.keystore.properties ├── lib ├── InitializeJavaScriptAppEngine.js ├── RCTEventEmitter.js ├── README ├── TextInputState.js ├── UIManager.js ├── UIManagerStatTracker.js ├── View.js ├── deepDiffer.js ├── deepFreezeAndThrowOnMutationInDev.js └── flattenStyle.js ├── local-cli ├── .eslintrc ├── __mocks__ │ └── beeper.js ├── bundle │ ├── __mocks__ │ │ └── sign.js │ ├── __tests__ │ │ ├── filterPlatformAssetScales-test.js │ │ ├── getAssetDestPathAndroid-test.js │ │ └── getAssetDestPathIOS-test.js │ ├── assetPathUtils.js │ ├── buildBundle.js │ ├── bundle.js │ ├── bundleCommandLineArgs.js │ ├── filterPlatformAssetScales.js │ ├── getAssetDestPathAndroid.js │ ├── getAssetDestPathIOS.js │ ├── output │ │ ├── bundle.js │ │ ├── meta.js │ │ ├── unbundle │ │ │ ├── as-assets.js │ │ │ ├── as-indexed-file.js │ │ │ ├── build-unbundle-sourcemap-with-metadata.js │ │ │ ├── index.js │ │ │ ├── magic-number.js │ │ │ ├── util.js │ │ │ └── write-sourcemap.js │ │ └── writeFile.js │ ├── saveAssets.js │ ├── types.flow.js │ └── unbundle.js ├── cli.js ├── cliEntry.js ├── commands.js ├── core │ ├── __fixtures__ │ │ ├── android.js │ │ ├── commands.js │ │ ├── dependencies.js │ │ ├── files │ │ │ ├── AndroidManifest.xml │ │ │ ├── Main.java │ │ │ ├── ReactPackage.java │ │ │ ├── package.json │ │ │ └── project.pbxproj │ │ ├── ios.js │ │ └── projects.js │ ├── __tests__ │ │ ├── android │ │ │ ├── findAndroidAppFolder.spec.js │ │ │ ├── findManifest.spec.js │ │ │ ├── findPackageClassName.spec.js │ │ │ ├── getDependencyConfig.spec.js │ │ │ ├── getProjectConfig.spec.js │ │ │ └── readManifest.spec.js │ │ ├── findAssets.spec.js │ │ ├── findPlugins.spec.js │ │ ├── ios │ │ │ ├── findProject.spec.js │ │ │ └── getProjectConfig.spec.js │ │ └── makeCommand.spec.js │ ├── android │ │ ├── findAndroidAppFolder.js │ │ ├── findManifest.js │ │ ├── findPackageClassName.js │ │ ├── index.js │ │ └── readManifest.js │ ├── default.config.js │ ├── findAssets.js │ ├── findPlugins.js │ ├── index.js │ ├── ios │ │ ├── findProject.js │ │ └── index.js │ ├── makeCommand.js │ ├── windows │ │ ├── findNamespace.js │ │ ├── findPackageClassName.js │ │ ├── findProject.js │ │ ├── findWindowsSolution.js │ │ ├── generateGUID.js │ │ └── index.js │ └── wrapCommands.js ├── dependencies │ └── dependencies.js ├── eject │ └── eject.js ├── generator │ ├── copyProjectTemplateAndReplace.js │ ├── printRunInstructions.js │ ├── promptSync.js │ └── templates.js ├── init │ └── init.js ├── install │ ├── install.js │ └── uninstall.js ├── library │ └── library.js ├── link │ ├── __fixtures__ │ │ ├── Info.plist │ │ ├── android │ │ │ ├── 0.17 │ │ │ │ ├── MainActivity.java │ │ │ │ └── patchedMainActivity.java │ │ │ ├── 0.18 │ │ │ │ ├── MainActivity.java │ │ │ │ └── patchedMainActivity.java │ │ │ ├── 0.20 │ │ │ │ └── MainActivity.java │ │ │ ├── build.gradle │ │ │ ├── patchedBuild.gradle │ │ │ ├── patchedSettings.gradle │ │ │ └── settings.gradle │ │ ├── linearGradient.pbxproj │ │ └── project.pbxproj │ ├── __tests__ │ │ ├── android │ │ │ ├── applyPatch.spec.js │ │ │ ├── isInstalled.spec.js │ │ │ ├── makeBuildPatch.spec.js │ │ │ ├── makeImportPatch.spec.js │ │ │ ├── makePackagePatch.spec.js │ │ │ ├── makeSettingsPatch.spec.js │ │ │ └── makeStringsPatch.spec.js │ │ ├── getDependencyConfig.spec.js │ │ ├── getProjectDependencies.spec.js │ │ ├── groupFilesByType.spec.js │ │ ├── ios │ │ │ ├── addFileToProject.spec.js │ │ │ ├── addProjectToLibraries.spec.js │ │ │ ├── addSharedLibraries.spec.js │ │ │ ├── createGroup.spec.js │ │ │ ├── getBuildProperty.spec.js │ │ │ ├── getGroup.spec.js │ │ │ ├── getHeaderSearchPath.spec.js │ │ │ ├── getHeadersInFolder.spec.js │ │ │ ├── getPlist.spec.js │ │ │ ├── getPlistPath.spec.js │ │ │ ├── getProducts.spec.js │ │ │ ├── hasLibraryImported.spec.js │ │ │ ├── isInstalled.spec.js │ │ │ ├── mapHeaderSearchPaths.spec.js │ │ │ ├── removeProjectFromLibraries.js │ │ │ ├── removeProjectFromProject.spec.js │ │ │ ├── removeSharedLibrary.spec.js │ │ │ └── writePlist.spec.js │ │ ├── link.spec.js │ │ └── promiseWaterfall.spec.js │ ├── android │ │ ├── copyAssets.js │ │ ├── fs.js │ │ ├── isInstalled.js │ │ ├── patches │ │ │ ├── applyParams.js │ │ │ ├── applyPatch.js │ │ │ ├── makeBuildPatch.js │ │ │ ├── makeImportPatch.js │ │ │ ├── makePackagePatch.js │ │ │ ├── makeSettingsPatch.js │ │ │ ├── makeStringsPatch.js │ │ │ └── revokePatch.js │ │ ├── registerNativeModule.js │ │ ├── unlinkAssets.js │ │ └── unregisterNativeModule.js │ ├── commandStub.js │ ├── getDependencyConfig.js │ ├── getProjectDependencies.js │ ├── groupFilesByType.js │ ├── ios │ │ ├── addFileToProject.js │ │ ├── addProjectToLibraries.js │ │ ├── addSharedLibraries.js │ │ ├── addToHeaderSearchPaths.js │ │ ├── copyAssets.js │ │ ├── createGroup.js │ │ ├── createGroupWithMessage.js │ │ ├── getBuildProperty.js │ │ ├── getGroup.js │ │ ├── getHeaderSearchPath.js │ │ ├── getHeadersInFolder.js │ │ ├── getPlist.js │ │ ├── getPlistPath.js │ │ ├── getProducts.js │ │ ├── hasLibraryImported.js │ │ ├── isInstalled.js │ │ ├── mapHeaderSearchPaths.js │ │ ├── registerNativeModule.js │ │ ├── removeFromHeaderSearchPaths.js │ │ ├── removeFromPbxItemContainerProxySection.js │ │ ├── removeFromPbxReferenceProxySection.js │ │ ├── removeFromProjectReferences.js │ │ ├── removeFromStaticLibraries.js │ │ ├── removeProductGroup.js │ │ ├── removeProjectFromLibraries.js │ │ ├── removeProjectFromProject.js │ │ ├── removeSharedLibraries.js │ │ ├── unlinkAssets.js │ │ ├── unregisterNativeModule.js │ │ └── writePlist.js │ ├── link.js │ ├── pollParams.js │ ├── promiseWaterfall.js │ ├── promisify.js │ ├── unlink.js │ └── windows │ │ ├── isInstalled.js │ │ ├── patches │ │ ├── applyParams.js │ │ ├── applyPatch.js │ │ ├── makePackagePatch.js │ │ ├── makeProjectPatch.js │ │ ├── makeSolutionPatch.js │ │ ├── makeUsingPatch.js │ │ └── revokePatch.js │ │ ├── registerNativeModule.js │ │ └── unregisterNativeModule.js ├── logAndroid │ └── logAndroid.js ├── logIOS │ └── logIOS.js ├── runAndroid │ ├── adb.js │ └── runAndroid.js ├── runIOS │ ├── __tests__ │ │ ├── findMatchingSimulator-test.js │ │ ├── findXcodeProject-test.js │ │ └── parseIOSDevicesList-test.js │ ├── findMatchingSimulator.js │ ├── findXcodeProject.js │ ├── parseIOSDevicesList.js │ └── runIOS.js ├── server │ ├── checkNodeVersion.js │ ├── formatBanner.js │ ├── middleware │ │ ├── copyToClipBoardMiddleware.js │ │ ├── cpuProfilerMiddleware.js │ │ ├── getDevToolsMiddleware.js │ │ ├── index.html │ │ ├── indexPage.js │ │ ├── loadRawBodyMiddleware.js │ │ ├── openStackFrameInEditorMiddleware.js │ │ ├── statusPageMiddleware.js │ │ ├── systraceProfileMiddleware.js │ │ └── unless.js │ ├── runServer.js │ ├── server.js │ └── util │ │ ├── attachHMRServer.js │ │ ├── copyToClipBoard.js │ │ ├── debugger.html │ │ ├── debuggerWorker.js │ │ ├── external │ │ └── xsel │ │ ├── inspectorProxy.js │ │ ├── jsPackagerClient.js │ │ ├── launchChrome.js │ │ ├── launchEditor.js │ │ ├── messageSocket.js │ │ └── webSocketProxy.js ├── setup_env.bat ├── setup_env.sh ├── templates │ ├── HelloNavigation │ │ ├── README.md │ │ ├── components │ │ │ ├── KeyboardSpacer.js │ │ │ └── ListItem.js │ │ ├── dependencies.json │ │ ├── index.android.js │ │ ├── index.ios.js │ │ ├── lib │ │ │ └── Backend.js │ │ └── views │ │ │ ├── HomeScreenTabNavigator.js │ │ │ ├── MainNavigator.js │ │ │ ├── chat │ │ │ ├── ChatListScreen.js │ │ │ ├── ChatScreen.js │ │ │ └── chat-icon.png │ │ │ └── welcome │ │ │ ├── WelcomeScreen.js │ │ │ ├── WelcomeText.android.js │ │ │ ├── WelcomeText.ios.js │ │ │ └── welcome-icon.png │ ├── HelloWorld │ │ ├── __tests__ │ │ │ ├── index.android.js │ │ │ └── index.ios.js │ │ ├── _babelrc │ │ ├── _buckconfig │ │ ├── _flowconfig │ │ ├── _gitattributes │ │ ├── _gitignore │ │ ├── _watchmanconfig │ │ ├── android │ │ │ ├── app │ │ │ │ ├── BUCK │ │ │ │ ├── build.gradle │ │ │ │ ├── proguard-rules.pro │ │ │ │ └── src │ │ │ │ │ └── main │ │ │ │ │ ├── AndroidManifest.xml │ │ │ │ │ ├── java │ │ │ │ │ └── com │ │ │ │ │ │ └── helloworld │ │ │ │ │ │ ├── MainActivity.java │ │ │ │ │ │ └── MainApplication.java │ │ │ │ │ └── res │ │ │ │ │ ├── mipmap-hdpi │ │ │ │ │ └── ic_launcher.png │ │ │ │ │ ├── mipmap-mdpi │ │ │ │ │ └── ic_launcher.png │ │ │ │ │ ├── mipmap-xhdpi │ │ │ │ │ └── ic_launcher.png │ │ │ │ │ ├── mipmap-xxhdpi │ │ │ │ │ └── ic_launcher.png │ │ │ │ │ └── values │ │ │ │ │ ├── strings.xml │ │ │ │ │ └── styles.xml │ │ │ ├── build.gradle │ │ │ ├── gradle.properties │ │ │ ├── gradle │ │ │ │ └── wrapper │ │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ │ └── gradle-wrapper.properties │ │ │ ├── gradlew │ │ │ ├── gradlew.bat │ │ │ ├── keystores │ │ │ │ ├── BUCK │ │ │ │ └── debug.keystore.properties │ │ │ └── settings.gradle │ │ ├── app.json │ │ ├── index.android.js │ │ ├── index.ios.js │ │ └── ios │ │ │ ├── HelloWorld-tvOS │ │ │ └── Info.plist │ │ │ ├── HelloWorld-tvOSTests │ │ │ └── Info.plist │ │ │ ├── HelloWorld.xcodeproj │ │ │ ├── project.pbxproj │ │ │ └── xcshareddata │ │ │ │ └── xcschemes │ │ │ │ ├── HelloWorld-tvOS.xcscheme │ │ │ │ └── HelloWorld.xcscheme │ │ │ ├── HelloWorld │ │ │ ├── AppDelegate.h │ │ │ ├── AppDelegate.m │ │ │ ├── Base.lproj │ │ │ │ └── LaunchScreen.xib │ │ │ ├── Images.xcassets │ │ │ │ └── AppIcon.appiconset │ │ │ │ │ └── Contents.json │ │ │ ├── Info.plist │ │ │ └── main.m │ │ │ └── HelloWorldTests │ │ │ ├── HelloWorldTests.m │ │ │ └── Info.plist │ └── README.md ├── upgrade │ └── upgrade.js ├── util │ ├── Config.js │ ├── PackageManager.js │ ├── __mocks__ │ │ └── log.js │ ├── assertRequiredOptions.js │ ├── copyAndReplace.js │ ├── findSymlinksPaths.js │ ├── isPackagerRunning.js │ ├── isValidPackageName.js │ ├── log.js │ ├── parseCommandLine.js │ ├── walk.js │ └── yarn.js └── wrong-react-native.js ├── package.json ├── packager ├── .eslintrc ├── README.md ├── babelRegisterOnly.js ├── blacklist.js ├── defaults.js ├── index.js ├── launchPackager.bat ├── launchPackager.command ├── package.json ├── packager.sh ├── react-native-xcode.sh ├── react-packager.js ├── rn-babelrc.json ├── rn-cli.config.js ├── src │ ├── AssetServer │ │ ├── __tests__ │ │ │ └── AssetServer-test.js │ │ └── index.js │ ├── Bundler │ │ ├── Bundle.js │ │ ├── BundleBase.js │ │ ├── HMRBundle.js │ │ ├── __tests__ │ │ │ ├── Bundle-test.js │ │ │ └── Bundler-test.js │ │ ├── index.js │ │ └── source-map │ │ │ ├── B64Builder.js │ │ │ ├── Generator.js │ │ │ ├── __tests__ │ │ │ ├── B64Builder-test.js │ │ │ ├── Generator-test.js │ │ │ └── source-map-test.js │ │ │ ├── encode.js │ │ │ ├── package.json │ │ │ └── source-map.js │ ├── JSTransformer │ │ ├── README.md │ │ ├── __mocks__ │ │ │ ├── lodash.js │ │ │ └── worker.js │ │ ├── __tests__ │ │ │ └── Transformer-test.js │ │ ├── index.js │ │ └── worker │ │ │ ├── __tests__ │ │ │ ├── constant-folding-test.js │ │ │ ├── extract-dependencies-test.js │ │ │ ├── inline-test.js │ │ │ ├── minify-test.js │ │ │ └── worker-test.js │ │ │ ├── constant-folding.js │ │ │ ├── extract-dependencies.js │ │ │ ├── index.js │ │ │ ├── inline.js │ │ │ ├── minify.js │ │ │ └── worker.js │ ├── Logger │ │ ├── Types.js │ │ ├── __mocks__ │ │ │ └── chalk.js │ │ ├── __tests__ │ │ │ └── Logger-test.js │ │ └── index.js │ ├── ModuleGraph │ │ ├── Graph.js │ │ ├── ModuleGraph.js │ │ ├── __tests__ │ │ │ ├── Graph-test.js │ │ │ └── ModuleGraph-test.js │ │ ├── node-haste │ │ │ ├── HasteFS.js │ │ │ ├── Module.js │ │ │ ├── ModuleCache.js │ │ │ ├── Package.js │ │ │ ├── node-haste.flow.js │ │ │ ├── node-haste.js │ │ │ └── package.json │ │ ├── output │ │ │ ├── __tests__ │ │ │ │ └── util-test.js │ │ │ ├── as-plain-bundle.js │ │ │ ├── source-map.js │ │ │ └── util.js │ │ ├── package.json │ │ ├── silent-console.js │ │ ├── test-helpers.js │ │ ├── types.flow.js │ │ ├── worker.js │ │ └── worker │ │ │ ├── __tests__ │ │ │ ├── collect-dependencies-test.js │ │ │ ├── optimize-module-test.js │ │ │ ├── transform-module-test.js │ │ │ └── wrap-worker-fn-test.js │ │ │ ├── collect-dependencies.js │ │ │ ├── generate.js │ │ │ ├── optimize-module.js │ │ │ ├── transform-module.js │ │ │ └── wrap-worker-fn.js │ ├── Resolver │ │ ├── __tests__ │ │ │ └── Resolver-test.js │ │ ├── index.js │ │ └── polyfills │ │ │ ├── Array.es6.js │ │ │ ├── Array.prototype.es6.js │ │ │ ├── Number.es6.js │ │ │ ├── Object.es6.js │ │ │ ├── Object.es7.js │ │ │ ├── String.prototype.es6.js │ │ │ ├── __tests__ │ │ │ └── Object.es7-test.js │ │ │ ├── babelHelpers.js │ │ │ ├── console.js │ │ │ ├── error-guard.js │ │ │ ├── prelude.js │ │ │ ├── prelude_dev.js │ │ │ └── require.js │ ├── Server │ │ ├── MultipartResponse.js │ │ ├── __tests__ │ │ │ ├── MultipartResponse-test.js │ │ │ └── Server-test.js │ │ ├── index.js │ │ └── symbolicate │ │ │ ├── __tests__ │ │ │ ├── symbolicate-test.js │ │ │ ├── util-test.js │ │ │ └── worker-test.js │ │ │ ├── package.json │ │ │ ├── symbolicate.js │ │ │ ├── util.js │ │ │ └── worker.js │ ├── __mocks__ │ │ └── debug.js │ ├── lib │ │ ├── BatchProcessor.js │ │ ├── GlobalTransformCache.js │ │ ├── JsonReporter.js │ │ ├── ModuleTransport.js │ │ ├── SourceMap.js │ │ ├── TerminalReporter.js │ │ ├── TransformCache.js │ │ ├── __mocks__ │ │ │ ├── GlobalTransformCache.js │ │ │ ├── TransformCache.js │ │ │ └── declareOpts.js │ │ ├── __tests__ │ │ │ ├── BatchProcessor-test.js │ │ │ ├── GlobalTransformCache-test.js │ │ │ ├── TransformCache-test.js │ │ │ ├── __snapshots__ │ │ │ │ └── GlobalTransformCache-test.js.snap │ │ │ ├── declareOpts-test.js │ │ │ └── terminal-test.js │ │ ├── declareOpts.js │ │ ├── relativizeSourceMap.js │ │ ├── reporting.js │ │ └── terminal.js │ └── node-haste │ │ ├── AssetModule.js │ │ ├── Cache │ │ ├── __mocks__ │ │ │ └── index.js │ │ ├── __tests__ │ │ │ └── Cache-test.js │ │ └── index.js │ │ ├── DependencyGraph │ │ ├── DependencyGraphHelpers.js │ │ ├── HasteMap.js │ │ ├── ResolutionRequest.js │ │ ├── ResolutionResponse.js │ │ ├── assets │ │ │ └── empty-module.js │ │ └── docblock.js │ │ ├── FilesByDirNameIndex.js │ │ ├── Module.js │ │ ├── ModuleCache.js │ │ ├── Package.js │ │ ├── Polyfill.js │ │ ├── __mocks__ │ │ ├── fs.js │ │ └── graceful-fs.js │ │ ├── __tests__ │ │ ├── AssetModule-test.js │ │ ├── DependencyGraph-test.js │ │ └── Module-test.js │ │ ├── index.js │ │ ├── lib │ │ ├── AsyncTaskGroup.js │ │ ├── MapWithDefaults.js │ │ ├── __tests__ │ │ │ ├── getAssetDataFromName-test.js │ │ │ ├── getInverseDependencies-test.js │ │ │ └── getPlatformExtension-test.js │ │ ├── getAssetDataFromName.js │ │ ├── getInverseDependencies.js │ │ ├── getPlatformExtension.js │ │ └── replacePatterns.js │ │ └── types.js └── transformer.js ├── react-native-cli ├── README.md ├── index.js └── package.json ├── react-native-git-upgrade ├── README.md ├── checks.js ├── cli.js ├── cliEntry.js ├── index.js ├── package.json └── yarn.js ├── react.gradle ├── rn-cli.config.js ├── runXcodeTests.sh ├── scripts ├── android-e2e-test.js ├── bump-oss-version.js ├── circle-ci-android-setup.sh ├── objc-test-ios.sh ├── objc-test-tvos.sh ├── objc-test.sh ├── process-podspecs.sh ├── publish-npm.js ├── run-android-ci-instrumentation-tests.js ├── run-android-emulator.sh ├── run-android-local-integration-tests.sh ├── run-android-local-unit-tests.sh ├── run-ci-e2e-tests.js ├── run-instrumentation-tests-via-adb-shell.sh ├── sync-css-layout.sh ├── test-manual-e2e.sh ├── try-n-times.js ├── validate-android-device-env.sh ├── validate-android-sdk.sh └── validate-android-test-env.sh ├── settings.gradle ├── setupBabel.js └── website ├── .gitignore ├── README.md ├── core ├── AlgoliaDocSearch.js ├── BlogPost.js ├── BlogPostDate.js ├── BlogPostExcerpt.js ├── BlogPostFooter.js ├── BlogPostHeader.js ├── DocsSidebar.js ├── ExcerptLink.js ├── Footer.js ├── H2.js ├── Header.js ├── HeaderLinks.js ├── HeaderWithGithub.js ├── Hero.js ├── Marked.js ├── Prism.js ├── ShowcaseAppIcon.js ├── Site.js ├── SnackPlayer.js ├── WebPlayer.js ├── center.js ├── slugify.js └── unindent.js ├── jsdocs ├── TypeExpressionParser.js ├── __tests__ │ └── jsdocs-test.js ├── findExportDefinition.js ├── generic-function-visitor.js ├── jsdoc-conf.json ├── jsdoc-plugin-values.js ├── jsdocs.js ├── meta.js ├── syntax.js ├── traverseFlat.js └── type.js ├── layout ├── AutodocsLayout.js ├── BlogPageLayout.js ├── BlogPostLayout.js ├── DocsLayout.js ├── PageLayout.js └── RedirectLayout.js ├── package.json ├── publish-gh-pages.js ├── server ├── convert.js ├── docgenHelpers.js ├── docsList.js ├── extractDocs.js ├── generate.js └── server.js ├── setup.sh ├── showcase.json └── src └── react-native ├── 404.js ├── circle.yml ├── css └── react-native.css ├── img ├── AddToBuildPhases.png ├── AddToLibraries.png ├── AddToSearchPaths.png ├── AndroidAVDConfiguration.png ├── AndroidDevServerDialog.png ├── AndroidDevSettings.png ├── AndroidDeveloperMenu.png ├── AndroidSDK1.png ├── AndroidSDK2.png ├── AndroidSDKManager.png ├── AndroidSuccess.png ├── AnimatedFadeInView.gif ├── AnimationExperimentalOpacity.gif ├── AnimationExperimentalScaleXY.gif ├── CreateAVD.png ├── DeveloperMenu.png ├── EmbeddedAppAndroid.png ├── EmbeddedAppContainerViewExample.png ├── EmbeddedAppExample.png ├── LayoutAnimationExample.gif ├── NavigationStack-Navigator.gif ├── NavigationStack-NavigatorIOS.gif ├── ObjectObserveError.png ├── Rebound.gif ├── ReboundExample.png ├── ReboundImage.gif ├── StaticImageAssets.png ├── SystraceBadCreateUI.png ├── SystraceBadJS.png ├── SystraceBadJS2.png ├── SystraceBadUI.png ├── SystraceExample.png ├── SystraceHighlightVSync.png ├── SystraceJSThreadExample.png ├── SystraceNativeModulesThreadExample.png ├── SystraceRenderThreadExample.png ├── SystraceUIThreadExample.png ├── SystraceWellBehaved.png ├── TutorialFinal.png ├── TutorialFinal2.png ├── TutorialMock.png ├── TutorialMock2.png ├── TutorialSingleFetched.png ├── TutorialSingleFetched2.png ├── TutorialStyledMock.png ├── TutorialStyledMock2.png ├── TweenState.gif ├── Warning.png ├── XcodeCommandLineTools.png ├── alertIOS.png ├── author.png ├── buttonExample.png ├── chrome_breakpoint.png ├── favicon.png ├── header_logo.png ├── iOSSuccess.png ├── opengraph.png ├── oss_logo.png ├── react-native-add-react-native-integration-example-high-scores.png ├── react-native-add-react-native-integration-example-home-screen.png ├── react-native-add-react-native-integration-link.png ├── react-native-add-react-native-integration-wire-up.png ├── react-native-android-sdk-environment-variable-windows.png ├── react-native-android-studio-additional-installs-linux.png ├── react-native-android-studio-additional-installs.png ├── react-native-android-studio-android-sdk-build-tools-linux.png ├── react-native-android-studio-android-sdk-build-tools-windows.png ├── react-native-android-studio-android-sdk-build-tools.png ├── react-native-android-studio-android-sdk-platforms-linux.png ├── react-native-android-studio-android-sdk-platforms-windows.png ├── react-native-android-studio-android-sdk-platforms.png ├── react-native-android-studio-avd-linux.png ├── react-native-android-studio-avd-windows.png ├── react-native-android-studio-avd.png ├── react-native-android-studio-configure-sdk-linux.png ├── react-native-android-studio-configure-sdk-windows.png ├── react-native-android-studio-configure-sdk.png ├── react-native-android-studio-custom-install-linux.png ├── react-native-android-studio-custom-install-windows.png ├── react-native-android-studio-custom-install.png ├── react-native-android-studio-kvm-linux.png ├── react-native-android-studio-no-virtual-device-windows.png ├── react-native-android-studio-verify-installs-windows.png ├── react-native-android-tools-environment-variable-windows.png ├── react-native-congratulations.png ├── react-native-existing-app-integration-ios-before.png ├── react-native-sdk-platforms.png ├── react-native-sorry-not-supported.png ├── react-native-tools-avd.png ├── search.png ├── showcase │ └── wmt_spark.png ├── survey.png ├── uiexplorer_main_android.png └── uiexplorer_main_ios.png ├── index.js ├── js └── scripts.js ├── movies.json ├── showcase.js ├── support.js └── versions.js /.buckconfig: -------------------------------------------------------------------------------- 1 | 2 | [android] 3 | target = Google Inc.:Google APIs:23 4 | 5 | [maven_repositories] 6 | central = https://repo1.maven.org/maven2 7 | 8 | [alias] 9 | movies = //Examples/Movies/android/app:app 10 | uiexplorer = //Examples/UIExplorer/android/app:app 11 | -------------------------------------------------------------------------------- /.buckjavaargs: -------------------------------------------------------------------------------- 1 | -Xmx512m -XX:+HeapDumpOnOutOfMemoryError 2 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | # EditorConfig is awesome: http://EditorConfig.org 2 | 3 | # top-most EditorConfig file 4 | root = true 5 | 6 | # Unix-style newlines with a newline ending every file 7 | [*] 8 | end_of_line = lf 9 | insert_final_newline = true 10 | indent_style = space 11 | indent_size = 2 12 | 13 | [*.gradle] 14 | indent_size = 4 15 | -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- 1 | # node_modules ignored by default 2 | 3 | **/staticBundle.js 4 | **/main.js 5 | Libraries/vendor/**/* 6 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | # Force LF line endings for Bash scripts. On Windows the rest of the source 2 | # files will typically have CR+LF endings (Git default on Windows), but Bash 3 | # scripts need to have LF endings to work (under Cygwin), thus override to force 4 | # that. 5 | gradlew text eol=lf 6 | *.sh text eol=lf 7 | -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | # rnpm 2 | /local-cli/rnpm 3 | /local-cli/server/middleware/heapCapture/bundle.js 4 | -------------------------------------------------------------------------------- /ContainerShip/Dockerfile.javascript: -------------------------------------------------------------------------------- 1 | FROM library/node:6.9.2 2 | 3 | ENV YARN_VERSION=0.19.1 4 | 5 | # install dependencies 6 | RUN apt-get update && apt-get install ocaml libelf-dev -y 7 | RUN npm install yarn@$YARN_VERSION -g 8 | 9 | # add code 10 | RUN mkdir /app 11 | ADD . /app 12 | 13 | WORKDIR /app 14 | RUN yarn install --ignore-engines 15 | 16 | WORKDIR website 17 | RUN yarn install --ignore-engines --ignore-platform 18 | 19 | WORKDIR /app 20 | -------------------------------------------------------------------------------- /ContainerShip/scripts/run-android-docker-unit-tests.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # set default environment variables 4 | UNIT_TESTS_BUILD_THREADS="${UNIT_TESTS_BUILD_THREADS:-1}" 5 | 6 | # for buck gen 7 | mount -o remount,exec /dev/shm 8 | 9 | set -x 10 | 11 | # run unit tests 12 | buck test ReactAndroid/src/test/... --config build.threads=$UNIT_TESTS_BUILD_THREADS 13 | -------------------------------------------------------------------------------- /Examples/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "rules": { 3 | "no-alert": 0 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorer/Images.xcassets/AppIcon.appiconset/Icon-40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorer/Images.xcassets/AppIcon.appiconset/Icon-40@2x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorer/Images.xcassets/AppIcon.appiconset/Icon-40@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorer/Images.xcassets/AppIcon.appiconset/Icon-40@3x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorer/Images.xcassets/AppIcon.appiconset/Icon-60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorer/Images.xcassets/AppIcon.appiconset/Icon-60@2x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorer/Images.xcassets/AppIcon.appiconset/Icon-60@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorer/Images.xcassets/AppIcon.appiconset/Icon-60@3x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorer/Images.xcassets/AppIcon.appiconset/Icon-Small@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorer/Images.xcassets/AppIcon.appiconset/Icon-Small@2x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorer/Images.xcassets/AppIcon.appiconset/Icon-Small@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorer/Images.xcassets/AppIcon.appiconset/Icon-Small@3x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorer/Images.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorer/Images.xcassets/NavBarButtonPlus.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "scale" : "2x" 10 | }, 11 | { 12 | "idiom" : "universal", 13 | "filename" : "NavBarButtonPlus@3x.png", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorer/Images.xcassets/NavBarButtonPlus.imageset/NavBarButtonPlus@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorer/Images.xcassets/NavBarButtonPlus.imageset/NavBarButtonPlus@3x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorer/Images.xcassets/story-background.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "scale" : "2x", 10 | "filename" : "story-background@2x.png" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorer/Images.xcassets/story-background.imageset/story-background@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorer/Images.xcassets/story-background.imageset/story-background@2x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorer/Images.xcassets/tabnav_list.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "scale" : "2x" 10 | }, 11 | { 12 | "idiom" : "universal", 13 | "scale" : "3x", 14 | "filename" : "tabnav_list@3x.png" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorer/Images.xcassets/tabnav_list.imageset/tabnav_list@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorer/Images.xcassets/tabnav_list.imageset/tabnav_list@3x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorer/Images.xcassets/tabnav_notification.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "scale" : "2x" 10 | }, 11 | { 12 | "idiom" : "universal", 13 | "scale" : "3x", 14 | "filename" : "tabnav_notification@3x.png" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorer/Images.xcassets/tabnav_notification.imageset/tabnav_notification@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorer/Images.xcassets/tabnav_notification.imageset/tabnav_notification@3x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorer/Images.xcassets/tabnav_settings.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "scale" : "2x" 10 | }, 11 | { 12 | "idiom" : "universal", 13 | "scale" : "3x", 14 | "filename" : "tabnav_settings@3x.png" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorer/Images.xcassets/tabnav_settings.imageset/tabnav_settings@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorer/Images.xcassets/tabnav_settings.imageset/tabnav_settings@3x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorer/UIExplorerBundle/ImageInBundle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorer/UIExplorerBundle/ImageInBundle.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorer/UIExplorerBundle/OtherImages.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorer/UIExplorerBundle/OtherImages.xcassets/ImageInAssetCatalog.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "react-logo.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorer/UIExplorerBundle/OtherImages.xcassets/ImageInAssetCatalog.imageset/react-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorer/UIExplorerBundle/OtherImages.xcassets/ImageInAssetCatalog.imageset/react-logo.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorer/legacy_image@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorer/legacy_image@2x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testLayoutExample_1-iOS10@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testLayoutExample_1-iOS10@2x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testLayoutExample_1-iOS10_tvOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testLayoutExample_1-iOS10_tvOS.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testLayoutExample_1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testLayoutExample_1@2x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testLayoutExample_1_tvOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testLayoutExample_1_tvOS.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testScrollViewExample_1-iOS10@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testScrollViewExample_1-iOS10@2x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testScrollViewExample_1-iOS10_tvOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testScrollViewExample_1-iOS10_tvOS.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testScrollViewExample_1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testScrollViewExample_1@2x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testScrollViewExample_1_tvOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testScrollViewExample_1_tvOS.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testSliderExample_1-iOS10@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testSliderExample_1-iOS10@2x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testSliderExample_1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testSliderExample_1@2x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testSwitchExample_1-iOS10@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testSwitchExample_1-iOS10@2x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testSwitchExample_1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testSwitchExample_1@2x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testTabBarExample_1-iOS10@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testTabBarExample_1-iOS10@2x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testTabBarExample_1-iOS10_tvOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testTabBarExample_1-iOS10_tvOS.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testTabBarExample_1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testTabBarExample_1@2x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testTabBarExample_1_tvOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testTabBarExample_1_tvOS.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testTextExample_1-iOS10@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testTextExample_1-iOS10@2x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testTextExample_1-iOS10_tvOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testTextExample_1-iOS10_tvOS.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testTextExample_1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testTextExample_1@2x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testTextExample_1_tvOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testTextExample_1_tvOS.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testViewExample_1-iOS10@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testViewExample_1-iOS10@2x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testViewExample_1-iOS10_tvOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testViewExample_1-iOS10_tvOS.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testViewExample_1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testViewExample_1@2x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testViewExample_1_tvOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/Examples-UIExplorer-js-UIExplorerApp.ios/testViewExample_1_tvOS.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/IntegrationTests-IntegrationTestsApp/testImageSnapshotTest_1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/IntegrationTests-IntegrationTestsApp/testImageSnapshotTest_1@2x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/IntegrationTests-IntegrationTestsApp/testImageSnapshotTest_1_tvOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/IntegrationTests-IntegrationTestsApp/testImageSnapshotTest_1_tvOS.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/IntegrationTests-IntegrationTestsApp/testSimpleSnapshotTest_1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/IntegrationTests-IntegrationTestsApp/testSimpleSnapshotTest_1@2x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/IntegrationTests-IntegrationTestsApp/testSimpleSnapshotTest_1_tvOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/ReferenceImages/IntegrationTests-IntegrationTestsApp/testSimpleSnapshotTest_1_tvOS.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/blue_square.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/blue_square.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerIntegrationTests/red_square.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerIntegrationTests/red_square.png -------------------------------------------------------------------------------- /Examples/UIExplorer/UIExplorerUnitTests/libOCMock.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/UIExplorerUnitTests/libOCMock.a -------------------------------------------------------------------------------- /Examples/UIExplorer/android/app/gradle.properties: -------------------------------------------------------------------------------- 1 | android.useDeprecatedNdk=true 2 | MYAPP_RELEASE_STORE_FILE=my-release-key.keystore 3 | MYAPP_RELEASE_KEY_ALIAS=my-key-alias 4 | MYAPP_RELEASE_STORE_PASSWORD=***** 5 | MYAPP_RELEASE_KEY_PASSWORD=***** 6 | -------------------------------------------------------------------------------- /Examples/UIExplorer/android/app/src/main/assets/fonts/notoserif.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/android/app/src/main/assets/fonts/notoserif.ttf -------------------------------------------------------------------------------- /Examples/UIExplorer/android/app/src/main/assets/fonts/notoserif_bold_italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/android/app/src/main/assets/fonts/notoserif_bold_italic.ttf -------------------------------------------------------------------------------- /Examples/UIExplorer/android/app/src/main/res/drawable/ic_create_black_48dp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/android/app/src/main/res/drawable/ic_create_black_48dp.png -------------------------------------------------------------------------------- /Examples/UIExplorer/android/app/src/main/res/drawable/ic_menu_black_24dp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/android/app/src/main/res/drawable/ic_menu_black_24dp.png -------------------------------------------------------------------------------- /Examples/UIExplorer/android/app/src/main/res/drawable/ic_settings_black_48dp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/android/app/src/main/res/drawable/ic_settings_black_48dp.png -------------------------------------------------------------------------------- /Examples/UIExplorer/android/app/src/main/res/drawable/launcher_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/android/app/src/main/res/drawable/launcher_icon.png -------------------------------------------------------------------------------- /Examples/UIExplorer/android/app/src/main/res/drawable/legacy_image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/android/app/src/main/res/drawable/legacy_image.png -------------------------------------------------------------------------------- /Examples/UIExplorer/android/app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 6 | 7 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Examples/UIExplorer/android/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | UIExplorer App 3 | 4 | -------------------------------------------------------------------------------- /Examples/UIExplorer/android/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Examples/UIExplorer/js/AnimatedGratuitousApp/trees.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/AnimatedGratuitousApp/trees.jpg -------------------------------------------------------------------------------- /Examples/UIExplorer/js/Thumbnails/bandaged.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/Thumbnails/bandaged.png -------------------------------------------------------------------------------- /Examples/UIExplorer/js/Thumbnails/call.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/Thumbnails/call.png -------------------------------------------------------------------------------- /Examples/UIExplorer/js/Thumbnails/dislike.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/Thumbnails/dislike.png -------------------------------------------------------------------------------- /Examples/UIExplorer/js/Thumbnails/fist.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/Thumbnails/fist.png -------------------------------------------------------------------------------- /Examples/UIExplorer/js/Thumbnails/flowers.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/Thumbnails/flowers.png -------------------------------------------------------------------------------- /Examples/UIExplorer/js/Thumbnails/heart.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/Thumbnails/heart.png -------------------------------------------------------------------------------- /Examples/UIExplorer/js/Thumbnails/like.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/Thumbnails/like.png -------------------------------------------------------------------------------- /Examples/UIExplorer/js/Thumbnails/liking.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/Thumbnails/liking.png -------------------------------------------------------------------------------- /Examples/UIExplorer/js/Thumbnails/party.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/Thumbnails/party.png -------------------------------------------------------------------------------- /Examples/UIExplorer/js/Thumbnails/poke.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/Thumbnails/poke.png -------------------------------------------------------------------------------- /Examples/UIExplorer/js/Thumbnails/superlike.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/Thumbnails/superlike.png -------------------------------------------------------------------------------- /Examples/UIExplorer/js/Thumbnails/victory.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/Thumbnails/victory.png -------------------------------------------------------------------------------- /Examples/UIExplorer/js/bunny.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/bunny.png -------------------------------------------------------------------------------- /Examples/UIExplorer/js/flux@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/flux@3x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/js/hawk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/hawk.png -------------------------------------------------------------------------------- /Examples/UIExplorer/js/relay@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/relay@3x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/js/slider-left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/slider-left.png -------------------------------------------------------------------------------- /Examples/UIExplorer/js/slider-left@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/slider-left@2x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/js/slider-right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/slider-right.png -------------------------------------------------------------------------------- /Examples/UIExplorer/js/slider-right@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/slider-right@2x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/js/slider.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/slider.png -------------------------------------------------------------------------------- /Examples/UIExplorer/js/slider@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/slider@2x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/js/uie_comment_highlighted@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/uie_comment_highlighted@2x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/js/uie_comment_normal@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/uie_comment_normal@2x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/js/uie_thumb_big.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/uie_thumb_big.png -------------------------------------------------------------------------------- /Examples/UIExplorer/js/uie_thumb_normal@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/uie_thumb_normal@2x.png -------------------------------------------------------------------------------- /Examples/UIExplorer/js/uie_thumb_selected@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Examples/UIExplorer/js/uie_thumb_selected@2x.png -------------------------------------------------------------------------------- /IntegrationTests/blue_square.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/IntegrationTests/blue_square.png -------------------------------------------------------------------------------- /IntegrationTests/red_square.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/IntegrationTests/red_square.png -------------------------------------------------------------------------------- /JSCLegacyProfiler/JSCLegacyProfiler.h: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | 3 | #pragma once 4 | 5 | #import "JSContextRef.h" 6 | 7 | extern "C" { 8 | 9 | void nativeProfilerEnableBytecode(void); 10 | void nativeProfilerStart(JSContextRef ctx, const char *title); 11 | void nativeProfilerEnd(JSContextRef ctx, const char *title, const char *filename); 12 | 13 | } 14 | -------------------------------------------------------------------------------- /JSCLegacyProfiler/Makefile: -------------------------------------------------------------------------------- 1 | ios9: 2 | IOS_VERSION=9 \ 3 | JSC_VERSION=7601.1.46.3 \ 4 | WEB_CORE_VERSION=7601.1.46.10 \ 5 | WTF_VERSION=7601.1.46.3 \ 6 | make -f Makefile.base 7 | 8 | ios8: 9 | IOS_VERSION=8 \ 10 | JSC_VERSION=7600.1.17 \ 11 | WEB_CORE_VERSION=7600.1.25 \ 12 | WTF_VERSION=7600.1.24 \ 13 | make -f Makefile.base 14 | 15 | .PHONY: clean 16 | clean: 17 | -rm -rf $(wildcard *.dylib) 18 | -rm -rf download 19 | -------------------------------------------------------------------------------- /JSCLegacyProfiler/parseSDKVersion.awk: -------------------------------------------------------------------------------- 1 | BEGIN { 2 | FS = ":" 3 | RS = "," 4 | } 5 | 6 | /"Version"/ { 7 | version = substr($2, 2, length($2) - 2) 8 | print int(version) 9 | exit 0 10 | } 11 | -------------------------------------------------------------------------------- /Libraries/ART/ARTSurfaceView.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | #import "ARTContainer.h" 13 | 14 | @interface ARTSurfaceView : UIView 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Libraries/ART/Brushes/ARTLinearGradient.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import "ARTBrush.h" 11 | 12 | @interface ARTLinearGradient : ARTBrush 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/ART/Brushes/ARTPattern.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import "ARTBrush.h" 11 | 12 | @interface ARTPattern : ARTBrush 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/ART/Brushes/ARTRadialGradient.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import "ARTBrush.h" 11 | 12 | @interface ARTRadialGradient : ARTBrush 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/ART/Brushes/ARTSolidColor.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import "ARTBrush.h" 11 | 12 | @interface ARTSolidColor : ARTBrush 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/ART/ViewManagers/ARTGroupManager.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import "ARTNodeManager.h" 11 | 12 | @interface ARTGroupManager : ARTNodeManager 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/ART/ViewManagers/ARTShapeManager.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import "ARTRenderableManager.h" 11 | 12 | @interface ARTShapeManager : ARTRenderableManager 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/ART/ViewManagers/ARTSurfaceViewManager.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface ARTSurfaceViewManager : RCTViewManager 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/ART/ViewManagers/ARTTextManager.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import "ARTRenderableManager.h" 11 | 12 | @interface ARTTextManager : ARTRenderableManager 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/ActionSheetIOS/RCTActionSheetManager.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | #import 13 | 14 | @interface RCTActionSheetManager : NSObject 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Libraries/AdSupport/RCTAdSupport.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTAdSupport : NSObject 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/Animated/examples/pic1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Libraries/Animated/examples/pic1.jpg -------------------------------------------------------------------------------- /Libraries/Animated/examples/pic2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Libraries/Animated/examples/pic2.jpg -------------------------------------------------------------------------------- /Libraries/Animated/examples/pic3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Libraries/Animated/examples/pic3.jpg -------------------------------------------------------------------------------- /Libraries/Animated/src/polyfills/InteractionManager.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | 'use strict'; 11 | 12 | module.exports = { 13 | createInteractionHandle: function() {}, 14 | clearInteractionHandle: function() {} 15 | }; 16 | -------------------------------------------------------------------------------- /Libraries/Animated/src/polyfills/flattenStyle.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 'use strict'; 10 | module.exports = function(style) { 11 | return style; 12 | }; 13 | -------------------------------------------------------------------------------- /Libraries/CameraRoll/RCTImagePickerManager.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2013, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | */ 10 | 11 | #import 12 | 13 | @interface RCTImagePickerManager : NSObject 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /Libraries/CameraRoll/RCTPhotoLibraryImageLoader.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTPhotoLibraryImageLoader : NSObject 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.ios.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | * @providesModule DrawerLayoutAndroid 10 | */ 11 | 'use strict'; 12 | 13 | module.exports = require('UnimplementedView'); 14 | -------------------------------------------------------------------------------- /Libraries/Components/Navigation/NavigatorIOS.android.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | * @providesModule NavigatorIOS 10 | */ 11 | 'use strict'; 12 | 13 | module.exports = require('UnimplementedView'); 14 | -------------------------------------------------------------------------------- /Libraries/Components/Picker/PickerAndroid.ios.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | * @providesModule PickerAndroid 10 | */ 11 | 'use strict'; 12 | 13 | module.exports = require('UnimplementedView'); 14 | -------------------------------------------------------------------------------- /Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.ios.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | * @providesModule ProgressBarAndroid 10 | */ 11 | 'use strict'; 12 | 13 | module.exports = require('UnimplementedView'); 14 | -------------------------------------------------------------------------------- /Libraries/Components/ToolbarAndroid/ToolbarAndroid.ios.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | * @providesModule ToolbarAndroid 10 | */ 11 | 'use strict'; 12 | 13 | module.exports = require('UnimplementedView'); 14 | -------------------------------------------------------------------------------- /Libraries/Components/Touchable/__mocks__/ensureComponentIsNative.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 'use strict'; 10 | 11 | module.exports = () => true; 12 | -------------------------------------------------------------------------------- /Libraries/Components/ViewPager/ViewPagerAndroid.ios.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | * @providesModule ViewPagerAndroid 10 | */ 11 | 'use strict'; 12 | 13 | module.exports = require('UnimplementedView'); 14 | -------------------------------------------------------------------------------- /Libraries/Geolocation/RCTLocationObserver.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTLocationObserver : RCTEventEmitter 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/Image/RCTGIFImageDecoder.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTGIFImageDecoder : NSObject 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/Image/RCTImageCache.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | #import 13 | 14 | @interface RCTImageCache : NSObject 15 | @end 16 | -------------------------------------------------------------------------------- /Libraries/Image/RCTImageEditingManager.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTImageEditingManager : NSObject 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/Image/RCTImageViewManager.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTImageViewManager : RCTViewManager 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/Image/RCTLocalAssetImageLoader.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTLocalAssetImageLoader : NSObject 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/NativeAnimation/Drivers/RCTFrameAnimation.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import "RCTAnimationDriver.h" 11 | 12 | @interface RCTFrameAnimation : NSObject 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/NativeAnimation/Drivers/RCTSpringAnimation.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import "RCTAnimationDriver.h" 11 | 12 | @interface RCTSpringAnimation : NSObject 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/NativeAnimation/Nodes/RCTAdditionAnimatedNode.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import "RCTValueAnimatedNode.h" 11 | 12 | @interface RCTAdditionAnimatedNode : RCTValueAnimatedNode 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/NativeAnimation/Nodes/RCTDiffClampAnimatedNode.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import "RCTValueAnimatedNode.h" 11 | 12 | @interface RCTDiffClampAnimatedNode : RCTValueAnimatedNode 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/NativeAnimation/Nodes/RCTDivisionAnimatedNode.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import "RCTValueAnimatedNode.h" 11 | 12 | @interface RCTDivisionAnimatedNode : RCTValueAnimatedNode 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/NativeAnimation/Nodes/RCTInterpolationAnimatedNode.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import "RCTValueAnimatedNode.h" 11 | 12 | @interface RCTInterpolationAnimatedNode : RCTValueAnimatedNode 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/NativeAnimation/Nodes/RCTModuloAnimatedNode.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import "RCTValueAnimatedNode.h" 11 | 12 | @interface RCTModuloAnimatedNode : RCTValueAnimatedNode 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/NativeAnimation/Nodes/RCTMultiplicationAnimatedNode.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import "RCTValueAnimatedNode.h" 11 | 12 | @interface RCTMultiplicationAnimatedNode : RCTValueAnimatedNode 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/Network/fetch.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | * @providesModule fetch 10 | * @nolint 11 | * 12 | */ 13 | 'use strict'; 14 | 15 | import 'whatwg-fetch'; 16 | 17 | module.exports = {fetch, Headers, Request, Response}; 18 | -------------------------------------------------------------------------------- /Libraries/RCTTest/RCTSnapshotManager.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTSnapshotManager : RCTViewManager 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/RCTTest/SnapshotViewIOS.android.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | * @providesModule SnapshotViewIOS 10 | */ 11 | 'use strict'; 12 | 13 | module.exports = require('UnimplementedView'); 14 | -------------------------------------------------------------------------------- /Libraries/Renderer/README.md: -------------------------------------------------------------------------------- 1 | # React Native Renderer 2 | 3 | This is a downstream copy of React's renderer code to render into React Native. 4 | The source of truth is the React repo. Please submit any changes upstream to 5 | the [React Core GitHub repository](https://github.com/facebook/react). 6 | -------------------------------------------------------------------------------- /Libraries/Renderer/src/ReactVersion.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2013-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | * @providesModule ReactVersion 10 | */ 11 | 12 | 'use strict'; 13 | 14 | module.exports = '16.0.0-alpha.6'; 15 | -------------------------------------------------------------------------------- /Libraries/Sample/Sample.android.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Stub of Sample for Android. 3 | * 4 | * @providesModule Sample 5 | * @flow 6 | */ 7 | 'use strict'; 8 | 9 | var warning = require('fbjs/lib/warning'); 10 | 11 | var Sample = { 12 | test: function() { 13 | warning('Not yet implemented for Android.'); 14 | } 15 | }; 16 | 17 | module.exports = Sample; 18 | -------------------------------------------------------------------------------- /Libraries/Sample/Sample.h: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | @interface Sample : NSObject 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /Libraries/Sample/Sample.ios.js: -------------------------------------------------------------------------------- 1 | /** 2 | * @providesModule Sample 3 | * @flow 4 | */ 5 | 'use strict'; 6 | 7 | var NativeSample = require('NativeModules').Sample; 8 | 9 | /** 10 | * High-level docs for the Sample iOS API can be written here. 11 | */ 12 | 13 | var Sample = { 14 | test: function() { 15 | NativeSample.test(); 16 | } 17 | }; 18 | 19 | module.exports = Sample; 20 | -------------------------------------------------------------------------------- /Libraries/Sample/Sample.m: -------------------------------------------------------------------------------- 1 | #import "Sample.h" 2 | 3 | @implementation Sample 4 | 5 | RCT_EXPORT_MODULE() 6 | 7 | RCT_EXPORT_METHOD(test) 8 | { 9 | // Your implementation here 10 | } 11 | 12 | @end 13 | -------------------------------------------------------------------------------- /Libraries/Sample/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Sample", 3 | "version": "0.0.1", 4 | "keywords": "react-native" 5 | } 6 | -------------------------------------------------------------------------------- /Libraries/Text/RCTRawTextManager.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTRawTextManager : RCTViewManager 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/Text/RCTShadowRawText.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTShadowRawText : RCTShadowView 13 | 14 | @property (nonatomic, copy) NSString *text; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Libraries/Text/RCTShadowTextField.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTShadowTextField : RCTShadowView 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/Text/RCTShadowTextField.m: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import "RCTShadowTextField.h" 11 | 12 | @implementation RCTShadowTextField 13 | 14 | - (BOOL)isYogaLeafNode 15 | { 16 | return YES; 17 | } 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /Libraries/Text/RCTShadowTextView.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTShadowTextView : RCTShadowView 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/Text/RCTShadowTextView.m: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import "RCTShadowTextView.h" 11 | 12 | @implementation RCTShadowTextView 13 | 14 | - (BOOL)isYogaLeafNode 15 | { 16 | return YES; 17 | } 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /Libraries/Text/RCTTextFieldManager.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTTextFieldManager : RCTViewManager 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/Text/RCTTextManager.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTTextManager : RCTViewManager 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/Text/RCTTextViewManager.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTTextViewManager : RCTViewManager 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/Vibration/RCTVibration.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTVibration : NSObject 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/WebSocket/RCTWebSocketModule.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTWebSocketModule : RCTEventEmitter 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Libraries/react-native/React.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2016-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | * @providesModule React 10 | */ 11 | 12 | 'use strict'; 13 | 14 | module.exports = require('react/lib/React'); 15 | -------------------------------------------------------------------------------- /React/Base/RCTInvalidating.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @protocol RCTInvalidating 13 | 14 | - (void)invalidate; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /React/Base/RCTPlatform.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | #import 13 | 14 | @interface RCTPlatform : NSObject 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /React/Modules/RCTAppState.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTAppState : RCTEventEmitter 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /React/Modules/RCTClipboard.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTClipboard : NSObject 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /React/Modules/RCTKeyboardObserver.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTKeyboardObserver : RCTEventEmitter 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /React/Modules/RCTSourceCode.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | #import 13 | 14 | @interface RCTSourceCode : NSObject 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /React/Views/RCTActivityIndicatorView.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTActivityIndicatorView : UIActivityIndicatorView 13 | @end 14 | -------------------------------------------------------------------------------- /React/Views/RCTConvert+Transform.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import "RCTConvert.h" 11 | 12 | @interface RCTConvert (Transform) 13 | 14 | + (CATransform3D)CATransform3D:(id)json; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /React/Views/RCTDatePicker.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTDatePicker : UIDatePicker 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /React/Views/RCTNavigatorManager.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTNavigatorManager : RCTViewManager 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /React/Views/RCTPickerManager.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTPickerManager : RCTViewManager 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /React/Views/RCTProgressViewManager.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTProgressViewManager : RCTViewManager 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /React/Views/RCTRefreshControlManager.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTRefreshControlManager : RCTViewManager 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /React/Views/RCTScrollContentShadowView.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | #import 13 | 14 | @interface RCTScrollContentShadowView : RCTShadowView 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /React/Views/RCTScrollContentViewManager.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTScrollContentViewManager : RCTViewManager 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /React/Views/RCTSegmentedControlManager.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTSegmentedControlManager : RCTViewManager 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /React/Views/RCTSliderManager.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTSliderManager : RCTViewManager 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /React/Views/RCTSwitchManager.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTSwitchManager : RCTViewManager 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /React/Views/RCTTabBarItemManager.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTTabBarItemManager : RCTViewManager 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /React/Views/RCTTabBarManager.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTTabBarManager : RCTViewManager 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /React/Views/RCTWebViewManager.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface RCTWebViewManager : RCTViewManager 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /React/folly.xcconfig: -------------------------------------------------------------------------------- 1 | // 2 | // folly.xcconfig 3 | // CxxReact 4 | // 5 | // Created by Marc Horowitz on 1/12/17. 6 | // Copyright © 2017 Facebook. All rights reserved. 7 | // 8 | 9 | HEADER_SEARCH_PATHS = $(SRCROOT)/../third-party/boost_1_63_0 $(SRCROOT)/../third-party/folly-2016.09.26.00 $(SRCROOT)/../third-party/glog-0.3.4/src 10 | OTHER_CFLAGS = -DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 11 | -------------------------------------------------------------------------------- /ReactAndroid/.npmignore: -------------------------------------------------------------------------------- 1 | # Make sure we never publish ReactAndroid/build (Gradle output) to npm. 2 | # The folder is huge (> 100MB)! 3 | build/ 4 | -------------------------------------------------------------------------------- /ReactAndroid/README.md: -------------------------------------------------------------------------------- 1 | # Building React Native for Android 2 | 3 | See the [docs on the website](https://facebook.github.io/react-native/docs/android-building-from-source.html). 4 | 5 | # Running tests 6 | 7 | When you submit a pull request CircleCI will automatically run all tests. To run tests locally, see [Testing](https://facebook.github.io/react-native/docs/testing.html). 8 | -------------------------------------------------------------------------------- /ReactAndroid/gradle.properties: -------------------------------------------------------------------------------- 1 | VERSION_NAME=1000.0.0-master 2 | GROUP=com.facebook.react 3 | 4 | POM_NAME=ReactNative 5 | POM_ARTIFACT_ID=react-native 6 | POM_PACKAGING=aar 7 | 8 | android.useDeprecatedNdk=true 9 | 10 | MOCKITO_CORE_VERSION=1.10.19 11 | POWERMOCK_VERSION=1.6.2 12 | ROBOLECTRIC_VERSION=3.0 13 | JUNIT_VERSION=4.12 14 | FEST_ASSERT_CORE_VERSION=2.0M10 15 | -------------------------------------------------------------------------------- /ReactAndroid/src/androidTest/assets/BUCK: -------------------------------------------------------------------------------- 1 | android_resource( 2 | name = "assets", 3 | assets = ".", 4 | visibility = ["PUBLIC"], 5 | ) 6 | -------------------------------------------------------------------------------- /ReactAndroid/src/androidTest/java/com/facebook/react/testing/idledetection/BUCK: -------------------------------------------------------------------------------- 1 | include_defs("//ReactAndroid/DEFS") 2 | 3 | android_library( 4 | name = "idledetection", 5 | srcs = glob(["**/*.java"]), 6 | visibility = [ 7 | "PUBLIC", 8 | ], 9 | deps = [ 10 | react_native_dep("third-party/java/testing-support-lib:runner"), 11 | react_native_target("java/com/facebook/react/bridge:bridge"), 12 | react_native_target("java/com/facebook/react/modules/core:core"), 13 | ], 14 | ) 15 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/android_res/com/facebook/catalyst/appcompat/BUCK: -------------------------------------------------------------------------------- 1 | include_defs("//ReactAndroid/DEFS") 2 | 3 | # used by ReactToolbarManager because of Gradle 4 | # TODO t10182713 will be replaced with appcompat-orig when we stop using Gradle 5 | android_resource( 6 | name = "appcompat", 7 | package = "com.facebook.react", 8 | res = react_native_dep("third-party/android/support/v7/appcompat-orig:res-unpacker-cmd"), 9 | visibility = ["//ReactAndroid/..."], 10 | ) 11 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/jni/BUCK: -------------------------------------------------------------------------------- 1 | include_defs("//ReactAndroid/DEFS") 2 | 3 | android_library( 4 | name = "jni", 5 | srcs = glob(["**/*.java"]), 6 | proguard_config = "fbjni.pro", 7 | visibility = [ 8 | "PUBLIC", 9 | ], 10 | deps = [ 11 | react_native_dep("java/com/facebook/proguard/annotations:annotations"), 12 | react_native_dep("libraries/soloader/java/com/facebook/soloader:soloader"), 13 | react_native_dep("third-party/java/jsr-305:jsr-305"), 14 | ], 15 | ) 16 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/jni/fbjni.pro: -------------------------------------------------------------------------------- 1 | # For common use cases for the hybrid pattern, keep symbols which may 2 | # be referenced only from C++. 3 | 4 | -keepclassmembers class * { 5 | com.facebook.jni.HybridData *; 6 | (com.facebook.jni.HybridData); 7 | } 8 | 9 | -keepclasseswithmembers class * { 10 | com.facebook.jni.HybridData *; 11 | } 12 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/perftest/BUCK: -------------------------------------------------------------------------------- 1 | android_library( 2 | name = "perftest", 3 | srcs = glob(["*.java"]), 4 | visibility = [ 5 | "PUBLIC", 6 | ], 7 | ) 8 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/proguard/annotations/BUCK: -------------------------------------------------------------------------------- 1 | android_library( 2 | name = "annotations", 3 | srcs = glob(["*.java"]), 4 | proguard_config = "proguard_annotations.pro", 5 | visibility = [ 6 | "PUBLIC", 7 | ], 8 | deps = [ 9 | ], 10 | ) 11 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/quicklog/BUCK: -------------------------------------------------------------------------------- 1 | include_defs("//ReactAndroid/DEFS") 2 | 3 | android_library( 4 | name = "quicklog", 5 | srcs = glob(["*.java"]), 6 | exported_deps = [ 7 | react_native_dep("java/com/facebook/quicklog/identifiers:identifiers"), 8 | ], 9 | visibility = [ 10 | "PUBLIC", 11 | ], 12 | ) 13 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/quicklog/identifiers/BUCK: -------------------------------------------------------------------------------- 1 | android_library( 2 | name = "identifiers", 3 | srcs = glob(["*.java"]), 4 | visibility = [ 5 | "PUBLIC", 6 | ], 7 | ) 8 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/react/ReactPackageLogger.java: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | 3 | package com.facebook.react; 4 | 5 | /** 6 | * Interface for the bridge to call for TTI start and end markers. 7 | */ 8 | public interface ReactPackageLogger { 9 | 10 | void startProcessPackage(); 11 | void endProcessPackage(); 12 | } 13 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/react/animation/BUCK: -------------------------------------------------------------------------------- 1 | include_defs("//ReactAndroid/DEFS") 2 | 3 | android_library( 4 | name = "animation", 5 | srcs = glob(["**/*.java"]), 6 | visibility = [ 7 | "PUBLIC", 8 | ], 9 | deps = [ 10 | react_native_dep("third-party/java/infer-annotations:infer-annotations"), 11 | react_native_dep("third-party/java/jsr-305:jsr-305"), 12 | react_native_target("java/com/facebook/react/bridge:bridge"), 13 | ], 14 | ) 15 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/react/bridge/MemoryPressure.java: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | 3 | package com.facebook.react.bridge; 4 | 5 | public enum MemoryPressure { 6 | UI_HIDDEN, 7 | MODERATE, 8 | CRITICAL 9 | } 10 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/react/bridge/MemoryPressureListener.java: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | 3 | package com.facebook.react.bridge; 4 | 5 | /** 6 | * Listener interface for memory pressure events. 7 | */ 8 | public interface MemoryPressureListener { 9 | 10 | /** 11 | * Called when the system generates a memory warning. 12 | */ 13 | void handleMemoryPressure(MemoryPressure level); 14 | 15 | } 16 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/react/bridge/SupportsWebWorkers.java: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | 3 | package com.facebook.react.bridge; 4 | 5 | import java.lang.annotation.Retention; 6 | 7 | import static java.lang.annotation.RetentionPolicy.RUNTIME; 8 | 9 | /** 10 | * Annotation indicating that a JS module should be made available to web 11 | * workers spawned by the main JS executor. 12 | */ 13 | @Retention(RUNTIME) 14 | public @interface SupportsWebWorkers { 15 | } 16 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/react/bridge/Systrace.java: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | 3 | package com.facebook.react.bridge; 4 | 5 | import com.facebook.proguard.annotations.DoNotStrip; 6 | 7 | /** 8 | * Interface to the JavaScript Systrace Module 9 | */ 10 | @DoNotStrip 11 | public interface Systrace extends JavaScriptModule{ 12 | @DoNotStrip 13 | void setEnabled(boolean enabled); 14 | } 15 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/react/bridge/package_js.py: -------------------------------------------------------------------------------- 1 | from __future__ import absolute_import 2 | from __future__ import division 3 | from __future__ import print_function 4 | from __future__ import unicode_literals 5 | import os 6 | import sys 7 | import zipfile 8 | 9 | srcs = sys.argv[1:] 10 | 11 | with zipfile.ZipFile(sys.stdout, 'w') as jar: 12 | for src in srcs: 13 | archive_name = os.path.join('assets/', os.path.basename(src)) 14 | jar.write(src, archive_name, zipfile.ZIP_DEFLATED) 15 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/react/common/network/BUCK: -------------------------------------------------------------------------------- 1 | include_defs("//ReactAndroid/DEFS") 2 | 3 | android_library( 4 | name = "network", 5 | srcs = glob(["**/*.java"]), 6 | visibility = [ 7 | "PUBLIC", 8 | ], 9 | deps = [ 10 | react_native_dep("third-party/java/okhttp:okhttp3"), 11 | ], 12 | ) 13 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/react/cxxbridge/ExecutorToken.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/ReactAndroid/src/main/java/com/facebook/react/cxxbridge/ExecutorToken.java -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/react/cxxbridge/bridge.pro: -------------------------------------------------------------------------------- 1 | ## Putting this here is kind of a hack. I don't want to modify the OSS bridge. 2 | ## TODO mhorowitz: add @DoNotStrip to the interface directly. 3 | 4 | -keepclassmembers class com.facebook.react.bridge.queue.MessageQueueThread { 5 | public boolean isOnThread(); 6 | public void assertIsOnThread(); 7 | } 8 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/react/devsupport/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/react/flat/FlatUI.java: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | 3 | package com.facebook.react.flat; 4 | 5 | /** 6 | * Holds global flag for enabling nodes. 7 | */ 8 | public class FlatUI { 9 | 10 | public static boolean sEnabled; 11 | } 12 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/react/module/annotations/BUCK: -------------------------------------------------------------------------------- 1 | include_defs("//ReactAndroid/DEFS") 2 | 3 | android_library( 4 | name = "annotations", 5 | srcs = glob(["**/*.java"]), 6 | visibility = [ 7 | "PUBLIC", 8 | ], 9 | deps = [ 10 | react_native_dep("third-party/java/infer-annotations:infer-annotations"), 11 | react_native_dep("third-party/java/jsr-305:jsr-305"), 12 | react_native_target("java/com/facebook/react/bridge:bridge"), 13 | ], 14 | ) 15 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/react/module/model/BUCK: -------------------------------------------------------------------------------- 1 | include_defs("//ReactAndroid/DEFS") 2 | 3 | android_library( 4 | name = "model", 5 | srcs = glob(["**/*.java"]), 6 | visibility = [ 7 | "PUBLIC", 8 | ], 9 | deps = [ 10 | react_native_dep("third-party/java/jsr-305:jsr-305"), 11 | react_native_target("java/com/facebook/react/bridge:bridge"), 12 | ], 13 | ) 14 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/react/module/model/ReactModuleInfoProvider.java: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | 3 | package com.facebook.react.module.model; 4 | 5 | import java.util.Map; 6 | 7 | /** 8 | * Interface for auto-generated class by ReactModuleSpecProcessor. 9 | */ 10 | public interface ReactModuleInfoProvider { 11 | 12 | Map getReactModuleInfos(); 13 | } 14 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/react/modules/appregistry/BUCK: -------------------------------------------------------------------------------- 1 | include_defs("//ReactAndroid/DEFS") 2 | 3 | android_library( 4 | name = "appregistry", 5 | srcs = glob(["**/*.java"]), 6 | visibility = [ 7 | "PUBLIC", 8 | ], 9 | deps = [ 10 | react_native_target("java/com/facebook/react/bridge:bridge"), 11 | ], 12 | ) 13 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/react/modules/network/CookieJarContainer.java: -------------------------------------------------------------------------------- 1 | package com.facebook.react.modules.network; 2 | 3 | import okhttp3.CookieJar; 4 | 5 | public interface CookieJarContainer extends CookieJar { 6 | 7 | void setCookieJar(CookieJar cookieJar); 8 | 9 | void removeCookieJar(); 10 | 11 | } 12 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/react/touch/BUCK: -------------------------------------------------------------------------------- 1 | include_defs("//ReactAndroid/DEFS") 2 | 3 | android_library( 4 | name = "touch", 5 | srcs = glob(["**/*.java"]), 6 | visibility = [ 7 | "PUBLIC", 8 | ], 9 | deps = [ 10 | react_native_dep("third-party/java/infer-annotations:infer-annotations"), 11 | react_native_dep("third-party/java/jsr-305:jsr-305"), 12 | ], 13 | ) 14 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/react/uimanager/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/react/uimanager/UIBlock.java: -------------------------------------------------------------------------------- 1 | package com.facebook.react.uimanager; 2 | 3 | import android.view.View; 4 | 5 | /** 6 | * A task to execute on the UI View for third party libraries. 7 | */ 8 | public interface UIBlock { 9 | public void execute(NativeViewHierarchyManager nativeViewHierarchyManager); 10 | } 11 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/BUCK: -------------------------------------------------------------------------------- 1 | include_defs("//ReactAndroid/DEFS") 2 | 3 | android_library( 4 | name = "annotations", 5 | srcs = glob(["*.java"]), 6 | visibility = [ 7 | "PUBLIC", 8 | ], 9 | deps = [ 10 | react_native_dep("third-party/java/jsr-305:jsr-305"), 11 | ], 12 | ) 13 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/HandlesLayout.java: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | 3 | package com.facebook.react.uimanager.layoutanimation; 4 | 5 | /** 6 | * Marker interface to indicate a given animation type takes care of updating the view layout. 7 | */ 8 | /* package */ interface HandleLayout { 9 | 10 | } 11 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationListener.java: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | 3 | package com.facebook.react.uimanager.layoutanimation; 4 | 5 | /** 6 | * Listener invoked when a layout animation has completed. 7 | */ 8 | public interface LayoutAnimationListener { 9 | void onAnimationEnd(); 10 | } 11 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/react/uimanager/util/BUCK: -------------------------------------------------------------------------------- 1 | include_defs("//ReactAndroid/DEFS") 2 | 3 | android_library( 4 | name = "util", 5 | srcs = glob(["*.java"]), 6 | visibility = [ 7 | "PUBLIC", 8 | ], 9 | deps = [ 10 | react_native_dep("third-party/java/jsr-305:jsr-305"), 11 | react_native_target("res:uimanager"), 12 | ], 13 | ) 14 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/react/views/text/ReactVirtualTextShadowNode.java: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | 3 | package com.facebook.react.views.text; 4 | 5 | /** 6 | * A virtual text node. Should only be a child of a ReactTextShadowNode. 7 | */ 8 | public class ReactVirtualTextShadowNode extends ReactTextShadowNode { 9 | 10 | @Override 11 | public boolean isVirtual() { 12 | return true; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/systrace/BUCK: -------------------------------------------------------------------------------- 1 | android_library( 2 | name = "systrace", 3 | srcs = glob(["*.java"]), 4 | visibility = [ 5 | "PUBLIC", 6 | ], 7 | ) 8 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/java/com/facebook/systrace/TraceListener.java: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | 3 | package com.facebook.systrace; 4 | 5 | public interface TraceListener { 6 | void onTraceStarted(); 7 | void onTraceStopped(); 8 | } 9 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/jni/Application.mk: -------------------------------------------------------------------------------- 1 | APP_BUILD_SCRIPT := Android.mk 2 | 3 | APP_ABI := armeabi-v7a x86 4 | APP_PLATFORM := android-9 5 | 6 | APP_MK_DIR := $(dir $(lastword $(MAKEFILE_LIST))) 7 | 8 | NDK_MODULE_PATH := $(APP_MK_DIR)$(HOST_DIRSEP)$(THIRD_PARTY_NDK_DIR)$(HOST_DIRSEP)$(REACT_COMMON_DIR)$(HOST_DIRSEP)$(APP_MK_DIR)first-party 9 | 10 | APP_STL := gnustl_shared 11 | 12 | # Make sure every shared lib includes a .note.gnu.build-id header 13 | APP_LDFLAGS := -Wl,--build-id 14 | 15 | NDK_TOOLCHAIN_VERSION := 4.8 16 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/jni/first-party/fb/include/fb/visibility.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #pragma once 11 | 12 | #define FBEXPORT __attribute__((visibility("default"))) 13 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/jni/first-party/fbgloginit/fb/glog_init.h: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | 3 | #pragma once 4 | 5 | #include 6 | 7 | namespace facebook { namespace gloginit { 8 | 9 | void initialize(const char* tag = "ReactNativeJNI"); 10 | 11 | }} 12 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/jni/first-party/jni-hack/README.md: -------------------------------------------------------------------------------- 1 | This buck module exists so that targets that need to be built against both 1) Android (where we can and should use the Android NDK jni headers) and 2) the host platform(generally for local unit tests) can depend on a single target and get the right jni header for whatever platform they're building against automatically. 2 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/jni/first-party/jni-hack/jni.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2014-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #pragma once 11 | 12 | #ifdef __ANDROID__ 13 | #include_next 14 | #else 15 | #include "real/jni.h" 16 | #endif 17 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/jni/prebuilt/lib/DUMMY: -------------------------------------------------------------------------------- 1 | # just a dummy temporarily to make BUCK happy about folder not present before Gradle built it 2 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/jni/react/jni/BUCK: -------------------------------------------------------------------------------- 1 | include_defs("//ReactAndroid/DEFS") 2 | 3 | # TODO(cjhopman): Remove this target (or move the xreact target to this directory). 4 | cxx_library( 5 | name = "jni", 6 | srcs = [ 7 | "Dummy.cpp", 8 | ], 9 | header_namespace = "react/jni", 10 | soname = "libreactnativejni.$(ext)", 11 | visibility = [ 12 | "PUBLIC", 13 | ], 14 | deps = [ 15 | react_native_target("jni/xreact/jni:jni"), 16 | ], 17 | ) 18 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/jni/react/jni/Dummy.cpp: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | namespace facebook { 3 | namespace react { 4 | void ThisWhatsLeftOfTheOldBridge() { 5 | } 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/jni/third-party/boost/Android.mk: -------------------------------------------------------------------------------- 1 | LOCAL_PATH:= $(call my-dir) 2 | include $(CLEAR_VARS) 3 | 4 | LOCAL_C_INCLUDES := $(LOCAL_PATH)/boost_1_63_0 5 | LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/boost_1_63_0 6 | CXX11_FLAGS := -std=gnu++11 7 | LOCAL_EXPORT_CPPFLAGS := $(CXX11_FLAGS) 8 | 9 | LOCAL_MODULE := boost 10 | 11 | include $(BUILD_STATIC_LIBRARY) 12 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/jni/third-party/jsc/Android.mk: -------------------------------------------------------------------------------- 1 | LOCAL_PATH:= $(call my-dir) 2 | include $(CLEAR_VARS) 3 | LOCAL_MODULE:= jsc 4 | LOCAL_SRC_FILES := jni/$(TARGET_ARCH_ABI)/libjsc.so 5 | LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH) 6 | include $(PREBUILT_SHARED_LIBRARY) -------------------------------------------------------------------------------- /ReactAndroid/src/main/jni/xreact/jni/JSCPerfLogging.h: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | 3 | #pragma once 4 | 5 | #include 6 | 7 | namespace facebook { 8 | namespace react { 9 | 10 | void addNativePerfLoggingHooks(JSGlobalContextRef ctx); 11 | 12 | } } 13 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/jni/xreact/jni/JSLogging.h: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | 3 | #pragma once 4 | 5 | #include 6 | 7 | namespace facebook { 8 | namespace react { 9 | 10 | JSValueRef nativeLoggingHook( 11 | JSContextRef ctx, 12 | JSObjectRef function, 13 | JSObjectRef thisObject, 14 | size_t argumentCount, 15 | const JSValueRef arguments[], JSValueRef *exception); 16 | 17 | }} 18 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/jni/xreact/jni/OnLoad.h: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | 3 | #pragma once 4 | 5 | #include 6 | #include 7 | #include 8 | 9 | namespace facebook { 10 | namespace react { 11 | 12 | jmethodID getLogMarkerMethod(); 13 | } // namespace react 14 | } // namespace facebook 15 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/libraries/fbcore/src/main/java/com/facebook/common/logging/BUCK: -------------------------------------------------------------------------------- 1 | include_defs("//ReactAndroid/DEFS") 2 | 3 | android_library( 4 | name = "logging", 5 | exported_deps = [ 6 | react_native_dep("libraries/fresco/fresco-react-native:fbcore"), 7 | ], 8 | visibility = ["//ReactAndroid/..."], 9 | ) 10 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/libraries/soloader/java/com/facebook/soloader/BUCK: -------------------------------------------------------------------------------- 1 | android_prebuilt_aar( 2 | name = "soloader", 3 | aar = ":soloader-binary-aar", 4 | visibility = ["PUBLIC"], 5 | ) 6 | 7 | remote_file( 8 | name = "soloader-binary-aar", 9 | sha1 = "918573465c94c6bc9bad48ef259f1e0cd6543c1b", 10 | url = "mvn:com.facebook.soloader:soloader:aar:0.1.0", 11 | ) 12 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/res/devsupport/layout/dev_loading_view.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 15 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/res/devsupport/layout/redbox_item_title.xml: -------------------------------------------------------------------------------- 1 | 11 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/res/devsupport/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #eecc0000 4 | 5 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/res/views/modal/anim/fade_in.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/res/views/modal/anim/fade_out.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/res/views/modal/anim/slide_down.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/res/views/modal/anim/slide_up.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/res/views/uimanager/values/ids.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/third-party/android/support-annotations/BUCK: -------------------------------------------------------------------------------- 1 | prebuilt_jar( 2 | name = "android-support-annotations", 3 | binary_jar = ":support-annotations-binary-aar", 4 | visibility = ["//ReactAndroid/..."], 5 | ) 6 | 7 | remote_file( 8 | name = "support-annotations-binary-aar", 9 | sha1 = "1fce89a6428c51467090d7f424e4c9c3dbd55f7e", 10 | url = "mvn:com.android.support:support-annotations:jar:23.0.1", 11 | ) 12 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/third-party/android/support/v4/BUCK: -------------------------------------------------------------------------------- 1 | android_prebuilt_aar( 2 | name = "lib-support-v4", 3 | aar = ":lib-support-v4-binary-aar", 4 | visibility = ["PUBLIC"], 5 | ) 6 | 7 | remote_file( 8 | name = "lib-support-v4-binary-aar", 9 | sha1 = "9e8da0e4ecf9f63258c7fbd273889252cba2d0c3", 10 | url = "mvn:com.android.support:support-v4:aar:23.0.1", 11 | ) 12 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/third-party/java/buck-android-support/BUCK: -------------------------------------------------------------------------------- 1 | include_defs("//ReactAndroid/DEFS") 2 | 3 | # this lib was compiled by buck version : 6cbf2709778ea352a169d1c84e3ef2894dfa39ec 4 | prebuilt_jar( 5 | name = "buck-android-support", 6 | binary_jar = "buck-android-support.jar", 7 | visibility = [ 8 | react_native_integration_tests_target("..."), 9 | ], 10 | ) 11 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/third-party/java/buck-android-support/buck-android-support.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/ReactAndroid/src/main/third-party/java/buck-android-support/buck-android-support.jar -------------------------------------------------------------------------------- /ReactAndroid/src/main/third-party/java/infer-annotations/BUCK: -------------------------------------------------------------------------------- 1 | prebuilt_jar( 2 | name = "infer-annotations", 3 | binary_jar = "infer-annotations-1.5.jar", 4 | visibility = ["//ReactAndroid/..."], 5 | ) 6 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/third-party/java/infer-annotations/infer-annotations-1.5.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/ReactAndroid/src/main/third-party/java/infer-annotations/infer-annotations-1.5.jar -------------------------------------------------------------------------------- /ReactAndroid/src/main/third-party/java/javapoet/BUCK: -------------------------------------------------------------------------------- 1 | prebuilt_jar( 2 | name = "javapoet", 3 | binary_jar = ":jsr305-binary-jar", 4 | visibility = ["//ReactAndroid/..."], 5 | ) 6 | 7 | remote_file( 8 | name = "jsr305-binary-jar", 9 | sha1 = "ad3ba65c1788f4d814a4da056323e2b84412fb3c", 10 | url = "mvn:com.squareup:javapoet:jar:1.2.0", 11 | ) 12 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/third-party/java/jsr-305/BUCK: -------------------------------------------------------------------------------- 1 | prebuilt_jar( 2 | name = "jsr-305", 3 | binary_jar = ":jsr305-binary-jar", 4 | visibility = ["PUBLIC"], 5 | ) 6 | 7 | remote_file( 8 | name = "jsr305-binary-jar", 9 | sha1 = "5871fb60dc68d67da54a663c3fd636a10a532948", 10 | url = "mvn:com.google.code.findbugs:jsr305:jar:3.0.0", 11 | ) 12 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/third-party/java/jsr-330/BUCK: -------------------------------------------------------------------------------- 1 | prebuilt_jar( 2 | name = "jsr-330", 3 | binary_jar = ":jsr330-binary-jar", 4 | visibility = ["PUBLIC"], 5 | ) 6 | 7 | remote_file( 8 | name = "jsr330-binary-jar", 9 | sha1 = "6975da39a7040257bd51d21a231b76c915872d38", 10 | url = "mvn:javax.inject:javax.inject:jar:1", 11 | ) 12 | -------------------------------------------------------------------------------- /ReactAndroid/src/main/third-party/java/okio/BUCK: -------------------------------------------------------------------------------- 1 | prebuilt_jar( 2 | name = "okio", 3 | binary_jar = ":okio-binary-jar", 4 | visibility = ["//ReactAndroid/..."], 5 | ) 6 | 7 | remote_file( 8 | name = "okio-binary-jar", 9 | sha1 = "f824591a0016efbaeddb8300bee54832a1398cfa", 10 | url = "mvn:com.squareup.okio:okio:jar:1.9.0", 11 | ) 12 | -------------------------------------------------------------------------------- /ReactAndroid/src/test/java/com/facebook/common/logging/BUCK: -------------------------------------------------------------------------------- 1 | include_defs("//ReactAndroid/DEFS") 2 | 3 | android_library( 4 | name = "logging", 5 | srcs = glob(["**/*.java"]), 6 | exported_deps = [ 7 | react_native_dep("libraries/fbcore/src/main/java/com/facebook/common/logging:logging"), 8 | ], 9 | visibility = [ 10 | "PUBLIC", 11 | ], 12 | deps = [ 13 | react_native_dep("third-party/java/jsr-305:jsr-305"), 14 | ], 15 | ) 16 | -------------------------------------------------------------------------------- /ReactAndroid/src/test/java/org/mockito/configuration/BUCK: -------------------------------------------------------------------------------- 1 | include_defs("//ReactAndroid/DEFS") 2 | 3 | android_library( 4 | name = "configuration", 5 | srcs = glob(["**/*.java"]), 6 | visibility = [ 7 | "PUBLIC", 8 | ], 9 | deps = [ 10 | react_native_dep("third-party/java/mockito:mockito"), 11 | ], 12 | ) 13 | -------------------------------------------------------------------------------- /ReactCommon/DEFS: -------------------------------------------------------------------------------- 1 | # Set up common deps 2 | 3 | GLOG_DEP = "//ReactAndroid/build/third-party-ndk/glog:glog" 4 | -------------------------------------------------------------------------------- /ReactCommon/cxxreact/JSCLegacyProfiler.h: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | 3 | #pragma once 4 | 5 | #ifdef WITH_JSC_EXTRA_TRACING 6 | 7 | #include 8 | 9 | namespace facebook { 10 | namespace react { 11 | 12 | void addNativeProfilingHooks(JSGlobalContextRef ctx); 13 | void stopAndOutputProfilingFile( 14 | JSContextRef ctx, 15 | JSStringRef title, 16 | const char *filename); 17 | 18 | } } 19 | 20 | #endif 21 | -------------------------------------------------------------------------------- /ReactCommon/cxxreact/JSCLegacyTracing.h: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | 3 | #pragma once 4 | 5 | #if defined(WITH_JSC_EXTRA_TRACING) 6 | 7 | #include 8 | 9 | namespace facebook { 10 | namespace react { 11 | 12 | void addNativeTracingLegacyHooks(JSGlobalContextRef ctx); 13 | 14 | } } 15 | 16 | #endif 17 | -------------------------------------------------------------------------------- /ReactCommon/cxxreact/JSCMemory.h: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | 3 | #pragma once 4 | 5 | #include 6 | 7 | namespace facebook { 8 | namespace react { 9 | 10 | void addNativeMemoryHooks(JSGlobalContextRef ctx); 11 | 12 | } } 13 | -------------------------------------------------------------------------------- /ReactCommon/cxxreact/JSCPerfStats.h: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | 3 | #pragma once 4 | 5 | #include 6 | 7 | namespace facebook { 8 | namespace react { 9 | 10 | void addJSCPerfStatsHooks(JSGlobalContextRef ctx); 11 | 12 | } } 13 | -------------------------------------------------------------------------------- /ReactCommon/cxxreact/JSCSamplingProfiler.h: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | 3 | #pragma once 4 | 5 | #include 6 | 7 | namespace facebook { 8 | namespace react { 9 | 10 | void initSamplingProfilerOnMainJSCThread(JSGlobalContextRef ctx); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /ReactCommon/cxxreact/JSCTracing.h: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | 3 | #pragma once 4 | 5 | #if defined(WITH_JSC_EXTRA_TRACING) || DEBUG 6 | 7 | #include 8 | #include 9 | 10 | namespace facebook { 11 | namespace react { 12 | 13 | uint64_t tracingTagFromJSValue(JSContextRef ctx, JSValueRef value, JSValueRef* exception); 14 | void addNativeTracingHooks(JSGlobalContextRef ctx); 15 | 16 | } } 17 | 18 | #endif 19 | -------------------------------------------------------------------------------- /ReactCommon/cxxreact/JSCUtils.cpp: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | 3 | #include "JSCUtils.h" 4 | 5 | namespace facebook { 6 | namespace react { 7 | 8 | String jsStringFromBigString(JSContextRef ctx, const JSBigString& bigstr) { 9 | if (bigstr.isAscii()) { 10 | return String::createExpectingAscii(ctx, bigstr.c_str(), bigstr.size()); 11 | } else { 12 | return String(ctx, bigstr.c_str()); 13 | } 14 | } 15 | 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /ReactCommon/cxxreact/JSCUtils.h: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | 3 | #pragma once 4 | 5 | #include 6 | #include 7 | 8 | namespace facebook { 9 | namespace react { 10 | 11 | String jsStringFromBigString(JSContextRef ctx, const JSBigString& bigstr); 12 | 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /ReactCommon/jschelpers/Unicode.h: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | 3 | #pragma once 4 | 5 | #include 6 | #include 7 | 8 | namespace facebook { 9 | namespace react { 10 | namespace unicode { 11 | std::string utf16toUTF8(const uint16_t* utf16, size_t length) noexcept; 12 | } 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /ReactCommon/jschelpers/noncopyable.h: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | 3 | #pragma once 4 | namespace facebook { 5 | namespace react { 6 | struct noncopyable { 7 | noncopyable(const noncopyable&) = delete; 8 | noncopyable& operator=(const noncopyable&) = delete; 9 | protected: 10 | noncopyable() = default; 11 | }; 12 | }} 13 | -------------------------------------------------------------------------------- /ReactCommon/yoga/Android.mk: -------------------------------------------------------------------------------- 1 | LOCAL_PATH := $(call my-dir) 2 | 3 | include $(CLEAR_VARS) 4 | 5 | LOCAL_MODULE := yogacore 6 | 7 | LOCAL_SRC_FILES := \ 8 | yoga/Yoga.c \ 9 | yoga/YGEnums.c \ 10 | yoga/YGNodeList.c 11 | 12 | LOCAL_C_INCLUDES := $(LOCAL_PATH) 13 | LOCAL_EXPORT_C_INCLUDES := $(LOCAL_C_INCLUDES) 14 | 15 | LOCAL_CFLAGS := -Wall -Werror -fexceptions -frtti -std=c99 -O3 16 | 17 | include $(BUILD_STATIC_LIBRARY) 18 | -------------------------------------------------------------------------------- /ReactCommon/yoga/BUCK: -------------------------------------------------------------------------------- 1 | cxx_library( 2 | name = "yoga", 3 | srcs = glob(["yoga/*.c"]), 4 | compiler_flags = [ 5 | "-fno-omit-frame-pointer", 6 | "-fexceptions", 7 | "-Wall", 8 | "-Werror", 9 | "-std=c99", 10 | "-O3", 11 | ], 12 | exported_headers = glob(["yoga/*.h"]), 13 | force_static = True, 14 | header_namespace = "", 15 | visibility = ["PUBLIC"], 16 | deps = [ 17 | ], 18 | ) 19 | -------------------------------------------------------------------------------- /Windows: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/Windows -------------------------------------------------------------------------------- /babel-preset/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 'use strict'; 10 | 11 | module.exports = require('./configs/main'); 12 | -------------------------------------------------------------------------------- /blog/img/animated-diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/blog/img/animated-diagram.png -------------------------------------------------------------------------------- /blog/img/button-android-ios.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/blog/img/button-android-ios.png -------------------------------------------------------------------------------- /blog/img/git-upgrade-conflict.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/blog/img/git-upgrade-conflict.png -------------------------------------------------------------------------------- /blog/img/git-upgrade-output.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/blog/img/git-upgrade-output.png -------------------------------------------------------------------------------- /blog/img/hmr-architecture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/blog/img/hmr-architecture.png -------------------------------------------------------------------------------- /blog/img/hmr-diamond.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/blog/img/hmr-diamond.png -------------------------------------------------------------------------------- /blog/img/hmr-log.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/blog/img/hmr-log.png -------------------------------------------------------------------------------- /blog/img/hmr-proxy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/blog/img/hmr-proxy.png -------------------------------------------------------------------------------- /blog/img/hmr-step.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/blog/img/hmr-step.png -------------------------------------------------------------------------------- /blog/img/rnmsf-august-2016-airbnb.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/blog/img/rnmsf-august-2016-airbnb.jpg -------------------------------------------------------------------------------- /blog/img/rnmsf-august-2016-docs.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/blog/img/rnmsf-august-2016-docs.jpg -------------------------------------------------------------------------------- /blog/img/rnmsf-august-2016-hero.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/blog/img/rnmsf-august-2016-hero.jpg -------------------------------------------------------------------------------- /blog/img/rnmsf-august-2016-netflix.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/blog/img/rnmsf-august-2016-netflix.jpg -------------------------------------------------------------------------------- /blog/img/rtl-ama-android-hebrew.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/blog/img/rtl-ama-android-hebrew.png -------------------------------------------------------------------------------- /blog/img/rtl-ama-ios-arabic.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/blog/img/rtl-ama-ios-arabic.png -------------------------------------------------------------------------------- /blog/img/rtl-demo-forcertl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/blog/img/rtl-demo-forcertl.png -------------------------------------------------------------------------------- /blog/img/rtl-demo-icon-ltr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/blog/img/rtl-demo-icon-ltr.png -------------------------------------------------------------------------------- /blog/img/rtl-demo-icon-rtl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/blog/img/rtl-demo-icon-rtl.png -------------------------------------------------------------------------------- /blog/img/rtl-demo-listitem-ltr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/blog/img/rtl-demo-listitem-ltr.png -------------------------------------------------------------------------------- /blog/img/rtl-demo-listitem-rtl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/blog/img/rtl-demo-listitem-rtl.png -------------------------------------------------------------------------------- /blog/img/rtl-demo-swipe-ltr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/blog/img/rtl-demo-swipe-ltr.png -------------------------------------------------------------------------------- /blog/img/rtl-demo-swipe-rtl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/blog/img/rtl-demo-swipe-rtl.png -------------------------------------------------------------------------------- /blog/img/rtl-rn-core-updates.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/blog/img/rtl-rn-core-updates.png -------------------------------------------------------------------------------- /blog/img/yarn-rncli.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/blog/img/yarn-rncli.png -------------------------------------------------------------------------------- /bots/README.md: -------------------------------------------------------------------------------- 1 | Github bots and messages used by the Facebook Github bot. 2 | -------------------------------------------------------------------------------- /breaking-changes.md: -------------------------------------------------------------------------------- 1 | # Breaking Changes 2 | 3 | **Breaking changes are now tracked in [the Wiki](https://github.com/facebook/react-native/wiki/Breaking-Changes)**. 4 | -------------------------------------------------------------------------------- /cli.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 'use strict'; 10 | 11 | module.exports = require('./local-cli/cli.js'); 12 | -------------------------------------------------------------------------------- /docs/AndroidUIPerformance.md: -------------------------------------------------------------------------------- 1 | --- 2 | id: android-ui-performance 3 | title: Profiling Android UI Performance 4 | layout: redirect 5 | permalink: docs/android-ui-performance.html 6 | destinationUrl: performance.html 7 | --- 8 | -------------------------------------------------------------------------------- /docs/RunningOnDeviceAndroid.md: -------------------------------------------------------------------------------- 1 | --- 2 | id: running-on-device-android 3 | title: Running On Device 4 | layout: redirect 5 | permalink: docs/running-on-device-android.html 6 | destinationUrl: running-on-device.html 7 | --- 8 | -------------------------------------------------------------------------------- /docs/RunningOnDeviceIOS.md: -------------------------------------------------------------------------------- 1 | --- 2 | id: running-on-device-ios 3 | title: Running On Device 4 | layout: redirect 5 | permalink: docs/running-on-device-ios.html 6 | destinationUrl: running-on-device.html 7 | --- 8 | -------------------------------------------------------------------------------- /flow/Position.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | * @flow 10 | * @nolint 11 | */ 12 | 13 | /* eslint-disable */ 14 | 15 | declare class Position { 16 | coords: Coordinates, 17 | timestamp: number, 18 | mocked: boolean, 19 | } 20 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Mon Jan 16 11:21:59 CST 2017 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip 7 | -------------------------------------------------------------------------------- /ios-cc.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh -x 2 | 3 | exec "$(xcrun -find -sdk iphoneos cc)" -arch armv7 -isysroot "$(xcrun -sdk iphoneos --show-sdk-path)" "$@" 4 | -------------------------------------------------------------------------------- /keystores/BUCK: -------------------------------------------------------------------------------- 1 | keystore( 2 | name = "debug", 3 | properties = "debug.keystore.properties", 4 | store = "debug.keystore", 5 | visibility = [ 6 | "PUBLIC", 7 | ], 8 | ) 9 | -------------------------------------------------------------------------------- /keystores/debug.keystore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/keystores/debug.keystore -------------------------------------------------------------------------------- /keystores/debug.keystore.properties: -------------------------------------------------------------------------------- 1 | key.store=debug.keystore 2 | key.alias=androiddebugkey 3 | key.store.password=android 4 | key.alias.password=android 5 | -------------------------------------------------------------------------------- /lib/README: -------------------------------------------------------------------------------- 1 | JS modules in this folder are forwarding modules to allow React to require React Native internals as node dependencies. 2 | -------------------------------------------------------------------------------- /local-cli/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "rules": { 3 | "extra-arrow-initializer": 0, 4 | "no-console-disallow": 0 5 | }, 6 | "env": { 7 | "node": true 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /local-cli/bundle/__mocks__/sign.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 'use strict'; 10 | 11 | function sign(source) { 12 | return source; 13 | } 14 | 15 | module.exports = sign; 16 | -------------------------------------------------------------------------------- /local-cli/bundle/output/unbundle/magic-number.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | * @flow 10 | */ 11 | 'use strict'; 12 | 13 | module.exports = 0xFB0BD1E5; 14 | -------------------------------------------------------------------------------- /local-cli/core/__fixtures__/commands.js: -------------------------------------------------------------------------------- 1 | exports.single = { 2 | func: () => {}, 3 | description: 'Test action', 4 | name: 'test', 5 | }; 6 | 7 | exports.multiple = [{ 8 | func: () => {}, 9 | description: 'Test action #1', 10 | name: 'test1', 11 | }, { 12 | func: () => {}, 13 | description: 'Test action #2', 14 | name: 'test2', 15 | }]; 16 | -------------------------------------------------------------------------------- /local-cli/core/__fixtures__/files/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | -------------------------------------------------------------------------------- /local-cli/core/__fixtures__/files/Main.java: -------------------------------------------------------------------------------- 1 | package com.some.example; 2 | 3 | import java.util.ArrayList; 4 | import java.util.Arrays; 5 | import java.util.Collections; 6 | import java.util.List; 7 | 8 | public class SomeExamplePackage {} 9 | -------------------------------------------------------------------------------- /local-cli/core/__fixtures__/ios.js: -------------------------------------------------------------------------------- 1 | const fs = require('fs'); 2 | const path = require('path'); 3 | 4 | exports.valid = { 5 | 'demoProject.xcodeproj': { 6 | 'project.pbxproj': fs.readFileSync(path.join(__dirname, './files/project.pbxproj')), 7 | }, 8 | }; 9 | 10 | exports.validTestName = { 11 | 'MyTestProject.xcodeproj': { 12 | 'project.pbxproj': fs.readFileSync(path.join(__dirname, './files/project.pbxproj')), 13 | }, 14 | }; 15 | -------------------------------------------------------------------------------- /local-cli/core/windows/generateGUID.js: -------------------------------------------------------------------------------- 1 | const s4 = () => { 2 | return Math.floor((1 + Math.random()) * 0x10000) 3 | .toString(16) 4 | .substring(1); 5 | } 6 | 7 | module.exports = function generateGUID() { 8 | return s4() + s4() + '-' + s4() + '-' + s4() + '-' + 9 | s4() + '-' + s4() + s4() + s4(); 10 | } 11 | -------------------------------------------------------------------------------- /local-cli/link/__fixtures__/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | UISupportedInterfaceOrientations 8 | 9 | UIInterfaceOrientationPortrait 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /local-cli/link/__fixtures__/android/build.gradle: -------------------------------------------------------------------------------- 1 | dependencies { 2 | compile fileTree(dir: "libs", include: ["*.jar"]) 3 | compile "com.android.support:appcompat-v7:23.0.1" 4 | compile "com.facebook.react:react-native:0.18.+" 5 | } 6 | -------------------------------------------------------------------------------- /local-cli/link/__fixtures__/android/patchedBuild.gradle: -------------------------------------------------------------------------------- 1 | dependencies { 2 | compile project(':test') 3 | compile fileTree(dir: "libs", include: ["*.jar"]) 4 | compile "com.android.support:appcompat-v7:23.0.1" 5 | compile "com.facebook.react:react-native:0.18.+" 6 | } 7 | -------------------------------------------------------------------------------- /local-cli/link/__fixtures__/android/patchedSettings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'TestRN' 2 | 3 | include ':app' 4 | include ':test' 5 | project(':test').projectDir = new File(rootProject.projectDir, '../node_modules/test/android') 6 | -------------------------------------------------------------------------------- /local-cli/link/__fixtures__/android/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'TestRN' 2 | 3 | include ':app' 4 | -------------------------------------------------------------------------------- /local-cli/link/android/fs.js: -------------------------------------------------------------------------------- 1 | const fs = require('fs-extra'); 2 | 3 | exports.readFile = (file) => 4 | () => fs.readFileSync(file, 'utf8'); 5 | 6 | exports.writeFile = (file, content) => content ? 7 | fs.writeFileSync(file, content, 'utf8') : 8 | (c) => fs.writeFileSync(file, c, 'utf8'); 9 | -------------------------------------------------------------------------------- /local-cli/link/android/isInstalled.js: -------------------------------------------------------------------------------- 1 | const fs = require('fs'); 2 | const makeBuildPatch = require('./patches/makeBuildPatch'); 3 | 4 | module.exports = function isInstalled(config, name) { 5 | return fs 6 | .readFileSync(config.buildGradlePath) 7 | .indexOf(makeBuildPatch(name).patch) > -1; 8 | }; 9 | -------------------------------------------------------------------------------- /local-cli/link/android/patches/applyPatch.js: -------------------------------------------------------------------------------- 1 | const fs = require('fs'); 2 | 3 | module.exports = function applyPatch(file, patch) { 4 | fs.writeFileSync(file, fs 5 | .readFileSync(file, 'utf8') 6 | .replace(patch.pattern, match => `${match}${patch.patch}`) 7 | ); 8 | }; 9 | -------------------------------------------------------------------------------- /local-cli/link/android/patches/makeBuildPatch.js: -------------------------------------------------------------------------------- 1 | module.exports = function makeBuildPatch(name) { 2 | return { 3 | pattern: /[^ \t]dependencies {\n/, 4 | patch: ` compile project(':${name}')\n`, 5 | }; 6 | }; 7 | -------------------------------------------------------------------------------- /local-cli/link/android/patches/makeImportPatch.js: -------------------------------------------------------------------------------- 1 | module.exports = function makeImportPatch(packageImportPath) { 2 | return { 3 | pattern: 'import com.facebook.react.ReactApplication;', 4 | patch: '\n' + packageImportPath, 5 | }; 6 | }; 7 | -------------------------------------------------------------------------------- /local-cli/link/android/patches/makePackagePatch.js: -------------------------------------------------------------------------------- 1 | const applyParams = require('./applyParams'); 2 | 3 | module.exports = function makePackagePatch(packageInstance, params, prefix) { 4 | const processedInstance = applyParams(packageInstance, params, prefix); 5 | 6 | return { 7 | pattern: 'new MainReactPackage()', 8 | patch: ',\n ' + processedInstance, 9 | }; 10 | }; 11 | -------------------------------------------------------------------------------- /local-cli/link/android/patches/revokePatch.js: -------------------------------------------------------------------------------- 1 | const fs = require('fs'); 2 | 3 | module.exports = function revokePatch(file, patch) { 4 | fs.writeFileSync(file, fs 5 | .readFileSync(file, 'utf8') 6 | .replace(patch.patch, '') 7 | ); 8 | }; 9 | -------------------------------------------------------------------------------- /local-cli/link/commandStub.js: -------------------------------------------------------------------------------- 1 | module.exports = (cb) => cb(); -------------------------------------------------------------------------------- /local-cli/link/getDependencyConfig.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Given an array of dependencies - it returns their RNPM config 3 | * if they were valid. 4 | */ 5 | module.exports = function getDependencyConfig(config, deps) { 6 | return deps.reduce((acc, name) => { 7 | try { 8 | return acc.concat({ 9 | config: config.getDependencyConfig(name), 10 | name, 11 | }); 12 | } catch (err) { 13 | console.log(err); 14 | return acc; 15 | } 16 | }, []); 17 | }; 18 | -------------------------------------------------------------------------------- /local-cli/link/getProjectDependencies.js: -------------------------------------------------------------------------------- 1 | const path = require('path'); 2 | 3 | /** 4 | * Returns an array of dependencies that should be linked/checked. 5 | */ 6 | module.exports = function getProjectDependencies() { 7 | const pjson = require(path.join(process.cwd(), './package.json')); 8 | return Object.keys(pjson.dependencies || {}).filter(name => name !== 'react-native'); 9 | }; 10 | -------------------------------------------------------------------------------- /local-cli/link/ios/addFileToProject.js: -------------------------------------------------------------------------------- 1 | const PbxFile = require('xcode/lib/pbxFile'); 2 | 3 | /** 4 | * Given xcodeproj and filePath, it creates new file 5 | * from path provided, adds it to the project 6 | * and returns newly created instance of a file 7 | */ 8 | module.exports = function addFileToProject(project, filePath) { 9 | const file = new PbxFile(filePath); 10 | file.uuid = project.generateUuid(); 11 | file.fileRef = project.generateUuid(); 12 | project.addToPbxFileReferenceSection(file); 13 | return file; 14 | }; 15 | -------------------------------------------------------------------------------- /local-cli/link/ios/addProjectToLibraries.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Given an array of xcodeproj libraries and pbxFile, 3 | * it appends it to that group 4 | * 5 | * Important: That function mutates `libraries` and it's not pure. 6 | * It's mainly due to limitations of `xcode` library. 7 | */ 8 | module.exports = function addProjectToLibraries(libraries, file) { 9 | return libraries.children.push({ 10 | value: file.fileRef, 11 | comment: file.basename, 12 | }); 13 | }; 14 | -------------------------------------------------------------------------------- /local-cli/link/ios/addSharedLibraries.js: -------------------------------------------------------------------------------- 1 | const createGroupWithMessage = require('./createGroupWithMessage'); 2 | 3 | module.exports = function addSharedLibraries(project, libraries) { 4 | if (!libraries.length) { 5 | return; 6 | } 7 | 8 | // Create a Frameworks group if necessary. 9 | createGroupWithMessage(project, 'Frameworks'); 10 | 11 | const target = project.getFirstTarget().uuid; 12 | 13 | for (var name of libraries) { 14 | project.addFramework(name, { target }); 15 | } 16 | }; 17 | -------------------------------------------------------------------------------- /local-cli/link/ios/addToHeaderSearchPaths.js: -------------------------------------------------------------------------------- 1 | const mapHeaderSearchPaths = require('./mapHeaderSearchPaths'); 2 | 3 | module.exports = function addToHeaderSearchPaths(project, path) { 4 | mapHeaderSearchPaths(project, searchPaths => searchPaths.concat(path)); 5 | }; 6 | -------------------------------------------------------------------------------- /local-cli/link/ios/getPlistPath.js: -------------------------------------------------------------------------------- 1 | const path = require('path'); 2 | const getBuildProperty = require('./getBuildProperty'); 3 | 4 | module.exports = function getPlistPath(project, sourceDir) { 5 | const plistFile = getBuildProperty(project, 'INFOPLIST_FILE'); 6 | 7 | if (!plistFile) { 8 | return null; 9 | } 10 | 11 | return path.join( 12 | sourceDir, 13 | plistFile.replace(/"/g, '').replace('$(SRCROOT)', '') 14 | ); 15 | }; 16 | -------------------------------------------------------------------------------- /local-cli/link/ios/getProducts.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Given xcodeproj it returns list of products ending with 3 | * .a extension, so that we know what elements add to target 4 | * project static library 5 | */ 6 | module.exports = function getProducts(project) { 7 | return project 8 | .pbxGroupByName('Products') 9 | .children 10 | .map(c => c.comment) 11 | .filter(c => c.indexOf('.a') > -1); 12 | }; 13 | -------------------------------------------------------------------------------- /local-cli/link/ios/hasLibraryImported.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Given an array of libraries already imported and packageName that will be 3 | * added, returns true or false depending on whether the library is already linked 4 | * or not 5 | */ 6 | module.exports = function hasLibraryImported(libraries, packageName) { 7 | return libraries.children 8 | .filter(library => library.comment === packageName) 9 | .length > 0; 10 | }; 11 | -------------------------------------------------------------------------------- /local-cli/link/ios/removeFromHeaderSearchPaths.js: -------------------------------------------------------------------------------- 1 | const mapHeaderSearchPaths = require('./mapHeaderSearchPaths'); 2 | 3 | /** 4 | * Given Xcode project and absolute path, it makes sure there are no headers referring to it 5 | */ 6 | module.exports = function addToHeaderSearchPaths(project, path) { 7 | mapHeaderSearchPaths(project, 8 | searchPaths => searchPaths.filter(searchPath => searchPath !== path) 9 | ); 10 | }; 11 | -------------------------------------------------------------------------------- /local-cli/link/ios/removeFromPbxReferenceProxySection.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Every file added to the project from another project is attached to 3 | * `PBXItemContainerProxy` through `PBXReferenceProxy`. 4 | */ 5 | module.exports = function removeFromPbxReferenceProxySection(project, file) { 6 | const section = project.hash.project.objects.PBXReferenceProxy; 7 | 8 | for (var key of Object.keys(section)) { 9 | if (section[key].path === file.basename) { 10 | delete section[key]; 11 | } 12 | } 13 | 14 | return; 15 | }; 16 | -------------------------------------------------------------------------------- /local-cli/link/ios/removeProductGroup.js: -------------------------------------------------------------------------------- 1 | module.exports = function removeProductGroup(project, productGroupId) { 2 | const section = project.hash.project.objects.PBXGroup; 3 | 4 | for (var key of Object.keys(section)) { 5 | if (key === productGroupId) { 6 | delete section[key]; 7 | } 8 | } 9 | 10 | return; 11 | }; 12 | -------------------------------------------------------------------------------- /local-cli/link/ios/removeProjectFromLibraries.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Given an array of xcodeproj libraries and pbxFile, 3 | * it removes it from that group by comparing basenames 4 | * 5 | * Important: That function mutates `libraries` and it's not pure. 6 | * It's mainly due to limitations of `xcode` library. 7 | */ 8 | module.exports = function removeProjectFromLibraries(libraries, file) { 9 | libraries.children = libraries.children.filter(library => 10 | library.comment !== file.basename 11 | ); 12 | }; 13 | -------------------------------------------------------------------------------- /local-cli/link/ios/removeSharedLibraries.js: -------------------------------------------------------------------------------- 1 | module.exports = function removeSharedLibraries(project, libraries) { 2 | if (!libraries.length) { 3 | return; 4 | } 5 | 6 | const target = project.getFirstTarget().uuid; 7 | 8 | for (var name of libraries) { 9 | project.removeFramework(name, { target }); 10 | } 11 | }; 12 | -------------------------------------------------------------------------------- /local-cli/link/pollParams.js: -------------------------------------------------------------------------------- 1 | var inquirer = require('inquirer'); 2 | 3 | module.exports = (questions) => new Promise((resolve, reject) => { 4 | if (!questions) { 5 | return resolve({}); 6 | } 7 | 8 | inquirer.prompt(questions, resolve); 9 | }); 10 | -------------------------------------------------------------------------------- /local-cli/link/promiseWaterfall.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Given an array of promise creators, executes them in a sequence. 3 | * 4 | * If any of the promises in the chain fails, all subsequent promises 5 | * will be skipped 6 | * 7 | * Returns the value last promise from a sequence resolved 8 | */ 9 | module.exports = function promiseWaterfall(tasks) { 10 | return tasks.reduce( 11 | (prevTaskPromise, task) => prevTaskPromise.then(task), 12 | Promise.resolve() 13 | ); 14 | }; 15 | -------------------------------------------------------------------------------- /local-cli/link/promisify.js: -------------------------------------------------------------------------------- 1 | module.exports = (func) => new Promise((resolve, reject) => 2 | func((err, res) => err ? reject(err) : resolve(res)) 3 | ); -------------------------------------------------------------------------------- /local-cli/link/windows/isInstalled.js: -------------------------------------------------------------------------------- 1 | const fs = require('fs'); 2 | const makeUsingPatch = require('./patches/makeUsingPatch'); 3 | 4 | module.exports = function isInstalled(config, dependencyConfig) { 5 | return fs 6 | .readFileSync(config.mainPage) 7 | .indexOf(makeUsingPatch(dependencyConfig.packageUsingPath).patch) > -1; 8 | }; 9 | -------------------------------------------------------------------------------- /local-cli/link/windows/patches/applyPatch.js: -------------------------------------------------------------------------------- 1 | const fs = require('fs'); 2 | 3 | module.exports = function applyPatch(file, patch, flip = false) { 4 | 5 | fs.writeFileSync(file, fs 6 | .readFileSync(file, 'utf8') 7 | .replace(patch.pattern, match => { 8 | return flip ? `${patch.patch}${match}` : `${match}${patch.patch}` 9 | }) 10 | ); 11 | }; 12 | -------------------------------------------------------------------------------- /local-cli/link/windows/patches/makePackagePatch.js: -------------------------------------------------------------------------------- 1 | const applyParams = require('./applyParams'); 2 | 3 | module.exports = function makePackagePatch(packageInstance, params, prefix) { 4 | const processedInstance = applyParams(packageInstance, params, prefix); 5 | 6 | return { 7 | pattern: 'new MainReactPackage()', 8 | patch: ',\n ' + processedInstance, 9 | }; 10 | }; 11 | -------------------------------------------------------------------------------- /local-cli/link/windows/patches/makeSolutionPatch.js: -------------------------------------------------------------------------------- 1 | module.exports = function makeSolutionPatch(windowsConfig) { 2 | 3 | const solutionInsert = `Project("{${windowsConfig.projectGUID.toUpperCase()}}") = "${windowsConfig.projectName}", "${windowsConfig.relativeProjPath}", "{${windowsConfig.pathGUID.toUpperCase()}}" 4 | EndProject 5 | `; 6 | 7 | return { 8 | pattern: 'Global', 9 | patch: solutionInsert, 10 | unpatch: new RegExp(`Project.+${windowsConfig.projectName}.+\\s+EndProject\\s+`), 11 | }; 12 | }; 13 | -------------------------------------------------------------------------------- /local-cli/link/windows/patches/makeUsingPatch.js: -------------------------------------------------------------------------------- 1 | module.exports = function makeUsingPatch(packageImportPath) { 2 | return { 3 | pattern: 'using ReactNative.Modules.Core;', 4 | patch: '\n' + packageImportPath, 5 | }; 6 | }; 7 | -------------------------------------------------------------------------------- /local-cli/link/windows/patches/revokePatch.js: -------------------------------------------------------------------------------- 1 | const fs = require('fs'); 2 | 3 | module.exports = function revokePatch(file, patch) { 4 | const unpatch = patch.unpatch || patch.patch 5 | fs.writeFileSync(file, fs 6 | .readFileSync(file, 'utf8') 7 | .replace(unpatch, '') 8 | ); 9 | }; 10 | -------------------------------------------------------------------------------- /local-cli/server/middleware/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | React Native 5 | 6 | 7 |

React Native packager is running.

8 |

Visit documentation

9 | 10 | 11 | -------------------------------------------------------------------------------- /local-cli/server/util/external/xsel: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/local-cli/server/util/external/xsel -------------------------------------------------------------------------------- /local-cli/setup_env.bat: -------------------------------------------------------------------------------- 1 | :: Copyright (c) 2015-present, Facebook, Inc. 2 | :: All rights reserved. 3 | :: 4 | :: This source code is licensed under the BSD-style license found in the 5 | :: LICENSE file in the root directory of this source tree. An additional grant 6 | :: of patent rights can be found in the PATENTS file in the same directory. 7 | -------------------------------------------------------------------------------- /local-cli/setup_env.sh: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2015-present, Facebook, Inc. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. An additional grant 6 | # of patent rights can be found in the PATENTS file in the same directory. 7 | 8 | # 2048 is the max for non root users on Mac 9 | ulimit -n 2048 10 | -------------------------------------------------------------------------------- /local-cli/templates/HelloNavigation/dependencies.json: -------------------------------------------------------------------------------- 1 | { 2 | "react-navigation": "1.0.0-beta.5" 3 | } 4 | -------------------------------------------------------------------------------- /local-cli/templates/HelloNavigation/index.android.js: -------------------------------------------------------------------------------- 1 | import { AppRegistry } from 'react-native'; 2 | 3 | import MainNavigator from './views/MainNavigator'; 4 | 5 | AppRegistry.registerComponent('HelloWorld', () => MainNavigator); 6 | -------------------------------------------------------------------------------- /local-cli/templates/HelloNavigation/index.ios.js: -------------------------------------------------------------------------------- 1 | import { AppRegistry } from 'react-native'; 2 | 3 | import MainNavigator from './views/MainNavigator'; 4 | 5 | AppRegistry.registerComponent('HelloWorld', () => MainNavigator); 6 | -------------------------------------------------------------------------------- /local-cli/templates/HelloNavigation/views/chat/chat-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/local-cli/templates/HelloNavigation/views/chat/chat-icon.png -------------------------------------------------------------------------------- /local-cli/templates/HelloNavigation/views/welcome/welcome-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/local-cli/templates/HelloNavigation/views/welcome/welcome-icon.png -------------------------------------------------------------------------------- /local-cli/templates/HelloWorld/__tests__/index.android.js: -------------------------------------------------------------------------------- 1 | import 'react-native'; 2 | import React from 'react'; 3 | import Index from '../index.android.js'; 4 | 5 | // Note: test renderer must be required after react-native. 6 | import renderer from 'react-test-renderer'; 7 | 8 | it('renders correctly', () => { 9 | const tree = renderer.create( 10 | 11 | ); 12 | }); 13 | -------------------------------------------------------------------------------- /local-cli/templates/HelloWorld/__tests__/index.ios.js: -------------------------------------------------------------------------------- 1 | import 'react-native'; 2 | import React from 'react'; 3 | import Index from '../index.ios.js'; 4 | 5 | // Note: test renderer must be required after react-native. 6 | import renderer from 'react-test-renderer'; 7 | 8 | it('renders correctly', () => { 9 | const tree = renderer.create( 10 | 11 | ); 12 | }); 13 | -------------------------------------------------------------------------------- /local-cli/templates/HelloWorld/_babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": ["react-native"] 3 | } 4 | -------------------------------------------------------------------------------- /local-cli/templates/HelloWorld/_buckconfig: -------------------------------------------------------------------------------- 1 | 2 | [android] 3 | target = Google Inc.:Google APIs:23 4 | 5 | [maven_repositories] 6 | central = https://repo1.maven.org/maven2 7 | -------------------------------------------------------------------------------- /local-cli/templates/HelloWorld/_gitattributes: -------------------------------------------------------------------------------- 1 | *.pbxproj -text 2 | -------------------------------------------------------------------------------- /local-cli/templates/HelloWorld/_watchmanconfig: -------------------------------------------------------------------------------- 1 | {} -------------------------------------------------------------------------------- /local-cli/templates/HelloWorld/android/app/src/main/java/com/helloworld/MainActivity.java: -------------------------------------------------------------------------------- 1 | package com.helloworld; 2 | 3 | import com.facebook.react.ReactActivity; 4 | 5 | public class MainActivity extends ReactActivity { 6 | 7 | /** 8 | * Returns the name of the main component registered from JavaScript. 9 | * This is used to schedule rendering of the component. 10 | */ 11 | @Override 12 | protected String getMainComponentName() { 13 | return "HelloWorld"; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /local-cli/templates/HelloWorld/android/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/local-cli/templates/HelloWorld/android/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /local-cli/templates/HelloWorld/android/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/local-cli/templates/HelloWorld/android/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /local-cli/templates/HelloWorld/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/local-cli/templates/HelloWorld/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /local-cli/templates/HelloWorld/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/local-cli/templates/HelloWorld/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /local-cli/templates/HelloWorld/android/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Hello App Display Name 3 | 4 | -------------------------------------------------------------------------------- /local-cli/templates/HelloWorld/android/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /local-cli/templates/HelloWorld/android/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/local-cli/templates/HelloWorld/android/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /local-cli/templates/HelloWorld/android/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | zipStoreBase=GRADLE_USER_HOME 4 | zipStorePath=wrapper/dists 5 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip 6 | -------------------------------------------------------------------------------- /local-cli/templates/HelloWorld/android/keystores/BUCK: -------------------------------------------------------------------------------- 1 | keystore( 2 | name = "debug", 3 | properties = "debug.keystore.properties", 4 | store = "debug.keystore", 5 | visibility = [ 6 | "PUBLIC", 7 | ], 8 | ) 9 | -------------------------------------------------------------------------------- /local-cli/templates/HelloWorld/android/keystores/debug.keystore.properties: -------------------------------------------------------------------------------- 1 | key.store=debug.keystore 2 | key.alias=androiddebugkey 3 | key.store.password=android 4 | key.alias.password=android 5 | -------------------------------------------------------------------------------- /local-cli/templates/HelloWorld/android/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'HelloWorld' 2 | 3 | include ':app' 4 | -------------------------------------------------------------------------------- /local-cli/templates/HelloWorld/app.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "HelloWorld", 3 | "displayName": "HelloWorld" 4 | } -------------------------------------------------------------------------------- /local-cli/util/__mocks__/log.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 'use strict'; 10 | 11 | module.exports.out = () => jest.genMockFn(); 12 | module.exports.err = () => jest.genMockFn(); 13 | -------------------------------------------------------------------------------- /local-cli/util/isValidPackageName.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 'use strict'; 10 | 11 | function isValidPackageName(name) { 12 | return name.match(/^[$A-Z_][0-9A-Z_$]*$/i); 13 | } 14 | 15 | module.exports = isValidPackageName; 16 | -------------------------------------------------------------------------------- /packager/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "rules": { 3 | "extra-arrow-initializer": 0, 4 | "no-console-disallow": 0 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /packager/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | * @flow 10 | */ 11 | 12 | 'use strict'; 13 | 14 | require('../setupBabel')(); 15 | module.exports = require('./react-packager'); 16 | -------------------------------------------------------------------------------- /packager/launchPackager.bat: -------------------------------------------------------------------------------- 1 | :: Copyright (c) 2015-present, Facebook, Inc. 2 | :: All rights reserved. 3 | :: 4 | :: This source code is licensed under the BSD-style license found in the 5 | :: LICENSE file in the root directory of this source tree. An additional grant 6 | :: of patent rights can be found in the PATENTS file in the same directory. 7 | 8 | @echo off 9 | title React Packager 10 | node "%~dp0..\local-cli\cli.js" start 11 | pause 12 | exit 13 | -------------------------------------------------------------------------------- /packager/packager.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2015-present, Facebook, Inc. 4 | # All rights reserved. 5 | # 6 | # This source code is licensed under the BSD-style license found in the 7 | # LICENSE file in the root directory of this source tree. An additional grant 8 | # of patent rights can be found in the PATENTS file in the same directory. 9 | 10 | THIS_DIR=$(dirname "$0") 11 | node "$THIS_DIR/../local-cli/cli.js" start "$@" 12 | -------------------------------------------------------------------------------- /packager/rn-babelrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "presets": [ "react-native" ], 3 | "plugins": [] 4 | } 5 | -------------------------------------------------------------------------------- /packager/src/Bundler/source-map/package.json: -------------------------------------------------------------------------------- 1 | {"main": "source-map.js"} 2 | -------------------------------------------------------------------------------- /packager/src/JSTransformer/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/packager/src/JSTransformer/README.md -------------------------------------------------------------------------------- /packager/src/JSTransformer/__mocks__/worker.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 'use strict'; 10 | 11 | module.exports = function(data, callback) { 12 | callback(null, {}); 13 | }; 14 | -------------------------------------------------------------------------------- /packager/src/JSTransformer/worker/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2016-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | 'use strict'; 11 | 12 | require('../../../../setupBabel')(); 13 | module.exports = require('./worker'); 14 | -------------------------------------------------------------------------------- /packager/src/ModuleGraph/node-haste/package.json: -------------------------------------------------------------------------------- 1 | {"main":"node-haste.js"} 2 | -------------------------------------------------------------------------------- /packager/src/ModuleGraph/package.json: -------------------------------------------------------------------------------- 1 | {"main": "ModuleGraph.js"} 2 | -------------------------------------------------------------------------------- /packager/src/Server/symbolicate/package.json: -------------------------------------------------------------------------------- 1 | {"main": "./symbolicate.js"} 2 | -------------------------------------------------------------------------------- /packager/src/__mocks__/debug.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 'use strict'; 10 | 11 | module.exports = () => () => {}; 12 | -------------------------------------------------------------------------------- /packager/src/lib/__mocks__/GlobalTransformCache.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2016-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | * @flow 10 | */ 11 | 12 | 'use strict'; 13 | 14 | function get() { 15 | return null; 16 | } 17 | 18 | module.exports = {get}; 19 | -------------------------------------------------------------------------------- /packager/src/node-haste/DependencyGraph/assets/empty-module.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | -------------------------------------------------------------------------------- /packager/src/node-haste/__mocks__/fs.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 'use strict'; 10 | 11 | module.exports = require('graceful-fs'); 12 | -------------------------------------------------------------------------------- /runXcodeTests.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # Run from react-native root 4 | 5 | set -e 6 | 7 | if [ -z "$1" ] 8 | then 9 | echo "You must supply an OS version as the first arg, e.g. 8.1" 10 | exit 255 11 | fi 12 | 13 | xctool \ 14 | -project Examples/UIExplorer/UIExplorer.xcodeproj \ 15 | -scheme UIExplorer \ 16 | -sdk iphonesimulator${1} \ 17 | -destination "platform=iOS Simulator,OS=${1},name=iPhone 5" \ 18 | build test 19 | -------------------------------------------------------------------------------- /scripts/objc-test-ios.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -ex 3 | 4 | SCRIPTS=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd) 5 | ROOT=$(dirname "$SCRIPTS") 6 | 7 | cd "$ROOT" 8 | 9 | SCHEME="UIExplorer" 10 | SDK="iphonesimulator" 11 | DESTINATION="platform=iOS Simulator,name=iPhone 5s,OS=10.1" 12 | TEST="test" 13 | 14 | . ./scripts/objc-test.sh 15 | 16 | -------------------------------------------------------------------------------- /scripts/objc-test-tvos.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -ex 3 | 4 | SCRIPTS=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd) 5 | ROOT=$(dirname "$SCRIPTS") 6 | 7 | cd "$ROOT" 8 | 9 | SCHEME="UIExplorer-tvOS" 10 | SDK="appletvsimulator" 11 | DESTINATION="platform=tvOS Simulator,name=Apple TV 1080p,OS=10.1" 12 | # Uncomment the line below to enable tvOS testing 13 | #TEST="test" 14 | 15 | . ./scripts/objc-test.sh 16 | 17 | -------------------------------------------------------------------------------- /scripts/run-android-local-unit-tests.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # Runs all Android unit tests locally. 4 | # See http://facebook.github.io/react-native/docs/testing.html 5 | 6 | source $(dirname $0)/validate-android-sdk.sh 7 | source $(dirname $0)/validate-android-test-env.sh 8 | 9 | set -e 10 | 11 | echo "Fetching dependencies..." 12 | buck fetch ReactAndroid/src/test/... 13 | 14 | echo "Running unit tests..." 15 | buck test ReactAndroid/src/test/... 16 | -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | // Copyright 2004-present Facebook. All Rights Reserved. 2 | 3 | include ':ReactAndroid', ':Examples:UIExplorer:android:app', ':Examples:Movies:android:app', ':Examples:TicTacToe:android:app' 4 | -------------------------------------------------------------------------------- /website/.gitignore: -------------------------------------------------------------------------------- 1 | src/react-native/docs/** 2 | src/react-native/blog/** 3 | core/metadata* 4 | server/metadata* 5 | *.log 6 | /build/ 7 | -------------------------------------------------------------------------------- /website/jsdocs/jsdoc-conf.json: -------------------------------------------------------------------------------- 1 | { 2 | "tags": { 3 | "allowUnknownTags": true, 4 | "dictionaries": ["jsdoc","closure"] 5 | }, 6 | "source": { 7 | "includePattern": ".+\\.js(doc)?$", 8 | "excludePattern": "(^|\\/|\\\\)_" 9 | }, 10 | "plugins": ["./jsdocs/jsdoc-plugin-values"], 11 | "templates": { 12 | "cleverLinks": true, 13 | "monospaceLinks": false 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /website/src/react-native/circle.yml: -------------------------------------------------------------------------------- 1 | general: 2 | branches: 3 | ignore: 4 | - gh-pages 5 | -------------------------------------------------------------------------------- /website/src/react-native/img/AddToBuildPhases.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/AddToBuildPhases.png -------------------------------------------------------------------------------- /website/src/react-native/img/AddToLibraries.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/AddToLibraries.png -------------------------------------------------------------------------------- /website/src/react-native/img/AddToSearchPaths.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/AddToSearchPaths.png -------------------------------------------------------------------------------- /website/src/react-native/img/AndroidAVDConfiguration.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/AndroidAVDConfiguration.png -------------------------------------------------------------------------------- /website/src/react-native/img/AndroidDevServerDialog.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/AndroidDevServerDialog.png -------------------------------------------------------------------------------- /website/src/react-native/img/AndroidDevSettings.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/AndroidDevSettings.png -------------------------------------------------------------------------------- /website/src/react-native/img/AndroidDeveloperMenu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/AndroidDeveloperMenu.png -------------------------------------------------------------------------------- /website/src/react-native/img/AndroidSDK1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/AndroidSDK1.png -------------------------------------------------------------------------------- /website/src/react-native/img/AndroidSDK2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/AndroidSDK2.png -------------------------------------------------------------------------------- /website/src/react-native/img/AndroidSDKManager.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/AndroidSDKManager.png -------------------------------------------------------------------------------- /website/src/react-native/img/AndroidSuccess.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/AndroidSuccess.png -------------------------------------------------------------------------------- /website/src/react-native/img/AnimatedFadeInView.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/AnimatedFadeInView.gif -------------------------------------------------------------------------------- /website/src/react-native/img/AnimationExperimentalOpacity.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/AnimationExperimentalOpacity.gif -------------------------------------------------------------------------------- /website/src/react-native/img/AnimationExperimentalScaleXY.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/AnimationExperimentalScaleXY.gif -------------------------------------------------------------------------------- /website/src/react-native/img/CreateAVD.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/CreateAVD.png -------------------------------------------------------------------------------- /website/src/react-native/img/DeveloperMenu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/DeveloperMenu.png -------------------------------------------------------------------------------- /website/src/react-native/img/EmbeddedAppAndroid.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/EmbeddedAppAndroid.png -------------------------------------------------------------------------------- /website/src/react-native/img/EmbeddedAppContainerViewExample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/EmbeddedAppContainerViewExample.png -------------------------------------------------------------------------------- /website/src/react-native/img/EmbeddedAppExample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/EmbeddedAppExample.png -------------------------------------------------------------------------------- /website/src/react-native/img/LayoutAnimationExample.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/LayoutAnimationExample.gif -------------------------------------------------------------------------------- /website/src/react-native/img/NavigationStack-Navigator.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/NavigationStack-Navigator.gif -------------------------------------------------------------------------------- /website/src/react-native/img/NavigationStack-NavigatorIOS.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/NavigationStack-NavigatorIOS.gif -------------------------------------------------------------------------------- /website/src/react-native/img/ObjectObserveError.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/ObjectObserveError.png -------------------------------------------------------------------------------- /website/src/react-native/img/Rebound.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/Rebound.gif -------------------------------------------------------------------------------- /website/src/react-native/img/ReboundExample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/ReboundExample.png -------------------------------------------------------------------------------- /website/src/react-native/img/ReboundImage.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/ReboundImage.gif -------------------------------------------------------------------------------- /website/src/react-native/img/StaticImageAssets.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/StaticImageAssets.png -------------------------------------------------------------------------------- /website/src/react-native/img/SystraceBadCreateUI.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/SystraceBadCreateUI.png -------------------------------------------------------------------------------- /website/src/react-native/img/SystraceBadJS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/SystraceBadJS.png -------------------------------------------------------------------------------- /website/src/react-native/img/SystraceBadJS2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/SystraceBadJS2.png -------------------------------------------------------------------------------- /website/src/react-native/img/SystraceBadUI.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/SystraceBadUI.png -------------------------------------------------------------------------------- /website/src/react-native/img/SystraceExample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/SystraceExample.png -------------------------------------------------------------------------------- /website/src/react-native/img/SystraceHighlightVSync.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/SystraceHighlightVSync.png -------------------------------------------------------------------------------- /website/src/react-native/img/SystraceJSThreadExample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/SystraceJSThreadExample.png -------------------------------------------------------------------------------- /website/src/react-native/img/SystraceNativeModulesThreadExample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/SystraceNativeModulesThreadExample.png -------------------------------------------------------------------------------- /website/src/react-native/img/SystraceRenderThreadExample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/SystraceRenderThreadExample.png -------------------------------------------------------------------------------- /website/src/react-native/img/SystraceUIThreadExample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/SystraceUIThreadExample.png -------------------------------------------------------------------------------- /website/src/react-native/img/SystraceWellBehaved.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/SystraceWellBehaved.png -------------------------------------------------------------------------------- /website/src/react-native/img/TutorialFinal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/TutorialFinal.png -------------------------------------------------------------------------------- /website/src/react-native/img/TutorialFinal2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/TutorialFinal2.png -------------------------------------------------------------------------------- /website/src/react-native/img/TutorialMock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/TutorialMock.png -------------------------------------------------------------------------------- /website/src/react-native/img/TutorialMock2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/TutorialMock2.png -------------------------------------------------------------------------------- /website/src/react-native/img/TutorialSingleFetched.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/TutorialSingleFetched.png -------------------------------------------------------------------------------- /website/src/react-native/img/TutorialSingleFetched2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/TutorialSingleFetched2.png -------------------------------------------------------------------------------- /website/src/react-native/img/TutorialStyledMock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/TutorialStyledMock.png -------------------------------------------------------------------------------- /website/src/react-native/img/TutorialStyledMock2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/TutorialStyledMock2.png -------------------------------------------------------------------------------- /website/src/react-native/img/TweenState.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/TweenState.gif -------------------------------------------------------------------------------- /website/src/react-native/img/Warning.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/Warning.png -------------------------------------------------------------------------------- /website/src/react-native/img/XcodeCommandLineTools.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/XcodeCommandLineTools.png -------------------------------------------------------------------------------- /website/src/react-native/img/alertIOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/alertIOS.png -------------------------------------------------------------------------------- /website/src/react-native/img/author.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/author.png -------------------------------------------------------------------------------- /website/src/react-native/img/buttonExample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/buttonExample.png -------------------------------------------------------------------------------- /website/src/react-native/img/chrome_breakpoint.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/chrome_breakpoint.png -------------------------------------------------------------------------------- /website/src/react-native/img/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/favicon.png -------------------------------------------------------------------------------- /website/src/react-native/img/header_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/header_logo.png -------------------------------------------------------------------------------- /website/src/react-native/img/iOSSuccess.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/iOSSuccess.png -------------------------------------------------------------------------------- /website/src/react-native/img/opengraph.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/opengraph.png -------------------------------------------------------------------------------- /website/src/react-native/img/oss_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/oss_logo.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-add-react-native-integration-example-high-scores.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-add-react-native-integration-example-high-scores.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-add-react-native-integration-example-home-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-add-react-native-integration-example-home-screen.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-add-react-native-integration-link.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-add-react-native-integration-link.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-add-react-native-integration-wire-up.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-add-react-native-integration-wire-up.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-android-sdk-environment-variable-windows.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-android-sdk-environment-variable-windows.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-android-studio-additional-installs-linux.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-android-studio-additional-installs-linux.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-android-studio-additional-installs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-android-studio-additional-installs.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-android-studio-android-sdk-build-tools-linux.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-android-studio-android-sdk-build-tools-linux.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-android-studio-android-sdk-build-tools-windows.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-android-studio-android-sdk-build-tools-windows.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-android-studio-android-sdk-build-tools.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-android-studio-android-sdk-build-tools.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-android-studio-android-sdk-platforms-linux.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-android-studio-android-sdk-platforms-linux.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-android-studio-android-sdk-platforms-windows.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-android-studio-android-sdk-platforms-windows.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-android-studio-android-sdk-platforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-android-studio-android-sdk-platforms.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-android-studio-avd-linux.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-android-studio-avd-linux.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-android-studio-avd-windows.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-android-studio-avd-windows.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-android-studio-avd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-android-studio-avd.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-android-studio-configure-sdk-linux.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-android-studio-configure-sdk-linux.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-android-studio-configure-sdk-windows.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-android-studio-configure-sdk-windows.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-android-studio-configure-sdk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-android-studio-configure-sdk.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-android-studio-custom-install-linux.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-android-studio-custom-install-linux.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-android-studio-custom-install-windows.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-android-studio-custom-install-windows.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-android-studio-custom-install.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-android-studio-custom-install.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-android-studio-kvm-linux.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-android-studio-kvm-linux.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-android-studio-no-virtual-device-windows.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-android-studio-no-virtual-device-windows.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-android-studio-verify-installs-windows.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-android-studio-verify-installs-windows.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-android-tools-environment-variable-windows.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-android-tools-environment-variable-windows.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-congratulations.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-congratulations.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-existing-app-integration-ios-before.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-existing-app-integration-ios-before.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-sdk-platforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-sdk-platforms.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-sorry-not-supported.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-sorry-not-supported.png -------------------------------------------------------------------------------- /website/src/react-native/img/react-native-tools-avd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/react-native-tools-avd.png -------------------------------------------------------------------------------- /website/src/react-native/img/search.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/search.png -------------------------------------------------------------------------------- /website/src/react-native/img/showcase/wmt_spark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/showcase/wmt_spark.png -------------------------------------------------------------------------------- /website/src/react-native/img/survey.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/survey.png -------------------------------------------------------------------------------- /website/src/react-native/img/uiexplorer_main_android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/uiexplorer_main_android.png -------------------------------------------------------------------------------- /website/src/react-native/img/uiexplorer_main_ios.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/airbnb/react-native/78acaa55a2b925c3248cdc4532b989b6a120a669/website/src/react-native/img/uiexplorer_main_ios.png -------------------------------------------------------------------------------- /website/src/react-native/movies.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "The Basics - Networking", 3 | "description": "Your app fetched this from a remote endpoint!", 4 | "movies": [ 5 | { "title": "Star Wars", "releaseYear": "1977"}, 6 | { "title": "Back to the Future", "releaseYear": "1985"}, 7 | { "title": "The Matrix", "releaseYear": "1999"}, 8 | { "title": "Inception", "releaseYear": "2010"}, 9 | { "title": "Interstellar", "releaseYear": "2014"} 10 | ] 11 | } 12 | --------------------------------------------------------------------------------