react-native 0.74.0-nightly-20240129-39cb02f6f → 1000.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (138) hide show
  1. package/Libraries/Animated/NativeAnimatedHelper.js +1 -1
  2. package/Libraries/Animated/nodes/AnimatedStyle.js +1 -1
  3. package/Libraries/Animated/useAnimatedProps.js +1 -1
  4. package/Libraries/AppDelegate/RCTAppDelegate.mm +2 -1
  5. package/Libraries/Blob/React-RCTBlob.podspec +1 -0
  6. package/Libraries/Components/PopupMenuAndroid/PopupMenuAndroid.android.js +69 -0
  7. package/Libraries/Components/PopupMenuAndroid/PopupMenuAndroid.d.ts +24 -0
  8. package/Libraries/Components/PopupMenuAndroid/PopupMenuAndroid.js +33 -0
  9. package/Libraries/Components/PopupMenuAndroid/PopupMenuAndroidNativeComponent.js +13 -0
  10. package/Libraries/Core/ReactNativeVersion.js +2 -3
  11. package/Libraries/Core/registerCallableModule.js +42 -0
  12. package/Libraries/Image/RCTImageLoader.mm +4 -11
  13. package/Libraries/LayoutAnimation/LayoutAnimation.js +1 -1
  14. package/Libraries/ReactNative/BridgelessUIManager.js +31 -13
  15. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +1 -1
  16. package/Libraries/ReactNative/ReactNativeFeatureFlags.js +0 -33
  17. package/Libraries/ReactNative/__mocks__/FabricUIManager.js +12 -0
  18. package/Libraries/Renderer/implementations/ReactFabric-dev.js +24543 -21110
  19. package/Libraries/Renderer/implementations/ReactFabric-prod.js +4104 -3058
  20. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +4352 -3273
  21. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +25038 -21457
  22. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +3721 -2600
  23. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +4024 -2869
  24. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +43 -4
  25. package/Libraries/WebPerformance/Performance.js +1 -1
  26. package/React/Base/RCTBridge+Private.h +14 -0
  27. package/React/Base/RCTBridge.mm +6 -0
  28. package/React/Base/RCTKeyCommands.m +12 -1
  29. package/React/Base/RCTVersion.m +3 -3
  30. package/React/CoreModules/RCTAlertController.mm +2 -3
  31. package/React/CoreModules/RCTAppearance.mm +1 -1
  32. package/React/CoreModules/React-CoreModules.podspec +1 -0
  33. package/React/CxxBridge/RCTCxxBridge.mm +21 -3
  34. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropComponentView.mm +22 -1
  35. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +13 -2
  36. package/React/Fabric/RCTConversions.h +2 -18
  37. package/React/React-RCTFabric.podspec +1 -0
  38. package/React-Core.podspec +1 -3
  39. package/ReactAndroid/api/ReactAndroid.api +53 -1
  40. package/ReactAndroid/gradle.properties +1 -1
  41. package/ReactAndroid/src/main/java/com/facebook/react/animated/AnimatedNode.java +3 -1
  42. package/ReactAndroid/src/main/java/com/facebook/react/animated/DecayAnimation.java +2 -0
  43. package/ReactAndroid/src/main/java/com/facebook/react/animated/DiffClampAnimatedNode.java +3 -1
  44. package/ReactAndroid/src/main/java/com/facebook/react/animated/ModulusAnimatedNode.java +3 -1
  45. package/ReactAndroid/src/main/java/com/facebook/react/animated/ObjectAnimatedNode.java +3 -1
  46. package/ReactAndroid/src/main/java/com/facebook/react/animated/SpringAnimation.java +3 -1
  47. package/ReactAndroid/src/main/java/com/facebook/react/config/ReactFeatureFlags.java +1 -3
  48. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultNewArchitectureEntryPoint.kt +5 -2
  49. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +11 -1
  50. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +11 -1
  51. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +3 -1
  52. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +3 -1
  53. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +12 -1
  54. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +3 -1
  55. package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/JSCExecutor.kt +1 -1
  56. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +3 -3
  57. package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.java +3 -0
  58. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.java +13 -1
  59. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +7 -0
  60. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +11 -0
  61. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.java +24 -0
  62. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ScaleTypeStartInside.java +1 -1
  63. package/ReactAndroid/src/main/java/com/facebook/react/views/popupmenu/PopupMenuSelectionEvent.kt +37 -0
  64. package/ReactAndroid/src/main/java/com/facebook/react/views/popupmenu/ReactPopupMenuContainer.kt +49 -0
  65. package/ReactAndroid/src/main/java/com/facebook/react/views/popupmenu/ReactPopupMenuManager.kt +54 -0
  66. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactBaseTextShadowNode.java +2 -2
  67. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.java +2 -2
  68. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManagerMapBuffer.java +2 -2
  69. package/ReactAndroid/src/main/jni/react/fabric/CoreComponentsRegistry.cpp +2 -0
  70. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +9 -1
  71. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +4 -1
  72. package/ReactAndroid/src/main/jni/react/featureflags/ReactNativeFeatureFlagsProviderHolder.cpp +7 -1
  73. package/ReactAndroid/src/main/jni/react/featureflags/ReactNativeFeatureFlagsProviderHolder.h +2 -1
  74. package/ReactAndroid/src/main/jni/react/jni/OnLoad.cpp +16 -10
  75. package/ReactAndroid/src/main/jni/react/jni/ProxyExecutor.cpp +0 -3
  76. package/ReactAndroid/src/main/jni/react/jni/ProxyExecutor.h +0 -1
  77. package/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultComponentsRegistry.cpp +7 -6
  78. package/ReactCommon/cxxreact/Instance.cpp +34 -18
  79. package/ReactCommon/cxxreact/Instance.h +13 -2
  80. package/ReactCommon/cxxreact/React-cxxreact.podspec +1 -1
  81. package/ReactCommon/cxxreact/ReactNativeVersion.h +2 -2
  82. package/ReactCommon/jsinspector-modern/InstanceAgent.cpp +34 -0
  83. package/ReactCommon/jsinspector-modern/InstanceAgent.h +54 -0
  84. package/ReactCommon/jsinspector-modern/InstanceTarget.cpp +25 -0
  85. package/ReactCommon/jsinspector-modern/InstanceTarget.h +58 -0
  86. package/ReactCommon/jsinspector-modern/PageAgent.cpp +65 -0
  87. package/ReactCommon/jsinspector-modern/PageAgent.h +13 -0
  88. package/ReactCommon/jsinspector-modern/PageTarget.cpp +41 -0
  89. package/ReactCommon/jsinspector-modern/PageTarget.h +28 -1
  90. package/ReactCommon/jsinspector-modern/React-jsinspector.podspec +12 -1
  91. package/ReactCommon/jsinspector-modern/ReactCdp.h +1 -0
  92. package/ReactCommon/jsinspector-modern/tests/InspectorMocks.h +2 -0
  93. package/ReactCommon/jsinspector-modern/tests/PageTargetTest.cpp +164 -10
  94. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +5 -1
  95. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +6 -1
  96. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +18 -1
  97. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +3 -1
  98. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +5 -1
  99. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +2 -1
  100. package/ReactCommon/react/featureflags/tests/ReactNativeFeatureFlagsTest.cpp +4 -0
  101. package/ReactCommon/react/nativemodule/core/platform/ios/React-NativeModulesApple.podspec +1 -0
  102. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +6 -1
  103. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +3 -1
  104. package/ReactCommon/react/renderer/attributedstring/primitives.h +0 -86
  105. package/ReactCommon/react/renderer/components/view/AccessibilityPrimitives.h +0 -16
  106. package/ReactCommon/react/renderer/components/view/CSSTokenizer.cpp +187 -0
  107. package/ReactCommon/react/renderer/components/view/CSSTokenizer.h +101 -0
  108. package/ReactCommon/react/renderer/components/view/tests/CSSTokenizerTest.cpp +144 -0
  109. package/ReactCommon/react/renderer/core/ComponentDescriptor.h +0 -1
  110. package/ReactCommon/react/renderer/core/LayoutPrimitives.h +0 -17
  111. package/ReactCommon/react/renderer/core/propsConversions.h +0 -1
  112. package/ReactCommon/react/renderer/graphics/Color.h +7 -3
  113. package/ReactCommon/react/renderer/graphics/React-graphics.podspec +6 -1
  114. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/HostPlatformColor.h +55 -15
  115. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/HostPlatformColor.mm +132 -0
  116. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/PlatformColorParser.h +4 -18
  117. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/PlatformColorParser.mm +73 -0
  118. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/RCTPlatformColorUtils.h +8 -2
  119. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/RCTPlatformColorUtils.mm +14 -3
  120. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextPrimitivesConversions.h +4 -19
  121. package/ReactCommon/react/runtime/ReactInstance.cpp +15 -2
  122. package/ReactCommon/react/runtime/ReactInstance.h +13 -2
  123. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.mm +5 -3
  124. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTInstance.h +3 -1
  125. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTInstance.mm +10 -2
  126. package/ReactCommon/react/test_utils/ios/Shims/ShimRCTInstance.mm +5 -2
  127. package/ReactCommon/react/utils/hash_combine.h +8 -6
  128. package/gradle/libs.versions.toml +1 -1
  129. package/index.js +9 -0
  130. package/package.json +9 -9
  131. package/sdks/hermesc/osx-bin/hermes +0 -0
  132. package/sdks/hermesc/osx-bin/hermesc +0 -0
  133. package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
  134. package/src/private/featureflags/NativeReactNativeFeatureFlags.js +2 -1
  135. package/src/private/featureflags/ReactNativeFeatureFlags.js +42 -1
  136. package/src/private/specs/components/PopupMenuAndroidNativeComponent.js +47 -0
  137. package/template/package.json +5 -5
  138. package/ReactAndroid/src/main/jni/react/jni/OnLoad.h +0 -16
