react-native 0.72.0-rc.0 → 0.72.0-rc.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/Libraries/Components/View/ReactNativeStyleAttributes.js +0 -7
  2. package/Libraries/Core/ReactNativeVersion.js +1 -1
  3. package/Libraries/Core/ReactNativeVersionCheck.js +5 -1
  4. package/Libraries/NativeComponent/BaseViewConfig.android.js +0 -8
  5. package/Libraries/NativeComponent/BaseViewConfig.ios.js +0 -8
  6. package/Libraries/ReactNative/UIManager.js +27 -1
  7. package/Libraries/Renderer/implementations/ReactFabric-dev.js +26 -3
  8. package/Libraries/Renderer/implementations/ReactFabric-prod.js +13 -1
  9. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +13 -1
  10. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +0 -7
  11. package/Libraries/StyleSheet/StyleSheetTypes.js +0 -74
  12. package/Libraries/Text/TextInput/RCTBackedTextInputDelegateAdapter.m +3 -3
  13. package/React/Base/RCTVersion.m +1 -1
  14. package/React/CoreModules/RCTDevMenu.mm +3 -3
  15. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropCoordinatorAdapter.mm +1 -1
  16. package/ReactAndroid/gradle.properties +1 -1
  17. package/ReactAndroid/src/main/java/com/facebook/react/ReactDelegate.java +40 -1
  18. package/ReactAndroid/src/main/java/com/facebook/react/ReactFragment.java +22 -7
  19. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.java +10 -0
  20. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +29 -0
  21. package/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManagerListener.java +25 -2
  22. package/ReactAndroid/src/main/java/com/facebook/react/bridge/interop/InteropModuleRegistry.java +56 -0
  23. package/ReactAndroid/src/main/java/com/facebook/react/config/ReactFeatureFlags.java +11 -0
  24. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultNewArchitectureEntryPoint.kt +1 -0
  25. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactActivityDelegate.kt +4 -0
  26. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.java +26 -8
  27. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +21 -0
  28. package/ReactAndroid/src/main/java/com/facebook/react/fabric/interop/InteropEvent.java +41 -0
  29. package/ReactAndroid/src/main/java/com/facebook/react/fabric/interop/InteropEventEmitter.java +65 -0
  30. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.java +9 -0
  31. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +1 -1
  32. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ThemedReactContext.java +1 -0
  33. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstantsHelper.java +32 -0
  34. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/MaintainVisibleScrollPositionHelper.java +19 -0
  35. package/ReactAndroid/src/main/java/com/facebook/react/views/text/CustomLetterSpacingSpan.java +4 -0
  36. package/ReactAndroid/src/main/java/com/facebook/react/views/text/CustomStyleSpan.java +4 -0
  37. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextUpdate.java +1 -5
  38. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +190 -134
  39. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java +23 -10
  40. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundManager.java +5 -0
  41. package/ReactAndroid/src/main/jni/react/fabric/Binding.cpp +3 -0
  42. package/ReactCommon/React-rncore.podspec +12 -4
  43. package/ReactCommon/cxxreact/ReactNativeVersion.h +1 -1
  44. package/ReactCommon/react/config/ReactNativeConfig.cpp +3 -0
  45. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.h +4 -1
  46. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.mm +49 -2
  47. package/ReactCommon/react/renderer/components/text/ParagraphLayoutManager.cpp +30 -5
  48. package/ReactCommon/react/renderer/components/text/ParagraphLayoutManager.h +12 -0
  49. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +0 -21
  50. package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +0 -49
  51. package/ReactCommon/react/renderer/components/view/YogaStylableProps.h +0 -9
  52. package/ReactCommon/react/renderer/core/CoreFeatures.cpp +1 -0
  53. package/ReactCommon/react/renderer/core/CoreFeatures.h +5 -0
  54. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +5 -1
  55. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.mm +112 -83
  56. package/build.gradle.kts +17 -0
  57. package/gradle.properties +1 -0
  58. package/package.json +8 -8
  59. package/scripts/cocoapods/__tests__/codegen_utils-test.rb +9 -1
  60. package/scripts/cocoapods/__tests__/jsengine-test.rb +6 -2
  61. package/scripts/cocoapods/__tests__/test_utils/podSpy.rb +2 -1
  62. package/scripts/cocoapods/codegen_utils.rb +1 -1
  63. package/scripts/cocoapods/jsengine.rb +6 -1
  64. package/sdks/hermesc/linux64-bin/hermesc +0 -0
  65. package/sdks/hermesc/osx-bin/hermesc +0 -0
  66. package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
  67. package/settings.gradle.kts +30 -0
  68. package/template/android/app/build.gradle +7 -2
  69. package/template/metro.config.js +7 -13
  70. package/template/package.json +5 -3
  71. package/types/index.d.ts +4 -0
