react-native-windows 0.74.45 → 0.74.47
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Libraries/Components/View/View.windows.js +13 -5
- package/Libraries/Components/View/ViewAccessibility.d.ts +67 -0
- package/Libraries/Components/View/ViewPropTypes.windows.js +2 -0
- package/Libraries/NativeComponent/BaseViewConfig.windows.js +4 -0
- package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper.cpp +1 -1
- package/Microsoft.ReactNative/Fabric/Composition/CompositionDynamicAutomationProvider.cpp +47 -0
- package/Microsoft.ReactNative/Fabric/Composition/CompositionDynamicAutomationProvider.h +1 -0
- package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.cpp +81 -94
- package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.h +1 -1
- package/Microsoft.ReactNative/Fabric/Composition/CompositionTextProvider.cpp +115 -0
- package/Microsoft.ReactNative/Fabric/Composition/CompositionTextProvider.h +41 -0
- package/Microsoft.ReactNative/Fabric/Composition/CompositionTextRangeProvider.cpp +319 -0
- package/Microsoft.ReactNative/Fabric/Composition/CompositionTextRangeProvider.h +59 -0
- package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.cpp +47 -0
- package/Microsoft.ReactNative/Fabric/Composition/ParagraphComponentView.cpp +43 -34
- package/Microsoft.ReactNative/Fabric/Composition/SwitchComponentView.cpp +11 -0
- package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.cpp +149 -17
- package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.h +5 -0
- package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputProps.cpp +2 -1
- package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputProps.h +2 -1
- package/Microsoft.ReactNative/Fabric/Composition/UiaHelpers.cpp +43 -1
- package/Microsoft.ReactNative/Fabric/Composition/UiaHelpers.h +27 -2
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/HostPlatformViewEventEmitter.cpp +22 -4
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/HostPlatformViewEventEmitter.h +16 -3
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/HostPlatformViewProps.cpp +24 -0
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/HostPlatformViewProps.h +4 -0
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/MouseEvent.h +20 -0
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/textlayoutmanager/TextLayoutManager.cpp +133 -32
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/textlayoutmanager/TextLayoutManager.h +12 -0
- package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj.filters +1 -3
- package/Microsoft.ReactNative.Cxx/JSValue.cpp +19 -3
- package/Microsoft.ReactNative.Cxx/JSValue.h +15 -7
- package/Microsoft.ReactNative.Managed.CodeGen/Microsoft.ReactNative.Managed.CodeGen.csproj +1 -1
- package/Microsoft.ReactNative.Managed.CodeGen/Properties/PublishProfiles/DeployAsTool-Debug.pubxml +1 -1
- package/Microsoft.ReactNative.Managed.CodeGen/Properties/PublishProfiles/DeployAsTool-Release.pubxml +1 -1
- package/Microsoft.ReactNative.Managed.CodeGen/packages.lock.json +3 -3
- package/PropertySheets/External/Microsoft.ReactNative.WindowsSdk.Default.props +4 -4
- package/PropertySheets/Generated/PackageVersion.g.props +3 -3
- package/Scripts/Tfs/Start-TestServers.ps1 +2 -1
- package/Scripts/rnw-dependencies.ps1 +38 -25
- package/Shared/Shared.vcxitems +6 -0
- package/Shared/Shared.vcxitems.filters +8 -0
- package/package.json +3 -3
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
|
|
1
2
|
# Troubleshoot RNW dependencies
|
|
2
3
|
param(
|
|
3
4
|
[switch]$Install = $false,
|
|
@@ -65,32 +66,31 @@ $vsComponents = @('Microsoft.Component.MSBuild',
|
|
|
65
66
|
'Microsoft.VisualStudio.Component.VC.Tools.x86.x64',
|
|
66
67
|
'Microsoft.VisualStudio.ComponentGroup.UWP.Support',
|
|
67
68
|
'Microsoft.VisualStudio.ComponentGroup.NativeDesktop.Core',
|
|
68
|
-
'Microsoft.VisualStudio.Component.Windows10SDK.19041'
|
|
69
|
+
'Microsoft.VisualStudio.Component.Windows10SDK.19041',
|
|
70
|
+
'Microsoft.VisualStudio.Component.Windows11SDK.22621');
|
|
69
71
|
|
|
70
72
|
# UWP.VC is not needed to build the projects with msbuild, but the VS IDE requires it.
|
|
71
73
|
if (!($tagsToInclude.Contains('buildLab'))) {
|
|
72
74
|
$vsComponents += 'Microsoft.VisualStudio.ComponentGroup.UWP.VC';
|
|
73
75
|
}
|
|
74
76
|
|
|
75
|
-
# Windows11SDK is only needed for the more experimental composition projects using newer WinAppSDK versions
|
|
76
|
-
if ($tagsToInclude.Contains('rnwDev')) {
|
|
77
|
-
$vsComponents += 'Microsoft.VisualStudio.Component.Windows11SDK.22000';
|
|
78
|
-
}
|
|
79
|
-
|
|
80
77
|
$vsWorkloads = @('Microsoft.VisualStudio.Workload.ManagedDesktop',
|
|
81
78
|
'Microsoft.VisualStudio.Workload.NativeDesktop',
|
|
82
79
|
'Microsoft.VisualStudio.Workload.Universal');
|
|
83
80
|
|
|
84
81
|
$vsAll = ($vsComponents + $vsWorkloads);
|
|
85
82
|
|
|
83
|
+
# The minimum winget version to check for
|
|
84
|
+
$wingetver = "1.7.11261";
|
|
85
|
+
|
|
86
86
|
# The minimum VS version to check for
|
|
87
87
|
# Note: For install to work, whatever min version you specify here must be met by the current package available on winget.
|
|
88
88
|
$vsver = "17.11.0";
|
|
89
89
|
|
|
90
90
|
# The exact .NET SDK version to check for
|
|
91
|
-
$dotnetver = "
|
|
91
|
+
$dotnetver = "8.0";
|
|
92
92
|
# Version name of the winget package
|
|
93
|
-
$wingetDotNetVer = "
|
|
93
|
+
$wingetDotNetVer = "8";
|
|
94
94
|
|
|
95
95
|
$v = [System.Environment]::OSVersion.Version;
|
|
96
96
|
if ($env:Agent_BuildDirectory) {
|
|
@@ -127,7 +127,7 @@ function Get-VSPathPropertyForEachInstall {
|
|
|
127
127
|
[String[]]$paths = ($output | Where-Object { (Test-Path $_) });
|
|
128
128
|
return $paths;
|
|
129
129
|
}
|
|
130
|
-
|
|
130
|
+
|
|
131
131
|
return $null;
|
|
132
132
|
}
|
|
133
133
|
|
|
@@ -187,26 +187,26 @@ function GetVSChannelAndProduct {
|
|
|
187
187
|
param(
|
|
188
188
|
[string]$VsWhere
|
|
189
189
|
)
|
|
190
|
-
|
|
190
|
+
|
|
191
191
|
if ($VsWhere) {
|
|
192
192
|
$channelId = & $VsWhere -version $vsver -property channelId;
|
|
193
193
|
$productId = & $VsWhere -version $vsver -property productId;
|
|
194
|
-
|
|
194
|
+
|
|
195
195
|
# Channel/product not found, check one more time for pre-release
|
|
196
196
|
if (($channelId -eq $null) -or ($productId -eq $null)) {
|
|
197
197
|
$channelId = & $VsWhere -version $vsver -property channelId -prerelease;
|
|
198
198
|
$productId = & $VsWhere -version $vsver -property productId -prerelease;
|
|
199
199
|
}
|
|
200
|
-
|
|
200
|
+
|
|
201
201
|
return $channelId, $productId;
|
|
202
202
|
}
|
|
203
|
-
|
|
203
|
+
|
|
204
204
|
return $null, $null;
|
|
205
205
|
}
|
|
206
206
|
|
|
207
207
|
function InstallVS {
|
|
208
208
|
$vsWhere = Get-VSWhere;
|
|
209
|
-
|
|
209
|
+
|
|
210
210
|
$channelId, $productId = GetVSChannelAndProduct -VsWhere $vsWhere
|
|
211
211
|
|
|
212
212
|
if (($vsWhere -eq $null) -or ($channelId -eq $null) -or ($productId -eq $null)) {
|
|
@@ -223,7 +223,7 @@ function InstallVS {
|
|
|
223
223
|
|
|
224
224
|
$channelId, $productId = GetVSChannelAndProduct -VsWhere $vsWhere
|
|
225
225
|
}
|
|
226
|
-
|
|
226
|
+
|
|
227
227
|
# Final check before attempting install
|
|
228
228
|
if (($vsWhere -eq $null) -or ($channelId -eq $null) -or ($productId -eq $null)) {
|
|
229
229
|
throw "Unable to find or install a compatible version of Visual Studio >= ($vsver).";
|
|
@@ -240,8 +240,9 @@ function CheckNode {
|
|
|
240
240
|
try {
|
|
241
241
|
$nodeVersion = (Get-Command node -ErrorAction Stop).Version;
|
|
242
242
|
Write-Verbose "Node version found: $nodeVersion";
|
|
243
|
-
$
|
|
244
|
-
|
|
243
|
+
$major = $nodeVersion.Major;
|
|
244
|
+
$minor = $nodeVersion.Minor;
|
|
245
|
+
return ($major -gt 22) -or (($major -eq 22) -and ($minor -ge 14));
|
|
245
246
|
} catch { Write-Debug $_ }
|
|
246
247
|
|
|
247
248
|
Write-Verbose "Node not found.";
|
|
@@ -331,7 +332,7 @@ function InstallCppWinRT_VSIX {
|
|
|
331
332
|
$url = "https://marketplace.visualstudio.com/_apis/public/gallery/publishers/CppWinRTTeam/vsextensions/cppwinrt101804264/2.0.210304.5/vspackage";
|
|
332
333
|
Write-Verbose "Downloading CppWinRT VSIX from $url";
|
|
333
334
|
Invoke-WebRequest -UseBasicParsing $url -OutFile $env:TEMP\Microsoft.Windows.CppWinRT.vsix;
|
|
334
|
-
|
|
335
|
+
|
|
335
336
|
$vsWhere = Get-VSWhere;
|
|
336
337
|
if ($vsWhere -eq $null) {
|
|
337
338
|
return;
|
|
@@ -437,10 +438,10 @@ $requirements = @(
|
|
|
437
438
|
},
|
|
438
439
|
@{
|
|
439
440
|
Id=[CheckId]::Node;
|
|
440
|
-
Name = 'Node.js (LTS, >=
|
|
441
|
+
Name = 'Node.js (LTS, >= 22.0)';
|
|
441
442
|
Tags = @('appDev');
|
|
442
443
|
Valid = { CheckNode; }
|
|
443
|
-
Install = { WinGetInstall OpenJS.NodeJS.LTS "
|
|
444
|
+
Install = { WinGetInstall OpenJS.NodeJS.LTS "22.14.0" };
|
|
444
445
|
HasVerboseOutput = $true;
|
|
445
446
|
},
|
|
446
447
|
@{
|
|
@@ -517,18 +518,30 @@ $requirements = @(
|
|
|
517
518
|
}
|
|
518
519
|
);
|
|
519
520
|
|
|
521
|
+
function InstallWinGet {
|
|
522
|
+
Write-Verbose "Updating WinGet version...";
|
|
523
|
+
Invoke-WebRequest -Uri https://aka.ms/getwinget -OutFile "$env:TEMP\winget.msixbundle";
|
|
524
|
+
Add-AppPackage -ForceApplicationShutdown $env:TEMP\winget.msixbundle;
|
|
525
|
+
Remove-Item $env:TEMP\winget.msixbundle;
|
|
526
|
+
}
|
|
527
|
+
|
|
520
528
|
function EnsureWinGetForInstall {
|
|
521
529
|
Write-Verbose "Checking for WinGet...";
|
|
522
530
|
try {
|
|
523
531
|
# Check if winget.exe is in PATH
|
|
524
532
|
if (Get-Command "winget.exe" -CommandType Application -ErrorAction Ignore) {
|
|
525
533
|
Write-Verbose "WinGet found in PATH.";
|
|
526
|
-
|
|
534
|
+
Write-Verbose "Validating WinGet version...";
|
|
535
|
+
$wingetverfound = & winget -v;
|
|
536
|
+
if ([System.Version]$wingetverfound.Substring(1) -ge [System.Version]$wingetver ){
|
|
537
|
+
Write-Verbose "WinGet version found: $wingetverfound";
|
|
538
|
+
return;
|
|
539
|
+
}
|
|
527
540
|
}
|
|
541
|
+
InstallWinGet;
|
|
542
|
+
$installedwingetver = & winget -v;
|
|
543
|
+
Write-Verbose "WinGet version installed: $installedwingetver";
|
|
528
544
|
} catch { Write-Debug $_ }
|
|
529
|
-
|
|
530
|
-
Write-Host "WinGet is required to install dependencies. See https://learn.microsoft.com/en-us/windows/package-manager/winget/ for more information.";
|
|
531
|
-
throw "WinGet needed to install.";
|
|
532
545
|
}
|
|
533
546
|
|
|
534
547
|
function WinGetInstall {
|
|
@@ -546,7 +559,7 @@ function WinGetInstall {
|
|
|
546
559
|
& winget install "$wingetPackage" --accept-source-agreements --accept-package-agreements
|
|
547
560
|
}
|
|
548
561
|
}
|
|
549
|
-
|
|
562
|
+
|
|
550
563
|
function IsElevated {
|
|
551
564
|
return [bool](([System.Security.Principal.WindowsIdentity]::GetCurrent()).groups -match "S-1-5-32-544");
|
|
552
565
|
}
|
package/Shared/Shared.vcxitems
CHANGED
|
@@ -64,6 +64,12 @@
|
|
|
64
64
|
<ClCompile Include="$(MSBuildThisFileDirectory)..\Microsoft.ReactNative\Fabric\Composition\CompositionDynamicAutomationProvider.cpp">
|
|
65
65
|
<ExcludedFromBuild Condition="'$(UseFabric)' != 'true'">true</ExcludedFromBuild>
|
|
66
66
|
</ClCompile>
|
|
67
|
+
<ClCompile Include="$(MSBuildThisFileDirectory)..\Microsoft.ReactNative\Fabric\Composition\CompositionTextProvider.cpp">
|
|
68
|
+
<ExcludedFromBuild Condition="'$(UseFabric)' != 'true'">true</ExcludedFromBuild>
|
|
69
|
+
</ClCompile>
|
|
70
|
+
<ClCompile Include="$(MSBuildThisFileDirectory)..\Microsoft.ReactNative\Fabric\Composition\CompositionTextRangeProvider.cpp">
|
|
71
|
+
<ExcludedFromBuild Condition="'$(UseFabric)' != 'true'">true</ExcludedFromBuild>
|
|
72
|
+
</ClCompile>
|
|
67
73
|
<ClCompile Include="$(MSBuildThisFileDirectory)..\Microsoft.ReactNative\Fabric\Composition\ReactNativeIsland.cpp">
|
|
68
74
|
<ExcludedFromBuild Condition="'$(UseFabric)' != 'true'">true</ExcludedFromBuild>
|
|
69
75
|
<DependentUpon>$(ReactNativeWindowsDir)Microsoft.ReactNative\ReactNativeIsland.idl</DependentUpon>
|
|
@@ -215,6 +215,12 @@
|
|
|
215
215
|
<ClCompile Include="$(MSBuildThisFileDirectory)..\Microsoft.ReactNative\Fabric\Composition\CompositionDynamicAutomationProvider.cpp">
|
|
216
216
|
<Filter>Source Files\Fabric\Composition</Filter>
|
|
217
217
|
</ClCompile>
|
|
218
|
+
<ClCompile Include="$(MSBuildThisFileDirectory)..\Microsoft.ReactNative\Fabric\Composition\CompositionTextProvider.cpp">
|
|
219
|
+
<Filter>Source Files\Fabric\Composition</Filter>
|
|
220
|
+
</ClCompile>
|
|
221
|
+
<ClCompile Include="$(MSBuildThisFileDirectory)..\Microsoft.ReactNative\Fabric\Composition\CompositionTextRangeProvider.cpp">
|
|
222
|
+
<Filter>Source Files\Fabric\Composition</Filter>
|
|
223
|
+
</ClCompile>
|
|
218
224
|
<ClCompile Include="$(MSBuildThisFileDirectory)..\Microsoft.ReactNative\Fabric\Composition\ReactNativeIsland.cpp">
|
|
219
225
|
<Filter>Source Files\Fabric\Composition</Filter>
|
|
220
226
|
</ClCompile>
|
|
@@ -325,6 +331,8 @@
|
|
|
325
331
|
<ClCompile Include="$(MSBuildThisFileDirectory)..\Microsoft.ReactNative\Fabric\AbiEventEmitter.cpp" />
|
|
326
332
|
<ClCompile Include="$(MSBuildThisFileDirectory)..\Microsoft.ReactNative\Fabric\Composition\TooltipService.cpp" />
|
|
327
333
|
<ClCompile Include="$(MSBuildThisFileDirectory)..\Microsoft.ReactNative\Fabric\Composition\BorderPrimitive.cpp" />
|
|
334
|
+
<ClCompile Include="$(MSBuildThisFileDirectory)..\Microsoft.ReactNative\Fabric\Composition\CompositionTextProvider.cpp" />
|
|
335
|
+
<ClCompile Include="$(MSBuildThisFileDirectory)..\Microsoft.ReactNative\Fabric\Composition\CompositionTextRangeProvider.cpp" />
|
|
328
336
|
</ItemGroup>
|
|
329
337
|
<ItemGroup>
|
|
330
338
|
<Filter Include="Source Files">
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-windows",
|
|
3
|
-
"version": "0.74.
|
|
3
|
+
"version": "0.74.47",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"@react-native-community/cli": "13.6.9",
|
|
27
27
|
"@react-native-community/cli-platform-android": "13.6.9",
|
|
28
28
|
"@react-native-community/cli-platform-ios": "13.6.9",
|
|
29
|
-
"@react-native-windows/cli": "0.74.
|
|
29
|
+
"@react-native-windows/cli": "0.74.12",
|
|
30
30
|
"@react-native/assets": "1.0.0",
|
|
31
31
|
"@react-native/assets-registry": "0.74.89",
|
|
32
32
|
"@react-native/codegen": "0.74.89",
|
|
@@ -77,7 +77,7 @@
|
|
|
77
77
|
"@types/react": "^18.2.6",
|
|
78
78
|
"eslint": "^8.19.0",
|
|
79
79
|
"eslint-plugin-prettier": "^4.2.1",
|
|
80
|
-
"flow-bin": "^0.
|
|
80
|
+
"flow-bin": "^0.228.0",
|
|
81
81
|
"jscodeshift": "^0.14.0",
|
|
82
82
|
"just-scripts": "^1.3.3",
|
|
83
83
|
"prettier": "2.8.8",
|