mirror of
				https://gitcode.com/gh_mirrors/re/react-native-pushy.git
				synced 2025-10-31 21:33:12 +08:00 
			
		
		
		
	update example to 0.71.1
This commit is contained in:
		| @@ -1,6 +0,0 @@ | |||||||
|  |  | ||||||
| [android] |  | ||||||
|   target = Google Inc.:Google APIs:23 |  | ||||||
|  |  | ||||||
| [maven_repositories] |  | ||||||
|   central = https://repo1.maven.org/maven2 |  | ||||||
| @@ -1,67 +0,0 @@ | |||||||
| [ignore] |  | ||||||
| ; We fork some components by platform |  | ||||||
| .*/*[.]android.js |  | ||||||
|  |  | ||||||
| ; Ignore "BUCK" generated dirs |  | ||||||
| <PROJECT_ROOT>/\.buckd/ |  | ||||||
|  |  | ||||||
| ; Ignore polyfills |  | ||||||
| node_modules/react-native/Libraries/polyfills/.* |  | ||||||
|  |  | ||||||
| ; Flow doesn't support platforms |  | ||||||
| .*/Libraries/Utilities/LoadingView.js |  | ||||||
|  |  | ||||||
| .*/node_modules/resolve/test/resolver/malformed_package_json/package\.json$ |  | ||||||
|  |  | ||||||
| [untyped] |  | ||||||
| .*/node_modules/@react-native-community/cli/.*/.* |  | ||||||
|  |  | ||||||
| [include] |  | ||||||
|  |  | ||||||
| [libs] |  | ||||||
| node_modules/react-native/interface.js |  | ||||||
| node_modules/react-native/flow/ |  | ||||||
|  |  | ||||||
| [options] |  | ||||||
| emoji=true |  | ||||||
|  |  | ||||||
| exact_by_default=true |  | ||||||
|  |  | ||||||
| format.bracket_spacing=false |  | ||||||
|  |  | ||||||
| module.file_ext=.js |  | ||||||
| module.file_ext=.json |  | ||||||
| module.file_ext=.ios.js |  | ||||||
|  |  | ||||||
| munge_underscores=true |  | ||||||
|  |  | ||||||
| module.name_mapper='^react-native/\(.*\)$' -> '<PROJECT_ROOT>/node_modules/react-native/\1' |  | ||||||
| module.name_mapper='^@?[./a-zA-Z0-9$_-]+\.\(bmp\|gif\|jpg\|jpeg\|png\|psd\|svg\|webp\|m4v\|mov\|mp4\|mpeg\|mpg\|webm\|aac\|aiff\|caf\|m4a\|mp3\|wav\|html\|pdf\)$' -> '<PROJECT_ROOT>/node_modules/react-native/Libraries/Image/RelativeImageStub' |  | ||||||
|  |  | ||||||
| suppress_type=$FlowIssue |  | ||||||
| suppress_type=$FlowFixMe |  | ||||||
| suppress_type=$FlowFixMeProps |  | ||||||
| suppress_type=$FlowFixMeState |  | ||||||
|  |  | ||||||
| [lints] |  | ||||||
| sketchy-null-number=warn |  | ||||||
| sketchy-null-mixed=warn |  | ||||||
| sketchy-number=warn |  | ||||||
| untyped-type-import=warn |  | ||||||
| nonstrict-import=warn |  | ||||||
| deprecated-type=warn |  | ||||||
| unsafe-getters-setters=warn |  | ||||||
| unnecessary-invariant=warn |  | ||||||
| signature-verification-failure=warn |  | ||||||
|  |  | ||||||
| [strict] |  | ||||||
| deprecated-type |  | ||||||
| nonstrict-import |  | ||||||
| sketchy-null |  | ||||||
| unclear-type |  | ||||||
| unsafe-getters-setters |  | ||||||
| untyped-import |  | ||||||
| untyped-type-import |  | ||||||
|  |  | ||||||
| [version] |  | ||||||
| ^0.170.0 |  | ||||||
							
								
								
									
										20
									
								
								Example/testHotUpdate/.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										20
									
								
								Example/testHotUpdate/.gitignore
									
									
									
									
										vendored
									
									
								
							| @@ -20,6 +20,7 @@ DerivedData | |||||||