@@ -105,7 +105,9 @@ class JSEngineTests < Test::Unit::TestCase
105
105
  assert_equal($podInvocation["React-jsi"][:path], "../../ReactCommon/jsi")
106
106
  assert_equal($podInvocation["React-hermes"][:path], "../../ReactCommon/hermes")
107
107
  assert_equal($podInvocation["libevent"][:version], "~> 2.1.12")
108
- assert_equal($podInvocation["hermes-engine"][:podspec], "../../sdks/hermes/hermes-engine.podspec")
108
+ hermes_engine_pod_invocation = $podInvocation["hermes-engine"]
109
+ assert_equal(hermes_engine_pod_invocation[:podspec], "../../sdks/hermes-engine/hermes-engine.podspec")
110
+ assert_equal(hermes_engine_pod_invocation[:tag], "")
109
111
  end
110
112
 
111
113
  def test_setupHermes_installsPods_installsFabricSubspecWhenFabricEnabled
@@ -118,7 +120,9 @@ class JSEngineTests < Test::Unit::TestCase
118
120
  # Assert
119
121
  assert_equal($podInvocationCount, 4)
120
122
  assert_equal($podInvocation["React-jsi"][:path], "../../ReactCommon/jsi")
121
- assert_equal($podInvocation["hermes-engine"][:podspec], "../../sdks/hermes/hermes-engine.podspec")
123
+ hermes_engine_pod_invocation = $podInvocation["hermes-engine"]
124
+ assert_equal(hermes_engine_pod_invocation[:podspec], "../../sdks/hermes-engine/hermes-engine.podspec")
125
+ assert_equal(hermes_engine_pod_invocation[:tag], "")
122
126
  assert_equal($podInvocation["React-hermes"][:path], "../../ReactCommon/hermes")
123
127
  assert_equal($podInvocation["libevent"][:version], "~> 2.1.12")
124
128
  end
@@ -26,7 +26,7 @@ def podSpy_cleanUp
26
26
  $podInvocationCount = 0
27
27
  end
28
28
 
29
- def pod(name, version = nil, path: nil, configurations: nil, modular_headers: nil, podspec: nil)
29
+ def pod(name, version = nil, path: nil, configurations: nil, modular_headers: nil, podspec: nil, tag: nil)
30
30
  $podInvocationCount += 1
31
31
  params = {}
32
32
  if version != nil then params[:version] = version end