Binary file
Binary file
@@ -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<<564159837241d197ebc3084ff9e72b7c>>
7
+ * @generated SignedSource<<80726297990981a85ae106f8566ec662>>
8
8
  * @flow strict-local
9
9
  */
10
10
 
@@ -27,6 +27,7 @@ export interface Spec extends TurboModule {
27
27
  +useModernRuntimeScheduler?: () => boolean;
28
28
  +enableMicrotasks?: () => boolean;
29
29
  +batchRenderingUpdatesInEventLoop?: () => boolean;
30
+ +enableSpannableBuildingUnification?: () => boolean;
30
31
  }
31
32
 
32
33
  const NativeReactNativeFeatureFlags: ?Spec = TurboModuleRegistry.get<Spec>(
@@ -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<<4e4ce58c1ce1a95355bba0dfe099e26e>>
7
+ * @generated SignedSource<<d68bc5fec0897ad698014c938e4ab21e>>
8
8
  * @flow strict-local
9
9
  */
10
10
 
@@ -27,6 +27,12 @@ import {
27
27
 
28
28
  export type ReactNativeFeatureFlagsJsOnly = {
29
29
  jsOnlyTestFlag: Getter<boolean>,
30
+ isLayoutAnimationEnabled: Getter<boolean>,
31
+ animatedShouldDebounceQueueFlush: Getter<boolean>,
32
+ animatedShouldUseSingleOp: Getter<boolean>,
33
+ enableAccessToHostTreeInFabric: Getter<boolean>,
34
+ shouldUseAnimatedObjectForTransform: Getter<boolean>,
35
+ shouldUseSetNativePropsInFabric: Getter<boolean>,
30
36
  };
31
37
 
32
38
  export type ReactNativeFeatureFlagsJsOnlyOverrides = Partial<ReactNativeFeatureFlagsJsOnly>;
@@ -37,6 +43,7 @@ export type ReactNativeFeatureFlags = {
37
43
  useModernRuntimeScheduler: Getter<boolean>,
38
44
  enableMicrotasks: Getter<boolean>,
39
45
  batchRenderingUpdatesInEventLoop: Getter<boolean>,
46
+ enableSpannableBuildingUnification: Getter<boolean>,
40
47
  }
41
48
 
42
49
  /**
@@ -44,6 +51,36 @@ export type ReactNativeFeatureFlags = {
44
51
  */
45
52
  export const jsOnlyTestFlag: Getter<boolean> = createJavaScriptFlagGetter('jsOnlyTestFlag', false);
46
53
 
54
+ /**
55
+ * Function used to enable / disabled Layout Animations in React Native.
56
+ */
57
+ export const isLayoutAnimationEnabled: Getter<boolean> = createJavaScriptFlagGetter('isLayoutAnimationEnabled', true);
58
+
59
+ /**
60
+ * Enables an experimental flush-queue debouncing in Animated.js.
61
+ */
62
+ export const animatedShouldDebounceQueueFlush: Getter<boolean> = createJavaScriptFlagGetter('animatedShouldDebounceQueueFlush', false);
63
+
64
+ /**
65
+ * Enables an experimental mega-operation for Animated.js that replaces many calls to native with a single call into native, to reduce JSI/JNI traffic.
66
+ */
67
+ export const animatedShouldUseSingleOp: Getter<boolean> = createJavaScriptFlagGetter('animatedShouldUseSingleOp', false);
68
+
69
+ /**
70
+ * Enables access to the host tree in Fabric using DOM-compatible APIs.
71
+ */
72
+ export const enableAccessToHostTreeInFabric: Getter<boolean> = createJavaScriptFlagGetter('enableAccessToHostTreeInFabric', false);
73
+
74
+ /**
75
+ * Enables use of AnimatedObject for animating transform values.
76
+ */
77
+ export const shouldUseAnimatedObjectForTransform: Getter<boolean> = createJavaScriptFlagGetter('shouldUseAnimatedObjectForTransform', false);
78
+
79
+ /**
80
+ * Enables use of setNativeProps in JS driven animations.
81
+ */
82
+ export const shouldUseSetNativePropsInFabric: Getter<boolean> = createJavaScriptFlagGetter('shouldUseSetNativePropsInFabric', true);
83
+
47
84
  /**
48
85
  * Common flag for testing. Do NOT modify.
49
86
  */
@@ -60,6 +97,10 @@ export const enableMicrotasks: Getter<boolean> = createNativeFlagGetter('enableM
60
97
  * When enabled, the RuntimeScheduler processing the event loop will batch all rendering updates and dispatch them together at the end of each iteration of the loop.
61
98
  */
62
99
  export const batchRenderingUpdatesInEventLoop: Getter<boolean> = createNativeFlagGetter('batchRenderingUpdatesInEventLoop', false);
100
+ /**
101
+ * Uses new, deduplicated logic for constructing Android Spannables from text fragments
102
+ */
103
+ export const enableSpannableBuildingUnification: Getter<boolean> = createNativeFlagGetter('enableSpannableBuildingUnification', false);
63
104
 
64
105
  /**
65
106
  * Overrides the feature flags with the provided methods.
@@ -0,0 +1,47 @@
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
+ * @flow strict-local
8
+ * @format
9
+ */
10
+
11
+ import type {ViewProps} from '../../../../Libraries/Components/View/ViewPropTypes';
12
+ import type {HostComponent} from '../../../../Libraries/Renderer/shims/ReactNativeTypes';
13
+ import type {
14
+ DirectEventHandler,
15
+ Int32,
16
+ } from '../../../../Libraries/Types/CodegenTypes';
17
+
18
+ import codegenNativeCommands from '../../../../Libraries/Utilities/codegenNativeCommands';
19
+ import codegenNativeComponent from '../../../../Libraries/Utilities/codegenNativeComponent';
20
+ import * as React from 'react';
21
+
22
+ type PopupMenuSelectionEvent = $ReadOnly<{
23
+ item: Int32,
24
+ }>;
25
+
26
+ type NativeProps = $ReadOnly<{
27
+ ...ViewProps,
28
+
29
+ //Props
30
+ menuItems?: ?$ReadOnlyArray<string>,
31
+
32
+ onSelectionChange?: DirectEventHandler<PopupMenuSelectionEvent>,
33
+ }>;
34
+
35
+ type ComponentType = HostComponent<NativeProps>;
36
+
37
+ interface NativeCommands {
38
+ +show: (viewRef: React.ElementRef<ComponentType>) => void;
39
+ }
40
+
41
+ export const Commands: NativeCommands = codegenNativeCommands<NativeCommands>({
42
+ supportedCommands: ['show'],
43
+ });
44
+
45
+ export default (codegenNativeComponent<NativeProps>(
46
+ 'AndroidPopupMenu',
47
+ ): HostComponent<NativeProps>);
@@ -11,16 +11,16 @@
11
11
  },
12
12
  "dependencies": {
13
13
  "react": "18.2.0",
14
- "react-native": "0.74.0-nightly-20240129-39cb02f6f"
14
+ "react-native": "0.74.0-nightly-20240131-82e9a5e4f"
15
15
  },
16
16
  "devDependencies": {
17
17
  "@babel/core": "^7.20.0",
18
18
  "@babel/preset-env": "^7.20.0",
19
19
  "@babel/runtime": "^7.20.0",
20
- "@react-native/babel-preset": "0.74.0-nightly-20240129-39cb02f6f",
21
- "@react-native/eslint-config": "0.74.0-nightly-20240129-39cb02f6f",
22
- "@react-native/metro-config": "0.74.0-nightly-20240129-39cb02f6f",
23
- "@react-native/typescript-config": "0.74.0-nightly-20240129-39cb02f6f",
20
+ "@react-native/babel-preset": "0.74.0-nightly-20240131-82e9a5e4f",
21
+ "@react-native/eslint-config": "0.74.0-nightly-20240131-82e9a5e4f",
22
+ "@react-native/metro-config": "0.74.0-nightly-20240131-82e9a5e4f",
23
+ "@react-native/typescript-config": "0.74.0-nightly-20240131-82e9a5e4f",
24
24
  "@types/react": "^18.2.6",
25
25
  "@types/react-test-renderer": "^18.0.0",
26
26
  "babel-jest": "^29.6.3",
@@ -1,16 +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 <jni.h>
11
-
12
- namespace facebook::react {
13
-
14
- jmethodID getLogMarkerMethod();
15
-
16
- } // namespace facebook::react