react-native 0.84.0-nightly-20260105-0241b5995 → 0.84.0-nightly-20260106-36a0d9ef6
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/Components/AccessibilityInfo/AccessibilityInfo.js +7 -1
- package/Libraries/Core/ReactNativeVersion.js +1 -1
- package/React/Base/RCTVersion.m +1 -1
- package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +0 -16
- package/React/Inspector/RCTCxxInspectorWebSocketAdapter.mm +6 -5
- package/ReactAndroid/gradle.properties +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeArray.kt +1 -12
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +1 -13
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +1 -21
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +1 -5
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +1 -5
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +1 -23
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +1 -5
- package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleManager.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/core/JavaTimerManager.kt +4 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/GuardedFrameCallback.kt +17 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TransformHelper.kt +1 -7
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +1 -29
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +1 -7
- package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManager.cpp +13 -6
- package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManager.h +2 -1
- package/ReactCommon/cxxreact/ReactNativeVersion.h +1 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +1 -9
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +1 -11
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +11 -47
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +2 -6
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +1 -9
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +1 -19
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +1 -3
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +1 -11
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +1 -5
- package/package.json +10 -10
- package/sdks/hermes-engine/version.properties +2 -2
- package/src/private/featureflags/ReactNativeFeatureFlags.js +1 -11
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +1 -3
- package/types_generated/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +4 -2
|
@@ -42,7 +42,11 @@ type AccessibilityEventDefinitions = {
|
|
|
42
42
|
screenReaderChanged: [boolean],
|
|
43
43
|
};
|
|
44
44
|
|
|
45
|
-
type AccessibilityEventTypes =
|
|
45
|
+
type AccessibilityEventTypes =
|
|
46
|
+
| 'click'
|
|
47
|
+
| 'focus'
|
|
48
|
+
| 'viewHoverEnter'
|
|
49
|
+
| 'windowStateChange';
|
|
46
50
|
|
|
47
51
|
// Mapping of public event names to platform-specific event names.
|
|
48
52
|
const EventNames: Map<
|
|
@@ -438,6 +442,8 @@ const AccessibilityInfo = {
|
|
|
438
442
|
* Set accessibility focus to a React component.
|
|
439
443
|
*
|
|
440
444
|
* See https://reactnative.dev/docs/accessibilityinfo#setaccessibilityfocus
|
|
445
|
+
*
|
|
446
|
+
* @deprecated Use `sendAccessibilityEvent` with eventType `focus` instead.
|
|
441
447
|
*/
|
|
442
448
|
setAccessibilityFocus(reactTag: number): void {
|
|
443
449
|
legacySendAccessibilityEvent(reactTag, 'focus');
|
|
@@ -29,7 +29,7 @@ export default class ReactNativeVersion {
|
|
|
29
29
|
static major: number = 0;
|
|
30
30
|
static minor: number = 84;
|
|
31
31
|
static patch: number = 0;
|
|
32
|
-
static prerelease: string | null = 'nightly-
|
|
32
|
+
static prerelease: string | null = 'nightly-20260106-36a0d9ef6';
|
|
33
33
|
|
|
34
34
|
static getVersionString(): string {
|
|
35
35
|
return `${this.major}.${this.minor}.${this.patch}${this.prerelease != null ? `-${this.prerelease}` : ''}`;
|
package/React/Base/RCTVersion.m
CHANGED
|
@@ -24,7 +24,7 @@ NSDictionary* RCTGetReactNativeVersion(void)
|
|
|
24
24
|
RCTVersionMajor: @(0),
|
|
25
25
|
RCTVersionMinor: @(84),
|
|
26
26
|
RCTVersionPatch: @(0),
|
|
27
|
-
RCTVersionPrerelease: @"nightly-
|
|
27
|
+
RCTVersionPrerelease: @"nightly-20260106-36a0d9ef6",
|
|
28
28
|
};
|
|
29
29
|
});
|
|
30
30
|
return __rnVersion;
|
|
@@ -302,8 +302,6 @@ protected:
|
|
|
302
302
|
methodMap_["updateRuntimeShadowNodeReferencesOnCommit"] = MethodMetadata {.argCount = 0, .invoker = __updateRuntimeShadowNodeReferencesOnCommit};
|
|
303
303
|
methodMap_["useAlwaysAvailableJSErrorHandling"] = MethodMetadata {.argCount = 0, .invoker = __useAlwaysAvailableJSErrorHandling};
|
|
304
304
|
methodMap_["useFabricInterop"] = MethodMetadata {.argCount = 0, .invoker = __useFabricInterop};
|
|
305
|
-
methodMap_["useNativeEqualsInNativeReadableArrayAndroid"] = MethodMetadata {.argCount = 0, .invoker = __useNativeEqualsInNativeReadableArrayAndroid};
|
|
306
|
-
methodMap_["useNativeTransformHelperAndroid"] = MethodMetadata {.argCount = 0, .invoker = __useNativeTransformHelperAndroid};
|
|
307
305
|
methodMap_["useNativeViewConfigsInBridgelessMode"] = MethodMetadata {.argCount = 0, .invoker = __useNativeViewConfigsInBridgelessMode};
|
|
308
306
|
methodMap_["useRawPropsJsiValue"] = MethodMetadata {.argCount = 0, .invoker = __useRawPropsJsiValue};
|
|
309
307
|
methodMap_["useShadowNodeStateOnClone"] = MethodMetadata {.argCount = 0, .invoker = __useShadowNodeStateOnClone};
|
|
@@ -870,20 +868,6 @@ private:
|
|
|
870
868
|
return bridging::callFromJs<bool>(rt, &T::useFabricInterop, static_cast<NativeReactNativeFeatureFlagsCxxSpec*>(&turboModule)->jsInvoker_, static_cast<T*>(&turboModule));
|
|
871
869
|
}
|
|
872
870
|
|
|
873
|
-
static jsi::Value __useNativeEqualsInNativeReadableArrayAndroid(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* /*args*/, size_t /*count*/) {
|
|
874
|
-
static_assert(
|
|
875
|
-
bridging::getParameterCount(&T::useNativeEqualsInNativeReadableArrayAndroid) == 1,
|
|
876
|
-
"Expected useNativeEqualsInNativeReadableArrayAndroid(...) to have 1 parameters");
|
|
877
|
-
return bridging::callFromJs<bool>(rt, &T::useNativeEqualsInNativeReadableArrayAndroid, static_cast<NativeReactNativeFeatureFlagsCxxSpec*>(&turboModule)->jsInvoker_, static_cast<T*>(&turboModule));
|
|
878
|
-
}
|
|
879
|
-
|
|
880
|
-
static jsi::Value __useNativeTransformHelperAndroid(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* /*args*/, size_t /*count*/) {
|
|
881
|
-
static_assert(
|
|
882
|
-
bridging::getParameterCount(&T::useNativeTransformHelperAndroid) == 1,
|
|
883
|
-
"Expected useNativeTransformHelperAndroid(...) to have 1 parameters");
|
|
884
|
-
return bridging::callFromJs<bool>(rt, &T::useNativeTransformHelperAndroid, static_cast<NativeReactNativeFeatureFlagsCxxSpec*>(&turboModule)->jsInvoker_, static_cast<T*>(&turboModule));
|
|
885
|
-
}
|
|
886
|
-
|
|
887
871
|
static jsi::Value __useNativeViewConfigsInBridgelessMode(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* /*args*/, size_t /*count*/) {
|
|
888
872
|
static_assert(
|
|
889
873
|
bridging::getParameterCount(&T::useNativeViewConfigsInBridgelessMode) == 1,
|
|
@@ -9,9 +9,9 @@
|
|
|
9
9
|
|
|
10
10
|
#if RCT_DEV || RCT_REMOTE_PROFILE
|
|
11
11
|
|
|
12
|
+
#import <React/RCTAssert.h>
|
|
12
13
|
#import <React/RCTInspector.h>
|
|
13
14
|
#import <React/RCTInspectorPackagerConnection.h>
|
|
14
|
-
#import <React/RCTLog.h>
|
|
15
15
|
#import <React/RCTUtils.h>
|
|
16
16
|
#import <SocketRocket/SRWebSocket.h>
|
|
17
17
|
#import <jsinspector-modern/InspectorPackagerConnection.h>
|
|
@@ -22,7 +22,11 @@ using namespace facebook::react::jsinspector_modern;
|
|
|
22
22
|
namespace {
|
|
23
23
|
NSString *NSStringFromUTF8StringView(std::string_view view)
|
|
24
24
|
{
|
|
25
|
-
|
|
25
|
+
NSString *result = [[NSString alloc] initWithBytes:(const char *)view.data()
|
|
26
|
+
length:view.size()
|
|
27
|
+
encoding:NSUTF8StringEncoding];
|
|
28
|
+
RCTAssert(result != nil, @"string_view contains invalid UTF-8 bytes");
|
|
29
|
+
return result;
|
|
26
30
|
}
|
|
27
31
|
} // namespace
|
|
28
32
|
@interface RCTCxxInspectorWebSocketAdapter () <SRWebSocketDelegate> {
|
|
@@ -47,9 +51,6 @@ NSString *NSStringFromUTF8StringView(std::string_view view)
|
|
|
47
51
|
{
|
|
48
52
|
__weak RCTCxxInspectorWebSocketAdapter *weakSelf = self;
|
|
49
53
|
NSString *messageStr = NSStringFromUTF8StringView(message);
|
|
50
|
-
if (messageStr == nil) {
|
|
51
|
-
RCTLogError(@"Failed to convert CDP message string to NSString, message will be dropped!");
|
|
52
|
-
}
|
|
53
54
|
dispatch_async(dispatch_get_main_queue(), ^{
|
|
54
55
|
RCTCxxInspectorWebSocketAdapter *strongSelf = weakSelf;
|
|
55
56
|
if (strongSelf != nullptr) {
|
|
@@ -8,7 +8,6 @@
|
|
|
8
8
|
package com.facebook.react.bridge
|
|
9
9
|
|
|
10
10
|
import com.facebook.proguard.annotations.DoNotStrip
|
|
11
|
-
import com.facebook.react.internal.featureflags.ReactNativeFeatureFlags
|
|
12
11
|
import java.util.ArrayList
|
|
13
12
|
import java.util.Arrays
|
|
14
13
|
import kotlin.jvm.JvmStatic
|
|
@@ -90,17 +89,7 @@ public open class ReadableNativeArray protected constructor() : NativeArray(), R
|
|
|
90
89
|
|
|
91
90
|
override fun hashCode(): Int = localArray.hashCode()
|
|
92
91
|
|
|
93
|
-
override fun equals(other: Any?): Boolean
|
|
94
|
-
if (other !is ReadableNativeArray) {
|
|
95
|
-
return false
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
return if (ReactNativeFeatureFlags.useNativeEqualsInNativeReadableArrayAndroid()) {
|
|
99
|
-
nativeEquals(other)
|
|
100
|
-
} else {
|
|
101
|
-
localArray.contentDeepEquals(other.localArray)
|
|
102
|
-
}
|
|
103
|
-
}
|
|
92
|
+
override fun equals(other: Any?): Boolean = (other is ReadableNativeArray) && nativeEquals(other)
|
|
104
93
|
|
|
105
94
|
private external fun nativeEquals(other: ReadableNativeArray): Boolean
|
|
106
95
|
|
|
@@ -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<<9406085adbc0685b473c868a27085cf8>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -498,18 +498,6 @@ public object ReactNativeFeatureFlags {
|
|
|
498
498
|
@JvmStatic
|
|
499
499
|
public fun useFabricInterop(): Boolean = accessor.useFabricInterop()
|
|
500
500
|
|
|
501
|
-
/**
|
|
502
|
-
* Use a native implementation of equals in NativeReadableArray.
|
|
503
|
-
*/
|
|
504
|
-
@JvmStatic
|
|
505
|
-
public fun useNativeEqualsInNativeReadableArrayAndroid(): Boolean = accessor.useNativeEqualsInNativeReadableArrayAndroid()
|
|
506
|
-
|
|
507
|
-
/**
|
|
508
|
-
* Use a native implementation of TransformHelper
|
|
509
|
-
*/
|
|
510
|
-
@JvmStatic
|
|
511
|
-
public fun useNativeTransformHelperAndroid(): Boolean = accessor.useNativeTransformHelperAndroid()
|
|
512
|
-
|
|
513
501
|
/**
|
|
514
502
|
* When enabled, the native view configs are used in bridgeless mode.
|
|
515
503
|
*/
|
|
@@ -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<<accc9aa83d8ea2f5faa1eaae9a696d67>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -98,8 +98,6 @@ internal class ReactNativeFeatureFlagsCxxAccessor : ReactNativeFeatureFlagsAcces
|
|
|
98
98
|
private var updateRuntimeShadowNodeReferencesOnCommitCache: Boolean? = null
|
|
99
99
|
private var useAlwaysAvailableJSErrorHandlingCache: Boolean? = null
|
|
100
100
|
private var useFabricInteropCache: Boolean? = null
|
|
101
|
-
private var useNativeEqualsInNativeReadableArrayAndroidCache: Boolean? = null
|
|
102
|
-
private var useNativeTransformHelperAndroidCache: Boolean? = null
|
|
103
101
|
private var useNativeViewConfigsInBridgelessModeCache: Boolean? = null
|
|
104
102
|
private var useRawPropsJsiValueCache: Boolean? = null
|
|
105
103
|
private var useShadowNodeStateOnCloneCache: Boolean? = null
|
|
@@ -813,24 +811,6 @@ internal class ReactNativeFeatureFlagsCxxAccessor : ReactNativeFeatureFlagsAcces
|
|
|
813
811
|
return cached
|
|
814
812
|
}
|
|
815
813
|
|
|
816
|
-
override fun useNativeEqualsInNativeReadableArrayAndroid(): Boolean {
|
|
817
|
-
var cached = useNativeEqualsInNativeReadableArrayAndroidCache
|
|
818
|
-
if (cached == null) {
|
|
819
|
-
cached = ReactNativeFeatureFlagsCxxInterop.useNativeEqualsInNativeReadableArrayAndroid()
|
|
820
|
-
useNativeEqualsInNativeReadableArrayAndroidCache = cached
|
|
821
|
-
}
|
|
822
|
-
return cached
|
|
823
|
-
}
|
|
824
|
-
|
|
825
|
-
override fun useNativeTransformHelperAndroid(): Boolean {
|
|
826
|
-
var cached = useNativeTransformHelperAndroidCache
|
|
827
|
-
if (cached == null) {
|
|
828
|
-
cached = ReactNativeFeatureFlagsCxxInterop.useNativeTransformHelperAndroid()
|
|
829
|
-
useNativeTransformHelperAndroidCache = cached
|
|
830
|
-
}
|
|
831
|
-
return cached
|
|
832
|
-
}
|
|
833
|
-
|
|
834
814
|
override fun useNativeViewConfigsInBridgelessMode(): Boolean {
|
|
835
815
|
var cached = useNativeViewConfigsInBridgelessModeCache
|
|
836
816
|
if (cached == null) {
|
|
@@ -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<<e3e8ad599dfc9c77d6a79d6c094e8a2b>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -184,10 +184,6 @@ public object ReactNativeFeatureFlagsCxxInterop {
|
|
|
184
184
|
|
|
185
185
|
@DoNotStrip @JvmStatic public external fun useFabricInterop(): Boolean
|
|
186
186
|
|
|
187
|
-
@DoNotStrip @JvmStatic public external fun useNativeEqualsInNativeReadableArrayAndroid(): Boolean
|
|
188
|
-
|
|
189
|
-
@DoNotStrip @JvmStatic public external fun useNativeTransformHelperAndroid(): Boolean
|
|
190
|
-
|
|
191
187
|
@DoNotStrip @JvmStatic public external fun useNativeViewConfigsInBridgelessMode(): Boolean
|
|
192
188
|
|
|
193
189
|
@DoNotStrip @JvmStatic public external fun useRawPropsJsiValue(): Boolean
|
|
@@ -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<<6bdc23594dd175a0bf4409c0e2f10552>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -179,10 +179,6 @@ public open class ReactNativeFeatureFlagsDefaults : ReactNativeFeatureFlagsProvi
|
|
|
179
179
|
|
|
180
180
|
override fun useFabricInterop(): Boolean = true
|
|
181
181
|
|
|
182
|
-
override fun useNativeEqualsInNativeReadableArrayAndroid(): Boolean = true
|
|
183
|
-
|
|
184
|
-
override fun useNativeTransformHelperAndroid(): Boolean = true
|
|
185
|
-
|
|
186
182
|
override fun useNativeViewConfigsInBridgelessMode(): Boolean = false
|
|
187
183
|
|
|
188
184
|
override fun useRawPropsJsiValue(): Boolean = true
|
|
@@ -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<<3b0c2dec02a603afec82993302ecb6ff>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -102,8 +102,6 @@ internal class ReactNativeFeatureFlagsLocalAccessor : ReactNativeFeatureFlagsAcc
|
|
|
102
102
|
private var updateRuntimeShadowNodeReferencesOnCommitCache: Boolean? = null
|
|
103
103
|
private var useAlwaysAvailableJSErrorHandlingCache: Boolean? = null
|
|
104
104
|
private var useFabricInteropCache: Boolean? = null
|
|
105
|
-
private var useNativeEqualsInNativeReadableArrayAndroidCache: Boolean? = null
|
|
106
|
-
private var useNativeTransformHelperAndroidCache: Boolean? = null
|
|
107
105
|
private var useNativeViewConfigsInBridgelessModeCache: Boolean? = null
|
|
108
106
|
private var useRawPropsJsiValueCache: Boolean? = null
|
|
109
107
|
private var useShadowNodeStateOnCloneCache: Boolean? = null
|
|
@@ -895,26 +893,6 @@ internal class ReactNativeFeatureFlagsLocalAccessor : ReactNativeFeatureFlagsAcc
|
|
|
895
893
|
return cached
|
|
896
894
|
}
|
|
897
895
|
|
|
898
|
-
override fun useNativeEqualsInNativeReadableArrayAndroid(): Boolean {
|
|
899
|
-
var cached = useNativeEqualsInNativeReadableArrayAndroidCache
|
|
900
|
-
if (cached == null) {
|
|
901
|
-
cached = currentProvider.useNativeEqualsInNativeReadableArrayAndroid()
|
|
902
|
-
accessedFeatureFlags.add("useNativeEqualsInNativeReadableArrayAndroid")
|
|
903
|
-
useNativeEqualsInNativeReadableArrayAndroidCache = cached
|
|
904
|
-
}
|
|
905
|
-
return cached
|
|
906
|
-
}
|
|
907
|
-
|
|
908
|
-
override fun useNativeTransformHelperAndroid(): Boolean {
|
|
909
|
-
var cached = useNativeTransformHelperAndroidCache
|
|
910
|
-
if (cached == null) {
|
|
911
|
-
cached = currentProvider.useNativeTransformHelperAndroid()
|
|
912
|
-
accessedFeatureFlags.add("useNativeTransformHelperAndroid")
|
|
913
|
-
useNativeTransformHelperAndroidCache = cached
|
|
914
|
-
}
|
|
915
|
-
return cached
|
|
916
|
-
}
|
|
917
|
-
|
|
918
896
|
override fun useNativeViewConfigsInBridgelessMode(): Boolean {
|
|
919
897
|
var cached = useNativeViewConfigsInBridgelessModeCache
|
|
920
898
|
if (cached == null) {
|
|
@@ -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<<995c1c3035757935dc7a4c4d6778e43e>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -179,10 +179,6 @@ public interface ReactNativeFeatureFlagsProvider {
|
|
|
179
179
|
|
|
180
180
|
@DoNotStrip public fun useFabricInterop(): Boolean
|
|
181
181
|
|
|
182
|
-
@DoNotStrip public fun useNativeEqualsInNativeReadableArrayAndroid(): Boolean
|
|
183
|
-
|
|
184
|
-
@DoNotStrip public fun useNativeTransformHelperAndroid(): Boolean
|
|
185
|
-
|
|
186
182
|
@DoNotStrip public fun useNativeViewConfigsInBridgelessMode(): Boolean
|
|
187
183
|
|
|
188
184
|
@DoNotStrip public fun useRawPropsJsiValue(): Boolean
|
|
@@ -59,7 +59,7 @@ public class TurboModuleManager(
|
|
|
59
59
|
|
|
60
60
|
init {
|
|
61
61
|
|
|
62
|
-
|
|
62
|
+
dispatchJSBindingInstall(runtimeExecutor)
|
|
63
63
|
|
|
64
64
|
eagerInitModuleNames = delegate?.getEagerInitModuleNames() ?: emptyList()
|
|
65
65
|
|
|
@@ -282,7 +282,7 @@ public class TurboModuleManager(
|
|
|
282
282
|
tmmDelegate: TurboModuleManagerDelegate?,
|
|
283
283
|
): HybridData
|
|
284
284
|
|
|
285
|
-
private external fun
|
|
285
|
+
private external fun dispatchJSBindingInstall(runtimeExecutor: RuntimeExecutor)
|
|
286
286
|
|
|
287
287
|
override fun invalidate() {
|
|
288
288
|
/*
|
|
@@ -327,9 +327,11 @@ public open class JavaTimerManager(
|
|
|
327
327
|
// If the JS thread is busy for multiple frames we cancel any other pending runnable.
|
|
328
328
|
// We also capture the idleCallbackRunnable to tentatively fix:
|
|
329
329
|
// https://github.com/facebook/react-native/issues/44842
|
|
330
|
+
// https://github.com/facebook/react-native/issues/54983
|
|
330
331
|
currentIdleCallbackRunnable?.cancel()
|
|
331
|
-
|
|
332
|
-
|
|
332
|
+
val idleCallbackRunnable = IdleCallbackRunnable(frameTimeNanos)
|
|
333
|
+
currentIdleCallbackRunnable = idleCallbackRunnable
|
|
334
|
+
reactApplicationContext.runOnJSQueueThread(idleCallbackRunnable)
|
|
333
335
|
reactChoreographer.postFrameCallback(ReactChoreographer.CallbackType.IDLE_EVENT, this)
|
|
334
336
|
}
|
|
335
337
|
}
|
|
@@ -14,12 +14,29 @@ import com.facebook.react.bridge.ReactContext
|
|
|
14
14
|
/**
|
|
15
15
|
* Abstract base for a Choreographer FrameCallback that should have any RuntimeExceptions it throws
|
|
16
16
|
* handled by the [JSExceptionHandler] registered if the app is in dev mode.
|
|
17
|
+
*
|
|
18
|
+
* @property exceptionHandler The handler for RuntimeExceptions thrown during frame callbacks.
|
|
19
|
+
* @constructor Creates a GuardedFrameCallback with the specified exception handler.
|
|
17
20
|
*/
|
|
18
21
|
public abstract class GuardedFrameCallback
|
|
19
22
|
protected constructor(private val exceptionHandler: JSExceptionHandler) :
|
|
20
23
|
Choreographer.FrameCallback {
|
|
24
|
+
/**
|
|
25
|
+
* Creates a GuardedFrameCallback using the exception handler from the provided ReactContext.
|
|
26
|
+
*
|
|
27
|
+
* @param reactContext The React context whose exception handler will be used.
|
|
28
|
+
*/
|
|
21
29
|
protected constructor(reactContext: ReactContext) : this(reactContext.exceptionHandler)
|
|
22
30
|
|
|
31
|
+
/**
|
|
32
|
+
* Choreographer frame callback implementation that guards [doFrameGuarded] with exception
|
|
33
|
+
* handling.
|
|
34
|
+
*
|
|
35
|
+
* Wraps calls to [doFrameGuarded] in a try-catch block. Any RuntimeExceptions thrown are caught
|
|
36
|
+
* and passed to the exception handler instead of crashing the app.
|
|
37
|
+
*
|
|
38
|
+
* @param frameTimeNanos The time in nanoseconds when the frame started being rendered.
|
|
39
|
+
*/
|
|
23
40
|
public override fun doFrame(frameTimeNanos: Long) {
|
|
24
41
|
try {
|
|
25
42
|
doFrameGuarded(frameTimeNanos)
|
|
@@ -13,7 +13,6 @@ import com.facebook.react.bridge.ReadableArray
|
|
|
13
13
|
import com.facebook.react.bridge.ReadableMap
|
|
14
14
|
import com.facebook.react.bridge.ReadableType
|
|
15
15
|
import com.facebook.react.common.ReactConstants
|
|
16
|
-
import com.facebook.react.internal.featureflags.ReactNativeFeatureFlags
|
|
17
16
|
|
|
18
17
|
public object TransformHelper {
|
|
19
18
|
|
|
@@ -73,12 +72,7 @@ public object TransformHelper {
|
|
|
73
72
|
transformOrigin: ReadableArray?,
|
|
74
73
|
allowPercentageResolution: Boolean,
|
|
75
74
|
) {
|
|
76
|
-
if (
|
|
77
|
-
allowPercentageResolution &&
|
|
78
|
-
ReactNativeFeatureFlags.useNativeTransformHelperAndroid() &&
|
|
79
|
-
transforms is NativeArray &&
|
|
80
|
-
transformOrigin is NativeArray?
|
|
81
|
-
) {
|
|
75
|
+
if (allowPercentageResolution && transforms is NativeArray && transformOrigin is NativeArray?) {
|
|
82
76
|
nativeProcessTransform(transforms, result, viewWidth, viewHeight, transformOrigin)
|
|
83
77
|
return
|
|
84
78
|
}
|
|
@@ -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<<1ea556a16d18a54b7087742b986a93a7>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -507,18 +507,6 @@ class ReactNativeFeatureFlagsJavaProvider
|
|
|
507
507
|
return method(javaProvider_);
|
|
508
508
|
}
|
|
509
509
|
|
|
510
|
-
bool useNativeEqualsInNativeReadableArrayAndroid() override {
|
|
511
|
-
static const auto method =
|
|
512
|
-
getReactNativeFeatureFlagsProviderJavaClass()->getMethod<jboolean()>("useNativeEqualsInNativeReadableArrayAndroid");
|
|
513
|
-
return method(javaProvider_);
|
|
514
|
-
}
|
|
515
|
-
|
|
516
|
-
bool useNativeTransformHelperAndroid() override {
|
|
517
|
-
static const auto method =
|
|
518
|
-
getReactNativeFeatureFlagsProviderJavaClass()->getMethod<jboolean()>("useNativeTransformHelperAndroid");
|
|
519
|
-
return method(javaProvider_);
|
|
520
|
-
}
|
|
521
|
-
|
|
522
510
|
bool useNativeViewConfigsInBridgelessMode() override {
|
|
523
511
|
static const auto method =
|
|
524
512
|
getReactNativeFeatureFlagsProviderJavaClass()->getMethod<jboolean()>("useNativeViewConfigsInBridgelessMode");
|
|
@@ -973,16 +961,6 @@ bool JReactNativeFeatureFlagsCxxInterop::useFabricInterop(
|
|
|
973
961
|
return ReactNativeFeatureFlags::useFabricInterop();
|
|
974
962
|
}
|
|
975
963
|
|
|
976
|
-
bool JReactNativeFeatureFlagsCxxInterop::useNativeEqualsInNativeReadableArrayAndroid(
|
|
977
|
-
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop> /*unused*/) {
|
|
978
|
-
return ReactNativeFeatureFlags::useNativeEqualsInNativeReadableArrayAndroid();
|
|
979
|
-
}
|
|
980
|
-
|
|
981
|
-
bool JReactNativeFeatureFlagsCxxInterop::useNativeTransformHelperAndroid(
|
|
982
|
-
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop> /*unused*/) {
|
|
983
|
-
return ReactNativeFeatureFlags::useNativeTransformHelperAndroid();
|
|
984
|
-
}
|
|
985
|
-
|
|
986
964
|
bool JReactNativeFeatureFlagsCxxInterop::useNativeViewConfigsInBridgelessMode(
|
|
987
965
|
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop> /*unused*/) {
|
|
988
966
|
return ReactNativeFeatureFlags::useNativeViewConfigsInBridgelessMode();
|
|
@@ -1298,12 +1276,6 @@ void JReactNativeFeatureFlagsCxxInterop::registerNatives() {
|
|
|
1298
1276
|
makeNativeMethod(
|
|
1299
1277
|
"useFabricInterop",
|
|
1300
1278
|
JReactNativeFeatureFlagsCxxInterop::useFabricInterop),
|
|
1301
|
-
makeNativeMethod(
|
|
1302
|
-
"useNativeEqualsInNativeReadableArrayAndroid",
|
|
1303
|
-
JReactNativeFeatureFlagsCxxInterop::useNativeEqualsInNativeReadableArrayAndroid),
|
|
1304
|
-
makeNativeMethod(
|
|
1305
|
-
"useNativeTransformHelperAndroid",
|
|
1306
|
-
JReactNativeFeatureFlagsCxxInterop::useNativeTransformHelperAndroid),
|
|
1307
1279
|
makeNativeMethod(
|
|
1308
1280
|
"useNativeViewConfigsInBridgelessMode",
|
|
1309
1281
|
JReactNativeFeatureFlagsCxxInterop::useNativeViewConfigsInBridgelessMode),
|
|
@@ -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<<67b23d4209c5fa6b721921953d76a829>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -264,12 +264,6 @@ class JReactNativeFeatureFlagsCxxInterop
|
|
|
264
264
|
static bool useFabricInterop(
|
|
265
265
|
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop>);
|
|
266
266
|
|
|
267
|
-
static bool useNativeEqualsInNativeReadableArrayAndroid(
|
|
268
|
-
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop>);
|
|
269
|
-
|
|
270
|
-
static bool useNativeTransformHelperAndroid(
|
|
271
|
-
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop>);
|
|
272
|
-
|
|
273
267
|
static bool useNativeViewConfigsInBridgelessMode(
|
|
274
268
|
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop>);
|
|
275
269
|
|
|
@@ -118,7 +118,8 @@ void TurboModuleManager::registerNatives() {
|
|
|
118
118
|
registerHybrid({
|
|
119
119
|
makeNativeMethod("initHybrid", TurboModuleManager::initHybrid),
|
|
120
120
|
makeNativeMethod(
|
|
121
|
-
"
|
|
121
|
+
"dispatchJSBindingInstall",
|
|
122
|
+
TurboModuleManager::dispatchJSBindingInstall),
|
|
122
123
|
});
|
|
123
124
|
}
|
|
124
125
|
|
|
@@ -318,7 +319,16 @@ std::shared_ptr<TurboModule> TurboModuleManager::getLegacyModule(
|
|
|
318
319
|
return nullptr;
|
|
319
320
|
}
|
|
320
321
|
|
|
321
|
-
void TurboModuleManager::
|
|
322
|
+
void TurboModuleManager::installJSBindings(
|
|
323
|
+
jsi::Runtime& runtime,
|
|
324
|
+
jni::alias_ref<jhybridobject> javaPart) {
|
|
325
|
+
TurboModuleBinding::install(
|
|
326
|
+
runtime,
|
|
327
|
+
createTurboModuleProvider(javaPart),
|
|
328
|
+
createLegacyModuleProvider(javaPart));
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
void TurboModuleManager::dispatchJSBindingInstall(
|
|
322
332
|
jni::alias_ref<jhybridobject> javaPart,
|
|
323
333
|
jni::alias_ref<JRuntimeExecutor::javaobject> runtimeExecutor) {
|
|
324
334
|
auto cxxPart = javaPart->cthis();
|
|
@@ -328,10 +338,7 @@ void TurboModuleManager::installJSIBindings(
|
|
|
328
338
|
|
|
329
339
|
runtimeExecutor->cthis()->get()(
|
|
330
340
|
[javaPart = jni::make_global(javaPart)](jsi::Runtime& runtime) {
|
|
331
|
-
|
|
332
|
-
runtime,
|
|
333
|
-
createTurboModuleProvider(javaPart),
|
|
334
|
-
createLegacyModuleProvider(javaPart));
|
|
341
|
+
installJSBindings(runtime, javaPart);
|
|
335
342
|
});
|
|
336
343
|
}
|
|
337
344
|
|
|
@@ -55,7 +55,8 @@ class TurboModuleManager : public jni::HybridClass<TurboModuleManager> {
|
|
|
55
55
|
std::shared_ptr<NativeMethodCallInvoker> nativeMethodCallInvoker,
|
|
56
56
|
jni::alias_ref<TurboModuleManagerDelegate::javaobject> delegate);
|
|
57
57
|
|
|
58
|
-
static void
|
|
58
|
+
static void installJSBindings(jsi::Runtime &runtime, jni::alias_ref<jhybridobject> javaPart);
|
|
59
|
+
static void dispatchJSBindingInstall(
|
|
59
60
|
jni::alias_ref<jhybridobject> javaPart,
|
|
60
61
|
jni::alias_ref<JRuntimeExecutor::javaobject> runtimeExecutor);
|
|
61
62
|
|
|
@@ -22,7 +22,7 @@ constexpr struct {
|
|
|
22
22
|
int32_t Major = 0;
|
|
23
23
|
int32_t Minor = 84;
|
|
24
24
|
int32_t Patch = 0;
|
|
25
|
-
std::string_view Prerelease = "nightly-
|
|
25
|
+
std::string_view Prerelease = "nightly-20260106-36a0d9ef6";
|
|
26
26
|
} ReactNativeVersion;
|
|
27
27
|
|
|
28
28
|
} // namespace facebook::react
|
|
@@ -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<<3d71ee2b906dcc1313428185cbe853f8>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -338,14 +338,6 @@ bool ReactNativeFeatureFlags::useFabricInterop() {
|
|
|
338
338
|
return getAccessor().useFabricInterop();
|
|
339
339
|
}
|
|
340
340
|
|
|
341
|
-
bool ReactNativeFeatureFlags::useNativeEqualsInNativeReadableArrayAndroid() {
|
|
342
|
-
return getAccessor().useNativeEqualsInNativeReadableArrayAndroid();
|
|
343
|
-
}
|
|
344
|
-
|
|
345
|
-
bool ReactNativeFeatureFlags::useNativeTransformHelperAndroid() {
|
|
346
|
-
return getAccessor().useNativeTransformHelperAndroid();
|
|
347
|
-
}
|
|
348
|
-
|
|
349
341
|
bool ReactNativeFeatureFlags::useNativeViewConfigsInBridgelessMode() {
|
|
350
342
|
return getAccessor().useNativeViewConfigsInBridgelessMode();
|
|
351
343
|
}
|
|
@@ -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<<d7838e490a83e54bee2770b80951877a>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -429,16 +429,6 @@ class ReactNativeFeatureFlags {
|
|
|
429
429
|
*/
|
|
430
430
|
RN_EXPORT static bool useFabricInterop();
|
|
431
431
|
|
|
432
|
-
/**
|
|
433
|
-
* Use a native implementation of equals in NativeReadableArray.
|
|
434
|
-
*/
|
|
435
|
-
RN_EXPORT static bool useNativeEqualsInNativeReadableArrayAndroid();
|
|
436
|
-
|
|
437
|
-
/**
|
|
438
|
-
* Use a native implementation of TransformHelper
|
|
439
|
-
*/
|
|
440
|
-
RN_EXPORT static bool useNativeTransformHelperAndroid();
|
|
441
|
-
|
|
442
432
|
/**
|
|
443
433
|
* When enabled, the native view configs are used in bridgeless mode.
|
|
444
434
|
*/
|
|
@@ -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<<8bda4a084596c5512b8ebf5eaa44268e>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -1433,42 +1433,6 @@ bool ReactNativeFeatureFlagsAccessor::useFabricInterop() {
|
|
|
1433
1433
|
return flagValue.value();
|
|
1434
1434
|
}
|
|
1435
1435
|
|
|
1436
|
-
bool ReactNativeFeatureFlagsAccessor::useNativeEqualsInNativeReadableArrayAndroid() {
|
|
1437
|
-
auto flagValue = useNativeEqualsInNativeReadableArrayAndroid_.load();
|
|
1438
|
-
|
|
1439
|
-
if (!flagValue.has_value()) {
|
|
1440
|
-
// This block is not exclusive but it is not necessary.
|
|
1441
|
-
// If multiple threads try to initialize the feature flag, we would only
|
|
1442
|
-
// be accessing the provider multiple times but the end state of this
|
|
1443
|
-
// instance and the returned flag value would be the same.
|
|
1444
|
-
|
|
1445
|
-
markFlagAsAccessed(78, "useNativeEqualsInNativeReadableArrayAndroid");
|
|
1446
|
-
|
|
1447
|
-
flagValue = currentProvider_->useNativeEqualsInNativeReadableArrayAndroid();
|
|
1448
|
-
useNativeEqualsInNativeReadableArrayAndroid_ = flagValue;
|
|
1449
|
-
}
|
|
1450
|
-
|
|
1451
|
-
return flagValue.value();
|
|
1452
|
-
}
|
|
1453
|
-
|
|
1454
|
-
bool ReactNativeFeatureFlagsAccessor::useNativeTransformHelperAndroid() {
|
|
1455
|
-
auto flagValue = useNativeTransformHelperAndroid_.load();
|
|
1456
|
-
|
|
1457
|
-
if (!flagValue.has_value()) {
|
|
1458
|
-
// This block is not exclusive but it is not necessary.
|
|
1459
|
-
// If multiple threads try to initialize the feature flag, we would only
|
|
1460
|
-
// be accessing the provider multiple times but the end state of this
|
|
1461
|
-
// instance and the returned flag value would be the same.
|
|
1462
|
-
|
|
1463
|
-
markFlagAsAccessed(79, "useNativeTransformHelperAndroid");
|
|
1464
|
-
|
|
1465
|
-
flagValue = currentProvider_->useNativeTransformHelperAndroid();
|
|
1466
|
-
useNativeTransformHelperAndroid_ = flagValue;
|
|
1467
|
-
}
|
|
1468
|
-
|
|
1469
|
-
return flagValue.value();
|
|
1470
|
-
}
|
|
1471
|
-
|
|
1472
1436
|
bool ReactNativeFeatureFlagsAccessor::useNativeViewConfigsInBridgelessMode() {
|
|
1473
1437
|
auto flagValue = useNativeViewConfigsInBridgelessMode_.load();
|
|
1474
1438
|
|
|
@@ -1478,7 +1442,7 @@ bool ReactNativeFeatureFlagsAccessor::useNativeViewConfigsInBridgelessMode() {
|
|
|
1478
1442
|
// be accessing the provider multiple times but the end state of this
|
|
1479
1443
|
// instance and the returned flag value would be the same.
|
|
1480
1444
|
|
|
1481
|
-
markFlagAsAccessed(
|
|
1445
|
+
markFlagAsAccessed(78, "useNativeViewConfigsInBridgelessMode");
|
|
1482
1446
|
|
|
1483
1447
|
flagValue = currentProvider_->useNativeViewConfigsInBridgelessMode();
|
|
1484
1448
|
useNativeViewConfigsInBridgelessMode_ = flagValue;
|
|
@@ -1496,7 +1460,7 @@ bool ReactNativeFeatureFlagsAccessor::useRawPropsJsiValue() {
|
|
|
1496
1460
|
// be accessing the provider multiple times but the end state of this
|
|
1497
1461
|
// instance and the returned flag value would be the same.
|
|
1498
1462
|
|
|
1499
|
-
markFlagAsAccessed(
|
|
1463
|
+
markFlagAsAccessed(79, "useRawPropsJsiValue");
|
|
1500
1464
|
|
|
1501
1465
|
flagValue = currentProvider_->useRawPropsJsiValue();
|
|
1502
1466
|
useRawPropsJsiValue_ = flagValue;
|
|
@@ -1514,7 +1478,7 @@ bool ReactNativeFeatureFlagsAccessor::useShadowNodeStateOnClone() {
|
|
|
1514
1478
|
// be accessing the provider multiple times but the end state of this
|
|
1515
1479
|
// instance and the returned flag value would be the same.
|
|
1516
1480
|
|
|
1517
|
-
markFlagAsAccessed(
|
|
1481
|
+
markFlagAsAccessed(80, "useShadowNodeStateOnClone");
|
|
1518
1482
|
|
|
1519
1483
|
flagValue = currentProvider_->useShadowNodeStateOnClone();
|
|
1520
1484
|
useShadowNodeStateOnClone_ = flagValue;
|
|
@@ -1532,7 +1496,7 @@ bool ReactNativeFeatureFlagsAccessor::useSharedAnimatedBackend() {
|
|
|
1532
1496
|
// be accessing the provider multiple times but the end state of this
|
|
1533
1497
|
// instance and the returned flag value would be the same.
|
|
1534
1498
|
|
|
1535
|
-
markFlagAsAccessed(
|
|
1499
|
+
markFlagAsAccessed(81, "useSharedAnimatedBackend");
|
|
1536
1500
|
|
|
1537
1501
|
flagValue = currentProvider_->useSharedAnimatedBackend();
|
|
1538
1502
|
useSharedAnimatedBackend_ = flagValue;
|
|
@@ -1550,7 +1514,7 @@ bool ReactNativeFeatureFlagsAccessor::useTraitHiddenOnAndroid() {
|
|
|
1550
1514
|
// be accessing the provider multiple times but the end state of this
|
|
1551
1515
|
// instance and the returned flag value would be the same.
|
|
1552
1516
|
|
|
1553
|
-
markFlagAsAccessed(
|
|
1517
|
+
markFlagAsAccessed(82, "useTraitHiddenOnAndroid");
|
|
1554
1518
|
|
|
1555
1519
|
flagValue = currentProvider_->useTraitHiddenOnAndroid();
|
|
1556
1520
|
useTraitHiddenOnAndroid_ = flagValue;
|
|
@@ -1568,7 +1532,7 @@ bool ReactNativeFeatureFlagsAccessor::useTurboModuleInterop() {
|
|
|
1568
1532
|
// be accessing the provider multiple times but the end state of this
|
|
1569
1533
|
// instance and the returned flag value would be the same.
|
|
1570
1534
|
|
|
1571
|
-
markFlagAsAccessed(
|
|
1535
|
+
markFlagAsAccessed(83, "useTurboModuleInterop");
|
|
1572
1536
|
|
|
1573
1537
|
flagValue = currentProvider_->useTurboModuleInterop();
|
|
1574
1538
|
useTurboModuleInterop_ = flagValue;
|
|
@@ -1586,7 +1550,7 @@ bool ReactNativeFeatureFlagsAccessor::useTurboModules() {
|
|
|
1586
1550
|
// be accessing the provider multiple times but the end state of this
|
|
1587
1551
|
// instance and the returned flag value would be the same.
|
|
1588
1552
|
|
|
1589
|
-
markFlagAsAccessed(
|
|
1553
|
+
markFlagAsAccessed(84, "useTurboModules");
|
|
1590
1554
|
|
|
1591
1555
|
flagValue = currentProvider_->useTurboModules();
|
|
1592
1556
|
useTurboModules_ = flagValue;
|
|
@@ -1604,7 +1568,7 @@ double ReactNativeFeatureFlagsAccessor::viewCullingOutsetRatio() {
|
|
|
1604
1568
|
// be accessing the provider multiple times but the end state of this
|
|
1605
1569
|
// instance and the returned flag value would be the same.
|
|
1606
1570
|
|
|
1607
|
-
markFlagAsAccessed(
|
|
1571
|
+
markFlagAsAccessed(85, "viewCullingOutsetRatio");
|
|
1608
1572
|
|
|
1609
1573
|
flagValue = currentProvider_->viewCullingOutsetRatio();
|
|
1610
1574
|
viewCullingOutsetRatio_ = flagValue;
|
|
@@ -1622,7 +1586,7 @@ double ReactNativeFeatureFlagsAccessor::virtualViewHysteresisRatio() {
|
|
|
1622
1586
|
// be accessing the provider multiple times but the end state of this
|
|
1623
1587
|
// instance and the returned flag value would be the same.
|
|
1624
1588
|
|
|
1625
|
-
markFlagAsAccessed(
|
|
1589
|
+
markFlagAsAccessed(86, "virtualViewHysteresisRatio");
|
|
1626
1590
|
|
|
1627
1591
|
flagValue = currentProvider_->virtualViewHysteresisRatio();
|
|
1628
1592
|
virtualViewHysteresisRatio_ = flagValue;
|
|
@@ -1640,7 +1604,7 @@ double ReactNativeFeatureFlagsAccessor::virtualViewPrerenderRatio() {
|
|
|
1640
1604
|
// be accessing the provider multiple times but the end state of this
|
|
1641
1605
|
// instance and the returned flag value would be the same.
|
|
1642
1606
|
|
|
1643
|
-
markFlagAsAccessed(
|
|
1607
|
+
markFlagAsAccessed(87, "virtualViewPrerenderRatio");
|
|
1644
1608
|
|
|
1645
1609
|
flagValue = currentProvider_->virtualViewPrerenderRatio();
|
|
1646
1610
|
virtualViewPrerenderRatio_ = flagValue;
|
|
@@ -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<<fd5d2f3789bc66906ec6b31a1f5c23f6>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -110,8 +110,6 @@ class ReactNativeFeatureFlagsAccessor {
|
|
|
110
110
|
bool updateRuntimeShadowNodeReferencesOnCommit();
|
|
111
111
|
bool useAlwaysAvailableJSErrorHandling();
|
|
112
112
|
bool useFabricInterop();
|
|
113
|
-
bool useNativeEqualsInNativeReadableArrayAndroid();
|
|
114
|
-
bool useNativeTransformHelperAndroid();
|
|
115
113
|
bool useNativeViewConfigsInBridgelessMode();
|
|
116
114
|
bool useRawPropsJsiValue();
|
|
117
115
|
bool useShadowNodeStateOnClone();
|
|
@@ -133,7 +131,7 @@ class ReactNativeFeatureFlagsAccessor {
|
|
|
133
131
|
std::unique_ptr<ReactNativeFeatureFlagsProvider> currentProvider_;
|
|
134
132
|
bool wasOverridden_;
|
|
135
133
|
|
|
136
|
-
std::array<std::atomic<const char*>,
|
|
134
|
+
std::array<std::atomic<const char*>, 88> accessedFeatureFlags_;
|
|
137
135
|
|
|
138
136
|
std::atomic<std::optional<bool>> commonTestFlag_;
|
|
139
137
|
std::atomic<std::optional<bool>> cdpInteractionMetricsEnabled_;
|
|
@@ -213,8 +211,6 @@ class ReactNativeFeatureFlagsAccessor {
|
|
|
213
211
|
std::atomic<std::optional<bool>> updateRuntimeShadowNodeReferencesOnCommit_;
|
|
214
212
|
std::atomic<std::optional<bool>> useAlwaysAvailableJSErrorHandling_;
|
|
215
213
|
std::atomic<std::optional<bool>> useFabricInterop_;
|
|
216
|
-
std::atomic<std::optional<bool>> useNativeEqualsInNativeReadableArrayAndroid_;
|
|
217
|
-
std::atomic<std::optional<bool>> useNativeTransformHelperAndroid_;
|
|
218
214
|
std::atomic<std::optional<bool>> useNativeViewConfigsInBridgelessMode_;
|
|
219
215
|
std::atomic<std::optional<bool>> useRawPropsJsiValue_;
|
|
220
216
|
std::atomic<std::optional<bool>> useShadowNodeStateOnClone_;
|
|
@@ -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<<b8b6163068152d88615813c0d80ed28b>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -339,14 +339,6 @@ class ReactNativeFeatureFlagsDefaults : public ReactNativeFeatureFlagsProvider {
|
|
|
339
339
|
return true;
|
|
340
340
|
}
|
|
341
341
|
|
|
342
|
-
bool useNativeEqualsInNativeReadableArrayAndroid() override {
|
|
343
|
-
return true;
|
|
344
|
-
}
|
|
345
|
-
|
|
346
|
-
bool useNativeTransformHelperAndroid() override {
|
|
347
|
-
return true;
|
|
348
|
-
}
|
|
349
|
-
|
|
350
342
|
bool useNativeViewConfigsInBridgelessMode() override {
|
|
351
343
|
return false;
|
|
352
344
|
}
|
|
@@ -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<<a4f191da59898458d1f02248cfa509d6>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -747,24 +747,6 @@ class ReactNativeFeatureFlagsDynamicProvider : public ReactNativeFeatureFlagsDef
|
|
|
747
747
|
return ReactNativeFeatureFlagsDefaults::useFabricInterop();
|
|
748
748
|
}
|
|
749
749
|
|
|
750
|
-
bool useNativeEqualsInNativeReadableArrayAndroid() override {
|
|
751
|
-
auto value = values_["useNativeEqualsInNativeReadableArrayAndroid"];
|
|
752
|
-
if (!value.isNull()) {
|
|
753
|
-
return value.getBool();
|
|
754
|
-
}
|
|
755
|
-
|
|
756
|
-
return ReactNativeFeatureFlagsDefaults::useNativeEqualsInNativeReadableArrayAndroid();
|
|
757
|
-
}
|
|
758
|
-
|
|
759
|
-
bool useNativeTransformHelperAndroid() override {
|
|
760
|
-
auto value = values_["useNativeTransformHelperAndroid"];
|
|
761
|
-
if (!value.isNull()) {
|
|
762
|
-
return value.getBool();
|
|
763
|
-
}
|
|
764
|
-
|
|
765
|
-
return ReactNativeFeatureFlagsDefaults::useNativeTransformHelperAndroid();
|
|
766
|
-
}
|
|
767
|
-
|
|
768
750
|
bool useNativeViewConfigsInBridgelessMode() override {
|
|
769
751
|
auto value = values_["useNativeViewConfigsInBridgelessMode"];
|
|
770
752
|
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<<8e68f8be2e5f35422ae866390c76f670>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -103,8 +103,6 @@ class ReactNativeFeatureFlagsProvider {
|
|
|
103
103
|
virtual bool updateRuntimeShadowNodeReferencesOnCommit() = 0;
|
|
104
104
|
virtual bool useAlwaysAvailableJSErrorHandling() = 0;
|
|
105
105
|
virtual bool useFabricInterop() = 0;
|
|
106
|
-
virtual bool useNativeEqualsInNativeReadableArrayAndroid() = 0;
|
|
107
|
-
virtual bool useNativeTransformHelperAndroid() = 0;
|
|
108
106
|
virtual bool useNativeViewConfigsInBridgelessMode() = 0;
|
|
109
107
|
virtual bool useRawPropsJsiValue() = 0;
|
|
110
108
|
virtual bool useShadowNodeStateOnClone() = 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<<3923fa1256c4cc2656201f9d83338606>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -434,16 +434,6 @@ bool NativeReactNativeFeatureFlags::useFabricInterop(
|
|
|
434
434
|
return ReactNativeFeatureFlags::useFabricInterop();
|
|
435
435
|
}
|
|
436
436
|
|
|
437
|
-
bool NativeReactNativeFeatureFlags::useNativeEqualsInNativeReadableArrayAndroid(
|
|
438
|
-
jsi::Runtime& /*runtime*/) {
|
|
439
|
-
return ReactNativeFeatureFlags::useNativeEqualsInNativeReadableArrayAndroid();
|
|
440
|
-
}
|
|
441
|
-
|
|
442
|
-
bool NativeReactNativeFeatureFlags::useNativeTransformHelperAndroid(
|
|
443
|
-
jsi::Runtime& /*runtime*/) {
|
|
444
|
-
return ReactNativeFeatureFlags::useNativeTransformHelperAndroid();
|
|
445
|
-
}
|
|
446
|
-
|
|
447
437
|
bool NativeReactNativeFeatureFlags::useNativeViewConfigsInBridgelessMode(
|
|
448
438
|
jsi::Runtime& /*runtime*/) {
|
|
449
439
|
return ReactNativeFeatureFlags::useNativeViewConfigsInBridgelessMode();
|
|
@@ -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<<560b5619790e0d17e76bc3d600ca10d1>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -192,10 +192,6 @@ class NativeReactNativeFeatureFlags
|
|
|
192
192
|
|
|
193
193
|
bool useFabricInterop(jsi::Runtime& runtime);
|
|
194
194
|
|
|
195
|
-
bool useNativeEqualsInNativeReadableArrayAndroid(jsi::Runtime& runtime);
|
|
196
|
-
|
|
197
|
-
bool useNativeTransformHelperAndroid(jsi::Runtime& runtime);
|
|
198
|
-
|
|
199
195
|
bool useNativeViewConfigsInBridgelessMode(jsi::Runtime& runtime);
|
|
200
196
|
|
|
201
197
|
bool useRawPropsJsiValue(jsi::Runtime& runtime);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native",
|
|
3
|
-
"version": "0.84.0-nightly-
|
|
3
|
+
"version": "0.84.0-nightly-20260106-36a0d9ef6",
|
|
4
4
|
"description": "A framework for building native apps using React",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
],
|
|
22
22
|
"bugs": "https://github.com/facebook/react-native/issues",
|
|
23
23
|
"engines": {
|
|
24
|
-
"node": ">=
|
|
24
|
+
"node": ">= 22.11.0"
|
|
25
25
|
},
|
|
26
26
|
"bin": {
|
|
27
27
|
"react-native": "cli.js"
|
|
@@ -160,13 +160,13 @@
|
|
|
160
160
|
},
|
|
161
161
|
"dependencies": {
|
|
162
162
|
"@jest/create-cache-key-function": "^29.7.0",
|
|
163
|
-
"@react-native/assets-registry": "0.84.0-nightly-
|
|
164
|
-
"@react-native/codegen": "0.84.0-nightly-
|
|
165
|
-
"@react-native/community-cli-plugin": "0.84.0-nightly-
|
|
166
|
-
"@react-native/gradle-plugin": "0.84.0-nightly-
|
|
167
|
-
"@react-native/js-polyfills": "0.84.0-nightly-
|
|
168
|
-
"@react-native/normalize-colors": "0.84.0-nightly-
|
|
169
|
-
"@react-native/virtualized-lists": "0.84.0-nightly-
|
|
163
|
+
"@react-native/assets-registry": "0.84.0-nightly-20260106-36a0d9ef6",
|
|
164
|
+
"@react-native/codegen": "0.84.0-nightly-20260106-36a0d9ef6",
|
|
165
|
+
"@react-native/community-cli-plugin": "0.84.0-nightly-20260106-36a0d9ef6",
|
|
166
|
+
"@react-native/gradle-plugin": "0.84.0-nightly-20260106-36a0d9ef6",
|
|
167
|
+
"@react-native/js-polyfills": "0.84.0-nightly-20260106-36a0d9ef6",
|
|
168
|
+
"@react-native/normalize-colors": "0.84.0-nightly-20260106-36a0d9ef6",
|
|
169
|
+
"@react-native/virtualized-lists": "0.84.0-nightly-20260106-36a0d9ef6",
|
|
170
170
|
"abort-controller": "^3.0.0",
|
|
171
171
|
"anser": "^1.4.9",
|
|
172
172
|
"ansi-regex": "^5.0.0",
|
|
@@ -175,7 +175,7 @@
|
|
|
175
175
|
"base64-js": "^1.5.1",
|
|
176
176
|
"commander": "^12.0.0",
|
|
177
177
|
"flow-enums-runtime": "^0.0.6",
|
|
178
|
-
"hermes-compiler": "0.
|
|
178
|
+
"hermes-compiler": "0.16.0-commitly-202601051832-eb1eb2d95",
|
|
179
179
|
"invariant": "^2.2.4",
|
|
180
180
|
"jest-environment-node": "^29.7.0",
|
|
181
181
|
"memoize-one": "^5.0.0",
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
HERMES_VERSION_NAME=0.
|
|
2
|
-
HERMES_V1_VERSION_NAME=250829098.0.
|
|
1
|
+
HERMES_VERSION_NAME=0.16.0-commitly-202601051832-eb1eb2d95
|
|
2
|
+
HERMES_V1_VERSION_NAME=250829098.0.5
|
|
@@ -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<<db4650fb28b7c07c73eb75775a7e7811>>
|
|
8
8
|
* @flow strict
|
|
9
9
|
* @noformat
|
|
10
10
|
*/
|
|
@@ -129,8 +129,6 @@ export type ReactNativeFeatureFlags = $ReadOnly<{
|
|
|
129
129
|
updateRuntimeShadowNodeReferencesOnCommit: Getter<boolean>,
|
|
130
130
|
useAlwaysAvailableJSErrorHandling: Getter<boolean>,
|
|
131
131
|
useFabricInterop: Getter<boolean>,
|
|
132
|
-
useNativeEqualsInNativeReadableArrayAndroid: Getter<boolean>,
|
|
133
|
-
useNativeTransformHelperAndroid: Getter<boolean>,
|
|
134
132
|
useNativeViewConfigsInBridgelessMode: Getter<boolean>,
|
|
135
133
|
useRawPropsJsiValue: Getter<boolean>,
|
|
136
134
|
useShadowNodeStateOnClone: Getter<boolean>,
|
|
@@ -539,14 +537,6 @@ export const useAlwaysAvailableJSErrorHandling: Getter<boolean> = createNativeFl
|
|
|
539
537
|
* Should this application enable the Fabric Interop Layer for Android? If yes, the application will behave so that it can accept non-Fabric components and render them on Fabric. This toggle is controlling extra logic such as custom event dispatching that are needed for the Fabric Interop Layer to work correctly.
|
|
540
538
|
*/
|
|
541
539
|
export const useFabricInterop: Getter<boolean> = createNativeFlagGetter('useFabricInterop', true);
|
|
542
|
-
/**
|
|
543
|
-
* Use a native implementation of equals in NativeReadableArray.
|
|
544
|
-
*/
|
|
545
|
-
export const useNativeEqualsInNativeReadableArrayAndroid: Getter<boolean> = createNativeFlagGetter('useNativeEqualsInNativeReadableArrayAndroid', true);
|
|
546
|
-
/**
|
|
547
|
-
* Use a native implementation of TransformHelper
|
|
548
|
-
*/
|
|
549
|
-
export const useNativeTransformHelperAndroid: Getter<boolean> = createNativeFlagGetter('useNativeTransformHelperAndroid', true);
|
|
550
540
|
/**
|
|
551
541
|
* When enabled, the native view configs are used in bridgeless mode.
|
|
552
542
|
*/
|
|
@@ -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<<14b4f8916fccd1d255b4a260556d11da>>
|
|
8
8
|
* @flow strict
|
|
9
9
|
* @noformat
|
|
10
10
|
*/
|
|
@@ -103,8 +103,6 @@ export interface Spec extends TurboModule {
|
|
|
103
103
|
+updateRuntimeShadowNodeReferencesOnCommit?: () => boolean;
|
|
104
104
|
+useAlwaysAvailableJSErrorHandling?: () => boolean;
|
|
105
105
|
+useFabricInterop?: () => boolean;
|
|
106
|
-
+useNativeEqualsInNativeReadableArrayAndroid?: () => boolean;
|
|
107
|
-
+useNativeTransformHelperAndroid?: () => boolean;
|
|
108
106
|
+useNativeViewConfigsInBridgelessMode?: () => boolean;
|
|
109
107
|
+useRawPropsJsiValue?: () => boolean;
|
|
110
108
|
+useShadowNodeStateOnClone?: () => boolean;
|
|
@@ -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<<5a9df3f9bf260d084c99647eeb92b83b>>
|
|
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/AccessibilityInfo/AccessibilityInfo.js
|
|
@@ -40,7 +40,7 @@ type AccessibilityEventDefinitions = Omit<AccessibilityEventDefinitionsAndroid,
|
|
|
40
40
|
reduceMotionChanged: [boolean];
|
|
41
41
|
screenReaderChanged: [boolean];
|
|
42
42
|
};
|
|
43
|
-
type AccessibilityEventTypes = "click" | "focus" | "viewHoverEnter";
|
|
43
|
+
type AccessibilityEventTypes = "click" | "focus" | "viewHoverEnter" | "windowStateChange";
|
|
44
44
|
declare const AccessibilityInfo: {
|
|
45
45
|
/**
|
|
46
46
|
* Query whether bold text is currently enabled.
|
|
@@ -178,6 +178,8 @@ declare const AccessibilityInfo: {
|
|
|
178
178
|
* Set accessibility focus to a React component.
|
|
179
179
|
*
|
|
180
180
|
* See https://reactnative.dev/docs/accessibilityinfo#setaccessibilityfocus
|
|
181
|
+
*
|
|
182
|
+
* @deprecated Use `sendAccessibilityEvent` with eventType `focus` instead.
|
|
181
183
|
*/
|
|
182
184
|
setAccessibilityFocus(reactTag: number): void;
|
|
183
185
|
/**
|