@@ -34,5 +34,6 @@ def pod(name, version = nil, path: nil, configurations: nil, modular_headers: ni
34
34
  if configurations != nil then params[:configurations] = configurations end
35
35
  if modular_headers != nil then params[:modular_headers] = modular_headers end
36
36
  if podspec != nil then params[:podspec] = podspec end
37
+ if tag != nil then params[:tag] = tag end
37
38
  $podInvocation[name] = params
38
39
  end
@@ -111,7 +111,7 @@ class CodegenUtils
111
111
  'source' => { :git => '' },
112
112
  'header_mappings_dir' => './',
113
113
  'platforms' => {
114
- 'ios' => '11.0',
114
+ 'ios' => min_ios_version_supported,
115
115
  },
116
116
  'source_files' => "**/*.{h,mm,cpp}",
117
117
  'pod_target_xcconfig' => {
@@ -30,7 +30,12 @@ def setup_hermes!(react_native_path: "../node_modules/react-native", fabric_enab
30
30
  abort unless prep_status == 0
31
31
 
32
32
  pod 'React-jsi', :path => "#{react_native_path}/ReactCommon/jsi"
33
- pod 'hermes-engine', :podspec => "#{react_native_path}/sdks/hermes/hermes-engine.podspec"
33
+ # This `:tag => hermestag` below is only to tell CocoaPods to update hermes-engine when React Native version changes.
34
+ # We have custom logic to compute the source for hermes-engine. See sdks/hermes-engine/*
35
+ hermestag_file = File.join(react_native_path, "sdks", ".hermesversion")
36
+ hermestag = File.exist?(hermestag_file) ? File.read(hermestag_file).strip : ''
37
+
38
+ pod 'hermes-engine', :podspec => "#{react_native_path}/sdks/hermes-engine/hermes-engine.podspec", :tag => hermestag
34
39
  pod 'React-hermes', :path => "#{react_native_path}/ReactCommon/hermes"
35
40
  pod 'libevent', '~> 2.1.12'
36
41
  end
Binary file
Binary file
Binary file
@@ -1 +1,31 @@
1
+ /*
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
1
7
 
8
+ // This is the settings.gradle.kts file used when the users
9
+ // is doing a build from source. It's triggered as the user
10
+ // will add an `includeBuild(../node_modules/react-native)` in
11
+ // their settings.gradle.kts file.
12
+ // More on this here: https://reactnative.dev/contributing/how-to-build-from-source
13
+
14
+ pluginManagement {
15
+ repositories {
16
+ mavenCentral()
17
+ google()
18
+ gradlePluginPortal()
19
+ }
20
+ }
21
+
22
+ rootProject.name = "react-native-github"
23
+
24
+ include(":packages:react-native:ReactAndroid")
25
+
26
+ project(":packages:react-native:ReactAndroid").projectDir = file("ReactAndroid/")
27
+
28
+ include(":packages:react-native:ReactAndroid:hermes-engine")
29
+
30
+ project(":packages:react-native:ReactAndroid:hermes-engine").projectDir =
31
+ file("ReactAndroid/hermes-engine/")
@@ -1,3 +1,10 @@
1
+ /*
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
1
8
  apply plugin: "com.android.application"
2
9
  apply plugin: "com.facebook.react"
3
10
 
@@ -107,8 +114,6 @@ dependencies {
107
114
  // The version of react-native is set by the React Native Gradle Plugin
108
115
  implementation("com.facebook.react:react-android")
109
116
 
110
- implementation("androidx.swiperefreshlayout:swiperefreshlayout:1.0.0")
111
-
112
117
  debugImplementation("com.facebook.flipper:flipper:${FLIPPER_VERSION}")
113
118
  debugImplementation("com.facebook.flipper:flipper-network-plugin:${FLIPPER_VERSION}") {
114
119
  exclude group:'com.squareup.okhttp3', module:'okhttp'
@@ -1,17 +1,11 @@
1
+ const {getDefaultConfig, mergeConfig} = require('@react-native/metro-config');
2
+
1
3
  /**
2
- * Metro configuration for React Native
3
- * https://github.com/facebook/react-native
4
+ * Metro configuration
5
+ * https://facebook.github.io/metro/docs/configuration
4
6
  *
5
- * @format
7
+ * @type {import('metro-config').MetroConfig}
6
8
  */
9
+ const config = {};
7
10
 
8
- module.exports = {
9
- transformer: {
10
- getTransformOptions: async () => ({
11
- transform: {
12
- experimentalImportSupport: false,
13
- inlineRequires: true,
14
- },
15
- }),
16
- },
17
- };
11
+ module.exports = mergeConfig(getDefaultConfig(__dirname), config);
@@ -11,20 +11,22 @@
11
11
  },
12
12
  "dependencies": {
13
13
  "react": "18.2.0",
14
- "react-native": "0.72.0-rc.0"
14
+ "react-native": "0.72.0-rc.2"
15
15
  },
16
16
  "devDependencies": {
17
17
  "@babel/core": "^7.20.0",
18
18
  "@babel/preset-env": "^7.20.0",
19
19
  "@babel/runtime": "^7.12.5",
20
20
  "@react-native/eslint-config": "^0.72.1",
21
- "@tsconfig/react-native": "^2.0.2",
21
+ "@react-native/metro-config": "^0.72.1",
22
+ "@tsconfig/react-native": "^3.0.0",
23
+ "@types/metro-config": "^0.76.2",
22
24
  "@types/react": "^18.0.24",
23
25
  "@types/react-test-renderer": "^18.0.0",
24
26
  "babel-jest": "^29.2.1",
25
27
  "eslint": "^8.19.0",
26
28
  "jest": "^29.2.1",
27
- "metro-react-native-babel-preset": "0.75.1",
29
+ "metro-react-native-babel-preset": "0.76.2",
28
30
  "prettier": "^2.4.1",
29
31
  "react-test-renderer": "18.2.0",
30
32
  "typescript": "4.8.4"
package/types/index.d.ts CHANGED
@@ -147,6 +147,10 @@ export * from '../Libraries/Utilities/Platform';
147
147
  export * from '../Libraries/Vibration/Vibration';
148
148
  export * from '../Libraries/YellowBox/YellowBoxDeprecated';
149
149
  export * from '../Libraries/vendor/core/ErrorUtils';
150
+ export {
151
+ EmitterSubscription,
152
+ EventSubscription,
153
+ } from '../Libraries/vendor/emitter/EventEmitter';
150
154
 
151
155
  export * from './public/DeprecatedPropertiesAlias';
152
156
  export * from './public/Insets';