react-native 0.83.8 → 0.83.10
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.
- package/Libraries/ActionSheetIOS/React-RCTActionSheet.podspec +1 -1
- package/Libraries/Animated/components/AnimatedScrollView.js +1 -1
- package/Libraries/AppDelegate/React-RCTAppDelegate.podspec +1 -1
- package/Libraries/Blob/React-RCTBlob.podspec +1 -1
- package/Libraries/Components/Button.js +2 -2
- package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +1 -1
- package/Libraries/Components/TextInput/TextInput.flow.js +1 -1
- package/Libraries/Components/Touchable/Touchable.d.ts +1 -1
- package/Libraries/Components/View/ViewAccessibility.d.ts +1 -1
- package/Libraries/Components/View/ViewAccessibility.js +1 -1
- package/Libraries/Core/ReactNativeVersion.js +1 -1
- package/Libraries/Core/Timers/JSTimers.js +1 -1
- package/Libraries/Core/setUpNavigator.js +1 -1
- package/Libraries/EventEmitter/RCTNativeAppEventEmitter.d.ts +1 -1
- package/Libraries/FBLazyVector/FBLazyVector.podspec +1 -1
- package/Libraries/Image/ImageSource.d.ts +1 -1
- package/Libraries/Image/RCTImageLoader.mm +1 -1
- package/Libraries/Image/React-RCTImage.podspec +1 -1
- package/Libraries/Interaction/PanResponder.js +1 -1
- package/Libraries/LinkingIOS/React-RCTLinking.podspec +1 -1
- package/Libraries/NativeAnimation/React-RCTAnimation.podspec +1 -1
- package/Libraries/Network/React-RCTNetwork.podspec +1 -1
- package/Libraries/PushNotificationIOS/React-RCTPushNotification.podspec +1 -1
- package/Libraries/Renderer/README.md +2 -2
- package/Libraries/Required/RCTRequired.podspec +1 -1
- package/Libraries/Settings/React-RCTSettings.podspec +1 -1
- package/Libraries/Text/React-RCTText.podspec +1 -1
- package/Libraries/TypeSafety/RCTTypeSafety.podspec +1 -1
- package/Libraries/Utilities/PolyfillFunctions.js +1 -1
- package/Libraries/Vibration/React-RCTVibration.podspec +1 -1
- package/README.md +6 -6
- package/React/Base/RCTVersion.m +1 -1
- package/React/CoreModules/React-CoreModules.podspec +1 -1
- package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +8 -0
- package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +1 -1
- package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +1 -1
- package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +34 -5
- package/React/React-RCTFBReactNativeSpec.podspec +1 -1
- package/React/React-RCTFabric.podspec +1 -1
- package/React/Runtime/React-RCTRuntime.podspec +1 -1
- package/React/Tests/Mounting/RCTViewComponentViewTests.mm +145 -0
- package/React/Views/ScrollView/RCTScrollView.m +1 -1
- package/React-Core.podspec +1 -1
- package/React.podspec +1 -1
- package/ReactAndroid/build.gradle.kts +1 -1
- package/ReactAndroid/gradle.properties +1 -1
- package/ReactAndroid/publish.gradle +5 -5
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/CxxInspectorPackagerConnection.kt +99 -9
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/InspectorNetworkHelper.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +7 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +11 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +12 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/core/JavaTimerManager.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/IntentModule.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.kt +3 -3
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextSelectionWatcher.kt +1 -1
- package/ReactAndroid/src/main/jni/CMakeLists.txt +7 -0
- package/ReactAndroid/src/main/jni/react/devsupport/JCxxInspectorPackagerConnectionWebSocket.cpp +29 -2
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +15 -1
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +4 -1
- package/ReactApple/Libraries/RCTFoundation/RCTDeprecation/RCTDeprecation.podspec +1 -1
- package/ReactApple/RCTSwiftUI/RCTSwiftUI.podspec +1 -1
- package/ReactApple/RCTSwiftUIWrapper/RCTSwiftUIWrapper.podspec +1 -1
- package/ReactCommon/React-Fabric.podspec +7 -1
- package/ReactCommon/React-FabricComponents.podspec +1 -1
- package/ReactCommon/React-FabricImage.podspec +1 -1
- package/ReactCommon/React-Mapbuffer.podspec +1 -1
- package/ReactCommon/ReactCommon.podspec +1 -1
- package/ReactCommon/callinvoker/React-callinvoker.podspec +1 -1
- package/ReactCommon/cxxreact/React-cxxreact.podspec +1 -1
- package/ReactCommon/cxxreact/ReactNativeVersion.h +2 -2
- package/ReactCommon/hermes/React-hermes.podspec +1 -1
- package/ReactCommon/hermes/executor/React-jsitracing.podspec +1 -1
- package/ReactCommon/jserrorhandler/React-jserrorhandler.podspec +1 -1
- package/ReactCommon/jsi/React-jsi.podspec +1 -1
- package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +1 -1
- package/ReactCommon/jsinspector-modern/InspectorInterfaces.cpp +7 -3
- package/ReactCommon/jsinspector-modern/React-jsinspector.podspec +1 -1
- package/ReactCommon/jsinspector-modern/TracingAgent.cpp +1 -5
- package/ReactCommon/jsinspector-modern/cdp/React-jsinspectorcdp.podspec +1 -1
- package/ReactCommon/jsinspector-modern/network/React-jsinspectornetwork.podspec +1 -1
- package/ReactCommon/jsinspector-modern/tracing/React-jsinspectortracing.podspec +1 -1
- package/ReactCommon/jsitooling/React-jsitooling.podspec +1 -1
- package/ReactCommon/logger/React-logger.podspec +1 -1
- package/ReactCommon/oscompat/React-oscompat.podspec +1 -1
- package/ReactCommon/react/debug/React-debug.podspec +1 -1
- package/ReactCommon/react/debug/redbox/JscSafeUrl.h +1 -1
- package/ReactCommon/react/featureflags/React-featureflags.podspec +1 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +5 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +6 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +72 -54
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +4 -2
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +5 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +10 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +2 -1
- package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +1 -1
- package/ReactCommon/react/nativemodule/core/platform/ios/React-NativeModulesApple.podspec +1 -1
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.mm +1 -1
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm +1 -1
- package/ReactCommon/react/nativemodule/defaults/CMakeLists.txt +1 -0
- package/ReactCommon/react/nativemodule/defaults/DefaultTurboModules.cpp +7 -0
- package/ReactCommon/react/nativemodule/defaults/React-defaultsnativemodule.podspec +2 -1
- package/ReactCommon/react/nativemodule/dom/React-domnativemodule.podspec +1 -1
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +6 -1
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +3 -1
- package/ReactCommon/react/nativemodule/featureflags/React-featureflagsnativemodule.podspec +1 -1
- package/ReactCommon/react/nativemodule/idlecallbacks/React-idlecallbacksnativemodule.podspec +1 -1
- package/ReactCommon/react/nativemodule/intersectionobserver/React-intersectionobservernativemodule.podspec +1 -1
- package/ReactCommon/react/nativemodule/microtasks/React-microtasksnativemodule.podspec +1 -1
- package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.h +4 -0
- package/ReactCommon/react/nativemodule/mutationobserver/React-mutationobservernativemodule.podspec +66 -0
- package/ReactCommon/react/nativemodule/samples/ReactCommon-Samples.podspec +1 -1
- package/ReactCommon/react/nativemodule/webperformance/React-webperformancenativemodule.podspec +1 -1
- package/ReactCommon/react/networking/React-networking.podspec +1 -1
- package/ReactCommon/react/performance/cdpmetrics/React-performancecdpmetrics.podspec +1 -1
- package/ReactCommon/react/performance/timeline/React-performancetimeline.podspec +1 -1
- package/ReactCommon/react/renderer/animated/internal/primitives.h +1 -1
- package/ReactCommon/react/renderer/consistency/React-rendererconsistency.podspec +1 -1
- package/ReactCommon/react/renderer/css/React-renderercss.podspec +1 -1
- package/ReactCommon/react/renderer/debug/React-rendererdebug.podspec +1 -1
- package/ReactCommon/react/renderer/graphics/React-graphics.podspec +1 -1
- package/ReactCommon/react/renderer/imagemanager/platform/ios/React-ImageManager.podspec +1 -1
- package/ReactCommon/react/renderer/mounting/internal/CullingContext.cpp +1 -1
- package/ReactCommon/react/renderer/runtimescheduler/React-runtimescheduler.podspec +1 -1
- package/ReactCommon/react/runtime/React-RuntimeCore.podspec +1 -1
- package/ReactCommon/react/runtime/React-RuntimeHermes.podspec +1 -1
- package/ReactCommon/react/runtime/platform/ios/React-RuntimeApple.podspec +1 -1
- package/ReactCommon/react/timing/React-timing.podspec +1 -1
- package/ReactCommon/react/utils/React-utils.podspec +1 -1
- package/ReactCommon/reactperflogger/React-perflogger.podspec +1 -1
- package/ReactCommon/runtimeexecutor/React-runtimeexecutor.podspec +1 -1
- package/ReactCommon/yoga/Yoga.podspec +2 -2
- package/ReactCommon/yoga/yoga/algorithm/AbsoluteLayout.cpp +2 -0
- package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.cpp +11 -7
- package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.h +2 -0
- package/ReactCommon/yoga/yoga/node/Node.cpp +6 -1
- package/package.json +10 -10
- package/scripts/cocoapods/rncore.rb +26 -8
- package/scripts/cocoapods/rndependencies.rb +26 -5
- package/scripts/cocoapods/spm.rb +1 -1
- package/scripts/cocoapods/utils.rb +2 -2
- package/scripts/codegen/templates/ReactAppDependencyProvider.podspec.template +1 -1
- package/scripts/codegen/templates/ReactCodegen.podspec.template +1 -1
- package/scripts/ios-configure-glog.sh +1 -1
- package/scripts/react_native_pods.rb +1 -0
- package/sdks/hermes-engine/hermes-engine.podspec +6 -1
- package/sdks/hermes-engine/hermes-utils.rb +27 -5
- package/src/private/featureflags/ReactNativeFeatureFlags.js +6 -1
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +2 -1
- package/src/private/setup/setUpDefaultReactNativeEnvironment.js +6 -0
- package/src/private/types/HostInstance.js +1 -1
- package/src/types/globals.d.ts +2 -2
- package/third-party-podspecs/RCT-Folly.podspec +1 -1
- package/third-party-podspecs/ReactNativeDependencies.podspec +1 -1
- package/third-party-podspecs/glog.podspec +1 -1
- package/types/public/ReactNativeTypes.d.ts +2 -2
- package/types_generated/Libraries/Animated/components/AnimatedScrollView.d.ts +2 -2
- package/types_generated/Libraries/Components/Button.d.ts +3 -3
- package/types_generated/Libraries/Components/TextInput/TextInput.flow.d.ts +2 -2
- package/types_generated/Libraries/Components/View/ViewAccessibility.d.ts +4 -4
- package/types_generated/Libraries/Interaction/PanResponder.d.ts +2 -2
- package/types_generated/src/private/types/HostInstance.d.ts +2 -2
|
@@ -232,15 +232,36 @@ class ReactNativeDependenciesUtils
|
|
|
232
232
|
return {:http => url}
|
|
233
233
|
end
|
|
234
234
|
|
|
235
|
+
def self.shared_cache_dir()
|
|
236
|
+
return File.join(Dir.home, "Library", "Caches", "ReactNative")
|
|
237
|
+
end
|
|
238
|
+
|
|
235
239
|
def self.download_rndeps_tarball(react_native_path, tarball_url, version, configuration)
|
|
236
|
-
|
|
237
|
-
"
|
|
238
|
-
"
|
|
240
|
+
filename = configuration == nil ?
|
|
241
|
+
"reactnative-dependencies-#{version}.tar.gz" :
|
|
242
|
+
"reactnative-dependencies-#{version}-#{configuration}.tar.gz"
|
|
243
|
+
destination_path = "#{artifacts_dir()}/#{filename}"
|
|
244
|
+
|
|
245
|
+
if File.exist?(destination_path)
|
|
246
|
+
rndeps_log("Tarball #{filename} already exists in Pods. Skipping download.")
|
|
247
|
+
return destination_path
|
|
248
|
+
end
|
|
239
249
|
|
|
240
|
-
|
|
250
|
+
`mkdir -p "#{artifacts_dir()}"`
|
|
251
|
+
|
|
252
|
+
cached_path = File.join(shared_cache_dir(), filename)
|
|
253
|
+
if File.exist?(cached_path)
|
|
254
|
+
rndeps_log("Cache hit: copying #{filename} from shared cache (#{shared_cache_dir()})")
|
|
255
|
+
FileUtils.cp(cached_path, destination_path)
|
|
256
|
+
else
|
|
257
|
+
rndeps_log("Cache miss: downloading #{filename} from #{tarball_url}")
|
|
241
258
|
# Download to a temporary file first so we don't cache incomplete downloads.
|
|
242
259
|
tmp_file = "#{artifacts_dir()}/reactnative-dependencies.download"
|
|
243
|
-
`
|
|
260
|
+
`curl "#{tarball_url}" -Lo "#{tmp_file}" && mv "#{tmp_file}" "#{destination_path}"`
|
|
261
|
+
# Save to shared cache for future use
|
|
262
|
+
`mkdir -p "#{shared_cache_dir()}"`
|
|
263
|
+
FileUtils.cp(destination_path, cached_path)
|
|
264
|
+
rndeps_log("Saved #{filename} to shared cache (#{shared_cache_dir()})")
|
|
244
265
|
end
|
|
245
266
|
|
|
246
267
|
return destination_path
|
package/scripts/cocoapods/spm.rb
CHANGED
|
@@ -45,7 +45,7 @@ class SPMManager
|
|
|
45
45
|
log_warning "If you're using Xcode 15 or earlier you might need to close and reopen the Xcode workspace"
|
|
46
46
|
unless ENV["USE_FRAMEWORKS"] == "dynamic"
|
|
47
47
|
@dependencies_by_pod.each do |pod_name, dependencies|
|
|
48
|
-
log_warning "Pod #{pod_name} is using swift package(s) #{dependencies.map{|i| i[:products]}.flatten.uniq.join(", ")} with static linking, this might cause linker errors. Consider using USE_FRAMEWORKS=dynamic, see https://github.com/
|
|
48
|
+
log_warning "Pod #{pod_name} is using swift package(s) #{dependencies.map{|i| i[:products]}.flatten.uniq.join(", ")} with static linking, this might cause linker errors. Consider using USE_FRAMEWORKS=dynamic, see https://github.com/react/react-native/pull/44627#issuecomment-2123119711 for more information"
|
|
49
49
|
end
|
|
50
50
|
end
|
|
51
51
|
end
|
|
@@ -69,7 +69,7 @@ class ReactNativePodsUtils
|
|
|
69
69
|
end
|
|
70
70
|
|
|
71
71
|
def self.turn_off_resource_bundle_react_core(installer)
|
|
72
|
-
# this is needed for Xcode 14, see more details here https://github.com/
|
|
72
|
+
# this is needed for Xcode 14, see more details here https://github.com/react/react-native/issues/34673
|
|
73
73
|
# we should be able to remove this once CocoaPods catches up to it, see more details here https://github.com/CocoaPods/CocoaPods/issues/11402
|
|
74
74
|
installer.target_installation_results.pod_target_installation_results.each do |pod_name, target_installation_result|
|
|
75
75
|
if pod_name.to_s == 'React-Core'
|
|
@@ -237,7 +237,7 @@ class ReactNativePodsUtils
|
|
|
237
237
|
# When installing pods with a yarn alias, yarn creates a fake yarn and node executables
|
|
238
238
|
# in a temporary folder.
|
|
239
239
|
# Using `node --print "process.argv[0]";` we are able to retrieve the actual path from which node is running.
|
|
240
|
-
# see https://github.com/
|
|
240
|
+
# see https://github.com/react/react-native/issues/43285 for more info. We've tweaked this slightly.
|
|
241
241
|
node_binary = Shellwords.escape(`node --print "process.argv[0]"`.strip)
|
|
242
242
|
system("echo 'export NODE_BINARY=#{node_binary}' > #{file_path}.local")
|
|
243
243
|
end
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
# LICENSE file in the root directory of this source tree.
|
|
5
5
|
|
|
6
6
|
version = "{react-native-version}"
|
|
7
|
-
source = { :git => 'https://github.com/
|
|
7
|
+
source = { :git => 'https://github.com/react/react-native.git' }
|
|
8
8
|
if version == '1000.0.0'
|
|
9
9
|
# This is an unpublished version, use the latest commit hash of the react-native repo, which we’re presumably in.
|
|
10
10
|
source[:commit] = `git rev-parse HEAD`.strip if system("git rev-parse --git-dir > /dev/null 2>&1")
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
# LICENSE file in the root directory of this source tree.
|
|
5
5
|
|
|
6
6
|
version = "{react-native-version}"
|
|
7
|
-
source = { :git => 'https://github.com/
|
|
7
|
+
source = { :git => 'https://github.com/react/react-native.git' }
|
|
8
8
|
if version == '1000.0.0'
|
|
9
9
|
# This is an unpublished version, use the latest commit hash of the react-native repo, which we’re presumably in.
|
|
10
10
|
source[:commit] = `git rev-parse HEAD`.strip if system("git rev-parse --git-dir > /dev/null 2>&1")
|
|
@@ -57,7 +57,7 @@ if [ -h "test-driver" ]; then
|
|
|
57
57
|
rm test-driver
|
|
58
58
|
fi
|
|
59
59
|
|
|
60
|
-
# Manually disable gflags include to fix issue https://github.com/
|
|
60
|
+
# Manually disable gflags include to fix issue https://github.com/react/react-native/issues/28446
|
|
61
61
|
sed -i.bak -e 's/\@ac_cv_have_libgflags\@/0/' src/glog/logging.h.in && rm src/glog/logging.h.in.bak
|
|
62
62
|
sed -i.bak -e 's/HAVE_LIB_GFLAGS/HAVE_LIB_GFLAGS_DISABLED/' src/config.h.in && rm src/config.h.in.bak
|
|
63
63
|
|
|
@@ -144,6 +144,7 @@ def use_react_native! (
|
|
|
144
144
|
pod 'React-microtasksnativemodule', :path => "#{prefix}/ReactCommon/react/nativemodule/microtasks"
|
|
145
145
|
pod 'React-idlecallbacksnativemodule', :path => "#{prefix}/ReactCommon/react/nativemodule/idlecallbacks"
|
|
146
146
|
pod 'React-intersectionobservernativemodule', :path => "#{prefix}/ReactCommon/react/nativemodule/intersectionobserver"
|
|
147
|
+
pod 'React-mutationobservernativemodule', :path => "#{prefix}/ReactCommon/react/nativemodule/mutationobserver"
|
|
147
148
|
pod 'React-webperformancenativemodule', :path => "#{prefix}/ReactCommon/react/nativemodule/webperformance"
|
|
148
149
|
pod 'React-domnativemodule', :path => "#{prefix}/ReactCommon/react/nativemodule/dom"
|
|
149
150
|
pod 'React-defaultsnativemodule', :path => "#{prefix}/ReactCommon/react/nativemodule/defaults"
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
# LICENSE file in the root directory of this source tree.
|
|
5
5
|
|
|
6
6
|
require "json"
|
|
7
|
+
require "pathname"
|
|
7
8
|
require_relative "./hermes-utils.rb"
|
|
8
9
|
|
|
9
10
|
begin
|
|
@@ -74,9 +75,13 @@ Pod::Spec.new do |spec|
|
|
|
74
75
|
hermes_compiler_path = File.dirname(Pod::Executable.execute_command('node', ['-p',
|
|
75
76
|
"require.resolve(\"hermes-compiler\", {paths: [\"#{react_native_path}\"]})", __dir__]).strip
|
|
76
77
|
)
|
|
78
|
+
hermesc_path = File.join(hermes_compiler_path, 'hermesc', 'osx-bin', 'hermesc')
|
|
79
|
+
|
|
80
|
+
pods_root = Pod::Config.instance.sandbox.root
|
|
81
|
+
relative_hermesc = Pathname.new(hermesc_path).relative_path_from(pods_root)
|
|
77
82
|
|
|
78
83
|
spec.user_target_xcconfig = {
|
|
79
|
-
'HERMES_CLI_PATH' => "
|
|
84
|
+
'HERMES_CLI_PATH' => "$(PODS_ROOT)/#{relative_hermesc}"
|
|
80
85
|
}
|
|
81
86
|
end
|
|
82
87
|
|
|
@@ -236,16 +236,38 @@ def download_stable_hermes(react_native_path, version, configuration)
|
|
|
236
236
|
download_hermes_tarball(react_native_path, tarball_url, version, configuration)
|
|
237
237
|
end
|
|
238
238
|
|
|
239
|
+
def shared_cache_dir()
|
|
240
|
+
return File.join(Dir.home, "Library", "Caches", "ReactNative")
|
|
241
|
+
end
|
|
242
|
+
|
|
239
243
|
def download_hermes_tarball(react_native_path, tarball_url, version, configuration)
|
|
240
|
-
|
|
241
|
-
"
|
|
242
|
-
"
|
|
244
|
+
filename = configuration == nil ?
|
|
245
|
+
"hermes-ios-#{version}.tar.gz" :
|
|
246
|
+
"hermes-ios-#{version}-#{configuration}.tar.gz"
|
|
247
|
+
destination_path = "#{artifacts_dir()}/#{filename}"
|
|
248
|
+
|
|
249
|
+
if File.exist?(destination_path)
|
|
250
|
+
hermes_log("Tarball #{filename} already exists in Pods. Skipping download.", :info)
|
|
251
|
+
return destination_path
|
|
252
|
+
end
|
|
243
253
|
|
|
244
|
-
|
|
254
|
+
`mkdir -p "#{artifacts_dir()}"`
|
|
255
|
+
|
|
256
|
+
cached_path = File.join(shared_cache_dir(), filename)
|
|
257
|
+
if File.exist?(cached_path)
|
|
258
|
+
hermes_log("Cache hit: copying #{filename} from shared cache (#{shared_cache_dir()})", :info)
|
|
259
|
+
FileUtils.cp(cached_path, destination_path)
|
|
260
|
+
else
|
|
261
|
+
hermes_log("Cache miss: downloading #{filename} from #{tarball_url}", :info)
|
|
245
262
|
# Download to a temporary file first so we don't cache incomplete downloads.
|
|
246
263
|
tmp_file = "#{artifacts_dir()}/hermes-ios.download"
|
|
247
|
-
`
|
|
264
|
+
`curl "#{tarball_url}" -Lo "#{tmp_file}" && mv "#{tmp_file}" "#{destination_path}"`
|
|
265
|
+
# Save to shared cache for future use
|
|
266
|
+
`mkdir -p "#{shared_cache_dir()}"`
|
|
267
|
+
FileUtils.cp(destination_path, cached_path)
|
|
268
|
+
hermes_log("Saved #{filename} to shared cache (#{shared_cache_dir()})", :info)
|
|
248
269
|
end
|
|
270
|
+
|
|
249
271
|
return destination_path
|
|
250
272
|
end
|
|
251
273
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @generated SignedSource<<
|
|
7
|
+
* @generated SignedSource<<2731bfb1c14d92e24ccb3ba0976c102a>>
|
|
8
8
|
* @flow strict
|
|
9
9
|
* @noformat
|
|
10
10
|
*/
|
|
@@ -86,6 +86,7 @@ export type ReactNativeFeatureFlags = $ReadOnly<{
|
|
|
86
86
|
enableLayoutAnimationsOnIOS: Getter<boolean>,
|
|
87
87
|
enableMainQueueCoordinatorOnIOS: Getter<boolean>,
|
|
88
88
|
enableModuleArgumentNSNullConversionIOS: Getter<boolean>,
|
|
89
|
+
enableMutationObserverByDefault: Getter<boolean>,
|
|
89
90
|
enableNativeCSSParsing: Getter<boolean>,
|
|
90
91
|
enableNetworkEventReporting: Getter<boolean>,
|
|
91
92
|
enablePreparedTextLayout: Getter<boolean>,
|
|
@@ -364,6 +365,10 @@ export const enableMainQueueCoordinatorOnIOS: Getter<boolean> = createNativeFlag
|
|
|
364
365
|
* Enable NSNull conversion when handling module arguments on iOS
|
|
365
366
|
*/
|
|
366
367
|
export const enableModuleArgumentNSNullConversionIOS: Getter<boolean> = createNativeFlagGetter('enableModuleArgumentNSNullConversionIOS', false);
|
|
368
|
+
/**
|
|
369
|
+
* Enables the MutationObserver Web API in React Native.
|
|
370
|
+
*/
|
|
371
|
+
export const enableMutationObserverByDefault: Getter<boolean> = createNativeFlagGetter('enableMutationObserverByDefault', false);
|
|
367
372
|
/**
|
|
368
373
|
* Parse CSS strings using the Fabric CSS parser instead of ViewConfig processing
|
|
369
374
|
*/
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @generated SignedSource<<
|
|
7
|
+
* @generated SignedSource<<8ef0f9289aa8f259fd110b70a8fd2294>>
|
|
8
8
|
* @flow strict
|
|
9
9
|
* @noformat
|
|
10
10
|
*/
|
|
@@ -61,6 +61,7 @@ export interface Spec extends TurboModule {
|
|
|
61
61
|
+enableLayoutAnimationsOnIOS?: () => boolean;
|
|
62
62
|
+enableMainQueueCoordinatorOnIOS?: () => boolean;
|
|
63
63
|
+enableModuleArgumentNSNullConversionIOS?: () => boolean;
|
|
64
|
+
+enableMutationObserverByDefault?: () => boolean;
|
|
64
65
|
+enableNativeCSSParsing?: () => boolean;
|
|
65
66
|
+enableNetworkEventReporting?: () => boolean;
|
|
66
67
|
+enablePreparedTextLayout?: () => boolean;
|
|
@@ -47,4 +47,10 @@ export default function setUpDefaltReactNativeEnvironment(
|
|
|
47
47
|
) {
|
|
48
48
|
require('./setUpIntersectionObserver').default();
|
|
49
49
|
}
|
|
50
|
+
|
|
51
|
+
if (
|
|
52
|
+
require('../../../src/private/featureflags/ReactNativeFeatureFlags').enableMutationObserverByDefault()
|
|
53
|
+
) {
|
|
54
|
+
require('./setUpMutationObserver').default();
|
|
55
|
+
}
|
|
50
56
|
}
|
|
@@ -42,7 +42,7 @@ export type MeasureLayoutOnSuccessCallback = (
|
|
|
42
42
|
* Note, however, that they are not available on composite components that aren't directly backed by a
|
|
43
43
|
* native view. This will generally include most components that you define in your own app.
|
|
44
44
|
* For more information, see [Direct Manipulation](https://reactnative.dev/docs/the-new-architecture/direct-manipulation-new-architecture).
|
|
45
|
-
* @see https://github.com/
|
|
45
|
+
* @see https://github.com/react/react-native/blob/master/Libraries/Renderer/shims/ReactNativeTypes.js#L87
|
|
46
46
|
*/
|
|
47
47
|
export interface LegacyHostInstanceMethods {
|
|
48
48
|
/**
|
package/src/types/globals.d.ts
CHANGED
|
@@ -41,7 +41,7 @@ declare global {
|
|
|
41
41
|
*
|
|
42
42
|
* global.XMLHttpRequest = global.originalXMLHttpRequest;
|
|
43
43
|
*
|
|
44
|
-
* @see https://github.com/
|
|
44
|
+
* @see https://github.com/react/react-native/issues/934
|
|
45
45
|
*/
|
|
46
46
|
const originalXMLHttpRequest: any;
|
|
47
47
|
|
|
@@ -237,7 +237,7 @@ declare global {
|
|
|
237
237
|
/**
|
|
238
238
|
* React Native's implementation of fetch allows this syntax for uploading files from
|
|
239
239
|
* local filesystem.
|
|
240
|
-
* See https://github.com/
|
|
240
|
+
* See https://github.com/react/react-native/blob/master/Libraries/Network/convertRequestBody.js#L22
|
|
241
241
|
*/
|
|
242
242
|
interface _SourceUri {
|
|
243
243
|
uri: string;
|
|
@@ -73,7 +73,7 @@ Pod::Spec.new do |spec|
|
|
|
73
73
|
'folly/portability/*.h',
|
|
74
74
|
'folly/system/*.h',
|
|
75
75
|
|
|
76
|
-
# workaround for https://github.com/
|
|
76
|
+
# workaround for https://github.com/react/react-native/issues/14326
|
|
77
77
|
spec.preserve_paths = 'folly/*.h',
|
|
78
78
|
'folly/algorithm/simd/*.h',
|
|
79
79
|
'folly/algorithm/simd/detail/*.h',
|
|
@@ -28,7 +28,7 @@ Pod::Spec.new do |spec|
|
|
|
28
28
|
spec.version = version
|
|
29
29
|
spec.summary = 'React Native Dependencies'
|
|
30
30
|
spec.description = 'ReactNativeDependencies is a podspec that contains all the third-party dependencies of React Native.'
|
|
31
|
-
spec.homepage = 'https://github.com/
|
|
31
|
+
spec.homepage = 'https://github.com/react/react-native'
|
|
32
32
|
spec.license = package['license']
|
|
33
33
|
spec.authors = 'meta'
|
|
34
34
|
spec.platforms = min_supported_versions
|
|
@@ -27,7 +27,7 @@ Pod::Spec.new do |spec|
|
|
|
27
27
|
'src/symbolize.cc',
|
|
28
28
|
'src/utilities.cc',
|
|
29
29
|
'src/vlog_is_on.cc'
|
|
30
|
-
# workaround for https://github.com/
|
|
30
|
+
# workaround for https://github.com/react/react-native/issues/14326
|
|
31
31
|
spec.preserve_paths = 'src/*.h',
|
|
32
32
|
'src/base/*.h'
|
|
33
33
|
spec.exclude_files = "src/windows/**/*"
|
|
@@ -40,7 +40,7 @@ export type MeasureLayoutOnSuccessCallback = (
|
|
|
40
40
|
* Note, however, that they are not available on composite components that aren't directly backed by a
|
|
41
41
|
* native view. This will generally include most components that you define in your own app.
|
|
42
42
|
* For more information, see [Direct Manipulation](https://reactnative.dev/docs/the-new-architecture/direct-manipulation-new-architecture).
|
|
43
|
-
* @see https://github.com/
|
|
43
|
+
* @see https://github.com/react/react-native/blob/master/Libraries/Renderer/shims/ReactNativeTypes.js#L87
|
|
44
44
|
*/
|
|
45
45
|
export interface NativeMethods {
|
|
46
46
|
/**
|
|
@@ -123,7 +123,7 @@ export type NativeMethodsMixinType = NativeMethods;
|
|
|
123
123
|
/**
|
|
124
124
|
* Represents a native component, such as those returned from `requireNativeComponent`.
|
|
125
125
|
*
|
|
126
|
-
* @see https://github.com/
|
|
126
|
+
* @see https://github.com/react/react-native/blob/v0.62.0-rc.5/Libraries/Renderer/shims/ReactNativeTypes.js
|
|
127
127
|
*
|
|
128
128
|
* @todo This should eventually be defined as an AbstractComponent, but that
|
|
129
129
|
* should first be introduced in the React typings.
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @generated SignedSource<<
|
|
7
|
+
* @generated SignedSource<<ccca8e1da0d30d12a67984ccadfcc654>>
|
|
8
8
|
*
|
|
9
9
|
* This file was translated from Flow by scripts/js-api/build-types/index.js.
|
|
10
10
|
* Original file: packages/react-native/Libraries/Animated/components/AnimatedScrollView.js
|
|
@@ -16,7 +16,7 @@ import * as React from "react";
|
|
|
16
16
|
type AnimatedScrollViewInstance = React.ComponentRef<typeof ScrollView>;
|
|
17
17
|
declare const AnimatedScrollView: AnimatedComponentType<ScrollViewProps, AnimatedScrollViewInstance>;
|
|
18
18
|
/**
|
|
19
|
-
* @see https://github.com/
|
|
19
|
+
* @see https://github.com/react/react-native/commit/b8c8562
|
|
20
20
|
*/
|
|
21
21
|
declare const $$AnimatedScrollView: typeof AnimatedScrollView;
|
|
22
22
|
declare type $$AnimatedScrollView = typeof $$AnimatedScrollView;
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @generated SignedSource<<
|
|
7
|
+
* @generated SignedSource<<7a4f5715c04a60392f2e9f86b0da8b94>>
|
|
8
8
|
*
|
|
9
9
|
* This file was translated from Flow by scripts/js-api/build-types/index.js.
|
|
10
10
|
* Original file: packages/react-native/Libraries/Components/Button.js
|
|
@@ -92,7 +92,7 @@ export type ButtonProps = Readonly<{
|
|
|
92
92
|
accessibilityLabel?: string | undefined;
|
|
93
93
|
/**
|
|
94
94
|
* Alias for accessibilityLabel https://reactnative.dev/docs/view#accessibilitylabel
|
|
95
|
-
* https://github.com/
|
|
95
|
+
* https://github.com/react/react-native/issues/34424
|
|
96
96
|
*/
|
|
97
97
|
"aria-label"?: string | undefined;
|
|
98
98
|
/**
|
|
@@ -140,7 +140,7 @@ export type ButtonProps = Readonly<{
|
|
|
140
140
|
[button:examples].
|
|
141
141
|
|
|
142
142
|
[button:source]:
|
|
143
|
-
https://github.com/
|
|
143
|
+
https://github.com/react/react-native/blob/HEAD/Libraries/Components/Button.js
|
|
144
144
|
|
|
145
145
|
[button:examples]:
|
|
146
146
|
https://js.coach/?menu%5Bcollections%5D=React%20Native&page=1&query=button
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @generated SignedSource<<
|
|
7
|
+
* @generated SignedSource<<a8e95754ffbf8677e05e63df239faf23>>
|
|
8
8
|
*
|
|
9
9
|
* This file was translated from Flow by scripts/js-api/build-types/index.js.
|
|
10
10
|
* Original file: packages/react-native/Libraries/Components/TextInput/TextInput.flow.js
|
|
@@ -719,7 +719,7 @@ type TextInputBaseProps = Readonly<{
|
|
|
719
719
|
* - `borderBottomRightRadius`
|
|
720
720
|
* - `borderBottomLeftRadius`
|
|
721
721
|
*
|
|
722
|
-
* see [Issue#7070](https://github.com/
|
|
722
|
+
* see [Issue#7070](https://github.com/react/react-native/issues/7070)
|
|
723
723
|
* for more detail.
|
|
724
724
|
*
|
|
725
725
|
* [Styles](docs/style.html)
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @generated SignedSource<<
|
|
7
|
+
* @generated SignedSource<<d632f414daf92e9a1de00d6d4e2f1ffe>>
|
|
8
8
|
*
|
|
9
9
|
* This file was translated from Flow by scripts/js-api/build-types/index.js.
|
|
10
10
|
* Original file: packages/react-native/Libraries/Components/View/ViewAccessibility.js
|
|
@@ -223,7 +223,7 @@ export type AccessibilityProps = Readonly<Omit<AccessibilityPropsAndroid, keyof
|
|
|
223
223
|
accessibilityHint?: string | undefined;
|
|
224
224
|
/**
|
|
225
225
|
* Alias for accessibilityLabel https://reactnative.dev/docs/view#accessibilitylabel
|
|
226
|
-
* https://github.com/
|
|
226
|
+
* https://github.com/react/react-native/issues/34424
|
|
227
227
|
*/
|
|
228
228
|
"aria-label"?: string | undefined;
|
|
229
229
|
/**
|
|
@@ -295,7 +295,7 @@ export type AccessibilityProps = Readonly<Omit<AccessibilityPropsAndroid, keyof
|
|
|
295
295
|
accessibilityHint?: string | undefined;
|
|
296
296
|
/**
|
|
297
297
|
* Alias for accessibilityLabel https://reactnative.dev/docs/view#accessibilitylabel
|
|
298
|
-
* https://github.com/
|
|
298
|
+
* https://github.com/react/react-native/issues/34424
|
|
299
299
|
*/
|
|
300
300
|
"aria-label"?: string | undefined;
|
|
301
301
|
/**
|
|
@@ -367,7 +367,7 @@ export type AccessibilityProps = Readonly<Omit<AccessibilityPropsAndroid, keyof
|
|
|
367
367
|
accessibilityHint?: string | undefined;
|
|
368
368
|
/**
|
|
369
369
|
* Alias for accessibilityLabel https://reactnative.dev/docs/view#accessibilitylabel
|
|
370
|
-
* https://github.com/
|
|
370
|
+
* https://github.com/react/react-native/issues/34424
|
|
371
371
|
*/
|
|
372
372
|
"aria-label"?: string | undefined;
|
|
373
373
|
/**
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @generated SignedSource<<
|
|
7
|
+
* @generated SignedSource<<d55e74e2efd5ee21a5a6947b85b1c69f>>
|
|
8
8
|
*
|
|
9
9
|
* This file was translated from Flow by scripts/js-api/build-types/index.js.
|
|
10
10
|
* Original file: packages/react-native/Libraries/Interaction/PanResponder.js
|
|
@@ -103,7 +103,7 @@ import type { GestureResponderEvent } from "../Types/CoreEventTypes";
|
|
|
103
103
|
* ### Working Example
|
|
104
104
|
*
|
|
105
105
|
* To see it in action, try the
|
|
106
|
-
* [PanResponder example in RNTester](https://github.com/
|
|
106
|
+
* [PanResponder example in RNTester](https://github.com/react/react-native/blob/HEAD/packages/rn-tester/js/examples/PanResponder/PanResponderExample.js)
|
|
107
107
|
*/
|
|
108
108
|
|
|
109
109
|
export type PanResponderGestureState = {
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @generated SignedSource<<
|
|
7
|
+
* @generated SignedSource<<6bde5bbe9e632ac3407d08e6936ee032>>
|
|
8
8
|
*
|
|
9
9
|
* This file was translated from Flow by scripts/js-api/build-types/index.js.
|
|
10
10
|
* Original file: packages/react-native/src/private/types/HostInstance.js
|
|
@@ -22,7 +22,7 @@ export type MeasureLayoutOnSuccessCallback = (left: number, top: number, width:
|
|
|
22
22
|
* Note, however, that they are not available on composite components that aren't directly backed by a
|
|
23
23
|
* native view. This will generally include most components that you define in your own app.
|
|
24
24
|
* For more information, see [Direct Manipulation](https://reactnative.dev/docs/the-new-architecture/direct-manipulation-new-architecture).
|
|
25
|
-
* @see https://github.com/
|
|
25
|
+
* @see https://github.com/react/react-native/blob/master/Libraries/Renderer/shims/ReactNativeTypes.js#L87
|
|
26
26
|
*/
|
|
27
27
|
export interface LegacyHostInstanceMethods {
|
|
28
28
|
/**
|