react-native 0.83.0-nightly-20251104-502efe1cc → 0.83.0-rc.1
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/Core/ReactNativeVersion.js +1 -1
- package/Libraries/Text/TextInput/RCTBaseTextInputView.mm +0 -3
- package/React/Base/RCTVersion.m +1 -1
- package/React/CoreModules/React-CoreModules.podspec +1 -0
- package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +16 -0
- package/React/Runtime/React-RCTRuntime.podspec +1 -0
- package/ReactAndroid/gradle.properties +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +13 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +21 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +5 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +5 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +23 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +5 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSTouchDispatcher.kt +2 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEvent.kt +4 -5
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +29 -1
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +7 -1
- package/ReactCommon/cxxreact/React-cxxreact.podspec +1 -0
- package/ReactCommon/cxxreact/ReactNativeVersion.h +1 -1
- package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +1 -0
- package/ReactCommon/jsinspector-modern/HostAgent.cpp +33 -0
- package/ReactCommon/jsinspector-modern/HostAgent.h +6 -0
- package/ReactCommon/jsinspector-modern/HostTarget.h +5 -0
- package/ReactCommon/jsinspector-modern/InspectorFlags.cpp +6 -0
- package/ReactCommon/jsinspector-modern/InspectorFlags.h +7 -0
- package/ReactCommon/jsinspector-modern/InspectorInterfaces.cpp +37 -0
- package/ReactCommon/jsinspector-modern/InspectorInterfaces.h +12 -1
- package/ReactCommon/jsinspector-modern/TracingAgent.cpp +12 -0
- package/ReactCommon/jsinspector-modern/tests/NetworkReporterTest.cpp +55 -3
- package/ReactCommon/jsinspector-modern/tracing/React-jsinspectortracing.podspec +4 -0
- package/ReactCommon/jsitooling/React-jsitooling.podspec +1 -0
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +9 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +11 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +65 -29
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +6 -2
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +9 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +19 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +3 -1
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +11 -1
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +5 -1
- package/ReactCommon/react/utils/React-utils.podspec +3 -1
- package/package.json +10 -9
- package/scripts/cocoapods/rncore.rb +3 -2
- package/sdks/.hermesv1version +1 -0
- package/sdks/.hermesversion +1 -0
- package/sdks/hermes-engine/version.properties +2 -2
- package/src/private/featureflags/ReactNativeFeatureFlags.js +11 -1
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +3 -1
- package/src/private/webapis/intersectionobserver/IntersectionObserver.js +0 -48
- package/ReactCommon/jsinspector-modern/tests/TracingTest.h +0 -82
|
@@ -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<<5864ef780bdc795d47c096b16bf248b5>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -86,6 +86,7 @@ class ReactNativeFeatureFlagsAccessor {
|
|
|
86
86
|
bool enableVirtualViewWindowFocusDetection();
|
|
87
87
|
bool enableWebPerformanceAPIsByDefault();
|
|
88
88
|
bool fixMappingOfEventPrioritiesBetweenFabricAndReact();
|
|
89
|
+
bool fuseboxAssertSingleHostState();
|
|
89
90
|
bool fuseboxEnabledRelease();
|
|
90
91
|
bool fuseboxNetworkInspectionEnabled();
|
|
91
92
|
bool hideOffscreenVirtualViewsOnIOS();
|
|
@@ -97,6 +98,7 @@ class ReactNativeFeatureFlagsAccessor {
|
|
|
97
98
|
bool shouldPressibilityUseW3CPointerEventsForHover();
|
|
98
99
|
bool shouldTriggerResponderTransferOnScrollAndroid();
|
|
99
100
|
bool skipActivityIdentityAssertionOnHostPause();
|
|
101
|
+
bool sweepActiveTouchOnChildNativeGesturesAndroid();
|
|
100
102
|
bool traceTurboModulePromiseRejectionsOnAndroid();
|
|
101
103
|
bool updateRuntimeShadowNodeReferencesOnCommit();
|
|
102
104
|
bool useAlwaysAvailableJSErrorHandling();
|
|
@@ -125,7 +127,7 @@ class ReactNativeFeatureFlagsAccessor {
|
|
|
125
127
|
std::unique_ptr<ReactNativeFeatureFlagsProvider> currentProvider_;
|
|
126
128
|
bool wasOverridden_;
|
|
127
129
|
|
|
128
|
-
std::array<std::atomic<const char*>,
|
|
130
|
+
std::array<std::atomic<const char*>, 84> accessedFeatureFlags_;
|
|
129
131
|
|
|
130
132
|
std::atomic<std::optional<bool>> commonTestFlag_;
|
|
131
133
|
std::atomic<std::optional<bool>> cdpInteractionMetricsEnabled_;
|
|
@@ -181,6 +183,7 @@ class ReactNativeFeatureFlagsAccessor {
|
|
|
181
183
|
std::atomic<std::optional<bool>> enableVirtualViewWindowFocusDetection_;
|
|
182
184
|
std::atomic<std::optional<bool>> enableWebPerformanceAPIsByDefault_;
|
|
183
185
|
std::atomic<std::optional<bool>> fixMappingOfEventPrioritiesBetweenFabricAndReact_;
|
|
186
|
+
std::atomic<std::optional<bool>> fuseboxAssertSingleHostState_;
|
|
184
187
|
std::atomic<std::optional<bool>> fuseboxEnabledRelease_;
|
|
185
188
|
std::atomic<std::optional<bool>> fuseboxNetworkInspectionEnabled_;
|
|
186
189
|
std::atomic<std::optional<bool>> hideOffscreenVirtualViewsOnIOS_;
|
|
@@ -192,6 +195,7 @@ class ReactNativeFeatureFlagsAccessor {
|
|
|
192
195
|
std::atomic<std::optional<bool>> shouldPressibilityUseW3CPointerEventsForHover_;
|
|
193
196
|
std::atomic<std::optional<bool>> shouldTriggerResponderTransferOnScrollAndroid_;
|
|
194
197
|
std::atomic<std::optional<bool>> skipActivityIdentityAssertionOnHostPause_;
|
|
198
|
+
std::atomic<std::optional<bool>> sweepActiveTouchOnChildNativeGesturesAndroid_;
|
|
195
199
|
std::atomic<std::optional<bool>> traceTurboModulePromiseRejectionsOnAndroid_;
|
|
196
200
|
std::atomic<std::optional<bool>> updateRuntimeShadowNodeReferencesOnCommit_;
|
|
197
201
|
std::atomic<std::optional<bool>> useAlwaysAvailableJSErrorHandling_;
|
|
@@ -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<<84f99a0fde50ce70a8da2762dbb1a7af>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -243,6 +243,10 @@ class ReactNativeFeatureFlagsDefaults : public ReactNativeFeatureFlagsProvider {
|
|
|
243
243
|
return false;
|
|
244
244
|
}
|
|
245
245
|
|
|
246
|
+
bool fuseboxAssertSingleHostState() override {
|
|
247
|
+
return true;
|
|
248
|
+
}
|
|
249
|
+
|
|
246
250
|
bool fuseboxEnabledRelease() override {
|
|
247
251
|
return false;
|
|
248
252
|
}
|
|
@@ -287,6 +291,10 @@ class ReactNativeFeatureFlagsDefaults : public ReactNativeFeatureFlagsProvider {
|
|
|
287
291
|
return false;
|
|
288
292
|
}
|
|
289
293
|
|
|
294
|
+
bool sweepActiveTouchOnChildNativeGesturesAndroid() override {
|
|
295
|
+
return true;
|
|
296
|
+
}
|
|
297
|
+
|
|
290
298
|
bool traceTurboModulePromiseRejectionsOnAndroid() override {
|
|
291
299
|
return false;
|
|
292
300
|
}
|
|
@@ -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<<394e4281884f0d2519d680974d2ebfe5>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -531,6 +531,15 @@ class ReactNativeFeatureFlagsDynamicProvider : public ReactNativeFeatureFlagsDef
|
|
|
531
531
|
return ReactNativeFeatureFlagsDefaults::fixMappingOfEventPrioritiesBetweenFabricAndReact();
|
|
532
532
|
}
|
|
533
533
|
|
|
534
|
+
bool fuseboxAssertSingleHostState() override {
|
|
535
|
+
auto value = values_["fuseboxAssertSingleHostState"];
|
|
536
|
+
if (!value.isNull()) {
|
|
537
|
+
return value.getBool();
|
|
538
|
+
}
|
|
539
|
+
|
|
540
|
+
return ReactNativeFeatureFlagsDefaults::fuseboxAssertSingleHostState();
|
|
541
|
+
}
|
|
542
|
+
|
|
534
543
|
bool fuseboxEnabledRelease() override {
|
|
535
544
|
auto value = values_["fuseboxEnabledRelease"];
|
|
536
545
|
if (!value.isNull()) {
|
|
@@ -630,6 +639,15 @@ class ReactNativeFeatureFlagsDynamicProvider : public ReactNativeFeatureFlagsDef
|
|
|
630
639
|
return ReactNativeFeatureFlagsDefaults::skipActivityIdentityAssertionOnHostPause();
|
|
631
640
|
}
|
|
632
641
|
|
|
642
|
+
bool sweepActiveTouchOnChildNativeGesturesAndroid() override {
|
|
643
|
+
auto value = values_["sweepActiveTouchOnChildNativeGesturesAndroid"];
|
|
644
|
+
if (!value.isNull()) {
|
|
645
|
+
return value.getBool();
|
|
646
|
+
}
|
|
647
|
+
|
|
648
|
+
return ReactNativeFeatureFlagsDefaults::sweepActiveTouchOnChildNativeGesturesAndroid();
|
|
649
|
+
}
|
|
650
|
+
|
|
633
651
|
bool traceTurboModulePromiseRejectionsOnAndroid() override {
|
|
634
652
|
auto value = values_["traceTurboModulePromiseRejectionsOnAndroid"];
|
|
635
653
|
if (!value.isNull()) {
|
|
@@ -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<<045cc4e4390d6ddf2ca252ff4c8f399d>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -79,6 +79,7 @@ class ReactNativeFeatureFlagsProvider {
|
|
|
79
79
|
virtual bool enableVirtualViewWindowFocusDetection() = 0;
|
|
80
80
|
virtual bool enableWebPerformanceAPIsByDefault() = 0;
|
|
81
81
|
virtual bool fixMappingOfEventPrioritiesBetweenFabricAndReact() = 0;
|
|
82
|
+
virtual bool fuseboxAssertSingleHostState() = 0;
|
|
82
83
|
virtual bool fuseboxEnabledRelease() = 0;
|
|
83
84
|
virtual bool fuseboxNetworkInspectionEnabled() = 0;
|
|
84
85
|
virtual bool hideOffscreenVirtualViewsOnIOS() = 0;
|
|
@@ -90,6 +91,7 @@ class ReactNativeFeatureFlagsProvider {
|
|
|
90
91
|
virtual bool shouldPressibilityUseW3CPointerEventsForHover() = 0;
|
|
91
92
|
virtual bool shouldTriggerResponderTransferOnScrollAndroid() = 0;
|
|
92
93
|
virtual bool skipActivityIdentityAssertionOnHostPause() = 0;
|
|
94
|
+
virtual bool sweepActiveTouchOnChildNativeGesturesAndroid() = 0;
|
|
93
95
|
virtual bool traceTurboModulePromiseRejectionsOnAndroid() = 0;
|
|
94
96
|
virtual bool updateRuntimeShadowNodeReferencesOnCommit() = 0;
|
|
95
97
|
virtual bool useAlwaysAvailableJSErrorHandling() = 0;
|
|
@@ -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<<368a69d36f8c7aef0103deb940751012>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -314,6 +314,11 @@ bool NativeReactNativeFeatureFlags::fixMappingOfEventPrioritiesBetweenFabricAndR
|
|
|
314
314
|
return ReactNativeFeatureFlags::fixMappingOfEventPrioritiesBetweenFabricAndReact();
|
|
315
315
|
}
|
|
316
316
|
|
|
317
|
+
bool NativeReactNativeFeatureFlags::fuseboxAssertSingleHostState(
|
|
318
|
+
jsi::Runtime& /*runtime*/) {
|
|
319
|
+
return ReactNativeFeatureFlags::fuseboxAssertSingleHostState();
|
|
320
|
+
}
|
|
321
|
+
|
|
317
322
|
bool NativeReactNativeFeatureFlags::fuseboxEnabledRelease(
|
|
318
323
|
jsi::Runtime& /*runtime*/) {
|
|
319
324
|
return ReactNativeFeatureFlags::fuseboxEnabledRelease();
|
|
@@ -369,6 +374,11 @@ bool NativeReactNativeFeatureFlags::skipActivityIdentityAssertionOnHostPause(
|
|
|
369
374
|
return ReactNativeFeatureFlags::skipActivityIdentityAssertionOnHostPause();
|
|
370
375
|
}
|
|
371
376
|
|
|
377
|
+
bool NativeReactNativeFeatureFlags::sweepActiveTouchOnChildNativeGesturesAndroid(
|
|
378
|
+
jsi::Runtime& /*runtime*/) {
|
|
379
|
+
return ReactNativeFeatureFlags::sweepActiveTouchOnChildNativeGesturesAndroid();
|
|
380
|
+
}
|
|
381
|
+
|
|
372
382
|
bool NativeReactNativeFeatureFlags::traceTurboModulePromiseRejectionsOnAndroid(
|
|
373
383
|
jsi::Runtime& /*runtime*/) {
|
|
374
384
|
return ReactNativeFeatureFlags::traceTurboModulePromiseRejectionsOnAndroid();
|
|
@@ -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<<5b7229fbb99de21237fa8d69da46a057>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -144,6 +144,8 @@ class NativeReactNativeFeatureFlags
|
|
|
144
144
|
|
|
145
145
|
bool fixMappingOfEventPrioritiesBetweenFabricAndReact(jsi::Runtime& runtime);
|
|
146
146
|
|
|
147
|
+
bool fuseboxAssertSingleHostState(jsi::Runtime& runtime);
|
|
148
|
+
|
|
147
149
|
bool fuseboxEnabledRelease(jsi::Runtime& runtime);
|
|
148
150
|
|
|
149
151
|
bool fuseboxNetworkInspectionEnabled(jsi::Runtime& runtime);
|
|
@@ -166,6 +168,8 @@ class NativeReactNativeFeatureFlags
|
|
|
166
168
|
|
|
167
169
|
bool skipActivityIdentityAssertionOnHostPause(jsi::Runtime& runtime);
|
|
168
170
|
|
|
171
|
+
bool sweepActiveTouchOnChildNativeGesturesAndroid(jsi::Runtime& runtime);
|
|
172
|
+
|
|
169
173
|
bool traceTurboModulePromiseRejectionsOnAndroid(jsi::Runtime& runtime);
|
|
170
174
|
|
|
171
175
|
bool updateRuntimeShadowNodeReferencesOnCommit(jsi::Runtime& runtime);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native",
|
|
3
|
-
"version": "0.83.0-
|
|
3
|
+
"version": "0.83.0-rc.1",
|
|
4
4
|
"description": "A framework for building native apps using React",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -129,6 +129,7 @@
|
|
|
129
129
|
"scripts/xcode/ccache.conf",
|
|
130
130
|
"scripts/xcode/with-environment.sh",
|
|
131
131
|
"sdks/.hermesversion",
|
|
132
|
+
"sdks/.hermesv1version",
|
|
132
133
|
"sdks/hermes-engine",
|
|
133
134
|
"sdks/hermesc",
|
|
134
135
|
"settings.gradle.kts",
|
|
@@ -159,13 +160,13 @@
|
|
|
159
160
|
},
|
|
160
161
|
"dependencies": {
|
|
161
162
|
"@jest/create-cache-key-function": "^29.7.0",
|
|
162
|
-
"@react-native/assets-registry": "0.83.0-
|
|
163
|
-
"@react-native/codegen": "0.83.0-
|
|
164
|
-
"@react-native/community-cli-plugin": "0.83.0-
|
|
165
|
-
"@react-native/gradle-plugin": "0.83.0-
|
|
166
|
-
"@react-native/js-polyfills": "0.83.0-
|
|
167
|
-
"@react-native/normalize-colors": "0.83.0-
|
|
168
|
-
"@react-native/virtualized-lists": "0.83.0-
|
|
163
|
+
"@react-native/assets-registry": "0.83.0-rc.1",
|
|
164
|
+
"@react-native/codegen": "0.83.0-rc.1",
|
|
165
|
+
"@react-native/community-cli-plugin": "0.83.0-rc.1",
|
|
166
|
+
"@react-native/gradle-plugin": "0.83.0-rc.1",
|
|
167
|
+
"@react-native/js-polyfills": "0.83.0-rc.1",
|
|
168
|
+
"@react-native/normalize-colors": "0.83.0-rc.1",
|
|
169
|
+
"@react-native/virtualized-lists": "0.83.0-rc.1",
|
|
169
170
|
"abort-controller": "^3.0.0",
|
|
170
171
|
"anser": "^1.4.9",
|
|
171
172
|
"ansi-regex": "^5.0.0",
|
|
@@ -175,7 +176,7 @@
|
|
|
175
176
|
"commander": "^12.0.0",
|
|
176
177
|
"flow-enums-runtime": "^0.0.6",
|
|
177
178
|
"glob": "^7.1.1",
|
|
178
|
-
"hermes-compiler": "0.14.0
|
|
179
|
+
"hermes-compiler": "0.14.0",
|
|
179
180
|
"invariant": "^2.2.4",
|
|
180
181
|
"jest-environment-node": "^29.7.0",
|
|
181
182
|
"memoize-one": "^5.0.0",
|
|
@@ -271,9 +271,10 @@ class ReactNativeCoreUtils
|
|
|
271
271
|
return if dsym_bundles.empty?
|
|
272
272
|
|
|
273
273
|
# Define source path mappings - from absolute build paths to relative framework paths
|
|
274
|
+
# Expand the path relative to the installation root (project root, parent of ios/)
|
|
275
|
+
react_native_absolute_path = File.expand_path(@@react_native_path, Pod::Config.instance.installation_root)
|
|
274
276
|
mappings = [
|
|
275
|
-
|
|
276
|
-
["/Users/runner/work/react-native/react-native/packages/react-native", "#{File.expand_path(@@react_native_path)}"],
|
|
277
|
+
["/Users/runner/work/react-native/react-native/packages/react-native", react_native_absolute_path],
|
|
277
278
|
]
|
|
278
279
|
|
|
279
280
|
dsym_bundles.each do |dsym_path| begin
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
hermes-v250829098.0.3
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
hermes-v0.14.0
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
HERMES_VERSION_NAME=0.14.0
|
|
2
|
-
HERMES_V1_VERSION_NAME=250829098.0.
|
|
1
|
+
HERMES_VERSION_NAME=0.14.0
|
|
2
|
+
HERMES_V1_VERSION_NAME=250829098.0.3
|
|
@@ -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<<472646b95362ace71083c0a471aa8878>>
|
|
8
8
|
* @flow strict
|
|
9
9
|
* @noformat
|
|
10
10
|
*/
|
|
@@ -104,6 +104,7 @@ export type ReactNativeFeatureFlags = $ReadOnly<{
|
|
|
104
104
|
enableVirtualViewWindowFocusDetection: Getter<boolean>,
|
|
105
105
|
enableWebPerformanceAPIsByDefault: Getter<boolean>,
|
|
106
106
|
fixMappingOfEventPrioritiesBetweenFabricAndReact: Getter<boolean>,
|
|
107
|
+
fuseboxAssertSingleHostState: Getter<boolean>,
|
|
107
108
|
fuseboxEnabledRelease: Getter<boolean>,
|
|
108
109
|
fuseboxNetworkInspectionEnabled: Getter<boolean>,
|
|
109
110
|
hideOffscreenVirtualViewsOnIOS: Getter<boolean>,
|
|
@@ -115,6 +116,7 @@ export type ReactNativeFeatureFlags = $ReadOnly<{
|
|
|
115
116
|
shouldPressibilityUseW3CPointerEventsForHover: Getter<boolean>,
|
|
116
117
|
shouldTriggerResponderTransferOnScrollAndroid: Getter<boolean>,
|
|
117
118
|
skipActivityIdentityAssertionOnHostPause: Getter<boolean>,
|
|
119
|
+
sweepActiveTouchOnChildNativeGesturesAndroid: Getter<boolean>,
|
|
118
120
|
traceTurboModulePromiseRejectionsOnAndroid: Getter<boolean>,
|
|
119
121
|
updateRuntimeShadowNodeReferencesOnCommit: Getter<boolean>,
|
|
120
122
|
useAlwaysAvailableJSErrorHandling: Getter<boolean>,
|
|
@@ -429,6 +431,10 @@ export const enableWebPerformanceAPIsByDefault: Getter<boolean> = createNativeFl
|
|
|
429
431
|
* Uses the default event priority instead of the discreet event priority by default when dispatching events from Fabric to React.
|
|
430
432
|
*/
|
|
431
433
|
export const fixMappingOfEventPrioritiesBetweenFabricAndReact: Getter<boolean> = createNativeFlagGetter('fixMappingOfEventPrioritiesBetweenFabricAndReact', false);
|
|
434
|
+
/**
|
|
435
|
+
* Enable system assertion validating that Fusebox is configured with a single host. When set, the CDP backend will dynamically disable features (Perf and Network) in the event that multiple hosts are registered (undefined behaviour), and broadcast this over `ReactNativeApplication.systemStateChanged`.
|
|
436
|
+
*/
|
|
437
|
+
export const fuseboxAssertSingleHostState: Getter<boolean> = createNativeFlagGetter('fuseboxAssertSingleHostState', true);
|
|
432
438
|
/**
|
|
433
439
|
* Flag determining if the React Native DevTools (Fusebox) CDP backend should be enabled in release builds. This flag is global and should not be changed across React Host lifetimes.
|
|
434
440
|
*/
|
|
@@ -473,6 +479,10 @@ export const shouldTriggerResponderTransferOnScrollAndroid: Getter<boolean> = cr
|
|
|
473
479
|
* Skip activity identity assertion in ReactHostImpl::onHostPause()
|
|
474
480
|
*/
|
|
475
481
|
export const skipActivityIdentityAssertionOnHostPause: Getter<boolean> = createNativeFlagGetter('skipActivityIdentityAssertionOnHostPause', false);
|
|
482
|
+
/**
|
|
483
|
+
* A flag to tell Fabric to sweep active touches from JSTouchDispatcher in Android when a child native gesture is started.
|
|
484
|
+
*/
|
|
485
|
+
export const sweepActiveTouchOnChildNativeGesturesAndroid: Getter<boolean> = createNativeFlagGetter('sweepActiveTouchOnChildNativeGesturesAndroid', true);
|
|
476
486
|
/**
|
|
477
487
|
* Enables storing js caller stack when creating promise in native module. This is useful in case of Promise rejection and tracing the cause.
|
|
478
488
|
*/
|
|
@@ -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<<d51c41724cd4d10eb227f96847277e99>>
|
|
8
8
|
* @flow strict
|
|
9
9
|
* @noformat
|
|
10
10
|
*/
|
|
@@ -79,6 +79,7 @@ export interface Spec extends TurboModule {
|
|
|
79
79
|
+enableVirtualViewWindowFocusDetection?: () => boolean;
|
|
80
80
|
+enableWebPerformanceAPIsByDefault?: () => boolean;
|
|
81
81
|
+fixMappingOfEventPrioritiesBetweenFabricAndReact?: () => boolean;
|
|
82
|
+
+fuseboxAssertSingleHostState?: () => boolean;
|
|
82
83
|
+fuseboxEnabledRelease?: () => boolean;
|
|
83
84
|
+fuseboxNetworkInspectionEnabled?: () => boolean;
|
|
84
85
|
+hideOffscreenVirtualViewsOnIOS?: () => boolean;
|
|
@@ -90,6 +91,7 @@ export interface Spec extends TurboModule {
|
|
|
90
91
|
+shouldPressibilityUseW3CPointerEventsForHover?: () => boolean;
|
|
91
92
|
+shouldTriggerResponderTransferOnScrollAndroid?: () => boolean;
|
|
92
93
|
+skipActivityIdentityAssertionOnHostPause?: () => boolean;
|
|
94
|
+
+sweepActiveTouchOnChildNativeGesturesAndroid?: () => boolean;
|
|
93
95
|
+traceTurboModulePromiseRejectionsOnAndroid?: () => boolean;
|
|
94
96
|
+updateRuntimeShadowNodeReferencesOnCommit?: () => boolean;
|
|
95
97
|
+useAlwaysAvailableJSErrorHandling?: () => boolean;
|
|
@@ -94,24 +94,6 @@ export default class IntersectionObserver {
|
|
|
94
94
|
);
|
|
95
95
|
}
|
|
96
96
|
|
|
97
|
-
if (options != null && 'delay' in options) {
|
|
98
|
-
throw new Error(
|
|
99
|
-
"Failed to construct 'IntersectionObserver': The 'delay' option is not supported.",
|
|
100
|
-
);
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
if (options != null && 'scrollMargin' in options) {
|
|
104
|
-
throw new Error(
|
|
105
|
-
"Failed to construct 'IntersectionObserver': The 'scrollMargin' option is not supported.",
|
|
106
|
-
);
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
if (options != null && 'trackVisibility' in options) {
|
|
110
|
-
throw new Error(
|
|
111
|
-
"Failed to construct 'IntersectionObserver': The 'trackVisibility' option is not supported.",
|
|
112
|
-
);
|
|
113
|
-
}
|
|
114
|
-
|
|
115
97
|
this._callback = callback;
|
|
116
98
|
|
|
117
99
|
this._rootThresholds = normalizeRootThreshold(options?.rnRootThreshold);
|
|
@@ -170,36 +152,6 @@ export default class IntersectionObserver {
|
|
|
170
152
|
return this._rootThresholds;
|
|
171
153
|
}
|
|
172
154
|
|
|
173
|
-
/**
|
|
174
|
-
* The `delay` option is not supported.
|
|
175
|
-
* @throws {Error} Always throws an error indicating this property is not supported.
|
|
176
|
-
*/
|
|
177
|
-
get delay(): number {
|
|
178
|
-
throw new Error(
|
|
179
|
-
"Failed to read the 'delay' property from 'IntersectionObserver': This property is not supported.",
|
|
180
|
-
);
|
|
181
|
-
}
|
|
182
|
-
|
|
183
|
-
/**
|
|
184
|
-
* The `scrollMargin` option is not supported.
|
|
185
|
-
* @throws {Error} Always throws an error indicating this property is not supported.
|
|
186
|
-
*/
|
|
187
|
-
get scrollMargin(): string {
|
|
188
|
-
throw new Error(
|
|
189
|
-
"Failed to read the 'scrollMargin' property from 'IntersectionObserver': This property is not supported.",
|
|
190
|
-
);
|
|
191
|
-
}
|
|
192
|
-
|
|
193
|
-
/**
|
|
194
|
-
* The `trackVisibility` option is not supported.
|
|
195
|
-
* @throws {Error} Always throws an error indicating this property is not supported.
|
|
196
|
-
*/
|
|
197
|
-
get trackVisibility(): boolean {
|
|
198
|
-
throw new Error(
|
|
199
|
-
"Failed to read the 'trackVisibility' property from 'IntersectionObserver': This property is not supported.",
|
|
200
|
-
);
|
|
201
|
-
}
|
|
202
|
-
|
|
203
155
|
/**
|
|
204
156
|
* Adds an element to the set of target elements being watched by the
|
|
205
157
|
* `IntersectionObserver`.
|
|
@@ -1,82 +0,0 @@
|
|
|
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
|
-
|
|
8
|
-
#pragma once
|
|
9
|
-
|
|
10
|
-
#include "JsiIntegrationTest.h"
|
|
11
|
-
|
|
12
|
-
#include <folly/dynamic.h>
|
|
13
|
-
#include <folly/json.h>
|
|
14
|
-
#include <gmock/gmock.h>
|
|
15
|
-
#include <vector>
|
|
16
|
-
|
|
17
|
-
#include "FollyDynamicMatchers.h"
|
|
18
|
-
|
|
19
|
-
namespace facebook::react::jsinspector_modern {
|
|
20
|
-
|
|
21
|
-
/**
|
|
22
|
-
* Base test class providing tracing-related test utilities for tests.
|
|
23
|
-
*/
|
|
24
|
-
template <typename EngineAdapter, typename Executor>
|
|
25
|
-
class TracingTestBase : public JsiIntegrationPortableTestBase<EngineAdapter, Executor> {
|
|
26
|
-
protected:
|
|
27
|
-
using JsiIntegrationPortableTestBase<EngineAdapter, Executor>::JsiIntegrationPortableTestBase;
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
* Helper method to start tracing via Tracing.start CDP command.
|
|
31
|
-
*/
|
|
32
|
-
void startTracing()
|
|
33
|
-
{
|
|
34
|
-
this->expectMessageFromPage(JsonEq(R"({
|
|
35
|
-
"id": 1,
|
|
36
|
-
"result": {}
|
|
37
|
-
})"));
|
|
38
|
-
|
|
39
|
-
this->toPage_->sendMessage(R"({
|
|
40
|
-
"id": 1,
|
|
41
|
-
"method": "Tracing.start"
|
|
42
|
-
})");
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
/**
|
|
46
|
-
* Helper method to end tracing and collect all trace events from potentially
|
|
47
|
-
* multiple chunked Tracing.dataCollected messages.
|
|
48
|
-
* \returns A vector containing all collected trace events
|
|
49
|
-
*/
|
|
50
|
-
std::vector<folly::dynamic> endTracingAndCollectEvents()
|
|
51
|
-
{
|
|
52
|
-
testing::InSequence s;
|
|
53
|
-
|
|
54
|
-
this->expectMessageFromPage(JsonEq(R"({
|
|
55
|
-
"id": 1,
|
|
56
|
-
"result": {}
|
|
57
|
-
})"));
|
|
58
|
-
|
|
59
|
-
std::vector<folly::dynamic> allTraceEvents;
|
|
60
|
-
|
|
61
|
-
EXPECT_CALL(this->fromPage(), onMessage(JsonParsed(AtJsonPtr("/method", "Tracing.dataCollected"))))
|
|
62
|
-
.Times(testing::AtLeast(1))
|
|
63
|
-
.WillRepeatedly(testing::Invoke([&allTraceEvents](const std::string &message) {
|
|
64
|
-
auto parsedMessage = folly::parseJson(message);
|
|
65
|
-
auto &events = parsedMessage.at("params").at("value");
|
|
66
|
-
allTraceEvents.insert(
|
|
67
|
-
allTraceEvents.end(), std::make_move_iterator(events.begin()), std::make_move_iterator(events.end()));
|
|
68
|
-
}));
|
|
69
|
-
|
|
70
|
-
this->expectMessageFromPage(JsonParsed(
|
|
71
|
-
testing::AllOf(AtJsonPtr("/method", "Tracing.tracingComplete"), AtJsonPtr("/params/dataLossOccurred", false))));
|
|
72
|
-
|
|
73
|
-
this->toPage_->sendMessage(R"({
|
|
74
|
-
"id": 1,
|
|
75
|
-
"method": "Tracing.end"
|
|
76
|
-
})");
|
|
77
|
-
|
|
78
|
-
return allTraceEvents;
|
|
79
|
-
}
|
|
80
|
-
};
|
|
81
|
-
|
|
82
|
-
} // namespace facebook::react::jsinspector_modern
|