From 1a15bdd1bae3a903869875156b22dfc4d2106abb Mon Sep 17 00:00:00 2001 From: Abhijeet Jha <74712637+iamAbhi-916@users.noreply.github.com> Date: Fri, 26 Dec 2025 11:46:50 +0530 Subject: [PATCH 01/30] update @react-native-community/template nearest to nightly 0.82.0-nightly-20250902-9731e8ebc --- packages/@rnw-scripts/integrate-rn/package.json | 2 +- vnext/Scripts/creaternwapp.cmd | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/@rnw-scripts/integrate-rn/package.json b/packages/@rnw-scripts/integrate-rn/package.json index bb1cd23e8a2..08abbf7530a 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-2025819-246871d", + "@react-native-community/template": "0.82.0-nightly-202591-d2a0bee", "@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", diff --git a/vnext/Scripts/creaternwapp.cmd b/vnext/Scripts/creaternwapp.cmd index d7b32ccb0af..5004b096c24 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-2025819-246871d" + set RNCLI_TEMPLATE=--template "@react-native-community/template@0.82.0-nightly-202591-d2a0bee" ) @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 From 4217248098f9c086b02f9f81450e245141d1d1bf Mon Sep 17 00:00:00 2001 From: Abhijeet Jha <74712637+iamAbhi-916@users.noreply.github.com> Date: Fri, 26 Dec 2025 12:00:07 +0530 Subject: [PATCH 02/30] Commits with conflicts --- .../react-native-win32-tester/overrides.json | 2 +- .../react-native-win32-tester/package.json | 4 +- .../react-native-win32/.flowconfig | 7 +- .../react-native-win32/overrides.json | 14 +- .../react-native-win32/package.json | 32 +- .../Components/TextInput/TextInput.win32.js | 9 + .../TextInput/TextInputState.win32.js | 2 +- .../src-win/Libraries/Image/Image.win32.js | 20 + .../src-win/Libraries/Text/Text.win32.js | 32 ++ .../animated/NativeAnimatedHelper.win32.js | 6 +- .../automation-channel/package.json | 2 +- .../tester/overrides.json | 4 +- .../@react-native-windows/tester/package.json | 6 +- .../Text/TextSharedExamples.windows.js | 14 +- .../@react-native/monorepo/overrides.json | 4 +- packages/@react-native/monorepo/package.json | 9 +- packages/@react-native/tester/overrides.json | 26 +- packages/@react-native/tester/package.json | 2 +- .../babel-react-native-config/package.json | 6 +- .../@rnw-scripts/eslint-config/package.json | 2 +- .../metro-dev-config/package.json | 4 +- .../@rnw-scripts/promote-release/package.json | 2 +- packages/e2e-test-app-fabric/package.json | 8 +- packages/playground/package.json | 8 +- .../src/e2etest/FileSystemRepository.test.ts | 4 +- .../src/test/OverrideFactory.test.ts | 10 +- packages/sample-app-fabric/package.json | 10 +- packages/sample-custom-component/package.json | 8 +- vnext/.flowconfig | 7 +- .../cxxreact/NativeToJsBridge.cpp | 4 +- .../jsi/jsi/test/testlib.cpp | 110 ++++++ .../components/view/AccessibilityPrimitives.h | 32 +- .../view/accessibilityPropsConversions.h | 56 +++ .../renderer/components/view/conversions.h | 4 +- .../react/renderer/imagemanager/primitives.h | 18 +- vnext/overrides.json | 30 +- vnext/package.json | 32 +- .../ScrollView/ScrollView.windows.js | 14 +- .../Components/TextInput/TextInput.windows.js | 9 + .../TextInput/TextInputState.windows.js | 2 +- .../src-win/Libraries/Image/Image.windows.js | 10 +- vnext/src-win/Libraries/Text/Text.windows.js | 29 ++ vnext/src-win/index.windows.js.flow | 1 + .../ReactNativeFeatureFlagsBase.js | 8 +- yarn.lock | 344 +++++++----------- 45 files changed, 584 insertions(+), 383 deletions(-) diff --git a/packages/@office-iss/react-native-win32-tester/overrides.json b/packages/@office-iss/react-native-win32-tester/overrides.json index 3474af7afbd..cabcb17484a 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-20250821-0ef21bf8a", + "baseVersion": "0.82.0-nightly-20250902-9731e8ebc", "overrides": [ { "type": "patch", diff --git a/packages/@office-iss/react-native-win32-tester/package.json b/packages/@office-iss/react-native-win32-tester/package.json index 3bd78cb93e6..26a7aca6191 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.303", "react": "19.1.0", - "react-native": "0.82.0-nightly-20250821-0ef21bf8a" + "react-native": "0.82.0-nightly-20250902-9731e8ebc" }, "devDependencies": { "@office-iss/react-native-win32": "^0.0.0-canary.303", @@ -30,7 +30,7 @@ "@types/node": "^22.14.0", "eslint": "^8.19.0", "just-scripts": "^1.3.3", - "react-native": "0.82.0-nightly-20250821-0ef21bf8a", + "react-native": "0.82.0-nightly-20250902-9731e8ebc", "react-native-platform-override": "0.0.0-canary.1017", "typescript": "5.0.4" }, diff --git a/packages/@office-iss/react-native-win32/.flowconfig b/packages/@office-iss/react-native-win32/.flowconfig index 2aaec77e9de..9e3be1dca3e 100644 --- a/packages/@office-iss/react-native-win32/.flowconfig +++ b/packages/@office-iss/react-native-win32/.flowconfig @@ -150,7 +150,10 @@ module.system.haste.module_ref_prefix=m# react.runtime=automatic -experimental.error_code_migration=new +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 @@ -177,4 +180,4 @@ untyped-import untyped-type-import [version] -^0.279.0 +^0.280.0 diff --git a/packages/@office-iss/react-native-win32/overrides.json b/packages/@office-iss/react-native-win32/overrides.json index 97482dbd72b..08a01083799 100644 --- a/packages/@office-iss/react-native-win32/overrides.json +++ b/packages/@office-iss/react-native-win32/overrides.json @@ -7,13 +7,13 @@ "**/__snapshots__/**", "src-win/rntypes/**" ], - "baseVersion": "0.82.0-nightly-20250821-0ef21bf8a", + "baseVersion": "0.82.0-nightly-20250902-9731e8ebc", "overrides": [ { "type": "derived", "file": ".flowconfig", "baseFile": ".flowconfig", - "baseHash": "56b1b6a6ecee3c54f2c63eadd6bf5d67b11f5cd9" + "baseHash": "c8bd25d4aa75328a2484c5c7b0b768c188a50b52" }, { "type": "derived", @@ -114,13 +114,13 @@ "type": "derived", "file": "src-win/Libraries/Components/TextInput/TextInput.win32.js", "baseFile": "packages/react-native/Libraries/Components/TextInput/TextInput.js", - "baseHash": "ed5d48ce62056182bf81dfa2d22d511d611d5201" + "baseHash": "547fa57cd844cece1f4401b93be75b2edd2a757f" }, { "type": "patch", "file": "src-win/Libraries/Components/TextInput/TextInputState.win32.js", "baseFile": "packages/react-native/Libraries/Components/TextInput/TextInputState.js", - "baseHash": "6ed06ca68066b0cdbaa28a2e5f1fe1b6d9d62f63" + "baseHash": "e310687c98b6de40bfe9d939639de566a91fca85" }, { "type": "platform", @@ -236,7 +236,7 @@ "type": "derived", "file": "src-win/Libraries/Image/Image.win32.js", "baseFile": "packages/react-native/Libraries/Image/Image.ios.js", - "baseHash": "5d62f4a6c4edfe3007eb3b80704a1dfb68e5ff8a", + "baseHash": "be81d302b8f2d64ddf7a52bd30fbcb47d18741b5", "issue": 4320 }, { @@ -425,7 +425,7 @@ "type": "derived", "file": "src-win/Libraries/Text/Text.win32.js", "baseFile": "packages/react-native/Libraries/Text/Text.js", - "baseHash": "14367e55fca8889783f7dea94ec2c09205960c3c" + "baseHash": "59bf5757acc083a749a38173b3610529b27ef4fb" }, { "type": "derived", @@ -497,7 +497,7 @@ "type": "patch", "file": "src-win/src/private/animated/NativeAnimatedHelper.win32.js", "baseFile": "packages/react-native/src/private/animated/NativeAnimatedHelper.js", - "baseHash": "c3fdc3d1e9879c6fe03a1a5caad7b02b386ddcde", + "baseHash": "14407780e54e66515159aed1a51cee154b1d5339", "issue": 11041 }, { diff --git a/packages/@office-iss/react-native-win32/package.json b/packages/@office-iss/react-native-win32/package.json index 4d80a087a9d..f241d148c71 100644 --- a/packages/@office-iss/react-native-win32/package.json +++ b/packages/@office-iss/react-native-win32/package.json @@ -30,19 +30,19 @@ "@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-20250821-0ef21bf8a", - "@react-native/codegen": "0.82.0-nightly-20250821-0ef21bf8a", - "@react-native/community-cli-plugin": "0.82.0-nightly-20250821-0ef21bf8a", - "@react-native/gradle-plugin": "0.82.0-nightly-20250821-0ef21bf8a", - "@react-native/js-polyfills": "0.82.0-nightly-20250821-0ef21bf8a", - "@react-native/normalize-colors": "0.82.0-nightly-20250821-0ef21bf8a", - "@react-native/virtualized-lists": "0.82.0-nightly-20250821-0ef21bf8a", + "@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", "abort-controller": "^3.0.0", "anser": "^1.4.9", "ansi-regex": "^5.0.0", "art": "^0.10.0", "babel-jest": "^29.7.0", - "babel-plugin-syntax-hermes-parser": "0.28.1", + "babel-plugin-syntax-hermes-parser": "0.32.0", "base64-js": "^1.5.1", "chalk": "^4.0.0", "commander": "^12.0.0", @@ -52,14 +52,14 @@ "invariant": "^2.2.4", "jest-environment-node": "^29.7.0", "memoize-one": "^5.0.0", - "metro-runtime": "^0.82.2", - "metro-source-map": "^0.82.2", + "metro-runtime": "^0.83.1", + "metro-source-map": "^0.83.1", "mkdirp": "^0.5.1", "nullthrows": "^1.1.1", "pretty-format": "^29.7.0", "promise": "^8.3.0", "react-clone-referenced-element": "^1.0.1", - "react-devtools-core": "^6.1.1", + "react-devtools-core": "^6.1.5", "react-refresh": "^0.14.0", "regenerator-runtime": "^0.13.2", "scheduler": "0.26.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-20250821-0ef21bf8a", + "@react-native/metro-config": "0.82.0-nightly-20250902-9731e8ebc", "@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.0", - "react-native": "0.82.0-nightly-20250821-0ef21bf8a", + "react-native": "0.82.0-nightly-20250902-9731e8ebc", "react-native-platform-override": "0.0.0-canary.1017", "typescript": "5.0.4" }, "peerDependencies": { - "@types/react": "^19.1.0", - "react": "^19.1.0", - "react-native": "0.82.0-nightly-20250821-0ef21bf8a" + "@types/react": "^19.1.1", + "react": "^19.1.1", + "react-native": "0.82.0-nightly-20250902-9731e8ebc" }, "beachball": { "defaultNpmTag": "canary", diff --git a/packages/@office-iss/react-native-win32/src-win/Libraries/Components/TextInput/TextInput.win32.js b/packages/@office-iss/react-native-win32/src-win/Libraries/Components/TextInput/TextInput.win32.js index 43cbc3cd51b..dcde270eca5 100644 --- a/packages/@office-iss/react-native-win32/src-win/Libraries/Components/TextInput/TextInput.win32.js +++ b/packages/@office-iss/react-native-win32/src-win/Libraries/Components/TextInput/TextInput.win32.js @@ -785,6 +785,9 @@ function InternalTextInput(props: TextInputProps): React.Node { flattenedStyle.paddingVertical == null && flattenedStyle.paddingTop == null)); + const _accessibilityElementsHidden = + props['aria-hidden'] ?? props.accessibilityElementsHidden; + textInput = ( +======= {analyticTag => { return ( @@ -219,6 +238,7 @@ let BaseImage: AbstractImageIOS = ({ ); }} +>>>>>>> Override ); }} diff --git a/packages/@office-iss/react-native-win32/src-win/Libraries/Text/Text.win32.js b/packages/@office-iss/react-native-win32/src-win/Libraries/Text/Text.win32.js index c93440f92e9..43e1dae81ae 100644 --- a/packages/@office-iss/react-native-win32/src-win/Libraries/Text/Text.win32.js +++ b/packages/@office-iss/react-native-win32/src-win/Libraries/Text/Text.win32.js @@ -51,6 +51,7 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) { 'aria-checked': ariaChecked, 'aria-disabled': ariaDisabled, 'aria-expanded': ariaExpanded, + 'aria-hidden': ariaHidden, 'aria-label': ariaLabel, 'aria-selected': ariaSelected, // #[ Win32 @@ -163,6 +164,13 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) { _accessibilityState.disabled = _disabled; } + if (ariaHidden !== undefined) { + processedProps.accessibilityElementsHidden = ariaHidden; + if (ariaHidden === true) { + processedProps.importantForAccessibility = 'no-hide-descendants'; + } + } + const _accessible = Platform.select({ ios: accessible !== false, android: @@ -367,6 +375,8 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) { ) = ({ ref: forwardedRef, accessible, + accessibilityElementsHidden, + importantForAccessibility, accessibilityLabel, accessibilityState, allowFontScaling, @@ -374,6 +384,7 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) { 'aria-checked': ariaChecked, 'aria-disabled': ariaDisabled, 'aria-expanded': ariaExpanded, + 'aria-hidden': ariaHidden, 'aria-label': ariaLabel, 'aria-selected': ariaSelected, //#[ Win32 @@ -471,6 +482,13 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) { const _accessibilityStateDisabled = _accessibilityState?.disabled; const _disabled = disabled ?? _accessibilityStateDisabled; + let _accessibilityElementsHidden = + ariaHidden ?? accessibilityElementsHidden; + let _importantForAccessibility = importantForAccessibility; + if (ariaHidden === true) { + _importantForAccessibility = 'no-hide-descendants'; + } + const isPressable = (onPress != null || onLongPress != null || @@ -539,8 +557,12 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) { ref={forwardedRef} textProps={{ ...restProps, + accessibilityElementsHidden: _accessibilityElementsHidden, accessibilityLabel: _accessibilityLabel, accessibilityState: _accessibilityState, +<<<<<<< Upstream + importantForAccessibility: _importantForAccessibility, +======= // #[ Win32 accessibilityControls: _accessibilityControls, accessibilityDescribedBy: _accessibilityDescribedBy, @@ -549,6 +571,7 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) { accessibilityPositionInSet: _accessibilityPositionInSet, accessibilitySetSize: _accessibilitySetSize, // #] Win32 +>>>>>>> Override nativeID: _nativeID, numberOfLines: _numberOfLines, selectable: _selectable, @@ -578,8 +601,12 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) { return ( >>>>>> Override nativeID={_nativeID} numberOfLines={_numberOfLines} ref={forwardedRef} @@ -627,12 +655,14 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) { ref={forwardedRef} textProps={{ ...restProps, + accessibilityElementsHidden: _accessibilityElementsHidden, accessibilityLabel: _accessibilityLabel, accessibilityState: _accessibilityState, accessible: _accessible, allowFontScaling: allowFontScaling !== false, disabled: _disabled, ellipsizeMode: ellipsizeMode ?? 'tail', + importantForAccessibility: _importantForAccessibility, nativeID: _nativeID, numberOfLines: _numberOfLines, selectable: _selectable, @@ -660,12 +690,14 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) { nativeText = ( void, createAnimatedNode(tag: number, config: AnimatedNodeConfig): void { - NativeOperations.createAnimatedNode(tag, config); + if (config.disableBatchingForNativeCreate) { + NativeAnimatedModule?.createAnimatedNode(tag, config); + } else { + NativeOperations.createAnimatedNode(tag, config); + } }, updateAnimatedNodeConfig(tag: number, config: AnimatedNodeConfig): void { diff --git a/packages/@react-native-windows/automation-channel/package.json b/packages/@react-native-windows/automation-channel/package.json index b393e223b51..98082fb3d57 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.0", - "react-native": "0.82.0-nightly-20250821-0ef21bf8a", + "react-native": "0.82.0-nightly-20250902-9731e8ebc", "react-native-windows": "^0.0.0-canary.1024", "typescript": "5.0.4" }, diff --git a/packages/@react-native-windows/tester/overrides.json b/packages/@react-native-windows/tester/overrides.json index 0be760796ab..19a2a15dc7e 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-20250821-0ef21bf8a", + "baseVersion": "0.82.0-nightly-20250902-9731e8ebc", "overrides": [ { "type": "copy", @@ -117,7 +117,7 @@ "type": "patch", "file": "src/js/examples/Text/TextSharedExamples.windows.js", "baseFile": "packages/rn-tester/js/examples/Text/TextSharedExamples.js", - "baseHash": "2f043ce1ae7f2f82c0a913247da51777dd53979b", + "baseHash": "da71056f942bf857b29702890d81f65cf49dc17e", "issue": 15125 }, { diff --git a/packages/@react-native-windows/tester/package.json b/packages/@react-native-windows/tester/package.json index 816404be67e..0d4ea136c93 100644 --- a/packages/@react-native-windows/tester/package.json +++ b/packages/@react-native-windows/tester/package.json @@ -19,13 +19,13 @@ "peerDependencies": { "@react-native-picker/picker": "2.11.0", "react": "19.1.0", - "react-native": "0.82.0-nightly-20250821-0ef21bf8a", + "react-native": "0.82.0-nightly-20250902-9731e8ebc", "react-native-windows": "^0.0.0-canary.1024", "react-native-xaml": "^0.0.80" }, "devDependencies": { - "@react-native/tester": "0.82.0-main", "@react-native/new-app-screen": "0.82.0-nightly-20250821-0ef21bf8a", + "@react-native/tester": "0.82.0-main", "@rnw-scripts/babel-react-native-config": "0.0.0", "@rnw-scripts/eslint-config": "1.2.38", "@rnw-scripts/just-task": "2.3.58", @@ -33,7 +33,7 @@ "@types/node": "^22.14.0", "eslint": "^8.19.0", "just-scripts": "^1.3.3", - "react-native": "0.82.0-nightly-20250821-0ef21bf8a", + "react-native": "0.82.0-nightly-20250902-9731e8ebc", "react-native-platform-override": "0.0.0-canary.1017", "react-native-windows": "^0.0.0-canary.1024", "typescript": "5.0.4" diff --git a/packages/@react-native-windows/tester/src/js/examples/Text/TextSharedExamples.windows.js b/packages/@react-native-windows/tester/src/js/examples/Text/TextSharedExamples.windows.js index f4e1224f370..9ed9b4a1833 100644 --- a/packages/@react-native-windows/tester/src/js/examples/Text/TextSharedExamples.windows.js +++ b/packages/@react-native-windows/tester/src/js/examples/Text/TextSharedExamples.windows.js @@ -28,11 +28,15 @@ function InlineView(props: { Child Child - {props !== null && props.long === true && ( - - aaaa a aaaa aaaaaa aaa a a a aaaaa sdsds dsdSAD asd ASDasd ASDas - - )} + { + /* $FlowFixMe[invalid-compare] Error discovered during Constant + * Condition roll out. See https://fburl.com/workplace/5whu3i34. */ + props !== null && props.long === true && ( + + aaaa a aaaa aaaaaa aaa a a a aaaaa sdsds dsdSAD asd ASDasd ASDas + + ) + } ); diff --git a/packages/@react-native/monorepo/overrides.json b/packages/@react-native/monorepo/overrides.json index f12f34f8531..be46ac1fa01 100644 --- a/packages/@react-native/monorepo/overrides.json +++ b/packages/@react-native/monorepo/overrides.json @@ -1,11 +1,11 @@ { - "baseVersion": "0.82.0-nightly-20250821-0ef21bf8a", + "baseVersion": "0.82.0-nightly-20250902-9731e8ebc", "overrides": [ { "type": "patch", "file": "package.json", "baseFile": "package.json", - "baseHash": "72cf43d108893a4e22658d5f187c6c49d6b38608" + "baseHash": "8b94d93c1a98029715186bcb5286ea56beae0ed0" } ] } \ No newline at end of file diff --git a/packages/@react-native/monorepo/package.json b/packages/@react-native/monorepo/package.json index 3ae8d2270eb..b0cd6bf5291 100644 --- a/packages/@react-native/monorepo/package.json +++ b/packages/@react-native/monorepo/package.json @@ -48,8 +48,8 @@ "@babel/preset-flow": "^7.24.7", "@jest/create-cache-key-function": "^29.7.0", "@microsoft/api-extractor": "^7.52.2", - "@react-native/metro-babel-transformer": "0.82.0-nightly-20250821-0ef21bf8a", - "@react-native/metro-config": "0.82.0-nightly-20250821-0ef21bf8a", + "@react-native/metro-babel-transformer": "0.82.0-nightly-20250902-9731e8ebc", + "@react-native/metro-config": "0.82.0-nightly-20250902-9731e8ebc", "@tsconfig/node22": "22.0.2", "@types/react": "^19.1.0", "@typescript-eslint/parser": "^8.36.0", @@ -74,7 +74,7 @@ "eslint-plugin-redundant-undefined": "^0.4.0", "eslint-plugin-relay": "^1.8.3", "flow-api-translator": "0.32.0", - "flow-bin": "^0.279.0", + "flow-bin": "^0.280.0", "glob": "^7.1.1", "hermes-eslint": "0.32.0", "hermes-transform": "0.32.0", @@ -83,13 +83,12 @@ "jest": "^29.7.0", "jest-config": "^29.7.0", "jest-diff": "^29.7.0", - "jest-junit": "^10.0.0", + "jest-junit": "^16.0.0", "jest-snapshot": "^29.7.0", "markdownlint-cli2": "^0.17.2", "markdownlint-rule-relative-links": "^3.0.0", "memfs": "^4.7.7", "metro-babel-register": "^0.83.1", - "metro-transform-plugins": "^0.83.1", "metro-memory-fs": "^0.82.4", "metro-transform-plugins": "^0.83.1", "micromatch": "^4.0.4", diff --git a/packages/@react-native/tester/overrides.json b/packages/@react-native/tester/overrides.json index 45cfc02f80f..1804de23d83 100644 --- a/packages/@react-native/tester/overrides.json +++ b/packages/@react-native/tester/overrides.json @@ -1,5 +1,5 @@ { - "baseVersion": "0.82.0-nightly-20250821-0ef21bf8a", + "baseVersion": "0.82.0-nightly-20250902-9731e8ebc", "overrides": [ { "type": "copy", @@ -19,7 +19,7 @@ "type": "copy", "directory": "js/examples/Accessibility", "baseDirectory": "packages/rn-tester/js/examples/Accessibility", - "baseHash": "8e5f2a1d2ceeaafedf6756e97de0ac696672026a", + "baseHash": "86160c9bb592cce9ef577052157e809549fb18d7", "issue": 4054 }, { @@ -47,7 +47,7 @@ "type": "copy", "directory": "js/examples/Animated", "baseDirectory": "packages/rn-tester/js/examples/Animated", - "baseHash": "8746a19c501f6c4cf769f45301b39ba04918ca8c", + "baseHash": "882028b4cd050fb338e0abd2d91116a5d374c644", "issue": 4054 }, { @@ -61,7 +61,7 @@ "type": "copy", "directory": "js/examples/Appearance", "baseDirectory": "packages/rn-tester/js/examples/Appearance", - "baseHash": "e50957281c2d2c69ac0cf9b7fbba52bfcb4b2acc", + "baseHash": "2f8b7443fee23e06736f638575fcace2e31dffad", "issue": 4054 }, { @@ -138,21 +138,21 @@ "type": "copy", "directory": "js/examples/DrawerLayoutAndroid", "baseDirectory": "packages/rn-tester/js/examples/DrawerLayoutAndroid", - "baseHash": "631085563b9f193a0b8e55c4b3125cccab3ac315", + "baseHash": "6c0cb892ffc283ad7f3dff057de76490b146883e", "issue": 4054 }, { "type": "copy", "directory": "js/examples/Experimental", "baseDirectory": "packages/rn-tester/js/examples/Experimental", - "baseHash": "9ab384bedf0c2b3027fa0af54ecc8f3744ed9ae7", + "baseHash": "3ae2ed4d6120dea8b317822395530f4edddcf6f1", "issue": 4054 }, { "type": "copy", "directory": "js/examples/Filter", "baseDirectory": "packages/rn-tester/js/examples/Filter", - "baseHash": "e0e677e9e81362e663857e0a3c3216d45035f0b1", + "baseHash": "9eb2dab1c611cfd1587a234ec834f59030da9054", "issue": 4054 }, { @@ -229,7 +229,7 @@ "type": "copy", "directory": "js/examples/MixBlendMode", "baseDirectory": "packages/rn-tester/js/examples/MixBlendMode", - "baseHash": "68c9b90a61a76a63d2fe8f79df7fefd7d2320e37", + "baseHash": "0bbc09055f5bd015afdc67dea786a8d17dff2bc5", "issue": 4054 }, { @@ -312,7 +312,7 @@ "type": "copy", "directory": "js/examples/PointerEvents", "baseDirectory": "packages/rn-tester/js/examples/PointerEvents", - "baseHash": "b494881c44a0922313a3d1737cb7bca96231273b", + "baseHash": "b3be0035ef4bc7b03957039ea46ae99c9d98130e", "issue": 4054 }, { @@ -326,7 +326,7 @@ "type": "copy", "directory": "js/examples/Pressable", "baseDirectory": "packages/rn-tester/js/examples/Pressable", - "baseHash": "c9f130fc8a2b9878459742dfb0877aabc5dd4ffb", + "baseHash": "6d19102d1ce919fa22d32c3a68d5a38e2c7aa1fb", "issue": 4054 }, { @@ -424,7 +424,7 @@ "type": "copy", "directory": "js/examples/Text", "baseDirectory": "packages/rn-tester/js/examples/Text", - "baseHash": "a569a3f8074d7300060c5c5ed70f2fb6806f928c", + "baseHash": "3c104a4709628d576c22ed0962ae685e715b67a9", "issue": 4054 }, { @@ -508,7 +508,7 @@ "type": "copy", "directory": "js/examples/TurboModule", "baseDirectory": "packages/rn-tester/js/examples/TurboModule", - "baseHash": "d4b5116060834b4b8117b75a357a9e7fc81fda29", + "baseHash": "a8bfe0455074efa565db330bf2600e88f69f437b", "issue": 4054 }, { @@ -542,7 +542,7 @@ "type": "copy", "directory": "js/examples/XHR", "baseDirectory": "packages/rn-tester/js/examples/XHR", - "baseHash": "51ff285f97ad22e79fe3e679a933b4949d92f62b", + "baseHash": "532af8d0cdedc7cb51ce89a99e566f1687bd4682", "issue": 4054 }, { diff --git a/packages/@react-native/tester/package.json b/packages/@react-native/tester/package.json index 0296e088ba0..b5f1696e8dd 100644 --- a/packages/@react-native/tester/package.json +++ b/packages/@react-native/tester/package.json @@ -64,4 +64,4 @@ "listr2": "^6.4.1", "rxjs": "npm:@react-native-community/rxjs@6.5.4-custom" } -} \ No newline at end of file +} diff --git a/packages/@rnw-scripts/babel-react-native-config/package.json b/packages/@rnw-scripts/babel-react-native-config/package.json index eeba29d7cf9..568176391c8 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-20250821-0ef21bf8a", + "@react-native/babel-preset": "0.82.0-nightly-20250902-9731e8ebc", "babel-plugin-transform-flow-enums": "^0.0.2" }, "devDependencies": { "@babel/core": "^7.25.2", - "@react-native/babel-preset": "0.82.0-nightly-20250821-0ef21bf8a", + "@react-native/babel-preset": "0.82.0-nightly-20250902-9731e8ebc", "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 bea44902e8e..ae79cb8f9fe 100644 --- a/packages/@rnw-scripts/eslint-config/package.json +++ b/packages/@rnw-scripts/eslint-config/package.json @@ -29,4 +29,4 @@ "engines": { "node": ">= 22" } -} \ No newline at end of file +} diff --git a/packages/@rnw-scripts/metro-dev-config/package.json b/packages/@rnw-scripts/metro-dev-config/package.json index f2677a55f52..9569eb8f116 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-20250821-0ef21bf8a", + "@react-native/metro-config": "0.82.0-nightly-20250902-9731e8ebc", "@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/@rnw-scripts/promote-release/package.json b/packages/@rnw-scripts/promote-release/package.json index e0ffc108d38..52cac8a12a2 100644 --- a/packages/@rnw-scripts/promote-release/package.json +++ b/packages/@rnw-scripts/promote-release/package.json @@ -24,8 +24,8 @@ "@react-native-windows/package-utils": "^0.0.0-canary.96", "@typescript-eslint/eslint-plugin": "^7.1.1", "@typescript-eslint/parser": "^7.1.1", - "minimatch": "^10.0.3", "chalk": "^4.1.0", + "minimatch": "^10.0.3", "simple-git": "^3.3.0", "source-map-support": "^0.5.19", "yargs": "^16.2.0" diff --git a/packages/e2e-test-app-fabric/package.json b/packages/e2e-test-app-fabric/package.json index 112a9c65262..3775648eec0 100644 --- a/packages/e2e-test-app-fabric/package.json +++ b/packages/e2e-test-app-fabric/package.json @@ -16,11 +16,11 @@ "dependencies": { "@react-native-windows/automation-channel": "0.0.0-canary.1024", "@react-native-windows/tester": "0.0.1", - "@types/react": "^19.1.0", + "@types/react": "^19.1.1", "@typescript-eslint/eslint-plugin": "^7.1.1", "@typescript-eslint/parser": "^7.1.1", - "react": "^19.1.0", - "react-native": "0.82.0-nightly-20250821-0ef21bf8a", + "react": "^19.1.1", + "react-native": "0.82.0-nightly-20250902-9731e8ebc", "react-native-windows": "^0.0.0-canary.1024" }, "devDependencies": { @@ -32,7 +32,7 @@ "@react-native-community/cli": "20.0.0", "@react-native-windows/automation": "0.0.0-canary.1024", "@react-native-windows/automation-commands": "0.0.0-canary.1024", - "@react-native/metro-config": "0.82.0-nightly-20250821-0ef21bf8a", + "@react-native/metro-config": "0.82.0-nightly-20250902-9731e8ebc", "@rnw-scripts/babel-node-config": "2.3.3", "@rnw-scripts/babel-react-native-config": "0.0.0", "@rnw-scripts/eslint-config": "1.2.38", diff --git a/packages/playground/package.json b/packages/playground/package.json index 51d6186dd98..6b37b1e96f3 100644 --- a/packages/playground/package.json +++ b/packages/playground/package.json @@ -11,18 +11,18 @@ "dependencies": { "@react-native-picker/picker": "^2.5.1", "@react-native-windows/tester": "0.0.1", - "@types/react": "^19.1.0", + "@types/react": "^19.1.1", "@typescript-eslint/eslint-plugin": "^7.1.1", "@typescript-eslint/parser": "^7.1.1", - "react": "^19.1.0", - "react-native": "0.82.0-nightly-20250821-0ef21bf8a", + "react": "^19.1.1", + "react-native": "0.82.0-nightly-20250902-9731e8ebc", "react-native-windows": "^0.0.0-canary.1024" }, "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-20250821-0ef21bf8a", + "@react-native/metro-config": "0.82.0-nightly-20250902-9731e8ebc", "@rnw-scripts/babel-react-native-config": "0.0.0", "@rnw-scripts/eslint-config": "1.2.38", "@rnw-scripts/just-task": "2.3.58", diff --git a/packages/react-native-platform-override/src/e2etest/FileSystemRepository.test.ts b/packages/react-native-platform-override/src/e2etest/FileSystemRepository.test.ts index 42085af1023..b35a79663fd 100644 --- a/packages/react-native-platform-override/src/e2etest/FileSystemRepository.test.ts +++ b/packages/react-native-platform-override/src/e2etest/FileSystemRepository.test.ts @@ -119,7 +119,7 @@ test('deleteFile - Exists', async () => { test('deleteFile - Does Not Exist', async () => { await usingFiles(['0.59.9/Icon-60@2x.conflict.png'], async repo => { - // eslint-disable-next-line @typescript-eslint/no-floating-promises - expect(repo.deleteFile('nope')).rejects.toThrow(); + + await expect(repo.deleteFile('nope')).rejects.toThrow(); }); }); diff --git a/packages/react-native-platform-override/src/test/OverrideFactory.test.ts b/packages/react-native-platform-override/src/test/OverrideFactory.test.ts index d6bbccfbd7f..792c2b2eaa1 100644 --- a/packages/react-native-platform-override/src/test/OverrideFactory.test.ts +++ b/packages/react-native-platform-override/src/test/OverrideFactory.test.ts @@ -116,9 +116,9 @@ test.each([]>[ testCall(factory.createDerivedOverride, ['nope.windows.js', 'foo.js', 1245]), testCall(factory.createPatchOverride, ['nope.windows.js', 'foo.js', 1245]), testCall(factory.createDirectoryCopyOverride, ['nope', 'bar', 1245]), -])('%s - No Override', (_, fn, params) => { - // eslint-disable-next-line @typescript-eslint/no-floating-promises - expect(fn.apply(params)).rejects.toThrow(); +])('%s - No Override', async (_, fn, params) => { + + await expect(fn.apply(params)).rejects.toThrow(); }); test.each([]>[ @@ -127,6 +127,6 @@ test.each([]>[ testCall(factory.createPatchOverride, ['foo.windows.js', 'nope.js', 1245]), testCall(factory.createDirectoryCopyOverride, ['src-win/bar', 'nope', 1245]), ])('%s - No Base', (_, fn, params) => { - // eslint-disable-next-line @typescript-eslint/no-floating-promises - expect(fn.apply(params)).rejects.toThrow(); + + await expect(fn.apply(params)).rejects.toThrow(); }); diff --git a/packages/sample-app-fabric/package.json b/packages/sample-app-fabric/package.json index 067125a0bf7..d08a88a7be5 100644 --- a/packages/sample-app-fabric/package.json +++ b/packages/sample-app-fabric/package.json @@ -12,12 +12,12 @@ "bundle": "rnw-scripts prepareBundle && npx @react-native-community/cli bundle --platform windows --entry-file App.tsx --bundle-output windows/SampleAppFabric/Bundle/app.windows.bundle --assets-dest windows/SampleAppFabric/Bundle" }, "dependencies": { - "@types/react": "^19.1.0", + "@react-native/new-app-screen": "0.82.0-nightly-20250821-0ef21bf8a", + "@types/react": "^19.1.1", "@typescript-eslint/eslint-plugin": "^7.1.1", "@typescript-eslint/parser": "^7.1.1", - "@react-native/new-app-screen": "0.82.0-nightly-20250821-0ef21bf8a", - "react": "^19.1.0", - "react-native": "0.82.0-nightly-20250821-0ef21bf8a", + "react": "^19.1.1", + "react-native": "0.82.0-nightly-20250902-9731e8ebc", "react-native-windows": "^0.0.0-canary.1024" }, "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-20250821-0ef21bf8a", + "@react-native/metro-config": "0.82.0-nightly-20250902-9731e8ebc", "@rnw-scripts/babel-node-config": "2.3.3", "@rnw-scripts/babel-react-native-config": "0.0.0", "@rnw-scripts/eslint-config": "1.2.38", diff --git a/packages/sample-custom-component/package.json b/packages/sample-custom-component/package.json index 7343d97335e..f75c21268e2 100644 --- a/packages/sample-custom-component/package.json +++ b/packages/sample-custom-component/package.json @@ -20,9 +20,9 @@ } }, "dependencies": { - "@types/react": "^19.1.0", - "react": "^19.1.0", - "react-native": "0.82.0-nightly-20250821-0ef21bf8a", + "@types/react": "^19.1.1", + "react": "^19.1.1", + "react-native": "0.82.0-nightly-20250902-9731e8ebc", "react-native-windows": "^0.0.0-canary.1024" }, "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-20250821-0ef21bf8a", + "@react-native/metro-config": "0.82.0-nightly-20250902-9731e8ebc", "@rnw-scripts/babel-node-config": "2.3.3", "@rnw-scripts/babel-react-native-config": "0.0.0", "@rnw-scripts/eslint-config": "1.2.38", diff --git a/vnext/.flowconfig b/vnext/.flowconfig index 284d2c557db..a5422e42613 100644 --- a/vnext/.flowconfig +++ b/vnext/.flowconfig @@ -149,7 +149,10 @@ module.system.haste.module_ref_prefix=m# react.runtime=automatic -experimental.error_code_migration=new +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 @@ -175,4 +178,4 @@ untyped-import untyped-type-import [version] -^0.279.0 +^0.280.0 diff --git a/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/NativeToJsBridge.cpp b/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/NativeToJsBridge.cpp index b7faf36aadd..f106bd43881 100644 --- a/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/NativeToJsBridge.cpp +++ b/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/NativeToJsBridge.cpp @@ -37,7 +37,9 @@ using fbsystrace::FbSystraceAsyncFlow; namespace facebook::react { // This class manages calls from JS to native code. -class JsToNativeBridge : public react::ExecutorDelegate { +class [[deprecated( + "This API will be removed along with the legacy architecture.")]] JsToNativeBridge + : public react::ExecutorDelegate { public: JsToNativeBridge( std::shared_ptr registry, diff --git a/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/jsi/test/testlib.cpp b/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/jsi/test/testlib.cpp index f22efae8c00..b8b9427403d 100644 --- a/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/jsi/test/testlib.cpp +++ b/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/jsi/test/testlib.cpp @@ -176,6 +176,57 @@ TEST_P(JSITest, ObjectTest) { Array names = obj.getPropertyNames(rt); EXPECT_EQ(names.size(rt), 1); EXPECT_EQ(names.getValueAtIndex(rt, 0).getString(rt).utf8(rt), "a"); + + // This Runtime Decorator is used to test the default implementation of + // Runtime::has/get/setProperty with Value overload + class RD : public RuntimeDecorator { + public: + explicit RD(Runtime& rt) : RuntimeDecorator(rt) {} + + Value getProperty(const Object& object, const Value& name) override { + return Runtime::getProperty(object, name); + } + + bool hasProperty(const Object& object, const Value& name) override { + return Runtime::hasProperty(object, name); + } + + void setPropertyValue( + const Object& object, + const Value& name, + const Value& value) override { + Runtime::setPropertyValue(object, name, value); + } + }; + + RD rd = RD(rt); + + obj = eval("const obj = {}; obj;").getObject(rd); + auto propVal = Value(123); + obj.setProperty(rd, propVal, 456); + EXPECT_TRUE(obj.hasProperty(rd, propVal)); + auto getRes = obj.getProperty(rd, propVal); + EXPECT_EQ(getRes.getNumber(), 456); + + /// The property is non-writable so it should fail + obj = eval( + "Object.defineProperty(obj, '456', {" + " value: 10," + " writable: false,});") + .getObject(rd); + auto unwritableProp = Value(456); + EXPECT_THROW(obj.setProperty(rd, unwritableProp, 1), JSError); + + auto badObjKey = eval( + "var badObj = {" + " toString: function() {" + " throw new Error('something went wrong');" + " }" + "};" + "badObj;"); + EXPECT_THROW(obj.setProperty(rd, badObjKey, 123), JSError); + EXPECT_THROW(obj.hasProperty(rd, badObjKey), JSError); + EXPECT_THROW(obj.getProperty(rd, badObjKey), JSError); } TEST_P(JSITest, HostObjectTest) { @@ -1858,6 +1909,65 @@ TEST_P(JSITest, CastInterface) { EXPECT_TRUE(ptr == nullptr); } +TEST_P(JSITest, DeleteProperty) { + // This Runtime Decorator is used to test the default implementation of + // Runtime::deleteProperty + class RD : public RuntimeDecorator { + public: + explicit RD(Runtime& rt) : RuntimeDecorator(rt) {} + + void deleteProperty(const Object& object, const PropNameID& name) override { + Runtime::deleteProperty(object, name); + } + void deleteProperty(const Object& object, const String& name) override { + Runtime::deleteProperty(object, name); + } + void deleteProperty(const Object& object, const Value& name) override { + Runtime::deleteProperty(object, name); + } + }; + RD rd = RD(rt); + auto obj = eval("obj = {1:2, foo: 'bar', 3: 4, salt:'pepper'}").getObject(rd); + + auto prop = PropNameID::forAscii(rd, "1"); + auto hasRes = obj.hasProperty(rd, prop); + EXPECT_TRUE(hasRes); + obj.deleteProperty(rd, prop); + hasRes = obj.hasProperty(rd, prop); + EXPECT_FALSE(hasRes); + + auto str = String::createFromAscii(rd, "foo"); + hasRes = obj.hasProperty(rd, str); + EXPECT_TRUE(hasRes); + obj.deleteProperty(rd, str); + hasRes = obj.hasProperty(rd, str); + EXPECT_FALSE(hasRes); + + auto valProp = Value(3); + hasRes = obj.hasProperty(rd, "3"); + EXPECT_TRUE(hasRes); + obj.deleteProperty(rd, valProp); + auto getRes = obj.getProperty(rd, "3"); + EXPECT_TRUE(getRes.isUndefined()); + + hasRes = obj.hasProperty(rd, "salt"); + EXPECT_TRUE(hasRes); + obj.deleteProperty(rd, "salt"); + hasRes = obj.hasProperty(rd, "salt"); + EXPECT_FALSE(hasRes); + + obj = eval( + "const obj = {};" + "Object.defineProperty(obj, 'prop', {" + " value: 10," + " configurable: false,});" + "obj;") + .getObject(rd); + EXPECT_THROW(obj.deleteProperty(rd, "prop"), JSError); + hasRes = obj.hasProperty(rd, "prop"); + EXPECT_TRUE(hasRes); +} + INSTANTIATE_TEST_CASE_P( Runtimes, JSITest, diff --git a/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/AccessibilityPrimitives.h b/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/AccessibilityPrimitives.h index c9089203482..c6ef8077c95 100644 --- a/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/AccessibilityPrimitives.h +++ b/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/AccessibilityPrimitives.h @@ -12,8 +12,6 @@ #include #include -#include - namespace facebook::react { enum class AccessibilityTraits : uint32_t { @@ -55,27 +53,6 @@ struct AccessibilityAction { std::optional label{}; }; -inline std::string toString(const AccessibilityAction& accessibilityAction) { - std::string result = accessibilityAction.name; - if (accessibilityAction.label.has_value()) { - result += ": '" + accessibilityAction.label.value() + "'"; - } - return result; -} - -inline std::string toString( - std::vector accessibilityActions) { - std::string result = "["; - for (size_t i = 0; i < accessibilityActions.size(); i++) { - result += toString(accessibilityActions[i]); - if (i < accessibilityActions.size() - 1) { - result += ", "; - } - } - result += "]"; - return result; -} - inline static bool operator==( const AccessibilityAction& lhs, const AccessibilityAction& rhs) { @@ -113,6 +90,8 @@ constexpr bool operator!=( return !(rhs == lhs); } +<<<<<<< Upstream +======= #if RN_DEBUG_STRING_CONVERTIBLE inline std::string toString(AccessibilityState::CheckedState state) { switch (state) { @@ -145,6 +124,7 @@ inline std::string toString(const AccessibilityState& accessibilityState) { } #endif +>>>>>>> Override struct AccessibilityLabelledBy { std::vector value{}; }; @@ -194,6 +174,9 @@ enum class AccessibilityLiveRegion : uint8_t { Assertive, }; +<<<<<<< Upstream +enum class AccessibilityRole : uint8_t { +======= inline std::string toString( const AccessibilityLiveRegion& accessibilityLiveRegion) { switch (accessibilityLiveRegion) { @@ -216,6 +199,7 @@ inline std::string toString( } enum class AccessibilityRole { +>>>>>>> Override None, Button, Dropdownlist, @@ -258,7 +242,7 @@ enum class AccessibilityRole { Iconmenu, }; -enum class Role { +enum class Role : uint8_t { Alert, Alertdialog, Application, diff --git a/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/accessibilityPropsConversions.h b/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/accessibilityPropsConversions.h index 7a0e32cce40..ef6b4ffc676 100644 --- a/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/accessibilityPropsConversions.h +++ b/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/accessibilityPropsConversions.h @@ -14,6 +14,7 @@ #include #include #include +#include #include @@ -796,4 +797,59 @@ inline void fromRawValue( result = Role::None; } +inline std::string toString(AccessibilityLiveRegion accessibilityLiveRegion) { + switch (accessibilityLiveRegion) { + case AccessibilityLiveRegion::None: + return "none"; + case AccessibilityLiveRegion::Polite: + return "polite"; + case AccessibilityLiveRegion::Assertive: + return "assertive"; + } +} + +#if RN_DEBUG_STRING_CONVERTIBLE +inline std::string toString(AccessibilityState::CheckedState state) { + switch (state) { + case AccessibilityState::Unchecked: + return "Unchecked"; + case AccessibilityState::Checked: + return "Checked"; + case AccessibilityState::Mixed: + return "Mixed"; + case AccessibilityState::None: + return "None"; + } +} + +inline std::string toString(const AccessibilityAction& accessibilityAction) { + std::string result = accessibilityAction.name; + if (accessibilityAction.label.has_value()) { + result += ": '" + accessibilityAction.label.value() + "'"; + } + return result; +} + +inline std::string toString( + std::vector accessibilityActions) { + std::string result = "["; + for (size_t i = 0; i < accessibilityActions.size(); i++) { + result += toString(accessibilityActions[i]); + if (i < accessibilityActions.size() - 1) { + result += ", "; + } + } + result += "]"; + return result; +} + +inline std::string toString(const AccessibilityState& accessibilityState) { + return "{disabled:" + toString(accessibilityState.disabled) + + ",selected:" + toString(accessibilityState.selected) + + ",checked:" + toString(accessibilityState.checked) + + ",busy:" + toString(accessibilityState.busy) + + ",expanded:" + toString(accessibilityState.expanded) + "}"; +} +#endif + } // namespace facebook::react diff --git a/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/conversions.h b/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/conversions.h index fd8ce3b6344..01d0275fb5b 100644 --- a/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/conversions.h +++ b/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/conversions.h @@ -848,7 +848,7 @@ inline void fromRawValue( react_native_expect(false); } -inline std::string toString(const PointerEventsMode& value) { +inline std::string toString(PointerEventsMode value) { switch (value) { case PointerEventsMode::Auto: return "auto"; @@ -1571,4 +1571,4 @@ inline std::string toString(const Transform& transform) { return result; } -} // namespace facebook::react \ No newline at end of file +} // namespace facebook::react diff --git a/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/imagemanager/primitives.h b/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/imagemanager/primitives.h index 1647ae96eb1..420046fdb50 100644 --- a/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/imagemanager/primitives.h +++ b/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/imagemanager/primitives.h @@ -95,7 +95,7 @@ class ImageSource { #if RN_DEBUG_STRING_CONVERTIBLE SharedDebugStringConvertibleList getDebugProps( - const std::string prefix) const { + const std::string& prefix) const { ImageSource imageSource{}; SharedDebugStringConvertibleList headersList; @@ -170,13 +170,13 @@ inline folly::dynamic toDynamic(const ImageSource& imageSource) { using ImageSources = std::vector; -enum class ImageResizeMode { - Cover, - Contain, - Stretch, - Center, - Repeat, - None, +enum class ImageResizeMode : int8_t { + Cover = 0, + Contain = 1, + Stretch = 2, + Center = 3, + Repeat = 4, + None = 5, }; class ImageErrorInfo { @@ -186,4 +186,4 @@ class ImageErrorInfo { std::vector> httpResponseHeaders{}; }; -} // namespace facebook::react \ No newline at end of file +} // namespace facebook::react diff --git a/vnext/overrides.json b/vnext/overrides.json index 9aca1c98ea7..1db59f5a4d3 100644 --- a/vnext/overrides.json +++ b/vnext/overrides.json @@ -8,13 +8,13 @@ "**/__snapshots__/**", "src-win/rntypes/**" ], - "baseVersion": "0.82.0-nightly-20250821-0ef21bf8a", + "baseVersion": "0.82.0-nightly-20250902-9731e8ebc", "overrides": [ { "type": "derived", "file": ".flowconfig", "baseFile": ".flowconfig", - "baseHash": "56b1b6a6ecee3c54f2c63eadd6bf5d67b11f5cd9" + "baseHash": "c8bd25d4aa75328a2484c5c7b0b768c188a50b52" }, { "type": "derived", @@ -65,7 +65,7 @@ "type": "patch", "file": "ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/NativeToJsBridge.cpp", "baseFile": "packages/react-native/ReactCommon/cxxreact/NativeToJsBridge.cpp", - "baseHash": "1e4d9b9053dd74a3bea6719c98d8511de0ff8f73", + "baseHash": "fc88341abd157a9a36561be8b6d297bcc8125c6f", "issue": 13172 }, { @@ -79,7 +79,7 @@ "type": "patch", "file": "ReactCommon/TEMP_UntilReactCommonUpdate/jsi/jsi/test/testlib.cpp", "baseFile": "packages/react-native/ReactCommon/jsi/jsi/test/testlib.cpp", - "baseHash": "80c95f0c0635f68a77e8a61380484389d771bf9e", + "baseHash": "fb38db987176918ac2158c74ed5473018d4acab5", "issue": 12210 }, { @@ -177,19 +177,19 @@ "type": "derived", "file": "ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/AccessibilityPrimitives.h", "baseFile": "packages/react-native/ReactCommon/react/renderer/components/view/AccessibilityPrimitives.h", - "baseHash": "ba36ba3603cf0325982afd08475c08d07cb9d231" + "baseHash": "ad6263ebaa34f1753daccc09d19bf2328cde48fa" }, { "type": "derived", "file": "ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/accessibilityPropsConversions.h", "baseFile": "packages/react-native/ReactCommon/react/renderer/components/view/accessibilityPropsConversions.h", - "baseHash": "4b2822199233e660f36c01df18fbbff7799968cc" + "baseHash": "98a8417b1730c370d796caf93d2832f659d29ee2" }, { "type": "patch", "file": "ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/conversions.h", "baseFile": "packages/react-native/ReactCommon/react/renderer/components/view/conversions.h", - "baseHash": "3487b9dcde51614425687a31b10923c67a2f1d52", + "baseHash": "8a845d31a2588668f47d61a3307bf045e2379e03", "issue": 14698 }, { @@ -203,7 +203,7 @@ "type": "patch", "file": "ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/imagemanager/primitives.h", "baseFile": "packages/react-native/ReactCommon/react/renderer/imagemanager/primitives.h", - "baseHash": "74cee7804fa62964c9ecc3fafd475d09b0ed6375", + "baseHash": "660ea2d03bb421337ecbcde0971607a64922bf27", "issue": 15263 }, { @@ -223,7 +223,7 @@ "type": "derived", "file": "src-win/index.windows.js.flow", "baseFile": "packages/react-native/index.js.flow", - "baseHash": "40517b790cce30b4f7fbb230efabccd98a917be8" + "baseHash": "b3bfc5cc82b448bbfc5b87e0b6e2b4d11f3edde0" }, { "type": "platform", @@ -387,7 +387,7 @@ "type": "derived", "file": "src-win/Libraries/Components/ScrollView/ScrollView.windows.js", "baseFile": "packages/react-native/Libraries/Components/ScrollView/ScrollView.js", - "baseHash": "34777aa89308a95d5d04bea192451451b3786e4e" + "baseHash": "297988d11942a8a287f0578363c50ce129fe7605" }, { "type": "derived", @@ -411,13 +411,13 @@ "type": "patch", "file": "src-win/Libraries/Components/TextInput/TextInput.windows.js", "baseFile": "packages/react-native/Libraries/Components/TextInput/TextInput.js", - "baseHash": "ed5d48ce62056182bf81dfa2d22d511d611d5201" + "baseHash": "547fa57cd844cece1f4401b93be75b2edd2a757f" }, { "type": "patch", "file": "src-win/Libraries/Components/TextInput/TextInputState.windows.js", "baseFile": "packages/react-native/Libraries/Components/TextInput/TextInputState.js", - "baseHash": "6ed06ca68066b0cdbaa28a2e5f1fe1b6d9d62f63" + "baseHash": "e310687c98b6de40bfe9d939639de566a91fca85" }, { "type": "derived", @@ -519,7 +519,7 @@ "type": "patch", "file": "src-win/Libraries/Image/Image.windows.js", "baseFile": "packages/react-native/Libraries/Image/Image.ios.js", - "baseHash": "5d62f4a6c4edfe3007eb3b80704a1dfb68e5ff8a", + "baseHash": "be81d302b8f2d64ddf7a52bd30fbcb47d18741b5", "issue": 4590 }, { @@ -628,7 +628,7 @@ "type": "derived", "file": "src-win/Libraries/Text/Text.windows.js", "baseFile": "packages/react-native/Libraries/Text/Text.js", - "baseHash": "14367e55fca8889783f7dea94ec2c09205960c3c" + "baseHash": "59bf5757acc083a749a38173b3610529b27ef4fb" }, { "type": "derived", @@ -678,7 +678,7 @@ "type": "patch", "file": "src-win/src/private/featureflags/ReactNativeFeatureFlagsBase.js", "baseFile": "packages/react-native/src/private/featureflags/ReactNativeFeatureFlagsBase.js", - "baseHash": "b3f30f3392ed9acd6918007eba024968f372eb95" + "baseHash": "7f9ec3ffc3b96bb213039323d5f35d623cde89d7" }, { "type": "patch", diff --git a/vnext/package.json b/vnext/package.json index b2d1728749b..46dbfcb7bb2 100644 --- a/vnext/package.json +++ b/vnext/package.json @@ -28,19 +28,19 @@ "@react-native-community/cli-platform-ios": "20.0.0", "@react-native-windows/cli": "0.0.0-canary.281", "@react-native/assets": "1.0.0", - "@react-native/assets-registry": "0.82.0-nightly-20250821-0ef21bf8a", - "@react-native/codegen": "0.82.0-nightly-20250821-0ef21bf8a", - "@react-native/community-cli-plugin": "0.82.0-nightly-20250821-0ef21bf8a", - "@react-native/gradle-plugin": "0.82.0-nightly-20250821-0ef21bf8a", - "@react-native/js-polyfills": "0.82.0-nightly-20250821-0ef21bf8a", - "@react-native/normalize-colors": "0.82.0-nightly-20250821-0ef21bf8a", - "@react-native/virtualized-lists": "0.82.0-nightly-20250821-0ef21bf8a", + "@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-20250821-0ef21bf8a", + "@react-native/normalize-colors": "0.82.0-nightly-20250902-9731e8ebc", + "@react-native/virtualized-lists": "0.82.0-nightly-20250902-9731e8ebc", "abort-controller": "^3.0.0", "anser": "^1.4.9", "ansi-regex": "^5.0.0", "babel-jest": "^29.7.0", - "babel-plugin-syntax-hermes-parser": "0.28.1", + "babel-plugin-syntax-hermes-parser": "0.32.0", "base64-js": "^1.5.1", "chalk": "^4.0.0", "commander": "^12.0.0", @@ -50,13 +50,13 @@ "invariant": "^2.2.4", "jest-environment-node": "^29.7.0", "memoize-one": "^5.0.0", - "metro-runtime": "^0.82.2", - "metro-source-map": "^0.82.2", + "metro-runtime": "^0.83.1", + "metro-source-map": "^0.83.1", "mkdirp": "^0.5.1", "nullthrows": "^1.1.1", "pretty-format": "^29.7.0", "promise": "^8.3.0", - "react-devtools-core": "^6.1.1", + "react-devtools-core": "^6.1.5", "react-refresh": "^0.14.0", "regenerator-runtime": "^0.13.2", "scheduler": "0.26.0", @@ -69,7 +69,7 @@ }, "devDependencies": { "@react-native-windows/codegen": "0.0.0-canary.128", - "@react-native/metro-config": "0.82.0-nightly-20250821-0ef21bf8a", + "@react-native/metro-config": "0.82.0-nightly-20250902-9731e8ebc", "@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", @@ -84,15 +84,15 @@ "just-scripts": "^1.3.3", "prettier": "2.8.8", "react": "19.1.0", - "react-native": "0.82.0-nightly-20250821-0ef21bf8a", + "react-native": "0.82.0-nightly-20250902-9731e8ebc", "react-native-platform-override": "0.0.0-canary.1017", "react-refresh": "^0.14.0", "typescript": "5.0.4" }, "peerDependencies": { - "@types/react": "^19.1.0", - "react": "^19.1.0", - "react-native": "0.82.0-nightly-20250821-0ef21bf8a" + "@types/react": "^19.1.1", + "react": "^19.1.1", + "react-native": "0.82.0-nightly-20250902-9731e8ebc" }, "beachball": { "defaultNpmTag": "canary", diff --git a/vnext/src-win/Libraries/Components/ScrollView/ScrollView.windows.js b/vnext/src-win/Libraries/Components/ScrollView/ScrollView.windows.js index 895f7c14e84..344fbb119b2 100644 --- a/vnext/src-win/Libraries/Components/ScrollView/ScrollView.windows.js +++ b/vnext/src-win/Libraries/Components/ScrollView/ScrollView.windows.js @@ -31,6 +31,7 @@ import { VScrollContentViewNativeComponent, VScrollViewNativeComponent, } from '../../../src/private/components/scrollview/VScrollViewNativeComponents'; +import * as ReactNativeFeatureFlags from '../../../src/private/featureflags/ReactNativeFeatureFlags'; import AnimatedImplementation from '../../Animated/AnimatedImplementation'; import FrameRateLogger from '../../Interaction/FrameRateLogger'; import {findNodeHandle} from '../../ReactNative/RendererProxy'; @@ -1503,7 +1504,7 @@ class ScrollView extends React.Component { keyboardNeverPersistTaps && this._keyboardIsDismissible() && e.target != null && - // $FlowFixMe Error supressed during the migration of HostInstance to ReactNativeElement + // $FlowFixMe[incompatible-type] Error supressed during the migration of HostInstance to ReactNativeElement !TextInputState.isTextInput(e.target) ) { return true; @@ -1754,8 +1755,11 @@ class ScrollView extends React.Component { const baseStyle = horizontal ? styles.baseHorizontal : styles.baseVertical; - const {experimental_endDraggingSensitivityMultiplier, ...otherProps} = - this.props; + const { + experimental_endDraggingSensitivityMultiplier, + maintainVisibleContentPosition, + ...otherProps + } = this.props; const props = { ...otherProps, accessible, // [Windows] @@ -1809,6 +1813,10 @@ class ScrollView extends React.Component { this.props.snapToInterval != null || this.props.snapToOffsets != null, }), + maintainVisibleContentPosition: + ReactNativeFeatureFlags.disableMaintainVisibleContentPosition() + ? undefined + : this.props.maintainVisibleContentPosition, }; const {decelerationRate} = this.props; diff --git a/vnext/src-win/Libraries/Components/TextInput/TextInput.windows.js b/vnext/src-win/Libraries/Components/TextInput/TextInput.windows.js index ae79b077f14..2fa7d26a1b5 100644 --- a/vnext/src-win/Libraries/Components/TextInput/TextInput.windows.js +++ b/vnext/src-win/Libraries/Components/TextInput/TextInput.windows.js @@ -801,6 +801,9 @@ function InternalTextInput(props: TextInputProps): React.Node { flattenedStyle.paddingVertical == null && flattenedStyle.paddingTop == null)); + const _accessibilityElementsHidden = + props['aria-hidden'] ?? props.accessibilityElementsHidden; + textInput = ( >>>>>> Override src, ...restProps } = props; @@ -177,6 +181,10 @@ let BaseImage: AbstractImageIOS = ({ ariaMultiselectable ?? props.accessibilityState?.multiselectable, // Windows required: ariaRequired ?? props.accessibilityState?.required, // Windows }; + + // In order for `aria-hidden` to work on iOS we must set `accessible` to false (`accessibilityElementsHidden` is not enough). + const accessible = + ariaHidden !== true && (props.alt !== undefined ? true : props.accessible); const accessibilityLabel = props['aria-label'] ?? props.accessibilityLabel; const accessibilityLevel = ariaLevel ?? props.accessibilityLevel; // Windows const accessibilityPosInSet = ariaPosinset ?? props.accessibilityPosInSet; // Windows @@ -191,7 +199,7 @@ let BaseImage: AbstractImageIOS = ({ >>>>>> Override nativeID: _nativeID, numberOfLines: _numberOfLines, selectable: _selectable, @@ -559,8 +582,10 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) { return ( void> = []; export type Getter = () => T; -// This defines the types for the overrides object, whose methods also receive -// the default value as a parameter. +// This defines the types for the overrides object, whose methods can return +// null or undefined to fallback to the default value. export type OverridesFor = Partial<{ - [key in keyof T]: (ReturnType) => ReturnType, + [key in keyof T]: Getter>, }>; function createGetter( @@ -61,7 +61,7 @@ export function createJavaScriptFlagGetter< configName, () => { accessedFeatureFlags.add(configName); - return overrides?.[configName]?.(defaultValue); + return overrides?.[configName]?.(); }, defaultValue, ); diff --git a/yarn.lock b/yarn.lock index 861a24ad019..47eead780ef 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1515,15 +1515,6 @@ slash "^3.0.0" write-file-atomic "^4.0.2" -"@jest/types@^24.9.0": - version "24.9.0" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-24.9.0.tgz#63cb26cb7500d069e5a389441a7c6ab5e909fc59" - integrity sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw== - dependencies: - "@types/istanbul-lib-coverage" "^2.0.0" - "@types/istanbul-reports" "^1.1.1" - "@types/yargs" "^13.0.0" - "@jest/types@^29.2.1", "@jest/types@^29.6.3": version "29.6.3" resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.6.3.tgz#1131f8cf634e7e84c5e77bab12f052af585fba59" @@ -2056,38 +2047,38 @@ prompts "^2.4.2" semver "^7.5.2" -"@react-native-community/template@0.82.0-nightly-2025819-246871d": - version "0.82.0-nightly-2025819-246871d" - resolved "https://registry.yarnpkg.com/@react-native-community/template/-/template-0.82.0-nightly-2025819-246871d.tgz#8918a9b6539674b0e3f9d7d480d89a13220f301c" - integrity sha512-6RAgRgppsp3Ev/8TSbky0OaEVOG2oNxoE2ngvvy24JD1jGgFiuueoTCYLOe3y4BS/S+OUslpxm3HDQ+7UNwobw== +"@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-picker/picker@^2.5.1": version "2.11.4" resolved "https://registry.yarnpkg.com/@react-native-picker/picker/-/picker-2.11.4.tgz#7fb09506ee00a82989125cc03e8495204c8afc01" integrity sha512-Kf8h1AMnBo54b1fdiVylP2P/iFcZqzpMYcglC28EEFB1DEnOjsNr6Ucqc+3R9e91vHxEDnhZFbYDmAe79P2gjA== -"@react-native/assets-registry@0.82.0-nightly-20250821-0ef21bf8a": - version "0.82.0-nightly-20250821-0ef21bf8a" - resolved "https://registry.yarnpkg.com/@react-native/assets-registry/-/assets-registry-0.82.0-nightly-20250821-0ef21bf8a.tgz#470ff457049c9c4df0d7818267f3801a72c6c089" - integrity sha512-1RjTFqwcVQ45V7YiNSRRNKpVB+Lxv2yabaX8m9n2xoHyKaLiyfzPlbygtxLnQ6LFu48m9GlW7F43AnwTYJ2/Ag== +"@react-native/assets-registry@0.82.0-nightly-20250902-9731e8ebc": + version "0.82.0-nightly-20250902-9731e8ebc" + 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@1.0.0": version "1.0.0" resolved "https://registry.yarnpkg.com/@react-native/assets/-/assets-1.0.0.tgz#c6f9bf63d274bafc8e970628de24986b30a55c8e" integrity sha512-KrwSpS1tKI70wuKl68DwJZYEvXktDHdZMG0k2AXD/rJVSlB23/X2CB2cutVR0HwNMJIal9HOUOBB2rVfa6UGtQ== -"@react-native/babel-plugin-codegen@0.82.0-nightly-20250821-0ef21bf8a": - version "0.82.0-nightly-20250821-0ef21bf8a" - resolved "https://registry.yarnpkg.com/@react-native/babel-plugin-codegen/-/babel-plugin-codegen-0.82.0-nightly-20250821-0ef21bf8a.tgz#a81adfd453898792d1d16cdc3e9988cec0ec1de7" - integrity sha512-ogh+m1Sc++mZgoKdhg3+nm+JPYP+czamwnLl1LRo/D4oLZUl6mndrrsjI3IkG8F4dqqU0cnOEPfYOM78EX/QbA== +"@react-native/babel-plugin-codegen@0.82.0-nightly-20250902-9731e8ebc": + version "0.82.0-nightly-20250902-9731e8ebc" + resolved "https://registry.yarnpkg.com/@react-native/babel-plugin-codegen/-/babel-plugin-codegen-0.82.0-nightly-20250902-9731e8ebc.tgz#edfa387a4ef877de317ec541fb0e06515a3efe8d" + integrity sha512-k9QuLjH2W2GWgcqXSbTXN1ARYilCVyK/Q+nUOjc8T4tgZXbIrQtY39WwiWMBjFjT8a2nQ149pXJBvx5ofDdKSw== dependencies: "@babel/traverse" "^7.25.3" - "@react-native/codegen" "0.82.0-nightly-20250821-0ef21bf8a" + "@react-native/codegen" "0.82.0-nightly-20250902-9731e8ebc" -"@react-native/babel-preset@0.82.0-nightly-20250821-0ef21bf8a": - version "0.82.0-nightly-20250821-0ef21bf8a" - resolved "https://registry.yarnpkg.com/@react-native/babel-preset/-/babel-preset-0.82.0-nightly-20250821-0ef21bf8a.tgz#718349d55f2e45b6c1d7a6f78ff8d75bc66045b5" - integrity sha512-f8YSO5kBPQOu/zTGrTVO738GsNvmLQIlDojzDtiVAanUq+vhEU4OTKnp9hzQiE1ke6I0u5lPdUBbPcGprnJRWw== +"@react-native/babel-preset@0.82.0-nightly-20250902-9731e8ebc": + version "0.82.0-nightly-20250902-9731e8ebc" + resolved "https://registry.yarnpkg.com/@react-native/babel-preset/-/babel-preset-0.82.0-nightly-20250902-9731e8ebc.tgz#e3fd413c57c605ac5c310493ce3b4ebf2f616cff" + integrity sha512-OSz7AhSyU+2uvnzFKqG7loADGzoB99jy9s+HHru5LsfQJOOL8b9f+GMS+QQHjCFH+ZDRFm8RxOwEUS4+zWjbwg== dependencies: "@babel/core" "^7.25.2" "@babel/plugin-proposal-export-default-from" "^7.24.7" @@ -2130,15 +2121,15 @@ "@babel/plugin-transform-typescript" "^7.25.2" "@babel/plugin-transform-unicode-regex" "^7.24.7" "@babel/template" "^7.25.0" - "@react-native/babel-plugin-codegen" "0.82.0-nightly-20250821-0ef21bf8a" + "@react-native/babel-plugin-codegen" "0.82.0-nightly-20250902-9731e8ebc" babel-plugin-syntax-hermes-parser "0.32.0" babel-plugin-transform-flow-enums "^0.0.2" react-refresh "^0.14.0" -"@react-native/codegen@0.82.0-nightly-20250821-0ef21bf8a": - version "0.82.0-nightly-20250821-0ef21bf8a" - resolved "https://registry.yarnpkg.com/@react-native/codegen/-/codegen-0.82.0-nightly-20250821-0ef21bf8a.tgz#3100f275799c9de20b3f551ccc6b3acbf4278d2a" - integrity sha512-FvfGFe+YcLlACsCecRhbnRy+MJxi5PKj7HwHjY4MX9X9r0p/wDGHFl6TQx9qjvuhz5gIjsAac8xqHZA0e6kLNA== +"@react-native/codegen@0.82.0-nightly-20250902-9731e8ebc": + version "0.82.0-nightly-20250902-9731e8ebc" + resolved "https://registry.yarnpkg.com/@react-native/codegen/-/codegen-0.82.0-nightly-20250902-9731e8ebc.tgz#52e72820e246810722bdd8023faa11d050bd2bb0" + integrity sha512-/4109+jSEN7hmzXgeHRDyNUN80mAsrSo77AKlAYbxqcwc8YZpnPyrdiovkljwt8mZb1g2e5mlhMKno+jy4YDOw== dependencies: "@babel/core" "^7.25.2" "@babel/parser" "^7.25.3" @@ -2148,12 +2139,12 @@ nullthrows "^1.1.1" yargs "^17.6.2" -"@react-native/community-cli-plugin@0.82.0-nightly-20250821-0ef21bf8a": - version "0.82.0-nightly-20250821-0ef21bf8a" - resolved "https://registry.yarnpkg.com/@react-native/community-cli-plugin/-/community-cli-plugin-0.82.0-nightly-20250821-0ef21bf8a.tgz#7ea3bd81c4d06b579ff3bdf47c2c272a85ad0bca" - integrity sha512-j0jF5sdfsa7RGUYAZHwOn7iEynNqtjPNtp0ahie7K+Nz7Spk5oJyJa+l0BrgKojf8pgsa0aJCAPLZlfumgYDEQ== +"@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" + integrity sha512-9dNiDrNbhjCwfL41j/bssacSRhIvAsYDQWC28guK9ybliJOH/NDMZeURm2vxzbUgW+9Nd5XyibQvwqrDzm108w== dependencies: - "@react-native/dev-middleware" "0.82.0-nightly-20250821-0ef21bf8a" + "@react-native/dev-middleware" "0.82.0-nightly-20250902-9731e8ebc" debug "^4.4.0" invariant "^2.2.4" metro "^0.83.1" @@ -2161,18 +2152,27 @@ metro-core "^0.83.1" semver "^7.1.3" -"@react-native/debugger-frontend@0.82.0-nightly-20250821-0ef21bf8a": - version "0.82.0-nightly-20250821-0ef21bf8a" - resolved "https://registry.yarnpkg.com/@react-native/debugger-frontend/-/debugger-frontend-0.82.0-nightly-20250821-0ef21bf8a.tgz#14cfd036c3272024ba891af9f810e0164a63f5f8" - integrity sha512-lvt1tWojeO3v9tFVSgG9IE9SRB2FI45MRUBOEIIdXmGh9Uexr74Vv6/mdJG1MI7jBtbuzWxXuHMvVx6SNGoy8A== +"@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/dev-middleware@0.82.0-nightly-20250821-0ef21bf8a": - version "0.82.0-nightly-20250821-0ef21bf8a" - resolved "https://registry.yarnpkg.com/@react-native/dev-middleware/-/dev-middleware-0.82.0-nightly-20250821-0ef21bf8a.tgz#5a7e2f1d7db2ad01fcae741250b94f099424b902" - integrity sha512-3YLEVxrzPObRxfKDiNIPxY7GtGA3DS5tdOrEJ/IMJq9BWvXtuz1wJgdmrMqEGWqNtox8Qidvo6sEx3qjqmGK/w== +"@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" + integrity sha512-tGQiYs6ok9M6qUfV6bRqweLk9FAiEvt7G3ZQlOEuQKMntLFJRi2uXRUJKyMN6nU/aOKDtSqyR3g+KHEZEajCOg== + 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" + integrity sha512-g+WFt0XJOQPGQIVSqTNTPpyeKhna5O2nJwXNdELrQhSSgGEpqIN1E7hVKyNlfz8CEMpNabLRNFRnzRvoblRBmw== dependencies: "@isaacs/ttlcache" "^1.4.1" - "@react-native/debugger-frontend" "0.82.0-nightly-20250821-0ef21bf8a" + "@react-native/debugger-frontend" "0.82.0-nightly-20250902-9731e8ebc" + "@react-native/debugger-shell" "0.82.0-nightly-20250902-9731e8ebc" chrome-launcher "^0.15.2" chromium-edge-launcher "^0.2.0" connect "^3.6.5" @@ -2206,33 +2206,33 @@ resolved "https://registry.yarnpkg.com/@react-native/eslint-plugin/-/eslint-plugin-0.82.0-nightly-20250821-0ef21bf8a.tgz#c0803ac1560ce01c0138fb8b5cbedb9c91a7a816" integrity sha512-XIiwVWJ/LHVHRoms7KKRiKbeQGMqKFrWTZX8IOlqgD6gSTjiUdlIqM7e2qh/K9xUbrj6SVb4cuy4e9GcZqvOug== -"@react-native/gradle-plugin@0.82.0-nightly-20250821-0ef21bf8a": - version "0.82.0-nightly-20250821-0ef21bf8a" - resolved "https://registry.yarnpkg.com/@react-native/gradle-plugin/-/gradle-plugin-0.82.0-nightly-20250821-0ef21bf8a.tgz#6b2609a6029d344e0e2c544ea9e1d51189c68fa2" - integrity sha512-TylXcT+p7YyUUMLhI+zEmdoUoLwanYKBesr6USHwYLtUBloj06PNfv8WTQyGjqduDeYPddJtT5hoqFFjeGFUKg== +"@react-native/gradle-plugin@0.82.0-nightly-20250902-9731e8ebc": + version "0.82.0-nightly-20250902-9731e8ebc" + 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/js-polyfills@0.82.0-nightly-20250821-0ef21bf8a": - version "0.82.0-nightly-20250821-0ef21bf8a" - resolved "https://registry.yarnpkg.com/@react-native/js-polyfills/-/js-polyfills-0.82.0-nightly-20250821-0ef21bf8a.tgz#81ffc8d40f5ccb9cf22b4951a83ef390d78be371" - integrity sha512-p03ZeiLg0wtqyIqUn+G9oucGtvhwZkLLlzXqhvzhAad8AXRPiCTZ+QutZ8+TQ3DF3hQ1a11csF8FoaEEiB1MSQ== +"@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/metro-babel-transformer@0.82.0-nightly-20250821-0ef21bf8a": - version "0.82.0-nightly-20250821-0ef21bf8a" - resolved "https://registry.yarnpkg.com/@react-native/metro-babel-transformer/-/metro-babel-transformer-0.82.0-nightly-20250821-0ef21bf8a.tgz#2d5353fe16f88d896531631f6a8c1a973d204471" - integrity sha512-5gsdzKs3vGAM9etlL2LZhG3pFal1k68dWPTe2deqZ9t1SGLY1TELkKUOYPiC8fNYAyiA3Vn0D9dp412d70IHng== +"@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" + integrity sha512-A9Wei+qTkvGnl5WyOjSFJSNAxwgTmvErBVoyFStXjKRPUPXltw1FwpVt4ipbTo64LHtuTpTl4Rw7aPX8gTBoSA== dependencies: "@babel/core" "^7.25.2" - "@react-native/babel-preset" "0.82.0-nightly-20250821-0ef21bf8a" + "@react-native/babel-preset" "0.82.0-nightly-20250902-9731e8ebc" hermes-parser "0.32.0" nullthrows "^1.1.1" -"@react-native/metro-config@0.82.0-nightly-20250821-0ef21bf8a": - version "0.82.0-nightly-20250821-0ef21bf8a" - resolved "https://registry.yarnpkg.com/@react-native/metro-config/-/metro-config-0.82.0-nightly-20250821-0ef21bf8a.tgz#6c80c5b700dd8b57169f0cafa59e5bda91706162" - integrity sha512-Ll0xNwdhxpVFgRVOentXcJMdTHKB6aXdp3n19MToE8LRlSBdS+WgREHngW44hym6Mvkc0NJd6EP1vV0IgFO7Dw== +"@react-native/metro-config@0.82.0-nightly-20250902-9731e8ebc": + version "0.82.0-nightly-20250902-9731e8ebc" + resolved "https://registry.yarnpkg.com/@react-native/metro-config/-/metro-config-0.82.0-nightly-20250902-9731e8ebc.tgz#39bfcb4d5535613eccebdf0efb4d1e0402f35855" + integrity sha512-RNe+zznTozFP75TsahC7Dspi858s+3whyjsb8wSUV7ZFhZh8Pr0SU8tA6Xa2S9PkOqMG6TeMCUIPZz5qEnYEkw== dependencies: - "@react-native/js-polyfills" "0.82.0-nightly-20250821-0ef21bf8a" - "@react-native/metro-babel-transformer" "0.82.0-nightly-20250821-0ef21bf8a" + "@react-native/js-polyfills" "0.82.0-nightly-20250902-9731e8ebc" + "@react-native/metro-babel-transformer" "0.82.0-nightly-20250902-9731e8ebc" metro-config "^0.83.1" metro-runtime "^0.83.1" @@ -2241,10 +2241,10 @@ resolved "https://registry.yarnpkg.com/@react-native/new-app-screen/-/new-app-screen-0.82.0-nightly-20250821-0ef21bf8a.tgz#f7b64f7bd93945bdea0d597d973b11d079bbceb9" integrity sha512-IcNqFAgsUTEt/GxJDW7PaoOS2Sn3iTQijnPGCIBkmlo/PBlnOzOZOXT6nz58aVdWYbHVh9+WTuItv/dpeKgzMg== -"@react-native/normalize-colors@0.82.0-nightly-20250821-0ef21bf8a": - version "0.82.0-nightly-20250821-0ef21bf8a" - resolved "https://registry.yarnpkg.com/@react-native/normalize-colors/-/normalize-colors-0.82.0-nightly-20250821-0ef21bf8a.tgz#558b417cc5845773406b6dbc79f13db2c52e0d42" - integrity sha512-zBRmdPPDeDIafNgLFVoozFaADp1zmUgf16fg42VZBSPTVwrHBfnqL4HOBk/W9+qVrwpu62+HOBei56iUls/FqQ== +"@react-native/normalize-colors@0.82.0-nightly-20250902-9731e8ebc": + version "0.82.0-nightly-20250902-9731e8ebc" + 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/popup-menu-android@0.82.0-nightly-20250821-0ef21bf8a": version "0.82.0-nightly-20250821-0ef21bf8a" @@ -2253,10 +2253,10 @@ dependencies: nullthrows "^1.1.1" -"@react-native/virtualized-lists@0.82.0-nightly-20250821-0ef21bf8a": - version "0.82.0-nightly-20250821-0ef21bf8a" - resolved "https://registry.yarnpkg.com/@react-native/virtualized-lists/-/virtualized-lists-0.82.0-nightly-20250821-0ef21bf8a.tgz#6cada9138a9b83caf00ddc842a58a9e9934d129f" - integrity sha512-EQw7KgmtJBhdFCiqTqtXNDNJ7H3hsIEOmgoS9RMIzIJlVnvGuOlkv0rqJylOIgglz9TXb/OxVOOcn4hb1V2srw== +"@react-native/virtualized-lists@0.82.0-nightly-20250902-9731e8ebc": + version "0.82.0-nightly-20250902-9731e8ebc" + resolved "https://registry.yarnpkg.com/@react-native/virtualized-lists/-/virtualized-lists-0.82.0-nightly-20250902-9731e8ebc.tgz#5ac8dd28dd04c6c753893c344e2c08f2ca6cdc25" + integrity sha512-mrAf+bOkKk0XeEYr3N83hdEzjuI3J35cc4R1YGoTmF5sR3jVbMMq11luAi1+fjeMiLJ13xOHlWlgY3exR+dAnA== dependencies: invariant "^2.2.4" nullthrows "^1.1.1" @@ -2716,14 +2716,6 @@ dependencies: "@types/istanbul-lib-coverage" "*" -"@types/istanbul-reports@^1.1.1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-1.1.2.tgz#e875cc689e47bce549ec81f3df5e6f6f11cfaeb2" - integrity sha512-P/W9yOX/3oPZSpaYOCQzGqgCQRXn0FFO/V8bWrCQs+wLmvVVxk6CRBXALEvNs9OHIatlnlFokfhuDo2ug01ciw== - dependencies: - "@types/istanbul-lib-coverage" "*" - "@types/istanbul-lib-report" "*" - "@types/istanbul-reports@^3.0.0": version "3.0.4" resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz#0f03e3d2f670fbdac586e34b433783070cc16f54" @@ -2885,7 +2877,7 @@ dependencies: "@types/react" "*" -"@types/react@*", "@types/react@^19.0.0", "@types/react@^19.1.0": +"@types/react@*", "@types/react@^19.0.0", "@types/react@^19.1.0", "@types/react@^19.1.1": version "19.2.7" resolved "https://registry.yarnpkg.com/@types/react/-/react-19.2.7.tgz#84e62c0f23e8e4e5ac2cadcea1ffeacccae7f62f" integrity sha512-MWtvHrGZLFttgeEj28VXHxpmwYbor/ATPYbBfSFZEIRK0ecCFLl2Qo55z52Hss+UV9CRN7trSeq1zbgx7YDWWg== @@ -3009,13 +3001,6 @@ dependencies: "@types/yargs-parser" "*" -"@types/yargs@^13.0.0": - version "13.0.12" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-13.0.12.tgz#d895a88c703b78af0465a9de88aa92c61430b092" - integrity sha512-qCxJE1qgz2y0hA4pIxjBR+PelCH0U5CK1XJXFwCNqfmliatKp47UCXXE9Dyk1OXBDLvsCF57TqQEJaeLfDYEOQ== - dependencies: - "@types/yargs-parser" "*" - "@types/yargs@^16.0.0": version "16.0.11" resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-16.0.11.tgz#de958fb62e77fc383fa6cd8066eabdd13da88f04" @@ -3632,11 +3617,6 @@ ansi-fragments@^0.2.1: slice-ansi "^2.0.0" strip-ansi "^5.0.0" -ansi-regex@^4.0.0: - version "4.1.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.1.tgz#164daac87ab2d6f6db3a29875e2d1766582dabed" - integrity sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g== - ansi-regex@^5.0.0, ansi-regex@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" @@ -4073,13 +4053,6 @@ babel-plugin-replace-ts-export-assignment@^0.0.2: resolved "https://registry.yarnpkg.com/babel-plugin-replace-ts-export-assignment/-/babel-plugin-replace-ts-export-assignment-0.0.2.tgz#927a30ba303fcf271108980a8d4f80a693e1d53f" integrity sha512-BiTEG2Ro+O1spuheL5nB289y37FFmz0ISE6GjpNCG2JuA/WNcuEHSYw01+vN8quGf208sID3FnZFDwVyqX18YQ== -babel-plugin-syntax-hermes-parser@0.28.1: - version "0.28.1" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-hermes-parser/-/babel-plugin-syntax-hermes-parser-0.28.1.tgz#9e80a774ddb8038307a62316486669c668fb3568" - integrity sha512-meT17DOuUElMNsL5LZN56d+KBp22hb0EfxWfuPUeoSi54e40v1W4C2V36P75FpsH9fVEfDKpw5Nnkahc8haSsQ== - dependencies: - hermes-parser "0.28.1" - babel-plugin-syntax-hermes-parser@0.32.0: version "0.32.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-hermes-parser/-/babel-plugin-syntax-hermes-parser-0.32.0.tgz#06f7452bf91adf6cafd7c98e7467404d4eb65cec" @@ -6046,6 +6019,11 @@ fastq@^1.6.0: dependencies: reusify "^1.0.4" +fb-dotslash@0.5.8: + version "0.5.8" + resolved "https://registry.yarnpkg.com/fb-dotslash/-/fb-dotslash-0.5.8.tgz#c5ef3dacd75e1ddb2197c367052464ddde0115f5" + integrity sha512-XHYLKk9J4BupDxi9bSEhkfss0m+Vr9ChTrjhf9l2iw3jB5C7BnY4GVPoMcqbrTutsKJso6yj2nAB6BI/F2oZaA== + fb-watchman@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.2.tgz#e9524ee6b5c77e9e5001af0f85f3adbb8623255c" @@ -6215,6 +6193,11 @@ flow-bin@^0.279.0: resolved "https://registry.yarnpkg.com/flow-bin/-/flow-bin-0.279.0.tgz#06e502a51d735083d715ef769f43bdcb0fc2bb61" integrity sha512-Xf0T82atOcEf5auHvJfUF+wWIxieBuUJZBu2hlAizdhAzwqSJic74ZLaL6N5SsE0SY9PxPf3Z/lBU7iRpRa9Lw== +flow-bin@^0.280.0: + version "0.280.0" + resolved "https://registry.yarnpkg.com/flow-bin/-/flow-bin-0.280.0.tgz#73db532b4ea072a20a47277a38c0ab9f4f4600e6" + integrity sha512-7WHDjleRd6KDggSYovdrNSz1xMM9HKSI3ajHF3xMmWaETxx3SHnl60cclW6mPm3z+0FUVQSr7XFLiGSW3Zkq7Q== + flow-enums-runtime@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/flow-enums-runtime/-/flow-enums-runtime-0.0.6.tgz#5bb0cd1b0a3e471330f4d109039b7eba5cb3e787" @@ -6751,11 +6734,6 @@ hermes-estree@0.23.1: resolved "https://registry.yarnpkg.com/hermes-estree/-/hermes-estree-0.23.1.tgz#d0bac369a030188120ee7024926aabe5a9f84fdb" integrity sha512-eT5MU3f5aVhTqsfIReZ6n41X5sYn4IdQL0nvz6yO+MMlPxw49aSARHLg/MSehQftyjnrE8X6bYregzSumqc6cg== -hermes-estree@0.28.1: - version "0.28.1" - resolved "https://registry.yarnpkg.com/hermes-estree/-/hermes-estree-0.28.1.tgz#631e6db146b06e62fc1c630939acf4a3c77d1b24" - integrity sha512-w3nxl/RGM7LBae0v8LH2o36+8VqwOZGv9rX1wyoWT6YaKZLqpJZ0YQ5P0LVr3tuRpf7vCx0iIG4i/VmBJejxTQ== - hermes-estree@0.32.0: version "0.32.0" resolved "https://registry.yarnpkg.com/hermes-estree/-/hermes-estree-0.32.0.tgz#bb7da6613ab8e67e334a1854ea1e209f487d307b" @@ -6775,13 +6753,6 @@ hermes-parser@0.23.1: dependencies: hermes-estree "0.23.1" -hermes-parser@0.28.1: - version "0.28.1" - resolved "https://registry.yarnpkg.com/hermes-parser/-/hermes-parser-0.28.1.tgz#17b9e6377f334b6870a1f6da2e123fdcd0b605ac" - integrity sha512-nf8o+hE8g7UJWParnccljHumE9Vlq8F7MqIdeahl+4x0tvCUJYRrT0L7h0MMg/X9YJmkNwsfbaNNrzPtFXOscg== - dependencies: - hermes-estree "0.28.1" - hermes-parser@0.32.0: version "0.32.0" resolved "https://registry.yarnpkg.com/hermes-parser/-/hermes-parser-0.32.0.tgz#7916984ef6fdce62e7415d354cf35392061cd303" @@ -7639,11 +7610,6 @@ jest-environment-node@^29.7.0: jest-mock "^29.7.0" jest-util "^29.7.0" -jest-get-type@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-24.9.0.tgz#1684a0c8a50f2e4901b6644ae861f579eed2ef0e" - integrity sha512-lUseMzAley4LhIcpSP9Jf+fTrQ4a1yHQwLNeeVa2cEmbCGeoZAtYPOIv8JaxLD/sUpKxetKGP+gsHl8f8TSj8Q== - jest-get-type@^29.6.3: version "29.6.3" resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-29.6.3.tgz#36f499fdcea197c1045a127319c0481723908fd1" @@ -7668,17 +7634,6 @@ jest-haste-map@^29.7.0: optionalDependencies: fsevents "^2.3.2" -jest-junit@^10.0.0: - version "10.0.0" - resolved "https://registry.yarnpkg.com/jest-junit/-/jest-junit-10.0.0.tgz#c94b91c24920a327c9d2a075e897b2dba4af494b" - integrity sha512-dbOVRyxHprdSpwSAR9/YshLwmnwf+RSl5hf0kCGlhAcEeZY9aRqo4oNmaT0tLC16Zy9D0zekDjWkjHGjXlglaQ== - dependencies: - jest-validate "^24.9.0" - mkdirp "^0.5.1" - strip-ansi "^5.2.0" - uuid "^3.3.3" - xml "^1.0.1" - jest-junit@^13.0.0: version "13.2.0" resolved "https://registry.yarnpkg.com/jest-junit/-/jest-junit-13.2.0.tgz#66eeb86429aafac8c1745a70f44ace185aacb943" @@ -7689,6 +7644,16 @@ jest-junit@^13.0.0: uuid "^8.3.2" xml "^1.0.1" +jest-junit@^16.0.0: + version "16.0.0" + resolved "https://registry.yarnpkg.com/jest-junit/-/jest-junit-16.0.0.tgz#d838e8c561cf9fdd7eb54f63020777eee4136785" + integrity sha512-A94mmw6NfJab4Fg/BlvVOUXzXgF0XIH6EmTgJ5NDPp4xoKq0Kr7sErb+4Xs9nZvu58pJojz5RFGpqnZYJTrRfQ== + dependencies: + mkdirp "^1.0.4" + strip-ansi "^6.0.1" + uuid "^8.3.2" + xml "^1.0.1" + jest-leak-detector@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz#5b7ec0dadfdfec0ca383dc9aa016d36b5ea4c728" @@ -7857,18 +7822,6 @@ jest-util@^29.7.0: graceful-fs "^4.2.9" picomatch "^2.2.3" -jest-validate@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-24.9.0.tgz#0775c55360d173cd854e40180756d4ff52def8ab" - integrity sha512-HPIt6C5ACwiqSiwi+OfSSHbK8sG7akG8eATl+IPKaeIjtPOeBUd/g3J7DghugzxrGjI93qS/+RPKe1H6PqvhRQ== - dependencies: - "@jest/types" "^24.9.0" - camelcase "^5.3.1" - chalk "^2.0.1" - jest-get-type "^24.9.0" - leven "^3.1.0" - pretty-format "^24.9.0" - jest-validate@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-29.7.0.tgz#7bf705511c64da591d46b15fce41400d52147d9c" @@ -8767,30 +8720,6 @@ metro-runtime@0.83.3, metro-runtime@^0.83.1: "@babel/runtime" "^7.25.0" flow-enums-runtime "^0.0.6" -metro-runtime@^0.82.2: - version "0.82.5" - resolved "https://registry.yarnpkg.com/metro-runtime/-/metro-runtime-0.82.5.tgz#97840760e4cee49f08948dd918dbeba08dd0d0ec" - integrity sha512-rQZDoCUf7k4Broyw3Ixxlq5ieIPiR1ULONdpcYpbJQ6yQ5GGEyYjtkztGD+OhHlw81LCR2SUAoPvtTus2WDK5g== - dependencies: - "@babel/runtime" "^7.25.0" - flow-enums-runtime "^0.0.6" - -metro-source-map@0.82.5, metro-source-map@^0.82.2: - version "0.82.5" - resolved "https://registry.yarnpkg.com/metro-source-map/-/metro-source-map-0.82.5.tgz#85e2e9672bff6d6cefb3b65b96fcc69f929c69c6" - integrity sha512-wH+awTOQJVkbhn2SKyaw+0cd+RVSCZ3sHVgyqJFQXIee/yLs3dZqKjjeKKhhVeudgjXo7aE/vSu/zVfcQEcUfw== - dependencies: - "@babel/traverse" "^7.25.3" - "@babel/traverse--for-generate-function-map" "npm:@babel/traverse@^7.25.3" - "@babel/types" "^7.25.2" - flow-enums-runtime "^0.0.6" - invariant "^2.2.4" - metro-symbolicate "0.82.5" - nullthrows "^1.1.1" - ob1 "0.82.5" - source-map "^0.5.6" - vlq "^1.0.0" - metro-source-map@0.83.3, metro-source-map@^0.83.1: version "0.83.3" resolved "https://registry.yarnpkg.com/metro-source-map/-/metro-source-map-0.83.3.tgz#04bb464f7928ea48bcdfd18912c8607cf317c898" @@ -8807,18 +8736,6 @@ metro-source-map@0.83.3, metro-source-map@^0.83.1: source-map "^0.5.6" vlq "^1.0.0" -metro-symbolicate@0.82.5: - version "0.82.5" - resolved "https://registry.yarnpkg.com/metro-symbolicate/-/metro-symbolicate-0.82.5.tgz#b53255cad11f1e6795f319ca4b41857bfe295d65" - integrity sha512-1u+07gzrvYDJ/oNXuOG1EXSvXZka/0JSW1q2EYBWerVKMOhvv9JzDGyzmuV7hHbF2Hg3T3S2uiM36sLz1qKsiw== - dependencies: - flow-enums-runtime "^0.0.6" - invariant "^2.2.4" - metro-source-map "0.82.5" - nullthrows "^1.1.1" - source-map "^0.5.6" - vlq "^1.0.0" - metro-symbolicate@0.83.3: version "0.83.3" resolved "https://registry.yarnpkg.com/metro-symbolicate/-/metro-symbolicate-0.83.3.tgz#67af03950f0dfe19a7c059e3983e39a31e95d03a" @@ -9576,13 +9493,6 @@ nullthrows@^1.1.1: resolved "https://registry.yarnpkg.com/nullthrows/-/nullthrows-1.1.1.tgz#7818258843856ae971eae4208ad7d7eb19a431b1" integrity sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw== -ob1@0.82.5: - version "0.82.5" - resolved "https://registry.yarnpkg.com/ob1/-/ob1-0.82.5.tgz#a2860e39385f4602bc2666c46f331b7531b94a8b" - integrity sha512-QyQQ6e66f+Ut/qUVjEce0E/wux5nAGLXYZDn1jr15JWstHsCH3l6VVrg8NKDptW9NEiBXKOJeGF/ydxeSDF3IQ== - dependencies: - flow-enums-runtime "^0.0.6" - ob1@0.83.3: version "0.83.3" resolved "https://registry.yarnpkg.com/ob1/-/ob1-0.83.3.tgz#2208e20c9070e9beff3ad067f2db458fa6b07014" @@ -10150,16 +10060,6 @@ prettier@3.6.2: resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.6.2.tgz#ccda02a1003ebbb2bfda6f83a074978f608b9393" integrity sha512-I7AIg5boAr5R0FFtJ6rCfD+LFsWHp81dolrFD8S79U9tb8Az2nGrJncnMSnys+bpQJfRUzqs9hnA81OAA3hCuQ== -pretty-format@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-24.9.0.tgz#12fac31b37019a4eea3c11aa9a959eb7628aa7c9" - integrity sha512-00ZMZUiHaJrNfk33guavqgvfJS30sLYf0f8+Srklv0AMPodGGHcoHgksZ3OThYnIvOd+8yMCn0YiEOogjlgsnA== - dependencies: - "@jest/types" "^24.9.0" - ansi-regex "^4.0.0" - ansi-styles "^3.2.0" - react-is "^16.8.4" - pretty-format@^29.0.0, pretty-format@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.7.0.tgz#ca42c758310f365bfa71a0bda0a807160b776812" @@ -10359,7 +10259,7 @@ react-clone-referenced-element@^1.0.1: resolved "https://registry.yarnpkg.com/react-clone-referenced-element/-/react-clone-referenced-element-1.1.1.tgz#8d76727dc0459788e461741e804a512d20757381" integrity sha512-LZBPvQV8W0B5dFzXFu+D3Tpil8YHS8tO00iFsfXcTLdtpuH7XyvaHqHcoz4hd4uNPQCZ30fceh+s7mLznzMXvg== -react-devtools-core@^6.1.1, react-devtools-core@^6.1.5: +react-devtools-core@^6.1.5: version "6.1.5" resolved "https://registry.yarnpkg.com/react-devtools-core/-/react-devtools-core-6.1.5.tgz#c5eca79209dab853a03b2158c034c5166975feee" integrity sha512-ePrwPfxAnB+7hgnEr8vpKxL9cmnp7F322t8oqcPshbIQQhDKgFDW4tjhF2wjVbdXF9O/nyuy3sQWd9JGpiLPvA== @@ -10367,7 +10267,7 @@ react-devtools-core@^6.1.1, react-devtools-core@^6.1.5: shell-quote "^1.6.1" ws "^7" -react-is@^16.13.1, react-is@^16.8.4: +react-is@^16.13.1: version "16.13.1" resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== @@ -10382,19 +10282,44 @@ react-is@^19.0.0, react-is@^19.1.1: resolved "https://registry.yarnpkg.com/react-is/-/react-is-19.2.1.tgz#712fa6ee30c8398dc34260017325dad92b9224c5" integrity sha512-L7BnWgRbMwzMAubQcS7sXdPdNLmKlucPlopgAzx7FtYbksWZgEWiuYM5x9T6UqS2Ne0rsgQTq5kY2SGqpzUkYA== -react-native@0.82.0-nightly-20250821-0ef21bf8a: - version "0.82.0-nightly-20250821-0ef21bf8a" - resolved "https://registry.yarnpkg.com/react-native/-/react-native-0.82.0-nightly-20250821-0ef21bf8a.tgz#6a3c4d980e5e7fec2f6a2535778dfd655e43bf66" - integrity sha512-jLY46ORgaGXgk4ndJPiK02OIqQqShdtr09bjZ43w0FH6cUlhPENT9lri8zZZ9HuWsyhOkG6JiIce7BBLBf0wvA== +react-native-platform-override@0.0.0-canary.1016: + version "0.0.0-canary.1016" + resolved "https://registry.yarnpkg.com/react-native-platform-override/-/react-native-platform-override-0.0.0-canary.1016.tgz#6b6e66a2fb8e9c3295a7daa11987cd73dec616b7" + integrity sha512-PZPVmP0isrxjhtMgfRYpkgrbPPd8FejOLIB9KqVknAfCQT+Lgwh5mtl2JZQbtxaoyAzXZj71g493PSRFbcM3vw== + dependencies: + "@react-native-windows/fs" "^0.0.0-canary.70" + "@react-native-windows/package-utils" "^0.0.0-canary.96" + "@typescript-eslint/eslint-plugin" "^7.1.1" + "@typescript-eslint/parser" "^7.1.1" + async "^3.2.3" + chalk "^4.1.0" + fp-ts "^2.5.0" + globby "^11.1.0" + inquirer "^7.1.0" + io-ts "^2.1.1" + isutf8 "^3.0.0" + lodash "^4.17.15" + node-fetch "^2.6.7" + ora "^3.4.0" + semver "^7.3.2" + simple-git "^3.3.0" + source-map-support "^0.5.19" + 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== dependencies: "@jest/create-cache-key-function" "^29.7.0" - "@react-native/assets-registry" "0.82.0-nightly-20250821-0ef21bf8a" - "@react-native/codegen" "0.82.0-nightly-20250821-0ef21bf8a" - "@react-native/community-cli-plugin" "0.82.0-nightly-20250821-0ef21bf8a" - "@react-native/gradle-plugin" "0.82.0-nightly-20250821-0ef21bf8a" - "@react-native/js-polyfills" "0.82.0-nightly-20250821-0ef21bf8a" - "@react-native/normalize-colors" "0.82.0-nightly-20250821-0ef21bf8a" - "@react-native/virtualized-lists" "0.82.0-nightly-20250821-0ef21bf8a" + "@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" abort-controller "^3.0.0" anser "^1.4.9" ansi-regex "^5.0.0" @@ -10443,7 +10368,7 @@ react-test-renderer@19.1.1: react-is "^19.1.1" scheduler "^0.26.0" -react@19.1.0, react@19.1.1, react@^19.1.0: +react@19.1.0, react@19.1.1, react@^19.1.1: version "19.1.1" resolved "https://registry.yarnpkg.com/react/-/react-19.1.1.tgz#06d9149ec5e083a67f9a1e39ce97b06a03b644af" integrity sha512-w8nqGImo45dmMIfljjMwOGtbmC/mk4CMYhWIicdSflH91J9TyCyczcPFXJzrZ/ZXcgGRFeP6BU0BEJTw6tZdfQ== @@ -12056,11 +11981,6 @@ utils-merge@1.0.1: resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA== -uuid@^3.3.3: - version "3.4.0" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" - integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== - uuid@^8.0.0, uuid@^8.3.0, uuid@^8.3.2: version "8.3.2" resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" From bb50808b9f7e63da8af5511bf4b2faf064add19f Mon Sep 17 00:00:00 2001 From: Abhijeet Jha <74712637+iamAbhi-916@users.noreply.github.com> Date: Fri, 26 Dec 2025 12:20:47 +0530 Subject: [PATCH 03/30] conflict resolution --- .../src-win/Libraries/Image/Image.win32.js | 17 +----- .../src-win/Libraries/Text/Text.win32.js | 6 -- .../components/view/AccessibilityPrimitives.h | 60 ------------------- .../src-win/Libraries/Image/Image.windows.js | 3 - vnext/src-win/Libraries/Text/Text.windows.js | 3 - 5 files changed, 1 insertion(+), 88 deletions(-) diff --git a/packages/@office-iss/react-native-win32/src-win/Libraries/Image/Image.win32.js b/packages/@office-iss/react-native-win32/src-win/Libraries/Image/Image.win32.js index 3602f6cec91..38d730572f8 100644 --- a/packages/@office-iss/react-native-win32/src-win/Libraries/Image/Image.win32.js +++ b/packages/@office-iss/react-native-win32/src-win/Libraries/Image/Image.win32.js @@ -206,27 +206,13 @@ let BaseImage: AbstractImageIOS = ({ // Win32] return ( -<<<<<<< Upstream - -======= {analyticTag => { return ( ->>>>>>> Override ); }} diff --git a/packages/@office-iss/react-native-win32/src-win/Libraries/Text/Text.win32.js b/packages/@office-iss/react-native-win32/src-win/Libraries/Text/Text.win32.js index 43e1dae81ae..8c4346e56c4 100644 --- a/packages/@office-iss/react-native-win32/src-win/Libraries/Text/Text.win32.js +++ b/packages/@office-iss/react-native-win32/src-win/Libraries/Text/Text.win32.js @@ -560,9 +560,7 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) { accessibilityElementsHidden: _accessibilityElementsHidden, accessibilityLabel: _accessibilityLabel, accessibilityState: _accessibilityState, -<<<<<<< Upstream importantForAccessibility: _importantForAccessibility, -======= // #[ Win32 accessibilityControls: _accessibilityControls, accessibilityDescribedBy: _accessibilityDescribedBy, @@ -571,7 +569,6 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) { accessibilityPositionInSet: _accessibilityPositionInSet, accessibilitySetSize: _accessibilitySetSize, // #] Win32 ->>>>>>> Override nativeID: _nativeID, numberOfLines: _numberOfLines, selectable: _selectable, @@ -604,9 +601,7 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) { accessibilityElementsHidden={_accessibilityElementsHidden} accessibilityLabel={_accessibilityLabel} accessibilityState={_accessibilityState} -<<<<<<< Upstream importantForAccessibility={_importantForAccessibility} -======= // #[ Win32 accessibilityControls={_accessibilityControls} accessibilityDescribedBy={_accessibilityDescribedBy} @@ -615,7 +610,6 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) { accessibilityPositionInSet={_accessibilityPositionInSet} accessibilitySetSize={_accessibilitySetSize} // #] Win32 ->>>>>>> Override nativeID={_nativeID} numberOfLines={_numberOfLines} ref={forwardedRef} diff --git a/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/AccessibilityPrimitives.h b/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/AccessibilityPrimitives.h index c6ef8077c95..3c2eb2fc187 100644 --- a/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/AccessibilityPrimitives.h +++ b/vnext/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/AccessibilityPrimitives.h @@ -90,41 +90,6 @@ constexpr bool operator!=( return !(rhs == lhs); } -<<<<<<< Upstream -======= -#if RN_DEBUG_STRING_CONVERTIBLE -inline std::string toString(AccessibilityState::CheckedState state) { - switch (state) { - case AccessibilityState::Unchecked: - return "Unchecked"; - case AccessibilityState::Checked: - return "Checked"; - case AccessibilityState::Mixed: - return "Mixed"; - case AccessibilityState::None: - return "None"; -//#[Windows -#if defined(_MSC_VER) - default: - __assume(0); -#elif defined(__GNUC__) || defined(__clang__) - default: - __builtin_unreachable(); -#endif -// 15379 #Windows] - } -} - -inline std::string toString(const AccessibilityState& accessibilityState) { - return "{disabled:" + toString(accessibilityState.disabled) + - ",selected:" + toString(accessibilityState.selected) + - ",checked:" + toString(accessibilityState.checked) + - ",busy:" + toString(accessibilityState.busy) + - ",expanded:" + toString(accessibilityState.expanded) + "}"; -} -#endif - ->>>>>>> Override struct AccessibilityLabelledBy { std::vector value{}; }; @@ -174,32 +139,7 @@ enum class AccessibilityLiveRegion : uint8_t { Assertive, }; -<<<<<<< Upstream enum class AccessibilityRole : uint8_t { -======= -inline std::string toString( - const AccessibilityLiveRegion& accessibilityLiveRegion) { - switch (accessibilityLiveRegion) { - case AccessibilityLiveRegion::None: - return "none"; - case AccessibilityLiveRegion::Polite: - return "polite"; - case AccessibilityLiveRegion::Assertive: - return "assertive"; -//#[Windows -#if defined(_MSC_VER) - default: - __assume(0); -#elif defined(__GNUC__) || defined(__clang__) - default: - __builtin_unreachable(); -#endif -// 15379 #Windows] - } -} - -enum class AccessibilityRole { ->>>>>>> Override None, Button, Dropdownlist, diff --git a/vnext/src-win/Libraries/Image/Image.windows.js b/vnext/src-win/Libraries/Image/Image.windows.js index 55d863ef29c..8e663181faf 100644 --- a/vnext/src-win/Libraries/Image/Image.windows.js +++ b/vnext/src-win/Libraries/Image/Image.windows.js @@ -155,9 +155,7 @@ let BaseImage: AbstractImageIOS = ({ 'aria-disabled': ariaDisabled, 'aria-expanded': ariaExpanded, 'aria-selected': ariaSelected, -<<<<<<< Upstream 'aria-hidden': ariaHidden, -======= 'aria-readonly': ariaReadOnly, // Windows 'aria-multiselectable': ariaMultiselectable, // Windows 'aria-required': ariaRequired, // Windows, @@ -165,7 +163,6 @@ let BaseImage: AbstractImageIOS = ({ 'aria-posinset': ariaPosinset, // Windows 'aria-setsize': ariaSetsize, // Windows height, ->>>>>>> Override src, ...restProps } = props; diff --git a/vnext/src-win/Libraries/Text/Text.windows.js b/vnext/src-win/Libraries/Text/Text.windows.js index 5f23bf20f78..381732d96d5 100644 --- a/vnext/src-win/Libraries/Text/Text.windows.js +++ b/vnext/src-win/Libraries/Text/Text.windows.js @@ -543,16 +543,13 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) { accessibilityElementsHidden: _accessibilityElementsHidden, accessibilityLabel: _accessibilityLabel, accessibilityState: _accessibilityState, -<<<<<<< Upstream importantForAccessibility: _importantForAccessibility, -======= // #[Windows accessibilityLevel: _accessibilityLevel, // Windows accessibilityPosInSet: _accessibilityPosInSet, // Windows accessibilitySetSize: _accessibilitySetSize, // Windows ellipsizeMode: ellipsizeMode ?? 'tail', // Windows // #]Windows ->>>>>>> Override nativeID: _nativeID, numberOfLines: _numberOfLines, selectable: _selectable, From cde12172d3b37f7c6a162a928d9eb8b3c7addb92 Mon Sep 17 00:00:00 2001 From: Abhijeet Jha <74712637+iamAbhi-916@users.noreply.github.com> Date: Fri, 26 Dec 2025 12:26:26 +0530 Subject: [PATCH 04/30] Update dependencies to latest nightly versions --- packages/@react-native-windows/tester/package.json | 4 ++-- packages/@react-native/tester/package.json | 6 +++--- packages/@rnw-scripts/eslint-config/package.json | 4 ++-- packages/sample-app-fabric/package.json | 4 ++-- vnext/package.json | 4 ++-- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/packages/@react-native-windows/tester/package.json b/packages/@react-native-windows/tester/package.json index 0d4ea136c93..4d1a53e5e54 100644 --- a/packages/@react-native-windows/tester/package.json +++ b/packages/@react-native-windows/tester/package.json @@ -24,7 +24,7 @@ "react-native-xaml": "^0.0.80" }, "devDependencies": { - "@react-native/new-app-screen": "0.82.0-nightly-20250821-0ef21bf8a", + "@react-native/new-app-screen": "0.82.0-nightly-20250902-9731e8ebc", "@react-native/tester": "0.82.0-main", "@rnw-scripts/babel-react-native-config": "0.0.0", "@rnw-scripts/eslint-config": "1.2.38", @@ -41,4 +41,4 @@ "engines": { "node": ">= 22" } -} +} \ No newline at end of file diff --git a/packages/@react-native/tester/package.json b/packages/@react-native/tester/package.json index b5f1696e8dd..5e2088877aa 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-20250821-0ef21bf8a", - "@react-native/popup-menu-android": "0.82.0-nightly-20250821-0ef21bf8a", + "@react-native/new-app-screen": "0.82.0-nightly-20250902-9731e8ebc", + "@react-native/popup-menu-android": "0.82.0-nightly-20250902-9731e8ebc", "flow-enums-runtime": "^0.0.6", "invariant": "^2.2.4", "nullthrows": "^1.1.1" @@ -64,4 +64,4 @@ "listr2": "^6.4.1", "rxjs": "npm:@react-native-community/rxjs@6.5.4-custom" } -} +} \ 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 ae79cb8f9fe..81020ccddf7 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-20250821-0ef21bf8a", + "@react-native/eslint-config": "0.82.0-nightly-20250902-9731e8ebc", "eslint-config-prettier": "^8.5.0", "eslint-plugin-ft-flow": "^2.0.1", "hermes-eslint": "0.23.1" @@ -29,4 +29,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 d08a88a7be5..ef7ee737cd2 100644 --- a/packages/sample-app-fabric/package.json +++ b/packages/sample-app-fabric/package.json @@ -12,7 +12,7 @@ "bundle": "rnw-scripts prepareBundle && npx @react-native-community/cli bundle --platform windows --entry-file App.tsx --bundle-output windows/SampleAppFabric/Bundle/app.windows.bundle --assets-dest windows/SampleAppFabric/Bundle" }, "dependencies": { - "@react-native/new-app-screen": "0.82.0-nightly-20250821-0ef21bf8a", + "@react-native/new-app-screen": "0.82.0-nightly-20250902-9731e8ebc", "@types/react": "^19.1.1", "@typescript-eslint/eslint-plugin": "^7.1.1", "@typescript-eslint/parser": "^7.1.1", @@ -49,4 +49,4 @@ "engines": { "node": ">=18" } -} +} \ No newline at end of file diff --git a/vnext/package.json b/vnext/package.json index 46dbfcb7bb2..18b3cb2ba86 100644 --- a/vnext/package.json +++ b/vnext/package.json @@ -33,7 +33,7 @@ "@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-20250821-0ef21bf8a", + "@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", "abort-controller": "^3.0.0", @@ -150,4 +150,4 @@ "engines": { "node": ">= 22" } -} +} \ No newline at end of file From 5c7e4a370b4edd84dc08c06a38af23b9208cc61b Mon Sep 17 00:00:00 2001 From: Abhijeet Jha <74712637+iamAbhi-916@users.noreply.github.com> Date: Fri, 26 Dec 2025 12:38:55 +0530 Subject: [PATCH 05/30] rn-tester updated files --- .../Accessibility/AccessibilityExample.js | 94 ++++++++++++++++++- .../Animated/TransformStylesExample.js | 1 + .../examples/Appearance/AppearanceExample.js | 7 +- .../DrawerLayoutAndroidExample.js | 4 +- .../ManyPointersPropertiesExample.js | 2 +- .../PointerEventSupport.js | 7 +- .../W3CPointerEventsEventfulView.js | 3 +- .../js/examples/Filter/FilterExample.js | 2 +- .../MixBlendMode/MixBlendModeExample.js | 2 +- .../PointerEvents/PointerEventsExample.js | 4 +- .../Pressable/PressableExampleFbInternal.js | 2 +- .../js/examples/Text/TextSharedExamples.js | 14 ++- .../NativeCxxModuleExampleExample.js | 2 +- .../tester/js/examples/XHR/XHRExampleFetch.js | 16 +++- 14 files changed, 138 insertions(+), 22 deletions(-) diff --git a/packages/@react-native/tester/js/examples/Accessibility/AccessibilityExample.js b/packages/@react-native/tester/js/examples/Accessibility/AccessibilityExample.js index 71906a96d54..2be1048de48 100644 --- a/packages/@react-native/tester/js/examples/Accessibility/AccessibilityExample.js +++ b/packages/@react-native/tester/js/examples/Accessibility/AccessibilityExample.js @@ -30,6 +30,7 @@ import { ScrollView, StyleSheet, Switch, + Text, TextInput, TouchableNativeFeedback, TouchableOpacity, @@ -1330,7 +1331,7 @@ function SetAccessibilityFocusExample(props: {}): React.Node { return ( - {/* $FlowFixMe[incompatible-type */} + {/* $FlowFixMe[incompatible-type] */} SetAccessibilityFocus on native element. This should get focus after clicking the button! @@ -2136,6 +2137,91 @@ function LabelCooptingExample(): React.Node { ); } +function AriaHiddenExample(): React.Node { + const [ariaHidden, setAriaHidden] = useState(false); + + return ( + + + + Enable aria-hidden + + setAriaHidden(!ariaHidden)} + accessibilityLabel="Enable aria-hidden" + /> + + + + + + View with Text content + + + Regular Text + + + + + + console.log('Pressed')} + aria-label={ + ariaHidden ? 'This should be hidden' : 'This should be accessible' + } + style={styles.button}> + Pressable with text content + + + + + ); +} + exports.title = 'Accessibility'; exports.documentationURL = 'https://reactnative.dev/docs/accessibilityinfo'; exports.description = 'Examples of using Accessibility APIs.'; @@ -2251,4 +2337,10 @@ exports.examples = [ return ; }, }, + { + title: 'aria-hidden', + render(): React.MixedElement { + return ; + }, + }, ] as Array; diff --git a/packages/@react-native/tester/js/examples/Animated/TransformStylesExample.js b/packages/@react-native/tester/js/examples/Animated/TransformStylesExample.js index df5f7b63ffb..4168e877a57 100644 --- a/packages/@react-native/tester/js/examples/Animated/TransformStylesExample.js +++ b/packages/@react-native/tester/js/examples/Animated/TransformStylesExample.js @@ -82,6 +82,7 @@ function AnimatedTransformStyleExample(): React.Node { const [properties, setProperties] = useState(transformProperties); const [useNativeDriver, setUseNativeDriver] = useState(false); const onToggle = (property: string) => + // $FlowFixMe[incompatible-type] setProperties({ ...properties, [property]: { diff --git a/packages/@react-native/tester/js/examples/Appearance/AppearanceExample.js b/packages/@react-native/tester/js/examples/Appearance/AppearanceExample.js index 427653514f6..c95d77150ec 100644 --- a/packages/@react-native/tester/js/examples/Appearance/AppearanceExample.js +++ b/packages/@react-native/tester/js/examples/Appearance/AppearanceExample.js @@ -136,7 +136,7 @@ const ColorShowcase = (props: {themeName: string}) => ( const ToggleNativeAppearance = () => { const [nativeColorScheme, setNativeColorScheme] = - useState(null); + useState('unspecified'); const colorScheme = useColorScheme(); useEffect(() => { @@ -155,7 +155,10 @@ const ToggleNativeAppearance = () => { title="Set to dark" onPress={() => setNativeColorScheme('dark')} /> -