11cb0ef41Sopenharmony_ci<?xml version="1.0" encoding="UTF-8"?> 21cb0ef41Sopenharmony_ci<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" 31cb0ef41Sopenharmony_ci xmlns:util="http://schemas.microsoft.com/wix/UtilExtension"> 41cb0ef41Sopenharmony_ci 51cb0ef41Sopenharmony_ci <?define ProductName = "Node.js" ?> 61cb0ef41Sopenharmony_ci <?define ProductDescription = "Node.js" ?> 71cb0ef41Sopenharmony_ci <?define ProductAuthor = "Node.js Foundation" ?> 81cb0ef41Sopenharmony_ci 91cb0ef41Sopenharmony_ci <?define RegistryKeyPath = "SOFTWARE\Node.js" ?> 101cb0ef41Sopenharmony_ci 111cb0ef41Sopenharmony_ci <?define RepoDir="$(var.ProjectDir)..\..\..\" ?> 121cb0ef41Sopenharmony_ci <?define SourceDir="$(var.RepoDir)\$(var.Configuration)\" ?> 131cb0ef41Sopenharmony_ci 141cb0ef41Sopenharmony_ci <Product Id="*" 151cb0ef41Sopenharmony_ci Name="$(var.ProductName)" 161cb0ef41Sopenharmony_ci Language="!(loc.LocaleId)" 171cb0ef41Sopenharmony_ci Version="$(var.ProductVersion)" 181cb0ef41Sopenharmony_ci Manufacturer="$(var.ProductAuthor)" 191cb0ef41Sopenharmony_ci UpgradeCode="47c07a3a-42ef-4213-a85d-8f5a59077c28"> 201cb0ef41Sopenharmony_ci 211cb0ef41Sopenharmony_ci <Package Languages="!(loc.LocaleId)" 221cb0ef41Sopenharmony_ci InstallerVersion="200" 231cb0ef41Sopenharmony_ci Compressed="yes" 241cb0ef41Sopenharmony_ci InstallScope="perMachine"/> 251cb0ef41Sopenharmony_ci 261cb0ef41Sopenharmony_ci <Condition Message="This application is only supported on Windows 8.1, Windows Server 2012 R2, or higher."> 271cb0ef41Sopenharmony_ci <![CDATA[Installed OR (VersionNT >= 603) OR (VersionNT >= 602 AND MsiNTProductType <> 1)]]> 281cb0ef41Sopenharmony_ci </Condition> 291cb0ef41Sopenharmony_ci 301cb0ef41Sopenharmony_ci <Media Id="1" Cabinet="media1.cab" EmbedCab="yes"/> 311cb0ef41Sopenharmony_ci 321cb0ef41Sopenharmony_ci <MajorUpgrade AllowSameVersionUpgrades="yes" 331cb0ef41Sopenharmony_ci DowngradeErrorMessage="!(loc.MajorUpgrade_DowngradeErrorMessage)"/> 341cb0ef41Sopenharmony_ci 351cb0ef41Sopenharmony_ci <Upgrade Id="1d60944c-b9ce-4a71-a7c0-0384eb884baa"> 361cb0ef41Sopenharmony_ci <UpgradeVersion Maximum="1.0.0" 371cb0ef41Sopenharmony_ci IncludeMaximum="no" 381cb0ef41Sopenharmony_ci Property="NODE_0X_DETECTED" /> 391cb0ef41Sopenharmony_ci <UpgradeVersion Minimum="1.0.0" 401cb0ef41Sopenharmony_ci IncludeMinimum="yes" 411cb0ef41Sopenharmony_ci Property="EARLY_IO_DETECTED" /> 421cb0ef41Sopenharmony_ci </Upgrade> 431cb0ef41Sopenharmony_ci 441cb0ef41Sopenharmony_ci <Icon Id="NodeIcon" SourceFile="$(var.RepoDir)\src\res\node.ico"/> 451cb0ef41Sopenharmony_ci <Property Id="ARPPRODUCTICON" Value="NodeIcon"/> 461cb0ef41Sopenharmony_ci <Property Id="ApplicationFolderName" Value="nodejs"/> 471cb0ef41Sopenharmony_ci <Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR"/> 481cb0ef41Sopenharmony_ci 491cb0ef41Sopenharmony_ci <!-- PropertyRef of the account users for setting InstallDir permission explicitly --> 501cb0ef41Sopenharmony_ci <PropertyRef Id="WIX_ACCOUNT_LOCALSYSTEM" /> 511cb0ef41Sopenharmony_ci <PropertyRef Id="WIX_ACCOUNT_USERS" /> 521cb0ef41Sopenharmony_ci <PropertyRef Id="WIX_ACCOUNT_ADMINISTRATORS" /> 531cb0ef41Sopenharmony_ci 541cb0ef41Sopenharmony_ci <Property Id="INSTALLDIR" Secure="yes"> 551cb0ef41Sopenharmony_ci <RegistrySearch Id="InstallPathRegistry" 561cb0ef41Sopenharmony_ci Type="raw" 571cb0ef41Sopenharmony_ci Root="HKLM" 581cb0ef41Sopenharmony_ci Key="$(var.RegistryKeyPath)" 591cb0ef41Sopenharmony_ci Name="InstallPath"/> 601cb0ef41Sopenharmony_ci <!-- Also need to search under HKCU to support upgrading from old 611cb0ef41Sopenharmony_ci versions. If we wanted to disable backward compatibility, this 621cb0ef41Sopenharmony_ci second search could be deleted. --> 631cb0ef41Sopenharmony_ci <RegistrySearch Id="InstallPathRegistryCU" 641cb0ef41Sopenharmony_ci Type="raw" 651cb0ef41Sopenharmony_ci Root="HKCU" 661cb0ef41Sopenharmony_ci Key="$(var.RegistryKeyPath)" 671cb0ef41Sopenharmony_ci Name="InstallPath"/> 681cb0ef41Sopenharmony_ci </Property> 691cb0ef41Sopenharmony_ci 701cb0ef41Sopenharmony_ci <Feature Id="NodeRuntime" 711cb0ef41Sopenharmony_ci Level="1" 721cb0ef41Sopenharmony_ci Title="!(loc.NodeRuntime_Title)" 731cb0ef41Sopenharmony_ci Description="!(loc.NodeRuntime_Description)" 741cb0ef41Sopenharmony_ci Absent="disallow"> 751cb0ef41Sopenharmony_ci <ComponentRef Id="NodeExecutable"/> 761cb0ef41Sopenharmony_ci <ComponentRef Id="NodeRegistryEntries"/> 771cb0ef41Sopenharmony_ci <ComponentRef Id="NodeVarsScript"/> 781cb0ef41Sopenharmony_ci <ComponentRef Id="NodeStartMenu"/> 791cb0ef41Sopenharmony_ci <ComponentRef Id="InstallToolsBat" /> 801cb0ef41Sopenharmony_ci <ComponentRef Id="SetInstallDirPermission" /> 811cb0ef41Sopenharmony_ci <ComponentGroupRef Id="Product.Generated"/> 821cb0ef41Sopenharmony_ci 831cb0ef41Sopenharmony_ci <Feature Id="NodeEtwSupport" 841cb0ef41Sopenharmony_ci Level="1" 851cb0ef41Sopenharmony_ci Title="!(loc.NodeEtwSupport_Title)" 861cb0ef41Sopenharmony_ci Description="!(loc.NodeEtwSupport_Description)"> 871cb0ef41Sopenharmony_ci <ComponentRef Id="NodeEtwSupport"/> 881cb0ef41Sopenharmony_ci </Feature> 891cb0ef41Sopenharmony_ci </Feature> 901cb0ef41Sopenharmony_ci 911cb0ef41Sopenharmony_ci <Feature Id="corepack" 921cb0ef41Sopenharmony_ci Level="1" 931cb0ef41Sopenharmony_ci Title="!(loc.corepack_Title)" 941cb0ef41Sopenharmony_ci Description="!(loc.corepack_Description)"> 951cb0ef41Sopenharmony_ci <ComponentRef Id="CorepackCmdScript"/> 961cb0ef41Sopenharmony_ci <ComponentRef Id="CorepackBashScript"/> 971cb0ef41Sopenharmony_ci <ComponentGroupRef Id="CorepackSourceFiles"/> 981cb0ef41Sopenharmony_ci </Feature> 991cb0ef41Sopenharmony_ci 1001cb0ef41Sopenharmony_ci <Feature Id="npm" 1011cb0ef41Sopenharmony_ci Level="1" 1021cb0ef41Sopenharmony_ci Title="!(loc.npm_Title)" 1031cb0ef41Sopenharmony_ci Description="!(loc.npm_Description)"> 1041cb0ef41Sopenharmony_ci <ComponentRef Id="NpmCmdScript"/> 1051cb0ef41Sopenharmony_ci <ComponentRef Id="NpmBashScript"/> 1061cb0ef41Sopenharmony_ci <ComponentRef Id="NpxCmdScript"/> 1071cb0ef41Sopenharmony_ci <ComponentRef Id="NpxBashScript"/> 1081cb0ef41Sopenharmony_ci <ComponentRef Id="NpmConfigurationFile"/> 1091cb0ef41Sopenharmony_ci <ComponentRef Id="SetInstallDirPermission" /> 1101cb0ef41Sopenharmony_ci <ComponentGroupRef Id="NpmSourceFiles"/> 1111cb0ef41Sopenharmony_ci </Feature> 1121cb0ef41Sopenharmony_ci 1131cb0ef41Sopenharmony_ci <Feature Level="1" 1141cb0ef41Sopenharmony_ci Id="DocumentationShortcuts" 1151cb0ef41Sopenharmony_ci Title="!(loc.DocumentationShortcuts_Title)" 1161cb0ef41Sopenharmony_ci Description="!(loc.DocumentationShortcuts_Description)"> 1171cb0ef41Sopenharmony_ci <ComponentRef Id="DocumentationShortcuts"/> 1181cb0ef41Sopenharmony_ci </Feature> 1191cb0ef41Sopenharmony_ci 1201cb0ef41Sopenharmony_ci <Feature Id="EnvironmentPath" 1211cb0ef41Sopenharmony_ci Level="1" 1221cb0ef41Sopenharmony_ci Title="!(loc.EnvironmentPath_Title)" 1231cb0ef41Sopenharmony_ci Description="!(loc.EnvironmentPath_Description)"> 1241cb0ef41Sopenharmony_ci <Feature Id="EnvironmentPathNode" 1251cb0ef41Sopenharmony_ci Level="1" 1261cb0ef41Sopenharmony_ci Title="!(loc.EnvironmentPathNode_Title)" 1271cb0ef41Sopenharmony_ci Description="!(loc.EnvironmentPathNode_Description)"> 1281cb0ef41Sopenharmony_ci <ComponentRef Id="EnvironmentPathNode"/> 1291cb0ef41Sopenharmony_ci </Feature> 1301cb0ef41Sopenharmony_ci 1311cb0ef41Sopenharmony_ci <Feature Id="EnvironmentPathNpmModules" 1321cb0ef41Sopenharmony_ci Level="1" 1331cb0ef41Sopenharmony_ci Title="!(loc.EnvironmentPathNpmModules_Title)" 1341cb0ef41Sopenharmony_ci Description="!(loc.EnvironmentPathNpmModules_Description)"> 1351cb0ef41Sopenharmony_ci <ComponentRef Id="EnvironmentPathNpmModules"/> 1361cb0ef41Sopenharmony_ci </Feature> 1371cb0ef41Sopenharmony_ci </Feature> 1381cb0ef41Sopenharmony_ci 1391cb0ef41Sopenharmony_ci <Directory Id="TARGETDIR" Name="SourceDir"> 1401cb0ef41Sopenharmony_ci <Directory Id="ProgramMenuFolder"> 1411cb0ef41Sopenharmony_ci <Directory Id="ApplicationProgramsFolder" Name="Node.js"/> 1421cb0ef41Sopenharmony_ci </Directory> 1431cb0ef41Sopenharmony_ci 1441cb0ef41Sopenharmony_ci <Directory Id="$(var.ProgramFilesFolderId)"> 1451cb0ef41Sopenharmony_ci <Directory Id="INSTALLDIR" Name="nodejs"> 1461cb0ef41Sopenharmony_ci </Directory> 1471cb0ef41Sopenharmony_ci </Directory> 1481cb0ef41Sopenharmony_ci </Directory> 1491cb0ef41Sopenharmony_ci 1501cb0ef41Sopenharmony_ci <DirectoryRef Id="INSTALLDIR"> 1511cb0ef41Sopenharmony_ci <Component Id="NodeExecutable"> 1521cb0ef41Sopenharmony_ci <File Id="node.exe" KeyPath="yes" Source="$(var.SourceDir)\node.exe"/> 1531cb0ef41Sopenharmony_ci </Component> 1541cb0ef41Sopenharmony_ci 1551cb0ef41Sopenharmony_ci <Component Id="NodeRegistryEntries"> 1561cb0ef41Sopenharmony_ci <RegistryValue Root="HKLM" 1571cb0ef41Sopenharmony_ci Key="$(var.RegistryKeyPath)" 1581cb0ef41Sopenharmony_ci Name="InstallPath" 1591cb0ef41Sopenharmony_ci Type="string" 1601cb0ef41Sopenharmony_ci Value="[INSTALLDIR]" 1611cb0ef41Sopenharmony_ci KeyPath="yes"/> 1621cb0ef41Sopenharmony_ci <RegistryValue Root="HKLM" 1631cb0ef41Sopenharmony_ci Key="$(var.RegistryKeyPath)" 1641cb0ef41Sopenharmony_ci Name="Version" 1651cb0ef41Sopenharmony_ci Type="string" 1661cb0ef41Sopenharmony_ci Value="$(var.ProductVersion)"/> 1671cb0ef41Sopenharmony_ci </Component> 1681cb0ef41Sopenharmony_ci 1691cb0ef41Sopenharmony_ci <Component Id="NodeVarsScript"> 1701cb0ef41Sopenharmony_ci <File Id="nodevars.bat" KeyPath="yes" Source="$(var.RepoDir)\tools\msvs\nodevars.bat"/> 1711cb0ef41Sopenharmony_ci </Component> 1721cb0ef41Sopenharmony_ci 1731cb0ef41Sopenharmony_ci <Component Id="InstallToolsBat"> 1741cb0ef41Sopenharmony_ci <File Id="InstallToolsBat" KeyPath="yes" Source="$(var.RepoDir)\tools\msvs\install_tools\install_tools.bat"/> 1751cb0ef41Sopenharmony_ci </Component> 1761cb0ef41Sopenharmony_ci 1771cb0ef41Sopenharmony_ci <?if $(var.NoETW) != 1 ?> 1781cb0ef41Sopenharmony_ci <Component Id="NodeEtwSupport"> 1791cb0ef41Sopenharmony_ci <File Id="node_etw_provider.man" Source="$(var.RepoDir)\src\res\node_etw_provider.man"> 1801cb0ef41Sopenharmony_ci <util:EventManifest MessageFile="[INSTALLDIR]node.exe" ResourceFile="[INSTALLDIR]node.exe"/> 1811cb0ef41Sopenharmony_ci </File> 1821cb0ef41Sopenharmony_ci </Component> 1831cb0ef41Sopenharmony_ci <?endif?> 1841cb0ef41Sopenharmony_ci </DirectoryRef> 1851cb0ef41Sopenharmony_ci 1861cb0ef41Sopenharmony_ci <DirectoryRef Id="INSTALLDIR"> 1871cb0ef41Sopenharmony_ci <!-- Create component for setting the install directory permission explicitly --> 1881cb0ef41Sopenharmony_ci <Component Id="SetInstallDirPermission" Guid="{EFFC4F74-183A-4237-BBD7-0CAD2B950053}"> 1891cb0ef41Sopenharmony_ci <CreateFolder> 1901cb0ef41Sopenharmony_ci <Permission User="[WIX_ACCOUNT_USERS]" GenericRead="yes" Traverse="yes" GenericExecute="yes" Synchronize="yes" 1911cb0ef41Sopenharmony_ci GenericWrite="no" WriteAttributes="no" WriteExtendedAttributes="no"/> 1921cb0ef41Sopenharmony_ci <Permission User="[AUTHENTICATED_USERS]" GenericRead="yes" Traverse="yes" GenericExecute="yes" Synchronize="yes" 1931cb0ef41Sopenharmony_ci GenericWrite="no" WriteAttributes="no" WriteExtendedAttributes="no"/> 1941cb0ef41Sopenharmony_ci <Permission User="[WIX_ACCOUNT_ADMINISTRATORS]" GenericAll="yes"/> 1951cb0ef41Sopenharmony_ci <Permission User="[WIX_ACCOUNT_LOCALSYSTEM]" GenericAll="yes"/> 1961cb0ef41Sopenharmony_ci </CreateFolder> 1971cb0ef41Sopenharmony_ci </Component> 1981cb0ef41Sopenharmony_ci </DirectoryRef> 1991cb0ef41Sopenharmony_ci 2001cb0ef41Sopenharmony_ci <DirectoryRef Id="ApplicationProgramsFolder"> 2011cb0ef41Sopenharmony_ci <Component Id="NodeStartMenu"> 2021cb0ef41Sopenharmony_ci <!-- RegistryValue needed because every Component must have a KeyPath. 2031cb0ef41Sopenharmony_ci Because of ICE43, the Root must be HKCU. --> 2041cb0ef41Sopenharmony_ci <RegistryValue Root="HKCU" 2051cb0ef41Sopenharmony_ci Key="$(var.RegistryKeyPath)\Components" 2061cb0ef41Sopenharmony_ci Name="NodeStartMenuShortcuts" 2071cb0ef41Sopenharmony_ci Type="integer" 2081cb0ef41Sopenharmony_ci Value="1" 2091cb0ef41Sopenharmony_ci KeyPath="yes"/> 2101cb0ef41Sopenharmony_ci <Shortcut Id="NodeVarsScriptShortcut" 2111cb0ef41Sopenharmony_ci Name="Node.js command prompt" 2121cb0ef41Sopenharmony_ci Target="[%ComSpec]" 2131cb0ef41Sopenharmony_ci Arguments='/k "[INSTALLDIR]nodevars.bat"' 2141cb0ef41Sopenharmony_ci Show="normal" 2151cb0ef41Sopenharmony_ci WorkingDirectory="INSTALLDIR"/> 2161cb0ef41Sopenharmony_ci <Shortcut Id="InstallToolsShortcut" 2171cb0ef41Sopenharmony_ci Name="Install Additional Tools for Node.js" 2181cb0ef41Sopenharmony_ci Target="[%ComSpec]" 2191cb0ef41Sopenharmony_ci Arguments='/d /c "[INSTALLDIR]install_tools.bat"' 2201cb0ef41Sopenharmony_ci Show="normal" 2211cb0ef41Sopenharmony_ci WorkingDirectory="INSTALLDIR"/> 2221cb0ef41Sopenharmony_ci <Shortcut Id="NodeExecutableShortcut" 2231cb0ef41Sopenharmony_ci Name="Node.js" 2241cb0ef41Sopenharmony_ci Target="[INSTALLDIR]node.exe" 2251cb0ef41Sopenharmony_ci WorkingDirectory="INSTALLDIR"/> 2261cb0ef41Sopenharmony_ci <Shortcut Id="UninstallProduct" 2271cb0ef41Sopenharmony_ci Name="Uninstall Node.js" 2281cb0ef41Sopenharmony_ci Target="[SystemFolder]msiexec.exe" 2291cb0ef41Sopenharmony_ci Arguments="/x [ProductCode]"/> 2301cb0ef41Sopenharmony_ci <RemoveFolder Id="RemoveApplicationProgramsFolder" 2311cb0ef41Sopenharmony_ci On="uninstall"/> 2321cb0ef41Sopenharmony_ci </Component> 2331cb0ef41Sopenharmony_ci </DirectoryRef> 2341cb0ef41Sopenharmony_ci 2351cb0ef41Sopenharmony_ci <DirectoryRef Id="INSTALLDIR"> 2361cb0ef41Sopenharmony_ci <Component Id="CorepackCmdScript"> 2371cb0ef41Sopenharmony_ci <File Id="corepack.cmd" KeyPath="yes" Source="$(var.CorepackSourceDir)\shims\nodewin\corepack.cmd"/> 2381cb0ef41Sopenharmony_ci </Component> 2391cb0ef41Sopenharmony_ci 2401cb0ef41Sopenharmony_ci <Component Id="CorepackBashScript"> 2411cb0ef41Sopenharmony_ci <File Id="corepack.sh" KeyPath="yes" Source="$(var.CorepackSourceDir)\shims\nodewin\corepack"/> 2421cb0ef41Sopenharmony_ci </Component> 2431cb0ef41Sopenharmony_ci 2441cb0ef41Sopenharmony_ci <Component Id="NpmCmdScript"> 2451cb0ef41Sopenharmony_ci <File Id="npm.cmd" KeyPath="yes" Source="$(var.NpmSourceDir)\bin\npm.cmd"/> 2461cb0ef41Sopenharmony_ci </Component> 2471cb0ef41Sopenharmony_ci 2481cb0ef41Sopenharmony_ci <Component Id="NpmBashScript"> 2491cb0ef41Sopenharmony_ci <File Id="npm.sh" KeyPath="yes" Source="$(var.NpmSourceDir)\bin\npm"/> 2501cb0ef41Sopenharmony_ci </Component> 2511cb0ef41Sopenharmony_ci 2521cb0ef41Sopenharmony_ci <Component Id="NpxCmdScript"> 2531cb0ef41Sopenharmony_ci <File Id="npx.cmd" KeyPath="yes" Source="$(var.NpmSourceDir)\bin\npx.cmd"/> 2541cb0ef41Sopenharmony_ci </Component> 2551cb0ef41Sopenharmony_ci 2561cb0ef41Sopenharmony_ci <Component Id="NpxBashScript"> 2571cb0ef41Sopenharmony_ci <File Id="npx.sh" KeyPath="yes" Source="$(var.NpmSourceDir)\bin\npx"/> 2581cb0ef41Sopenharmony_ci </Component> 2591cb0ef41Sopenharmony_ci 2601cb0ef41Sopenharmony_ci <Directory Id="NodeModulesFolder" Name="node_modules"> 2611cb0ef41Sopenharmony_ci <Directory Id="NpmFolder" Name="npm"> 2621cb0ef41Sopenharmony_ci <Component Id="NpmConfigurationFile"> 2631cb0ef41Sopenharmony_ci <File Id="npm.rc" KeyPath="yes" Source="$(var.RepoDir)\tools\msvs\npm\npmrc"/> 2641cb0ef41Sopenharmony_ci </Component> 2651cb0ef41Sopenharmony_ci </Directory> 2661cb0ef41Sopenharmony_ci </Directory> 2671cb0ef41Sopenharmony_ci </DirectoryRef> 2681cb0ef41Sopenharmony_ci 2691cb0ef41Sopenharmony_ci <DirectoryRef Id="ApplicationProgramsFolder"> 2701cb0ef41Sopenharmony_ci <Component Id="DocumentationShortcuts"> 2711cb0ef41Sopenharmony_ci <RegistryValue Root="HKCU" 2721cb0ef41Sopenharmony_ci Key="$(var.RegistryKeyPath)\Components" 2731cb0ef41Sopenharmony_ci Name="DocumentationShortcuts" 2741cb0ef41Sopenharmony_ci Type="integer" 2751cb0ef41Sopenharmony_ci Value="1" 2761cb0ef41Sopenharmony_ci KeyPath="yes"/> 2771cb0ef41Sopenharmony_ci <util:InternetShortcut Id="WebsiteShortcut" 2781cb0ef41Sopenharmony_ci Name="Node.js website" 2791cb0ef41Sopenharmony_ci Target="https://nodejs.org/" 2801cb0ef41Sopenharmony_ci Type="url"/> 2811cb0ef41Sopenharmony_ci <util:InternetShortcut Id="DocsShortcut" 2821cb0ef41Sopenharmony_ci Name="Node.js documentation" 2831cb0ef41Sopenharmony_ci Target="https://nodejs.org/download/$(var.DistTypeDir)/v$(var.FullVersion)/docs/api/" 2841cb0ef41Sopenharmony_ci Type="url"/> 2851cb0ef41Sopenharmony_ci </Component> 2861cb0ef41Sopenharmony_ci </DirectoryRef> 2871cb0ef41Sopenharmony_ci 2881cb0ef41Sopenharmony_ci <DirectoryRef Id="INSTALLDIR"> 2891cb0ef41Sopenharmony_ci <Component Id="EnvironmentPathNode"> 2901cb0ef41Sopenharmony_ci <RegistryValue Root="HKLM" 2911cb0ef41Sopenharmony_ci Key="$(var.RegistryKeyPath)\Components" 2921cb0ef41Sopenharmony_ci Name="EnvironmentPathNode" 2931cb0ef41Sopenharmony_ci Type="integer" 2941cb0ef41Sopenharmony_ci Value="1" 2951cb0ef41Sopenharmony_ci KeyPath="yes"/> 2961cb0ef41Sopenharmony_ci <Environment Id="EnvironmentPathNode" 2971cb0ef41Sopenharmony_ci Action="set" 2981cb0ef41Sopenharmony_ci Name="PATH" 2991cb0ef41Sopenharmony_ci Part="last" 3001cb0ef41Sopenharmony_ci System="yes" 3011cb0ef41Sopenharmony_ci Value="[INSTALLDIR]"/> 3021cb0ef41Sopenharmony_ci </Component> 3031cb0ef41Sopenharmony_ci 3041cb0ef41Sopenharmony_ci <Component Id="EnvironmentPathNpmModules"> 3051cb0ef41Sopenharmony_ci <RegistryValue Root="HKCU" 3061cb0ef41Sopenharmony_ci Key="$(var.RegistryKeyPath)\Components" 3071cb0ef41Sopenharmony_ci Name="EnvironmentPathNpmModules" 3081cb0ef41Sopenharmony_ci Type="integer" 3091cb0ef41Sopenharmony_ci Value="1" 3101cb0ef41Sopenharmony_ci KeyPath="yes"/> 3111cb0ef41Sopenharmony_ci <Environment Id="EnvironmentPathNpmModules" 3121cb0ef41Sopenharmony_ci Action="set" 3131cb0ef41Sopenharmony_ci Name="PATH" 3141cb0ef41Sopenharmony_ci Part="last" 3151cb0ef41Sopenharmony_ci System="no" 3161cb0ef41Sopenharmony_ci Value="[AppDataFolder]npm"/> 3171cb0ef41Sopenharmony_ci </Component> 3181cb0ef41Sopenharmony_ci </DirectoryRef> 3191cb0ef41Sopenharmony_ci 3201cb0ef41Sopenharmony_ci <Binary Id='CustomActionsDLL' 3211cb0ef41Sopenharmony_ci SourceFile='$(var.custom_actions.TargetDir)$(var.custom_actions.TargetName).dll' /> 3221cb0ef41Sopenharmony_ci 3231cb0ef41Sopenharmony_ci <CustomAction Id="SetInstallScope" 3241cb0ef41Sopenharmony_ci BinaryKey="CustomActionsDLL" 3251cb0ef41Sopenharmony_ci DllEntry="SetInstallScope" 3261cb0ef41Sopenharmony_ci Execute="immediate" 3271cb0ef41Sopenharmony_ci Return="check" /> 3281cb0ef41Sopenharmony_ci 3291cb0ef41Sopenharmony_ci <CustomAction Id="BroadcastEnvironmentUpdate" 3301cb0ef41Sopenharmony_ci BinaryKey="CustomActionsDLL" 3311cb0ef41Sopenharmony_ci DllEntry="BroadcastEnvironmentUpdate" 3321cb0ef41Sopenharmony_ci Execute="immediate" 3331cb0ef41Sopenharmony_ci Return="check" /> 3341cb0ef41Sopenharmony_ci 3351cb0ef41Sopenharmony_ci <CustomAction Id="GetLocalizedUserNames" 3361cb0ef41Sopenharmony_ci BinaryKey="CustomActionsDLL" 3371cb0ef41Sopenharmony_ci DllEntry="GetLocalizedUserNames" 3381cb0ef41Sopenharmony_ci Execute="immediate" 3391cb0ef41Sopenharmony_ci Return="check" /> 3401cb0ef41Sopenharmony_ci 3411cb0ef41Sopenharmony_ci <Property Id="WixShellExecTarget" Value="[#InstallToolsBat]" /> 3421cb0ef41Sopenharmony_ci <CustomAction Id="LaunchApplication" BinaryKey="WixCA" DllEntry="WixShellExec" /> 3431cb0ef41Sopenharmony_ci 3441cb0ef41Sopenharmony_ci <InstallUISequence> 3451cb0ef41Sopenharmony_ci <Custom Action='SetInstallScope' Before='FindRelatedProducts'/> 3461cb0ef41Sopenharmony_ci </InstallUISequence> 3471cb0ef41Sopenharmony_ci 3481cb0ef41Sopenharmony_ci <InstallExecuteSequence> 3491cb0ef41Sopenharmony_ci <Custom Action='SetInstallScope' Before='FindRelatedProducts'/> 3501cb0ef41Sopenharmony_ci <Custom Action='GetLocalizedUserNames' After='SetInstallScope'/> 3511cb0ef41Sopenharmony_ci <Custom Action='BroadcastEnvironmentUpdate' After='InstallFinalize'/> 3521cb0ef41Sopenharmony_ci </InstallExecuteSequence> 3531cb0ef41Sopenharmony_ci 3541cb0ef41Sopenharmony_ci <UI Id="NodeInstallUI"> 3551cb0ef41Sopenharmony_ci <TextStyle Id="WixUI_Font_Normal" FaceName="Tahoma" Size="8"/> 3561cb0ef41Sopenharmony_ci <TextStyle Id="WixUI_Font_Bigger" FaceName="Tahoma" Size="12"/> 3571cb0ef41Sopenharmony_ci <TextStyle Id="WixUI_Font_Title" FaceName="Tahoma" Size="9" Bold="yes"/> 3581cb0ef41Sopenharmony_ci 3591cb0ef41Sopenharmony_ci <Property Id="DefaultUIFont" Value="WixUI_Font_Normal"/> 3601cb0ef41Sopenharmony_ci <Property Id="WixUI_Mode" Value="FeatureTree"/> 3611cb0ef41Sopenharmony_ci 3621cb0ef41Sopenharmony_ci <DialogRef Id="ErrorDlg"/> 3631cb0ef41Sopenharmony_ci <DialogRef Id="FatalError"/> 3641cb0ef41Sopenharmony_ci <DialogRef Id="FilesInUse"/> 3651cb0ef41Sopenharmony_ci <DialogRef Id="MsiRMFilesInUse"/> 3661cb0ef41Sopenharmony_ci <DialogRef Id="PrepareDlg"/> 3671cb0ef41Sopenharmony_ci <DialogRef Id="ProgressDlg"/> 3681cb0ef41Sopenharmony_ci <DialogRef Id="ResumeDlg"/> 3691cb0ef41Sopenharmony_ci <DialogRef Id="UserExit"/> 3701cb0ef41Sopenharmony_ci <DialogRef Id="WelcomeDlg"/> 3711cb0ef41Sopenharmony_ci <DialogRef Id="LicenseAgreementDlg"/> 3721cb0ef41Sopenharmony_ci <DialogRef Id="InstallDirDlg"/> 3731cb0ef41Sopenharmony_ci <DialogRef Id="BrowseDlg"/> 3741cb0ef41Sopenharmony_ci <DialogRef Id="InvalidDirDlg"/> 3751cb0ef41Sopenharmony_ci <Dialog Id="NativeToolsDlg" Width="370" Height="270" Title="!(loc.NativeToolsDlg_Title)"> 3761cb0ef41Sopenharmony_ci <Control Id="BannerBitmap" Type="Bitmap" X="0" Y="0" Width="370" Height="44" TabSkip="no" Text="!(loc.NativeToolsDlgBannerBitmap)" /> 3771cb0ef41Sopenharmony_ci <Control Id="Title" Type="Text" X="15" Y="6" Width="200" Height="15" Transparent="yes" NoPrefix="yes" Text="!(loc.NativeToolsDlgTitle)" /> 3781cb0ef41Sopenharmony_ci <Control Id="Description" Type="Text" X="25" Y="23" Width="280" Height="15" Transparent="yes" NoPrefix="yes" Text="!(loc.NativeToolsDlgDescription)" /> 3791cb0ef41Sopenharmony_ci <Control Id="BannerLine" Type="Line" X="0" Y="44" Width="370" Height="0" /> 3801cb0ef41Sopenharmony_ci 3811cb0ef41Sopenharmony_ci <Control Id="Intro" Type="Text" X="20" Y="65" Width="330" Height="30" NoPrefix="yes" Text="!(loc.NativeToolsDlgIntro)" /> 3821cb0ef41Sopenharmony_ci <Control Id="InstallCheckbox" Type="CheckBox" X="20" Y="105" Width="330" Height="30" Property="NATIVETOOLSCHECKBOX" CheckBoxValue="1" Text="!(loc.NativeToolsDlgInstallCheckbox)" /> 3831cb0ef41Sopenharmony_ci <Control Id="ManualDetails" Type="Hyperlink" X="20" Y="140" Width="330" Height="30" Text="!(loc.NativeToolsDlgManualDetails)" /> 3841cb0ef41Sopenharmony_ci 3851cb0ef41Sopenharmony_ci <Control Id="BottomLine" Type="Line" X="0" Y="234" Width="370" Height="0" /> 3861cb0ef41Sopenharmony_ci <Control Id="Next" Type="PushButton" X="236" Y="243" Width="56" Height="17" Default="yes" Text="!(loc.WixUINext)" /> 3871cb0ef41Sopenharmony_ci <Control Id="Back" Type="PushButton" X="180" Y="243" Width="56" Height="17" Text="!(loc.WixUIBack)" /> 3881cb0ef41Sopenharmony_ci <Control Id="Cancel" Type="PushButton" X="304" Y="243" Width="56" Height="17" Cancel="yes" Text="!(loc.WixUICancel)"> 3891cb0ef41Sopenharmony_ci <Publish Event="SpawnDialog" Value="CancelDlg">1</Publish> 3901cb0ef41Sopenharmony_ci </Control> 3911cb0ef41Sopenharmony_ci </Dialog> 3921cb0ef41Sopenharmony_ci 3931cb0ef41Sopenharmony_ci <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="LicenseAgreementDlg">NOT Installed</Publish> 3941cb0ef41Sopenharmony_ci <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="VerifyReadyDlg">Installed AND PATCH</Publish> 3951cb0ef41Sopenharmony_ci <Publish Dialog="LicenseAgreementDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg">1</Publish> 3961cb0ef41Sopenharmony_ci <Publish Dialog="LicenseAgreementDlg" Control="Next" Event="NewDialog" Value="InstallDirDlg">LicenseAccepted = "1"</Publish> 3971cb0ef41Sopenharmony_ci <Publish Dialog="InstallDirDlg" Control="Back" Event="NewDialog" Value="LicenseAgreementDlg">1</Publish> 3981cb0ef41Sopenharmony_ci <Publish Dialog="InstallDirDlg" Control="Next" Event="NewDialog" Value="CustomizeDlg" Order="20">1</Publish> 3991cb0ef41Sopenharmony_ci <Publish Dialog="InstallDirDlg" Control="Next" Event="SetTargetPath" Value="[WIXUI_INSTALLDIR]" Order="10">1</Publish> 4001cb0ef41Sopenharmony_ci <Publish Dialog="InstallDirDlg" Control="ChangeFolder" Property="_BrowseProperty" Value="[WIXUI_INSTALLDIR]" Order="10">1</Publish> 4011cb0ef41Sopenharmony_ci <Publish Dialog="InstallDirDlg" Control="ChangeFolder" Event="SpawnDialog" Value="BrowseDlg" Order="20">1</Publish> 4021cb0ef41Sopenharmony_ci <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="CustomizeDlg" Order="1">NOT Installed OR WixUI_InstallMode = "Change"</Publish> 4031cb0ef41Sopenharmony_ci <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="MaintenanceTypeDlg" Order="2">Installed AND NOT PATCH</Publish> 4041cb0ef41Sopenharmony_ci <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg" Order="3">Installed AND PATCH</Publish> 4051cb0ef41Sopenharmony_ci <Publish Dialog="MaintenanceTypeDlg" Control="ChangeButton" Event="NewDialog" Value="CustomizeDlg">1</Publish> 4061cb0ef41Sopenharmony_ci <Publish Dialog="MaintenanceWelcomeDlg" Control="Next" Event="NewDialog" Value="MaintenanceTypeDlg">1</Publish> 4071cb0ef41Sopenharmony_ci <Publish Dialog="MaintenanceTypeDlg" Control="RepairButton" Event="NewDialog" Value="VerifyReadyDlg">1</Publish> 4081cb0ef41Sopenharmony_ci <Publish Dialog="MaintenanceTypeDlg" Control="RemoveButton" Event="NewDialog" Value="VerifyReadyDlg">1</Publish> 4091cb0ef41Sopenharmony_ci <Publish Dialog="MaintenanceTypeDlg" Control="Back" Event="NewDialog" Value="MaintenanceWelcomeDlg">1</Publish> 4101cb0ef41Sopenharmony_ci <Publish Dialog="CustomizeDlg" Control="Back" Event="NewDialog" Value="MaintenanceTypeDlg" Order="1">Installed</Publish> 4111cb0ef41Sopenharmony_ci <Publish Dialog="CustomizeDlg" Control="Back" Event="NewDialog" Value="InstallDirDlg" Order="2">NOT Installed</Publish> 4121cb0ef41Sopenharmony_ci <Publish Dialog="CustomizeDlg" Control="Next" Event="NewDialog" Value="NativeToolsDlg">1</Publish> 4131cb0ef41Sopenharmony_ci <Publish Dialog="NativeToolsDlg" Control="Back" Event="NewDialog" Value="CustomizeDlg">1</Publish> 4141cb0ef41Sopenharmony_ci <Publish Dialog="NativeToolsDlg" Control="Next" Event="NewDialog" Value="VerifyReadyDlg">1</Publish> 4151cb0ef41Sopenharmony_ci <Publish Dialog="ExitDialog" Control="Finish" Event="DoAction" Value="LaunchApplication">NATIVETOOLSCHECKBOX = 1</Publish> 4161cb0ef41Sopenharmony_ci <Publish Dialog="ExitDialog" Control="Finish" Event="EndDialog" Value="Return" Order="999">1</Publish> 4171cb0ef41Sopenharmony_ci 4181cb0ef41Sopenharmony_ci <Property Id="WIXUI_EXITDIALOGOPTIONALTEXT" Value="!(loc.WIXUI_EXITDIALOGOPTIONALTEXT)"/> 4191cb0ef41Sopenharmony_ci </UI> 4201cb0ef41Sopenharmony_ci 4211cb0ef41Sopenharmony_ci <UIRef Id="WixUI_Common"/> 4221cb0ef41Sopenharmony_ci <UIRef Id="WixUI_ErrorProgressText"/> 4231cb0ef41Sopenharmony_ci <WixVariable Id="WixUIBannerBmp" Value="$(var.RepoDir)\doc\thin-white-stripe.jpg"/> 4241cb0ef41Sopenharmony_ci <WixVariable Id="WixUIDialogBmp" Value="$(var.RepoDir)\doc\full-white-stripe.jpg"/> 4251cb0ef41Sopenharmony_ci <WixVariable Id="WixUILicenseRtf" Value="$(var.SourceDir)\LICENSE.rtf"/> 4261cb0ef41Sopenharmony_ci </Product> 4271cb0ef41Sopenharmony_ci 4281cb0ef41Sopenharmony_ci</Wix> 429