From 579415221cb8da4f1f26220811cbdd6e47e1d856 Mon Sep 17 00:00:00 2001 From: vineethkuttan <66076509+vineethkuttan@users.noreply.github.com> Date: Tue, 10 Feb 2026 11:41:43 +0530 Subject: [PATCH 01/13] update community template --- packages/@rnw-scripts/integrate-rn/package.json | 4 ++-- vnext/Scripts/creaternwapp.cmd | 2 +- yarn.lock | 8 ++++---- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/@rnw-scripts/integrate-rn/package.json b/packages/@rnw-scripts/integrate-rn/package.json index 9c4d133d20a..f6ea6ac6daf 100644 --- a/packages/@rnw-scripts/integrate-rn/package.json +++ b/packages/@rnw-scripts/integrate-rn/package.json @@ -20,7 +20,7 @@ "integrate-rn": "./bin.js" }, "dependencies": { - "@react-native-community/template": "0.82.0-nightly-202591-d2a0bee", + "@react-native-community/template": "0.82.0-nightly-20251017-e319a2f", "@react-native-windows/find-repo-root": "^0.0.0-canary.99", "@react-native-windows/fs": "^0.0.0-canary.70", "@react-native-windows/package-utils": "^0.0.0-canary.96", @@ -62,4 +62,4 @@ "engines": { "node": ">= 22" } -} +} \ No newline at end of file diff --git a/vnext/Scripts/creaternwapp.cmd b/vnext/Scripts/creaternwapp.cmd index 5004b096c24..9ab78d27c6c 100644 --- a/vnext/Scripts/creaternwapp.cmd +++ b/vnext/Scripts/creaternwapp.cmd @@ -117,7 +117,7 @@ if not "x%RN_VERSION:nightly=%"=="x%RN_VERSION%" ( REM Do not change, this makes sure we always get a nightly template when still consuming a nightly RN and NOT a later "stable" template that may have been released REM set RNCLI_TEMPLATE=--template "@react-native-community/template@^%RN_VERSION:~0,4%.0-" REM Windows we need to manually update this with every integration #15124 - set RNCLI_TEMPLATE=--template "@react-native-community/template@0.82.0-nightly-202591-d2a0bee" + set RNCLI_TEMPLATE=--template "@react-native-community/template@0.82.0-nightly-20251017-e319a2f" ) @echo creaternwapp.cmd: Creating base RN app project with: npx --yes @react-native-community/cli@%RNCLI_VERSION% init %APP_NAME% --version %RN_VERSION% %RNCLI_TEMPLATE% --verbose --skip-install --install-pods false --skip-git-init true diff --git a/yarn.lock b/yarn.lock index 14967aa4020..67c4e481999 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2088,10 +2088,10 @@ prompts "^2.4.2" semver "^7.5.2" -"@react-native-community/template@0.82.0-nightly-202591-d2a0bee": - version "0.82.0-nightly-202591-d2a0bee" - resolved "https://registry.yarnpkg.com/@react-native-community/template/-/template-0.82.0-nightly-202591-d2a0bee.tgz#4df504a068d88c2f8244c9a08564dadbcd3521cc" - integrity sha512-F4upHwTAUlS1rNDWgThVMwg65tOaDub9ejILsOKQTh3NldLjYZKAIGkOeTDXKHoQf/nJg3mM37H0JXD0dBpr+g== +"@react-native-community/template@0.82.0-nightly-20251017-e319a2f": + version "0.82.0-nightly-20251017-e319a2f" + resolved "https://registry.yarnpkg.com/@react-native-community/template/-/template-0.82.0-nightly-20251017-e319a2f.tgz#025b37e9445a73ac34c3ee6dbe445821e9f28cb0" + integrity sha512-Wy0A8Czvht1AgLVfDQg3tjPNUXk7H46x83Dizs5avHdz9+Om3zPneYJQzfCiu+kzq536TOr9XDAVSW96A8bkUg== "@react-native-picker/picker@^2.5.1": version "2.11.4" From b79cd490b752bf0781fec7c0817b0fb1375c8858 Mon Sep 17 00:00:00 2001 From: vineethkuttan <66076509+vineethkuttan@users.noreply.github.com> Date: Tue, 10 Feb 2026 11:55:50 +0530 Subject: [PATCH 02/13] commit with conflicts --- .../react-native-win32-tester/overrides.json | 4 +- .../react-native-win32-tester/package.json | 6 +- .../src/js/utils/RNTesterList.win32.js | 10 ++ .../react-native-win32/.flowconfig | 2 +- .../react-native-win32/overrides.json | 10 +- .../react-native-win32/package.json | 22 ++-- .../Renderer/shims/ReactNativeTypes.win32.js | 3 +- .../Text/TextNativeComponent.win32.js | 10 ++ .../react-native-win32/src-win/index.win32.js | 10 ++ .../automation-channel/package.json | 2 +- .../tester/overrides.json | 6 +- .../@react-native-windows/tester/package.json | 8 +- .../FlatList/BaseFlatListExample.windows.js | 70 +++++------ .../src/js/utils/RNTesterList.windows.js | 10 ++ .../@react-native/monorepo/overrides.json | 4 +- packages/@react-native/monorepo/package.json | 25 +++- .../js/examples/TextInput/ExampleTextInput.js | 6 +- .../tester/js/utils/RNTesterList.android.js | 10 ++ .../tester/js/utils/RNTesterList.ios.js | 10 ++ packages/@react-native/tester/overrides.json | 22 ++-- packages/@react-native/tester/package.json | 4 +- .../babel-react-native-config/package.json | 6 +- .../@rnw-scripts/eslint-config/package.json | 2 +- .../metro-dev-config/package.json | 4 +- packages/e2e-test-app-fabric/package.json | 6 +- packages/playground/package.json | 6 +- packages/sample-app-fabric/package.json | 6 +- packages/sample-custom-component/package.json | 6 +- vnext/.flowconfig | 7 +- .../WindowsTextInputComponentDescriptor.h | 2 +- .../jsinspector-modern/NetworkIOAgent.cpp | 16 +-- .../jsinspector-modern/network/HttpUtils.cpp | 3 +- vnext/overrides.json | 20 +-- vnext/package.json | 24 ++-- .../Components/Switch/Switch.windows.js | 2 +- .../Touchable/TouchableBounce.windows.js | 14 +-- .../shims/ReactNativeTypes.windows.js | 3 +- vnext/src-win/index.windows.js | 6 + vnext/src-win/index.windows.js.flow | 3 + yarn.lock | 115 ++++++++++++++++-- 40 files changed, 338 insertions(+), 167 deletions(-) diff --git a/packages/@office-iss/react-native-win32-tester/overrides.json b/packages/@office-iss/react-native-win32-tester/overrides.json index cabcb17484a..7fa4e6e7910 100644 --- a/packages/@office-iss/react-native-win32-tester/overrides.json +++ b/packages/@office-iss/react-native-win32-tester/overrides.json @@ -5,7 +5,7 @@ "excludePatterns": [ "src/js/examples-win32/**" ], - "baseVersion": "0.82.0-nightly-20250902-9731e8ebc", + "baseVersion": "0.83.0-nightly-20250917-18cb4edfa", "overrides": [ { "type": "patch", @@ -42,7 +42,7 @@ "type": "derived", "file": "src/js/utils/RNTesterList.win32.js", "baseFile": "packages/rn-tester/js/utils/RNTesterList.android.js", - "baseHash": "8cd219abae140e98f9578432954fc9ef62421308" + "baseHash": "aeb0275507e7c508cdf7c2ceec49f9e95ef4e1ec" } ] } \ No newline at end of file diff --git a/packages/@office-iss/react-native-win32-tester/package.json b/packages/@office-iss/react-native-win32-tester/package.json index e55d1a91bad..ce06785812f 100644 --- a/packages/@office-iss/react-native-win32-tester/package.json +++ b/packages/@office-iss/react-native-win32-tester/package.json @@ -19,7 +19,7 @@ "peerDependencies": { "@office-iss/react-native-win32": "^0.0.0-canary.305", "react": "19.1.1", - "react-native": "0.82.0-nightly-20250902-9731e8ebc" + "react-native": "0.83.0-nightly-20250917-18cb4edfa" }, "devDependencies": { "@office-iss/react-native-win32": "^0.0.0-canary.305", @@ -30,11 +30,11 @@ "@types/node": "^22.14.0", "eslint": "^8.19.0", "just-scripts": "^1.3.3", - "react-native": "0.82.0-nightly-20250902-9731e8ebc", + "react-native": "0.83.0-nightly-20250917-18cb4edfa", "react-native-platform-override": "0.0.0-canary.1019", "typescript": "5.0.4" }, "engines": { "node": ">= 22" } -} +} \ No newline at end of file diff --git a/packages/@office-iss/react-native-win32-tester/src/js/utils/RNTesterList.win32.js b/packages/@office-iss/react-native-win32-tester/src/js/utils/RNTesterList.win32.js index 032bd9fe6d5..c951141a754 100644 --- a/packages/@office-iss/react-native-win32-tester/src/js/utils/RNTesterList.win32.js +++ b/packages/@office-iss/react-native-win32-tester/src/js/utils/RNTesterList.win32.js @@ -364,6 +364,16 @@ const APIs: Array = ([ category: 'Basic', module: require('../examples/TurboModule/TurboCxxModuleExample'), }, + // Basic check to detect the availability of the modern Performance API. + ...(typeof performance.getEntries === 'function' + ? [ + { + key: 'PerformanceApiExample', + category: 'Basic', + module: require('../examples/Performance/PerformanceApiExample'), + }, + ] + : []), ...RNTesterListFbInternal.APIs, ]: Array).filter(Boolean); diff --git a/packages/@office-iss/react-native-win32/.flowconfig b/packages/@office-iss/react-native-win32/.flowconfig index 1f7153bd66d..5da300893c1 100644 --- a/packages/@office-iss/react-native-win32/.flowconfig +++ b/packages/@office-iss/react-native-win32/.flowconfig @@ -175,4 +175,4 @@ untyped-import untyped-type-import [version] -^0.280.0 +^0.281.0 diff --git a/packages/@office-iss/react-native-win32/overrides.json b/packages/@office-iss/react-native-win32/overrides.json index 08a01083799..5d1ee64d783 100644 --- a/packages/@office-iss/react-native-win32/overrides.json +++ b/packages/@office-iss/react-native-win32/overrides.json @@ -7,19 +7,19 @@ "**/__snapshots__/**", "src-win/rntypes/**" ], - "baseVersion": "0.82.0-nightly-20250902-9731e8ebc", + "baseVersion": "0.83.0-nightly-20250917-18cb4edfa", "overrides": [ { "type": "derived", "file": ".flowconfig", "baseFile": ".flowconfig", - "baseHash": "c8bd25d4aa75328a2484c5c7b0b768c188a50b52" + "baseHash": "8a6739338afdae4cbcfad614e33e66ae2948f497" }, { "type": "derived", "file": "src-win/index.win32.js", "baseFile": "packages/react-native/index.js", - "baseHash": "88aa62f2d86a810631bcbc871f45c28c53fceec7" + "baseHash": "02a8ea6efd164de036681159f18135cc3393cb21" }, { "type": "platform", @@ -394,7 +394,7 @@ "type": "patch", "file": "src-win/Libraries/Renderer/shims/ReactNativeTypes.win32.js", "baseFile": "packages/react-native/Libraries/Renderer/shims/ReactNativeTypes.js", - "baseHash": "9e91759d01c9a6d459c5781b357533f4ac8727a7", + "baseHash": "333afc05f5a42a5321196f5f7a14d14c8fd5dd0f", "issue": 0 }, { @@ -431,7 +431,7 @@ "type": "derived", "file": "src-win/Libraries/Text/TextNativeComponent.win32.js", "baseFile": "packages/react-native/Libraries/Text/TextNativeComponent.js", - "baseHash": "259a625b5f7cf3a70ecd4af6388d82d47f446e50", + "baseHash": "56a99244e10bd1833a3d048f2476c4500f59202d", "issue": 7074 }, { diff --git a/packages/@office-iss/react-native-win32/package.json b/packages/@office-iss/react-native-win32/package.json index e46eee49b9f..4e5c8db5e0b 100644 --- a/packages/@office-iss/react-native-win32/package.json +++ b/packages/@office-iss/react-native-win32/package.json @@ -30,13 +30,13 @@ "@react-native-community/cli-platform-android": "20.0.0", "@react-native-community/cli-platform-ios": "20.0.0", "@react-native/assets": "1.0.0", - "@react-native/assets-registry": "0.82.0-nightly-20250902-9731e8ebc", - "@react-native/codegen": "0.82.0-nightly-20250902-9731e8ebc", - "@react-native/community-cli-plugin": "0.82.0-nightly-20250902-9731e8ebc", - "@react-native/gradle-plugin": "0.82.0-nightly-20250902-9731e8ebc", - "@react-native/js-polyfills": "0.82.0-nightly-20250902-9731e8ebc", - "@react-native/normalize-colors": "0.82.0-nightly-20250902-9731e8ebc", - "@react-native/virtualized-lists": "0.82.0-nightly-20250902-9731e8ebc", + "@react-native/assets-registry": "0.83.0-nightly-20250917-18cb4edfa", + "@react-native/codegen": "0.83.0-nightly-20250917-18cb4edfa", + "@react-native/community-cli-plugin": "0.83.0-nightly-20250917-18cb4edfa", + "@react-native/gradle-plugin": "0.83.0-nightly-20250917-18cb4edfa", + "@react-native/js-polyfills": "0.83.0-nightly-20250917-18cb4edfa", + "@react-native/normalize-colors": "0.83.0-nightly-20250917-18cb4edfa", + "@react-native/virtualized-lists": "0.83.0-nightly-20250917-18cb4edfa", "abort-controller": "^3.0.0", "anser": "^1.4.9", "ansi-regex": "^5.0.0", @@ -72,7 +72,7 @@ "devDependencies": { "@babel/core": "^7.25.2", "@babel/eslint-parser": "^7.25.1", - "@react-native/metro-config": "0.82.0-nightly-20250902-9731e8ebc", + "@react-native/metro-config": "0.83.0-nightly-20250917-18cb4edfa", "@rnw-scripts/babel-react-native-config": "0.0.0", "@rnw-scripts/eslint-config": "1.2.38", "@rnw-scripts/jest-out-of-tree-snapshot-resolver": "^1.1.42", @@ -88,14 +88,14 @@ "just-scripts": "^1.3.3", "prettier": "2.8.8", "react": "19.1.1", - "react-native": "0.82.0-nightly-20250902-9731e8ebc", + "react-native": "0.83.0-nightly-20250917-18cb4edfa", "react-native-platform-override": "0.0.0-canary.1019", "typescript": "5.0.4" }, "peerDependencies": { "@types/react": "^19.1.1", "react": "^19.1.1", - "react-native": "0.82.0-nightly-20250902-9731e8ebc" + "react-native": "0.83.0-nightly-20250917-18cb4edfa" }, "beachball": { "defaultNpmTag": "canary", @@ -112,4 +112,4 @@ "engines": { "node": ">= 22" } -} +} \ No newline at end of file diff --git a/packages/@office-iss/react-native-win32/src-win/Libraries/Renderer/shims/ReactNativeTypes.win32.js b/packages/@office-iss/react-native-win32/src-win/Libraries/Renderer/shims/ReactNativeTypes.win32.js index d17feb9416d..ee6ae134cac 100644 --- a/packages/@office-iss/react-native-win32/src-win/Libraries/Renderer/shims/ReactNativeTypes.win32.js +++ b/packages/@office-iss/react-native-win32/src-win/Libraries/Renderer/shims/ReactNativeTypes.win32.js @@ -7,7 +7,7 @@ * @noformat * @nolint * @flow strict - * @generated SignedSource<> + * @generated SignedSource<> */ import type { @@ -139,6 +139,7 @@ export type RenderRootOptions = { error: mixed, errorInfo: {+componentStack?: ?string}, ) => void, + onDefaultTransitionIndicator?: () => void | (() => void), }; /** diff --git a/packages/@office-iss/react-native-win32/src-win/Libraries/Text/TextNativeComponent.win32.js b/packages/@office-iss/react-native-win32/src-win/Libraries/Text/TextNativeComponent.win32.js index 5ff2186fb6b..72919710df1 100644 --- a/packages/@office-iss/react-native-win32/src-win/Libraries/Text/TextNativeComponent.win32.js +++ b/packages/@office-iss/react-native-win32/src-win/Libraries/Text/TextNativeComponent.win32.js @@ -99,6 +99,16 @@ const virtualTextViewConfig = { uiViewClassName: 'RCTVirtualText', }; +/** + * `NativeText` is an internal React Native host component, and is exported to + * provide lower-level access for libraries. + * + * @warning `` provides no semver guarantees and is not + * intended to be used in app code. Please use + * [``](https://reactnative.dev/docs/text) instead. + */ +// Additional note: Our long term plan is to reduce the overhead of the +// and wrappers so that we no longer have any reason to export these APIs. export const NativeText: HostComponent = (createReactNativeComponentClass('RCTText', () => /* $FlowFixMe[incompatible-type] Natural Inference rollout. See diff --git a/packages/@office-iss/react-native-win32/src-win/index.win32.js b/packages/@office-iss/react-native-win32/src-win/index.win32.js index a7fdd26391f..56dbf2db029 100644 --- a/packages/@office-iss/react-native-win32/src-win/index.win32.js +++ b/packages/@office-iss/react-native-win32/src-win/index.win32.js @@ -154,7 +154,17 @@ module.exports = { get Modal(): Modal { return require('./Libraries/Modal/Modal').default; }, +<<<<<<< Upstream + get unstable_NativeText() { + return require('./Libraries/Text/TextNativeComponent').NativeText; + }, + get unstable_NativeView() { + return require('./Libraries/Components/View/ViewNativeComponent').default; + }, + get Pressable() { +======= get Pressable(): Pressable { +>>>>>>> Override return require('./Libraries/Components/Pressable/Pressable').default; }, // $FlowFixMe[value-as-type] diff --git a/packages/@react-native-windows/automation-channel/package.json b/packages/@react-native-windows/automation-channel/package.json index 801fa39548b..c4e50f46147 100644 --- a/packages/@react-native-windows/automation-channel/package.json +++ b/packages/@react-native-windows/automation-channel/package.json @@ -32,7 +32,7 @@ "just-scripts": "^1.3.2", "prettier": "2.8.8", "react": "19.1.1", - "react-native": "0.82.0-nightly-20250902-9731e8ebc", + "react-native": "0.83.0-nightly-20250917-18cb4edfa", "react-native-windows": "^0.0.0-canary.1031", "typescript": "5.0.4" }, diff --git a/packages/@react-native-windows/tester/overrides.json b/packages/@react-native-windows/tester/overrides.json index 19a2a15dc7e..a95ec25aa84 100644 --- a/packages/@react-native-windows/tester/overrides.json +++ b/packages/@react-native-windows/tester/overrides.json @@ -5,7 +5,7 @@ "excludePatterns": [ "src/js/examples-win/**" ], - "baseVersion": "0.82.0-nightly-20250902-9731e8ebc", + "baseVersion": "0.83.0-nightly-20250917-18cb4edfa", "overrides": [ { "type": "copy", @@ -43,7 +43,7 @@ "type": "patch", "file": "src/js/examples/FlatList/BaseFlatListExample.windows.js", "baseFile": "packages/rn-tester/js/examples/FlatList/BaseFlatListExample.js", - "baseHash": "7a516e491b4cbe22678baf899dfe855567468a6f", + "baseHash": "6a140eb7fd8961bbee46fbe6af9d592c0fcf5a2b", "issue": 12869 }, { @@ -156,7 +156,7 @@ "type": "derived", "file": "src/js/utils/RNTesterList.windows.js", "baseFile": "packages/rn-tester/js/utils/RNTesterList.android.js", - "baseHash": "8cd219abae140e98f9578432954fc9ef62421308" + "baseHash": "aeb0275507e7c508cdf7c2ceec49f9e95ef4e1ec" } ] } \ No newline at end of file diff --git a/packages/@react-native-windows/tester/package.json b/packages/@react-native-windows/tester/package.json index 51192239190..20b90133b51 100644 --- a/packages/@react-native-windows/tester/package.json +++ b/packages/@react-native-windows/tester/package.json @@ -19,12 +19,12 @@ "peerDependencies": { "@react-native-picker/picker": "2.11.0", "react": "19.1.1", - "react-native": "0.82.0-nightly-20250902-9731e8ebc", + "react-native": "0.83.0-nightly-20250917-18cb4edfa", "react-native-windows": "^0.0.0-canary.1031", "react-native-xaml": "^0.0.80" }, "devDependencies": { - "@react-native/new-app-screen": "0.82.0-nightly-20250902-9731e8ebc", + "@react-native/new-app-screen": "0.83.0-nightly-20250917-18cb4edfa", "@react-native/tester": "0.82.0-main", "@rnw-scripts/babel-react-native-config": "0.0.0", "@rnw-scripts/eslint-config": "1.2.38", @@ -33,7 +33,7 @@ "@types/node": "^22.14.0", "eslint": "^8.19.0", "just-scripts": "^1.3.3", - "react-native": "0.82.0-nightly-20250902-9731e8ebc", + "react-native": "0.83.0-nightly-20250917-18cb4edfa", "react-native-platform-override": "0.0.0-canary.1019", "react-native-windows": "^0.0.0-canary.1031", "typescript": "5.0.4" @@ -41,4 +41,4 @@ "engines": { "node": ">= 22" } -} +} \ No newline at end of file diff --git a/packages/@react-native-windows/tester/src/js/examples/FlatList/BaseFlatListExample.windows.js b/packages/@react-native-windows/tester/src/js/examples/FlatList/BaseFlatListExample.windows.js index cc6d7ba26e4..a31cc7ca308 100644 --- a/packages/@react-native-windows/tester/src/js/examples/FlatList/BaseFlatListExample.windows.js +++ b/packages/@react-native-windows/tester/src/js/examples/FlatList/BaseFlatListExample.windows.js @@ -68,7 +68,7 @@ type Props = { }; const BaseFlatListExample: component( - ref: React.RefSetter>, + ref?: React.RefSetter>, ...props: Props ) = ({ref, ...props}: {ref: React.RefSetter>, ...Props}) => { return ( @@ -114,41 +114,23 @@ const ITEM_MARGIN = 8; export const ITEM_HEIGHT: number = ITEM_INNER_HEIGHT + ITEM_MARGIN * 2; const styles = StyleSheet.create({ + container: {flex: 1}, + header: { + backgroundColor: 'white', + fontSize: 32, + }, item: { backgroundColor: 'pink', - paddingHorizontal: 20, height: ITEM_INNER_HEIGHT, - marginVertical: ITEM_MARGIN, justifyContent: 'center', + marginVertical: ITEM_MARGIN, + paddingHorizontal: 20, }, - header: { - fontSize: 32, - backgroundColor: 'white', - }, - title: { - fontSize: 24, - }, - titleContainer: { - position: 'absolute', - top: 45, - left: 0, - right: 0, - justifyContent: 'flex-end', - alignItems: 'center', - backgroundColor: 'gray', - zIndex: 1, - }, - titleText: { - fontSize: 24, - lineHeight: 44, - fontWeight: 'bold', + list: { + flex: 1, }, - testContainer: { - flexDirection: 'row', - justifyContent: 'space-between', - alignItems: 'center', - backgroundColor: '#f2f2f7ff', - height: 40, + offScreen: { + height: 1000, }, output: { fontSize: 12, @@ -159,11 +141,29 @@ const styles = StyleSheet.create({ separatorText: { fontSize: 10, }, - list: { - flex: 1, + testContainer: { + alignItems: 'center', + backgroundColor: '#f2f2f7ff', + flexDirection: 'row', + height: 40, + justifyContent: 'space-between', }, - container: {flex: 1}, - offScreen: { - height: 1000, + title: { + fontSize: 24, + }, + titleContainer: { + alignItems: 'center', + backgroundColor: 'gray', + justifyContent: 'flex-end', + left: 0, + position: 'absolute', + right: 0, + top: 45, + zIndex: 1, + }, + titleText: { + fontSize: 24, + fontWeight: 'bold', + lineHeight: 44, }, }); diff --git a/packages/@react-native-windows/tester/src/js/utils/RNTesterList.windows.js b/packages/@react-native-windows/tester/src/js/utils/RNTesterList.windows.js index 6095f578d71..b7f6b88df51 100644 --- a/packages/@react-native-windows/tester/src/js/utils/RNTesterList.windows.js +++ b/packages/@react-native-windows/tester/src/js/utils/RNTesterList.windows.js @@ -456,6 +456,16 @@ const APIs: Array = ([ category: 'Basic', module: require('../examples/TurboModule/TurboCxxModuleExample'), }, + // Basic check to detect the availability of the modern Performance API. + ...(typeof performance.getEntries === 'function' + ? [ + { + key: 'PerformanceApiExample', + category: 'Basic', + module: require('../examples/Performance/PerformanceApiExample'), + }, + ] + : []), ...RNTesterListFbInternal.APIs, ]: Array).filter(Boolean); diff --git a/packages/@react-native/monorepo/overrides.json b/packages/@react-native/monorepo/overrides.json index be46ac1fa01..d8de4765538 100644 --- a/packages/@react-native/monorepo/overrides.json +++ b/packages/@react-native/monorepo/overrides.json @@ -1,11 +1,11 @@ { - "baseVersion": "0.82.0-nightly-20250902-9731e8ebc", + "baseVersion": "0.83.0-nightly-20250917-18cb4edfa", "overrides": [ { "type": "patch", "file": "package.json", "baseFile": "package.json", - "baseHash": "8b94d93c1a98029715186bcb5286ea56beae0ed0" + "baseHash": "2f4eded3ff0e23b55edcbcebb60857803796f5a4" } ] } \ No newline at end of file diff --git a/packages/@react-native/monorepo/package.json b/packages/@react-native/monorepo/package.json index b0cd6bf5291..30871e59152 100644 --- a/packages/@react-native/monorepo/package.json +++ b/packages/@react-native/monorepo/package.json @@ -46,13 +46,24 @@ "@babel/plugin-transform-regenerator": "^7.24.7", "@babel/preset-env": "^7.25.3", "@babel/preset-flow": "^7.24.7", +<<<<<<< Upstream + "@electron/packager": "^18.3.6", + "@expo/spawn-async": "^1.7.2", "@jest/create-cache-key-function": "^29.7.0", "@microsoft/api-extractor": "^7.52.2", - "@react-native/metro-babel-transformer": "0.82.0-nightly-20250902-9731e8ebc", - "@react-native/metro-config": "0.82.0-nightly-20250902-9731e8ebc", + "@octokit/rest": "^22.0.0", + "@react-native/metro-babel-transformer": "0.82.0-main", + "@react-native/metro-config": "0.82.0-main", +======= + "@jest/create-cache-key-function": "^29.7.0", + "@microsoft/api-extractor": "^7.52.2", + "@react-native/metro-babel-transformer": "0.83.0-nightly-20250917-18cb4edfa", + "@react-native/metro-config": "0.83.0-nightly-20250917-18cb4edfa", +>>>>>>> Override "@tsconfig/node22": "22.0.2", "@types/react": "^19.1.0", "@typescript-eslint/parser": "^8.36.0", + "ansi-regex": "^5.0.0", "ansi-styles": "^4.2.1", "babel-plugin-minify-dead-code-elimination": "^0.5.2", "babel-plugin-syntax-hermes-parser": "0.32.0", @@ -73,8 +84,9 @@ "eslint-plugin-react-native": "^4.0.0", "eslint-plugin-redundant-undefined": "^0.4.0", "eslint-plugin-relay": "^1.8.3", + "fb-dotslash": "0.5.8", "flow-api-translator": "0.32.0", - "flow-bin": "^0.280.0", + "flow-bin": "^0.281.0", "glob": "^7.1.1", "hermes-eslint": "0.32.0", "hermes-transform": "0.32.0", @@ -85,9 +97,10 @@ "jest-diff": "^29.7.0", "jest-junit": "^16.0.0", "jest-snapshot": "^29.7.0", + "jsonc-parser": "2.2.1", "markdownlint-cli2": "^0.17.2", "markdownlint-rule-relative-links": "^3.0.0", - "memfs": "^4.7.7", + "memfs": "^4.38.2", "metro-babel-register": "^0.83.1", "metro-memory-fs": "^0.82.4", "metro-transform-plugins": "^0.83.1", @@ -100,12 +113,12 @@ "react-test-renderer": "19.1.1", "rimraf": "^3.0.2", "shelljs": "^0.8.5", - "signedsource": "^1.0.0", + "signedsource": "^2.0.0", "supports-color": "^7.1.0", "temp-dir": "^2.0.0", "tinybench": "^4.1.0", "typescript": "5.8.3", - "ws": "^6.2.3" + "ws": "^7.5.10" }, "resolutions": { "eslint-plugin-react-hooks": "6.1.0-canary-12bc60f5-20250613", diff --git a/packages/@react-native/tester/js/examples/TextInput/ExampleTextInput.js b/packages/@react-native/tester/js/examples/TextInput/ExampleTextInput.js index 037ea0f9d40..538df46ccae 100644 --- a/packages/@react-native/tester/js/examples/TextInput/ExampleTextInput.js +++ b/packages/@react-native/tester/js/examples/TextInput/ExampleTextInput.js @@ -13,7 +13,7 @@ import React, {useContext} from 'react'; import {StyleSheet, TextInput} from 'react-native'; const ExampleTextInput: component( - ref: React.RefSetter>, + ref?: React.RefSetter>, ...props: React.ElementConfig ) = ({ ref, @@ -30,9 +30,9 @@ const ExampleTextInput: component( {...props} style={[ { - color: theme.LabelColor, backgroundColor: theme.SecondaryGroupedBackgroundColor, borderColor: theme.QuaternaryLabelColor, + color: theme.LabelColor, }, styles.input, props.style, @@ -44,9 +44,9 @@ const ExampleTextInput: component( const styles = StyleSheet.create({ input: { borderWidth: 1, - fontSize: 13, flexGrow: 1, flexShrink: 1, + fontSize: 13, padding: 4, }, }); diff --git a/packages/@react-native/tester/js/utils/RNTesterList.android.js b/packages/@react-native/tester/js/utils/RNTesterList.android.js index a91d9309c9d..3d982eb5d32 100644 --- a/packages/@react-native/tester/js/utils/RNTesterList.android.js +++ b/packages/@react-native/tester/js/utils/RNTesterList.android.js @@ -363,6 +363,16 @@ const APIs: Array = ([ category: 'Basic', module: require('../examples/TurboModule/TurboCxxModuleExample'), }, + // Basic check to detect the availability of the modern Performance API. + ...(typeof performance.getEntries === 'function' + ? [ + { + key: 'PerformanceApiExample', + category: 'Basic', + module: require('../examples/Performance/PerformanceApiExample'), + }, + ] + : []), ...RNTesterListFbInternal.APIs, ]: Array).filter(Boolean); diff --git a/packages/@react-native/tester/js/utils/RNTesterList.ios.js b/packages/@react-native/tester/js/utils/RNTesterList.ios.js index a84724ee89b..dbf2e5b91c2 100644 --- a/packages/@react-native/tester/js/utils/RNTesterList.ios.js +++ b/packages/@react-native/tester/js/utils/RNTesterList.ios.js @@ -337,6 +337,16 @@ const APIs: Array = ([ key: 'XHRExample', module: require('../examples/XHR/XHRExample'), }, + // Basic check to detect the availability of the modern Performance API. + ...(typeof performance.getEntries === 'function' + ? [ + { + key: 'PerformanceApiExample', + category: 'Basic', + module: require('../examples/Performance/PerformanceApiExample'), + }, + ] + : []), ...RNTesterListFbInternal.APIs, ]: Array).filter(Boolean); diff --git a/packages/@react-native/tester/overrides.json b/packages/@react-native/tester/overrides.json index 1804de23d83..7804ff93354 100644 --- a/packages/@react-native/tester/overrides.json +++ b/packages/@react-native/tester/overrides.json @@ -1,5 +1,5 @@ { - "baseVersion": "0.82.0-nightly-20250902-9731e8ebc", + "baseVersion": "0.83.0-nightly-20250917-18cb4edfa", "overrides": [ { "type": "copy", @@ -138,28 +138,28 @@ "type": "copy", "directory": "js/examples/DrawerLayoutAndroid", "baseDirectory": "packages/rn-tester/js/examples/DrawerLayoutAndroid", - "baseHash": "6c0cb892ffc283ad7f3dff057de76490b146883e", + "baseHash": "e7b75e74ce128d84347963ab910239d585f1e4ea", "issue": 4054 }, { "type": "copy", "directory": "js/examples/Experimental", "baseDirectory": "packages/rn-tester/js/examples/Experimental", - "baseHash": "3ae2ed4d6120dea8b317822395530f4edddcf6f1", + "baseHash": "90d7895059bfda9f8c9badfb412609e65b7e8902", "issue": 4054 }, { "type": "copy", "directory": "js/examples/Filter", "baseDirectory": "packages/rn-tester/js/examples/Filter", - "baseHash": "9eb2dab1c611cfd1587a234ec834f59030da9054", + "baseHash": "08fcf4c3e652a2c569f52db516f9cdb08967065a", "issue": 4054 }, { "type": "copy", "directory": "js/examples/FlatList", "baseDirectory": "packages/rn-tester/js/examples/FlatList", - "baseHash": "68baba17c05eeb1f038396bdbbb63c1dfed64f69", + "baseHash": "a320e9a30c2215964837a0acef05eb1e23f37c60", "issue": 4054 }, { @@ -278,7 +278,7 @@ "type": "copy", "directory": "js/examples/Performance", "baseDirectory": "packages/rn-tester/js/examples/Performance", - "baseHash": "408ae7ff893047dc3a187b878fd8ac9c61883547" + "baseHash": "e03913cdeff804265a1c4dc8b5e4b002ba7ef00f" }, { "type": "copy", @@ -375,7 +375,7 @@ "type": "copy", "directory": "js/examples/SectionList", "baseDirectory": "packages/rn-tester/js/examples/SectionList", - "baseHash": "bf3816be6589a5bdc5c81ef7e911ce9569adf61c", + "baseHash": "9ff3083a91d4a633da8304d3edaed4f91a334f96", "issue": 4054 }, { @@ -424,14 +424,14 @@ "type": "copy", "directory": "js/examples/Text", "baseDirectory": "packages/rn-tester/js/examples/Text", - "baseHash": "3c104a4709628d576c22ed0962ae685e715b67a9", + "baseHash": "1190301a021dcd2904b075f382d82169b1f04b91", "issue": 4054 }, { "type": "copy", "file": "js/examples/TextInput/ExampleTextInput.js", "baseFile": "packages/rn-tester/js/examples/TextInput/ExampleTextInput.js", - "baseHash": "07f3b91f5f3295f91da6c3fb23d4d7e2c8381db9", + "baseHash": "c960b92b526c746915e470d1329ddf897a185808", "issue": 14292 }, { @@ -584,14 +584,14 @@ "type": "copy", "file": "js/utils/RNTesterList.android.js", "baseFile": "packages/rn-tester/js/utils/RNTesterList.android.js", - "baseHash": "8cd219abae140e98f9578432954fc9ef62421308", + "baseHash": "aeb0275507e7c508cdf7c2ceec49f9e95ef4e1ec", "issue": 13228 }, { "type": "copy", "file": "js/utils/RNTesterList.ios.js", "baseFile": "packages/rn-tester/js/utils/RNTesterList.ios.js", - "baseHash": "6872f4b3f0d2495a64c33fdd4328272d547f9108", + "baseHash": "a93dea4da7d61b0ad13e1d90f9a0b34dbac57994", "issue": 13228 }, { diff --git a/packages/@react-native/tester/package.json b/packages/@react-native/tester/package.json index 5e2088877aa..3352312dd09 100644 --- a/packages/@react-native/tester/package.json +++ b/packages/@react-native/tester/package.json @@ -26,8 +26,8 @@ "e2e-test-ios": "./scripts/maestro-test-ios.sh" }, "dependencies": { - "@react-native/new-app-screen": "0.82.0-nightly-20250902-9731e8ebc", - "@react-native/popup-menu-android": "0.82.0-nightly-20250902-9731e8ebc", + "@react-native/new-app-screen": "0.83.0-nightly-20250917-18cb4edfa", + "@react-native/popup-menu-android": "0.83.0-nightly-20250917-18cb4edfa", "flow-enums-runtime": "^0.0.6", "invariant": "^2.2.4", "nullthrows": "^1.1.1" diff --git a/packages/@rnw-scripts/babel-react-native-config/package.json b/packages/@rnw-scripts/babel-react-native-config/package.json index 568176391c8..f1ce55b5fc8 100644 --- a/packages/@rnw-scripts/babel-react-native-config/package.json +++ b/packages/@rnw-scripts/babel-react-native-config/package.json @@ -11,16 +11,16 @@ }, "dependencies": { "@babel/core": "^7.25.2", - "@react-native/babel-preset": "0.82.0-nightly-20250902-9731e8ebc", + "@react-native/babel-preset": "0.83.0-nightly-20250917-18cb4edfa", "babel-plugin-transform-flow-enums": "^0.0.2" }, "devDependencies": { "@babel/core": "^7.25.2", - "@react-native/babel-preset": "0.82.0-nightly-20250902-9731e8ebc", + "@react-native/babel-preset": "0.83.0-nightly-20250917-18cb4edfa", "eslint": "^8.19.0", "prettier": "2.8.8" }, "engines": { "node": ">= 22" } -} +} \ No newline at end of file diff --git a/packages/@rnw-scripts/eslint-config/package.json b/packages/@rnw-scripts/eslint-config/package.json index 81020ccddf7..94a72859fa2 100644 --- a/packages/@rnw-scripts/eslint-config/package.json +++ b/packages/@rnw-scripts/eslint-config/package.json @@ -13,7 +13,7 @@ "@babel/core": "^7.25.2", "@babel/eslint-parser": "^7.25.1", "@microsoft/eslint-plugin-sdl": "^0.2.0", - "@react-native/eslint-config": "0.82.0-nightly-20250902-9731e8ebc", + "@react-native/eslint-config": "0.83.0-nightly-20250917-18cb4edfa", "eslint-config-prettier": "^8.5.0", "eslint-plugin-ft-flow": "^2.0.1", "hermes-eslint": "0.23.1" diff --git a/packages/@rnw-scripts/metro-dev-config/package.json b/packages/@rnw-scripts/metro-dev-config/package.json index 9569eb8f116..ca171f1c8c3 100644 --- a/packages/@rnw-scripts/metro-dev-config/package.json +++ b/packages/@rnw-scripts/metro-dev-config/package.json @@ -17,7 +17,7 @@ "lint:fix": "rnw-scripts lint:fix" }, "dependencies": { - "@react-native/metro-config": "0.82.0-nightly-20250902-9731e8ebc", + "@react-native/metro-config": "0.83.0-nightly-20250917-18cb4edfa", "@rnx-kit/metro-config": "^2.1.2", "@rnx-kit/metro-plugin-duplicates-checker": "^3.0.2", "@rnx-kit/metro-serializer": "^2.0.3", @@ -33,4 +33,4 @@ "engines": { "node": ">= 22" } -} +} \ No newline at end of file diff --git a/packages/e2e-test-app-fabric/package.json b/packages/e2e-test-app-fabric/package.json index 158149c93f0..e7b956b6ca3 100644 --- a/packages/e2e-test-app-fabric/package.json +++ b/packages/e2e-test-app-fabric/package.json @@ -20,7 +20,7 @@ "@typescript-eslint/eslint-plugin": "^7.1.1", "@typescript-eslint/parser": "^7.1.1", "react": "^19.1.1", - "react-native": "0.82.0-nightly-20250902-9731e8ebc", + "react-native": "0.83.0-nightly-20250917-18cb4edfa", "react-native-windows": "^0.0.0-canary.1031" }, "devDependencies": { @@ -30,7 +30,7 @@ "@babel/preset-typescript": "^7.8.3", "@babel/runtime": "^7.20.0", "@react-native-community/cli": "20.0.0", - "@react-native/metro-config": "0.82.0-nightly-20250902-9731e8ebc", + "@react-native/metro-config": "0.83.0-nightly-20250917-18cb4edfa", "@react-native-windows/automation": "0.0.0-canary.1031", "@react-native-windows/automation-commands": "0.0.0-canary.1031", "@rnw-scripts/babel-node-config": "2.3.3", @@ -55,4 +55,4 @@ "engines": { "node": ">= 22" } -} +} \ No newline at end of file diff --git a/packages/playground/package.json b/packages/playground/package.json index d7cea1c15e9..7e63e79c49b 100644 --- a/packages/playground/package.json +++ b/packages/playground/package.json @@ -15,14 +15,14 @@ "@typescript-eslint/eslint-plugin": "^7.1.1", "@typescript-eslint/parser": "^7.1.1", "react": "^19.1.1", - "react-native": "0.82.0-nightly-20250902-9731e8ebc", + "react-native": "0.83.0-nightly-20250917-18cb4edfa", "react-native-windows": "^0.0.0-canary.1031" }, "devDependencies": { "@babel/core": "^7.25.2", "@babel/runtime": "^7.20.0", "@react-native-community/cli": "20.0.0", - "@react-native/metro-config": "0.82.0-nightly-20250902-9731e8ebc", + "@react-native/metro-config": "0.83.0-nightly-20250917-18cb4edfa", "@rnw-scripts/babel-react-native-config": "0.0.0", "@rnw-scripts/eslint-config": "1.2.38", "@rnw-scripts/just-task": "2.3.58", @@ -39,4 +39,4 @@ "engines": { "node": ">= 22" } -} +} \ No newline at end of file diff --git a/packages/sample-app-fabric/package.json b/packages/sample-app-fabric/package.json index 25c7f5d119e..5eaca3d7d4a 100644 --- a/packages/sample-app-fabric/package.json +++ b/packages/sample-app-fabric/package.json @@ -17,7 +17,7 @@ "@typescript-eslint/eslint-plugin": "^7.1.1", "@typescript-eslint/parser": "^7.1.1", "react": "^19.1.1", - "react-native": "0.82.0-nightly-20250902-9731e8ebc", + "react-native": "0.83.0-nightly-20250917-18cb4edfa", "react-native-windows": "^0.0.0-canary.1031" }, "devDependencies": { @@ -28,7 +28,7 @@ "@babel/runtime": "^7.20.0", "@jest/globals": "^29.7.0", "@react-native-community/cli": "20.0.0", - "@react-native/metro-config": "0.82.0-nightly-20250902-9731e8ebc", + "@react-native/metro-config": "0.83.0-nightly-20250917-18cb4edfa", "@rnw-scripts/babel-node-config": "2.3.3", "@rnw-scripts/babel-react-native-config": "0.0.0", "@rnw-scripts/eslint-config": "1.2.38", @@ -49,4 +49,4 @@ "engines": { "node": ">=18" } -} +} \ No newline at end of file diff --git a/packages/sample-custom-component/package.json b/packages/sample-custom-component/package.json index d3e5e9714c7..2f2604ad53d 100644 --- a/packages/sample-custom-component/package.json +++ b/packages/sample-custom-component/package.json @@ -22,7 +22,7 @@ "dependencies": { "@types/react": "^19.1.1", "react": "^19.1.1", - "react-native": "0.82.0-nightly-20250902-9731e8ebc", + "react-native": "0.83.0-nightly-20250917-18cb4edfa", "react-native-windows": "^0.0.0-canary.1031" }, "devDependencies": { @@ -32,7 +32,7 @@ "@babel/preset-typescript": "^7.8.3", "@babel/runtime": "^7.20.0", "@react-native-community/cli": "20.0.0", - "@react-native/metro-config": "0.82.0-nightly-20250902-9731e8ebc", + "@react-native/metro-config": "0.83.0-nightly-20250917-18cb4edfa", "@rnw-scripts/babel-node-config": "2.3.3", "@rnw-scripts/babel-react-native-config": "0.0.0", "@rnw-scripts/eslint-config": "1.2.38", @@ -53,4 +53,4 @@ "engines": { "node": ">=18" } -} +} \ No newline at end of file diff --git a/vnext/.flowconfig b/vnext/.flowconfig index a5422e42613..c54b3d6418e 100644 --- a/vnext/.flowconfig +++ b/vnext/.flowconfig @@ -149,11 +149,6 @@ module.system.haste.module_ref_prefix=m# react.runtime=automatic -experimental.only_support_flow_fixme_and_expected_error=true -experimental.require_suppression_with_error_code=true -experimental.invariant_subtyping_error_message_improvement=true -experimental.natural_inference.local_object_literals.followup_fix=true - ban_spread_key_props=true sharedmemory.hash_table_pow=21 @@ -178,4 +173,4 @@ untyped-import untyped-type-import [version] -^0.280.0 +^0.281.0 diff --git a/vnext/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentDescriptor.h b/vnext/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentDescriptor.h index e3df093cb6e..fc547bf36aa 100644 --- a/vnext/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentDescriptor.h +++ b/vnext/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentDescriptor.h @@ -46,7 +46,7 @@ virtual State::Shared createInitialState( ->getMethod("getThemeData"); if (getThemeData( - fabricUIManager, surfaceId, defaultTextInputPaddingArray)) { + fabricUIManager, surfaceId, defaultTextInputPaddingArray) != 0u) { jfloat* defaultTextInputPadding = env->GetFloatArrayElements(defaultTextInputPaddingArray, nullptr); theme.start = defaultTextInputPadding[0]; diff --git a/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/NetworkIOAgent.cpp b/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/NetworkIOAgent.cpp index c5d902a5499..57dadeab4dd 100644 --- a/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/NetworkIOAgent.cpp +++ b/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/NetworkIOAgent.cpp @@ -11,7 +11,7 @@ #include "Base64.h" #include "Utf8.h" -#include +#include #include #include @@ -275,19 +275,19 @@ bool NetworkIOAgent::handleRequest( } if (InspectorFlags::getInstance().getNetworkInspectionEnabled()) { - auto& networkReporter = NetworkReporter::getInstance(); + auto& networkHandler = NetworkHandler::getInstance(); // @cdp Network.enable support is experimental. if (req.method == "Network.enable") { - networkReporter.setFrontendChannel(frontendChannel_); - networkReporter.enableDebugging(); + networkHandler.setFrontendChannel(frontendChannel_); + networkHandler.enable(); frontendChannel_(cdp::jsonResult(req.id)); return true; } // @cdp Network.disable support is experimental. if (req.method == "Network.disable") { - networkReporter.disableDebugging(); + networkHandler.disable(); frontendChannel_(cdp::jsonResult(req.id)); return true; } @@ -500,9 +500,9 @@ void NetworkIOAgent::handleGetResponseBody(const cdp::PreparsedRequest& req) { return; } - auto& networkReporter = NetworkReporter::getInstance(); + auto& networkHandler = NetworkHandler::getInstance(); - if (!networkReporter.isDebuggingEnabled()) { + if (!networkHandler.isEnabled()) { frontendChannel_(cdp::jsonError( requestId, cdp::ErrorCode::InvalidRequest, @@ -511,7 +511,7 @@ void NetworkIOAgent::handleGetResponseBody(const cdp::PreparsedRequest& req) { } auto storedResponse = - networkReporter.getResponseBody(req.params.at("requestId").asString()); + networkHandler.getResponseBody(req.params.at("requestId").asString()); if (!storedResponse) { frontendChannel_(cdp::jsonError( diff --git a/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/network/HttpUtils.cpp b/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/network/HttpUtils.cpp index 8c49b2b8bbf..d15fd55fa84 100644 --- a/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/network/HttpUtils.cpp +++ b/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/network/HttpUtils.cpp @@ -146,7 +146,8 @@ std::string httpReasonPhrase(uint16_t status) { return ""; } -std::string mimeTypeFromHeaders(const Headers& headers) { +std::string mimeTypeFromHeaders( + const std::map& headers) { std::string mimeType = "application/octet-stream"; for (const auto& [name, value] : headers) { diff --git a/vnext/overrides.json b/vnext/overrides.json index a2b7d27d711..0b301a9c722 100644 --- a/vnext/overrides.json +++ b/vnext/overrides.json @@ -8,19 +8,19 @@ "**/__snapshots__/**", "src-win/rntypes/**" ], - "baseVersion": "0.82.0-nightly-20250902-9731e8ebc", + "baseVersion": "0.83.0-nightly-20250917-18cb4edfa", "overrides": [ { "type": "derived", "file": ".flowconfig", "baseFile": ".flowconfig", - "baseHash": "c8bd25d4aa75328a2484c5c7b0b768c188a50b52" + "baseHash": "8a6739338afdae4cbcfad614e33e66ae2948f497" }, { "type": "derived", "file": "Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentDescriptor.h", "baseFile": "packages/react-native/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputComponentDescriptor.h", - "baseHash": "1a38583788a8122593fff5e2fedae3121840b935" + "baseHash": "5fafd9ed2a1b095d5898629ba9d8d1e878dd5561" }, { "type": "derived", @@ -86,14 +86,14 @@ "type": "patch", "file": "ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/network/HttpUtils.cpp", "baseFile": "packages/react-native/ReactCommon/jsinspector-modern/network/HttpUtils.cpp", - "baseHash": "fcec9bc75ff320e964dd8072dab3f0635fe935a5", + "baseHash": "442f763f9a6fc1a72c9eb61ae4c820636378f45b", "issue": 13587 }, { "type": "patch", "file": "ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/NetworkIOAgent.cpp", "baseFile": "packages/react-native/ReactCommon/jsinspector-modern/NetworkIOAgent.cpp", - "baseHash": "898517c74357e110025445fa0698ca7343b16018", + "baseHash": "6a896e631553403f29dfe98b0ddeb21243984f04", "issue": 13587 }, { @@ -231,13 +231,13 @@ "type": "derived", "file": "src-win/index.windows.js", "baseFile": "packages/react-native/index.js", - "baseHash": "88aa62f2d86a810631bcbc871f45c28c53fceec7" + "baseHash": "02a8ea6efd164de036681159f18135cc3393cb21" }, { "type": "derived", "file": "src-win/index.windows.js.flow", "baseFile": "packages/react-native/index.js.flow", - "baseHash": "b3bfc5cc82b448bbfc5b87e0b6e2b4d11f3edde0" + "baseHash": "6d9f0f7e75b7575870821c3fca5db41ba7e14809" }, { "type": "platform", @@ -413,7 +413,7 @@ "type": "derived", "file": "src-win/Libraries/Components/Switch/Switch.windows.js", "baseFile": "packages/react-native/Libraries/Components/Switch/Switch.js", - "baseHash": "c470803da7ac52c64c0a4745a4b41f1af0949a30" + "baseHash": "132a05e2a7c63a4fe99973501013afe4b2794390" }, { "type": "derived", @@ -449,7 +449,7 @@ "type": "derived", "file": "src-win/Libraries/Components/Touchable/TouchableBounce.windows.js", "baseFile": "packages/react-native/Libraries/Components/Touchable/TouchableBounce.js", - "baseHash": "26b3622e95229f4943f2d8a3dfa7782b7425646e" + "baseHash": "dfb47e9e3460324ab7e3ea876849f0ef82f94daf" }, { "type": "patch", @@ -625,7 +625,7 @@ "type": "patch", "file": "src-win/Libraries/Renderer/shims/ReactNativeTypes.windows.js", "baseFile": "packages/react-native/Libraries/Renderer/shims/ReactNativeTypes.js", - "baseHash": "9e91759d01c9a6d459c5781b357533f4ac8727a7", + "baseHash": "333afc05f5a42a5321196f5f7a14d14c8fd5dd0f", "issue": 4578 }, { diff --git a/vnext/package.json b/vnext/package.json index 5ee8ffdb161..0d3b54b0f0e 100644 --- a/vnext/package.json +++ b/vnext/package.json @@ -28,14 +28,14 @@ "@react-native-community/cli-platform-ios": "20.0.0", "@react-native-windows/cli": "0.0.0-canary.283", "@react-native/assets": "1.0.0", - "@react-native/assets-registry": "0.82.0-nightly-20250902-9731e8ebc", - "@react-native/codegen": "0.82.0-nightly-20250902-9731e8ebc", - "@react-native/community-cli-plugin": "0.82.0-nightly-20250902-9731e8ebc", - "@react-native/gradle-plugin": "0.82.0-nightly-20250902-9731e8ebc", - "@react-native/js-polyfills": "0.82.0-nightly-20250902-9731e8ebc", - "@react-native/new-app-screen": "0.82.0-nightly-20250902-9731e8ebc", - "@react-native/normalize-colors": "0.82.0-nightly-20250902-9731e8ebc", - "@react-native/virtualized-lists": "0.82.0-nightly-20250902-9731e8ebc", + "@react-native/assets-registry": "0.83.0-nightly-20250917-18cb4edfa", + "@react-native/codegen": "0.83.0-nightly-20250917-18cb4edfa", + "@react-native/community-cli-plugin": "0.83.0-nightly-20250917-18cb4edfa", + "@react-native/gradle-plugin": "0.83.0-nightly-20250917-18cb4edfa", + "@react-native/js-polyfills": "0.83.0-nightly-20250917-18cb4edfa", + "@react-native/new-app-screen": "0.83.0-nightly-20250917-18cb4edfa", + "@react-native/normalize-colors": "0.83.0-nightly-20250917-18cb4edfa", + "@react-native/virtualized-lists": "0.83.0-nightly-20250917-18cb4edfa", "abort-controller": "^3.0.0", "anser": "^1.4.9", "ansi-regex": "^5.0.0", @@ -68,7 +68,7 @@ "yargs": "^17.6.2" }, "devDependencies": { - "@react-native/metro-config": "0.82.0-nightly-20250902-9731e8ebc", + "@react-native/metro-config": "0.83.0-nightly-20250917-18cb4edfa", "@react-native-windows/codegen": "0.0.0-canary.129", "@rnw-scripts/babel-react-native-config": "0.0.0", "@rnw-scripts/eslint-config": "1.2.38", @@ -84,7 +84,7 @@ "just-scripts": "^1.3.3", "prettier": "2.8.8", "react": "19.1.1", - "react-native": "0.82.0-nightly-20250902-9731e8ebc", + "react-native": "0.83.0-nightly-20250917-18cb4edfa", "react-native-platform-override": "0.0.0-canary.1019", "react-refresh": "^0.14.0", "typescript": "5.0.4" @@ -92,7 +92,7 @@ "peerDependencies": { "@types/react": "^19.1.1", "react": "^19.1.1", - "react-native": "0.82.0-nightly-20250902-9731e8ebc" + "react-native": "0.83.0-nightly-20250917-18cb4edfa" }, "beachball": { "defaultNpmTag": "canary", @@ -150,4 +150,4 @@ "engines": { "node": ">= 22" } -} +} \ No newline at end of file diff --git a/vnext/src-win/Libraries/Components/Switch/Switch.windows.js b/vnext/src-win/Libraries/Components/Switch/Switch.windows.js index 7375db8c974..beee2e58ef8 100644 --- a/vnext/src-win/Libraries/Components/Switch/Switch.windows.js +++ b/vnext/src-win/Libraries/Components/Switch/Switch.windows.js @@ -272,7 +272,7 @@ const Switch: component( disabled, onTintColor: trackColorForTrue, style: StyleSheet.compose( - {height: 31, width: 51}, + {alignSelf: 'flex-start' as const}, StyleSheet.compose( style, ios_backgroundColor == null diff --git a/vnext/src-win/Libraries/Components/Touchable/TouchableBounce.windows.js b/vnext/src-win/Libraries/Components/Touchable/TouchableBounce.windows.js index b2ba024078f..d29d248dcb9 100644 --- a/vnext/src-win/Libraries/Components/Touchable/TouchableBounce.windows.js +++ b/vnext/src-win/Libraries/Components/Touchable/TouchableBounce.windows.js @@ -47,15 +47,14 @@ class TouchableBounce extends React.Component< _createPressabilityConfig(): PressabilityConfig { return { + android_disableSound: this.props.touchSoundDisabled, cancelable: !this.props.rejectResponderTermination, - disabled: this.props.disabled, - hitSlop: this.props.hitSlop, delayLongPress: this.props.delayLongPress, delayPressIn: this.props.delayPressIn, delayPressOut: this.props.delayPressOut, + disabled: this.props.disabled, + hitSlop: this.props.hitSlop, minPressDuration: 0, - pressRectOffset: this.props.pressRetentionOffset, - android_disableSound: this.props.touchSoundDisabled, onBlur: event => { if (Platform.isTV) { this._bounceTo(1, 0.4, 0); @@ -113,6 +112,7 @@ class TouchableBounce extends React.Component< this.props.onPressOut(event); } }, + pressRectOffset: this.props.pressRetentionOffset, }; } @@ -123,10 +123,10 @@ class TouchableBounce extends React.Component< callback?: ?() => void, ) { Animated.spring(this.state.scale, { - toValue, - velocity, bounciness, + toValue, useNativeDriver: true, + velocity, }).start(callback); } @@ -237,6 +237,6 @@ export default (function TouchableBounceWrapper({ }) { return ; } as component( - ref: React.RefSetter, + ref?: React.RefSetter, ...props: $ReadOnly> )); diff --git a/vnext/src-win/Libraries/Renderer/shims/ReactNativeTypes.windows.js b/vnext/src-win/Libraries/Renderer/shims/ReactNativeTypes.windows.js index d17feb9416d..ee6ae134cac 100644 --- a/vnext/src-win/Libraries/Renderer/shims/ReactNativeTypes.windows.js +++ b/vnext/src-win/Libraries/Renderer/shims/ReactNativeTypes.windows.js @@ -7,7 +7,7 @@ * @noformat * @nolint * @flow strict - * @generated SignedSource<> + * @generated SignedSource<> */ import type { @@ -139,6 +139,7 @@ export type RenderRootOptions = { error: mixed, errorInfo: {+componentStack?: ?string}, ) => void, + onDefaultTransitionIndicator?: () => void | (() => void), }; /** diff --git a/vnext/src-win/index.windows.js b/vnext/src-win/index.windows.js index d0e50d1374a..a96d2b267b4 100644 --- a/vnext/src-win/index.windows.js +++ b/vnext/src-win/index.windows.js @@ -66,6 +66,12 @@ module.exports = { get Modal() { return require('./Libraries/Modal/Modal').default; }, + get unstable_NativeText() { + return require('./Libraries/Text/TextNativeComponent').NativeText; + }, + get unstable_NativeView() { + return require('./Libraries/Components/View/ViewNativeComponent').default; + }, get Pressable() { return require('./Libraries/Components/Pressable/Pressable').default; }, diff --git a/vnext/src-win/index.windows.js.flow b/vnext/src-win/index.windows.js.flow index 21c3895d4c7..f7525a51438 100644 --- a/vnext/src-win/index.windows.js.flow +++ b/vnext/src-win/index.windows.js.flow @@ -127,6 +127,8 @@ export {default as Switch} from './Libraries/Components/Switch/Switch'; export type {TextProps} from './Libraries/Text/Text'; export {default as Text} from './Libraries/Text/Text'; +export type {NativeTextProps as unstable_NativeTextProps} from './Libraries/Text/TextNativeComponent'; +export {NativeText as unstable_NativeText} from './Libraries/Text/TextNativeComponent'; export {default as unstable_TextAncestorContext} from './Libraries/Text/TextAncestorContext'; export type { @@ -180,6 +182,7 @@ export type { ViewPropsIOS, } from './Libraries/Components/View/ViewPropTypes'; export {default as View} from './Libraries/Components/View/View'; +export {default as unstable_NativeView} from './Libraries/Components/View/ViewNativeComponent'; export type { ListRenderItemInfo, diff --git a/yarn.lock b/yarn.lock index 67c4e481999..779b950dfe0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2103,6 +2103,11 @@ resolved "https://registry.yarnpkg.com/@react-native/assets-registry/-/assets-registry-0.82.0-nightly-20250902-9731e8ebc.tgz#d32973e28c8b43020e2d5bc08849dec1a1201943" integrity sha512-qhFstF5wk9PuuG7fiKkeWLMcYlySHv4ZvC6SQ3Z9BgXFWJ4dotlzSPlrAkUw4bXgiReneJeZBULt1ebp+gFmsA== +"@react-native/assets-registry@0.83.0-nightly-20250917-18cb4edfa": + version "0.83.0-nightly-20250917-18cb4edfa" + resolved "https://registry.yarnpkg.com/@react-native/assets-registry/-/assets-registry-0.83.0-nightly-20250917-18cb4edfa.tgz#2093768a82222000f831fd9530405c74a63f0f82" + integrity sha512-Qi+ZECOJbhac3wvHljMdteGcnV+WgNa58d7lTF8w3IwcvXQ94pGHoJK9WDJwQXxZkdljgcggSn2VuMXmeUuY2Q== + "@react-native/assets@1.0.0": version "1.0.0" resolved "https://registry.yarnpkg.com/@react-native/assets/-/assets-1.0.0.tgz#c6f9bf63d274bafc8e970628de24986b30a55c8e" @@ -2180,6 +2185,19 @@ nullthrows "^1.1.1" yargs "^17.6.2" +"@react-native/codegen@0.83.0-nightly-20250917-18cb4edfa": + version "0.83.0-nightly-20250917-18cb4edfa" + resolved "https://registry.yarnpkg.com/@react-native/codegen/-/codegen-0.83.0-nightly-20250917-18cb4edfa.tgz#efda65db6a3d7c9833c58e857ff99384d2dfda1d" + integrity sha512-aQDNE+Y68HkZ9L+EXD/n7A8135imdOl1xlO9jea7JfgO6ddedsynsA2I/IAhAd8JkuCJ3mqJvrLmEh3x0XhBaw== + dependencies: + "@babel/core" "^7.25.2" + "@babel/parser" "^7.25.3" + glob "^7.1.1" + hermes-parser "0.32.0" + invariant "^2.2.4" + nullthrows "^1.1.1" + yargs "^17.6.2" + "@react-native/community-cli-plugin@0.82.0-nightly-20250902-9731e8ebc": version "0.82.0-nightly-20250902-9731e8ebc" resolved "https://registry.yarnpkg.com/@react-native/community-cli-plugin/-/community-cli-plugin-0.82.0-nightly-20250902-9731e8ebc.tgz#f4c9f93a0320efdc8df3b48767cb9be182c3b44e" @@ -2193,11 +2211,29 @@ metro-core "^0.83.1" semver "^7.1.3" +"@react-native/community-cli-plugin@0.83.0-nightly-20250917-18cb4edfa": + version "0.83.0-nightly-20250917-18cb4edfa" + resolved "https://registry.yarnpkg.com/@react-native/community-cli-plugin/-/community-cli-plugin-0.83.0-nightly-20250917-18cb4edfa.tgz#dcc9ceda26e6583c8cee8e978a48d5cec8dc84c1" + integrity sha512-rpNGCh33nF7RKI711D0gcVl36mbchDy4ITiPpTCJkdr5x48PzRu7gBNH5zzAyK5gmP45UOEh0C0pQHD7RbwFkg== + dependencies: + "@react-native/dev-middleware" "0.83.0-nightly-20250917-18cb4edfa" + debug "^4.4.0" + invariant "^2.2.4" + metro "^0.83.1" + metro-config "^0.83.1" + metro-core "^0.83.1" + semver "^7.1.3" + "@react-native/debugger-frontend@0.82.0-nightly-20250902-9731e8ebc": version "0.82.0-nightly-20250902-9731e8ebc" resolved "https://registry.yarnpkg.com/@react-native/debugger-frontend/-/debugger-frontend-0.82.0-nightly-20250902-9731e8ebc.tgz#dc4c2529d9efc1acc74bae7c2f66145224955d63" integrity sha512-gyiq14NihG87sAdaz5fU3wTfSpBUElSZPaud5vMuuEJYyaqve3DWJ3cdMf3qsHBoWJBO9c52hDptUgfEN6Rujw== +"@react-native/debugger-frontend@0.83.0-nightly-20250917-18cb4edfa": + version "0.83.0-nightly-20250917-18cb4edfa" + resolved "https://registry.yarnpkg.com/@react-native/debugger-frontend/-/debugger-frontend-0.83.0-nightly-20250917-18cb4edfa.tgz#89768fdb814cd59e1876200dae076f07da110631" + integrity sha512-bHrsNDgKqSLzCsOKeZma6ruckNRHsXzGFBUVnTnW3H6gt87WWdSU2urMEHzfddaXdlUrSeFZLfAlD7nqJcPanw== + "@react-native/debugger-shell@0.82.0-nightly-20250902-9731e8ebc": version "0.82.0-nightly-20250902-9731e8ebc" resolved "https://registry.yarnpkg.com/@react-native/debugger-shell/-/debugger-shell-0.82.0-nightly-20250902-9731e8ebc.tgz#683c040dfb44e3d83e68f001b20c7f3fb04e9626" @@ -2206,6 +2242,14 @@ cross-spawn "^7.0.6" fb-dotslash "0.5.8" +"@react-native/debugger-shell@0.83.0-nightly-20250917-18cb4edfa": + version "0.83.0-nightly-20250917-18cb4edfa" + resolved "https://registry.yarnpkg.com/@react-native/debugger-shell/-/debugger-shell-0.83.0-nightly-20250917-18cb4edfa.tgz#60124f0649e71646c132f52313b9d4f40d21dd07" + integrity sha512-W1XtdrNxRGbhpdtnSku8LNKsLhiKMkkOAyaXPaVFoalWAdB0u7xTbLoH37ErIxDha+QzGem26PyTVz1OhxfeHA== + dependencies: + cross-spawn "^7.0.6" + fb-dotslash "0.5.8" + "@react-native/dev-middleware@0.82.0-nightly-20250902-9731e8ebc": version "0.82.0-nightly-20250902-9731e8ebc" resolved "https://registry.yarnpkg.com/@react-native/dev-middleware/-/dev-middleware-0.82.0-nightly-20250902-9731e8ebc.tgz#b7d97ab775484219527272c2096063761faa2d05" @@ -2224,6 +2268,24 @@ serve-static "^1.16.2" ws "^6.2.3" +"@react-native/dev-middleware@0.83.0-nightly-20250917-18cb4edfa": + version "0.83.0-nightly-20250917-18cb4edfa" + resolved "https://registry.yarnpkg.com/@react-native/dev-middleware/-/dev-middleware-0.83.0-nightly-20250917-18cb4edfa.tgz#d55758d2a04042cb296f95ba9cd23d61f0ea76ba" + integrity sha512-YB7G8hO8YLEM/cRePJmK/zrioxrsKexNa0+RoeEXSnLEPCDT0xIwZQ1aS3y2cSD8ajl8lZXuePSwoZsrUdcbJQ== + dependencies: + "@isaacs/ttlcache" "^1.4.1" + "@react-native/debugger-frontend" "0.83.0-nightly-20250917-18cb4edfa" + "@react-native/debugger-shell" "0.83.0-nightly-20250917-18cb4edfa" + chrome-launcher "^0.15.2" + chromium-edge-launcher "^0.2.0" + connect "^3.6.5" + debug "^4.4.0" + invariant "^2.2.4" + nullthrows "^1.1.1" + open "^7.0.3" + serve-static "^1.16.2" + ws "^7.5.10" + "@react-native/eslint-config@0.82.0-nightly-20250902-9731e8ebc": version "0.82.0-nightly-20250902-9731e8ebc" resolved "https://registry.yarnpkg.com/@react-native/eslint-config/-/eslint-config-0.82.0-nightly-20250902-9731e8ebc.tgz#3fc55b38acbdf34476ad905333e9288a2f344e95" @@ -2252,11 +2314,21 @@ resolved "https://registry.yarnpkg.com/@react-native/gradle-plugin/-/gradle-plugin-0.82.0-nightly-20250902-9731e8ebc.tgz#52d99deba629dfbb2e2c1cbfc15e7f822ff3ee01" integrity sha512-75FxlXhgMveGuTc8X1PMOT6GdUB2ETkT3vPbq1bAqSLrU6CIrWiHEgvD67nc5LBp7oMZbUhZzCryHDM/GuQolg== +"@react-native/gradle-plugin@0.83.0-nightly-20250917-18cb4edfa": + version "0.83.0-nightly-20250917-18cb4edfa" + resolved "https://registry.yarnpkg.com/@react-native/gradle-plugin/-/gradle-plugin-0.83.0-nightly-20250917-18cb4edfa.tgz#9f53ae9cf957a581709712b11f822b05c4b32e46" + integrity sha512-Ifahs2wFl9TDbtcvXcWmYG1552AKbDw4dgf1x6DwWe84Ddf62r9T0g7BReuQ8DZ1pmjMFIX0UTatqbw8z31ixg== + "@react-native/js-polyfills@0.82.0-nightly-20250902-9731e8ebc": version "0.82.0-nightly-20250902-9731e8ebc" resolved "https://registry.yarnpkg.com/@react-native/js-polyfills/-/js-polyfills-0.82.0-nightly-20250902-9731e8ebc.tgz#a4b8961d40a42c8a6aac9a3b28165872e82392a3" integrity sha512-up8CyVI0Q3fguePSbLsibn0hEfB6gFbVWR+6VlaSH7D18oTXoOucQYM61KMdzPPfZ4jvvQaiaumdEF5MlITrqA== +"@react-native/js-polyfills@0.83.0-nightly-20250917-18cb4edfa": + version "0.83.0-nightly-20250917-18cb4edfa" + resolved "https://registry.yarnpkg.com/@react-native/js-polyfills/-/js-polyfills-0.83.0-nightly-20250917-18cb4edfa.tgz#025b9588df0c2d2c8fb62ccd89afd9ea30cb88cd" + integrity sha512-zqEEUqT3GASDhn+Nfxxb6Ts71VRNAOu1zfpFdWzTjUB7HvYvAGLp9tSz9iPeYyTApfFDHAtqWJKXo2DNZVcjLg== + "@react-native/metro-babel-transformer@0.82.0-nightly-20250902-9731e8ebc": version "0.82.0-nightly-20250902-9731e8ebc" resolved "https://registry.yarnpkg.com/@react-native/metro-babel-transformer/-/metro-babel-transformer-0.82.0-nightly-20250902-9731e8ebc.tgz#a6f315af73bc4a9caad05d06d073e7c00cf0b7e3" @@ -2292,6 +2364,11 @@ resolved "https://registry.yarnpkg.com/@react-native/normalize-colors/-/normalize-colors-0.82.0-nightly-20250902-9731e8ebc.tgz#8e97a0b1111d2df29fa625303caf2be342309ab1" integrity sha512-jOBxfHsLoxfKv2KafbeJXMNqfppJOGXIQ1RyqMeqYEbLtr3IG43FI+eJNqjGUEEMineS+1bLZEW2Dj3pgqCACg== +"@react-native/normalize-colors@0.83.0-nightly-20250917-18cb4edfa": + version "0.83.0-nightly-20250917-18cb4edfa" + resolved "https://registry.yarnpkg.com/@react-native/normalize-colors/-/normalize-colors-0.83.0-nightly-20250917-18cb4edfa.tgz#9cff5ff14b390e6d6cb426c24dfbaa80f0c0431a" + integrity sha512-rqPYgFERY7KWU7SUwWIklieyuzCgKNQaSnFVgXyrl5kVBysBChdyRxSc82A5dV04Eh3m9+XwdnwoAoxr4tnzQg== + "@react-native/popup-menu-android@0.82.0-nightly-20250902-9731e8ebc": version "0.82.0-nightly-20250902-9731e8ebc" resolved "https://registry.yarnpkg.com/@react-native/popup-menu-android/-/popup-menu-android-0.82.0-nightly-20250902-9731e8ebc.tgz#6b07c3ac041df2102ee759c7d3cb545115b817c9" @@ -2307,6 +2384,14 @@ invariant "^2.2.4" nullthrows "^1.1.1" +"@react-native/virtualized-lists@0.83.0-nightly-20250917-18cb4edfa": + version "0.83.0-nightly-20250917-18cb4edfa" + resolved "https://registry.yarnpkg.com/@react-native/virtualized-lists/-/virtualized-lists-0.83.0-nightly-20250917-18cb4edfa.tgz#f43e944bbdc6b991073589716c8dc27010195a81" + integrity sha512-fLcKrFcm/jfOgpIcYfj+HdG4po0/i79TLcwAtgRomx49wP/MoXASpPvnhmtVyzxw3Tg4U4B+rIKoXegbc3pDew== + dependencies: + invariant "^2.2.4" + nullthrows "^1.1.1" + "@rnx-kit/align-deps@^2.5.0": version "2.5.5" resolved "https://registry.yarnpkg.com/@rnx-kit/align-deps/-/align-deps-2.5.5.tgz#708b4fd65941699e1ef33c728d34bc568e648b73" @@ -6749,6 +6834,11 @@ hasown@^2.0.2: dependencies: function-bind "^1.1.2" +hermes-compiler@0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/hermes-compiler/-/hermes-compiler-0.0.0.tgz#8d9f6a0b2740ce34d71258fec684e7b6bfd97efa" + integrity sha512-boVFutx6ME/Km2mB6vvsQcdnazEYYI/jV1pomx1wcFUG/EVqTkr5CU0CW9bKipOA/8Hyu3NYwW3THg2Q1kNCfA== + hermes-eslint@0.23.1: version "0.23.1" resolved "https://registry.yarnpkg.com/hermes-eslint/-/hermes-eslint-0.23.1.tgz#e0801e58bd4a70f01b0b0659805f315ab7ea6691" @@ -10350,19 +10440,19 @@ react-native-platform-override@0.0.0-canary.1017: upath "^1.2.0" yargs "^16.2.0" -react-native@0.82.0-nightly-20250902-9731e8ebc: - version "0.82.0-nightly-20250902-9731e8ebc" - resolved "https://registry.yarnpkg.com/react-native/-/react-native-0.82.0-nightly-20250902-9731e8ebc.tgz#770f757718c1ab4430ca9777768bb1052fccaa20" - integrity sha512-++DWuJklDLbbAz+kdFTinjvNK5tUBevZKbUxwsyw3nA6DgPbgS/N+VdQyrpYSqevXkAzcOKvDLVIX41cS9DOSw== +react-native@0.83.0-nightly-20250917-18cb4edfa: + version "0.83.0-nightly-20250917-18cb4edfa" + resolved "https://registry.yarnpkg.com/react-native/-/react-native-0.83.0-nightly-20250917-18cb4edfa.tgz#5502b8c21675f6d9031e9637538c597f378919b3" + integrity sha512-eMMVWbw/grpV8ief7Xiw8es1ACsFkLd64Hd7zxvoN1lj9khMMU57XCUDNMplT8ErpooRsXsc1b5ZFE/qbswQRw== dependencies: "@jest/create-cache-key-function" "^29.7.0" - "@react-native/assets-registry" "0.82.0-nightly-20250902-9731e8ebc" - "@react-native/codegen" "0.82.0-nightly-20250902-9731e8ebc" - "@react-native/community-cli-plugin" "0.82.0-nightly-20250902-9731e8ebc" - "@react-native/gradle-plugin" "0.82.0-nightly-20250902-9731e8ebc" - "@react-native/js-polyfills" "0.82.0-nightly-20250902-9731e8ebc" - "@react-native/normalize-colors" "0.82.0-nightly-20250902-9731e8ebc" - "@react-native/virtualized-lists" "0.82.0-nightly-20250902-9731e8ebc" + "@react-native/assets-registry" "0.83.0-nightly-20250917-18cb4edfa" + "@react-native/codegen" "0.83.0-nightly-20250917-18cb4edfa" + "@react-native/community-cli-plugin" "0.83.0-nightly-20250917-18cb4edfa" + "@react-native/gradle-plugin" "0.83.0-nightly-20250917-18cb4edfa" + "@react-native/js-polyfills" "0.83.0-nightly-20250917-18cb4edfa" + "@react-native/normalize-colors" "0.83.0-nightly-20250917-18cb4edfa" + "@react-native/virtualized-lists" "0.83.0-nightly-20250917-18cb4edfa" abort-controller "^3.0.0" anser "^1.4.9" ansi-regex "^5.0.0" @@ -10372,6 +10462,7 @@ react-native@0.82.0-nightly-20250902-9731e8ebc: commander "^12.0.0" flow-enums-runtime "^0.0.6" glob "^7.1.1" + hermes-compiler "0.0.0" invariant "^2.2.4" jest-environment-node "^29.7.0" memoize-one "^5.0.0" @@ -10387,7 +10478,7 @@ react-native@0.82.0-nightly-20250902-9731e8ebc: semver "^7.1.3" stacktrace-parser "^0.1.10" whatwg-fetch "^3.0.0" - ws "^6.2.3" + ws "^7.5.10" yargs "^17.6.2" react-refresh@^0.14.0: From 9b40dac70b27ec2e5c3d0449bca50c841764e413 Mon Sep 17 00:00:00 2001 From: vineethkuttan <66076509+vineethkuttan@users.noreply.github.com> Date: Tue, 10 Feb 2026 12:20:39 +0530 Subject: [PATCH 03/13] resolve conflicts --- .../react-native-win32/src-win/index.win32.js | 10 ++++------ packages/@react-native/monorepo/package.json | 7 ------- 2 files changed, 4 insertions(+), 13 deletions(-) diff --git a/packages/@office-iss/react-native-win32/src-win/index.win32.js b/packages/@office-iss/react-native-win32/src-win/index.win32.js index 56dbf2db029..7587da39fe5 100644 --- a/packages/@office-iss/react-native-win32/src-win/index.win32.js +++ b/packages/@office-iss/react-native-win32/src-win/index.win32.js @@ -71,6 +71,8 @@ import typeof VirtualizedList from './Libraries/Lists/VirtualizedList'; import typeof VirtualizedSectionList from './Libraries/Lists/VirtualizedSectionList'; import typeof LogBox from './Libraries/LogBox/LogBox'; import typeof Modal from './Libraries/Modal/Modal'; +import typeof unstable_NativeText from './Libraries/Text/TextNativeComponent'; +import typeof unstable_NativeView from './Libraries/Components/View/ViewNativeComponent'; // $FlowFixMe[invalid-exported-annotation] import typeof NativeDialogManagerAndroid from './Libraries/NativeModules/specs/NativeDialogManagerAndroid'; import typeof * as NativeComponentRegistry from './Libraries/NativeComponent/NativeComponentRegistry'; @@ -154,17 +156,13 @@ module.exports = { get Modal(): Modal { return require('./Libraries/Modal/Modal').default; }, -<<<<<<< Upstream - get unstable_NativeText() { + get unstable_NativeText() : unstable_NativeText { return require('./Libraries/Text/TextNativeComponent').NativeText; }, - get unstable_NativeView() { + get unstable_NativeView() : unstable_NativeView{ return require('./Libraries/Components/View/ViewNativeComponent').default; }, - get Pressable() { -======= get Pressable(): Pressable { ->>>>>>> Override return require('./Libraries/Components/Pressable/Pressable').default; }, // $FlowFixMe[value-as-type] diff --git a/packages/@react-native/monorepo/package.json b/packages/@react-native/monorepo/package.json index 30871e59152..acbb0c4fe8b 100644 --- a/packages/@react-native/monorepo/package.json +++ b/packages/@react-native/monorepo/package.json @@ -46,20 +46,13 @@ "@babel/plugin-transform-regenerator": "^7.24.7", "@babel/preset-env": "^7.25.3", "@babel/preset-flow": "^7.24.7", -<<<<<<< Upstream "@electron/packager": "^18.3.6", "@expo/spawn-async": "^1.7.2", "@jest/create-cache-key-function": "^29.7.0", "@microsoft/api-extractor": "^7.52.2", "@octokit/rest": "^22.0.0", - "@react-native/metro-babel-transformer": "0.82.0-main", - "@react-native/metro-config": "0.82.0-main", -======= - "@jest/create-cache-key-function": "^29.7.0", - "@microsoft/api-extractor": "^7.52.2", "@react-native/metro-babel-transformer": "0.83.0-nightly-20250917-18cb4edfa", "@react-native/metro-config": "0.83.0-nightly-20250917-18cb4edfa", ->>>>>>> Override "@tsconfig/node22": "22.0.2", "@types/react": "^19.1.0", "@typescript-eslint/parser": "^8.36.0", From 3371e20c3421204365b4117011e67c6ae3049e3e Mon Sep 17 00:00:00 2001 From: vineethkuttan <66076509+vineethkuttan@users.noreply.github.com> Date: Tue, 10 Feb 2026 12:42:50 +0530 Subject: [PATCH 04/13] validate override fix --- .../DrawerLayoutAndroidExample.js | 1 - .../PointerEventPointerOverOut.js | 1 - .../js/examples/Filter/FilterExample.js | 64 ++++- .../examples/FlatList/BaseFlatListExample.js | 70 ++--- .../Performance/PerformanceApiExample.js | 264 ++++++++++++++++++ .../SectionList/SectionListBaseExample.js | 40 +-- .../js/examples/Text/TextExample.ios.js | 44 +-- 7 files changed, 394 insertions(+), 90 deletions(-) create mode 100644 packages/@react-native/tester/js/examples/Performance/PerformanceApiExample.js diff --git a/packages/@react-native/tester/js/examples/DrawerLayoutAndroid/DrawerLayoutAndroidExample.js b/packages/@react-native/tester/js/examples/DrawerLayoutAndroid/DrawerLayoutAndroidExample.js index 5e70b342aa4..693ebd66044 100644 --- a/packages/@react-native/tester/js/examples/DrawerLayoutAndroid/DrawerLayoutAndroidExample.js +++ b/packages/@react-native/tester/js/examples/DrawerLayoutAndroid/DrawerLayoutAndroidExample.js @@ -48,7 +48,6 @@ const Drawer = () => { return (