| *.hmap | *.hmap | ||||||
| *.ipa | *.ipa | ||||||
| *.xcuserstate | *.xcuserstate | ||||||
|  | ios/.xcode.env.local | ||||||
|  |  | ||||||
| # Android/IntelliJ | # Android/IntelliJ | ||||||
| # | # | ||||||
| @@ -29,6 +30,9 @@ build/ | |||||||
| local.properties | local.properties | ||||||
| *.iml | *.iml | ||||||
| *.hprof | *.hprof | ||||||
|  | .cxx/ | ||||||
|  | *.keystore | ||||||
|  | !debug.keystore | ||||||
|  |  | ||||||
| # node.js | # node.js | ||||||
| # | # | ||||||
| @@ -36,12 +40,6 @@ node_modules/ | |||||||
| npm-debug.log | npm-debug.log | ||||||
| yarn-error.log | yarn-error.log | ||||||
|  |  | ||||||
| # BUCK |  | ||||||
| buck-out/ |  | ||||||
| \.buckd/ |  | ||||||
| *.keystore |  | ||||||
| !debug.keystore |  | ||||||
|  |  | ||||||
| # fastlane | # fastlane | ||||||
| # | # | ||||||
| # It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the | # It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the | ||||||
| @@ -49,9 +47,10 @@ buck-out/ | |||||||
| # For more information about the recommended setup visit: | # For more information about the recommended setup visit: | ||||||
| # https://docs.fastlane.tools/best-practices/source-control/ | # https://docs.fastlane.tools/best-practices/source-control/ | ||||||
|  |  | ||||||
| */fastlane/report.xml | **/fastlane/report.xml | ||||||
| */fastlane/Preview.html | **/fastlane/Preview.html | ||||||
| */fastlane/screenshots | **/fastlane/screenshots | ||||||
|  | **/fastlane/test_output | ||||||
|  |  | ||||||
| # Bundle artifact | # Bundle artifact | ||||||
| *.jsbundle | *.jsbundle | ||||||
| @@ -59,3 +58,6 @@ buck-out/ | |||||||
| # Ruby / CocoaPods | # Ruby / CocoaPods | ||||||
| /ios/Pods/ | /ios/Pods/ | ||||||
| /vendor/bundle/ | /vendor/bundle/ | ||||||
|  |  | ||||||
|  | # Temporary files created by Metro to check the health of the file watcher | ||||||
|  | .metro-health-check* | ||||||
| @@ -1 +1 @@ | |||||||
| 2.7.4 | 2.7.6 | ||||||
|   | |||||||
| @@ -1,112 +0,0 @@ | |||||||
| /** |  | ||||||
|  * Sample React Native App |  | ||||||
|  * https://github.com/facebook/react-native |  | ||||||
|  * |  | ||||||
|  * @format |  | ||||||
|  * @flow strict-local |  | ||||||
|  */ |  | ||||||
|  |  | ||||||
| import React from 'react'; |  | ||||||
| import type {Node} from 'react'; |  | ||||||
| import { |  | ||||||
|   SafeAreaView, |  | ||||||
|   ScrollView, |  | ||||||
|   StatusBar, |  | ||||||
|   StyleSheet, |  | ||||||
|   Text, |  | ||||||
|   useColorScheme, |  | ||||||
|   View, |  | ||||||
| } from 'react-native'; |  | ||||||
|  |  | ||||||
| import { |  | ||||||
|   Colors, |  | ||||||
|   DebugInstructions, |  | ||||||
|   Header, |  | ||||||
|   LearnMoreLinks, |  | ||||||
|   ReloadInstructions, |  | ||||||
| } from 'react-native/Libraries/NewAppScreen'; |  | ||||||
|  |  | ||||||
| const Section = ({children, title}): Node => { |  | ||||||
|   const isDarkMode = useColorScheme() === 'dark'; |  | ||||||
|   return ( |  | ||||||
|     <View style={styles.sectionContainer}> |  | ||||||
|       <Text |  | ||||||
|         style={[ |  | ||||||
|           styles.sectionTitle, |  | ||||||
|           { |  | ||||||
|             color: isDarkMode ? Colors.white : Colors.black, |  | ||||||
|           }, |  | ||||||
|         ]}> |  | ||||||
|         {title} |  | ||||||
|       </Text> |  | ||||||
|       <Text |  | ||||||
|         style={[ |  | ||||||
|           styles.sectionDescription, |  | ||||||
|           { |  | ||||||
|             color: isDarkMode ? Colors.light : Colors.dark, |  | ||||||
|           }, |  | ||||||
|         ]}> |  | ||||||
|         {children} |  | ||||||
|       </Text> |  | ||||||
|     </View> |  | ||||||
|   ); |  | ||||||
| }; |  | ||||||
|  |  | ||||||
| const App: () => Node = () => { |  | ||||||
|   const isDarkMode = useColorScheme() === 'dark'; |  | ||||||
|  |  | ||||||
|   const backgroundStyle = { |  | ||||||
|     backgroundColor: isDarkMode ? Colors.darker : Colors.lighter, |  | ||||||
|   }; |  | ||||||
|  |  | ||||||
|   return ( |  | ||||||
|     <SafeAreaView style={backgroundStyle}> |  | ||||||
|       <StatusBar barStyle={isDarkMode ? 'light-content' : 'dark-content'} /> |  | ||||||
|       <ScrollView |  | ||||||
|         contentInsetAdjustmentBehavior="automatic" |  | ||||||
|         style={backgroundStyle}> |  | ||||||
|         <Header /> |  | ||||||
|         <View |  | ||||||
|           style={{ |  | ||||||
|             backgroundColor: isDarkMode ? Colors.black : Colors.white, |  | ||||||
|           }}> |  | ||||||
|           <Section title="Step One"> |  | ||||||
|             Edit <Text style={styles.highlight}>App.js</Text> to change this |  | ||||||
|             screen and then come back to see your edits. |  | ||||||
|           </Section> |  | ||||||
|           <Section title="See Your Changes"> |  | ||||||
|             <ReloadInstructions /> |  | ||||||
|           </Section> |  | ||||||
|           <Section title="Debug"> |  | ||||||
|             <DebugInstructions /> |  | ||||||
|           </Section> |  | ||||||
|           <Section title="Learn More"> |  | ||||||
|             Read the docs to discover what to do next: |  | ||||||
|           </Section> |  | ||||||
|           <LearnMoreLinks /> |  | ||||||
|         </View> |  | ||||||
|       </ScrollView> |  | ||||||
|     </SafeAreaView> |  | ||||||
|   ); |  | ||||||
| }; |  | ||||||
|  |  | ||||||
| const styles = StyleSheet.create({ |  | ||||||
|   sectionContainer: { |  | ||||||
|     marginTop: 32, |  | ||||||
|     paddingHorizontal: 24, |  | ||||||
|   }, |  | ||||||
|   sectionTitle: { |  | ||||||
|     fontSize: 24, |  | ||||||
|     fontWeight: '600', |  | ||||||
|   }, |  | ||||||
|   sectionDescription: { |  | ||||||
|     marginTop: 8, |  | ||||||
|     fontSize: 18, |  | ||||||
|     fontWeight: '400', |  | ||||||
|   }, |  | ||||||
|   highlight: { |  | ||||||
|     fontWeight: '700', |  | ||||||
|   }, |  | ||||||
| }); |  | ||||||
|  |  | ||||||
| export default App; |  | ||||||
| @@ -1,6 +1,6 @@ | |||||||
| source 'https://rubygems.org' | source 'https://rubygems.org' | ||||||
|  |  | ||||||
| # You may use http://rbenv.org/ or https://rvm.io/ to install and use this version | # You may use http://rbenv.org/ or https://rvm.io/ to install and use this version | ||||||
| ruby '2.7.4' | ruby File.read(File.join(__dir__, '.ruby-version')).strip | ||||||
|  |  | ||||||
| gem 'cocoapods', '~> 1.11', '>= 1.11.2' | gem 'cocoapods', '~> 1.11', '>= 1.11.3' | ||||||
| @@ -1,106 +1,72 @@ | |||||||
| apply plugin: "com.android.application" | apply plugin: "com.android.application" | ||||||
|  | apply plugin: "com.facebook.react" | ||||||
|  |  | ||||||
| import com.android.build.OutputFile | import com.android.build.OutputFile | ||||||
| import org.apache.tools.ant.taskdefs.condition.Os |  | ||||||
|  |  | ||||||
| /** | /** | ||||||
|  * The react.gradle file registers a task for each build variant (e.g. bundleDebugJsAndAssets |  * This is the configuration block to customize your React Native Android app. | ||||||
|  * and bundleReleaseJsAndAssets). |  * By default you don't need to apply any configuration, just uncomment the lines you need. | ||||||
|  * These basically call `react-native bundle` with the correct arguments during the Android build |  | ||||||
|  * cycle. By default, bundleDebugJsAndAssets is skipped, as in debug/dev mode we prefer to load the |  | ||||||
|  * bundle directly from the development server. Below you can see all the possible configurations |  | ||||||
|  * and their defaults. If you decide to add a configuration block, make sure to add it before the |  | ||||||
|  * `apply from: "../../node_modules/react-native/react.gradle"` line. |  | ||||||
|  * |  | ||||||
|  * project.ext.react = [ |  | ||||||
|  *   // the name of the generated asset file containing your JS bundle |  | ||||||
|  *   bundleAssetName: "index.android.bundle", |  | ||||||
|  * |  | ||||||
|  *   // the entry file for bundle generation. If none specified and |  | ||||||
|  *   // "index.android.js" exists, it will be used. Otherwise "index.js" is |  | ||||||
|  *   // default. Can be overridden with ENTRY_FILE environment variable. |  | ||||||
|  *   entryFile: "index.android.js", |  | ||||||
|  * |  | ||||||
|  *   // https://reactnative.dev/docs/performance#enable-the-ram-format |  | ||||||
|  *   bundleCommand: "ram-bundle", |  | ||||||
|  * |  | ||||||
|  *   // whether to bundle JS and assets in debug mode |  | ||||||
|  *   bundleInDebug: false, |  | ||||||
|  * |  | ||||||
|  *   // whether to bundle JS and assets in release mode |  | ||||||
|  *   bundleInRelease: true, |  | ||||||
|  * |  | ||||||
|  *   // whether to bundle JS and assets in another build variant (if configured). |  | ||||||
|  *   // See http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Build-Variants |  | ||||||
|  *   // The configuration property can be in the following formats |  | ||||||
|  *   //         'bundleIn${productFlavor}${buildType}' |  | ||||||
|  *   //         'bundleIn${buildType}' |  | ||||||
|  *   // bundleInFreeDebug: true, |  | ||||||
|  *   // bundleInPaidRelease: true, |  | ||||||
|  *   // bundleInBeta: true, |  | ||||||
|  * |  | ||||||
|  *   // whether to disable dev mode in custom build variants (by default only disabled in release) |  | ||||||
|  *   // for example: to disable dev mode in the staging build type (if configured) |  | ||||||
|  *   devDisabledInStaging: true, |  | ||||||
|  *   // The configuration property can be in the following formats |  | ||||||
|  *   //         'devDisabledIn${productFlavor}${buildType}' |  | ||||||
|  *   //         'devDisabledIn${buildType}' |  | ||||||
|  * |  | ||||||
|  *   // the root of your project, i.e. where "package.json" lives |  | ||||||
|  *   root: "../../", |  | ||||||
|  * |  | ||||||
|  *   // where to put the JS bundle asset in debug mode |  | ||||||
|  *   jsBundleDirDebug: "$buildDir/intermediates/assets/debug", |  | ||||||
|  * |  | ||||||
|  *   // where to put the JS bundle asset in release mode |  | ||||||
|  *   jsBundleDirRelease: "$buildDir/intermediates/assets/release", |  | ||||||
|  * |  | ||||||
|  *   // where to put drawable resources / React Native assets, e.g. the ones you use via |  | ||||||
|  *   // require('./image.png')), in debug mode |  | ||||||
|  *   resourcesDirDebug: "$buildDir/intermediates/res/merged/debug", |  | ||||||
|  * |  | ||||||
|  *   // where to put drawable resources / React Native assets, e.g. the ones you use via |  | ||||||
|  *   // require('./image.png')), in release mode |  | ||||||
|  *   resourcesDirRelease: "$buildDir/intermediates/res/merged/release", |  | ||||||
|  * |  | ||||||
|  *   // by default the gradle tasks are skipped if none of the JS files or assets change; this means |  | ||||||
|  *   // that we don't look at files in android/ or ios/ to determine whether the tasks are up to |  | ||||||
|  *   // date; if you have any other folders that you want to ignore for performance reasons (gradle |  | ||||||
|  *   // indexes the entire tree), add them here. Alternatively, if you have JS files in android/ |  | ||||||
|  *   // for example, you might want to remove it from here. |  | ||||||
|  *   inputExcludes: ["android/**", "ios/**"], |  | ||||||
|  * |  | ||||||
|  *   // override which node gets called and with what additional arguments |  | ||||||
|  *   nodeExecutableAndArgs: ["node"], |  | ||||||
|  * |  | ||||||
|  *   // supply additional arguments to the packager |  | ||||||
|  *   extraPackagerArgs: [] |  | ||||||
|  * ] |  | ||||||
|  */ |  */ | ||||||
|  | react { | ||||||
|  |     /* Folders */ | ||||||
|  |     //   The root of your project, i.e. where "package.json" lives. Default is '..' | ||||||
|  |     // root = file("../") | ||||||
|  |     //   The folder where the react-native NPM package is. Default is ../node_modules/react-native | ||||||
|  |     // reactNativeDir = file("../node_modules/react-native") | ||||||
|  |     //   The folder where the react-native Codegen package is. Default is ../node_modules/react-native-codegen | ||||||
|  |     // codegenDir = file("../node_modules/react-native-codegen") | ||||||
|  |     //   The cli.js file which is the React Native CLI entrypoint. Default is ../node_modules/react-native/cli.js | ||||||
|  |     // cliFile = file("../node_modules/react-native/cli.js") | ||||||
|  |  | ||||||
| project.ext.react = [ |     /* Variants */ | ||||||
|     enableHermes: false,  // clean and rebuild if changing |     //   The list of variants to that are debuggable. For those we're going to | ||||||
| ] |     //   skip the bundling of the JS bundle and the assets. By default is just 'debug'. | ||||||
|  |     //   If you add flavors like lite, prod, etc. you'll have to list your debuggableVariants. | ||||||
|  |     // debuggableVariants = ["liteDebug", "prodDebug"] | ||||||
|  |  | ||||||
| apply from: "../../node_modules/react-native/react.gradle" |     /* Bundling */ | ||||||
|  |     //   A list containing the node command and its flags. Default is just 'node'. | ||||||
|  |     // nodeExecutableAndArgs = ["node"] | ||||||
|  |     // | ||||||
|  |     //   The command to run when bundling. By default is 'bundle' | ||||||
|  |     // bundleCommand = "ram-bundle" | ||||||
|  |     // | ||||||
|  |     //   The path to the CLI configuration file. Default is empty. | ||||||
|  |     // bundleConfig = file(../rn-cli.config.js) | ||||||
|  |     // | ||||||
|  |     //   The name of the generated asset file containing your JS bundle | ||||||
|  |     // bundleAssetName = "MyApplication.android.bundle" | ||||||
|  |     // | ||||||
|  |     //   The entry file for bundle generation. Default is 'index.android.js' or 'index.js' | ||||||
|  |     // entryFile = file("../js/MyApplication.android.js") | ||||||
|  |     // | ||||||
|  |     //   A list of extra flags to pass to the 'bundle' commands. | ||||||
|  |     //   See https://github.com/react-native-community/cli/blob/main/docs/commands.md#bundle | ||||||
|  |     // extraPackagerArgs = [] | ||||||
|  |  | ||||||
|  |     /* Hermes Commands */ | ||||||
|  |     //   The hermes compiler command to run. By default it is 'hermesc' | ||||||
|  |     // hermesCommand = "$rootDir/my-custom-hermesc/bin/hermesc" | ||||||
|  |     // | ||||||
|  |     //   The list of flags to pass to the Hermes compiler. By default is "-O", "-output-source-map" | ||||||
|  |     // hermesFlags = ["-O", "-output-source-map"] | ||||||
|  | } | ||||||
|  |  | ||||||
| /** | /** | ||||||
|  * Set this to true to create two separate APKs instead of one: |  * Set this to true to create four separate APKs instead of one, | ||||||
|  *   - An APK that only works on ARM devices |  * one for each native architecture. This is useful if you don't | ||||||
|  *   - An APK that only works on x86 devices |  * use App Bundles (https://developer.android.com/guide/app-bundle/) | ||||||
|  * The advantage is the size of the APK is reduced by about 4MB. |  * and want to have separate APKs to upload to the Play Store. | ||||||
|  * Upload all the APKs to the Play Store and people will download |  | ||||||
|  * the correct one based on the CPU architecture of their device. |  | ||||||
|  */ |  */ | ||||||
| def enableSeparateBuildPerCPUArchitecture = false | def enableSeparateBuildPerCPUArchitecture = false | ||||||
|  |  | ||||||
| /** | /** | ||||||
|  * Run Proguard to shrink the Java bytecode in release builds. |  * Set this to true to Run Proguard on Release builds to minify the Java bytecode. | ||||||
|  */ |  */ | ||||||
| def enableProguardInReleaseBuilds = false | def enableProguardInReleaseBuilds = false | ||||||
|  |  | ||||||
| /** | /** | ||||||
|  * The preferred build flavor of JavaScriptCore. |  * The preferred build flavor of JavaScriptCore (JSC) | ||||||
|  * |  * | ||||||
|  * For example, to use the international variant, you can use: |  * For example, to use the international variant, you can use: | ||||||
|  * `def jscFlavor = 'org.webkit:android-jsc-intl:+'` |  * `def jscFlavor = 'org.webkit:android-jsc-intl:+'` | ||||||
| @@ -113,16 +79,9 @@ def enableProguardInReleaseBuilds = false | |||||||
| def jscFlavor = 'org.webkit:android-jsc:+' | def jscFlavor = 'org.webkit:android-jsc:+' | ||||||
|  |  | ||||||
| /** | /** | ||||||
|  * Whether to enable the Hermes VM. |  * Private function to get the list of Native Architectures you want to build. | ||||||
|  * |  * This reads the value from reactNativeArchitectures in your gradle.properties | ||||||
|  * This should be set on project.ext.react and that value will be read here. If it is not set |  * file and works together with the --active-arch-only flag of react-native run-android. | ||||||
|  * on project.ext.react, JavaScript will not be compiled to Hermes Bytecode |  | ||||||
|  * and the benefits of using Hermes will therefore be sharply reduced. |  | ||||||
|  */ |  | ||||||
| def enableHermes = project.ext.react.get("enableHermes", false); |  | ||||||
|  |  | ||||||
| /** |  | ||||||
|  * Architectures to build native code for. |  | ||||||
|  */ |  */ | ||||||
| def reactNativeArchitectures() { | def reactNativeArchitectures() { | ||||||
|     def value = project.getProperties().get("reactNativeArchitectures") |     def value = project.getProperties().get("reactNativeArchitectures") | ||||||
| @@ -134,83 +93,13 @@ android { | |||||||
|  |  | ||||||
|     compileSdkVersion rootProject.ext.compileSdkVersion |     compileSdkVersion rootProject.ext.compileSdkVersion | ||||||
|  |  | ||||||
|  |     namespace "com.testhotupdate" | ||||||
|     defaultConfig { |     defaultConfig { | ||||||
|         applicationId "com.testhotupdate" |         applicationId "com.testhotupdate" | ||||||
|         minSdkVersion rootProject.ext.minSdkVersion |         minSdkVersion rootProject.ext.minSdkVersion | ||||||
|         targetSdkVersion rootProject.ext.targetSdkVersion |         targetSdkVersion rootProject.ext.targetSdkVersion | ||||||
|         versionCode 1 |         versionCode 1 | ||||||
|         versionName "1.0" |         versionName "1.0" | ||||||
|         buildConfigField "boolean", "IS_NEW_ARCHITECTURE_ENABLED", isNewArchitectureEnabled().toString() |  | ||||||
|  |  | ||||||
|         if (isNewArchitectureEnabled()) { |  | ||||||
|             // We configure the NDK build only if you decide to opt-in for the New Architecture. |  | ||||||
|             externalNativeBuild { |  | ||||||
|                 ndkBuild { |  | ||||||
|                     arguments "APP_PLATFORM=android-21", |  | ||||||
|                         "APP_STL=c++_shared", |  | ||||||
|                         "NDK_TOOLCHAIN_VERSION=clang", |  | ||||||
|                         "GENERATED_SRC_DIR=$buildDir/generated/source", |  | ||||||
|                         "PROJECT_BUILD_DIR=$buildDir", |  | ||||||
|                         "REACT_ANDROID_DIR=$rootDir/../node_modules/react-native/ReactAndroid", |  | ||||||
|                         "REACT_ANDROID_BUILD_DIR=$rootDir/../node_modules/react-native/ReactAndroid/build" |  | ||||||
|                     cFlags "-Wall", "-Werror", "-fexceptions", "-frtti", "-DWITH_INSPECTOR=1" |  | ||||||
|                     cppFlags "-std=c++17" |  | ||||||
|                     // Make sure this target name is the same you specify inside the |  | ||||||
|                     // src/main/jni/Android.mk file for the `LOCAL_MODULE` variable. |  | ||||||
|                     targets "testhotupdate_appmodules" |  | ||||||
|                     // Fix for windows limit on number of character in file paths and in command lines |  | ||||||
|                     if (Os.isFamily(Os.FAMILY_WINDOWS)) { |  | ||||||
|                         arguments "NDK_APP_SHORT_COMMANDS=true" |  | ||||||
|                     } |  | ||||||
|                 } |  | ||||||
|             } |  | ||||||
|             if (!enableSeparateBuildPerCPUArchitecture) { |  | ||||||
|                 ndk { |  | ||||||
|                     abiFilters (*reactNativeArchitectures()) |  | ||||||
|                 } |  | ||||||
|             } |  | ||||||
|         } |  | ||||||
|     } |  | ||||||
|  |  | ||||||
|     if (isNewArchitectureEnabled()) { |  | ||||||
|         // We configure the NDK build only if you decide to opt-in for the New Architecture. |  | ||||||
|         externalNativeBuild { |  | ||||||
|             ndkBuild { |  | ||||||
|                 path "$projectDir/src/main/jni/Android.mk" |  | ||||||
|             } |  | ||||||
|         } |  | ||||||
|         def reactAndroidProjectDir = project(':ReactAndroid').projectDir |  | ||||||
|         def packageReactNdkDebugLibs = tasks.register("packageReactNdkDebugLibs", Copy) { |  | ||||||
|             dependsOn(":ReactAndroid:packageReactNdkDebugLibsForBuck") |  | ||||||
|             from("$reactAndroidProjectDir/src/main/jni/prebuilt/lib") |  | ||||||
|             into("$buildDir/react-ndk/exported") |  | ||||||
|         } |  | ||||||
|         def packageReactNdkReleaseLibs = tasks.register("packageReactNdkReleaseLibs", Copy) { |  | ||||||
|             dependsOn(":ReactAndroid:packageReactNdkReleaseLibsForBuck") |  | ||||||
|             from("$reactAndroidProjectDir/src/main/jni/prebuilt/lib") |  | ||||||
|             into("$buildDir/react-ndk/exported") |  | ||||||
|         } |  | ||||||
|         afterEvaluate { |  | ||||||
|             // If you wish to add a custom TurboModule or component locally, |  | ||||||
|             // you should uncomment this line. |  | ||||||
|             // preBuild.dependsOn("generateCodegenArtifactsFromSchema") |  | ||||||
|             preDebugBuild.dependsOn(packageReactNdkDebugLibs) |  | ||||||
|             preReleaseBuild.dependsOn(packageReactNdkReleaseLibs) |  | ||||||
|  |  | ||||||
|             // Due to a bug inside AGP, we have to explicitly set a dependency |  | ||||||
|             // between configureNdkBuild* tasks and the preBuild tasks. |  | ||||||
|             // This can be removed once this is solved: https://issuetracker.google.com/issues/207403732 |  | ||||||
|             configureNdkBuildRelease.dependsOn(preReleaseBuild) |  | ||||||
|             configureNdkBuildDebug.dependsOn(preDebugBuild) |  | ||||||
|             reactNativeArchitectures().each { architecture -> |  | ||||||
|                 tasks.findByName("configureNdkBuildDebug[${architecture}]")?.configure { |  | ||||||
|                     dependsOn("preDebugBuild") |  | ||||||
|                 } |  | ||||||
|                 tasks.findByName("configureNdkBuildRelease[${architecture}]")?.configure { |  | ||||||
|                     dependsOn("preReleaseBuild") |  | ||||||
|                 } |  | ||||||
|             } |  | ||||||
|         } |  | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     splits { |     splits { | ||||||
| @@ -260,60 +149,22 @@ android { | |||||||
| } | } | ||||||
|  |  | ||||||
| dependencies { | dependencies { | ||||||
|     implementation fileTree(dir: "libs", include: ["*.jar"]) |     // The version of react-native is set by the React Native Gradle Plugin | ||||||
|  |     implementation("com.facebook.react:react-android") | ||||||
|  |  | ||||||
|     //noinspection GradleDynamicVersion |     implementation("androidx.swiperefreshlayout:swiperefreshlayout:1.0.0") | ||||||
|     implementation "com.facebook.react:react-native:+"  // From node_modules |  | ||||||
|  |  | ||||||
|     implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.0.0" |  | ||||||
|  |  | ||||||
|     debugImplementation("com.facebook.flipper:flipper:${FLIPPER_VERSION}") { |  | ||||||
|         exclude group:'com.facebook.fbjni' |  | ||||||
|     } |  | ||||||
|  |  | ||||||
|  |     debugImplementation("com.facebook.flipper:flipper:${FLIPPER_VERSION}") | ||||||
|     debugImplementation("com.facebook.flipper:flipper-network-plugin:${FLIPPER_VERSION}") { |     debugImplementation("com.facebook.flipper:flipper-network-plugin:${FLIPPER_VERSION}") { | ||||||
|         exclude group:'com.facebook.flipper' |  | ||||||
|         exclude group:'com.squareup.okhttp3', module:'okhttp' |         exclude group:'com.squareup.okhttp3', module:'okhttp' | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     debugImplementation("com.facebook.flipper:flipper-fresco-plugin:${FLIPPER_VERSION}") { |     debugImplementation("com.facebook.flipper:flipper-fresco-plugin:${FLIPPER_VERSION}") | ||||||
|         exclude group:'com.facebook.flipper' |     if (hermesEnabled.toBoolean()) { | ||||||
|     } |         implementation("com.facebook.react:hermes-android") | ||||||
|  |  | ||||||
|     if (enableHermes) { |  | ||||||
|         def hermesPath = "../../node_modules/hermes-engine/android/"; |  | ||||||
|         debugImplementation files(hermesPath + "hermes-debug.aar") |  | ||||||
|         releaseImplementation files(hermesPath + "hermes-release.aar") |  | ||||||
|     } else { |     } else { | ||||||
|         implementation jscFlavor |         implementation jscFlavor | ||||||
|     } |     } | ||||||
| } | } | ||||||
|  |  | ||||||
| if (isNewArchitectureEnabled()) { |  | ||||||
|     // If new architecture is enabled, we let you build RN from source |  | ||||||
|     // Otherwise we fallback to a prebuilt .aar bundled in the NPM package. |  | ||||||
|     // This will be applied to all the imported transtitive dependency. |  | ||||||
|     configurations.all { |  | ||||||
|         resolutionStrategy.dependencySubstitution { |  | ||||||
|             substitute(module("com.facebook.react:react-native")) |  | ||||||
|                     .using(project(":ReactAndroid")).because("On New Architecture we're building React Native from source") |  | ||||||
|         } |  | ||||||
|     } |  | ||||||
| } |  | ||||||
|  |  | ||||||
| // Run this once to be able to run the application with BUCK |  | ||||||
| // puts all compile dependencies into folder libs for BUCK to use |  | ||||||
| task copyDownloadableDepsToLibs(type: Copy) { |  | ||||||
|     from configurations.implementation |  | ||||||
|     into 'libs' |  | ||||||
| } |  | ||||||
|  |  | ||||||
| apply from: file("../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesAppBuildGradle(project) | apply from: file("../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesAppBuildGradle(project) | ||||||
|  |  | ||||||
| def isNewArchitectureEnabled() { |  | ||||||
|     // To opt-in for the New Architecture, you can either: |  | ||||||
|     // - Set `newArchEnabled` to true inside the `gradle.properties` file |  | ||||||
|     // - Invoke gradle with `-newArchEnabled=true` |  | ||||||
|     // - Set an environment variable `ORG_GRADLE_PROJECT_newArchEnabled=true` |  | ||||||
|     return project.hasProperty("newArchEnabled") && project.newArchEnabled == "true" |  | ||||||
| } |  | ||||||
|   | |||||||
| @@ -1,19 +0,0 @@ | |||||||
| """Helper definitions to glob .aar and .jar targets""" |  | ||||||
|  |  | ||||||
| def create_aar_targets(aarfiles): |  | ||||||
|     for aarfile in aarfiles: |  | ||||||
|         name = "aars__" + aarfile[aarfile.rindex("/") + 1:aarfile.rindex(".aar")] |  | ||||||
|         lib_deps.append(":" + name) |  | ||||||
|         android_prebuilt_aar( |  | ||||||
|             name = name, |  | ||||||
|             aar = aarfile, |  | ||||||
|         ) |  | ||||||
|  |  | ||||||
| def create_jar_targets(jarfiles): |  | ||||||
|     for jarfile in jarfiles: |  | ||||||
|         name = "jars__" + jarfile[jarfile.rindex("/") + 1:jarfile.rindex(".jar")] |  | ||||||
|         lib_deps.append(":" + name) |  | ||||||
|         prebuilt_jar( |  | ||||||
|             name = name, |  | ||||||
|             binary_jar = jarfile, |  | ||||||
|         ) |  | ||||||
| @@ -17,7 +17,6 @@ import com.facebook.flipper.plugins.inspector.DescriptorMapping; | |||||||
| import com.facebook.flipper.plugins.inspector.InspectorFlipperPlugin; | import com.facebook.flipper.plugins.inspector.InspectorFlipperPlugin; | ||||||
| import com.facebook.flipper.plugins.network.FlipperOkhttpInterceptor; | import com.facebook.flipper.plugins.network.FlipperOkhttpInterceptor; | ||||||
| import com.facebook.flipper.plugins.network.NetworkFlipperPlugin; | import com.facebook.flipper.plugins.network.NetworkFlipperPlugin; | ||||||
| import com.facebook.flipper.plugins.react.ReactFlipperPlugin; |  | ||||||
| import com.facebook.flipper.plugins.sharedpreferences.SharedPreferencesFlipperPlugin; | import com.facebook.flipper.plugins.sharedpreferences.SharedPreferencesFlipperPlugin; | ||||||
| import com.facebook.react.ReactInstanceEventListener; | import com.facebook.react.ReactInstanceEventListener; | ||||||
| import com.facebook.react.ReactInstanceManager; | import com.facebook.react.ReactInstanceManager; | ||||||
| @@ -25,13 +24,16 @@ import com.facebook.react.bridge.ReactContext; | |||||||
| import com.facebook.react.modules.network.NetworkingModule; | import com.facebook.react.modules.network.NetworkingModule; | ||||||
| import okhttp3.OkHttpClient; | import okhttp3.OkHttpClient; | ||||||
|  |  | ||||||
|  | /** | ||||||
|  |  * Class responsible of loading Flipper inside your React Native application. This is the debug | ||||||
|  |  * flavor of it. Here you can add your own plugins and customize the Flipper setup. | ||||||
|  |  */ | ||||||
| public class ReactNativeFlipper { | public class ReactNativeFlipper { | ||||||
|   public static void initializeFlipper(Context context, ReactInstanceManager reactInstanceManager) { |   public static void initializeFlipper(Context context, ReactInstanceManager reactInstanceManager) { | ||||||
|     if (FlipperUtils.shouldEnableFlipper(context)) { |     if (FlipperUtils.shouldEnableFlipper(context)) { | ||||||
|       final FlipperClient client = AndroidFlipperClient.getInstance(context); |       final FlipperClient client = AndroidFlipperClient.getInstance(context); | ||||||
|  |  | ||||||
|       client.addPlugin(new InspectorFlipperPlugin(context, DescriptorMapping.withDefaults())); |       client.addPlugin(new InspectorFlipperPlugin(context, DescriptorMapping.withDefaults())); | ||||||
|       client.addPlugin(new ReactFlipperPlugin()); |  | ||||||
|       client.addPlugin(new DatabasesFlipperPlugin(context)); |       client.addPlugin(new DatabasesFlipperPlugin(context)); | ||||||
|       client.addPlugin(new SharedPreferencesFlipperPlugin(context)); |       client.addPlugin(new SharedPreferencesFlipperPlugin(context)); | ||||||
|       client.addPlugin(CrashReporterPlugin.getInstance()); |       client.addPlugin(CrashReporterPlugin.getInstance()); | ||||||
|   | |||||||
| @@ -1,5 +1,4 @@ | |||||||
| <manifest xmlns:android="http://schemas.android.com/apk/res/android" | <manifest xmlns:android="http://schemas.android.com/apk/res/android"> | ||||||
|   package="com.testhotupdate"> |  | ||||||
|  |  | ||||||
|     <uses-permission android:name="android.permission.INTERNET" /> |     <uses-permission android:name="android.permission.INTERNET" /> | ||||||
|  |  | ||||||
|   | |||||||
| @@ -2,7 +2,8 @@ package com.testhotupdate; | |||||||
|  |  | ||||||
| import com.facebook.react.ReactActivity; | import com.facebook.react.ReactActivity; | ||||||
| import com.facebook.react.ReactActivityDelegate; | import com.facebook.react.ReactActivityDelegate; | ||||||
| import com.facebook.react.ReactRootView; | import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint; | ||||||
|  | import com.facebook.react.defaults.DefaultReactActivityDelegate; | ||||||
|  |  | ||||||
| public class MainActivity extends ReactActivity { | public class MainActivity extends ReactActivity { | ||||||
|  |  | ||||||
| @@ -16,25 +17,19 @@ public class MainActivity extends ReactActivity { | |||||||
|   } |   } | ||||||
|  |  | ||||||
|   /** |   /** | ||||||
|    * Returns the instance of the {@link ReactActivityDelegate}. There the RootView is created and |    * Returns the instance of the {@link ReactActivityDelegate}. Here we use a util class {@link | ||||||
|    * you can specify the rendered you wish to use (Fabric or the older renderer). |    * DefaultReactActivityDelegate} which allows you to easily enable Fabric and Concurrent React | ||||||
|  |    * (aka React 18) with two boolean flags. | ||||||
|    */ |    */ | ||||||
|   @Override |   @Override | ||||||
|   protected ReactActivityDelegate createReactActivityDelegate() { |   protected ReactActivityDelegate createReactActivityDelegate() { | ||||||
|     return new MainActivityDelegate(this, getMainComponentName()); |     return new DefaultReactActivityDelegate( | ||||||
|   } |         this, | ||||||
|  |         getMainComponentName(), | ||||||
|   public static class MainActivityDelegate extends ReactActivityDelegate { |  | ||||||
|     public MainActivityDelegate(ReactActivity activity, String mainComponentName) { |  | ||||||
|       super(activity, mainComponentName); |  | ||||||
|     } |  | ||||||
|  |  | ||||||
|     @Override |  | ||||||
|     protected ReactRootView createRootView() { |  | ||||||
|       ReactRootView reactRootView = new ReactRootView(getContext()); |  | ||||||
|         // If you opted-in for the New Architecture, we enable the Fabric Renderer. |         // If you opted-in for the New Architecture, we enable the Fabric Renderer. | ||||||
|       reactRootView.setIsFabric(BuildConfig.IS_NEW_ARCHITECTURE_ENABLED); |         DefaultNewArchitectureEntryPoint.getFabricEnabled(), // fabricEnabled | ||||||
|       return reactRootView; |         // If you opted-in for the New Architecture, we enable Concurrent React (i.e. React 18). | ||||||
|     } |         DefaultNewArchitectureEntryPoint.getConcurrentReactEnabled() // concurrentRootEnabled | ||||||
|  |         ); | ||||||
|   } |   } | ||||||
| } | } | ||||||
|   | |||||||
| @@ -1,22 +1,19 @@ | |||||||
| package com.testhotupdate; | package com.testhotupdate; | ||||||
|  |  | ||||||
| import android.app.Application; | import android.app.Application; | ||||||
| import android.content.Context; |  | ||||||
| import com.facebook.react.PackageList; | import com.facebook.react.PackageList; | ||||||
| import com.facebook.react.ReactApplication; | import com.facebook.react.ReactApplication; | ||||||
| import com.facebook.react.ReactInstanceManager; |  | ||||||
| import com.facebook.react.ReactNativeHost; | import com.facebook.react.ReactNativeHost; | ||||||
| import com.facebook.react.ReactPackage; | import com.facebook.react.ReactPackage; | ||||||
| import com.facebook.react.config.ReactFeatureFlags; | import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint; | ||||||
|  | import com.facebook.react.defaults.DefaultReactNativeHost; | ||||||
| import com.facebook.soloader.SoLoader; | import com.facebook.soloader.SoLoader; | ||||||
| import com.testhotupdate.newarchitecture.MainApplicationReactNativeHost; |  | ||||||
| import java.lang.reflect.InvocationTargetException; |  | ||||||
| import java.util.List; | import java.util.List; | ||||||
|  | import cn.reactnative.modules.update.UpdateContext; | ||||||
| public class MainApplication extends Application implements ReactApplication { | public class MainApplication extends Application implements ReactApplication { | ||||||
|  |  | ||||||
|   private final ReactNativeHost mReactNativeHost = |   private final ReactNativeHost mReactNativeHost = | ||||||
|       new ReactNativeHost(this) { |       new DefaultReactNativeHost(this) { | ||||||
|         @Override |         @Override | ||||||
|         protected String getJSBundleFile() { |         protected String getJSBundleFile() { | ||||||
|             return UpdateContext.getBundleUrl(MainApplication.this); |             return UpdateContext.getBundleUrl(MainApplication.this); | ||||||
| @@ -40,57 +37,31 @@ public class MainApplication extends Application implements ReactApplication { | |||||||
|         protected String getJSMainModuleName() { |         protected String getJSMainModuleName() { | ||||||
|           return "index"; |           return "index"; | ||||||
|         } |         } | ||||||
|       }; |  | ||||||
|  |  | ||||||
|   private final ReactNativeHost mNewArchitectureNativeHost = |         @Override | ||||||
|       new MainApplicationReactNativeHost(this); |         protected boolean isNewArchEnabled() { | ||||||
|  |           return BuildConfig.IS_NEW_ARCHITECTURE_ENABLED; | ||||||
|  |         } | ||||||
|  |  | ||||||
|  |         @Override | ||||||
|  |         protected Boolean isHermesEnabled() { | ||||||
|  |           return BuildConfig.IS_HERMES_ENABLED; | ||||||
|  |         } | ||||||
|  |       }; | ||||||
|  |  | ||||||
|   @Override |   @Override | ||||||
|   public ReactNativeHost getReactNativeHost() { |   public ReactNativeHost getReactNativeHost() { | ||||||
|     if (BuildConfig.IS_NEW_ARCHITECTURE_ENABLED) { |  | ||||||
|       return mNewArchitectureNativeHost; |  | ||||||
|     } else { |  | ||||||
|     return mReactNativeHost; |     return mReactNativeHost; | ||||||
|   } |   } | ||||||
|   } |  | ||||||
|  |  | ||||||
|   @Override |   @Override | ||||||
|   public void onCreate() { |   public void onCreate() { | ||||||
|     super.onCreate(); |     super.onCreate(); | ||||||
|     // If you opted-in for the New Architecture, we enable the TurboModule system |  | ||||||
|     ReactFeatureFlags.useTurboModules = BuildConfig.IS_NEW_ARCHITECTURE_ENABLED; |  | ||||||
|     SoLoader.init(this, /* native exopackage */ false); |     SoLoader.init(this, /* native exopackage */ false); | ||||||
|     initializeFlipper(this, getReactNativeHost().getReactInstanceManager()); |     if (BuildConfig.IS_NEW_ARCHITECTURE_ENABLED) { | ||||||
|   } |       // If you opted-in for the New Architecture, we load the native entry point for this app. | ||||||
|  |       DefaultNewArchitectureEntryPoint.load(); | ||||||
|   /** |  | ||||||
|    * Loads Flipper in React Native templates. Call this in the onCreate method with something like |  | ||||||
|    * initializeFlipper(this, getReactNativeHost().getReactInstanceManager()); |  | ||||||
|    * |  | ||||||
|    * @param context |  | ||||||
|    * @param reactInstanceManager |  | ||||||
|    */ |  | ||||||
|   private static void initializeFlipper( |  | ||||||
|       Context context, ReactInstanceManager reactInstanceManager) { |  | ||||||
|     if (BuildConfig.DEBUG) { |  | ||||||
|       try { |  | ||||||
|         /* |  | ||||||
|          We use reflection here to pick up the class that initializes Flipper, |  | ||||||
|         since Flipper library is not available in release mode |  | ||||||
|         */ |  | ||||||
|         Class<?> aClass = Class.forName("com.testhotupdate.ReactNativeFlipper"); |  | ||||||
|         aClass |  | ||||||
|             .getMethod("initializeFlipper", Context.class, ReactInstanceManager.class) |  | ||||||
|             .invoke(null, context, reactInstanceManager); |  | ||||||
|       } catch (ClassNotFoundException e) { |  | ||||||
|         e.printStackTrace(); |  | ||||||
|       } catch (NoSuchMethodException e) { |  | ||||||
|         e.printStackTrace(); |  | ||||||
|       } catch (IllegalAccessException e) { |  | ||||||
|         e.printStackTrace(); |  | ||||||
|       } catch (InvocationTargetException e) { |  | ||||||
|         e.printStackTrace(); |  | ||||||
|       } |  | ||||||
|     } |     } | ||||||
|  |     ReactNativeFlipper.initializeFlipper(this, getReactNativeHost().getReactInstanceManager()); | ||||||
|   } |   } | ||||||
| } | } | ||||||
| @@ -1,116 +0,0 @@ | |||||||
| package com.testhotupdate.newarchitecture; |  | ||||||
|  |  | ||||||
| import android.app.Application; |  | ||||||
| import androidx.annotation.NonNull; |  | ||||||
| import com.facebook.react.PackageList; |  | ||||||
| import com.facebook.react.ReactInstanceManager; |  | ||||||
| import com.facebook.react.ReactNativeHost; |  | ||||||
| import com.facebook.react.ReactPackage; |  | ||||||
| import com.facebook.react.ReactPackageTurboModuleManagerDelegate; |  | ||||||
| import com.facebook.react.bridge.JSIModulePackage; |  | ||||||
| import com.facebook.react.bridge.JSIModuleProvider; |  | ||||||
| import com.facebook.react.bridge.JSIModuleSpec; |  | ||||||
| import com.facebook.react.bridge.JSIModuleType; |  | ||||||
| import com.facebook.react.bridge.JavaScriptContextHolder; |  | ||||||
| import com.facebook.react.bridge.ReactApplicationContext; |  | ||||||
| import com.facebook.react.bridge.UIManager; |  | ||||||
| import com.facebook.react.fabric.ComponentFactory; |  | ||||||
| import com.facebook.react.fabric.CoreComponentsRegistry; |  | ||||||
| import com.facebook.react.fabric.EmptyReactNativeConfig; |  | ||||||
| import com.facebook.react.fabric.FabricJSIModuleProvider; |  | ||||||
| import com.facebook.react.uimanager.ViewManagerRegistry; |  | ||||||
| import com.testhotupdate.BuildConfig; |  | ||||||
| import com.testhotupdate.newarchitecture.components.MainComponentsRegistry; |  | ||||||
| import com.testhotupdate.newarchitecture.modules.MainApplicationTurboModuleManagerDelegate; |  | ||||||
| import java.util.ArrayList; |  | ||||||
| import java.util.List; |  | ||||||
|  |  | ||||||
| /** |  | ||||||
|  * A {@link ReactNativeHost} that helps you load everything needed for the New Architecture, both |  | ||||||
|  * TurboModule delegates and the Fabric Renderer. |  | ||||||
|  * |  | ||||||
|  * <p>Please note that this class is used ONLY if you opt-in for the New Architecture (see the |  | ||||||
|  * `newArchEnabled` property). Is ignored otherwise. |  | ||||||
|  */ |  | ||||||
| public class MainApplicationReactNativeHost extends ReactNativeHost { |  | ||||||
|   public MainApplicationReactNativeHost(Application application) { |  | ||||||
|     super(application); |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   @Override |  | ||||||
|   public boolean getUseDeveloperSupport() { |  | ||||||
|     return BuildConfig.DEBUG; |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   @Override |  | ||||||
|   protected List<ReactPackage> getPackages() { |  | ||||||
|     List<ReactPackage> packages = new PackageList(this).getPackages(); |  | ||||||
|     // Packages that cannot be autolinked yet can be added manually here, for example: |  | ||||||
|     //     packages.add(new MyReactNativePackage()); |  | ||||||
|     // TurboModules must also be loaded here providing a valid TurboReactPackage implementation: |  | ||||||
|     //     packages.add(new TurboReactPackage() { ... }); |  | ||||||
|     // If you have custom Fabric Components, their ViewManagers should also be loaded here |  | ||||||
|     // inside a ReactPackage. |  | ||||||
|     return packages; |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   @Override |  | ||||||
|   protected String getJSMainModuleName() { |  | ||||||
|     return "index"; |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   @NonNull |  | ||||||
|   @Override |  | ||||||
|   protected ReactPackageTurboModuleManagerDelegate.Builder |  | ||||||
|       getReactPackageTurboModuleManagerDelegateBuilder() { |  | ||||||
|     // Here we provide the ReactPackageTurboModuleManagerDelegate Builder. This is necessary |  | ||||||
|     // for the new architecture and to use TurboModules correctly. |  | ||||||
|     return new MainApplicationTurboModuleManagerDelegate.Builder(); |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   @Override |  | ||||||
|   protected JSIModulePackage getJSIModulePackage() { |  | ||||||
|     return new JSIModulePackage() { |  | ||||||
|       @Override |  | ||||||
|       public List<JSIModuleSpec> getJSIModules( |  | ||||||
|           final ReactApplicationContext reactApplicationContext, |  | ||||||
|           final JavaScriptContextHolder jsContext) { |  | ||||||
|         final List<JSIModuleSpec> specs = new ArrayList<>(); |  | ||||||
|  |  | ||||||
|         // Here we provide a new JSIModuleSpec that will be responsible of providing the |  | ||||||
|         // custom Fabric Components. |  | ||||||
|         specs.add( |  | ||||||
|             new JSIModuleSpec() { |  | ||||||
|               @Override |  | ||||||
|               public JSIModuleType getJSIModuleType() { |  | ||||||
|                 return JSIModuleType.UIManager; |  | ||||||
|               } |  | ||||||
|  |  | ||||||
|               @Override |  | ||||||
|               public JSIModuleProvider<UIManager> getJSIModuleProvider() { |  | ||||||
|                 final ComponentFactory componentFactory = new ComponentFactory(); |  | ||||||
|                 CoreComponentsRegistry.register(componentFactory); |  | ||||||
|  |  | ||||||
|                 // Here we register a Components Registry. |  | ||||||
|                 // The one that is generated with the template contains no components |  | ||||||
|                 // and just provides you the one from React Native core. |  | ||||||
|                 MainComponentsRegistry.register(componentFactory); |  | ||||||
|  |  | ||||||
|                 final ReactInstanceManager reactInstanceManager = getReactInstanceManager(); |  | ||||||
|  |  | ||||||
|                 ViewManagerRegistry viewManagerRegistry = |  | ||||||
|                     new ViewManagerRegistry( |  | ||||||
|                         reactInstanceManager.getOrCreateViewManagers(reactApplicationContext)); |  | ||||||
|  |  | ||||||
|                 return new FabricJSIModuleProvider( |  | ||||||
|                     reactApplicationContext, |  | ||||||
|                     componentFactory, |  | ||||||
|                     new EmptyReactNativeConfig(), |  | ||||||
|                     viewManagerRegistry); |  | ||||||
|               } |  | ||||||
|             }); |  | ||||||
|         return specs; |  | ||||||
|       } |  | ||||||
|     }; |  | ||||||
|   } |  | ||||||
| } |  | ||||||
| @@ -1,36 +0,0 @@ | |||||||
| package com.testhotupdate.newarchitecture.components; |  | ||||||
|  |  | ||||||
| import com.facebook.jni.HybridData; |  | ||||||
| import com.facebook.proguard.annotations.DoNotStrip; |  | ||||||
| import com.facebook.react.fabric.ComponentFactory; |  | ||||||
| import com.facebook.soloader.SoLoader; |  | ||||||
|  |  | ||||||
| /** |  | ||||||
|  * Class responsible to load the custom Fabric Components. This class has native methods and needs a |  | ||||||
|  * corresponding C++ implementation/header file to work correctly (already placed inside the jni/ |  | ||||||
|  * folder for you). |  | ||||||
|  * |  | ||||||
|  * <p>Please note that this class is used ONLY if you opt-in for the New Architecture (see the |  | ||||||
|  * `newArchEnabled` property). Is ignored otherwise. |  | ||||||
|  */ |  | ||||||
| @DoNotStrip |  | ||||||
| public class MainComponentsRegistry { |  | ||||||
|   static { |  | ||||||
|     SoLoader.loadLibrary("fabricjni"); |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   @DoNotStrip private final HybridData mHybridData; |  | ||||||
|  |  | ||||||
|   @DoNotStrip |  | ||||||
|   private native HybridData initHybrid(ComponentFactory componentFactory); |  | ||||||
|  |  | ||||||
|   @DoNotStrip |  | ||||||
|   private MainComponentsRegistry(ComponentFactory componentFactory) { |  | ||||||
|     mHybridData = initHybrid(componentFactory); |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   @DoNotStrip |  | ||||||
|   public static MainComponentsRegistry register(ComponentFactory componentFactory) { |  | ||||||
|     return new MainComponentsRegistry(componentFactory); |  | ||||||
|   } |  | ||||||
| } |  | ||||||
| @@ -1,48 +0,0 @@ | |||||||
| package com.testhotupdate.newarchitecture.modules; |  | ||||||
|  |  | ||||||
| import com.facebook.jni.HybridData; |  | ||||||
| import com.facebook.react.ReactPackage; |  | ||||||
| import com.facebook.react.ReactPackageTurboModuleManagerDelegate; |  | ||||||
| import com.facebook.react.bridge.ReactApplicationContext; |  | ||||||
| import com.facebook.soloader.SoLoader; |  | ||||||
| import java.util.List; |  | ||||||
|  |  | ||||||
| /** |  | ||||||
|  * Class responsible to load the TurboModules. This class has native methods and needs a |  | ||||||
|  * corresponding C++ implementation/header file to work correctly (already placed inside the jni/ |  | ||||||
|  * folder for you). |  | ||||||
|  * |  | ||||||
|  * <p>Please note that this class is used ONLY if you opt-in for the New Architecture (see the |  | ||||||
|  * `newArchEnabled` property). Is ignored otherwise. |  | ||||||
|  */ |  | ||||||
| public class MainApplicationTurboModuleManagerDelegate |  | ||||||
|     extends ReactPackageTurboModuleManagerDelegate { |  | ||||||
|  |  | ||||||
|   private static volatile boolean sIsSoLibraryLoaded; |  | ||||||
|  |  | ||||||
|   protected MainApplicationTurboModuleManagerDelegate( |  | ||||||
|       ReactApplicationContext reactApplicationContext, List<ReactPackage> packages) { |  | ||||||
|     super(reactApplicationContext, packages); |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   protected native HybridData initHybrid(); |  | ||||||
|  |  | ||||||
|   native boolean canCreateTurboModule(String moduleName); |  | ||||||
|  |  | ||||||
|   public static class Builder extends ReactPackageTurboModuleManagerDelegate.Builder { |  | ||||||
|     protected MainApplicationTurboModuleManagerDelegate build( |  | ||||||
|         ReactApplicationContext context, List<ReactPackage> packages) { |  | ||||||
|       return new MainApplicationTurboModuleManagerDelegate(context, packages); |  | ||||||
|     } |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   @Override |  | ||||||
|   protected synchronized void maybeLoadOtherSoLibraries() { |  | ||||||
|     if (!sIsSoLibraryLoaded) { |  | ||||||
|       // If you change the name of your application .so file in the Android.mk file, |  | ||||||
|       // make sure you update the name here as well. |  | ||||||
|       SoLoader.loadLibrary("testhotupdate_appmodules"); |  | ||||||
|       sIsSoLibraryLoaded = true; |  | ||||||
|     } |  | ||||||
|   } |  | ||||||
| } |  | ||||||
| @@ -1,49 +0,0 @@ | |||||||
| THIS_DIR := $(call my-dir) |  | ||||||
|  |  | ||||||
| include $(REACT_ANDROID_DIR)/Android-prebuilt.mk |  | ||||||
|  |  | ||||||
| # If you wish to add a custom TurboModule or Fabric component in your app you |  | ||||||
| # will have to include the following autogenerated makefile. |  | ||||||
| # include $(GENERATED_SRC_DIR)/codegen/jni/Android.mk |  | ||||||
| include $(CLEAR_VARS) |  | ||||||
|  |  | ||||||
| LOCAL_PATH := $(THIS_DIR) |  | ||||||
|  |  | ||||||
| # You can customize the name of your application .so file here. |  | ||||||
| LOCAL_MODULE := testhotupdate_appmodules |  | ||||||
|  |  | ||||||
| LOCAL_C_INCLUDES := $(LOCAL_PATH) |  | ||||||
| LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/*.cpp) |  | ||||||
| LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH) |  | ||||||
|  |  | ||||||
| # If you wish to add a custom TurboModule or Fabric component in your app you |  | ||||||
| # will have to uncomment those lines to include the generated source  |  | ||||||
| # files from the codegen (placed in $(GENERATED_SRC_DIR)/codegen/jni) |  | ||||||
| # |  | ||||||
| # LOCAL_C_INCLUDES += $(GENERATED_SRC_DIR)/codegen/jni |  | ||||||
| # LOCAL_SRC_FILES += $(wildcard $(GENERATED_SRC_DIR)/codegen/jni/*.cpp) |  | ||||||
| # LOCAL_EXPORT_C_INCLUDES += $(GENERATED_SRC_DIR)/codegen/jni |  | ||||||
|  |  | ||||||
| # Here you should add any native library you wish to depend on. |  | ||||||
| LOCAL_SHARED_LIBRARIES := \ |  | ||||||
|   libfabricjni \ |  | ||||||
|   libfbjni \ |  | ||||||
|   libfolly_futures \ |  | ||||||
|   libfolly_json \ |  | ||||||
|   libglog \ |  | ||||||
|   libjsi \ |  | ||||||
|   libreact_codegen_rncore \ |  | ||||||
|   libreact_debug \ |  | ||||||
|   libreact_nativemodule_core \ |  | ||||||
|   libreact_render_componentregistry \ |  | ||||||
|   libreact_render_core \ |  | ||||||
|   libreact_render_debug \ |  | ||||||
|   libreact_render_graphics \ |  | ||||||
|   librrc_view \ |  | ||||||
|   libruntimeexecutor \ |  | ||||||
|   libturbomodulejsijni \ |  | ||||||
|   libyoga |  | ||||||
|  |  | ||||||
| LOCAL_CFLAGS := -DLOG_TAG=\"ReactNative\" -fexceptions -frtti -std=c++17 -Wall |  | ||||||
|  |  | ||||||
| include $(BUILD_SHARED_LIBRARY) |  | ||||||
| @@ -1,24 +0,0 @@ | |||||||
| #include "MainApplicationModuleProvider.h" |  | ||||||
|  |  | ||||||
| #include <rncore.h> |  | ||||||
|  |  | ||||||
| namespace facebook { |  | ||||||
| namespace react { |  | ||||||
|  |  | ||||||
| std::shared_ptr<TurboModule> MainApplicationModuleProvider( |  | ||||||
|     const std::string moduleName, |  | ||||||
|     const JavaTurboModule::InitParams ¶ms) { |  | ||||||
|   // Here you can provide your own module provider for TurboModules coming from |  | ||||||
|   // either your application or from external libraries. The approach to follow |  | ||||||
|   // is similar to the following (for a library called `samplelibrary`: |  | ||||||
|   // |  | ||||||
|   // auto module = samplelibrary_ModuleProvider(moduleName, params); |  | ||||||
|   // if (module != nullptr) { |  | ||||||
|   //    return module; |  | ||||||
|   // } |  | ||||||
|   // return rncore_ModuleProvider(moduleName, params); |  | ||||||
|   return rncore_ModuleProvider(moduleName, params); |  | ||||||
| } |  | ||||||
|  |  | ||||||
| } // namespace react |  | ||||||
| } // namespace facebook |  | ||||||
| @@ -1,16 +0,0 @@ | |||||||
| #pragma once |  | ||||||
|  |  | ||||||
| #include <memory> |  | ||||||
| #include <string> |  | ||||||
|  |  | ||||||
| #include <ReactCommon/JavaTurboModule.h> |  | ||||||
|  |  | ||||||
| namespace facebook { |  | ||||||
| namespace react { |  | ||||||
|  |  | ||||||
| std::shared_ptr<TurboModule> MainApplicationModuleProvider( |  | ||||||
|     const std::string moduleName, |  | ||||||
|     const JavaTurboModule::InitParams ¶ms); |  | ||||||
|  |  | ||||||
| } // namespace react |  | ||||||
| } // namespace facebook |  | ||||||
| @@ -1,45 +0,0 @@ | |||||||
| #include "MainApplicationTurboModuleManagerDelegate.h" |  | ||||||
| #include "MainApplicationModuleProvider.h" |  | ||||||
|  |  | ||||||
| namespace facebook { |  | ||||||
| namespace react { |  | ||||||
|  |  | ||||||
| jni::local_ref<MainApplicationTurboModuleManagerDelegate::jhybriddata> |  | ||||||
| MainApplicationTurboModuleManagerDelegate::initHybrid( |  | ||||||
|     jni::alias_ref<jhybridobject>) { |  | ||||||
|   return makeCxxInstance(); |  | ||||||
| } |  | ||||||
|  |  | ||||||
| void MainApplicationTurboModuleManagerDelegate::registerNatives() { |  | ||||||
|   registerHybrid({ |  | ||||||
|       makeNativeMethod( |  | ||||||
|           "initHybrid", MainApplicationTurboModuleManagerDelegate::initHybrid), |  | ||||||
|       makeNativeMethod( |  | ||||||
|           "canCreateTurboModule", |  | ||||||
|           MainApplicationTurboModuleManagerDelegate::canCreateTurboModule), |  | ||||||
|   }); |  | ||||||
| } |  | ||||||
|  |  | ||||||
| std::shared_ptr<TurboModule> |  | ||||||
| MainApplicationTurboModuleManagerDelegate::getTurboModule( |  | ||||||
|     const std::string name, |  | ||||||
|     const std::shared_ptr<CallInvoker> jsInvoker) { |  | ||||||
|   // Not implemented yet: provide pure-C++ NativeModules here. |  | ||||||
|   return nullptr; |  | ||||||
| } |  | ||||||
|  |  | ||||||
| std::shared_ptr<TurboModule> |  | ||||||
| MainApplicationTurboModuleManagerDelegate::getTurboModule( |  | ||||||
|     const std::string name, |  | ||||||
|     const JavaTurboModule::InitParams ¶ms) { |  | ||||||
|   return MainApplicationModuleProvider(name, params); |  | ||||||
| } |  | ||||||
|  |  | ||||||
| bool MainApplicationTurboModuleManagerDelegate::canCreateTurboModule( |  | ||||||
|     std::string name) { |  | ||||||
|   return getTurboModule(name, nullptr) != nullptr || |  | ||||||
|       getTurboModule(name, {.moduleName = name}) != nullptr; |  | ||||||
| } |  | ||||||
|  |  | ||||||
| } // namespace react |  | ||||||
| } // namespace facebook |  | ||||||
| @@ -1,38 +0,0 @@ | |||||||
| #include <memory> |  | ||||||
| #include <string> |  | ||||||
|  |  | ||||||
| #include <ReactCommon/TurboModuleManagerDelegate.h> |  | ||||||
| #include <fbjni/fbjni.h> |  | ||||||
|  |  | ||||||
| namespace facebook { |  | ||||||
| namespace react { |  | ||||||
|  |  | ||||||
| class MainApplicationTurboModuleManagerDelegate |  | ||||||
|     : public jni::HybridClass< |  | ||||||
|           MainApplicationTurboModuleManagerDelegate, |  | ||||||
|           TurboModuleManagerDelegate> { |  | ||||||
|  public: |  | ||||||
|   // Adapt it to the package you used for your Java class. |  | ||||||
|   static constexpr auto kJavaDescriptor = |  | ||||||
|       "Lcom/testhotupdate/newarchitecture/modules/MainApplicationTurboModuleManagerDelegate;"; |  | ||||||
|  |  | ||||||
|   static jni::local_ref<jhybriddata> initHybrid(jni::alias_ref<jhybridobject>); |  | ||||||
|  |  | ||||||
|   static void registerNatives(); |  | ||||||
|  |  | ||||||
|   std::shared_ptr<TurboModule> getTurboModule( |  | ||||||
|       const std::string name, |  | ||||||
|       const std::shared_ptr<CallInvoker> jsInvoker) override; |  | ||||||
|   std::shared_ptr<TurboModule> getTurboModule( |  | ||||||
|       const std::string name, |  | ||||||
|       const JavaTurboModule::InitParams ¶ms) override; |  | ||||||
|  |  | ||||||
|   /** |  | ||||||
|    * Test-only method. Allows user to verify whether a TurboModule can be |  | ||||||
|    * created by instances of this class. |  | ||||||
|    */ |  | ||||||
|   bool canCreateTurboModule(std::string name); |  | ||||||
| }; |  | ||||||
|  |  | ||||||
| } // namespace react |  | ||||||
| } // namespace facebook |  | ||||||
| @@ -1,61 +0,0 @@ | |||||||
| #include "MainComponentsRegistry.h" |  | ||||||
|  |  | ||||||
| #include <CoreComponentsRegistry.h> |  | ||||||
| #include <fbjni/fbjni.h> |  | ||||||
| #include <react/renderer/componentregistry/ComponentDescriptorProviderRegistry.h> |  | ||||||
| #include <react/renderer/components/rncore/ComponentDescriptors.h> |  | ||||||
|  |  | ||||||
| namespace facebook { |  | ||||||
| namespace react { |  | ||||||
|  |  | ||||||
| MainComponentsRegistry::MainComponentsRegistry(ComponentFactory *delegate) {} |  | ||||||
|  |  | ||||||
| std::shared_ptr<ComponentDescriptorProviderRegistry const> |  | ||||||
| MainComponentsRegistry::sharedProviderRegistry() { |  | ||||||
|   auto providerRegistry = CoreComponentsRegistry::sharedProviderRegistry(); |  | ||||||
|  |  | ||||||
|   // Custom Fabric Components go here. You can register custom |  | ||||||
|   // components coming from your App or from 3rd party libraries here. |  | ||||||
|   // |  | ||||||
|   // providerRegistry->add(concreteComponentDescriptorProvider< |  | ||||||
|   //        AocViewerComponentDescriptor>()); |  | ||||||
|   return providerRegistry; |  | ||||||
| } |  | ||||||
|  |  | ||||||
| jni::local_ref<MainComponentsRegistry::jhybriddata> |  | ||||||
| MainComponentsRegistry::initHybrid( |  | ||||||
|     jni::alias_ref<jclass>, |  | ||||||
|     ComponentFactory *delegate) { |  | ||||||
|   auto instance = makeCxxInstance(delegate); |  | ||||||
|  |  | ||||||
|   auto buildRegistryFunction = |  | ||||||
|       [](EventDispatcher::Weak const &eventDispatcher, |  | ||||||
|          ContextContainer::Shared const &contextContainer) |  | ||||||
|       -> ComponentDescriptorRegistry::Shared { |  | ||||||
|     auto registry = MainComponentsRegistry::sharedProviderRegistry() |  | ||||||
|                         ->createComponentDescriptorRegistry( |  | ||||||
|                             {eventDispatcher, contextContainer}); |  | ||||||
|  |  | ||||||
|     auto mutableRegistry = |  | ||||||
|         std::const_pointer_cast<ComponentDescriptorRegistry>(registry); |  | ||||||
|  |  | ||||||
|     mutableRegistry->setFallbackComponentDescriptor( |  | ||||||
|         std::make_shared<UnimplementedNativeViewComponentDescriptor>( |  | ||||||
|             ComponentDescriptorParameters{ |  | ||||||
|                 eventDispatcher, contextContainer, nullptr})); |  | ||||||
|  |  | ||||||
|     return registry; |  | ||||||
|   }; |  | ||||||
|  |  | ||||||
|   delegate->buildRegistryFunction = buildRegistryFunction; |  | ||||||
|   return instance; |  | ||||||
| } |  | ||||||
|  |  | ||||||
| void MainComponentsRegistry::registerNatives() { |  | ||||||
|   registerHybrid({ |  | ||||||
|       makeNativeMethod("initHybrid", MainComponentsRegistry::initHybrid), |  | ||||||
|   }); |  | ||||||
| } |  | ||||||
|  |  | ||||||
| } // namespace react |  | ||||||
| } // namespace facebook |  | ||||||
| @@ -1,32 +0,0 @@ | |||||||
| #pragma once |  | ||||||
|  |  | ||||||
| #include <ComponentFactory.h> |  | ||||||
| #include <fbjni/fbjni.h> |  | ||||||
| #include <react/renderer/componentregistry/ComponentDescriptorProviderRegistry.h> |  | ||||||
| #include <react/renderer/componentregistry/ComponentDescriptorRegistry.h> |  | ||||||
|  |  | ||||||
| namespace facebook { |  | ||||||
| namespace react { |  | ||||||
|  |  | ||||||
| class MainComponentsRegistry |  | ||||||
|     : public facebook::jni::HybridClass<MainComponentsRegistry> { |  | ||||||
|  public: |  | ||||||
|   // Adapt it to the package you used for your Java class. |  | ||||||
|   constexpr static auto kJavaDescriptor = |  | ||||||
|       "Lcom/testhotupdate/newarchitecture/components/MainComponentsRegistry;"; |  | ||||||
|  |  | ||||||
|   static void registerNatives(); |  | ||||||
|  |  | ||||||
|   MainComponentsRegistry(ComponentFactory *delegate); |  | ||||||
|  |  | ||||||
|  private: |  | ||||||
|   static std::shared_ptr<ComponentDescriptorProviderRegistry const> |  | ||||||
|   sharedProviderRegistry(); |  | ||||||
|  |  | ||||||
|   static jni::local_ref<jhybriddata> initHybrid( |  | ||||||
|       jni::alias_ref<jclass>, |  | ||||||
|       ComponentFactory *delegate); |  | ||||||
| }; |  | ||||||
|  |  | ||||||
| } // namespace react |  | ||||||
| } // namespace facebook |  | ||||||
| @@ -1,11 +0,0 @@ | |||||||
| #include <fbjni/fbjni.h> |  | ||||||
| #include "MainApplicationTurboModuleManagerDelegate.h" |  | ||||||
| #include "MainComponentsRegistry.h" |  | ||||||
|  |  | ||||||
| JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *) { |  | ||||||
|   return facebook::jni::initialize(vm, [] { |  | ||||||
|     facebook::react::MainApplicationTurboModuleManagerDelegate:: |  | ||||||
|         registerNatives(); |  | ||||||
|     facebook::react::MainComponentsRegistry::registerNatives(); |  | ||||||
|   }); |  | ||||||
| } |  | ||||||
| @@ -0,0 +1,20 @@ | |||||||
|  | /** | ||||||
|  |  * Copyright (c) Meta Platforms, Inc. and affiliates. | ||||||
|  |  * | ||||||
|  |  * <p>This source code is licensed under the MIT license found in the LICENSE file in the root | ||||||
|  |  * directory of this source tree. | ||||||
|  |  */ | ||||||
|  | package com.testhotupdate; | ||||||
|  |  | ||||||
|  | import android.content.Context; | ||||||
|  | import com.facebook.react.ReactInstanceManager; | ||||||
|  |  | ||||||
|  | /** | ||||||
|  |  * Class responsible of loading Flipper inside your React Native application. This is the release | ||||||
|  |  * flavor of it so it's empty as we don't want to load Flipper. | ||||||
|  |  */ | ||||||
|  | public class ReactNativeFlipper { | ||||||
|  |   public static void initializeFlipper(Context context, ReactInstanceManager reactInstanceManager) { | ||||||
|  |     // Do nothing as we don't want to initialize Flipper on Release. | ||||||
|  |   } | ||||||
|  | } | ||||||
| @@ -1,53 +1,21 @@ | |||||||
| import org.apache.tools.ant.taskdefs.condition.Os |  | ||||||
|  |  | ||||||
| // Top-level build file where you can add configuration options common to all sub-projects/modules. | // Top-level build file where you can add configuration options common to all sub-projects/modules. | ||||||
|  |  | ||||||
| buildscript { | buildscript { | ||||||
|     ext { |     ext { | ||||||
|         buildToolsVersion = "31.0.0" |         buildToolsVersion = "33.0.0" | ||||||
|         minSdkVersion = 21 |         minSdkVersion = 21 | ||||||
|         compileSdkVersion = 31 |         compileSdkVersion = 33 | ||||||
|         targetSdkVersion = 31 |         targetSdkVersion = 33 | ||||||
|  |  | ||||||
|         if (System.properties['os.arch'] == "aarch64") { |         // We use NDK 23 which has both M1 support and is the side-by-side NDK version from AGP. | ||||||
|             // For M1 Users we need to use the NDK 24 which added support for aarch64 |         ndkVersion = "23.1.7779620" | ||||||
|             ndkVersion = "24.0.8215888" |  | ||||||
|         } else { |  | ||||||
|             // Otherwise we default to the side-by-side NDK version from AGP. |  | ||||||
|             ndkVersion = "21.4.7075529" |  | ||||||
|         } |  | ||||||
|     } |     } | ||||||
|     repositories { |     repositories { | ||||||
|         google() |         google() | ||||||
|         mavenCentral() |         mavenCentral() | ||||||
|     } |     } | ||||||
|     dependencies { |     dependencies { | ||||||
|         classpath("com.android.tools.build:gradle:7.0.4") |         classpath("com.android.tools.build:gradle:7.3.1") | ||||||
|         classpath("com.facebook.react:react-native-gradle-plugin") |         classpath("com.facebook.react:react-native-gradle-plugin") | ||||||
|         classpath("de.undercouch:gradle-download-task:4.1.2") |  | ||||||
|         // NOTE: Do not place your application dependencies here; they belong |  | ||||||
|         // in the individual module build.gradle files |  | ||||||
|     } |  | ||||||
| } |  | ||||||
|  |  | ||||||
| allprojects { |  | ||||||
|     repositories { |  | ||||||
|         maven { |  | ||||||
|             // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm |  | ||||||
|             url("$rootDir/../node_modules/react-native/android") |  | ||||||
|         } |  | ||||||
|         maven { |  | ||||||
|             // Android JSC is installed from npm |  | ||||||
|             url("$rootDir/../node_modules/jsc-android/dist") |  | ||||||
|         } |  | ||||||
|         mavenCentral { |  | ||||||
|             // We don't want to fetch react-native from Maven Central as there are |  | ||||||
|             // older versions over there. |  | ||||||
|             content { |  | ||||||
|                 excludeGroup "com.facebook.react" |  | ||||||
|             } |  | ||||||
|         } |  | ||||||
|         google() |  | ||||||
|         maven { url 'https://www.jitpack.io' } |  | ||||||
|     } |     } | ||||||
| } | } | ||||||
| @@ -38,3 +38,7 @@ reactNativeArchitectures=armeabi-v7a,arm64-v8a,x86,x86_64 | |||||||
| # to write custom TurboModules/Fabric components OR use libraries that | # to write custom TurboModules/Fabric components OR use libraries that | ||||||
| # are providing them. | # are providing them. | ||||||
| newArchEnabled=false | newArchEnabled=false | ||||||
|  |  | ||||||
|  | # Use this property to enable or disable the Hermes JS engine. | ||||||
|  | # If set to false, you will be using JSC instead. | ||||||
|  | hermesEnabled=true | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| distributionBase=GRADLE_USER_HOME | distributionBase=GRADLE_USER_HOME | ||||||
| distributionPath=wrapper/dists | distributionPath=wrapper/dists | ||||||
| distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-all.zip | distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-all.zip | ||||||
| zipStoreBase=GRADLE_USER_HOME | zipStoreBase=GRADLE_USER_HOME | ||||||
| zipStorePath=wrapper/dists | zipStorePath=wrapper/dists | ||||||
|   | |||||||
| @@ -2,8 +2,3 @@ rootProject.name = 'testHotupdate' | |||||||
| apply from: file("../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesSettingsGradle(settings) | apply from: file("../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesSettingsGradle(settings) | ||||||
| include ':app' | include ':app' | ||||||
| includeBuild('../node_modules/react-native-gradle-plugin') | includeBuild('../node_modules/react-native-gradle-plugin') | ||||||
|  |  | ||||||
| if (settings.hasProperty("newArchEnabled") && settings.newArchEnabled == "true") { |  | ||||||
|     include(":ReactAndroid") |  | ||||||
|     project(":ReactAndroid").projectDir = file('../node_modules/react-native/ReactAndroid') |  | ||||||
| } |  | ||||||
|   | |||||||
							
								
								
									
										10
									
								
								Example/testHotUpdate/ios/.xcode.env
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								Example/testHotUpdate/ios/.xcode.env
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,10 @@ | |||||||
|  | # This `.xcode.env` file is versioned and is used to source the environment | ||||||
|  | # used when running script phases inside Xcode. | ||||||
|  | # To customize your local environment, you can create an `.xcode.env.local` | ||||||
|  | # file that is not versioned. | ||||||
|  | # NODE_BINARY variable contains the PATH to the node executable. | ||||||
|  | # | ||||||
|  | # Customize the NODE_BINARY variable here. | ||||||
|  | # For example, to use nvm with brew, add the following line | ||||||
|  | # . "$(brew --prefix nvm)/nvm.sh" --no-use | ||||||
|  | export NODE_BINARY=$(command -v node) | ||||||
| @@ -1,8 +1,25 @@ | |||||||
| require_relative '../node_modules/react-native/scripts/react_native_pods' | require_relative '../node_modules/react-native/scripts/react_native_pods' | ||||||
| require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules' | require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules' | ||||||
|  |  | ||||||
| platform :ios, '11.0' | platform :ios, min_ios_version_supported | ||||||
| install! 'cocoapods', :deterministic_uuids => false | prepare_react_native_project! | ||||||
|  |  | ||||||
|  | # If you are using a `react-native-flipper` your iOS build will fail when `NO_FLIPPER=1` is set. | ||||||
|  | # because `react-native-flipper` depends on (FlipperKit,...) that will be excluded | ||||||
|  | # | ||||||
|  | # To fix this you can also exclude `react-native-flipper` using a `react-native.config.js` | ||||||
|  | # ```js | ||||||
|  | # module.exports = { | ||||||
|  | #   dependencies: { | ||||||
|  | #     ...(process.env.NO_FLIPPER ? { 'react-native-flipper': { platforms: { ios: null } } } : {}), | ||||||
|  | # ``` | ||||||
|  | flipper_config = ENV['NO_FLIPPER'] == "1" ? FlipperConfiguration.disabled : FlipperConfiguration.enabled | ||||||
|  |  | ||||||
|  | linkage = ENV['USE_FRAMEWORKS'] | ||||||
|  | if linkage != nil | ||||||
|  |   Pod::UI.puts "Configuring Pod with #{linkage}ally linked Frameworks".green | ||||||
|  |   use_frameworks! :linkage => linkage.to_sym | ||||||
|  | end | ||||||
|  |  | ||||||
| target 'testHotupdate' do | target 'testHotupdate' do | ||||||
|   config = use_native_modules! |   config = use_native_modules! | ||||||
| @@ -12,22 +29,32 @@ target 'testHotupdate' do | |||||||
|  |  | ||||||
|   use_react_native!( |   use_react_native!( | ||||||
|     :path => config[:reactNativePath], |     :path => config[:reactNativePath], | ||||||
|     # to enable hermes on iOS, change `false` to `true` and then install pods |     # Hermes is now enabled by default. Disable by setting this flag to false. | ||||||
|  |     # Upcoming versions of React Native may rely on get_default_flags(), but | ||||||
|  |     # we make it explicit here to aid in the React Native upgrade process. | ||||||
|     :hermes_enabled => flags[:hermes_enabled], |     :hermes_enabled => flags[:hermes_enabled], | ||||||
|     :fabric_enabled => flags[:fabric_enabled], |     :fabric_enabled => flags[:fabric_enabled], | ||||||
|     # An absolute path to your application root. |  | ||||||
|     :app_path => "#{Pod::Config.instance.installation_root}/.." |  | ||||||
|   ) |  | ||||||
|  |  | ||||||
|  |  | ||||||
|     # Enables Flipper. |     # Enables Flipper. | ||||||
|     # |     # | ||||||
|     # Note that if you have use_frameworks! enabled, Flipper will not work and |     # Note that if you have use_frameworks! enabled, Flipper will not work and | ||||||
|     # you should disable the next line. |     # you should disable the next line. | ||||||
|   use_flipper!() |     :flipper_configuration => flipper_config, | ||||||
|  |     # An absolute path to your application root. | ||||||
|  |     :app_path => "#{Pod::Config.instance.installation_root}/.." | ||||||
|  |   ) | ||||||
|  |  | ||||||
|  |   target 'testHotupdateTests' do | ||||||
|  |     inherit! :complete | ||||||
|  |     # Pods for testing | ||||||
|  |   end | ||||||
|  |  | ||||||
|   post_install do |installer| |   post_install do |installer| | ||||||
|     react_native_post_install(installer) |     react_native_post_install( | ||||||
|  |       installer, | ||||||
|  |       # Set `mac_catalyst_enabled` to `true` in order to apply patches | ||||||
|  |       # necessary for Mac Catalyst builds | ||||||
|  |       :mac_catalyst_enabled => false | ||||||
|  |     ) | ||||||
|     __apply_Xcode_12_5_M1_post_install_workaround(installer) |     __apply_Xcode_12_5_M1_post_install_workaround(installer) | ||||||
|   end |   end | ||||||
| end | end | ||||||
| @@ -2,19 +2,19 @@ PODS: | |||||||
|   - boost (1.76.0) |   - boost (1.76.0) | ||||||
|   - CocoaAsyncSocket (7.6.5) |   - CocoaAsyncSocket (7.6.5) | ||||||
|   - DoubleConversion (1.1.6) |   - DoubleConversion (1.1.6) | ||||||
|   - FBLazyVector (0.68.2) |   - FBLazyVector (0.71.1) | ||||||
|   - FBReactNativeSpec (0.68.2): |   - FBReactNativeSpec (0.71.1): | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |     - RCT-Folly (= 2021.07.22.00) | ||||||
|     - RCTRequired (= 0.68.2) |     - RCTRequired (= 0.71.1) | ||||||
|     - RCTTypeSafety (= 0.68.2) |     - RCTTypeSafety (= 0.71.1) | ||||||
|     - React-Core (= 0.68.2) |     - React-Core (= 0.71.1) | ||||||
|     - React-jsi (= 0.68.2) |     - React-jsi (= 0.71.1) | ||||||
|     - ReactCommon/turbomodule/core (= 0.68.2) |     - ReactCommon/turbomodule/core (= 0.71.1) | ||||||
|   - Flipper (0.125.0): |   - Flipper (0.125.0): | ||||||
|     - Flipper-Folly (~> 2.6) |     - Flipper-Folly (~> 2.6) | ||||||
|     - Flipper-RSocket (~> 1.4) |     - Flipper-RSocket (~> 1.4) | ||||||
|   - Flipper-Boost-iOSX (1.76.0.1.11) |   - Flipper-Boost-iOSX (1.76.0.1.11) | ||||||
|   - Flipper-DoubleConversion (3.2.0) |   - Flipper-DoubleConversion (3.2.0.1) | ||||||
|   - Flipper-Fmt (7.1.7) |   - Flipper-Fmt (7.1.7) | ||||||
|   - Flipper-Folly (2.6.10): |   - Flipper-Folly (2.6.10): | ||||||
|     - Flipper-Boost-iOSX |     - Flipper-Boost-iOSX | ||||||
| @@ -23,7 +23,7 @@ PODS: | |||||||
|     - Flipper-Glog |     - Flipper-Glog | ||||||
|     - libevent (~> 2.1.12) |     - libevent (~> 2.1.12) | ||||||
|     - OpenSSL-Universal (= 1.1.1100) |     - OpenSSL-Universal (= 1.1.1100) | ||||||
|   - Flipper-Glog (0.5.0.4) |   - Flipper-Glog (0.5.0.5) | ||||||
|   - Flipper-PeerTalk (0.0.4) |   - Flipper-PeerTalk (0.0.4) | ||||||
|   - Flipper-RSocket (1.4.3): |   - Flipper-RSocket (1.4.3): | ||||||
|     - Flipper-Folly (~> 2.6) |     - Flipper-Folly (~> 2.6) | ||||||
| @@ -73,291 +73,322 @@ PODS: | |||||||
|     - FlipperKit/FlipperKitNetworkPlugin |     - FlipperKit/FlipperKitNetworkPlugin | ||||||
|   - fmt (6.2.1) |   - fmt (6.2.1) | ||||||
|   - glog (0.3.5) |   - glog (0.3.5) | ||||||
|  |   - hermes-engine (0.71.1): | ||||||
|  |     - hermes-engine/Pre-built (= 0.71.1) | ||||||
|  |   - hermes-engine/Pre-built (0.71.1) | ||||||
|   - libevent (2.1.12) |   - libevent (2.1.12) | ||||||
|   - OpenSSL-Universal (1.1.1100) |   - OpenSSL-Universal (1.1.1100) | ||||||
|   - RCT-Folly (2021.06.28.00-v2): |   - RCT-Folly (2021.07.22.00): | ||||||
|     - boost |     - boost | ||||||
|     - DoubleConversion |     - DoubleConversion | ||||||
|     - fmt (~> 6.2.1) |     - fmt (~> 6.2.1) | ||||||
|     - glog |     - glog | ||||||
|     - RCT-Folly/Default (= 2021.06.28.00-v2) |     - RCT-Folly/Default (= 2021.07.22.00) | ||||||
|   - RCT-Folly/Default (2021.06.28.00-v2): |   - RCT-Folly/Default (2021.07.22.00): | ||||||
|     - boost |     - boost | ||||||
|     - DoubleConversion |     - DoubleConversion | ||||||
|     - fmt (~> 6.2.1) |     - fmt (~> 6.2.1) | ||||||
|     - glog |     - glog | ||||||
|   - RCTRequired (0.68.2) |   - RCT-Folly/Futures (2021.07.22.00): | ||||||
|   - RCTTypeSafety (0.68.2): |     - boost | ||||||
|     - FBLazyVector (= 0.68.2) |     - DoubleConversion | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |     - fmt (~> 6.2.1) | ||||||
|     - RCTRequired (= 0.68.2) |  | ||||||
|     - React-Core (= 0.68.2) |  | ||||||
|   - React (0.68.2): |  | ||||||
|     - React-Core (= 0.68.2) |  | ||||||
|     - React-Core/DevSupport (= 0.68.2) |  | ||||||
|     - React-Core/RCTWebSocket (= 0.68.2) |  | ||||||
|     - React-RCTActionSheet (= 0.68.2) |  | ||||||
|     - React-RCTAnimation (= 0.68.2) |  | ||||||
|     - React-RCTBlob (= 0.68.2) |  | ||||||
|     - React-RCTImage (= 0.68.2) |  | ||||||
|     - React-RCTLinking (= 0.68.2) |  | ||||||
|     - React-RCTNetwork (= 0.68.2) |  | ||||||
|     - React-RCTSettings (= 0.68.2) |  | ||||||
|     - React-RCTText (= 0.68.2) |  | ||||||
|     - React-RCTVibration (= 0.68.2) |  | ||||||
|   - React-callinvoker (0.68.2) |  | ||||||
|   - React-Codegen (0.68.2): |  | ||||||
|     - FBReactNativeSpec (= 0.68.2) |  | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |  | ||||||
|     - RCTRequired (= 0.68.2) |  | ||||||
|     - RCTTypeSafety (= 0.68.2) |  | ||||||
|     - React-Core (= 0.68.2) |  | ||||||
|     - React-jsi (= 0.68.2) |  | ||||||
|     - React-jsiexecutor (= 0.68.2) |  | ||||||
|     - ReactCommon/turbomodule/core (= 0.68.2) |  | ||||||
|   - React-Core (0.68.2): |  | ||||||
|     - glog |     - glog | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |     - libevent | ||||||
|     - React-Core/Default (= 0.68.2) |   - RCTRequired (0.71.1) | ||||||
|     - React-cxxreact (= 0.68.2) |   - RCTTypeSafety (0.71.1): | ||||||
|     - React-jsi (= 0.68.2) |     - FBLazyVector (= 0.71.1) | ||||||
|     - React-jsiexecutor (= 0.68.2) |     - RCTRequired (= 0.71.1) | ||||||
|     - React-perflogger (= 0.68.2) |     - React-Core (= 0.71.1) | ||||||
|  |   - React (0.71.1): | ||||||
|  |     - React-Core (= 0.71.1) | ||||||
|  |     - React-Core/DevSupport (= 0.71.1) | ||||||
|  |     - React-Core/RCTWebSocket (= 0.71.1) | ||||||
|  |     - React-RCTActionSheet (= 0.71.1) | ||||||
|  |     - React-RCTAnimation (= 0.71.1) | ||||||
|  |     - React-RCTBlob (= 0.71.1) | ||||||
|  |     - React-RCTImage (= 0.71.1) | ||||||
|  |     - React-RCTLinking (= 0.71.1) | ||||||
|  |     - React-RCTNetwork (= 0.71.1) | ||||||
|  |     - React-RCTSettings (= 0.71.1) | ||||||
|  |     - React-RCTText (= 0.71.1) | ||||||
|  |     - React-RCTVibration (= 0.71.1) | ||||||
|  |   - React-callinvoker (0.71.1) | ||||||
|  |   - React-Codegen (0.71.1): | ||||||
|  |     - FBReactNativeSpec | ||||||
|  |     - hermes-engine | ||||||
|  |     - RCT-Folly | ||||||
|  |     - RCTRequired | ||||||
|  |     - RCTTypeSafety | ||||||
|  |     - React-Core | ||||||
|  |     - React-jsi | ||||||
|  |     - React-jsiexecutor | ||||||
|  |     - ReactCommon/turbomodule/bridging | ||||||
|  |     - ReactCommon/turbomodule/core | ||||||
|  |   - React-Core (0.71.1): | ||||||
|  |     - glog | ||||||
|  |     - RCT-Folly (= 2021.07.22.00) | ||||||
|  |     - React-Core/Default (= 0.71.1) | ||||||
|  |     - React-cxxreact (= 0.71.1) | ||||||
|  |     - React-jsi (= 0.71.1) | ||||||
|  |     - React-jsiexecutor (= 0.71.1) | ||||||
|  |     - React-perflogger (= 0.71.1) | ||||||
|     - Yoga |     - Yoga | ||||||
|   - React-Core/CoreModulesHeaders (0.68.2): |   - React-Core/CoreModulesHeaders (0.71.1): | ||||||
|     - glog |     - glog | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |     - RCT-Folly (= 2021.07.22.00) | ||||||
|     - React-Core/Default |     - React-Core/Default | ||||||
|     - React-cxxreact (= 0.68.2) |     - React-cxxreact (= 0.71.1) | ||||||
|     - React-jsi (= 0.68.2) |     - React-jsi (= 0.71.1) | ||||||
|     - React-jsiexecutor (= 0.68.2) |     - React-jsiexecutor (= 0.71.1) | ||||||
|     - React-perflogger (= 0.68.2) |     - React-perflogger (= 0.71.1) | ||||||
|     - Yoga |     - Yoga | ||||||
|   - React-Core/Default (0.68.2): |   - React-Core/Default (0.71.1): | ||||||
|     - glog |     - glog | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |     - RCT-Folly (= 2021.07.22.00) | ||||||
|     - React-cxxreact (= 0.68.2) |     - React-cxxreact (= 0.71.1) | ||||||
|     - React-jsi (= 0.68.2) |     - React-jsi (= 0.71.1) | ||||||
|     - React-jsiexecutor (= 0.68.2) |     - React-jsiexecutor (= 0.71.1) | ||||||
|     - React-perflogger (= 0.68.2) |     - React-perflogger (= 0.71.1) | ||||||
|     - Yoga |     - Yoga | ||||||
|   - React-Core/DevSupport (0.68.2): |   - React-Core/DevSupport (0.71.1): | ||||||
|     - glog |     - glog | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |     - RCT-Folly (= 2021.07.22.00) | ||||||
|     - React-Core/Default (= 0.68.2) |     - React-Core/Default (= 0.71.1) | ||||||
|     - React-Core/RCTWebSocket (= 0.68.2) |     - React-Core/RCTWebSocket (= 0.71.1) | ||||||
|     - React-cxxreact (= 0.68.2) |     - React-cxxreact (= 0.71.1) | ||||||
|     - React-jsi (= 0.68.2) |     - React-jsi (= 0.71.1) | ||||||
|     - React-jsiexecutor (= 0.68.2) |     - React-jsiexecutor (= 0.71.1) | ||||||
|     - React-jsinspector (= 0.68.2) |     - React-jsinspector (= 0.71.1) | ||||||
|     - React-perflogger (= 0.68.2) |     - React-perflogger (= 0.71.1) | ||||||
|     - Yoga |     - Yoga | ||||||
|   - React-Core/RCTActionSheetHeaders (0.68.2): |   - React-Core/RCTActionSheetHeaders (0.71.1): | ||||||
|     - glog |     - glog | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |     - RCT-Folly (= 2021.07.22.00) | ||||||
|     - React-Core/Default |     - React-Core/Default | ||||||
|     - React-cxxreact (= 0.68.2) |     - React-cxxreact (= 0.71.1) | ||||||
|     - React-jsi (= 0.68.2) |     - React-jsi (= 0.71.1) | ||||||
|     - React-jsiexecutor (= 0.68.2) |     - React-jsiexecutor (= 0.71.1) | ||||||
|     - React-perflogger (= 0.68.2) |     - React-perflogger (= 0.71.1) | ||||||
|     - Yoga |     - Yoga | ||||||
|   - React-Core/RCTAnimationHeaders (0.68.2): |   - React-Core/RCTAnimationHeaders (0.71.1): | ||||||
|     - glog |     - glog | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |     - RCT-Folly (= 2021.07.22.00) | ||||||
|     - React-Core/Default |     - React-Core/Default | ||||||
|     - React-cxxreact (= 0.68.2) |     - React-cxxreact (= 0.71.1) | ||||||
|     - React-jsi (= 0.68.2) |     - React-jsi (= 0.71.1) | ||||||
|     - React-jsiexecutor (= 0.68.2) |     - React-jsiexecutor (= 0.71.1) | ||||||
|     - React-perflogger (= 0.68.2) |     - React-perflogger (= 0.71.1) | ||||||
|     - Yoga |     - Yoga | ||||||
|   - React-Core/RCTBlobHeaders (0.68.2): |   - React-Core/RCTBlobHeaders (0.71.1): | ||||||
|     - glog |     - glog | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |     - RCT-Folly (= 2021.07.22.00) | ||||||
|     - React-Core/Default |     - React-Core/Default | ||||||
|     - React-cxxreact (= 0.68.2) |     - React-cxxreact (= 0.71.1) | ||||||
|     - React-jsi (= 0.68.2) |     - React-jsi (= 0.71.1) | ||||||
|     - React-jsiexecutor (= 0.68.2) |     - React-jsiexecutor (= 0.71.1) | ||||||
|     - React-perflogger (= 0.68.2) |     - React-perflogger (= 0.71.1) | ||||||
|     - Yoga |     - Yoga | ||||||
|   - React-Core/RCTImageHeaders (0.68.2): |   - React-Core/RCTImageHeaders (0.71.1): | ||||||
|     - glog |     - glog | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |     - RCT-Folly (= 2021.07.22.00) | ||||||
|     - React-Core/Default |     - React-Core/Default | ||||||
|     - React-cxxreact (= 0.68.2) |     - React-cxxreact (= 0.71.1) | ||||||
|     - React-jsi (= 0.68.2) |     - React-jsi (= 0.71.1) | ||||||
|     - React-jsiexecutor (= 0.68.2) |     - React-jsiexecutor (= 0.71.1) | ||||||
|     - React-perflogger (= 0.68.2) |     - React-perflogger (= 0.71.1) | ||||||
|     - Yoga |     - Yoga | ||||||
|   - React-Core/RCTLinkingHeaders (0.68.2): |   - React-Core/RCTLinkingHeaders (0.71.1): | ||||||
|     - glog |     - glog | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |     - RCT-Folly (= 2021.07.22.00) | ||||||
|     - React-Core/Default |     - React-Core/Default | ||||||
|     - React-cxxreact (= 0.68.2) |     - React-cxxreact (= 0.71.1) | ||||||
|     - React-jsi (= 0.68.2) |     - React-jsi (= 0.71.1) | ||||||
|     - React-jsiexecutor (= 0.68.2) |     - React-jsiexecutor (= 0.71.1) | ||||||
|     - React-perflogger (= 0.68.2) |     - React-perflogger (= 0.71.1) | ||||||
|     - Yoga |     - Yoga | ||||||
|   - React-Core/RCTNetworkHeaders (0.68.2): |   - React-Core/RCTNetworkHeaders (0.71.1): | ||||||
|     - glog |     - glog | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |     - RCT-Folly (= 2021.07.22.00) | ||||||
|     - React-Core/Default |     - React-Core/Default | ||||||
|     - React-cxxreact (= 0.68.2) |     - React-cxxreact (= 0.71.1) | ||||||
|     - React-jsi (= 0.68.2) |     - React-jsi (= 0.71.1) | ||||||
|     - React-jsiexecutor (= 0.68.2) |     - React-jsiexecutor (= 0.71.1) | ||||||
|     - React-perflogger (= 0.68.2) |     - React-perflogger (= 0.71.1) | ||||||
|     - Yoga |     - Yoga | ||||||
|   - React-Core/RCTSettingsHeaders (0.68.2): |   - React-Core/RCTSettingsHeaders (0.71.1): | ||||||
|     - glog |     - glog | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |     - RCT-Folly (= 2021.07.22.00) | ||||||
|     - React-Core/Default |     - React-Core/Default | ||||||
|     - React-cxxreact (= 0.68.2) |     - React-cxxreact (= 0.71.1) | ||||||
|     - React-jsi (= 0.68.2) |     - React-jsi (= 0.71.1) | ||||||
|     - React-jsiexecutor (= 0.68.2) |     - React-jsiexecutor (= 0.71.1) | ||||||
|     - React-perflogger (= 0.68.2) |     - React-perflogger (= 0.71.1) | ||||||
|     - Yoga |     - Yoga | ||||||
|   - React-Core/RCTTextHeaders (0.68.2): |   - React-Core/RCTTextHeaders (0.71.1): | ||||||
|     - glog |     - glog | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |     - RCT-Folly (= 2021.07.22.00) | ||||||
|     - React-Core/Default |     - React-Core/Default | ||||||
|     - React-cxxreact (= 0.68.2) |     - React-cxxreact (= 0.71.1) | ||||||
|     - React-jsi (= 0.68.2) |     - React-jsi (= 0.71.1) | ||||||
|     - React-jsiexecutor (= 0.68.2) |     - React-jsiexecutor (= 0.71.1) | ||||||
|     - React-perflogger (= 0.68.2) |     - React-perflogger (= 0.71.1) | ||||||
|     - Yoga |     - Yoga | ||||||
|   - React-Core/RCTVibrationHeaders (0.68.2): |   - React-Core/RCTVibrationHeaders (0.71.1): | ||||||
|     - glog |     - glog | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |     - RCT-Folly (= 2021.07.22.00) | ||||||
|     - React-Core/Default |     - React-Core/Default | ||||||
|     - React-cxxreact (= 0.68.2) |     - React-cxxreact (= 0.71.1) | ||||||
|     - React-jsi (= 0.68.2) |     - React-jsi (= 0.71.1) | ||||||
|     - React-jsiexecutor (= 0.68.2) |     - React-jsiexecutor (= 0.71.1) | ||||||
|     - React-perflogger (= 0.68.2) |     - React-perflogger (= 0.71.1) | ||||||
|     - Yoga |     - Yoga | ||||||
|   - React-Core/RCTWebSocket (0.68.2): |   - React-Core/RCTWebSocket (0.71.1): | ||||||
|     - glog |     - glog | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |     - RCT-Folly (= 2021.07.22.00) | ||||||
|     - React-Core/Default (= 0.68.2) |     - React-Core/Default (= 0.71.1) | ||||||
|     - React-cxxreact (= 0.68.2) |     - React-cxxreact (= 0.71.1) | ||||||
|     - React-jsi (= 0.68.2) |     - React-jsi (= 0.71.1) | ||||||
|     - React-jsiexecutor (= 0.68.2) |     - React-jsiexecutor (= 0.71.1) | ||||||
|     - React-perflogger (= 0.68.2) |     - React-perflogger (= 0.71.1) | ||||||
|     - Yoga |     - Yoga | ||||||
|   - React-CoreModules (0.68.2): |   - React-CoreModules (0.71.1): | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |     - RCT-Folly (= 2021.07.22.00) | ||||||
|     - RCTTypeSafety (= 0.68.2) |     - RCTTypeSafety (= 0.71.1) | ||||||
|     - React-Codegen (= 0.68.2) |     - React-Codegen (= 0.71.1) | ||||||
|     - React-Core/CoreModulesHeaders (= 0.68.2) |     - React-Core/CoreModulesHeaders (= 0.71.1) | ||||||
|     - React-jsi (= 0.68.2) |     - React-jsi (= 0.71.1) | ||||||
|     - React-RCTImage (= 0.68.2) |     - React-RCTImage (= 0.71.1) | ||||||
|     - ReactCommon/turbomodule/core (= 0.68.2) |     - ReactCommon/turbomodule/core (= 0.71.1) | ||||||
|   - React-cxxreact (0.68.2): |   - React-cxxreact (0.71.1): | ||||||
|     - boost (= 1.76.0) |     - boost (= 1.76.0) | ||||||
|     - DoubleConversion |     - DoubleConversion | ||||||
|     - glog |     - glog | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |     - RCT-Folly (= 2021.07.22.00) | ||||||
|     - React-callinvoker (= 0.68.2) |     - React-callinvoker (= 0.71.1) | ||||||
|     - React-jsi (= 0.68.2) |     - React-jsi (= 0.71.1) | ||||||
|     - React-jsinspector (= 0.68.2) |     - React-jsinspector (= 0.71.1) | ||||||
|     - React-logger (= 0.68.2) |     - React-logger (= 0.71.1) | ||||||
|     - React-perflogger (= 0.68.2) |     - React-perflogger (= 0.71.1) | ||||||
|     - React-runtimeexecutor (= 0.68.2) |     - React-runtimeexecutor (= 0.71.1) | ||||||
|   - React-jsi (0.68.2): |   - React-hermes (0.71.1): | ||||||
|  |     - DoubleConversion | ||||||
|  |     - glog | ||||||
|  |     - hermes-engine | ||||||
|  |     - RCT-Folly (= 2021.07.22.00) | ||||||
|  |     - RCT-Folly/Futures (= 2021.07.22.00) | ||||||
|  |     - React-cxxreact (= 0.71.1) | ||||||
|  |     - React-jsiexecutor (= 0.71.1) | ||||||
|  |     - React-jsinspector (= 0.71.1) | ||||||
|  |     - React-perflogger (= 0.71.1) | ||||||
|  |   - React-jsi (0.71.1): | ||||||
|     - boost (= 1.76.0) |     - boost (= 1.76.0) | ||||||
|     - DoubleConversion |     - DoubleConversion | ||||||
|     - glog |     - glog | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |     - hermes-engine | ||||||
|     - React-jsi/Default (= 0.68.2) |     - RCT-Folly (= 2021.07.22.00) | ||||||
|   - React-jsi/Default (0.68.2): |   - React-jsiexecutor (0.71.1): | ||||||
|     - boost (= 1.76.0) |  | ||||||
|     - DoubleConversion |     - DoubleConversion | ||||||
|     - glog |     - glog | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |     - RCT-Folly (= 2021.07.22.00) | ||||||
|   - React-jsiexecutor (0.68.2): |     - React-cxxreact (= 0.71.1) | ||||||
|  |     - React-jsi (= 0.71.1) | ||||||
|  |     - React-perflogger (= 0.71.1) | ||||||
|  |   - React-jsinspector (0.71.1) | ||||||
|  |   - React-logger (0.71.1): | ||||||
|  |     - glog | ||||||
|  |   - react-native-update (8.1.0): | ||||||
|  |     - React | ||||||
|  |     - react-native-update/HDiffPatch (= 8.1.0) | ||||||
|  |     - react-native-update/RCTPushy (= 8.1.0) | ||||||
|  |     - SSZipArchive | ||||||
|  |   - react-native-update/HDiffPatch (8.1.0): | ||||||
|  |     - React | ||||||
|  |     - SSZipArchive | ||||||
|  |   - react-native-update/RCTPushy (8.1.0): | ||||||
|  |     - React | ||||||
|  |     - SSZipArchive | ||||||
|  |   - React-perflogger (0.71.1) | ||||||
|  |   - React-RCTActionSheet (0.71.1): | ||||||
|  |     - React-Core/RCTActionSheetHeaders (= 0.71.1) | ||||||
|  |   - React-RCTAnimation (0.71.1): | ||||||
|  |     - RCT-Folly (= 2021.07.22.00) | ||||||
|  |     - RCTTypeSafety (= 0.71.1) | ||||||
|  |     - React-Codegen (= 0.71.1) | ||||||
|  |     - React-Core/RCTAnimationHeaders (= 0.71.1) | ||||||
|  |     - React-jsi (= 0.71.1) | ||||||
|  |     - ReactCommon/turbomodule/core (= 0.71.1) | ||||||
|  |   - React-RCTAppDelegate (0.71.1): | ||||||
|  |     - RCT-Folly | ||||||
|  |     - RCTRequired | ||||||
|  |     - RCTTypeSafety | ||||||
|  |     - React-Core | ||||||
|  |     - ReactCommon/turbomodule/core | ||||||
|  |   - React-RCTBlob (0.71.1): | ||||||
|  |     - RCT-Folly (= 2021.07.22.00) | ||||||
|  |     - React-Codegen (= 0.71.1) | ||||||
|  |     - React-Core/RCTBlobHeaders (= 0.71.1) | ||||||
|  |     - React-Core/RCTWebSocket (= 0.71.1) | ||||||
|  |     - React-jsi (= 0.71.1) | ||||||
|  |     - React-RCTNetwork (= 0.71.1) | ||||||
|  |     - ReactCommon/turbomodule/core (= 0.71.1) | ||||||
|  |   - React-RCTImage (0.71.1): | ||||||
|  |     - RCT-Folly (= 2021.07.22.00) | ||||||
|  |     - RCTTypeSafety (= 0.71.1) | ||||||
|  |     - React-Codegen (= 0.71.1) | ||||||
|  |     - React-Core/RCTImageHeaders (= 0.71.1) | ||||||
|  |     - React-jsi (= 0.71.1) | ||||||
|  |     - React-RCTNetwork (= 0.71.1) | ||||||
|  |     - ReactCommon/turbomodule/core (= 0.71.1) | ||||||
|  |   - React-RCTLinking (0.71.1): | ||||||
|  |     - React-Codegen (= 0.71.1) | ||||||
|  |     - React-Core/RCTLinkingHeaders (= 0.71.1) | ||||||
|  |     - React-jsi (= 0.71.1) | ||||||
|  |     - ReactCommon/turbomodule/core (= 0.71.1) | ||||||
|  |   - React-RCTNetwork (0.71.1): | ||||||
|  |     - RCT-Folly (= 2021.07.22.00) | ||||||
|  |     - RCTTypeSafety (= 0.71.1) | ||||||
|  |     - React-Codegen (= 0.71.1) | ||||||
|  |     - React-Core/RCTNetworkHeaders (= 0.71.1) | ||||||
|  |     - React-jsi (= 0.71.1) | ||||||
|  |     - ReactCommon/turbomodule/core (= 0.71.1) | ||||||
|  |   - React-RCTSettings (0.71.1): | ||||||
|  |     - RCT-Folly (= 2021.07.22.00) | ||||||
|  |     - RCTTypeSafety (= 0.71.1) | ||||||
|  |     - React-Codegen (= 0.71.1) | ||||||
|  |     - React-Core/RCTSettingsHeaders (= 0.71.1) | ||||||
|  |     - React-jsi (= 0.71.1) | ||||||
|  |     - ReactCommon/turbomodule/core (= 0.71.1) | ||||||
|  |   - React-RCTText (0.71.1): | ||||||
|  |     - React-Core/RCTTextHeaders (= 0.71.1) | ||||||
|  |   - React-RCTVibration (0.71.1): | ||||||
|  |     - RCT-Folly (= 2021.07.22.00) | ||||||
|  |     - React-Codegen (= 0.71.1) | ||||||
|  |     - React-Core/RCTVibrationHeaders (= 0.71.1) | ||||||
|  |     - React-jsi (= 0.71.1) | ||||||
|  |     - ReactCommon/turbomodule/core (= 0.71.1) | ||||||
|  |   - React-runtimeexecutor (0.71.1): | ||||||
|  |     - React-jsi (= 0.71.1) | ||||||
|  |   - ReactCommon/turbomodule/bridging (0.71.1): | ||||||
|     - DoubleConversion |     - DoubleConversion | ||||||
|     - glog |     - glog | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |     - RCT-Folly (= 2021.07.22.00) | ||||||
|     - React-cxxreact (= 0.68.2) |     - React-callinvoker (= 0.71.1) | ||||||
|     - React-jsi (= 0.68.2) |     - React-Core (= 0.71.1) | ||||||
|     - React-perflogger (= 0.68.2) |     - React-cxxreact (= 0.71.1) | ||||||
|   - React-jsinspector (0.68.2) |     - React-jsi (= 0.71.1) | ||||||
|   - React-logger (0.68.2): |     - React-logger (= 0.71.1) | ||||||
|     - glog |     - React-perflogger (= 0.71.1) | ||||||
|   - react-native-update (7.4.2): |   - ReactCommon/turbomodule/core (0.71.1): | ||||||
|     - React |  | ||||||
|     - react-native-update/HDiffPatch (= 7.4.2) |  | ||||||
|     - react-native-update/RCTPushy (= 7.4.2) |  | ||||||
|     - SSZipArchive |  | ||||||
|   - react-native-update/HDiffPatch (7.4.2): |  | ||||||
|     - React |  | ||||||
|     - SSZipArchive |  | ||||||
|   - react-native-update/RCTPushy (7.4.2): |  | ||||||
|     - React |  | ||||||
|     - SSZipArchive |  | ||||||
|   - React-perflogger (0.68.2) |  | ||||||
|   - React-RCTActionSheet (0.68.2): |  | ||||||
|     - React-Core/RCTActionSheetHeaders (= 0.68.2) |  | ||||||
|   - React-RCTAnimation (0.68.2): |  | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |  | ||||||
|     - RCTTypeSafety (= 0.68.2) |  | ||||||
|     - React-Codegen (= 0.68.2) |  | ||||||
|     - React-Core/RCTAnimationHeaders (= 0.68.2) |  | ||||||
|     - React-jsi (= 0.68.2) |  | ||||||
|     - ReactCommon/turbomodule/core (= 0.68.2) |  | ||||||
|   - React-RCTBlob (0.68.2): |  | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |  | ||||||
|     - React-Codegen (= 0.68.2) |  | ||||||
|     - React-Core/RCTBlobHeaders (= 0.68.2) |  | ||||||
|     - React-Core/RCTWebSocket (= 0.68.2) |  | ||||||
|     - React-jsi (= 0.68.2) |  | ||||||
|     - React-RCTNetwork (= 0.68.2) |  | ||||||
|     - ReactCommon/turbomodule/core (= 0.68.2) |  | ||||||
|   - React-RCTImage (0.68.2): |  | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |  | ||||||
|     - RCTTypeSafety (= 0.68.2) |  | ||||||
|     - React-Codegen (= 0.68.2) |  | ||||||
|     - React-Core/RCTImageHeaders (= 0.68.2) |  | ||||||
|     - React-jsi (= 0.68.2) |  | ||||||
|     - React-RCTNetwork (= 0.68.2) |  | ||||||
|     - ReactCommon/turbomodule/core (= 0.68.2) |  | ||||||
|   - React-RCTLinking (0.68.2): |  | ||||||
|     - React-Codegen (= 0.68.2) |  | ||||||
|     - React-Core/RCTLinkingHeaders (= 0.68.2) |  | ||||||
|     - React-jsi (= 0.68.2) |  | ||||||
|     - ReactCommon/turbomodule/core (= 0.68.2) |  | ||||||
|   - React-RCTNetwork (0.68.2): |  | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |  | ||||||
|     - RCTTypeSafety (= 0.68.2) |  | ||||||
|     - React-Codegen (= 0.68.2) |  | ||||||
|     - React-Core/RCTNetworkHeaders (= 0.68.2) |  | ||||||
|     - React-jsi (= 0.68.2) |  | ||||||
|     - ReactCommon/turbomodule/core (= 0.68.2) |  | ||||||
|   - React-RCTSettings (0.68.2): |  | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |  | ||||||
|     - RCTTypeSafety (= 0.68.2) |  | ||||||
|     - React-Codegen (= 0.68.2) |  | ||||||
|     - React-Core/RCTSettingsHeaders (= 0.68.2) |  | ||||||
|     - React-jsi (= 0.68.2) |  | ||||||
|     - ReactCommon/turbomodule/core (= 0.68.2) |  | ||||||
|   - React-RCTText (0.68.2): |  | ||||||
|     - React-Core/RCTTextHeaders (= 0.68.2) |  | ||||||
|   - React-RCTVibration (0.68.2): |  | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |  | ||||||
|     - React-Codegen (= 0.68.2) |  | ||||||
|     - React-Core/RCTVibrationHeaders (= 0.68.2) |  | ||||||
|     - React-jsi (= 0.68.2) |  | ||||||
|     - ReactCommon/turbomodule/core (= 0.68.2) |  | ||||||
|   - React-runtimeexecutor (0.68.2): |  | ||||||
|     - React-jsi (= 0.68.2) |  | ||||||
|   - ReactCommon/turbomodule/core (0.68.2): |  | ||||||
|     - DoubleConversion |     - DoubleConversion | ||||||
|     - glog |     - glog | ||||||
|     - RCT-Folly (= 2021.06.28.00-v2) |     - RCT-Folly (= 2021.07.22.00) | ||||||
|     - React-callinvoker (= 0.68.2) |     - React-callinvoker (= 0.71.1) | ||||||
|     - React-Core (= 0.68.2) |     - React-Core (= 0.71.1) | ||||||
|     - React-cxxreact (= 0.68.2) |     - React-cxxreact (= 0.71.1) | ||||||
|     - React-jsi (= 0.68.2) |     - React-jsi (= 0.71.1) | ||||||
|     - React-logger (= 0.68.2) |     - React-logger (= 0.71.1) | ||||||
|     - React-perflogger (= 0.68.2) |     - React-perflogger (= 0.71.1) | ||||||
|   - SocketRocket (0.6.0) |   - SocketRocket (0.6.0) | ||||||
|   - SSZipArchive (2.4.3) |   - SSZipArchive (2.4.3) | ||||||
|   - Yoga (1.14.0) |   - Yoga (1.14.0) | ||||||
| @@ -371,10 +402,10 @@ DEPENDENCIES: | |||||||
|   - FBReactNativeSpec (from `../node_modules/react-native/React/FBReactNativeSpec`) |   - FBReactNativeSpec (from `../node_modules/react-native/React/FBReactNativeSpec`) | ||||||
|   - Flipper (= 0.125.0) |   - Flipper (= 0.125.0) | ||||||
|   - Flipper-Boost-iOSX (= 1.76.0.1.11) |   - Flipper-Boost-iOSX (= 1.76.0.1.11) | ||||||
|   - Flipper-DoubleConversion (= 3.2.0) |   - Flipper-DoubleConversion (= 3.2.0.1) | ||||||
|   - Flipper-Fmt (= 7.1.7) |   - Flipper-Fmt (= 7.1.7) | ||||||
|   - Flipper-Folly (= 2.6.10) |   - Flipper-Folly (= 2.6.10) | ||||||
|   - Flipper-Glog (= 0.5.0.4) |   - Flipper-Glog (= 0.5.0.5) | ||||||
|   - Flipper-PeerTalk (= 0.0.4) |   - Flipper-PeerTalk (= 0.0.4) | ||||||
|   - Flipper-RSocket (= 1.4.3) |   - Flipper-RSocket (= 1.4.3) | ||||||
|   - FlipperKit (= 0.125.0) |   - FlipperKit (= 0.125.0) | ||||||
| @@ -391,6 +422,8 @@ DEPENDENCIES: | |||||||
|   - FlipperKit/FlipperKitUserDefaultsPlugin (= 0.125.0) |   - FlipperKit/FlipperKitUserDefaultsPlugin (= 0.125.0) | ||||||
|   - FlipperKit/SKIOSNetworkPlugin (= 0.125.0) |   - FlipperKit/SKIOSNetworkPlugin (= 0.125.0) | ||||||
|   - glog (from `../node_modules/react-native/third-party-podspecs/glog.podspec`) |   - glog (from `../node_modules/react-native/third-party-podspecs/glog.podspec`) | ||||||
|  |   - hermes-engine (from `../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec`) | ||||||
|  |   - libevent (~> 2.1.12) | ||||||
|   - OpenSSL-Universal (= 1.1.1100) |   - OpenSSL-Universal (= 1.1.1100) | ||||||
|   - RCT-Folly (from `../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`) |   - RCT-Folly (from `../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`) | ||||||
|   - RCTRequired (from `../node_modules/react-native/Libraries/RCTRequired`) |   - RCTRequired (from `../node_modules/react-native/Libraries/RCTRequired`) | ||||||
| @@ -403,14 +436,16 @@ DEPENDENCIES: | |||||||
|   - React-Core/RCTWebSocket (from `../node_modules/react-native/`) |   - React-Core/RCTWebSocket (from `../node_modules/react-native/`) | ||||||
|   - React-CoreModules (from `../node_modules/react-native/React/CoreModules`) |   - React-CoreModules (from `../node_modules/react-native/React/CoreModules`) | ||||||
|   - React-cxxreact (from `../node_modules/react-native/ReactCommon/cxxreact`) |   - React-cxxreact (from `../node_modules/react-native/ReactCommon/cxxreact`) | ||||||
|  |   - React-hermes (from `../node_modules/react-native/ReactCommon/hermes`) | ||||||
|   - React-jsi (from `../node_modules/react-native/ReactCommon/jsi`) |   - React-jsi (from `../node_modules/react-native/ReactCommon/jsi`) | ||||||
|   - React-jsiexecutor (from `../node_modules/react-native/ReactCommon/jsiexecutor`) |   - React-jsiexecutor (from `../node_modules/react-native/ReactCommon/jsiexecutor`) | ||||||
|   - React-jsinspector (from `../node_modules/react-native/ReactCommon/jsinspector`) |   - React-jsinspector (from `../node_modules/react-native/ReactCommon/jsinspector`) | ||||||
|   - React-logger (from `../node_modules/react-native/ReactCommon/logger`) |   - React-logger (from `../node_modules/react-native/ReactCommon/logger`) | ||||||
|   - react-native-update (from `../../..`) |   - react-native-update (from `../node_modules/react-native-update`) | ||||||
|   - React-perflogger (from `../node_modules/react-native/ReactCommon/reactperflogger`) |   - React-perflogger (from `../node_modules/react-native/ReactCommon/reactperflogger`) | ||||||
|   - React-RCTActionSheet (from `../node_modules/react-native/Libraries/ActionSheetIOS`) |   - React-RCTActionSheet (from `../node_modules/react-native/Libraries/ActionSheetIOS`) | ||||||
|   - React-RCTAnimation (from `../node_modules/react-native/Libraries/NativeAnimation`) |   - React-RCTAnimation (from `../node_modules/react-native/Libraries/NativeAnimation`) | ||||||
|  |   - React-RCTAppDelegate (from `../node_modules/react-native/Libraries/AppDelegate`) | ||||||
|   - React-RCTBlob (from `../node_modules/react-native/Libraries/Blob`) |   - React-RCTBlob (from `../node_modules/react-native/Libraries/Blob`) | ||||||
|   - React-RCTImage (from `../node_modules/react-native/Libraries/Image`) |   - React-RCTImage (from `../node_modules/react-native/Libraries/Image`) | ||||||
|   - React-RCTLinking (from `../node_modules/react-native/Libraries/LinkingIOS`) |   - React-RCTLinking (from `../node_modules/react-native/Libraries/LinkingIOS`) | ||||||
| @@ -452,6 +487,8 @@ EXTERNAL SOURCES: | |||||||
|     :path: "../node_modules/react-native/React/FBReactNativeSpec" |     :path: "../node_modules/react-native/React/FBReactNativeSpec" | ||||||
|   glog: |   glog: | ||||||
|     :podspec: "../node_modules/react-native/third-party-podspecs/glog.podspec" |     :podspec: "../node_modules/react-native/third-party-podspecs/glog.podspec" | ||||||
|  |   hermes-engine: | ||||||
|  |     :podspec: "../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec" | ||||||
|   RCT-Folly: |   RCT-Folly: | ||||||
|     :podspec: "../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec" |     :podspec: "../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec" | ||||||
|   RCTRequired: |   RCTRequired: | ||||||
| @@ -470,6 +507,8 @@ EXTERNAL SOURCES: | |||||||
|     :path: "../node_modules/react-native/React/CoreModules" |     :path: "../node_modules/react-native/React/CoreModules" | ||||||
|   React-cxxreact: |   React-cxxreact: | ||||||
|     :path: "../node_modules/react-native/ReactCommon/cxxreact" |     :path: "../node_modules/react-native/ReactCommon/cxxreact" | ||||||
|  |   React-hermes: | ||||||
|  |     :path: "../node_modules/react-native/ReactCommon/hermes" | ||||||
|   React-jsi: |   React-jsi: | ||||||
|     :path: "../node_modules/react-native/ReactCommon/jsi" |     :path: "../node_modules/react-native/ReactCommon/jsi" | ||||||
|   React-jsiexecutor: |   React-jsiexecutor: | ||||||
| @@ -479,13 +518,15 @@ EXTERNAL SOURCES: | |||||||
|   React-logger: |   React-logger: | ||||||
|     :path: "../node_modules/react-native/ReactCommon/logger" |     :path: "../node_modules/react-native/ReactCommon/logger" | ||||||
|   react-native-update: |   react-native-update: | ||||||
|     :path: "../../.." |     :path: "../node_modules/react-native-update" | ||||||
|   React-perflogger: |   React-perflogger: | ||||||
|     :path: "../node_modules/react-native/ReactCommon/reactperflogger" |     :path: "../node_modules/react-native/ReactCommon/reactperflogger" | ||||||
|   React-RCTActionSheet: |   React-RCTActionSheet: | ||||||
|     :path: "../node_modules/react-native/Libraries/ActionSheetIOS" |     :path: "../node_modules/react-native/Libraries/ActionSheetIOS" | ||||||
|   React-RCTAnimation: |   React-RCTAnimation: | ||||||
|     :path: "../node_modules/react-native/Libraries/NativeAnimation" |     :path: "../node_modules/react-native/Libraries/NativeAnimation" | ||||||
|  |   React-RCTAppDelegate: | ||||||
|  |     :path: "../node_modules/react-native/Libraries/AppDelegate" | ||||||
|   React-RCTBlob: |   React-RCTBlob: | ||||||
|     :path: "../node_modules/react-native/Libraries/Blob" |     :path: "../node_modules/react-native/Libraries/Blob" | ||||||
|   React-RCTImage: |   React-RCTImage: | ||||||
| @@ -511,52 +552,55 @@ SPEC CHECKSUMS: | |||||||
|   boost: a7c83b31436843459a1961bfd74b96033dc77234 |   boost: a7c83b31436843459a1961bfd74b96033dc77234 | ||||||
|   CocoaAsyncSocket: 065fd1e645c7abab64f7a6a2007a48038fdc6a99 |   CocoaAsyncSocket: 065fd1e645c7abab64f7a6a2007a48038fdc6a99 | ||||||
|   DoubleConversion: 831926d9b8bf8166fd87886c4abab286c2422662 |   DoubleConversion: 831926d9b8bf8166fd87886c4abab286c2422662 | ||||||
|   FBLazyVector: a7a655862f6b09625d11c772296b01cd5164b648 |   FBLazyVector: ad72713385db5289b19f1ead07e8e4aa26dcb01d | ||||||
|   FBReactNativeSpec: 81ce99032d5b586fddd6a38d450f8595f7e04be4 |   FBReactNativeSpec: df2602c11e33d310433496e28a48b4b2be652a61 | ||||||
|   Flipper: 26fc4b7382499f1281eb8cb921e5c3ad6de91fe0 |   Flipper: 26fc4b7382499f1281eb8cb921e5c3ad6de91fe0 | ||||||
|   Flipper-Boost-iOSX: fd1e2b8cbef7e662a122412d7ac5f5bea715403c |   Flipper-Boost-iOSX: fd1e2b8cbef7e662a122412d7ac5f5bea715403c | ||||||
|   Flipper-DoubleConversion: 3d3d04a078d4f3a1b6c6916587f159dc11f232c4 |   Flipper-DoubleConversion: 2dc99b02f658daf147069aad9dbd29d8feb06d30 | ||||||
|   Flipper-Fmt: 60cbdd92fc254826e61d669a5d87ef7015396a9b |   Flipper-Fmt: 60cbdd92fc254826e61d669a5d87ef7015396a9b | ||||||
|   Flipper-Folly: 584845625005ff068a6ebf41f857f468decd26b3 |   Flipper-Folly: 584845625005ff068a6ebf41f857f468decd26b3 | ||||||
|   Flipper-Glog: 87bc98ff48de90cb5b0b5114ed3da79d85ee2dd4 |   Flipper-Glog: 70c50ce58ddaf67dc35180db05f191692570f446 | ||||||
|   Flipper-PeerTalk: 116d8f857dc6ef55c7a5a75ea3ceaafe878aadc9 |   Flipper-PeerTalk: 116d8f857dc6ef55c7a5a75ea3ceaafe878aadc9 | ||||||
|   Flipper-RSocket: d9d9ade67cbecf6ac10730304bf5607266dd2541 |   Flipper-RSocket: d9d9ade67cbecf6ac10730304bf5607266dd2541 | ||||||
|   FlipperKit: cbdee19bdd4e7f05472a66ce290f1b729ba3cb86 |   FlipperKit: cbdee19bdd4e7f05472a66ce290f1b729ba3cb86 | ||||||
|   fmt: ff9d55029c625d3757ed641535fd4a75fedc7ce9 |   fmt: ff9d55029c625d3757ed641535fd4a75fedc7ce9 | ||||||
|   glog: 476ee3e89abb49e07f822b48323c51c57124b572 |   glog: 476ee3e89abb49e07f822b48323c51c57124b572 | ||||||
|  |   hermes-engine: 922ccd744f50d9bfde09e9677bf0f3b562ea5fb9 | ||||||
|   libevent: 4049cae6c81cdb3654a443be001fb9bdceff7913 |   libevent: 4049cae6c81cdb3654a443be001fb9bdceff7913 | ||||||
|   OpenSSL-Universal: ebc357f1e6bc71fa463ccb2fe676756aff50e88c |   OpenSSL-Universal: ebc357f1e6bc71fa463ccb2fe676756aff50e88c | ||||||
|   RCT-Folly: 4d8508a426467c48885f1151029bc15fa5d7b3b8 |   RCT-Folly: 424b8c9a7a0b9ab2886ffe9c3b041ef628fd4fb1 | ||||||
|   RCTRequired: 3e917ea5377751094f38145fdece525aa90545a0 |   RCTRequired: fd4d923b964658aa0c4091a32c8b2004c6d9e3a6 | ||||||
|   RCTTypeSafety: c43c072a4bd60feb49a9570b0517892b4305c45e |   RCTTypeSafety: c276d85975bde3d8448907235c70bf0da257adfd | ||||||
|   React: 176dd882de001854ced260fad41bb68a31aa4bd0 |   React: e481a67971af1ce9639c9f746b753dd0e84ca108 | ||||||
|   React-callinvoker: c2864d1818d6e64928d2faf774a3800dfc38fe1f |   React-callinvoker: 1051c04a94fa9d243786b86380606bad701a3b31 | ||||||
|   React-Codegen: 98b6f97f0a7abf7d67e4ce435c77c05b7a95cf05 |   React-Codegen: 14b1e716d361d5ad95e0ce1a338f3fa0733a98b5 | ||||||
|   React-Core: fdaa2916b1c893f39f02cff0476d1fb0cab1e352 |   React-Core: 698fc3baecb80d511d987475a16d036cec6d287f | ||||||
|   React-CoreModules: fd8705b80699ec36c2cdd635c2ce9d874b9cfdfc |   React-CoreModules: 59245305f41ff0adfeac334acc0594dea4585a7c | ||||||
|   React-cxxreact: 1832d971f7b0cb2c7b943dc0ec962762c90c906e |   React-cxxreact: 49accd2954b0f532805dbcd1918fa6962f32f247 | ||||||
|   React-jsi: 72af715135abe8c3f0dcf3b2548b71d048b69a7e |   React-hermes: d068733294581a085e95b6024e8d951b005e26d3 | ||||||
|   React-jsiexecutor: b7b553412f2ec768fe6c8f27cd6bafdb9d8719e6 |   React-jsi: 122b9bce14f4c6c7cb58f28f87912cfe091885fa | ||||||
|   React-jsinspector: c5989c77cb89ae6a69561095a61cce56a44ae8e8 |   React-jsiexecutor: 60cf272aababc5212410e4249d17cea14fc36caa | ||||||
|   React-logger: a0833912d93b36b791b7a521672d8ee89107aff1 |   React-jsinspector: ff56004b0c974b688a6548c156d5830ad751ae07 | ||||||
|   react-native-update: 35b44bdcfd37e0f0bbef8ceb1bdda85067e591ff |   React-logger: 60a0b5f8bed667ecf9e24fecca1f30d125de6d75 | ||||||
|   React-perflogger: a18b4f0bd933b8b24ecf9f3c54f9bf65180f3fe6 |   react-native-update: 394b7f52ed3c0688d12084f3fb47d49504131be6 | ||||||
|   React-RCTActionSheet: 547fe42fdb4b6089598d79f8e1d855d7c23e2162 |   React-perflogger: ec8eef2a8f03ecfa6361c2c5fb9197ef4a29cc85 | ||||||
|   React-RCTAnimation: bc9440a1c37b06ae9ebbb532d244f607805c6034 |   React-RCTActionSheet: a0c023b86cf4c862fa9c4eb0f6f91fbe878fb2de | ||||||
|   React-RCTBlob: a1295c8e183756d7ef30ba6e8f8144dfe8a19215 |   React-RCTAnimation: 168d53718c74153947c0109f55900faa64d79439 | ||||||
|   React-RCTImage: a30d1ee09b1334067fbb6f30789aae2d7ac150c9 |   React-RCTAppDelegate: a8efbab128b34aa07a9491c85a41401210b1bec5 | ||||||
|   React-RCTLinking: ffc6d5b88d1cb9aca13c54c2ec6507fbf07f2ac4 |   React-RCTBlob: 9bcbfc893bfda9f6b2eb016329d38c0f6366d31a | ||||||
|   React-RCTNetwork: f807a2facab6cf5cf36d592e634611de9cf12d81 |   React-RCTImage: 3fcd4570b4b0f1ac2f4b4b6308dba33ce66c5b50 | ||||||
|   React-RCTSettings: 861806819226ed8332e6a8f90df2951a34bb3e7f |   React-RCTLinking: 1edb8e1bb3fc39bf9e13c63d6aaaa3f0c3d18683 | ||||||
|   React-RCTText: f3fb464cc41a50fc7a1aba4deeb76a9ad8282cb9 |   React-RCTNetwork: 500a79e0e0f67678077df727fabba87a55c043e1 | ||||||
|   React-RCTVibration: 79040b92bfa9c3c2d2cb4f57e981164ec7ab9374 |   React-RCTSettings: cc4414eb84ad756d619076c3999fecbf12896d6f | ||||||
|   React-runtimeexecutor: b960b687d2dfef0d3761fbb187e01812ebab8b23 |   React-RCTText: 2a34261f3da6e34f47a62154def657546ebfa5e1 | ||||||
|   ReactCommon: 095366164a276d91ea704ce53cb03825c487a3f2 |   React-RCTVibration: 49d531ec8498e0afa2c9b22c2205784372e3d4f3 | ||||||
|  |   React-runtimeexecutor: 311feb67600774723fe10eb8801d3138cae9ad67 | ||||||
|  |   ReactCommon: 03be76588338a27a88d103b35c3c44a3fd43d136 | ||||||
|   SocketRocket: fccef3f9c5cedea1353a9ef6ada904fde10d6608 |   SocketRocket: fccef3f9c5cedea1353a9ef6ada904fde10d6608 | ||||||
|   SSZipArchive: fe6a26b2a54d5a0890f2567b5cc6de5caa600aef |   SSZipArchive: fe6a26b2a54d5a0890f2567b5cc6de5caa600aef | ||||||
|   Yoga: 99652481fcd320aefa4a7ef90095b95acd181952 |   Yoga: 921eb014669cf9c718ada68b08d362517d564e0c | ||||||
|   YogaKit: f782866e155069a2cca2517aafea43200b01fd5a |   YogaKit: f782866e155069a2cca2517aafea43200b01fd5a | ||||||
|  |  | ||||||
| PODFILE CHECKSUM: 3360a41d7ffd204bbb0ce92d9f9025f372649143 | PODFILE CHECKSUM: 640d0fbc8653c12b1d7121eae0169fad3d42517e | ||||||
|  |  | ||||||
| COCOAPODS: 1.11.3 | COCOAPODS: 1.11.3 | ||||||
|   | |||||||
| @@ -13,6 +13,7 @@ | |||||||
| 		13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; }; | 		13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; }; | ||||||
| 		13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; }; | 		13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; }; | ||||||
| 		81AB9BB82411601600AC10FF /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */; }; | 		81AB9BB82411601600AC10FF /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */; }; | ||||||
|  | 		983131D2EBAB94EBB6700C34 /* libPods-testHotupdate-testHotupdateTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 59B080016B9F7992256D7BCD /* libPods-testHotupdate-testHotupdateTests.a */; }; | ||||||
| /* End PBXBuildFile section */ | /* End PBXBuildFile section */ | ||||||
|  |  | ||||||
| /* Begin PBXContainerItemProxy section */ | /* Begin PBXContainerItemProxy section */ | ||||||
| @@ -35,8 +36,11 @@ | |||||||
| 		13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = testHotupdate/Images.xcassets; sourceTree = "<group>"; }; | 		13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = testHotupdate/Images.xcassets; sourceTree = "<group>"; }; | ||||||
| 		13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = testHotupdate/Info.plist; sourceTree = "<group>"; }; | 		13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = testHotupdate/Info.plist; sourceTree = "<group>"; }; | ||||||
| 		13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = testHotupdate/main.m; sourceTree = "<group>"; }; | 		13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = testHotupdate/main.m; sourceTree = "<group>"; }; | ||||||
|  | 		35A33350B5D9A46B028EB31B /* Pods-testHotupdate-testHotupdateTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-testHotupdate-testHotupdateTests.release.xcconfig"; path = "Target Support Files/Pods-testHotupdate-testHotupdateTests/Pods-testHotupdate-testHotupdateTests.release.xcconfig"; sourceTree = "<group>"; }; | ||||||
| 		3B4392A12AC88292D35C810B /* Pods-testHotupdate.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-testHotupdate.debug.xcconfig"; path = "Target Support Files/Pods-testHotupdate/Pods-testHotupdate.debug.xcconfig"; sourceTree = "<group>"; }; | 		3B4392A12AC88292D35C810B /* Pods-testHotupdate.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-testHotupdate.debug.xcconfig"; path = "Target Support Files/Pods-testHotupdate/Pods-testHotupdate.debug.xcconfig"; sourceTree = "<group>"; }; | ||||||
|  | 		404B8A109FF0E52B839C8687 /* Pods-testHotupdate-testHotupdateTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-testHotupdate-testHotupdateTests.debug.xcconfig"; path = "Target Support Files/Pods-testHotupdate-testHotupdateTests/Pods-testHotupdate-testHotupdateTests.debug.xcconfig"; sourceTree = "<group>"; }; | ||||||
| 		5709B34CF0A7D63546082F79 /* Pods-testHotupdate.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-testHotupdate.release.xcconfig"; path = "Target Support Files/Pods-testHotupdate/Pods-testHotupdate.release.xcconfig"; sourceTree = "<group>"; }; | 		5709B34CF0A7D63546082F79 /* Pods-testHotupdate.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-testHotupdate.release.xcconfig"; path = "Target Support Files/Pods-testHotupdate/Pods-testHotupdate.release.xcconfig"; sourceTree = "<group>"; }; | ||||||
|  | 		59B080016B9F7992256D7BCD /* libPods-testHotupdate-testHotupdateTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-testHotupdate-testHotupdateTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; | ||||||
| 		5DCACB8F33CDC322A6C60F78 /* libPods-testHotupdate.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-testHotupdate.a"; sourceTree = BUILT_PRODUCTS_DIR; }; | 		5DCACB8F33CDC322A6C60F78 /* libPods-testHotupdate.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-testHotupdate.a"; sourceTree = BUILT_PRODUCTS_DIR; }; | ||||||
| 		81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = LaunchScreen.storyboard; path = testHotupdate/LaunchScreen.storyboard; sourceTree = "<group>"; }; | 		81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = LaunchScreen.storyboard; path = testHotupdate/LaunchScreen.storyboard; sourceTree = "<group>"; }; | ||||||
| 		ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; }; | 		ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; }; | ||||||
| @@ -47,6 +51,7 @@ | |||||||
| 			isa = PBXFrameworksBuildPhase; | 			isa = PBXFrameworksBuildPhase; | ||||||
| 			buildActionMask = 2147483647; | 			buildActionMask = 2147483647; | ||||||
| 			files = ( | 			files = ( | ||||||
|  | 				983131D2EBAB94EBB6700C34 /* libPods-testHotupdate-testHotupdateTests.a in Frameworks */, | ||||||
| 			); | 			); | ||||||
| 			runOnlyForDeploymentPostprocessing = 0; | 			runOnlyForDeploymentPostprocessing = 0; | ||||||
| 		}; | 		}; | ||||||
| @@ -96,6 +101,7 @@ | |||||||
| 			children = ( | 			children = ( | ||||||
| 				ED297162215061F000B7C4FE /* JavaScriptCore.framework */, | 				ED297162215061F000B7C4FE /* JavaScriptCore.framework */, | ||||||
| 				5DCACB8F33CDC322A6C60F78 /* libPods-testHotupdate.a */, | 				5DCACB8F33CDC322A6C60F78 /* libPods-testHotupdate.a */, | ||||||
|  | 				59B080016B9F7992256D7BCD /* libPods-testHotupdate-testHotupdateTests.a */, | ||||||
| 			); | 			); | ||||||
| 			name = Frameworks; | 			name = Frameworks; | ||||||
| 			sourceTree = "<group>"; | 			sourceTree = "<group>"; | ||||||
| @@ -136,6 +142,8 @@ | |||||||
| 			children = ( | 			children = ( | ||||||
| 				3B4392A12AC88292D35C810B /* Pods-testHotupdate.debug.xcconfig */, | 				3B4392A12AC88292D35C810B /* Pods-testHotupdate.debug.xcconfig */, | ||||||
| 				5709B34CF0A7D63546082F79 /* Pods-testHotupdate.release.xcconfig */, | 				5709B34CF0A7D63546082F79 /* Pods-testHotupdate.release.xcconfig */, | ||||||
|  | 				404B8A109FF0E52B839C8687 /* Pods-testHotupdate-testHotupdateTests.debug.xcconfig */, | ||||||
|  | 				35A33350B5D9A46B028EB31B /* Pods-testHotupdate-testHotupdateTests.release.xcconfig */, | ||||||
| 			); | 			); | ||||||
| 			path = Pods; | 			path = Pods; | ||||||
| 			sourceTree = "<group>"; | 			sourceTree = "<group>"; | ||||||
| @@ -147,9 +155,12 @@ | |||||||
| 			isa = PBXNativeTarget; | 			isa = PBXNativeTarget; | ||||||
| 			buildConfigurationList = 00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "testHotupdateTests" */; | 			buildConfigurationList = 00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "testHotupdateTests" */; | ||||||
| 			buildPhases = ( | 			buildPhases = ( | ||||||
|  | 				DC20F2927A7E6CA06E8D485C /* [CP] Check Pods Manifest.lock */, | ||||||
| 				00E356EA1AD99517003FC87E /* Sources */, | 				00E356EA1AD99517003FC87E /* Sources */, | ||||||
| 				00E356EB1AD99517003FC87E /* Frameworks */, | 				00E356EB1AD99517003FC87E /* Frameworks */, | ||||||
| 				00E356EC1AD99517003FC87E /* Resources */, | 				00E356EC1AD99517003FC87E /* Resources */, | ||||||
|  | 				4C7F70F5C06F7BFA31EE8610 /* [CP] Embed Pods Frameworks */, | ||||||
|  | 				BC2CDA870086B299A0FA004A /* [CP] Copy Pods Resources */, | ||||||
| 			); | 			); | ||||||
| 			buildRules = ( | 			buildRules = ( | ||||||
| 			); | 			); | ||||||
| @@ -270,6 +281,40 @@ | |||||||
| 			shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-testHotupdate/Pods-testHotupdate-frameworks.sh\"\n"; | 			shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-testHotupdate/Pods-testHotupdate-frameworks.sh\"\n"; | ||||||
| 			showEnvVarsInLog = 0; | 			showEnvVarsInLog = 0; | ||||||
| 		}; | 		}; | ||||||
|  | 		4C7F70F5C06F7BFA31EE8610 /* [CP] Embed Pods Frameworks */ = { | ||||||
|  | 			isa = PBXShellScriptBuildPhase; | ||||||
|  | 			buildActionMask = 2147483647; | ||||||
|  | 			files = ( | ||||||
|  | 			); | ||||||
|  | 			inputFileListPaths = ( | ||||||
|  | 				"${PODS_ROOT}/Target Support Files/Pods-testHotupdate-testHotupdateTests/Pods-testHotupdate-testHotupdateTests-frameworks-${CONFIGURATION}-input-files.xcfilelist", | ||||||
|  | 			); | ||||||
|  | 			name = "[CP] Embed Pods Frameworks"; | ||||||
|  | 			outputFileListPaths = ( | ||||||
|  | 				"${PODS_ROOT}/Target Support Files/Pods-testHotupdate-testHotupdateTests/Pods-testHotupdate-testHotupdateTests-frameworks-${CONFIGURATION}-output-files.xcfilelist", | ||||||
|  | 			); | ||||||
|  | 			runOnlyForDeploymentPostprocessing = 0; | ||||||
|  | 			shellPath = /bin/sh; | ||||||
|  | 			shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-testHotupdate-testHotupdateTests/Pods-testHotupdate-testHotupdateTests-frameworks.sh\"\n"; | ||||||
|  | 			showEnvVarsInLog = 0; | ||||||
|  | 		}; | ||||||
|  | 		BC2CDA870086B299A0FA004A /* [CP] Copy Pods Resources */ = { | ||||||
|  | 			isa = PBXShellScriptBuildPhase; | ||||||
|  | 			buildActionMask = 2147483647; | ||||||
|  | 			files = ( | ||||||
|  | 			); | ||||||
|  | 			inputFileListPaths = ( | ||||||
|  | 				"${PODS_ROOT}/Target Support Files/Pods-testHotupdate-testHotupdateTests/Pods-testHotupdate-testHotupdateTests-resources-${CONFIGURATION}-input-files.xcfilelist", | ||||||
|  | 			); | ||||||
|  | 			name = "[CP] Copy Pods Resources"; | ||||||
|  | 			outputFileListPaths = ( | ||||||
|  | 				"${PODS_ROOT}/Target Support Files/Pods-testHotupdate-testHotupdateTests/Pods-testHotupdate-testHotupdateTests-resources-${CONFIGURATION}-output-files.xcfilelist", | ||||||
|  | 			); | ||||||
|  | 			runOnlyForDeploymentPostprocessing = 0; | ||||||
|  | 			shellPath = /bin/sh; | ||||||
|  | 			shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-testHotupdate-testHotupdateTests/Pods-testHotupdate-testHotupdateTests-resources.sh\"\n"; | ||||||
|  | 			showEnvVarsInLog = 0; | ||||||
|  | 		}; | ||||||
| 		C38B50BA6285516D6DCD4F65 /* [CP] Check Pods Manifest.lock */ = { | 		C38B50BA6285516D6DCD4F65 /* [CP] Check Pods Manifest.lock */ = { | ||||||
| 			isa = PBXShellScriptBuildPhase; | 			isa = PBXShellScriptBuildPhase; | ||||||
| 			buildActionMask = 2147483647; | 			buildActionMask = 2147483647; | ||||||
| @@ -292,6 +337,28 @@ | |||||||
| 			shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n    # print error to STDERR\n    echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n    exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; | 			shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n    # print error to STDERR\n    echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n    exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; | ||||||
| 			showEnvVarsInLog = 0; | 			showEnvVarsInLog = 0; | ||||||
| 		}; | 		}; | ||||||
|  | 		DC20F2927A7E6CA06E8D485C /* [CP] Check Pods Manifest.lock */ = { | ||||||
|  | 			isa = PBXShellScriptBuildPhase; | ||||||
|  | 			buildActionMask = 2147483647; | ||||||
|  | 			files = ( | ||||||
|  | 			); | ||||||
|  | 			inputFileListPaths = ( | ||||||
|  | 			); | ||||||
|  | 			inputPaths = ( | ||||||
|  | 				"${PODS_PODFILE_DIR_PATH}/Podfile.lock", | ||||||
|  | 				"${PODS_ROOT}/Manifest.lock", | ||||||
|  | 			); | ||||||
|  | 			name = "[CP] Check Pods Manifest.lock"; | ||||||
|  | 			outputFileListPaths = ( | ||||||
|  | 			); | ||||||
|  | 			outputPaths = ( | ||||||
|  | 				"$(DERIVED_FILE_DIR)/Pods-testHotupdate-testHotupdateTests-checkManifestLockResult.txt", | ||||||
|  | 			); | ||||||
|  | 			runOnlyForDeploymentPostprocessing = 0; | ||||||
|  | 			shellPath = /bin/sh; | ||||||
|  | 			shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n    # print error to STDERR\n    echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n    exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; | ||||||
|  | 			showEnvVarsInLog = 0; | ||||||
|  | 		}; | ||||||
| 		E235C05ADACE081382539298 /* [CP] Copy Pods Resources */ = { | 		E235C05ADACE081382539298 /* [CP] Copy Pods Resources */ = { | ||||||
| 			isa = PBXShellScriptBuildPhase; | 			isa = PBXShellScriptBuildPhase; | ||||||
| 			buildActionMask = 2147483647; | 			buildActionMask = 2147483647; | ||||||
| @@ -361,6 +428,7 @@ | |||||||
| /* Begin XCBuildConfiguration section */ | /* Begin XCBuildConfiguration section */ | ||||||
| 		00E356F61AD99517003FC87E /* Debug */ = { | 		00E356F61AD99517003FC87E /* Debug */ = { | ||||||
| 			isa = XCBuildConfiguration; | 			isa = XCBuildConfiguration; | ||||||
|  | 			baseConfigurationReference = 404B8A109FF0E52B839C8687 /* Pods-testHotupdate-testHotupdateTests.debug.xcconfig */; | ||||||
| 			buildSettings = { | 			buildSettings = { | ||||||
| 				BUNDLE_LOADER = "$(TEST_HOST)"; | 				BUNDLE_LOADER = "$(TEST_HOST)"; | ||||||
| 				GCC_PREPROCESSOR_DEFINITIONS = ( | 				GCC_PREPROCESSOR_DEFINITIONS = ( | ||||||
| @@ -387,6 +455,7 @@ | |||||||
| 		}; | 		}; | ||||||
| 		00E356F71AD99517003FC87E /* Release */ = { | 		00E356F71AD99517003FC87E /* Release */ = { | ||||||
| 			isa = XCBuildConfiguration; | 			isa = XCBuildConfiguration; | ||||||
|  | 			baseConfigurationReference = 35A33350B5D9A46B028EB31B /* Pods-testHotupdate-testHotupdateTests.release.xcconfig */; | ||||||
| 			buildSettings = { | 			buildSettings = { | ||||||
| 				BUNDLE_LOADER = "$(TEST_HOST)"; | 				BUNDLE_LOADER = "$(TEST_HOST)"; | ||||||
| 				COPY_PHASE_STRIP = NO; | 				COPY_PHASE_STRIP = NO; | ||||||
| @@ -491,7 +560,7 @@ | |||||||
| 				COPY_PHASE_STRIP = NO; | 				COPY_PHASE_STRIP = NO; | ||||||
| 				ENABLE_STRICT_OBJC_MSGSEND = YES; | 				ENABLE_STRICT_OBJC_MSGSEND = YES; | ||||||
| 				ENABLE_TESTABILITY = YES; | 				ENABLE_TESTABILITY = YES; | ||||||
| 				"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = ""; | 				"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = i386; | ||||||
| 				GCC_C_LANGUAGE_STANDARD = gnu99; | 				GCC_C_LANGUAGE_STANDARD = gnu99; | ||||||
| 				GCC_DYNAMIC_NO_PIC = NO; | 				GCC_DYNAMIC_NO_PIC = NO; | ||||||
| 				GCC_NO_COMMON_BLOCKS = YES; | 				GCC_NO_COMMON_BLOCKS = YES; | ||||||
| @@ -525,6 +594,7 @@ | |||||||
| 					"-DFOLLY_MOBILE=1", | 					"-DFOLLY_MOBILE=1", | ||||||
| 					"-DFOLLY_USE_LIBCPP=1", | 					"-DFOLLY_USE_LIBCPP=1", | ||||||
| 				); | 				); | ||||||
|  | 				REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native"; | ||||||
| 				SDKROOT = iphoneos; | 				SDKROOT = iphoneos; | ||||||
| 			}; | 			}; | ||||||
| 			name = Debug; | 			name = Debug; | ||||||
| @@ -562,7 +632,7 @@ | |||||||
| 				COPY_PHASE_STRIP = YES; | 				COPY_PHASE_STRIP = YES; | ||||||
| 				ENABLE_NS_ASSERTIONS = NO; | 				ENABLE_NS_ASSERTIONS = NO; | ||||||
| 				ENABLE_STRICT_OBJC_MSGSEND = YES; | 				ENABLE_STRICT_OBJC_MSGSEND = YES; | ||||||
| 				"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = ""; | 				"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = i386; | ||||||
| 				GCC_C_LANGUAGE_STANDARD = gnu99; | 				GCC_C_LANGUAGE_STANDARD = gnu99; | ||||||
| 				GCC_NO_COMMON_BLOCKS = YES; | 				GCC_NO_COMMON_BLOCKS = YES; | ||||||
| 				GCC_WARN_64_TO_32_BIT_CONVERSION = YES; | 				GCC_WARN_64_TO_32_BIT_CONVERSION = YES; | ||||||
| @@ -588,6 +658,7 @@ | |||||||
| 					"-DFOLLY_MOBILE=1", | 					"-DFOLLY_MOBILE=1", | ||||||
| 					"-DFOLLY_USE_LIBCPP=1", | 					"-DFOLLY_USE_LIBCPP=1", | ||||||
| 				); | 				); | ||||||
|  | 				REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native"; | ||||||
| 				SDKROOT = iphoneos; | 				SDKROOT = iphoneos; | ||||||
| 				VALIDATE_PRODUCT = YES; | 				VALIDATE_PRODUCT = YES; | ||||||
| 			}; | 			}; | ||||||
|   | |||||||
| @@ -1,8 +1,6 @@ | |||||||
| #import <React/RCTBridgeDelegate.h> | #import <RCTAppDelegate.h> | ||||||
| #import <UIKit/UIKit.h> | #import <UIKit/UIKit.h> | ||||||
|  |  | ||||||
| @interface AppDelegate : UIResponder <UIApplicationDelegate, RCTBridgeDelegate> | @interface AppDelegate : RCTAppDelegate | ||||||
|  |  | ||||||
| @property (nonatomic, strong) UIWindow *window; |  | ||||||
|  |  | ||||||
| @end | @end | ||||||
| @@ -1,61 +1,18 @@ | |||||||
| #import "AppDelegate.h" | #import "AppDelegate.h" | ||||||
|  |  | ||||||
| #import <React/RCTBridge.h> |  | ||||||
| #import <React/RCTBundleURLProvider.h> | #import <React/RCTBundleURLProvider.h> | ||||||
| #import <React/RCTRootView.h> |  | ||||||
| #import "RCTPushy.h" | #import "RCTPushy.h" | ||||||
|  |  | ||||||
| #import <React/RCTAppSetupUtils.h> |  | ||||||
|  |  | ||||||
| #if RCT_NEW_ARCH_ENABLED |  | ||||||
| #import <React/CoreModulesPlugins.h> |  | ||||||
| #import <React/RCTCxxBridgeDelegate.h> |  | ||||||
| #import <React/RCTFabricSurfaceHostingProxyRootView.h> |  | ||||||
| #import <React/RCTSurfacePresenter.h> |  | ||||||
| #import <React/RCTSurfacePresenterBridgeAdapter.h> |  | ||||||
| #import <ReactCommon/RCTTurboModuleManager.h> |  | ||||||
|  |  | ||||||
| #import <react/config/ReactNativeConfig.h> |  | ||||||
|  |  | ||||||
| @interface AppDelegate () <RCTCxxBridgeDelegate, RCTTurboModuleManagerDelegate> { |  | ||||||
|   RCTTurboModuleManager *_turboModuleManager; |  | ||||||
|   RCTSurfacePresenterBridgeAdapter *_bridgeAdapter; |  | ||||||
|   std::shared_ptr<const facebook::react::ReactNativeConfig> _reactNativeConfig; |  | ||||||
|   facebook::react::ContextContainer::Shared _contextContainer; |  | ||||||
| } |  | ||||||
| @end |  | ||||||
| #endif |  | ||||||
|  |  | ||||||
| @implementation AppDelegate | @implementation AppDelegate | ||||||
|  |  | ||||||
| - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions | - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions | ||||||
| { | { | ||||||
|   RCTAppSetupPrepareApp(application); |   self.moduleName = @"testHotupdate"; | ||||||
|  |   // You can add your custom initial props in the dictionary below. | ||||||
|  |   // They will be passed down to the ViewController used by React Native. | ||||||
|  |   self.initialProps = @{}; | ||||||
|  |  | ||||||
|   RCTBridge *bridge = [[RCTBridge alloc] initWithDelegate:self launchOptions:launchOptions]; |   return [super application:application didFinishLaunchingWithOptions:launchOptions]; | ||||||
|  |  | ||||||
| #if RCT_NEW_ARCH_ENABLED |  | ||||||
|   _contextContainer = std::make_shared<facebook::react::ContextContainer const>(); |  | ||||||
|   _reactNativeConfig = std::make_shared<facebook::react::EmptyReactNativeConfig const>(); |  | ||||||
|   _contextContainer->insert("ReactNativeConfig", _reactNativeConfig); |  | ||||||
|   _bridgeAdapter = [[RCTSurfacePresenterBridgeAdapter alloc] initWithBridge:bridge contextContainer:_contextContainer]; |  | ||||||
|   bridge.surfacePresenter = _bridgeAdapter.surfacePresenter; |  | ||||||
| #endif |  | ||||||
|  |  | ||||||
|   UIView *rootView = RCTAppSetupDefaultRootView(bridge, @"testHotupdate", nil); |  | ||||||
|  |  | ||||||
|   if (@available(iOS 13.0, *)) { |  | ||||||
|     rootView.backgroundColor = [UIColor systemBackgroundColor]; |  | ||||||
|   } else { |  | ||||||
|     rootView.backgroundColor = [UIColor whiteColor]; |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds]; |  | ||||||
|   UIViewController *rootViewController = [UIViewController new]; |  | ||||||
|   rootViewController.view = rootView; |  | ||||||
|   self.window.rootViewController = rootViewController; |  | ||||||
|   [self.window makeKeyAndVisible]; |  | ||||||
|   return YES; |  | ||||||
| } | } | ||||||
|  |  | ||||||
| - (NSURL *)sourceURLForBridge:(RCTBridge *)bridge | - (NSURL *)sourceURLForBridge:(RCTBridge *)bridge | ||||||
| @@ -68,43 +25,14 @@ | |||||||
| #endif | #endif | ||||||
| } | } | ||||||
|  |  | ||||||
| #if RCT_NEW_ARCH_ENABLED | /// This method controls whether the `concurrentRoot`feature of React18 is turned on or off. | ||||||
|  | /// | ||||||
| #pragma mark - RCTCxxBridgeDelegate | /// @see: https://reactjs.org/blog/2022/03/29/react-v18.html | ||||||
|  | /// @note: This requires to be rendering on Fabric (i.e. on the New Architecture). | ||||||
| - (std::unique_ptr<facebook::react::JSExecutorFactory>)jsExecutorFactoryForBridge:(RCTBridge *)bridge | /// @return: `true` if the `concurrentRoot` feature is enabled. Otherwise, it returns `false`. | ||||||
|  | - (BOOL)concurrentRootEnabled | ||||||
| { | { | ||||||
|   _turboModuleManager = [[RCTTurboModuleManager alloc] initWithBridge:bridge |   return true; | ||||||
|                                                              delegate:self |  | ||||||
|                                                             jsInvoker:bridge.jsCallInvoker]; |  | ||||||
|   return RCTAppSetupDefaultJsExecutorFactory(bridge, _turboModuleManager); |  | ||||||
| } | } | ||||||
|  |  | ||||||
| #pragma mark RCTTurboModuleManagerDelegate |  | ||||||
|  |  | ||||||
| - (Class)getModuleClassFromName:(const char *)name |  | ||||||
| { |  | ||||||
|   return RCTCoreModulesClassProvider(name); |  | ||||||
| } |  | ||||||
|  |  | ||||||
| - (std::shared_ptr<facebook::react::TurboModule>)getTurboModule:(const std::string &)name |  | ||||||
|                                                       jsInvoker:(std::shared_ptr<facebook::react::CallInvoker>)jsInvoker |  | ||||||
| { |  | ||||||
|   return nullptr; |  | ||||||
| } |  | ||||||
|  |  | ||||||
| - (std::shared_ptr<facebook::react::TurboModule>)getTurboModule:(const std::string &)name |  | ||||||
|                                                      initParams: |  | ||||||
|                                                          (const facebook::react::ObjCTurboModule::InitParams &)params |  | ||||||
| { |  | ||||||
|   return nullptr; |  | ||||||
| } |  | ||||||
|  |  | ||||||
| - (id<RCTTurboModule>)getModuleInstanceFromClass:(Class)moduleClass |  | ||||||
| { |  | ||||||
|   return RCTAppSetupDefaultModuleFromClass(moduleClass); |  | ||||||
| } |  | ||||||
|  |  | ||||||
| #endif |  | ||||||
|  |  | ||||||
| @end | @end | ||||||
| @@ -1,6 +1,7 @@ | |||||||
| const path = require('path'); | const path = require('path'); | ||||||
|  |  | ||||||
| const extraNodeModules = { | const extraNodeModules = { | ||||||
|  |   react: path.resolve(__dirname, 'node_modules/react'), | ||||||
|   'react-native': path.resolve(__dirname, 'node_modules/react-native'), |   'react-native': path.resolve(__dirname, 'node_modules/react-native'), | ||||||
|   'react-native-update': path.resolve(__dirname, '../..'), |   'react-native-update': path.resolve(__dirname, '../..'), | ||||||
|   '@babel/runtime': path.resolve(__dirname, 'node_modules/@babel/runtime'), |   '@babel/runtime': path.resolve(__dirname, 'node_modules/@babel/runtime'), | ||||||
|   | |||||||
| @@ -11,19 +11,25 @@ | |||||||
|     "apk": "(cd android && ./gradlew aR)" |     "apk": "(cd android && ./gradlew aR)" | ||||||
|   }, |   }, | ||||||
|   "dependencies": { |   "dependencies": { | ||||||
|     "react": "17.0.2", |     "react": "18.2.0", | ||||||
|     "react-native": "0.68.5", |     "react-native": "0.71.1", | ||||||
|     "react-native-update": "link:../.." |     "react-native-update": "link:../.." | ||||||
|   }, |   }, | ||||||
|   "devDependencies": { |   "devDependencies": { | ||||||
|     "@babel/core": "^7.12.9", |     "@babel/core": "^7.20.0", | ||||||
|     "@babel/runtime": "^7.12.5", |     "@babel/preset-env": "^7.20.0", | ||||||
|     "@react-native-community/eslint-config": "^2.0.0", |     "@babel/runtime": "^7.20.0", | ||||||
|     "babel-jest": "^26.6.3", |     "@react-native-community/eslint-config": "^3.0.0", | ||||||
|     "eslint": "^7.32.0", |     "@tsconfig/react-native": "^2.0.2", | ||||||
|     "jest": "^26.6.3", |     "@types/jest": "^29.2.1", | ||||||
|     "metro-react-native-babel-preset": "^0.67.0", |     "@types/react": "^18.0.24", | ||||||
|     "react-test-renderer": "17.0.2" |     "@types/react-test-renderer": "^18.0.0", | ||||||
|  |     "babel-jest": "^29.2.1", | ||||||
|  |     "eslint": "^8.19.0", | ||||||
|  |     "jest": "^29.2.1", | ||||||
|  |     "metro-react-native-babel-preset": "0.73.7", | ||||||
|  |     "prettier": "^2.4.1", | ||||||
|  |     "react-test-renderer": "18.2.0" | ||||||
|   }, |   }, | ||||||
|   "jest": { |   "jest": { | ||||||
|     "preset": "react-native" |     "preset": "react-native" | ||||||
|   | |||||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @@ -1 +1 @@ | |||||||
| 1574665292 | 1674743151 | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 sunnylqm
					sunnylqm