diff --git a/ui/.gitignore b/ui/.gitignore new file mode 100644 index 0000000..b512c09 --- /dev/null +++ b/ui/.gitignore @@ -0,0 +1 @@ +node_modules \ No newline at end of file diff --git a/ui/3.0.6.2/AES-CTR-Netstandard.dll b/ui/3.0.6.2/AES-CTR-Netstandard.dll new file mode 100644 index 0000000..b623ccf Binary files /dev/null and b/ui/3.0.6.2/AES-CTR-Netstandard.dll differ diff --git a/ui/3.0.6.2/BCnEncoder.NET.ImageSharp.dll b/ui/3.0.6.2/BCnEncoder.NET.ImageSharp.dll new file mode 100644 index 0000000..970d8d6 Binary files /dev/null and b/ui/3.0.6.2/BCnEncoder.NET.ImageSharp.dll differ diff --git a/ui/3.0.6.2/BCnEncoder.dll b/ui/3.0.6.2/BCnEncoder.dll new file mode 100644 index 0000000..4991107 Binary files /dev/null and b/ui/3.0.6.2/BCnEncoder.dll differ diff --git a/ui/3.0.6.2/Crc32.NET.dll b/ui/3.0.6.2/Crc32.NET.dll new file mode 100644 index 0000000..21213ed Binary files /dev/null and b/ui/3.0.6.2/Crc32.NET.dll differ diff --git a/ui/3.0.6.2/DeviceId.dll b/ui/3.0.6.2/DeviceId.dll new file mode 100644 index 0000000..9cde699 Binary files /dev/null and b/ui/3.0.6.2/DeviceId.dll differ diff --git a/ui/3.0.6.2/Extractors/linux-x64/7zz b/ui/3.0.6.2/Extractors/linux-x64/7zz new file mode 100644 index 0000000..4b7bf38 Binary files /dev/null and b/ui/3.0.6.2/Extractors/linux-x64/7zz differ diff --git a/ui/3.0.6.2/Extractors/mac/7zz b/ui/3.0.6.2/Extractors/mac/7zz new file mode 100644 index 0000000..e84f105 Binary files /dev/null and b/ui/3.0.6.2/Extractors/mac/7zz differ diff --git a/ui/3.0.6.2/Extractors/windows-x64/7z.dll b/ui/3.0.6.2/Extractors/windows-x64/7z.dll new file mode 100644 index 0000000..1533be1 Binary files /dev/null and b/ui/3.0.6.2/Extractors/windows-x64/7z.dll differ diff --git a/ui/3.0.6.2/Extractors/windows-x64/7z.exe b/ui/3.0.6.2/Extractors/windows-x64/7z.exe new file mode 100644 index 0000000..c48554a Binary files /dev/null and b/ui/3.0.6.2/Extractors/windows-x64/7z.exe differ diff --git a/ui/3.0.6.2/F23.StringSimilarity.dll b/ui/3.0.6.2/F23.StringSimilarity.dll new file mode 100644 index 0000000..492b355 Binary files /dev/null and b/ui/3.0.6.2/F23.StringSimilarity.dll differ diff --git a/ui/3.0.6.2/FluentFTP.dll b/ui/3.0.6.2/FluentFTP.dll new file mode 100644 index 0000000..4985369 Binary files /dev/null and b/ui/3.0.6.2/FluentFTP.dll differ diff --git a/ui/3.0.6.2/GameFinder.Common.dll b/ui/3.0.6.2/GameFinder.Common.dll new file mode 100644 index 0000000..dbf2d61 Binary files /dev/null and b/ui/3.0.6.2/GameFinder.Common.dll differ diff --git a/ui/3.0.6.2/GameFinder.RegistryUtils.dll b/ui/3.0.6.2/GameFinder.RegistryUtils.dll new file mode 100644 index 0000000..208526f Binary files /dev/null and b/ui/3.0.6.2/GameFinder.RegistryUtils.dll differ diff --git a/ui/3.0.6.2/GameFinder.StoreHandlers.EGS.dll b/ui/3.0.6.2/GameFinder.StoreHandlers.EGS.dll new file mode 100644 index 0000000..94d30f0 Binary files /dev/null and b/ui/3.0.6.2/GameFinder.StoreHandlers.EGS.dll differ diff --git a/ui/3.0.6.2/GameFinder.StoreHandlers.GOG.dll b/ui/3.0.6.2/GameFinder.StoreHandlers.GOG.dll new file mode 100644 index 0000000..3551617 Binary files /dev/null and b/ui/3.0.6.2/GameFinder.StoreHandlers.GOG.dll differ diff --git a/ui/3.0.6.2/GameFinder.StoreHandlers.Origin.dll b/ui/3.0.6.2/GameFinder.StoreHandlers.Origin.dll new file mode 100644 index 0000000..fe1663f Binary files /dev/null and b/ui/3.0.6.2/GameFinder.StoreHandlers.Origin.dll differ diff --git a/ui/3.0.6.2/GameFinder.StoreHandlers.Steam.dll b/ui/3.0.6.2/GameFinder.StoreHandlers.Steam.dll new file mode 100644 index 0000000..81dd832 Binary files /dev/null and b/ui/3.0.6.2/GameFinder.StoreHandlers.Steam.dll differ diff --git a/ui/3.0.6.2/HtmlAgilityPack.dll b/ui/3.0.6.2/HtmlAgilityPack.dll new file mode 100644 index 0000000..d817f94 Binary files /dev/null and b/ui/3.0.6.2/HtmlAgilityPack.dll differ diff --git a/ui/3.0.6.2/ICSharpCode.SharpZipLib.dll b/ui/3.0.6.2/ICSharpCode.SharpZipLib.dll new file mode 100644 index 0000000..bbd7b7a Binary files /dev/null and b/ui/3.0.6.2/ICSharpCode.SharpZipLib.dll differ diff --git a/ui/3.0.6.2/INIFileParser.dll b/ui/3.0.6.2/INIFileParser.dll new file mode 100644 index 0000000..69af5aa Binary files /dev/null and b/ui/3.0.6.2/INIFileParser.dll differ diff --git a/ui/3.0.6.2/K4os.Compression.LZ4.Streams.dll b/ui/3.0.6.2/K4os.Compression.LZ4.Streams.dll new file mode 100644 index 0000000..f4548c2 Binary files /dev/null and b/ui/3.0.6.2/K4os.Compression.LZ4.Streams.dll differ diff --git a/ui/3.0.6.2/K4os.Compression.LZ4.dll b/ui/3.0.6.2/K4os.Compression.LZ4.dll new file mode 100644 index 0000000..da7db4c Binary files /dev/null and b/ui/3.0.6.2/K4os.Compression.LZ4.dll differ diff --git a/ui/3.0.6.2/K4os.Hash.xxHash.dll b/ui/3.0.6.2/K4os.Hash.xxHash.dll new file mode 100644 index 0000000..7796fb9 Binary files /dev/null and b/ui/3.0.6.2/K4os.Hash.xxHash.dll differ diff --git a/ui/3.0.6.2/MegaApiClient.dll b/ui/3.0.6.2/MegaApiClient.dll new file mode 100644 index 0000000..bd5b25c Binary files /dev/null and b/ui/3.0.6.2/MegaApiClient.dll differ diff --git a/ui/3.0.6.2/Microsoft.CSharp.dll b/ui/3.0.6.2/Microsoft.CSharp.dll new file mode 100644 index 0000000..3ea33ec Binary files /dev/null and b/ui/3.0.6.2/Microsoft.CSharp.dll differ diff --git a/ui/3.0.6.2/Microsoft.DiaSymReader.Native.amd64.dll b/ui/3.0.6.2/Microsoft.DiaSymReader.Native.amd64.dll new file mode 100644 index 0000000..78c90cd Binary files /dev/null and b/ui/3.0.6.2/Microsoft.DiaSymReader.Native.amd64.dll differ diff --git a/ui/3.0.6.2/Microsoft.Extensions.Configuration.Abstractions.dll b/ui/3.0.6.2/Microsoft.Extensions.Configuration.Abstractions.dll new file mode 100644 index 0000000..79ba25e Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Extensions.Configuration.Abstractions.dll differ diff --git a/ui/3.0.6.2/Microsoft.Extensions.Configuration.Binder.dll b/ui/3.0.6.2/Microsoft.Extensions.Configuration.Binder.dll new file mode 100644 index 0000000..e8d9071 Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Extensions.Configuration.Binder.dll differ diff --git a/ui/3.0.6.2/Microsoft.Extensions.Configuration.CommandLine.dll b/ui/3.0.6.2/Microsoft.Extensions.Configuration.CommandLine.dll new file mode 100644 index 0000000..6cece3d Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Extensions.Configuration.CommandLine.dll differ diff --git a/ui/3.0.6.2/Microsoft.Extensions.Configuration.EnvironmentVariables.dll b/ui/3.0.6.2/Microsoft.Extensions.Configuration.EnvironmentVariables.dll new file mode 100644 index 0000000..d85b73e Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Extensions.Configuration.EnvironmentVariables.dll differ diff --git a/ui/3.0.6.2/Microsoft.Extensions.Configuration.FileExtensions.dll b/ui/3.0.6.2/Microsoft.Extensions.Configuration.FileExtensions.dll new file mode 100644 index 0000000..206402d Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Extensions.Configuration.FileExtensions.dll differ diff --git a/ui/3.0.6.2/Microsoft.Extensions.Configuration.Json.dll b/ui/3.0.6.2/Microsoft.Extensions.Configuration.Json.dll new file mode 100644 index 0000000..d400761 Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Extensions.Configuration.Json.dll differ diff --git a/ui/3.0.6.2/Microsoft.Extensions.Configuration.UserSecrets.dll b/ui/3.0.6.2/Microsoft.Extensions.Configuration.UserSecrets.dll new file mode 100644 index 0000000..b8d9d13 Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Extensions.Configuration.UserSecrets.dll differ diff --git a/ui/3.0.6.2/Microsoft.Extensions.Configuration.dll b/ui/3.0.6.2/Microsoft.Extensions.Configuration.dll new file mode 100644 index 0000000..aa5f9e8 Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Extensions.Configuration.dll differ diff --git a/ui/3.0.6.2/Microsoft.Extensions.DependencyInjection.Abstractions.dll b/ui/3.0.6.2/Microsoft.Extensions.DependencyInjection.Abstractions.dll new file mode 100644 index 0000000..e51b30d Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Extensions.DependencyInjection.Abstractions.dll differ diff --git a/ui/3.0.6.2/Microsoft.Extensions.DependencyInjection.dll b/ui/3.0.6.2/Microsoft.Extensions.DependencyInjection.dll new file mode 100644 index 0000000..189cf69 Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Extensions.DependencyInjection.dll differ diff --git a/ui/3.0.6.2/Microsoft.Extensions.FileProviders.Abstractions.dll b/ui/3.0.6.2/Microsoft.Extensions.FileProviders.Abstractions.dll new file mode 100644 index 0000000..c9a0011 Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Extensions.FileProviders.Abstractions.dll differ diff --git a/ui/3.0.6.2/Microsoft.Extensions.FileProviders.Physical.dll b/ui/3.0.6.2/Microsoft.Extensions.FileProviders.Physical.dll new file mode 100644 index 0000000..3292720 Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Extensions.FileProviders.Physical.dll differ diff --git a/ui/3.0.6.2/Microsoft.Extensions.FileSystemGlobbing.dll b/ui/3.0.6.2/Microsoft.Extensions.FileSystemGlobbing.dll new file mode 100644 index 0000000..ecd8e07 Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Extensions.FileSystemGlobbing.dll differ diff --git a/ui/3.0.6.2/Microsoft.Extensions.Hosting.Abstractions.dll b/ui/3.0.6.2/Microsoft.Extensions.Hosting.Abstractions.dll new file mode 100644 index 0000000..6f71a7f Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Extensions.Hosting.Abstractions.dll differ diff --git a/ui/3.0.6.2/Microsoft.Extensions.Hosting.dll b/ui/3.0.6.2/Microsoft.Extensions.Hosting.dll new file mode 100644 index 0000000..bf3bfd7 Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Extensions.Hosting.dll differ diff --git a/ui/3.0.6.2/Microsoft.Extensions.Logging.Abstractions.dll b/ui/3.0.6.2/Microsoft.Extensions.Logging.Abstractions.dll new file mode 100644 index 0000000..58c646d Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Extensions.Logging.Abstractions.dll differ diff --git a/ui/3.0.6.2/Microsoft.Extensions.Logging.Configuration.dll b/ui/3.0.6.2/Microsoft.Extensions.Logging.Configuration.dll new file mode 100644 index 0000000..340012c Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Extensions.Logging.Configuration.dll differ diff --git a/ui/3.0.6.2/Microsoft.Extensions.Logging.Console.dll b/ui/3.0.6.2/Microsoft.Extensions.Logging.Console.dll new file mode 100644 index 0000000..685cc30 Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Extensions.Logging.Console.dll differ diff --git a/ui/3.0.6.2/Microsoft.Extensions.Logging.Debug.dll b/ui/3.0.6.2/Microsoft.Extensions.Logging.Debug.dll new file mode 100644 index 0000000..30a7d87 Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Extensions.Logging.Debug.dll differ diff --git a/ui/3.0.6.2/Microsoft.Extensions.Logging.EventLog.dll b/ui/3.0.6.2/Microsoft.Extensions.Logging.EventLog.dll new file mode 100644 index 0000000..ecde475 Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Extensions.Logging.EventLog.dll differ diff --git a/ui/3.0.6.2/Microsoft.Extensions.Logging.EventSource.dll b/ui/3.0.6.2/Microsoft.Extensions.Logging.EventSource.dll new file mode 100644 index 0000000..88eba5d Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Extensions.Logging.EventSource.dll differ diff --git a/ui/3.0.6.2/Microsoft.Extensions.Logging.dll b/ui/3.0.6.2/Microsoft.Extensions.Logging.dll new file mode 100644 index 0000000..acc9a2c Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Extensions.Logging.dll differ diff --git a/ui/3.0.6.2/Microsoft.Extensions.Options.ConfigurationExtensions.dll b/ui/3.0.6.2/Microsoft.Extensions.Options.ConfigurationExtensions.dll new file mode 100644 index 0000000..21e5e9c Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Extensions.Options.ConfigurationExtensions.dll differ diff --git a/ui/3.0.6.2/Microsoft.Extensions.Options.dll b/ui/3.0.6.2/Microsoft.Extensions.Options.dll new file mode 100644 index 0000000..e87da36 Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Extensions.Options.dll differ diff --git a/ui/3.0.6.2/Microsoft.Extensions.Primitives.dll b/ui/3.0.6.2/Microsoft.Extensions.Primitives.dll new file mode 100644 index 0000000..85537e7 Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Extensions.Primitives.dll differ diff --git a/ui/3.0.6.2/Microsoft.Toolkit.HighPerformance.dll b/ui/3.0.6.2/Microsoft.Toolkit.HighPerformance.dll new file mode 100644 index 0000000..0a9d82b Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Toolkit.HighPerformance.dll differ diff --git a/ui/3.0.6.2/Microsoft.Win32.Primitives.dll b/ui/3.0.6.2/Microsoft.Win32.Primitives.dll new file mode 100644 index 0000000..6f5e2ba Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Win32.Primitives.dll differ diff --git a/ui/3.0.6.2/Microsoft.Win32.Registry.dll b/ui/3.0.6.2/Microsoft.Win32.Registry.dll new file mode 100644 index 0000000..1dbc75e Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Win32.Registry.dll differ diff --git a/ui/3.0.6.2/Microsoft.Win32.SystemEvents.dll b/ui/3.0.6.2/Microsoft.Win32.SystemEvents.dll new file mode 100644 index 0000000..b5aa0c4 Binary files /dev/null and b/ui/3.0.6.2/Microsoft.Win32.SystemEvents.dll differ diff --git a/ui/3.0.6.2/NLog.Extensions.Logging.dll b/ui/3.0.6.2/NLog.Extensions.Logging.dll new file mode 100644 index 0000000..42746ab Binary files /dev/null and b/ui/3.0.6.2/NLog.Extensions.Logging.dll differ diff --git a/ui/3.0.6.2/NLog.dll b/ui/3.0.6.2/NLog.dll new file mode 100644 index 0000000..2785094 Binary files /dev/null and b/ui/3.0.6.2/NLog.dll differ diff --git a/ui/3.0.6.2/Nettle.dll b/ui/3.0.6.2/Nettle.dll new file mode 100644 index 0000000..93dd803 Binary files /dev/null and b/ui/3.0.6.2/Nettle.dll differ diff --git a/ui/3.0.6.2/Newtonsoft.Json.dll b/ui/3.0.6.2/Newtonsoft.Json.dll new file mode 100644 index 0000000..5f60955 Binary files /dev/null and b/ui/3.0.6.2/Newtonsoft.Json.dll differ diff --git a/ui/3.0.6.2/OMODFramework.dll b/ui/3.0.6.2/OMODFramework.dll new file mode 100644 index 0000000..288ba37 Binary files /dev/null and b/ui/3.0.6.2/OMODFramework.dll differ diff --git a/ui/3.0.6.2/Octodiff.dll b/ui/3.0.6.2/Octodiff.dll new file mode 100644 index 0000000..2be19a3 Binary files /dev/null and b/ui/3.0.6.2/Octodiff.dll differ diff --git a/ui/3.0.6.2/Octokit.dll b/ui/3.0.6.2/Octokit.dll new file mode 100644 index 0000000..2245ece Binary files /dev/null and b/ui/3.0.6.2/Octokit.dll differ diff --git a/ui/3.0.6.2/SQLite.Interop.dll b/ui/3.0.6.2/SQLite.Interop.dll new file mode 100644 index 0000000..20e9917 Binary files /dev/null and b/ui/3.0.6.2/SQLite.Interop.dll differ diff --git a/ui/3.0.6.2/SharpCompress.dll b/ui/3.0.6.2/SharpCompress.dll new file mode 100644 index 0000000..7e27106 Binary files /dev/null and b/ui/3.0.6.2/SharpCompress.dll differ diff --git a/ui/3.0.6.2/Shipwreck.Phash.dll b/ui/3.0.6.2/Shipwreck.Phash.dll new file mode 100644 index 0000000..d27e238 Binary files /dev/null and b/ui/3.0.6.2/Shipwreck.Phash.dll differ diff --git a/ui/3.0.6.2/SixLabors.ImageSharp.dll b/ui/3.0.6.2/SixLabors.ImageSharp.dll new file mode 100644 index 0000000..dd87091 Binary files /dev/null and b/ui/3.0.6.2/SixLabors.ImageSharp.dll differ diff --git a/ui/3.0.6.2/SteamKit2.dll b/ui/3.0.6.2/SteamKit2.dll new file mode 100644 index 0000000..113781a Binary files /dev/null and b/ui/3.0.6.2/SteamKit2.dll differ diff --git a/ui/3.0.6.2/System.Buffers.dll b/ui/3.0.6.2/System.Buffers.dll new file mode 100644 index 0000000..866b619 Binary files /dev/null and b/ui/3.0.6.2/System.Buffers.dll differ diff --git a/ui/3.0.6.2/System.Collections.Concurrent.dll b/ui/3.0.6.2/System.Collections.Concurrent.dll new file mode 100644 index 0000000..4f032cc Binary files /dev/null and b/ui/3.0.6.2/System.Collections.Concurrent.dll differ diff --git a/ui/3.0.6.2/System.Collections.Immutable.dll b/ui/3.0.6.2/System.Collections.Immutable.dll new file mode 100644 index 0000000..37bafbc Binary files /dev/null and b/ui/3.0.6.2/System.Collections.Immutable.dll differ diff --git a/ui/3.0.6.2/System.Collections.NonGeneric.dll b/ui/3.0.6.2/System.Collections.NonGeneric.dll new file mode 100644 index 0000000..fdba5f2 Binary files /dev/null and b/ui/3.0.6.2/System.Collections.NonGeneric.dll differ diff --git a/ui/3.0.6.2/System.Collections.Specialized.dll b/ui/3.0.6.2/System.Collections.Specialized.dll new file mode 100644 index 0000000..cc53078 Binary files /dev/null and b/ui/3.0.6.2/System.Collections.Specialized.dll differ diff --git a/ui/3.0.6.2/System.Collections.dll b/ui/3.0.6.2/System.Collections.dll new file mode 100644 index 0000000..5d7ffb4 Binary files /dev/null and b/ui/3.0.6.2/System.Collections.dll differ diff --git a/ui/3.0.6.2/System.CommandLine.NamingConventionBinder.dll b/ui/3.0.6.2/System.CommandLine.NamingConventionBinder.dll new file mode 100644 index 0000000..5b29022 Binary files /dev/null and b/ui/3.0.6.2/System.CommandLine.NamingConventionBinder.dll differ diff --git a/ui/3.0.6.2/System.CommandLine.dll b/ui/3.0.6.2/System.CommandLine.dll new file mode 100644 index 0000000..ce7ae6f Binary files /dev/null and b/ui/3.0.6.2/System.CommandLine.dll differ diff --git a/ui/3.0.6.2/System.ComponentModel.EventBasedAsync.dll b/ui/3.0.6.2/System.ComponentModel.EventBasedAsync.dll new file mode 100644 index 0000000..c4a5a11 Binary files /dev/null and b/ui/3.0.6.2/System.ComponentModel.EventBasedAsync.dll differ diff --git a/ui/3.0.6.2/System.ComponentModel.Primitives.dll b/ui/3.0.6.2/System.ComponentModel.Primitives.dll new file mode 100644 index 0000000..d411cd2 Binary files /dev/null and b/ui/3.0.6.2/System.ComponentModel.Primitives.dll differ diff --git a/ui/3.0.6.2/System.ComponentModel.TypeConverter.dll b/ui/3.0.6.2/System.ComponentModel.TypeConverter.dll new file mode 100644 index 0000000..548c8a2 Binary files /dev/null and b/ui/3.0.6.2/System.ComponentModel.TypeConverter.dll differ diff --git a/ui/3.0.6.2/System.ComponentModel.dll b/ui/3.0.6.2/System.ComponentModel.dll new file mode 100644 index 0000000..2daf380 Binary files /dev/null and b/ui/3.0.6.2/System.ComponentModel.dll differ diff --git a/ui/3.0.6.2/System.Console.dll b/ui/3.0.6.2/System.Console.dll new file mode 100644 index 0000000..5ce34e0 Binary files /dev/null and b/ui/3.0.6.2/System.Console.dll differ diff --git a/ui/3.0.6.2/System.Data.Common.dll b/ui/3.0.6.2/System.Data.Common.dll new file mode 100644 index 0000000..0da5c0a Binary files /dev/null and b/ui/3.0.6.2/System.Data.Common.dll differ diff --git a/ui/3.0.6.2/System.Data.SQLite.dll b/ui/3.0.6.2/System.Data.SQLite.dll new file mode 100644 index 0000000..6bbebea Binary files /dev/null and b/ui/3.0.6.2/System.Data.SQLite.dll differ diff --git a/ui/3.0.6.2/System.Diagnostics.Debug.dll b/ui/3.0.6.2/System.Diagnostics.Debug.dll new file mode 100644 index 0000000..10666ab Binary files /dev/null and b/ui/3.0.6.2/System.Diagnostics.Debug.dll differ diff --git a/ui/3.0.6.2/System.Diagnostics.DiagnosticSource.dll b/ui/3.0.6.2/System.Diagnostics.DiagnosticSource.dll new file mode 100644 index 0000000..21bc09f Binary files /dev/null and b/ui/3.0.6.2/System.Diagnostics.DiagnosticSource.dll differ diff --git a/ui/3.0.6.2/System.Diagnostics.EventLog.dll b/ui/3.0.6.2/System.Diagnostics.EventLog.dll new file mode 100644 index 0000000..9796e46 Binary files /dev/null and b/ui/3.0.6.2/System.Diagnostics.EventLog.dll differ diff --git a/ui/3.0.6.2/System.Diagnostics.FileVersionInfo.dll b/ui/3.0.6.2/System.Diagnostics.FileVersionInfo.dll new file mode 100644 index 0000000..d92810a Binary files /dev/null and b/ui/3.0.6.2/System.Diagnostics.FileVersionInfo.dll differ diff --git a/ui/3.0.6.2/System.Diagnostics.Process.dll b/ui/3.0.6.2/System.Diagnostics.Process.dll new file mode 100644 index 0000000..e4ee6a0 Binary files /dev/null and b/ui/3.0.6.2/System.Diagnostics.Process.dll differ diff --git a/ui/3.0.6.2/System.Diagnostics.StackTrace.dll b/ui/3.0.6.2/System.Diagnostics.StackTrace.dll new file mode 100644 index 0000000..5d9afcc Binary files /dev/null and b/ui/3.0.6.2/System.Diagnostics.StackTrace.dll differ diff --git a/ui/3.0.6.2/System.Diagnostics.Tools.dll b/ui/3.0.6.2/System.Diagnostics.Tools.dll new file mode 100644 index 0000000..d22458b Binary files /dev/null and b/ui/3.0.6.2/System.Diagnostics.Tools.dll differ diff --git a/ui/3.0.6.2/System.Diagnostics.TraceSource.dll b/ui/3.0.6.2/System.Diagnostics.TraceSource.dll new file mode 100644 index 0000000..b0f25c9 Binary files /dev/null and b/ui/3.0.6.2/System.Diagnostics.TraceSource.dll differ diff --git a/ui/3.0.6.2/System.Drawing.Common.dll b/ui/3.0.6.2/System.Drawing.Common.dll new file mode 100644 index 0000000..b80b430 Binary files /dev/null and b/ui/3.0.6.2/System.Drawing.Common.dll differ diff --git a/ui/3.0.6.2/System.Drawing.Primitives.dll b/ui/3.0.6.2/System.Drawing.Primitives.dll new file mode 100644 index 0000000..9c6dae8 Binary files /dev/null and b/ui/3.0.6.2/System.Drawing.Primitives.dll differ diff --git a/ui/3.0.6.2/System.Drawing.dll b/ui/3.0.6.2/System.Drawing.dll new file mode 100644 index 0000000..5ec9205 Binary files /dev/null and b/ui/3.0.6.2/System.Drawing.dll differ diff --git a/ui/3.0.6.2/System.Dynamic.Runtime.dll b/ui/3.0.6.2/System.Dynamic.Runtime.dll new file mode 100644 index 0000000..53204cd Binary files /dev/null and b/ui/3.0.6.2/System.Dynamic.Runtime.dll differ diff --git a/ui/3.0.6.2/System.Globalization.dll b/ui/3.0.6.2/System.Globalization.dll new file mode 100644 index 0000000..ba273ce Binary files /dev/null and b/ui/3.0.6.2/System.Globalization.dll differ diff --git a/ui/3.0.6.2/System.IO.Abstractions.dll b/ui/3.0.6.2/System.IO.Abstractions.dll new file mode 100644 index 0000000..9406836 Binary files /dev/null and b/ui/3.0.6.2/System.IO.Abstractions.dll differ diff --git a/ui/3.0.6.2/System.IO.Compression.Brotli.dll b/ui/3.0.6.2/System.IO.Compression.Brotli.dll new file mode 100644 index 0000000..d1e9388 Binary files /dev/null and b/ui/3.0.6.2/System.IO.Compression.Brotli.dll differ diff --git a/ui/3.0.6.2/System.IO.Compression.Native.dll b/ui/3.0.6.2/System.IO.Compression.Native.dll new file mode 100644 index 0000000..e411501 Binary files /dev/null and b/ui/3.0.6.2/System.IO.Compression.Native.dll differ diff --git a/ui/3.0.6.2/System.IO.Compression.ZipFile.dll b/ui/3.0.6.2/System.IO.Compression.ZipFile.dll new file mode 100644 index 0000000..3792ba8 Binary files /dev/null and b/ui/3.0.6.2/System.IO.Compression.ZipFile.dll differ diff --git a/ui/3.0.6.2/System.IO.Compression.dll b/ui/3.0.6.2/System.IO.Compression.dll new file mode 100644 index 0000000..97d9de8 Binary files /dev/null and b/ui/3.0.6.2/System.IO.Compression.dll differ diff --git a/ui/3.0.6.2/System.IO.FileSystem.AccessControl.dll b/ui/3.0.6.2/System.IO.FileSystem.AccessControl.dll new file mode 100644 index 0000000..7104878 Binary files /dev/null and b/ui/3.0.6.2/System.IO.FileSystem.AccessControl.dll differ diff --git a/ui/3.0.6.2/System.IO.FileSystem.DriveInfo.dll b/ui/3.0.6.2/System.IO.FileSystem.DriveInfo.dll new file mode 100644 index 0000000..5d34923 Binary files /dev/null and b/ui/3.0.6.2/System.IO.FileSystem.DriveInfo.dll differ diff --git a/ui/3.0.6.2/System.IO.FileSystem.Watcher.dll b/ui/3.0.6.2/System.IO.FileSystem.Watcher.dll new file mode 100644 index 0000000..003a2ba Binary files /dev/null and b/ui/3.0.6.2/System.IO.FileSystem.Watcher.dll differ diff --git a/ui/3.0.6.2/System.IO.FileSystem.dll b/ui/3.0.6.2/System.IO.FileSystem.dll new file mode 100644 index 0000000..ad73fef Binary files /dev/null and b/ui/3.0.6.2/System.IO.FileSystem.dll differ diff --git a/ui/3.0.6.2/System.IO.IsolatedStorage.dll b/ui/3.0.6.2/System.IO.IsolatedStorage.dll new file mode 100644 index 0000000..dd6b8de Binary files /dev/null and b/ui/3.0.6.2/System.IO.IsolatedStorage.dll differ diff --git a/ui/3.0.6.2/System.IO.MemoryMappedFiles.dll b/ui/3.0.6.2/System.IO.MemoryMappedFiles.dll new file mode 100644 index 0000000..e1da998 Binary files /dev/null and b/ui/3.0.6.2/System.IO.MemoryMappedFiles.dll differ diff --git a/ui/3.0.6.2/System.IO.Pipelines.dll b/ui/3.0.6.2/System.IO.Pipelines.dll new file mode 100644 index 0000000..42629eb Binary files /dev/null and b/ui/3.0.6.2/System.IO.Pipelines.dll differ diff --git a/ui/3.0.6.2/System.IO.dll b/ui/3.0.6.2/System.IO.dll new file mode 100644 index 0000000..03a1336 Binary files /dev/null and b/ui/3.0.6.2/System.IO.dll differ diff --git a/ui/3.0.6.2/System.Linq.Expressions.dll b/ui/3.0.6.2/System.Linq.Expressions.dll new file mode 100644 index 0000000..66753e4 Binary files /dev/null and b/ui/3.0.6.2/System.Linq.Expressions.dll differ diff --git a/ui/3.0.6.2/System.Linq.Parallel.dll b/ui/3.0.6.2/System.Linq.Parallel.dll new file mode 100644 index 0000000..a476a4e Binary files /dev/null and b/ui/3.0.6.2/System.Linq.Parallel.dll differ diff --git a/ui/3.0.6.2/System.Linq.Queryable.dll b/ui/3.0.6.2/System.Linq.Queryable.dll new file mode 100644 index 0000000..8a66ba1 Binary files /dev/null and b/ui/3.0.6.2/System.Linq.Queryable.dll differ diff --git a/ui/3.0.6.2/System.Linq.dll b/ui/3.0.6.2/System.Linq.dll new file mode 100644 index 0000000..40c99dc Binary files /dev/null and b/ui/3.0.6.2/System.Linq.dll differ diff --git a/ui/3.0.6.2/System.Memory.dll b/ui/3.0.6.2/System.Memory.dll new file mode 100644 index 0000000..0a79218 Binary files /dev/null and b/ui/3.0.6.2/System.Memory.dll differ diff --git a/ui/3.0.6.2/System.Net.Http.Json.dll b/ui/3.0.6.2/System.Net.Http.Json.dll new file mode 100644 index 0000000..fda4053 Binary files /dev/null and b/ui/3.0.6.2/System.Net.Http.Json.dll differ diff --git a/ui/3.0.6.2/System.Net.Http.dll b/ui/3.0.6.2/System.Net.Http.dll new file mode 100644 index 0000000..3b69390 Binary files /dev/null and b/ui/3.0.6.2/System.Net.Http.dll differ diff --git a/ui/3.0.6.2/System.Net.Mail.dll b/ui/3.0.6.2/System.Net.Mail.dll new file mode 100644 index 0000000..c55c825 Binary files /dev/null and b/ui/3.0.6.2/System.Net.Mail.dll differ diff --git a/ui/3.0.6.2/System.Net.NameResolution.dll b/ui/3.0.6.2/System.Net.NameResolution.dll new file mode 100644 index 0000000..4d0242e Binary files /dev/null and b/ui/3.0.6.2/System.Net.NameResolution.dll differ diff --git a/ui/3.0.6.2/System.Net.NetworkInformation.dll b/ui/3.0.6.2/System.Net.NetworkInformation.dll new file mode 100644 index 0000000..469eb45 Binary files /dev/null and b/ui/3.0.6.2/System.Net.NetworkInformation.dll differ diff --git a/ui/3.0.6.2/System.Net.Primitives.dll b/ui/3.0.6.2/System.Net.Primitives.dll new file mode 100644 index 0000000..32e94b3 Binary files /dev/null and b/ui/3.0.6.2/System.Net.Primitives.dll differ diff --git a/ui/3.0.6.2/System.Net.Quic.dll b/ui/3.0.6.2/System.Net.Quic.dll new file mode 100644 index 0000000..08425ee Binary files /dev/null and b/ui/3.0.6.2/System.Net.Quic.dll differ diff --git a/ui/3.0.6.2/System.Net.Requests.dll b/ui/3.0.6.2/System.Net.Requests.dll new file mode 100644 index 0000000..23968af Binary files /dev/null and b/ui/3.0.6.2/System.Net.Requests.dll differ diff --git a/ui/3.0.6.2/System.Net.Security.dll b/ui/3.0.6.2/System.Net.Security.dll new file mode 100644 index 0000000..c0b401c Binary files /dev/null and b/ui/3.0.6.2/System.Net.Security.dll differ diff --git a/ui/3.0.6.2/System.Net.ServicePoint.dll b/ui/3.0.6.2/System.Net.ServicePoint.dll new file mode 100644 index 0000000..c761422 Binary files /dev/null and b/ui/3.0.6.2/System.Net.ServicePoint.dll differ diff --git a/ui/3.0.6.2/System.Net.Sockets.dll b/ui/3.0.6.2/System.Net.Sockets.dll new file mode 100644 index 0000000..ed8dd50 Binary files /dev/null and b/ui/3.0.6.2/System.Net.Sockets.dll differ diff --git a/ui/3.0.6.2/System.Net.WebHeaderCollection.dll b/ui/3.0.6.2/System.Net.WebHeaderCollection.dll new file mode 100644 index 0000000..3935019 Binary files /dev/null and b/ui/3.0.6.2/System.Net.WebHeaderCollection.dll differ diff --git a/ui/3.0.6.2/System.Net.WebProxy.dll b/ui/3.0.6.2/System.Net.WebProxy.dll new file mode 100644 index 0000000..95ccc24 Binary files /dev/null and b/ui/3.0.6.2/System.Net.WebProxy.dll differ diff --git a/ui/3.0.6.2/System.Net.WebSockets.Client.dll b/ui/3.0.6.2/System.Net.WebSockets.Client.dll new file mode 100644 index 0000000..f6d1678 Binary files /dev/null and b/ui/3.0.6.2/System.Net.WebSockets.Client.dll differ diff --git a/ui/3.0.6.2/System.Net.WebSockets.dll b/ui/3.0.6.2/System.Net.WebSockets.dll new file mode 100644 index 0000000..81a657c Binary files /dev/null and b/ui/3.0.6.2/System.Net.WebSockets.dll differ diff --git a/ui/3.0.6.2/System.Numerics.Vectors.dll b/ui/3.0.6.2/System.Numerics.Vectors.dll new file mode 100644 index 0000000..d82c971 Binary files /dev/null and b/ui/3.0.6.2/System.Numerics.Vectors.dll differ diff --git a/ui/3.0.6.2/System.ObjectModel.dll b/ui/3.0.6.2/System.ObjectModel.dll new file mode 100644 index 0000000..ee474c1 Binary files /dev/null and b/ui/3.0.6.2/System.ObjectModel.dll differ diff --git a/ui/3.0.6.2/System.Private.CoreLib.dll b/ui/3.0.6.2/System.Private.CoreLib.dll new file mode 100644 index 0000000..e535a04 Binary files /dev/null and b/ui/3.0.6.2/System.Private.CoreLib.dll differ diff --git a/ui/3.0.6.2/System.Private.Uri.dll b/ui/3.0.6.2/System.Private.Uri.dll new file mode 100644 index 0000000..b74f6c2 Binary files /dev/null and b/ui/3.0.6.2/System.Private.Uri.dll differ diff --git a/ui/3.0.6.2/System.Private.Xml.Linq.dll b/ui/3.0.6.2/System.Private.Xml.Linq.dll new file mode 100644 index 0000000..2fb55e3 Binary files /dev/null and b/ui/3.0.6.2/System.Private.Xml.Linq.dll differ diff --git a/ui/3.0.6.2/System.Private.Xml.dll b/ui/3.0.6.2/System.Private.Xml.dll new file mode 100644 index 0000000..0190861 Binary files /dev/null and b/ui/3.0.6.2/System.Private.Xml.dll differ diff --git a/ui/3.0.6.2/System.Reactive.dll b/ui/3.0.6.2/System.Reactive.dll new file mode 100644 index 0000000..eb364ec Binary files /dev/null and b/ui/3.0.6.2/System.Reactive.dll differ diff --git a/ui/3.0.6.2/System.Reflection.Emit.ILGeneration.dll b/ui/3.0.6.2/System.Reflection.Emit.ILGeneration.dll new file mode 100644 index 0000000..190d885 Binary files /dev/null and b/ui/3.0.6.2/System.Reflection.Emit.ILGeneration.dll differ diff --git a/ui/3.0.6.2/System.Reflection.Emit.Lightweight.dll b/ui/3.0.6.2/System.Reflection.Emit.Lightweight.dll new file mode 100644 index 0000000..01ea8d9 Binary files /dev/null and b/ui/3.0.6.2/System.Reflection.Emit.Lightweight.dll differ diff --git a/ui/3.0.6.2/System.Reflection.Emit.dll b/ui/3.0.6.2/System.Reflection.Emit.dll new file mode 100644 index 0000000..8025b5d Binary files /dev/null and b/ui/3.0.6.2/System.Reflection.Emit.dll differ diff --git a/ui/3.0.6.2/System.Reflection.Extensions.dll b/ui/3.0.6.2/System.Reflection.Extensions.dll new file mode 100644 index 0000000..535e5b5 Binary files /dev/null and b/ui/3.0.6.2/System.Reflection.Extensions.dll differ diff --git a/ui/3.0.6.2/System.Reflection.Metadata.dll b/ui/3.0.6.2/System.Reflection.Metadata.dll new file mode 100644 index 0000000..732a1b8 Binary files /dev/null and b/ui/3.0.6.2/System.Reflection.Metadata.dll differ diff --git a/ui/3.0.6.2/System.Reflection.Primitives.dll b/ui/3.0.6.2/System.Reflection.Primitives.dll new file mode 100644 index 0000000..e84a97b Binary files /dev/null and b/ui/3.0.6.2/System.Reflection.Primitives.dll differ diff --git a/ui/3.0.6.2/System.Reflection.dll b/ui/3.0.6.2/System.Reflection.dll new file mode 100644 index 0000000..6fdb72f Binary files /dev/null and b/ui/3.0.6.2/System.Reflection.dll differ diff --git a/ui/3.0.6.2/System.Resources.ResourceManager.dll b/ui/3.0.6.2/System.Resources.ResourceManager.dll new file mode 100644 index 0000000..78841e0 Binary files /dev/null and b/ui/3.0.6.2/System.Resources.ResourceManager.dll differ diff --git a/ui/3.0.6.2/System.Runtime.CompilerServices.Unsafe.dll b/ui/3.0.6.2/System.Runtime.CompilerServices.Unsafe.dll new file mode 100644 index 0000000..584e3db Binary files /dev/null and b/ui/3.0.6.2/System.Runtime.CompilerServices.Unsafe.dll differ diff --git a/ui/3.0.6.2/System.Runtime.Extensions.dll b/ui/3.0.6.2/System.Runtime.Extensions.dll new file mode 100644 index 0000000..67832ab Binary files /dev/null and b/ui/3.0.6.2/System.Runtime.Extensions.dll differ diff --git a/ui/3.0.6.2/System.Runtime.InteropServices.RuntimeInformation.dll b/ui/3.0.6.2/System.Runtime.InteropServices.RuntimeInformation.dll new file mode 100644 index 0000000..af136f3 Binary files /dev/null and b/ui/3.0.6.2/System.Runtime.InteropServices.RuntimeInformation.dll differ diff --git a/ui/3.0.6.2/System.Runtime.InteropServices.dll b/ui/3.0.6.2/System.Runtime.InteropServices.dll new file mode 100644 index 0000000..aa8e8dc Binary files /dev/null and b/ui/3.0.6.2/System.Runtime.InteropServices.dll differ diff --git a/ui/3.0.6.2/System.Runtime.Intrinsics.dll b/ui/3.0.6.2/System.Runtime.Intrinsics.dll new file mode 100644 index 0000000..9773ddf Binary files /dev/null and b/ui/3.0.6.2/System.Runtime.Intrinsics.dll differ diff --git a/ui/3.0.6.2/System.Runtime.Numerics.dll b/ui/3.0.6.2/System.Runtime.Numerics.dll new file mode 100644 index 0000000..f58018a Binary files /dev/null and b/ui/3.0.6.2/System.Runtime.Numerics.dll differ diff --git a/ui/3.0.6.2/System.Runtime.Serialization.Formatters.dll b/ui/3.0.6.2/System.Runtime.Serialization.Formatters.dll new file mode 100644 index 0000000..7fb2899 Binary files /dev/null and b/ui/3.0.6.2/System.Runtime.Serialization.Formatters.dll differ diff --git a/ui/3.0.6.2/System.Runtime.Serialization.Primitives.dll b/ui/3.0.6.2/System.Runtime.Serialization.Primitives.dll new file mode 100644 index 0000000..5a57519 Binary files /dev/null and b/ui/3.0.6.2/System.Runtime.Serialization.Primitives.dll differ diff --git a/ui/3.0.6.2/System.Runtime.dll b/ui/3.0.6.2/System.Runtime.dll new file mode 100644 index 0000000..c59bc9d Binary files /dev/null and b/ui/3.0.6.2/System.Runtime.dll differ diff --git a/ui/3.0.6.2/System.Security.AccessControl.dll b/ui/3.0.6.2/System.Security.AccessControl.dll new file mode 100644 index 0000000..1e85290 Binary files /dev/null and b/ui/3.0.6.2/System.Security.AccessControl.dll differ diff --git a/ui/3.0.6.2/System.Security.Claims.dll b/ui/3.0.6.2/System.Security.Claims.dll new file mode 100644 index 0000000..d77b481 Binary files /dev/null and b/ui/3.0.6.2/System.Security.Claims.dll differ diff --git a/ui/3.0.6.2/System.Security.Cryptography.Algorithms.dll b/ui/3.0.6.2/System.Security.Cryptography.Algorithms.dll new file mode 100644 index 0000000..d93c44c Binary files /dev/null and b/ui/3.0.6.2/System.Security.Cryptography.Algorithms.dll differ diff --git a/ui/3.0.6.2/System.Security.Cryptography.Cng.dll b/ui/3.0.6.2/System.Security.Cryptography.Cng.dll new file mode 100644 index 0000000..0ed6acb Binary files /dev/null and b/ui/3.0.6.2/System.Security.Cryptography.Cng.dll differ diff --git a/ui/3.0.6.2/System.Security.Cryptography.Csp.dll b/ui/3.0.6.2/System.Security.Cryptography.Csp.dll new file mode 100644 index 0000000..fdbc37a Binary files /dev/null and b/ui/3.0.6.2/System.Security.Cryptography.Csp.dll differ diff --git a/ui/3.0.6.2/System.Security.Cryptography.Encoding.dll b/ui/3.0.6.2/System.Security.Cryptography.Encoding.dll new file mode 100644 index 0000000..96cb67a Binary files /dev/null and b/ui/3.0.6.2/System.Security.Cryptography.Encoding.dll differ diff --git a/ui/3.0.6.2/System.Security.Cryptography.Primitives.dll b/ui/3.0.6.2/System.Security.Cryptography.Primitives.dll new file mode 100644 index 0000000..1eb00c1 Binary files /dev/null and b/ui/3.0.6.2/System.Security.Cryptography.Primitives.dll differ diff --git a/ui/3.0.6.2/System.Security.Cryptography.X509Certificates.dll b/ui/3.0.6.2/System.Security.Cryptography.X509Certificates.dll new file mode 100644 index 0000000..6d093fa Binary files /dev/null and b/ui/3.0.6.2/System.Security.Cryptography.X509Certificates.dll differ diff --git a/ui/3.0.6.2/System.Security.Principal.Windows.dll b/ui/3.0.6.2/System.Security.Principal.Windows.dll new file mode 100644 index 0000000..1d4fa28 Binary files /dev/null and b/ui/3.0.6.2/System.Security.Principal.Windows.dll differ diff --git a/ui/3.0.6.2/System.Text.Encoding.CodePages.dll b/ui/3.0.6.2/System.Text.Encoding.CodePages.dll new file mode 100644 index 0000000..7c8ddab Binary files /dev/null and b/ui/3.0.6.2/System.Text.Encoding.CodePages.dll differ diff --git a/ui/3.0.6.2/System.Text.Encoding.Extensions.dll b/ui/3.0.6.2/System.Text.Encoding.Extensions.dll new file mode 100644 index 0000000..2e8bac4 Binary files /dev/null and b/ui/3.0.6.2/System.Text.Encoding.Extensions.dll differ diff --git a/ui/3.0.6.2/System.Text.Encoding.dll b/ui/3.0.6.2/System.Text.Encoding.dll new file mode 100644 index 0000000..e7207cf Binary files /dev/null and b/ui/3.0.6.2/System.Text.Encoding.dll differ diff --git a/ui/3.0.6.2/System.Text.Encodings.Web.dll b/ui/3.0.6.2/System.Text.Encodings.Web.dll new file mode 100644 index 0000000..60173d1 Binary files /dev/null and b/ui/3.0.6.2/System.Text.Encodings.Web.dll differ diff --git a/ui/3.0.6.2/System.Text.Json.dll b/ui/3.0.6.2/System.Text.Json.dll new file mode 100644 index 0000000..5d661a1 Binary files /dev/null and b/ui/3.0.6.2/System.Text.Json.dll differ diff --git a/ui/3.0.6.2/System.Text.RegularExpressions.dll b/ui/3.0.6.2/System.Text.RegularExpressions.dll new file mode 100644 index 0000000..aa03507 Binary files /dev/null and b/ui/3.0.6.2/System.Text.RegularExpressions.dll differ diff --git a/ui/3.0.6.2/System.Threading.Channels.dll b/ui/3.0.6.2/System.Threading.Channels.dll new file mode 100644 index 0000000..abf0110 Binary files /dev/null and b/ui/3.0.6.2/System.Threading.Channels.dll differ diff --git a/ui/3.0.6.2/System.Threading.Tasks.Parallel.dll b/ui/3.0.6.2/System.Threading.Tasks.Parallel.dll new file mode 100644 index 0000000..848c5f8 Binary files /dev/null and b/ui/3.0.6.2/System.Threading.Tasks.Parallel.dll differ diff --git a/ui/3.0.6.2/System.Threading.Tasks.dll b/ui/3.0.6.2/System.Threading.Tasks.dll new file mode 100644 index 0000000..a8c3f8b Binary files /dev/null and b/ui/3.0.6.2/System.Threading.Tasks.dll differ diff --git a/ui/3.0.6.2/System.Threading.Thread.dll b/ui/3.0.6.2/System.Threading.Thread.dll new file mode 100644 index 0000000..67b06fc Binary files /dev/null and b/ui/3.0.6.2/System.Threading.Thread.dll differ diff --git a/ui/3.0.6.2/System.Threading.ThreadPool.dll b/ui/3.0.6.2/System.Threading.ThreadPool.dll new file mode 100644 index 0000000..44b80b4 Binary files /dev/null and b/ui/3.0.6.2/System.Threading.ThreadPool.dll differ diff --git a/ui/3.0.6.2/System.Threading.Timer.dll b/ui/3.0.6.2/System.Threading.Timer.dll new file mode 100644 index 0000000..db853df Binary files /dev/null and b/ui/3.0.6.2/System.Threading.Timer.dll differ diff --git a/ui/3.0.6.2/System.Threading.dll b/ui/3.0.6.2/System.Threading.dll new file mode 100644 index 0000000..4539dcd Binary files /dev/null and b/ui/3.0.6.2/System.Threading.dll differ diff --git a/ui/3.0.6.2/System.Transactions.Local.dll b/ui/3.0.6.2/System.Transactions.Local.dll new file mode 100644 index 0000000..c1ee179 Binary files /dev/null and b/ui/3.0.6.2/System.Transactions.Local.dll differ diff --git a/ui/3.0.6.2/System.Web.HttpUtility.dll b/ui/3.0.6.2/System.Web.HttpUtility.dll new file mode 100644 index 0000000..8b8a97b Binary files /dev/null and b/ui/3.0.6.2/System.Web.HttpUtility.dll differ diff --git a/ui/3.0.6.2/System.Xml.Linq.dll b/ui/3.0.6.2/System.Xml.Linq.dll new file mode 100644 index 0000000..1db1a65 Binary files /dev/null and b/ui/3.0.6.2/System.Xml.Linq.dll differ diff --git a/ui/3.0.6.2/System.Xml.ReaderWriter.dll b/ui/3.0.6.2/System.Xml.ReaderWriter.dll new file mode 100644 index 0000000..7be5c3d Binary files /dev/null and b/ui/3.0.6.2/System.Xml.ReaderWriter.dll differ diff --git a/ui/3.0.6.2/System.Xml.XDocument.dll b/ui/3.0.6.2/System.Xml.XDocument.dll new file mode 100644 index 0000000..00045ea Binary files /dev/null and b/ui/3.0.6.2/System.Xml.XDocument.dll differ diff --git a/ui/3.0.6.2/System.Xml.XmlDocument.dll b/ui/3.0.6.2/System.Xml.XmlDocument.dll new file mode 100644 index 0000000..52a002d Binary files /dev/null and b/ui/3.0.6.2/System.Xml.XmlDocument.dll differ diff --git a/ui/3.0.6.2/System.dll b/ui/3.0.6.2/System.dll new file mode 100644 index 0000000..f7a4a0d Binary files /dev/null and b/ui/3.0.6.2/System.dll differ diff --git a/ui/3.0.6.2/Tools/texconv.exe b/ui/3.0.6.2/Tools/texconv.exe new file mode 100644 index 0000000..6ff2033 Binary files /dev/null and b/ui/3.0.6.2/Tools/texconv.exe differ diff --git a/ui/3.0.6.2/Tools/texdiag.exe b/ui/3.0.6.2/Tools/texdiag.exe new file mode 100644 index 0000000..604c5d3 Binary files /dev/null and b/ui/3.0.6.2/Tools/texdiag.exe differ diff --git a/ui/3.0.6.2/ValveKeyValue.dll b/ui/3.0.6.2/ValveKeyValue.dll new file mode 100644 index 0000000..baf52bc Binary files /dev/null and b/ui/3.0.6.2/ValveKeyValue.dll differ diff --git a/ui/3.0.6.2/Wabbajack.CLI.Builder.dll b/ui/3.0.6.2/Wabbajack.CLI.Builder.dll new file mode 100644 index 0000000..9457529 Binary files /dev/null and b/ui/3.0.6.2/Wabbajack.CLI.Builder.dll differ diff --git a/ui/3.0.6.2/Wabbajack.Common.dll b/ui/3.0.6.2/Wabbajack.Common.dll new file mode 100644 index 0000000..88a169f Binary files /dev/null and b/ui/3.0.6.2/Wabbajack.Common.dll differ diff --git a/ui/3.0.6.2/Wabbajack.Compiler.dll b/ui/3.0.6.2/Wabbajack.Compiler.dll new file mode 100644 index 0000000..d144ecb Binary files /dev/null and b/ui/3.0.6.2/Wabbajack.Compiler.dll differ diff --git a/ui/3.0.6.2/Wabbajack.Compression.BSA.dll b/ui/3.0.6.2/Wabbajack.Compression.BSA.dll new file mode 100644 index 0000000..aeec61b Binary files /dev/null and b/ui/3.0.6.2/Wabbajack.Compression.BSA.dll differ diff --git a/ui/3.0.6.2/Wabbajack.Compression.Zip.dll b/ui/3.0.6.2/Wabbajack.Compression.Zip.dll new file mode 100644 index 0000000..cd694e9 Binary files /dev/null and b/ui/3.0.6.2/Wabbajack.Compression.Zip.dll differ diff --git a/ui/3.0.6.2/Wabbajack.DTOs.dll b/ui/3.0.6.2/Wabbajack.DTOs.dll new file mode 100644 index 0000000..9e026df Binary files /dev/null and b/ui/3.0.6.2/Wabbajack.DTOs.dll differ diff --git a/ui/3.0.6.2/Wabbajack.Downloaders.Bethesda.dll b/ui/3.0.6.2/Wabbajack.Downloaders.Bethesda.dll new file mode 100644 index 0000000..850b994 Binary files /dev/null and b/ui/3.0.6.2/Wabbajack.Downloaders.Bethesda.dll differ diff --git a/ui/3.0.6.2/Wabbajack.Downloaders.Dispatcher.dll b/ui/3.0.6.2/Wabbajack.Downloaders.Dispatcher.dll new file mode 100644 index 0000000..35b33c8 Binary files /dev/null and b/ui/3.0.6.2/Wabbajack.Downloaders.Dispatcher.dll differ diff --git a/ui/3.0.6.2/Wabbajack.Downloaders.GameFile.dll b/ui/3.0.6.2/Wabbajack.Downloaders.GameFile.dll new file mode 100644 index 0000000..07c86a8 Binary files /dev/null and b/ui/3.0.6.2/Wabbajack.Downloaders.GameFile.dll differ diff --git a/ui/3.0.6.2/Wabbajack.Downloaders.GoogleDrive.dll b/ui/3.0.6.2/Wabbajack.Downloaders.GoogleDrive.dll new file mode 100644 index 0000000..742f41b Binary files /dev/null and b/ui/3.0.6.2/Wabbajack.Downloaders.GoogleDrive.dll differ diff --git a/ui/3.0.6.2/Wabbajack.Downloaders.Http.dll b/ui/3.0.6.2/Wabbajack.Downloaders.Http.dll new file mode 100644 index 0000000..8f403a2 Binary files /dev/null and b/ui/3.0.6.2/Wabbajack.Downloaders.Http.dll differ diff --git a/ui/3.0.6.2/Wabbajack.Downloaders.IPS4OAuth2Downloader.dll b/ui/3.0.6.2/Wabbajack.Downloaders.IPS4OAuth2Downloader.dll new file mode 100644 index 0000000..b63213f Binary files /dev/null and b/ui/3.0.6.2/Wabbajack.Downloaders.IPS4OAuth2Downloader.dll differ diff --git a/ui/3.0.6.2/Wabbajack.Downloaders.Interfaces.dll b/ui/3.0.6.2/Wabbajack.Downloaders.Interfaces.dll new file mode 100644 index 0000000..501fb1b Binary files /dev/null and b/ui/3.0.6.2/Wabbajack.Downloaders.Interfaces.dll differ diff --git a/ui/3.0.6.2/Wabbajack.Downloaders.Manual.dll b/ui/3.0.6.2/Wabbajack.Downloaders.Manual.dll new file mode 100644 index 0000000..ee5de6b Binary files /dev/null and b/ui/3.0.6.2/Wabbajack.Downloaders.Manual.dll differ diff --git a/ui/3.0.6.2/Wabbajack.Downloaders.MediaFire.dll b/ui/3.0.6.2/Wabbajack.Downloaders.MediaFire.dll new file mode 100644 index 0000000..8a938cb Binary files /dev/null and b/ui/3.0.6.2/Wabbajack.Downloaders.MediaFire.dll differ diff --git a/ui/3.0.6.2/Wabbajack.Downloaders.Mega.dll b/ui/3.0.6.2/Wabbajack.Downloaders.Mega.dll new file mode 100644 index 0000000..d524c54 Binary files /dev/null and b/ui/3.0.6.2/Wabbajack.Downloaders.Mega.dll differ diff --git a/ui/3.0.6.2/Wabbajack.Downloaders.ModDB.dll b/ui/3.0.6.2/Wabbajack.Downloaders.ModDB.dll new file mode 100644 index 0000000..6fdb6c9 Binary files /dev/null and b/ui/3.0.6.2/Wabbajack.Downloaders.ModDB.dll differ diff --git a/ui/3.0.6.2/Wabbajack.Downloaders.Nexus.dll b/ui/3.0.6.2/Wabbajack.Downloaders.Nexus.dll new file mode 100644 index 0000000..51f2832 Binary files /dev/null and b/ui/3.0.6.2/Wabbajack.Downloaders.Nexus.dll differ diff --git a/ui/3.0.6.2/Wabbajack.Downloaders.VerificationCache.dll b/ui/3.0.6.2/Wabbajack.Downloaders.VerificationCache.dll new file mode 100644 index 0000000..cc6f646 Binary files /dev/null and b/ui/3.0.6.2/Wabbajack.Downloaders.VerificationCache.dll differ diff --git a/ui/3.0.6.2/Wabbajack.Downloaders.WabbajackCDN.dll b/ui/3.0.6.2/Wabbajack.Downloaders.WabbajackCDN.dll new file mode 100644 index 0000000..e3a7b1a Binary files /dev/null and b/ui/3.0.6.2/Wabbajack.Downloaders.WabbajackCDN.dll differ diff --git a/ui/3.0.6.2/Wabbajack.exe b/ui/3.0.6.2/Wabbajack.exe new file mode 100644 index 0000000..dac6067 Binary files /dev/null and b/ui/3.0.6.2/Wabbajack.exe differ diff --git a/ui/3.0.6.2/api-ms-win-core-console-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-core-console-l1-1-0.dll new file mode 100644 index 0000000..726b975 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-core-console-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-core-console-l1-2-0.dll b/ui/3.0.6.2/api-ms-win-core-console-l1-2-0.dll new file mode 100644 index 0000000..b9d1ed4 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-core-console-l1-2-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-core-datetime-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-core-datetime-l1-1-0.dll new file mode 100644 index 0000000..f2ecfa7 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-core-datetime-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-core-debug-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-core-debug-l1-1-0.dll new file mode 100644 index 0000000..7bd075b Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-core-debug-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-core-errorhandling-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-core-errorhandling-l1-1-0.dll new file mode 100644 index 0000000..3bafba9 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-core-errorhandling-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-core-fibers-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-core-fibers-l1-1-0.dll new file mode 100644 index 0000000..651ffe1 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-core-fibers-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-core-file-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-core-file-l1-1-0.dll new file mode 100644 index 0000000..12bf0b6 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-core-file-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-core-file-l1-2-0.dll b/ui/3.0.6.2/api-ms-win-core-file-l1-2-0.dll new file mode 100644 index 0000000..da64db3 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-core-file-l1-2-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-core-file-l2-1-0.dll b/ui/3.0.6.2/api-ms-win-core-file-l2-1-0.dll new file mode 100644 index 0000000..9246b98 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-core-file-l2-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-core-handle-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-core-handle-l1-1-0.dll new file mode 100644 index 0000000..c96e31d Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-core-handle-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-core-heap-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-core-heap-l1-1-0.dll new file mode 100644 index 0000000..baa932f Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-core-heap-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-core-interlocked-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-core-interlocked-l1-1-0.dll new file mode 100644 index 0000000..7aa0639 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-core-interlocked-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-core-libraryloader-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-core-libraryloader-l1-1-0.dll new file mode 100644 index 0000000..ddd5e27 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-core-libraryloader-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-core-localization-l1-2-0.dll b/ui/3.0.6.2/api-ms-win-core-localization-l1-2-0.dll new file mode 100644 index 0000000..7b90b7c Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-core-localization-l1-2-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-core-memory-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-core-memory-l1-1-0.dll new file mode 100644 index 0000000..63e54f3 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-core-memory-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-core-namedpipe-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-core-namedpipe-l1-1-0.dll new file mode 100644 index 0000000..37e956e Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-core-namedpipe-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-core-processenvironment-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-core-processenvironment-l1-1-0.dll new file mode 100644 index 0000000..a2f3605 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-core-processenvironment-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-core-processthreads-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-core-processthreads-l1-1-0.dll new file mode 100644 index 0000000..f4d3a03 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-core-processthreads-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-core-processthreads-l1-1-1.dll b/ui/3.0.6.2/api-ms-win-core-processthreads-l1-1-1.dll new file mode 100644 index 0000000..7bc40e0 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-core-processthreads-l1-1-1.dll differ diff --git a/ui/3.0.6.2/api-ms-win-core-profile-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-core-profile-l1-1-0.dll new file mode 100644 index 0000000..da2b687 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-core-profile-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-core-rtlsupport-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-core-rtlsupport-l1-1-0.dll new file mode 100644 index 0000000..ae6dce5 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-core-rtlsupport-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-core-string-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-core-string-l1-1-0.dll new file mode 100644 index 0000000..32b52be Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-core-string-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-core-synch-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-core-synch-l1-1-0.dll new file mode 100644 index 0000000..b88f76a Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-core-synch-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-core-synch-l1-2-0.dll b/ui/3.0.6.2/api-ms-win-core-synch-l1-2-0.dll new file mode 100644 index 0000000..a17135a Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-core-synch-l1-2-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-core-sysinfo-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-core-sysinfo-l1-1-0.dll new file mode 100644 index 0000000..527d1a1 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-core-sysinfo-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-core-timezone-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-core-timezone-l1-1-0.dll new file mode 100644 index 0000000..bab2d02 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-core-timezone-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-core-util-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-core-util-l1-1-0.dll new file mode 100644 index 0000000..080a9c9 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-core-util-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-crt-conio-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-crt-conio-l1-1-0.dll new file mode 100644 index 0000000..2355a62 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-crt-conio-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-crt-convert-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-crt-convert-l1-1-0.dll new file mode 100644 index 0000000..ddd2b4c Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-crt-convert-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-crt-environment-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-crt-environment-l1-1-0.dll new file mode 100644 index 0000000..e2fe9ef Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-crt-environment-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-crt-filesystem-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-crt-filesystem-l1-1-0.dll new file mode 100644 index 0000000..97ea465 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-crt-filesystem-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-crt-heap-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-crt-heap-l1-1-0.dll new file mode 100644 index 0000000..4e3af05 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-crt-heap-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-crt-locale-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-crt-locale-l1-1-0.dll new file mode 100644 index 0000000..5fcd98b Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-crt-locale-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-crt-math-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-crt-math-l1-1-0.dll new file mode 100644 index 0000000..c3f2800 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-crt-math-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-crt-multibyte-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-crt-multibyte-l1-1-0.dll new file mode 100644 index 0000000..e86ce81 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-crt-multibyte-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-crt-private-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-crt-private-l1-1-0.dll new file mode 100644 index 0000000..62c45dd Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-crt-private-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-crt-process-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-crt-process-l1-1-0.dll new file mode 100644 index 0000000..bc346dc Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-crt-process-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-crt-runtime-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-crt-runtime-l1-1-0.dll new file mode 100644 index 0000000..d0a43f8 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-crt-runtime-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-crt-stdio-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-crt-stdio-l1-1-0.dll new file mode 100644 index 0000000..59e68c0 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-crt-stdio-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-crt-string-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-crt-string-l1-1-0.dll new file mode 100644 index 0000000..08015e2 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-crt-string-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-crt-time-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-crt-time-l1-1-0.dll new file mode 100644 index 0000000..6e3ba53 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-crt-time-l1-1-0.dll differ diff --git a/ui/3.0.6.2/api-ms-win-crt-utility-l1-1-0.dll b/ui/3.0.6.2/api-ms-win-crt-utility-l1-1-0.dll new file mode 100644 index 0000000..eaa7204 Binary files /dev/null and b/ui/3.0.6.2/api-ms-win-crt-utility-l1-1-0.dll differ diff --git a/ui/3.0.6.2/clretwrc.dll b/ui/3.0.6.2/clretwrc.dll new file mode 100644 index 0000000..4b15b3e Binary files /dev/null and b/ui/3.0.6.2/clretwrc.dll differ diff --git a/ui/3.0.6.2/clrjit.dll b/ui/3.0.6.2/clrjit.dll new file mode 100644 index 0000000..c52c018 Binary files /dev/null and b/ui/3.0.6.2/clrjit.dll differ diff --git a/ui/3.0.6.2/coreclr.dll b/ui/3.0.6.2/coreclr.dll new file mode 100644 index 0000000..4fe6fa5 Binary files /dev/null and b/ui/3.0.6.2/coreclr.dll differ diff --git a/ui/3.0.6.2/createdump.exe b/ui/3.0.6.2/createdump.exe new file mode 100644 index 0000000..0623c89 Binary files /dev/null and b/ui/3.0.6.2/createdump.exe differ diff --git a/ui/3.0.6.2/cs/System.CommandLine.resources.dll b/ui/3.0.6.2/cs/System.CommandLine.resources.dll new file mode 100644 index 0000000..77a35a6 Binary files /dev/null and b/ui/3.0.6.2/cs/System.CommandLine.resources.dll differ diff --git a/ui/3.0.6.2/dbgshim.dll b/ui/3.0.6.2/dbgshim.dll new file mode 100644 index 0000000..d839fa8 Binary files /dev/null and b/ui/3.0.6.2/dbgshim.dll differ diff --git a/ui/3.0.6.2/de/System.CommandLine.resources.dll b/ui/3.0.6.2/de/System.CommandLine.resources.dll new file mode 100644 index 0000000..61ab752 Binary files /dev/null and b/ui/3.0.6.2/de/System.CommandLine.resources.dll differ diff --git a/ui/3.0.6.2/es/System.CommandLine.resources.dll b/ui/3.0.6.2/es/System.CommandLine.resources.dll new file mode 100644 index 0000000..cdd0618 Binary files /dev/null and b/ui/3.0.6.2/es/System.CommandLine.resources.dll differ diff --git a/ui/3.0.6.2/fr/System.CommandLine.resources.dll b/ui/3.0.6.2/fr/System.CommandLine.resources.dll new file mode 100644 index 0000000..5839cd6 Binary files /dev/null and b/ui/3.0.6.2/fr/System.CommandLine.resources.dll differ diff --git a/ui/3.0.6.2/hostfxr.dll b/ui/3.0.6.2/hostfxr.dll new file mode 100644 index 0000000..5bacc44 Binary files /dev/null and b/ui/3.0.6.2/hostfxr.dll differ diff --git a/ui/3.0.6.2/hostpolicy.dll b/ui/3.0.6.2/hostpolicy.dll new file mode 100644 index 0000000..5668b3a Binary files /dev/null and b/ui/3.0.6.2/hostpolicy.dll differ diff --git a/ui/3.0.6.2/it/System.CommandLine.resources.dll b/ui/3.0.6.2/it/System.CommandLine.resources.dll new file mode 100644 index 0000000..bdca685 Binary files /dev/null and b/ui/3.0.6.2/it/System.CommandLine.resources.dll differ diff --git a/ui/3.0.6.2/ja/System.CommandLine.resources.dll b/ui/3.0.6.2/ja/System.CommandLine.resources.dll new file mode 100644 index 0000000..be146d9 Binary files /dev/null and b/ui/3.0.6.2/ja/System.CommandLine.resources.dll differ diff --git a/ui/3.0.6.2/ko/System.CommandLine.resources.dll b/ui/3.0.6.2/ko/System.CommandLine.resources.dll new file mode 100644 index 0000000..910483d Binary files /dev/null and b/ui/3.0.6.2/ko/System.CommandLine.resources.dll differ diff --git a/ui/3.0.6.2/mscordaccore.dll b/ui/3.0.6.2/mscordaccore.dll new file mode 100644 index 0000000..d744525 Binary files /dev/null and b/ui/3.0.6.2/mscordaccore.dll differ diff --git a/ui/3.0.6.2/mscordaccore_amd64_amd64_6.0.1122.52304.dll b/ui/3.0.6.2/mscordaccore_amd64_amd64_6.0.1122.52304.dll new file mode 100644 index 0000000..d744525 Binary files /dev/null and b/ui/3.0.6.2/mscordaccore_amd64_amd64_6.0.1122.52304.dll differ diff --git a/ui/3.0.6.2/mscordbi.dll b/ui/3.0.6.2/mscordbi.dll new file mode 100644 index 0000000..562c0b8 Binary files /dev/null and b/ui/3.0.6.2/mscordbi.dll differ diff --git a/ui/3.0.6.2/mscorrc.dll b/ui/3.0.6.2/mscorrc.dll new file mode 100644 index 0000000..625d9f0 Binary files /dev/null and b/ui/3.0.6.2/mscorrc.dll differ diff --git a/ui/3.0.6.2/msquic.dll b/ui/3.0.6.2/msquic.dll new file mode 100644 index 0000000..e5565ec Binary files /dev/null and b/ui/3.0.6.2/msquic.dll differ diff --git a/ui/3.0.6.2/netstandard.dll b/ui/3.0.6.2/netstandard.dll new file mode 100644 index 0000000..e1d2e25 Binary files /dev/null and b/ui/3.0.6.2/netstandard.dll differ diff --git a/ui/3.0.6.2/pl/System.CommandLine.resources.dll b/ui/3.0.6.2/pl/System.CommandLine.resources.dll new file mode 100644 index 0000000..bfee4aa Binary files /dev/null and b/ui/3.0.6.2/pl/System.CommandLine.resources.dll differ diff --git a/ui/3.0.6.2/protobuf-net.Core.dll b/ui/3.0.6.2/protobuf-net.Core.dll new file mode 100644 index 0000000..436c4f2 Binary files /dev/null and b/ui/3.0.6.2/protobuf-net.Core.dll differ diff --git a/ui/3.0.6.2/protobuf-net.dll b/ui/3.0.6.2/protobuf-net.dll new file mode 100644 index 0000000..c0c2088 Binary files /dev/null and b/ui/3.0.6.2/protobuf-net.dll differ diff --git a/ui/3.0.6.2/pt-BR/System.CommandLine.resources.dll b/ui/3.0.6.2/pt-BR/System.CommandLine.resources.dll new file mode 100644 index 0000000..8fc42f2 Binary files /dev/null and b/ui/3.0.6.2/pt-BR/System.CommandLine.resources.dll differ diff --git a/ui/3.0.6.2/ru/System.CommandLine.resources.dll b/ui/3.0.6.2/ru/System.CommandLine.resources.dll new file mode 100644 index 0000000..e98f737 Binary files /dev/null and b/ui/3.0.6.2/ru/System.CommandLine.resources.dll differ diff --git a/ui/3.0.6.2/tr/System.CommandLine.resources.dll b/ui/3.0.6.2/tr/System.CommandLine.resources.dll new file mode 100644 index 0000000..6e29e3e Binary files /dev/null and b/ui/3.0.6.2/tr/System.CommandLine.resources.dll differ diff --git a/ui/3.0.6.2/ucrtbase.dll b/ui/3.0.6.2/ucrtbase.dll new file mode 100644 index 0000000..0b41078 Binary files /dev/null and b/ui/3.0.6.2/ucrtbase.dll differ diff --git a/ui/3.0.6.2/wabbajack-cli.deps.json b/ui/3.0.6.2/wabbajack-cli.deps.json new file mode 100644 index 0000000..43afb5a --- /dev/null +++ b/ui/3.0.6.2/wabbajack-cli.deps.json @@ -0,0 +1,4069 @@ +{ + "runtimeTarget": { + "name": ".NETCoreApp,Version=v6.0/win10-x64", + "signature": "" + }, + "compilationOptions": {}, + "targets": { + ".NETCoreApp,Version=v6.0": {}, + ".NETCoreApp,Version=v6.0/win10-x64": { + "wabbajack-cli/3.0.6.2": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Hosting": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Hosting.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Logging.Abstractions": "6.0.3", + "NLog": "5.0.5", + "NLog.Extensions.Logging": "5.1.0", + "SixLabors.ImageSharp": "2.1.3", + "System.CommandLine": "2.0.0-beta4.22272.1", + "System.CommandLine.NamingConventionBinder": "2.0.0-beta4.22272.1", + "Wabbajack.CLI.Builder": "3.0.6.2", + "Wabbajack.Downloaders.Bethesda": "3.0.6.2", + "Wabbajack.Downloaders.Dispatcher": "3.0.6.2", + "Wabbajack.Hashing.xxHash64": "3.0.6.2", + "Wabbajack.Networking.Discord": "3.0.6.2", + "Wabbajack.Networking.GitHub": "3.0.6.2", + "Wabbajack.Paths.IO": "3.0.6.2", + "Wabbajack.Server.Lib": "3.0.6.2", + "Wabbajack.Services.OSIntegrated": "3.0.6.2", + "Wabbajack.VFS": "3.0.6.2", + "runtimepack.Microsoft.NETCore.App.Runtime.win-x64": "6.0.11" + }, + "runtime": { + "wabbajack-cli.dll": {} + } + }, + "runtimepack.Microsoft.NETCore.App.Runtime.win-x64/6.0.11": { + "runtime": { + "Microsoft.CSharp.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "Microsoft.Win32.Primitives.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "Microsoft.Win32.Registry.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Buffers.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Collections.Concurrent.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Collections.Immutable.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Collections.NonGeneric.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Collections.Specialized.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Collections.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.ComponentModel.EventBasedAsync.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.ComponentModel.Primitives.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.ComponentModel.TypeConverter.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.ComponentModel.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Console.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Data.Common.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Diagnostics.Debug.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Diagnostics.DiagnosticSource.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Diagnostics.FileVersionInfo.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Diagnostics.Process.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Diagnostics.StackTrace.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Diagnostics.Tools.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Diagnostics.TraceSource.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Drawing.Primitives.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Drawing.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Dynamic.Runtime.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Globalization.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.IO.Compression.Brotli.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.IO.Compression.ZipFile.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.IO.Compression.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.IO.FileSystem.AccessControl.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.IO.FileSystem.DriveInfo.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.IO.FileSystem.Watcher.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.IO.FileSystem.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.IO.IsolatedStorage.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.IO.MemoryMappedFiles.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.IO.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Linq.Expressions.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Linq.Parallel.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Linq.Queryable.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Linq.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Memory.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Net.Http.Json.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Net.Http.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Net.Mail.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Net.NameResolution.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Net.NetworkInformation.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Net.Primitives.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Net.Quic.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Net.Requests.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Net.Security.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Net.ServicePoint.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Net.Sockets.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Net.WebHeaderCollection.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Net.WebProxy.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Net.WebSockets.Client.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Net.WebSockets.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Numerics.Vectors.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.ObjectModel.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Private.CoreLib.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Private.Uri.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Private.Xml.Linq.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Private.Xml.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Reflection.Emit.ILGeneration.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Reflection.Emit.Lightweight.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Reflection.Emit.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Reflection.Extensions.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Reflection.Metadata.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Reflection.Primitives.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Reflection.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Resources.ResourceManager.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Runtime.CompilerServices.Unsafe.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Runtime.Extensions.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Runtime.InteropServices.RuntimeInformation.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Runtime.InteropServices.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Runtime.Intrinsics.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Runtime.Numerics.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Runtime.Serialization.Formatters.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Runtime.Serialization.Primitives.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Runtime.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Security.AccessControl.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Security.Claims.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Security.Cryptography.Algorithms.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Security.Cryptography.Cng.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Security.Cryptography.Csp.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Security.Cryptography.Encoding.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Security.Cryptography.Primitives.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Security.Cryptography.X509Certificates.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Security.Principal.Windows.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Text.Encoding.CodePages.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Text.Encoding.Extensions.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Text.Encoding.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Text.Encodings.Web.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Text.Json.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Text.RegularExpressions.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Threading.Channels.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Threading.Tasks.Parallel.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Threading.Tasks.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Threading.Thread.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Threading.ThreadPool.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Threading.Timer.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Threading.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Transactions.Local.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Web.HttpUtility.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Xml.Linq.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Xml.ReaderWriter.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Xml.XDocument.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.Xml.XmlDocument.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "System.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "6.0.1122.52304" + }, + "netstandard.dll": { + "assemblyVersion": "2.1.0.0", + "fileVersion": "6.0.1122.52304" + } + }, + "native": { + "Microsoft.DiaSymReader.Native.amd64.dll": { + "fileVersion": "14.28.29715.1" + }, + "System.IO.Compression.Native.dll": { + "fileVersion": "42.42.42.42424" + }, + "api-ms-win-core-console-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-core-console-l1-2-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-core-datetime-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-core-debug-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-core-errorhandling-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-core-fibers-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-core-file-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-core-file-l1-2-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-core-file-l2-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-core-handle-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-core-heap-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-core-interlocked-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-core-libraryloader-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-core-localization-l1-2-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-core-memory-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-core-namedpipe-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-core-processenvironment-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-core-processthreads-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-core-processthreads-l1-1-1.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-core-profile-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-core-rtlsupport-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-core-string-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-core-synch-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-core-synch-l1-2-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-core-sysinfo-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-core-timezone-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-core-util-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-crt-conio-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-crt-convert-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-crt-environment-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-crt-filesystem-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-crt-heap-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-crt-locale-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-crt-math-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-crt-multibyte-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-crt-private-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-crt-process-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-crt-runtime-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-crt-stdio-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-crt-string-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-crt-time-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "api-ms-win-crt-utility-l1-1-0.dll": { + "fileVersion": "10.0.22000.194" + }, + "clretwrc.dll": { + "fileVersion": "6.0.1122.52304" + }, + "clrjit.dll": { + "fileVersion": "6.0.1122.52304" + }, + "coreclr.dll": { + "fileVersion": "6.0.1122.52304" + }, + "createdump.exe": { + "fileVersion": "6.0.1122.52304" + }, + "dbgshim.dll": { + "fileVersion": "6.0.1122.52304" + }, + "hostfxr.dll": { + "fileVersion": "6.0.1122.52304" + }, + "hostpolicy.dll": { + "fileVersion": "6.0.1122.52304" + }, + "mscordaccore.dll": { + "fileVersion": "6.0.1122.52304" + }, + "mscordaccore_amd64_amd64_6.0.1122.52304.dll": { + "fileVersion": "6.0.1122.52304" + }, + "mscordbi.dll": { + "fileVersion": "6.0.1122.52304" + }, + "mscorrc.dll": { + "fileVersion": "6.0.1122.52304" + }, + "msquic.dll": { + "fileVersion": "1.7.0.0" + }, + "ucrtbase.dll": { + "fileVersion": "10.0.22000.194" + } + } + }, + "BCnEncoder.Net/2.1.0": { + "dependencies": { + "Microsoft.Toolkit.HighPerformance": "7.1.2" + }, + "runtime": { + "lib/netstandard2.1/BCnEncoder.dll": { + "assemblyVersion": "2.1.0.0", + "fileVersion": "2.1.0.0" + } + } + }, + "BCnEncoder.Net.ImageSharp/1.1.1": { + "dependencies": { + "BCnEncoder.Net": "2.1.0", + "Microsoft.Toolkit.HighPerformance": "7.1.2", + "SixLabors.ImageSharp": "2.1.3" + }, + "runtime": { + "lib/netstandard2.1/BCnEncoder.NET.ImageSharp.dll": { + "assemblyVersion": "1.1.1.0", + "fileVersion": "1.1.1.0" + } + } + }, + "Crc32.NET/1.2.0": { + "dependencies": { + "NETStandard.Library": "2.0.0" + }, + "runtime": { + "lib/netstandard2.0/Crc32.NET.dll": { + "assemblyVersion": "1.0.0.0", + "fileVersion": "1.2.0.5" + } + } + }, + "DeviceId/6.2.0": { + "runtime": { + "lib/net6.0/DeviceId.dll": { + "assemblyVersion": "6.2.0.0", + "fileVersion": "6.2.0.0" + } + } + }, + "F23.StringSimilarity/5.0.0": { + "runtime": { + "lib/netstandard2.0/F23.StringSimilarity.dll": { + "assemblyVersion": "1.0.0.0", + "fileVersion": "1.0.0.0" + } + } + }, + "FluentFTP/42.0.1": { + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "6.0.3" + }, + "runtime": { + "lib/net6.0/FluentFTP.dll": { + "assemblyVersion": "42.0.1.0", + "fileVersion": "42.0.1.0" + } + } + }, + "GameFinder.Common/2.2.2": { + "runtime": { + "lib/net6.0/GameFinder.Common.dll": { + "assemblyVersion": "2.2.2.0", + "fileVersion": "2.2.2.0" + } + } + }, + "GameFinder.RegistryUtils/2.2.2": { + "dependencies": { + "Microsoft.Win32.Registry": "5.0.0" + }, + "runtime": { + "lib/net6.0/GameFinder.RegistryUtils.dll": { + "assemblyVersion": "2.2.2.0", + "fileVersion": "2.2.2.0" + } + } + }, + "GameFinder.StoreHandlers.EGS/2.2.2": { + "dependencies": { + "GameFinder.Common": "2.2.2", + "GameFinder.RegistryUtils": "2.2.2", + "System.IO.Abstractions": "17.2.3" + }, + "runtime": { + "lib/net6.0/GameFinder.StoreHandlers.EGS.dll": { + "assemblyVersion": "2.2.2.0", + "fileVersion": "2.2.2.0" + } + } + }, + "GameFinder.StoreHandlers.GOG/2.2.2": { + "dependencies": { + "GameFinder.Common": "2.2.2", + "GameFinder.RegistryUtils": "2.2.2" + }, + "runtime": { + "lib/net6.0/GameFinder.StoreHandlers.GOG.dll": { + "assemblyVersion": "2.2.2.0", + "fileVersion": "2.2.2.0" + } + } + }, + "GameFinder.StoreHandlers.Origin/2.2.2": { + "dependencies": { + "GameFinder.Common": "2.2.2", + "GameFinder.RegistryUtils": "2.2.2", + "System.IO.Abstractions": "17.2.3" + }, + "runtime": { + "lib/net6.0/GameFinder.StoreHandlers.Origin.dll": { + "assemblyVersion": "2.2.2.0", + "fileVersion": "2.2.2.0" + } + } + }, + "GameFinder.StoreHandlers.Steam/2.2.2": { + "dependencies": { + "GameFinder.Common": "2.2.2", + "GameFinder.RegistryUtils": "2.2.2", + "System.IO.Abstractions": "17.2.3", + "ValveKeyValue": "0.8.2.162" + }, + "runtime": { + "lib/net6.0/GameFinder.StoreHandlers.Steam.dll": { + "assemblyVersion": "2.2.2.0", + "fileVersion": "2.2.2.0" + } + } + }, + "HtmlAgilityPack/1.11.46": { + "runtime": { + "lib/netstandard2.0/HtmlAgilityPack.dll": { + "assemblyVersion": "1.11.46.0", + "fileVersion": "1.11.46.0" + } + } + }, + "ini-parser-netstandard/2.5.2": { + "runtime": { + "lib/netstandard2.0/INIFileParser.dll": { + "assemblyVersion": "2.5.2.0", + "fileVersion": "2.5.2.0" + } + } + }, + "K4os.Compression.LZ4/1.3.4-beta": { + "runtime": { + "lib/net6.0/K4os.Compression.LZ4.dll": { + "assemblyVersion": "1.3.4.0", + "fileVersion": "1.3.4.0" + } + } + }, + "K4os.Compression.LZ4.Streams/1.3.4-beta": { + "dependencies": { + "K4os.Compression.LZ4": "1.3.4-beta", + "K4os.Hash.xxHash": "1.0.8", + "System.IO.Pipelines": "6.0.3" + }, + "runtime": { + "lib/net6.0/K4os.Compression.LZ4.Streams.dll": { + "assemblyVersion": "1.3.4.0", + "fileVersion": "1.3.4.0" + } + } + }, + "K4os.Hash.xxHash/1.0.8": { + "runtime": { + "lib/net6.0/K4os.Hash.xxHash.dll": { + "assemblyVersion": "1.0.8.0", + "fileVersion": "1.0.8.0" + } + } + }, + "LibAES-CTR/1.0.0": { + "runtime": { + "lib/net6.0/AES-CTR-Netstandard.dll": { + "assemblyVersion": "1.0.0.0", + "fileVersion": "1.0.0.0" + } + } + }, + "MegaApiClient/1.10.3": { + "dependencies": { + "Newtonsoft.Json": "10.0.2", + "System.Net.Http": "4.3.4" + }, + "runtime": { + "lib/netstandard2.0/MegaApiClient.dll": { + "assemblyVersion": "1.10.3.0", + "fileVersion": "1.10.3.0" + } + } + }, + "Microsoft.CSharp/4.5.0": {}, + "Microsoft.Extensions.Configuration/6.0.2-mauipre.1.22102.15": { + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Primitives": "6.0.2-mauipre.1.22102.15" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.222.10215" + } + } + }, + "Microsoft.Extensions.Configuration.Abstractions/6.0.2-mauipre.1.22102.15": { + "dependencies": { + "Microsoft.Extensions.Primitives": "6.0.2-mauipre.1.22102.15" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.222.10215" + } + } + }, + "Microsoft.Extensions.Configuration.Binder/6.0.2-mauipre.1.22102.15": { + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "6.0.2-mauipre.1.22102.15" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Binder.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.222.10215" + } + } + }, + "Microsoft.Extensions.Configuration.CommandLine/6.0.2-mauipre.1.22102.15": { + "dependencies": { + "Microsoft.Extensions.Configuration": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Configuration.Abstractions": "6.0.2-mauipre.1.22102.15" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.CommandLine.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.222.10215" + } + } + }, + "Microsoft.Extensions.Configuration.EnvironmentVariables/6.0.2-mauipre.1.22102.15": { + "dependencies": { + "Microsoft.Extensions.Configuration": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Configuration.Abstractions": "6.0.2-mauipre.1.22102.15" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.EnvironmentVariables.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.222.10215" + } + } + }, + "Microsoft.Extensions.Configuration.FileExtensions/6.0.2-mauipre.1.22102.15": { + "dependencies": { + "Microsoft.Extensions.Configuration": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Configuration.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.FileProviders.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.FileProviders.Physical": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Primitives": "6.0.2-mauipre.1.22102.15" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.FileExtensions.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.222.10215" + } + } + }, + "Microsoft.Extensions.Configuration.Json/6.0.2-mauipre.1.22102.15": { + "dependencies": { + "Microsoft.Extensions.Configuration": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Configuration.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Configuration.FileExtensions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.FileProviders.Abstractions": "6.0.2-mauipre.1.22102.15", + "System.Text.Json": "6.0.2-mauipre.1.22102.15" + }, + "runtime": { + "lib/netstandard2.1/Microsoft.Extensions.Configuration.Json.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.222.10215" + } + } + }, + "Microsoft.Extensions.Configuration.UserSecrets/6.0.2-mauipre.1.22102.15": { + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Configuration.Json": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.FileProviders.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.FileProviders.Physical": "6.0.2-mauipre.1.22102.15" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.UserSecrets.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.222.10215" + } + } + }, + "Microsoft.Extensions.DependencyInjection/6.0.2-mauipre.1.22102.15": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.2-mauipre.1.22102.15", + "System.Runtime.CompilerServices.Unsafe": "6.0.2-mauipre.1.22102.15" + }, + "runtime": { + "lib/net6.0/Microsoft.Extensions.DependencyInjection.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.222.10215" + } + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/6.0.2-mauipre.1.22102.15": { + "runtime": { + "lib/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.222.10215" + } + } + }, + "Microsoft.Extensions.FileProviders.Abstractions/6.0.2-mauipre.1.22102.15": { + "dependencies": { + "Microsoft.Extensions.Primitives": "6.0.2-mauipre.1.22102.15" + }, + "runtime": { + "lib/net6.0/Microsoft.Extensions.FileProviders.Abstractions.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.222.10215" + } + } + }, + "Microsoft.Extensions.FileProviders.Physical/6.0.2-mauipre.1.22102.15": { + "dependencies": { + "Microsoft.Extensions.FileProviders.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.FileSystemGlobbing": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Primitives": "6.0.2-mauipre.1.22102.15" + }, + "runtime": { + "lib/net6.0/Microsoft.Extensions.FileProviders.Physical.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.222.10215" + } + } + }, + "Microsoft.Extensions.FileSystemGlobbing/6.0.2-mauipre.1.22102.15": { + "runtime": { + "lib/net6.0/Microsoft.Extensions.FileSystemGlobbing.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.222.10215" + } + } + }, + "Microsoft.Extensions.Hosting/6.0.2-mauipre.1.22102.15": { + "dependencies": { + "Microsoft.Extensions.Configuration": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Configuration.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Configuration.Binder": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Configuration.CommandLine": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Configuration.EnvironmentVariables": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Configuration.FileExtensions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Configuration.Json": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Configuration.UserSecrets": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.DependencyInjection": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.FileProviders.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.FileProviders.Physical": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Hosting.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Logging": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Logging.Abstractions": "6.0.3", + "Microsoft.Extensions.Logging.Configuration": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Logging.Console": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Logging.Debug": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Logging.EventLog": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Logging.EventSource": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Options": "6.0.2-mauipre.1.22102.15" + }, + "runtime": { + "lib/net6.0/Microsoft.Extensions.Hosting.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.222.10215" + } + } + }, + "Microsoft.Extensions.Hosting.Abstractions/6.0.2-mauipre.1.22102.15": { + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.FileProviders.Abstractions": "6.0.2-mauipre.1.22102.15" + }, + "runtime": { + "lib/netstandard2.1/Microsoft.Extensions.Hosting.Abstractions.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.222.10215" + } + } + }, + "Microsoft.Extensions.Logging/6.0.2-mauipre.1.22102.15": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Logging.Abstractions": "6.0.3", + "Microsoft.Extensions.Options": "6.0.2-mauipre.1.22102.15", + "System.Diagnostics.DiagnosticSource": "6.0.2-mauipre.1.22102.15" + }, + "runtime": { + "lib/netstandard2.1/Microsoft.Extensions.Logging.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.222.10215" + } + } + }, + "Microsoft.Extensions.Logging.Abstractions/6.0.3": { + "runtime": { + "lib/net6.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.1122.52304" + } + } + }, + "Microsoft.Extensions.Logging.Configuration/6.0.2-mauipre.1.22102.15": { + "dependencies": { + "Microsoft.Extensions.Configuration": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Configuration.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Configuration.Binder": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Logging": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Logging.Abstractions": "6.0.3", + "Microsoft.Extensions.Options": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Options.ConfigurationExtensions": "6.0.2-mauipre.1.22102.15" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Logging.Configuration.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.222.10215" + } + } + }, + "Microsoft.Extensions.Logging.Console/6.0.2-mauipre.1.22102.15": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Logging": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Logging.Abstractions": "6.0.3", + "Microsoft.Extensions.Logging.Configuration": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Options": "6.0.2-mauipre.1.22102.15", + "System.Text.Json": "6.0.2-mauipre.1.22102.15" + }, + "runtime": { + "lib/net6.0/Microsoft.Extensions.Logging.Console.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.222.10215" + } + } + }, + "Microsoft.Extensions.Logging.Debug/6.0.2-mauipre.1.22102.15": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Logging": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Logging.Abstractions": "6.0.3" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Logging.Debug.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.222.10215" + } + } + }, + "Microsoft.Extensions.Logging.EventLog/6.0.2-mauipre.1.22102.15": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Logging": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Logging.Abstractions": "6.0.3", + "Microsoft.Extensions.Options": "6.0.2-mauipre.1.22102.15", + "System.Diagnostics.EventLog": "6.0.2-mauipre.1.22102.15" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Logging.EventLog.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.222.10215" + } + } + }, + "Microsoft.Extensions.Logging.EventSource/6.0.2-mauipre.1.22102.15": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Logging": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Logging.Abstractions": "6.0.3", + "Microsoft.Extensions.Options": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Primitives": "6.0.2-mauipre.1.22102.15", + "System.Runtime.CompilerServices.Unsafe": "6.0.2-mauipre.1.22102.15", + "System.Text.Json": "6.0.2-mauipre.1.22102.15" + }, + "runtime": { + "lib/net6.0/Microsoft.Extensions.Logging.EventSource.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.222.10215" + } + } + }, + "Microsoft.Extensions.Options/6.0.2-mauipre.1.22102.15": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Primitives": "6.0.2-mauipre.1.22102.15" + }, + "runtime": { + "lib/netstandard2.1/Microsoft.Extensions.Options.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.222.10215" + } + } + }, + "Microsoft.Extensions.Options.ConfigurationExtensions/6.0.2-mauipre.1.22102.15": { + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Configuration.Binder": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Options": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Primitives": "6.0.2-mauipre.1.22102.15" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Options.ConfigurationExtensions.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.222.10215" + } + } + }, + "Microsoft.Extensions.Primitives/6.0.2-mauipre.1.22102.15": { + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "6.0.2-mauipre.1.22102.15" + }, + "runtime": { + "lib/net6.0/Microsoft.Extensions.Primitives.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.222.10215" + } + } + }, + "Microsoft.NETCore.Platforms/5.0.0": {}, + "Microsoft.NETCore.Targets/1.1.0": {}, + "Microsoft.Toolkit.HighPerformance/7.1.2": { + "runtime": { + "lib/net5.0/Microsoft.Toolkit.HighPerformance.dll": { + "assemblyVersion": "7.1.0.0", + "fileVersion": "7.1.2.1" + } + } + }, + "Microsoft.Win32.Primitives/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0", + "runtime.win.Microsoft.Win32.Primitives": "4.3.0" + } + }, + "Microsoft.Win32.Registry/5.0.0": { + "dependencies": { + "System.Security.AccessControl": "5.0.0", + "System.Security.Principal.Windows": "5.0.0" + } + }, + "Microsoft.Win32.SystemEvents/5.0.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0" + }, + "runtime": { + "runtimes/win/lib/netcoreapp3.0/Microsoft.Win32.SystemEvents.dll": { + "assemblyVersion": "5.0.0.0", + "fileVersion": "5.0.20.51904" + } + } + }, + "NETStandard.Library/2.0.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0" + } + }, + "Nettle/1.3.0": { + "dependencies": { + "Microsoft.CSharp": "4.5.0" + }, + "runtime": { + "lib/netstandard2.0/Nettle.dll": { + "assemblyVersion": "1.3.0.0", + "fileVersion": "1.3.0.0" + } + } + }, + "Newtonsoft.Json/10.0.2": { + "dependencies": { + "Microsoft.CSharp": "4.5.0", + "NETStandard.Library": "2.0.0", + "System.ComponentModel.TypeConverter": "4.3.0", + "System.Runtime.Serialization.Formatters": "4.3.0", + "System.Runtime.Serialization.Primitives": "4.3.0", + "System.Xml.XmlDocument": "4.3.0" + }, + "runtime": { + "lib/netstandard1.3/Newtonsoft.Json.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.2.20802" + } + } + }, + "NLog/5.0.5": { + "runtime": { + "lib/netstandard2.0/NLog.dll": { + "assemblyVersion": "5.0.0.0", + "fileVersion": "5.0.5.1426" + } + } + }, + "NLog.Extensions.Logging/5.1.0": { + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Logging": "6.0.2-mauipre.1.22102.15", + "NLog": "5.0.5" + }, + "runtime": { + "lib/net6.0/NLog.Extensions.Logging.dll": { + "assemblyVersion": "5.0.0.0", + "fileVersion": "5.1.0.239" + } + } + }, + "Octokit/4.0.1": { + "runtime": { + "lib/netstandard2.0/Octokit.dll": { + "assemblyVersion": "4.0.1.0", + "fileVersion": "4.0.1.0" + } + } + }, + "Octopus.Octodiff/2.0.100": { + "runtime": { + "lib/netstandard2.0/Octodiff.dll": { + "assemblyVersion": "2.0.100.0", + "fileVersion": "2.0.100.0" + } + } + }, + "OMODFramework/3.0.1": { + "dependencies": { + "Crc32.NET": "1.2.0", + "K4os.Compression.LZ4": "1.3.4-beta", + "K4os.Compression.LZ4.Streams": "1.3.4-beta", + "SharpCompress": "0.28.1", + "System.Drawing.Common": "5.0.2", + "System.Text.Encoding.CodePages": "5.0.0" + }, + "runtime": { + "lib/net5.0/OMODFramework.dll": { + "assemblyVersion": "3.0.1.0", + "fileVersion": "3.0.1.0" + } + } + }, + "protobuf-net/3.0.101": { + "dependencies": { + "protobuf-net.Core": "3.0.101" + }, + "runtime": { + "lib/net5.0/protobuf-net.dll": { + "assemblyVersion": "3.0.0.0", + "fileVersion": "3.0.101.59408" + } + } + }, + "protobuf-net.Core/3.0.101": { + "runtime": { + "lib/net5.0/protobuf-net.Core.dll": { + "assemblyVersion": "3.0.0.0", + "fileVersion": "3.0.101.59408" + } + } + }, + "runtime.any.System.Collections/4.3.0": { + "dependencies": { + "System.Runtime": "4.3.0" + } + }, + "runtime.any.System.Diagnostics.Tracing/4.3.0": {}, + "runtime.any.System.Globalization/4.3.0": {}, + "runtime.any.System.Globalization.Calendars/4.3.0": {}, + "runtime.any.System.IO/4.3.0": {}, + "runtime.any.System.Reflection/4.3.0": {}, + "runtime.any.System.Reflection.Extensions/4.3.0": {}, + "runtime.any.System.Reflection.Primitives/4.3.0": {}, + "runtime.any.System.Resources.ResourceManager/4.3.0": {}, + "runtime.any.System.Runtime/4.3.0": { + "dependencies": { + "System.Private.Uri": "4.3.0" + } + }, + "runtime.any.System.Runtime.Handles/4.3.0": {}, + "runtime.any.System.Runtime.InteropServices/4.3.0": {}, + "runtime.any.System.Text.Encoding/4.3.0": {}, + "runtime.any.System.Text.Encoding.Extensions/4.3.0": {}, + "runtime.any.System.Threading.Tasks/4.3.0": {}, + "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": {}, + "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": {}, + "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": {}, + "runtime.native.System/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "Microsoft.NETCore.Targets": "1.1.0" + } + }, + "runtime.native.System.Net.Http/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "Microsoft.NETCore.Targets": "1.1.0" + } + }, + "runtime.native.System.Security.Cryptography.Apple/4.3.0": { + "dependencies": { + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple": "4.3.0" + } + }, + "runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "dependencies": { + "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2", + "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2", + "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2", + "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2", + "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2", + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2", + "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2", + "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2", + "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2", + "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2" + } + }, + "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": {}, + "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": {}, + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple/4.3.0": {}, + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": {}, + "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": {}, + "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": {}, + "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": {}, + "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": {}, + "runtime.win.Microsoft.Win32.Primitives/4.3.0": { + "dependencies": { + "System.Runtime": "4.3.0", + "System.Runtime.InteropServices": "4.3.0" + } + }, + "runtime.win.System.Diagnostics.Debug/4.3.0": {}, + "runtime.win.System.IO.FileSystem/4.3.0": { + "dependencies": { + "System.Buffers": "4.3.0", + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.IO": "4.3.0", + "System.IO.FileSystem.Primitives": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Text.Encoding.Extensions": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Overlapped": "4.3.0", + "System.Threading.Tasks": "4.3.0" + } + }, + "runtime.win.System.Net.Primitives/4.3.0": { + "dependencies": { + "Microsoft.Win32.Primitives": "4.3.0", + "System.Collections": "4.3.0", + "System.Diagnostics.Tracing": "4.3.0", + "System.Globalization": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Threading": "4.3.0" + } + }, + "runtime.win.System.Runtime.Extensions/4.3.0": { + "dependencies": { + "System.Private.Uri": "4.3.0" + } + }, + "runtime.win7.System.Private.Uri/4.3.0": {}, + "SharpCompress/0.28.1": { + "runtime": { + "lib/net5.0/SharpCompress.dll": { + "assemblyVersion": "0.28.1.0", + "fileVersion": "0.28.1.0" + } + } + }, + "SharpZipLib/1.4.1": { + "runtime": { + "lib/net6.0/ICSharpCode.SharpZipLib.dll": { + "assemblyVersion": "1.4.1.12", + "fileVersion": "1.4.1.12" + } + } + }, + "Shipwreck.Phash/0.5.0": { + "runtime": { + "lib/netcoreapp3.0/Shipwreck.Phash.dll": { + "assemblyVersion": "0.5.0.0", + "fileVersion": "0.5.0.0" + } + } + }, + "SixLabors.ImageSharp/2.1.3": { + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "6.0.2-mauipre.1.22102.15", + "System.Text.Encoding.CodePages": "5.0.0" + }, + "runtime": { + "lib/netcoreapp3.1/SixLabors.ImageSharp.dll": { + "assemblyVersion": "2.0.0.0", + "fileVersion": "2.1.3.0" + } + } + }, + "SteamKit2/2.4.1": { + "dependencies": { + "Microsoft.Win32.Registry": "5.0.0", + "protobuf-net": "3.0.101" + }, + "runtime": { + "lib/net6.0/SteamKit2.dll": { + "assemblyVersion": "2.4.1.0", + "fileVersion": "2.4.1.10" + } + } + }, + "Stub.System.Data.SQLite.Core.NetStandard/1.0.116": { + "runtime": { + "lib/netstandard2.1/System.Data.SQLite.dll": { + "assemblyVersion": "1.0.116.0", + "fileVersion": "1.0.116.0" + } + }, + "native": { + "runtimes/win-x64/native/SQLite.Interop.dll": { + "fileVersion": "1.0.116.0" + } + } + }, + "System.Buffers/4.3.0": { + "dependencies": { + "System.Diagnostics.Debug": "4.3.0", + "System.Diagnostics.Tracing": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Threading": "4.3.0" + } + }, + "System.Collections/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0", + "runtime.any.System.Collections": "4.3.0" + } + }, + "System.Collections.Concurrent/4.3.0": { + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Diagnostics.Tracing": "4.3.0", + "System.Globalization": "4.3.0", + "System.Reflection": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0" + } + }, + "System.Collections.NonGeneric/4.3.0": { + "dependencies": { + "System.Diagnostics.Debug": "4.3.0", + "System.Globalization": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Threading": "4.3.0" + } + }, + "System.Collections.Specialized/4.3.0": { + "dependencies": { + "System.Collections.NonGeneric": "4.3.0", + "System.Globalization": "4.3.0", + "System.Globalization.Extensions": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Threading": "4.3.0" + } + }, + "System.CommandLine/2.0.0-beta4.22272.1": { + "runtime": { + "lib/net6.0/System.CommandLine.dll": { + "assemblyVersion": "2.0.0.0", + "fileVersion": "2.0.22.27201" + } + }, + "resources": { + "lib/net6.0/cs/System.CommandLine.resources.dll": { + "locale": "cs" + }, + "lib/net6.0/de/System.CommandLine.resources.dll": { + "locale": "de" + }, + "lib/net6.0/es/System.CommandLine.resources.dll": { + "locale": "es" + }, + "lib/net6.0/fr/System.CommandLine.resources.dll": { + "locale": "fr" + }, + "lib/net6.0/it/System.CommandLine.resources.dll": { + "locale": "it" + }, + "lib/net6.0/ja/System.CommandLine.resources.dll": { + "locale": "ja" + }, + "lib/net6.0/ko/System.CommandLine.resources.dll": { + "locale": "ko" + }, + "lib/net6.0/pl/System.CommandLine.resources.dll": { + "locale": "pl" + }, + "lib/net6.0/pt-BR/System.CommandLine.resources.dll": { + "locale": "pt-BR" + }, + "lib/net6.0/ru/System.CommandLine.resources.dll": { + "locale": "ru" + }, + "lib/net6.0/tr/System.CommandLine.resources.dll": { + "locale": "tr" + }, + "lib/net6.0/zh-Hans/System.CommandLine.resources.dll": { + "locale": "zh-Hans" + }, + "lib/net6.0/zh-Hant/System.CommandLine.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "System.CommandLine.NamingConventionBinder/2.0.0-beta4.22272.1": { + "dependencies": { + "System.CommandLine": "2.0.0-beta4.22272.1" + }, + "runtime": { + "lib/netstandard2.0/System.CommandLine.NamingConventionBinder.dll": { + "assemblyVersion": "2.0.0.0", + "fileVersion": "2.0.22.27201" + } + } + }, + "System.ComponentModel/4.3.0": { + "dependencies": { + "System.Runtime": "4.3.0" + } + }, + "System.ComponentModel.Primitives/4.3.0": { + "dependencies": { + "System.ComponentModel": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0" + } + }, + "System.ComponentModel.TypeConverter/4.3.0": { + "dependencies": { + "System.Collections": "4.3.0", + "System.Collections.NonGeneric": "4.3.0", + "System.Collections.Specialized": "4.3.0", + "System.ComponentModel": "4.3.0", + "System.ComponentModel.Primitives": "4.3.0", + "System.Globalization": "4.3.0", + "System.Linq": "4.3.0", + "System.Reflection": "4.3.0", + "System.Reflection.Extensions": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Reflection.TypeExtensions": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Threading": "4.3.0" + } + }, + "System.Data.SQLite.Core/1.0.116": { + "dependencies": { + "Stub.System.Data.SQLite.Core.NetStandard": "1.0.116" + } + }, + "System.Diagnostics.Debug/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0", + "runtime.win.System.Diagnostics.Debug": "4.3.0" + } + }, + "System.Diagnostics.DiagnosticSource/6.0.2-mauipre.1.22102.15": { + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "6.0.2-mauipre.1.22102.15" + } + }, + "System.Diagnostics.EventLog/6.0.2-mauipre.1.22102.15": { + "runtime": { + "runtimes/win/lib/net6.0/System.Diagnostics.EventLog.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.222.10215" + } + } + }, + "System.Diagnostics.Tracing/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0", + "runtime.any.System.Diagnostics.Tracing": "4.3.0" + } + }, + "System.Drawing.Common/5.0.2": { + "dependencies": { + "Microsoft.Win32.SystemEvents": "5.0.0" + }, + "runtime": { + "runtimes/win/lib/netcoreapp3.0/System.Drawing.Common.dll": { + "assemblyVersion": "5.0.0.2", + "fileVersion": "5.0.421.11614" + } + } + }, + "System.Globalization/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0", + "runtime.any.System.Globalization": "4.3.0" + } + }, + "System.Globalization.Calendars/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Globalization": "4.3.0", + "System.Runtime": "4.3.0", + "runtime.any.System.Globalization.Calendars": "4.3.0" + } + }, + "System.Globalization.Extensions/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "System.Globalization": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.InteropServices": "4.3.0" + } + }, + "System.IO/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading.Tasks": "4.3.0", + "runtime.any.System.IO": "4.3.0" + } + }, + "System.IO.Abstractions/17.2.3": { + "runtime": { + "lib/net6.0/System.IO.Abstractions.dll": { + "assemblyVersion": "17.0.0.0", + "fileVersion": "17.2.3.42299" + } + } + }, + "System.IO.FileSystem/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.IO": "4.3.0", + "System.IO.FileSystem.Primitives": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading.Tasks": "4.3.0", + "runtime.win.System.IO.FileSystem": "4.3.0" + } + }, + "System.IO.FileSystem.Primitives/4.3.0": { + "dependencies": { + "System.Runtime": "4.3.0" + } + }, + "System.IO.Pipelines/6.0.3": { + "runtime": { + "lib/net6.0/System.IO.Pipelines.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.522.21309" + } + } + }, + "System.Linq/4.3.0": { + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0" + } + }, + "System.Net.Http/4.3.4": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Diagnostics.DiagnosticSource": "6.0.2-mauipre.1.22102.15", + "System.Diagnostics.Tracing": "4.3.0", + "System.Globalization": "4.3.0", + "System.Globalization.Extensions": "4.3.0", + "System.IO": "4.3.0", + "System.IO.FileSystem": "4.3.0", + "System.Net.Primitives": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.OpenSsl": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Security.Cryptography.X509Certificates": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0", + "runtime.native.System": "4.3.0", + "runtime.native.System.Net.Http": "4.3.0", + "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2" + } + }, + "System.Net.Primitives/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "runtime.win.System.Net.Primitives": "4.3.0" + } + }, + "System.Private.Uri/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "Microsoft.NETCore.Targets": "1.1.0", + "runtime.win7.System.Private.Uri": "4.3.0" + } + }, + "System.Reactive/5.0.0": { + "runtime": { + "lib/net5.0/System.Reactive.dll": { + "assemblyVersion": "5.0.0.0", + "fileVersion": "5.0.0.1" + } + } + }, + "System.Reflection/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.IO": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Runtime": "4.3.0", + "runtime.any.System.Reflection": "4.3.0" + } + }, + "System.Reflection.Extensions/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Reflection": "4.3.0", + "System.Runtime": "4.3.0", + "runtime.any.System.Reflection.Extensions": "4.3.0" + } + }, + "System.Reflection.Primitives/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0", + "runtime.any.System.Reflection.Primitives": "4.3.0" + } + }, + "System.Reflection.TypeExtensions/4.3.0": { + "dependencies": { + "System.Reflection": "4.3.0", + "System.Runtime": "4.3.0" + } + }, + "System.Resources.ResourceManager/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Globalization": "4.3.0", + "System.Reflection": "4.3.0", + "System.Runtime": "4.3.0", + "runtime.any.System.Resources.ResourceManager": "4.3.0" + } + }, + "System.Runtime/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "Microsoft.NETCore.Targets": "1.1.0", + "runtime.any.System.Runtime": "4.3.0" + } + }, + "System.Runtime.CompilerServices.Unsafe/6.0.2-mauipre.1.22102.15": {}, + "System.Runtime.Extensions/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0", + "runtime.win.System.Runtime.Extensions": "4.3.0" + } + }, + "System.Runtime.Handles/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0", + "runtime.any.System.Runtime.Handles": "4.3.0" + } + }, + "System.Runtime.InteropServices/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Reflection": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "runtime.any.System.Runtime.InteropServices": "4.3.0" + } + }, + "System.Runtime.Numerics/4.3.0": { + "dependencies": { + "System.Globalization": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0" + } + }, + "System.Runtime.Serialization.Formatters/4.3.0": { + "dependencies": { + "System.Collections": "4.3.0", + "System.Reflection": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Serialization.Primitives": "4.3.0" + } + }, + "System.Runtime.Serialization.Primitives/4.3.0": { + "dependencies": { + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0" + } + }, + "System.Security.AccessControl/5.0.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "System.Security.Principal.Windows": "5.0.0" + } + }, + "System.Security.Cryptography.Algorithms/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "System.Collections": "4.3.0", + "System.IO": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Runtime.Numerics": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0", + "runtime.native.System.Security.Cryptography.Apple": "4.3.0", + "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2" + } + }, + "System.Security.Cryptography.Cng/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "System.IO": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0" + } + }, + "System.Security.Cryptography.Csp/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "System.IO": "4.3.0", + "System.Reflection": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading": "4.3.0" + } + }, + "System.Security.Cryptography.Encoding/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "System.Collections": "4.3.0", + "System.Collections.Concurrent": "4.3.0", + "System.Linq": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0", + "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2" + } + }, + "System.Security.Cryptography.OpenSsl/4.3.0": { + "dependencies": { + "System.Collections": "4.3.0", + "System.IO": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Runtime.Numerics": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0", + "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2" + } + }, + "System.Security.Cryptography.Primitives/4.3.0": { + "dependencies": { + "System.Diagnostics.Debug": "4.3.0", + "System.Globalization": "4.3.0", + "System.IO": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0" + } + }, + "System.Security.Cryptography.X509Certificates/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Globalization": "4.3.0", + "System.Globalization.Calendars": "4.3.0", + "System.IO": "4.3.0", + "System.IO.FileSystem": "4.3.0", + "System.IO.FileSystem.Primitives": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Runtime.Numerics": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Cng": "4.3.0", + "System.Security.Cryptography.Csp": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.OpenSsl": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading": "4.3.0", + "runtime.native.System": "4.3.0", + "runtime.native.System.Net.Http": "4.3.0", + "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2" + } + }, + "System.Security.Principal.Windows/5.0.0": {}, + "System.Text.Encoding/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0", + "runtime.any.System.Text.Encoding": "4.3.0" + } + }, + "System.Text.Encoding.CodePages/5.0.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0" + } + }, + "System.Text.Encoding.Extensions/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0", + "System.Text.Encoding": "4.3.0", + "runtime.any.System.Text.Encoding.Extensions": "4.3.0" + } + }, + "System.Text.Encodings.Web/6.0.2-mauipre.1.22102.15": { + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "6.0.2-mauipre.1.22102.15" + } + }, + "System.Text.Json/6.0.2-mauipre.1.22102.15": { + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "6.0.2-mauipre.1.22102.15", + "System.Text.Encodings.Web": "6.0.2-mauipre.1.22102.15" + } + }, + "System.Text.RegularExpressions/4.3.0": { + "dependencies": { + "System.Runtime": "4.3.0" + } + }, + "System.Threading/4.3.0": { + "dependencies": { + "System.Runtime": "4.3.0", + "System.Threading.Tasks": "4.3.0" + } + }, + "System.Threading.Overlapped/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Handles": "4.3.0" + } + }, + "System.Threading.Tasks/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "5.0.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0", + "runtime.any.System.Threading.Tasks": "4.3.0" + } + }, + "System.Threading.Tasks.Extensions/4.3.0": { + "dependencies": { + "System.Collections": "4.3.0", + "System.Runtime": "4.3.0", + "System.Threading.Tasks": "4.3.0" + } + }, + "System.Xml.ReaderWriter/4.3.0": { + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Globalization": "4.3.0", + "System.IO": "4.3.0", + "System.IO.FileSystem": "4.3.0", + "System.IO.FileSystem.Primitives": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Text.Encoding.Extensions": "4.3.0", + "System.Text.RegularExpressions": "4.3.0", + "System.Threading.Tasks": "4.3.0", + "System.Threading.Tasks.Extensions": "4.3.0" + } + }, + "System.Xml.XmlDocument/4.3.0": { + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Globalization": "4.3.0", + "System.IO": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading": "4.3.0", + "System.Xml.ReaderWriter": "4.3.0" + } + }, + "ValveKeyValue/0.8.2.162": { + "runtime": { + "lib/netstandard2.1/ValveKeyValue.dll": { + "assemblyVersion": "0.8.2.0", + "fileVersion": "0.8.2.162" + } + } + }, + "YamlDotNet/12.0.2": { + "runtime": { + "lib/net6.0/YamlDotNet.dll": { + "assemblyVersion": "12.0.0.0", + "fileVersion": "12.0.2.0" + } + } + }, + "Wabbajack.CLI.Builder/3.0.6.2": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Hosting": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Hosting.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Logging.Abstractions": "6.0.3", + "System.CommandLine": "2.0.0-beta4.22272.1", + "System.CommandLine.NamingConventionBinder": "2.0.0-beta4.22272.1", + "Wabbajack.Paths": "3.0.6.2" + }, + "runtime": { + "Wabbajack.CLI.Builder.dll": {} + } + }, + "Wabbajack.Common/3.0.6.2": { + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "6.0.3", + "System.Reactive": "5.0.0", + "Wabbajack.DTOs": "3.0.6.2", + "Wabbajack.Networking.Http": "3.0.6.2", + "Wabbajack.Paths.IO": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Common.dll": {} + } + }, + "Wabbajack.Compiler/3.0.6.2": { + "dependencies": { + "F23.StringSimilarity": "5.0.0", + "Wabbajack.Downloaders.Dispatcher": "3.0.6.2", + "Wabbajack.Installer": "3.0.6.2", + "Wabbajack.VFS": "3.0.6.2", + "ini-parser-netstandard": "2.5.2" + }, + "runtime": { + "Wabbajack.Compiler.dll": {} + } + }, + "Wabbajack.Compression.BSA/3.0.6.2": { + "dependencies": { + "K4os.Compression.LZ4.Streams": "1.3.4-beta", + "SharpZipLib": "1.4.1", + "Wabbajack.Common": "3.0.6.2", + "Wabbajack.DTOs": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Compression.BSA.dll": {} + } + }, + "Wabbajack.Compression.Zip/3.0.6.2": { + "dependencies": { + "Wabbajack.IO.Async": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Compression.Zip.dll": {} + } + }, + "Wabbajack.Downloaders.Bethesda/3.0.6.2": { + "dependencies": { + "LibAES-CTR": "1.0.0", + "SharpZipLib": "1.4.1", + "Wabbajack.Common": "3.0.6.2", + "Wabbajack.Downloaders.Interfaces": "3.0.6.2", + "Wabbajack.Networking.BethesdaNet": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Downloaders.Bethesda.dll": {} + } + }, + "Wabbajack.Downloaders.Dispatcher/3.0.6.2": { + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "6.0.3", + "Wabbajack.Downloaders.Bethesda": "3.0.6.2", + "Wabbajack.Downloaders.GameFile": "3.0.6.2", + "Wabbajack.Downloaders.GoogleDrive": "3.0.6.2", + "Wabbajack.Downloaders.Http": "3.0.6.2", + "Wabbajack.Downloaders.IPS4OAuth2Downloader": "3.0.6.2", + "Wabbajack.Downloaders.Interfaces": "3.0.6.2", + "Wabbajack.Downloaders.Manual": "3.0.6.2", + "Wabbajack.Downloaders.MediaFire": "3.0.6.2", + "Wabbajack.Downloaders.Mega": "3.0.6.2", + "Wabbajack.Downloaders.ModDB": "3.0.6.2", + "Wabbajack.Downloaders.Nexus": "3.0.6.2", + "Wabbajack.Downloaders.VerificationCache": "3.0.6.2", + "Wabbajack.Downloaders.WabbajackCDN": "3.0.6.2", + "Wabbajack.Networking.WabbajackClientApi": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Downloaders.Dispatcher.dll": {} + } + }, + "Wabbajack.Downloaders.GameFile/3.0.6.2": { + "dependencies": { + "GameFinder.StoreHandlers.EGS": "2.2.2", + "GameFinder.StoreHandlers.GOG": "2.2.2", + "GameFinder.StoreHandlers.Origin": "2.2.2", + "GameFinder.StoreHandlers.Steam": "2.2.2", + "Wabbajack.Downloaders.Interfaces": "3.0.6.2", + "Wabbajack.VFS": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Downloaders.GameFile.dll": {} + } + }, + "Wabbajack.Downloaders.GoogleDrive/3.0.6.2": { + "dependencies": { + "HtmlAgilityPack": "1.11.46", + "Microsoft.Extensions.Logging.Abstractions": "6.0.3", + "Wabbajack.Common": "3.0.6.2", + "Wabbajack.DTOs": "3.0.6.2", + "Wabbajack.Downloaders.Interfaces": "3.0.6.2", + "Wabbajack.Networking.Http": "3.0.6.2", + "Wabbajack.Networking.Http.Interfaces": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Downloaders.GoogleDrive.dll": {} + } + }, + "Wabbajack.Downloaders.Http/3.0.6.2": { + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "6.0.3", + "Wabbajack.Common": "3.0.6.2", + "Wabbajack.DTOs": "3.0.6.2", + "Wabbajack.Downloaders.Interfaces": "3.0.6.2", + "Wabbajack.Networking.BethesdaNet": "3.0.6.2", + "Wabbajack.Networking.Http.Interfaces": "3.0.6.2", + "Wabbajack.Paths.IO": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Downloaders.Http.dll": {} + } + }, + "Wabbajack.Downloaders.Interfaces/3.0.6.2": { + "dependencies": { + "Wabbajack.Compression.Zip": "3.0.6.2", + "Wabbajack.DTOs": "3.0.6.2", + "Wabbajack.Paths.IO": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Downloaders.Interfaces.dll": {} + } + }, + "Wabbajack.Downloaders.IPS4OAuth2Downloader/3.0.6.2": { + "dependencies": { + "F23.StringSimilarity": "5.0.0", + "Microsoft.Extensions.Logging.Abstractions": "6.0.3", + "Wabbajack.Common": "3.0.6.2", + "Wabbajack.Downloaders.Interfaces": "3.0.6.2", + "Wabbajack.Networking.Http": "3.0.6.2", + "Wabbajack.Networking.Http.Interfaces": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Downloaders.IPS4OAuth2Downloader.dll": {} + } + }, + "Wabbajack.Downloaders.Manual/3.0.6.2": { + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "6.0.3", + "Wabbajack.Common": "3.0.6.2", + "Wabbajack.Downloaders.Interfaces": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Downloaders.Manual.dll": {} + } + }, + "Wabbajack.Downloaders.MediaFire/3.0.6.2": { + "dependencies": { + "HtmlAgilityPack": "1.11.46", + "Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Logging.Abstractions": "6.0.3", + "Wabbajack.Common": "3.0.6.2", + "Wabbajack.Downloaders.Interfaces": "3.0.6.2", + "Wabbajack.Networking.Http.Interfaces": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Downloaders.MediaFire.dll": {} + } + }, + "Wabbajack.Downloaders.Mega/3.0.6.2": { + "dependencies": { + "MegaApiClient": "1.10.3", + "Microsoft.Extensions.Logging.Abstractions": "6.0.3", + "Wabbajack.Common": "3.0.6.2", + "Wabbajack.Downloaders.Interfaces": "3.0.6.2", + "Wabbajack.Paths.IO": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Downloaders.Mega.dll": {} + } + }, + "Wabbajack.Downloaders.ModDB/3.0.6.2": { + "dependencies": { + "HtmlAgilityPack": "1.11.46", + "MegaApiClient": "1.10.3", + "Microsoft.Extensions.Logging.Abstractions": "6.0.3", + "Wabbajack.Common": "3.0.6.2", + "Wabbajack.Downloaders.Interfaces": "3.0.6.2", + "Wabbajack.Networking.Http": "3.0.6.2", + "Wabbajack.Networking.Http.Interfaces": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Downloaders.ModDB.dll": {} + } + }, + "Wabbajack.Downloaders.Nexus/3.0.6.2": { + "dependencies": { + "Wabbajack.DTOs": "3.0.6.2", + "Wabbajack.Downloaders.Interfaces": "3.0.6.2", + "Wabbajack.Hashing.xxHash64": "3.0.6.2", + "Wabbajack.Networking.Http": "3.0.6.2", + "Wabbajack.Networking.Http.Interfaces": "3.0.6.2", + "Wabbajack.Networking.NexusApi": "3.0.6.2", + "Wabbajack.Paths": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Downloaders.Nexus.dll": {} + } + }, + "Wabbajack.Downloaders.VerificationCache/3.0.6.2": { + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "6.0.3", + "Stub.System.Data.SQLite.Core.NetStandard": "1.0.116", + "Wabbajack.DTOs": "3.0.6.2", + "Wabbajack.Paths.IO": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Downloaders.VerificationCache.dll": {} + } + }, + "Wabbajack.Downloaders.WabbajackCDN/3.0.6.2": { + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "6.0.3", + "Microsoft.Toolkit.HighPerformance": "7.1.2", + "Wabbajack.Common": "3.0.6.2", + "Wabbajack.Downloaders.Interfaces": "3.0.6.2", + "Wabbajack.Networking.Http": "3.0.6.2", + "Wabbajack.RateLimiter": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Downloaders.WabbajackCDN.dll": {} + } + }, + "Wabbajack.DTOs/3.0.6.2": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "6.0.2-mauipre.1.22102.15", + "Wabbajack.Hashing.xxHash64": "3.0.6.2", + "Wabbajack.Paths": "3.0.6.2" + }, + "runtime": { + "Wabbajack.DTOs.dll": {} + } + }, + "Wabbajack.FileExtractor/3.0.6.2": { + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "6.0.3", + "OMODFramework": "3.0.1", + "Wabbajack.Common": "3.0.6.2", + "Wabbajack.Compression.BSA": "3.0.6.2", + "Wabbajack.Paths": "3.0.6.2" + }, + "runtime": { + "Wabbajack.FileExtractor.dll": {} + } + }, + "Wabbajack.Hashing.PHash/3.0.6.2": { + "dependencies": { + "BCnEncoder.Net.ImageSharp": "1.1.1", + "Shipwreck.Phash": "0.5.0", + "Wabbajack.Common": "3.0.6.2", + "Wabbajack.DTOs": "3.0.6.2", + "Wabbajack.Paths": "3.0.6.2", + "Wabbajack.Paths.IO": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Hashing.PHash.dll": {} + } + }, + "Wabbajack.Hashing.xxHash64/3.0.6.2": { + "dependencies": { + "Wabbajack.Paths": "3.0.6.2", + "Wabbajack.RateLimiter": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Hashing.xxHash64.dll": {} + } + }, + "Wabbajack.Installer/3.0.6.2": { + "dependencies": { + "Octopus.Octodiff": "2.0.100", + "Wabbajack.DTOs": "3.0.6.2", + "Wabbajack.Downloaders.Dispatcher": "3.0.6.2", + "Wabbajack.Downloaders.GameFile": "3.0.6.2", + "Wabbajack.FileExtractor": "3.0.6.2", + "Wabbajack.Networking.WabbajackClientApi": "3.0.6.2", + "Wabbajack.Paths": "3.0.6.2", + "Wabbajack.Paths.IO": "3.0.6.2", + "Wabbajack.VFS": "3.0.6.2", + "ini-parser-netstandard": "2.5.2" + }, + "runtime": { + "Wabbajack.Installer.dll": {} + } + }, + "Wabbajack.IO.Async/3.0.6.2": { + "runtime": { + "Wabbajack.IO.Async.dll": {} + } + }, + "Wabbajack.Networking.BethesdaNet/3.0.6.2": { + "dependencies": { + "Wabbajack.DTOs": "3.0.6.2", + "Wabbajack.Networking.Http": "3.0.6.2", + "Wabbajack.Networking.Http.Interfaces": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Networking.BethesdaNet.dll": {} + } + }, + "Wabbajack.Networking.Discord/3.0.6.2": { + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "6.0.3", + "Wabbajack.Networking.Http.Interfaces": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Networking.Discord.dll": {} + } + }, + "Wabbajack.Networking.GitHub/3.0.6.2": { + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "6.0.3", + "Octokit": "4.0.1", + "Wabbajack.DTOs": "3.0.6.2", + "Wabbajack.Networking.Http.Interfaces": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Networking.GitHub.dll": {} + } + }, + "Wabbajack.Networking.Http/3.0.6.2": { + "dependencies": { + "Microsoft.Extensions.Logging": "6.0.2-mauipre.1.22102.15", + "Wabbajack.Downloaders.Interfaces": "3.0.6.2", + "Wabbajack.Hashing.xxHash64": "3.0.6.2", + "Wabbajack.Networking.Http.Interfaces": "3.0.6.2", + "Wabbajack.Paths": "3.0.6.2", + "Wabbajack.Paths.IO": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Networking.Http.dll": {} + } + }, + "Wabbajack.Networking.Http.Interfaces/3.0.6.2": { + "dependencies": { + "Wabbajack.Hashing.xxHash64": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Networking.Http.Interfaces.dll": {} + } + }, + "Wabbajack.Networking.NexusApi/3.0.6.2": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.2-mauipre.1.22102.15", + "Microsoft.Extensions.Logging.Abstractions": "6.0.3", + "Wabbajack.DTOs": "3.0.6.2", + "Wabbajack.Networking.Http": "3.0.6.2", + "Wabbajack.Networking.Http.Interfaces": "3.0.6.2", + "Wabbajack.Networking.WabbajackClientApi": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Networking.NexusApi.dll": {} + } + }, + "Wabbajack.Networking.Steam/3.0.6.2": { + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "6.0.3", + "SteamKit2": "2.4.1", + "Wabbajack.Common": "3.0.6.2", + "Wabbajack.DTOs": "3.0.6.2", + "Wabbajack.Networking.Http.Interfaces": "3.0.6.2", + "Wabbajack.Paths.IO": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Networking.Steam.dll": {} + } + }, + "Wabbajack.Networking.WabbajackClientApi/3.0.6.2": { + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "6.0.3", + "Octokit": "4.0.1", + "Wabbajack.Common": "3.0.6.2", + "Wabbajack.DTOs": "3.0.6.2", + "Wabbajack.Paths.IO": "3.0.6.2", + "Wabbajack.VFS.Interfaces": "3.0.6.2", + "YamlDotNet": "12.0.2" + }, + "runtime": { + "Wabbajack.Networking.WabbajackClientApi.dll": {} + } + }, + "Wabbajack.Paths/3.0.6.2": { + "runtime": { + "Wabbajack.Paths.dll": {} + } + }, + "Wabbajack.Paths.IO/3.0.6.2": { + "dependencies": { + "Wabbajack.Paths": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Paths.IO.dll": {} + } + }, + "Wabbajack.RateLimiter/3.0.6.2": { + "runtime": { + "Wabbajack.RateLimiter.dll": {} + } + }, + "Wabbajack.Server.Lib/3.0.6.2": { + "dependencies": { + "FluentFTP": "42.0.1", + "Nettle": "1.3.0", + "Wabbajack.Common": "3.0.6.2", + "Wabbajack.Networking.Http.Interfaces": "3.0.6.2", + "Wabbajack.Services.OSIntegrated": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Server.Lib.dll": {} + } + }, + "Wabbajack.Services.OSIntegrated/3.0.6.2": { + "dependencies": { + "DeviceId": "6.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.2-mauipre.1.22102.15", + "Wabbajack.Compiler": "3.0.6.2", + "Wabbajack.Downloaders.Dispatcher": "3.0.6.2", + "Wabbajack.Installer": "3.0.6.2", + "Wabbajack.Networking.BethesdaNet": "3.0.6.2", + "Wabbajack.Networking.Discord": "3.0.6.2", + "Wabbajack.Networking.Steam": "3.0.6.2", + "Wabbajack.VFS": "3.0.6.2" + }, + "runtime": { + "Wabbajack.Services.OSIntegrated.dll": {} + } + }, + "Wabbajack.VFS/3.0.6.2": { + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "6.0.3", + "System.Data.SQLite.Core": "1.0.116", + "Wabbajack.Common": "3.0.6.2", + "Wabbajack.FileExtractor": "3.0.6.2", + "Wabbajack.Hashing.PHash": "3.0.6.2", + "Wabbajack.Hashing.xxHash64": "3.0.6.2", + "Wabbajack.Paths": "3.0.6.2", + "Wabbajack.Paths.IO": "3.0.6.2", + "Wabbajack.VFS.Interfaces": "3.0.6.2" + }, + "runtime": { + "Wabbajack.VFS.dll": {} + } + }, + "Wabbajack.VFS.Interfaces/3.0.6.2": { + "dependencies": { + "Wabbajack.DTOs": "3.0.6.2", + "Wabbajack.Hashing.xxHash64": "3.0.6.2", + "Wabbajack.Paths": "3.0.6.2" + }, + "runtime": { + "Wabbajack.VFS.Interfaces.dll": {} + } + } + } + }, + "libraries": { + "wabbajack-cli/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "runtimepack.Microsoft.NETCore.App.Runtime.win-x64/6.0.11": { + "type": "runtimepack", + "serviceable": false, + "sha512": "" + }, + "BCnEncoder.Net/2.1.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-bBKYUDhpYenmp8vy5BVUHmS2LFym0NMga9V+S1eMJ+4zQLBwDw63Bs83AKOyqBKC2AqqgxXdTFA2a2V+SmGoIw==", + "path": "bcnencoder.net/2.1.0", + "hashPath": "bcnencoder.net.2.1.0.nupkg.sha512" + }, + "BCnEncoder.Net.ImageSharp/1.1.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-JL/woctP6UucxcLKUruMI+TIWTbSV7KO1RWY9/xMDuQqwo1BFXAIrShllMGHYIJ4B9bwGVGZNNbZUyM7rPLMTA==", + "path": "bcnencoder.net.imagesharp/1.1.1", + "hashPath": "bcnencoder.net.imagesharp.1.1.1.nupkg.sha512" + }, + "Crc32.NET/1.2.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-wNW/huzolu8MNKUnwCVKxjfAlCFpeI8AZVfF46iAWJ1+P6bTU1AZct7VAkDDEjgeeTJCVTkGZaD6jSd/fOiUkA==", + "path": "crc32.net/1.2.0", + "hashPath": "crc32.net.1.2.0.nupkg.sha512" + }, + "DeviceId/6.2.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-WvYzWimLcckQkaUCcsZtDsMTNcMzRh+tw8rmqO4KdD08b7Hwp3SpWtynoVq9sT+bFvl6ca6SnnqX2DZDra/kTw==", + "path": "deviceid/6.2.0", + "hashPath": "deviceid.6.2.0.nupkg.sha512" + }, + "F23.StringSimilarity/5.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-T8o163dR+7VTpZhor0t/TGzbQuBs/CIyt0zFVMmwRkYTjVrOU/nGSKly/hb31SYLgKQZSG+oZMMB4UiFvHpJbw==", + "path": "f23.stringsimilarity/5.0.0", + "hashPath": "f23.stringsimilarity.5.0.0.nupkg.sha512" + }, + "FluentFTP/42.0.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-6eIY/qHb5wVf7v/E3RA9r4HEc6cqjaIMblUCfip0NVLthTFzdnFyFyhN+gP28gg7aSXPiyj2sNJ9Cru1Q6JkEw==", + "path": "fluentftp/42.0.1", + "hashPath": "fluentftp.42.0.1.nupkg.sha512" + }, + "GameFinder.Common/2.2.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-Cl/Pvb8xTFnf6MTpye1dwsLXeIn4IkmIYPt8k1Qms/AuPLLSRlHwXJU5LNh0ppSCREh3KHHlg3jRJ5Xxi0Q3AQ==", + "path": "gamefinder.common/2.2.2", + "hashPath": "gamefinder.common.2.2.2.nupkg.sha512" + }, + "GameFinder.RegistryUtils/2.2.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-0qHCy7bfa/cKOsU3zGmN11wZXnLGVgOT2BGHVb4wcAIRiforPcOlKVuynD4U2CCPVA9ICic0bz07cAbdj59A1Q==", + "path": "gamefinder.registryutils/2.2.2", + "hashPath": "gamefinder.registryutils.2.2.2.nupkg.sha512" + }, + "GameFinder.StoreHandlers.EGS/2.2.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-/pm12bLZQr/wOPOoy8UZ9s0l4142upkzd2wxEkYBhB6QTWleHRqYHJe1/XR1EvK57khJ6wHNKIXgG3DSzD4Bbw==", + "path": "gamefinder.storehandlers.egs/2.2.2", + "hashPath": "gamefinder.storehandlers.egs.2.2.2.nupkg.sha512" + }, + "GameFinder.StoreHandlers.GOG/2.2.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-yT41AnAceXrZvEf6nQ8ricO2ILX5RLy2LnOOBsjLiJjqm0aLUWreAYBisPybIUvRTKoGhLRChL1eTUsPXtU09A==", + "path": "gamefinder.storehandlers.gog/2.2.2", + "hashPath": "gamefinder.storehandlers.gog.2.2.2.nupkg.sha512" + }, + "GameFinder.StoreHandlers.Origin/2.2.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-uEajZ/rE+TaEX0ogXb3EpiU4j+XTgBR3/845SpOUw2KM5UDucOG8A8ulU/XnOoCWrkR3mRDdm1eEMI2qz2zNUQ==", + "path": "gamefinder.storehandlers.origin/2.2.2", + "hashPath": "gamefinder.storehandlers.origin.2.2.2.nupkg.sha512" + }, + "GameFinder.StoreHandlers.Steam/2.2.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-Q74+3cNP0JKZ/j9ab2WVS9gYrnOx2MemlJm69YHdn+KuXoijEkuYVlH11PMNx+Y2rk60Gc0TSj60omyEthLm6Q==", + "path": "gamefinder.storehandlers.steam/2.2.2", + "hashPath": "gamefinder.storehandlers.steam.2.2.2.nupkg.sha512" + }, + "HtmlAgilityPack/1.11.46": { + "type": "package", + "serviceable": true, + "sha512": "sha512-dLMn4EVfJBHWmWK4Uh0XGD76FPLHI0qr2Tm0s1m/xmgiHb1JUb9zB8AzO8HtrkBBlMN6JfCUBYddhqC0hZNR+g==", + "path": "htmlagilitypack/1.11.46", + "hashPath": "htmlagilitypack.1.11.46.nupkg.sha512" + }, + "ini-parser-netstandard/2.5.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-rTyGzgT/a+mD2HxopOGpb/yWWhu5TTPgF59XUlHjhlNv7dbt9DME/qozIR7HreVAVpNnZSqP9A8TeViK5s949g==", + "path": "ini-parser-netstandard/2.5.2", + "hashPath": "ini-parser-netstandard.2.5.2.nupkg.sha512" + }, + "K4os.Compression.LZ4/1.3.4-beta": { + "type": "package", + "serviceable": true, + "sha512": "sha512-atMJADsSr6GUGD9YgCmu8IWswWj2FG4zUu6b9yKKJ+dMw36kroyvlKJlGBxhTLYgXvSZcLEsgOoVv9aCh1r/IQ==", + "path": "k4os.compression.lz4/1.3.4-beta", + "hashPath": "k4os.compression.lz4.1.3.4-beta.nupkg.sha512" + }, + "K4os.Compression.LZ4.Streams/1.3.4-beta": { + "type": "package", + "serviceable": true, + "sha512": "sha512-c7f5hSvui0XMUQ00PdC6d8Ng7QJVU1iMdQ0Q4Y1Sf2q0PtKg8S6uegOxSJPDggh1XvSL8sR9ho4F8L0jx/QR+Q==", + "path": "k4os.compression.lz4.streams/1.3.4-beta", + "hashPath": "k4os.compression.lz4.streams.1.3.4-beta.nupkg.sha512" + }, + "K4os.Hash.xxHash/1.0.8": { + "type": "package", + "serviceable": true, + "sha512": "sha512-Wp2F7BamQ2Q/7Hk834nV9vRQapgcr8kgv9Jvfm8J3D0IhDqZMMl+a2yxUq5ltJitvXvQfB8W6K4F4fCbw/P6YQ==", + "path": "k4os.hash.xxhash/1.0.8", + "hashPath": "k4os.hash.xxhash.1.0.8.nupkg.sha512" + }, + "LibAES-CTR/1.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-H1afoOdr7ojkwj6kjlOR/ytuPRX9yod6HAelVjZDZ1FM/XOG1lRlC6A3EAXT0uYHdqdsRa4vmxzkz4rRczArbQ==", + "path": "libaes-ctr/1.0.0", + "hashPath": "libaes-ctr.1.0.0.nupkg.sha512" + }, + "MegaApiClient/1.10.3": { + "type": "package", + "serviceable": true, + "sha512": "sha512-df1uzofRVzNxP4WpE2WWWrgpdN+9RmOqZqtNHhjcmRTe0+CNAzAN7fjxr3fVBMTLRQ2iNigPAjT39YIqstcCJw==", + "path": "megaapiclient/1.10.3", + "hashPath": "megaapiclient.1.10.3.nupkg.sha512" + }, + "Microsoft.CSharp/4.5.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-kaj6Wb4qoMuH3HySFJhxwQfe8R/sJsNJnANrvv8WdFPMoNbKY5htfNscv+LHCu5ipz+49m2e+WQXpLXr9XYemQ==", + "path": "microsoft.csharp/4.5.0", + "hashPath": "microsoft.csharp.4.5.0.nupkg.sha512" + }, + "Microsoft.Extensions.Configuration/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-Rg0KWUPbIE5cgIJ3VoBj16Ac5K6sCnYb6JdYyVfrZVvLw9k8TgbrkiFMxwQWAsTnm9PtAfDqWwTrvLx/37b2Zg==", + "path": "microsoft.extensions.configuration/6.0.2-mauipre.1.22102.15", + "hashPath": "microsoft.extensions.configuration.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "Microsoft.Extensions.Configuration.Abstractions/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-g+hdHEfm/QK4Zs59gftVQYYyfR/P7VDjCOaG2I+q6dLc2FKV/0PonAvt6X0mctCv8GluKsBXaWTgYVSSy4dpmA==", + "path": "microsoft.extensions.configuration.abstractions/6.0.2-mauipre.1.22102.15", + "hashPath": "microsoft.extensions.configuration.abstractions.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "Microsoft.Extensions.Configuration.Binder/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-d6JRnIwAnLS4FYF+KmMh4a3Y6d7qFokud7OY6TTZPx3yAp2dCj0fE73PbI3MvAyShmsGQi4EaSoybe1QrVpvXQ==", + "path": "microsoft.extensions.configuration.binder/6.0.2-mauipre.1.22102.15", + "hashPath": "microsoft.extensions.configuration.binder.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "Microsoft.Extensions.Configuration.CommandLine/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-lAjrqhuHawnQWuThgslBMMr7wlEVRlvblAZ22UJOBWMJ7qTDdqJ3XAMOj1hj3GAUH13EuKfrw8c55lgKIm90VQ==", + "path": "microsoft.extensions.configuration.commandline/6.0.2-mauipre.1.22102.15", + "hashPath": "microsoft.extensions.configuration.commandline.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "Microsoft.Extensions.Configuration.EnvironmentVariables/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-NRStLYp18fzxLxlfVHJgwNLMBzy8xGD5UnRKTU+NODKlLd1a8Ldojdl4MwLdLfUInMjP5EV9jPqpJ0mprnIXCQ==", + "path": "microsoft.extensions.configuration.environmentvariables/6.0.2-mauipre.1.22102.15", + "hashPath": "microsoft.extensions.configuration.environmentvariables.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "Microsoft.Extensions.Configuration.FileExtensions/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-p+PAXz/10trc9pz3+m/uztw/iih0uGru1VykTECwNzgXsKstLnG7P4latAsbxAjbBClqtjsFewTwAkiwmLPtOQ==", + "path": "microsoft.extensions.configuration.fileextensions/6.0.2-mauipre.1.22102.15", + "hashPath": "microsoft.extensions.configuration.fileextensions.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "Microsoft.Extensions.Configuration.Json/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-3vZYNK4AprM9NOcsa56mGuhdHVZA7G/mQjcXQzN0G+GO/ZMsAwFXO6ZdlwbYLCHC/Qw5nJ7NzExmZeDn8LgdGQ==", + "path": "microsoft.extensions.configuration.json/6.0.2-mauipre.1.22102.15", + "hashPath": "microsoft.extensions.configuration.json.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "Microsoft.Extensions.Configuration.UserSecrets/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-gVbSZdYLbkNmM0AC5J75zB/ShRz/SR/SfujgO7cj8QFLAWE0OoCVEJiNov7cXiB4zQAuA3mvHKKdzgFLvB0Eww==", + "path": "microsoft.extensions.configuration.usersecrets/6.0.2-mauipre.1.22102.15", + "hashPath": "microsoft.extensions.configuration.usersecrets.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "Microsoft.Extensions.DependencyInjection/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-Y4/dQr57HctkUu7B9LWCW6exU5fHaGIRN3P89rZsgjfvqaLTsRwb3o7hVAhpIDiP2K3I0dZP8fs/R+b4tDOX+w==", + "path": "microsoft.extensions.dependencyinjection/6.0.2-mauipre.1.22102.15", + "hashPath": "microsoft.extensions.dependencyinjection.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-oYNPt6oGPYqF4lNN4GloZ4de4pkeuON4yQO0JJ+ob6e1Ny9MnCI39uKpULD8cTYrIhZt9/hnYx5eAz/2GM/qag==", + "path": "microsoft.extensions.dependencyinjection.abstractions/6.0.2-mauipre.1.22102.15", + "hashPath": "microsoft.extensions.dependencyinjection.abstractions.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "Microsoft.Extensions.FileProviders.Abstractions/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-U5itZcqoO9VmSdmeSCYY5rmhJzifysPHlFJCbNJ4Azn4QKOE1WilYpan4EhXwAbSPR5yr9DS0CMyguP2yzGauA==", + "path": "microsoft.extensions.fileproviders.abstractions/6.0.2-mauipre.1.22102.15", + "hashPath": "microsoft.extensions.fileproviders.abstractions.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "Microsoft.Extensions.FileProviders.Physical/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-z2yDlGPA94BNP6XRhcCw15u91eUuNwsQifMaJobh7ZypZUVGilmYcaYe5Q7E4dIvxakNCNrxMpCYZ746rUrRzA==", + "path": "microsoft.extensions.fileproviders.physical/6.0.2-mauipre.1.22102.15", + "hashPath": "microsoft.extensions.fileproviders.physical.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "Microsoft.Extensions.FileSystemGlobbing/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ab8aCFQXMj3fFxwi4DAKz3eZ4HbYTfbeRPMCSmTvOhwzino4OGU5vi7a7//lvBLBingpdD65jOu8so3CzGSuRg==", + "path": "microsoft.extensions.filesystemglobbing/6.0.2-mauipre.1.22102.15", + "hashPath": "microsoft.extensions.filesystemglobbing.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "Microsoft.Extensions.Hosting/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-wxrcpmf/aZf/KQf2T8o8apjwrNvQ/G/1D9RCPUCBE5451N+YJDHr8NGu9v17SC7Cff5Irny8bSPb6j2HnIRCog==", + "path": "microsoft.extensions.hosting/6.0.2-mauipre.1.22102.15", + "hashPath": "microsoft.extensions.hosting.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "Microsoft.Extensions.Hosting.Abstractions/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-5iCO6RJsupw2OTYb6B4c6bfgAtpH+D8cUoshzjKKcuNfSmGVD18EKo4P+m80Vi+3Dlj55RPChztAW2d4x5mPMg==", + "path": "microsoft.extensions.hosting.abstractions/6.0.2-mauipre.1.22102.15", + "hashPath": "microsoft.extensions.hosting.abstractions.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "Microsoft.Extensions.Logging/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-6ZkKqP2h/qiobh+SEhuQwPYLAL99LdVUHwN/jvJN35Wxr2+eY9Ptmzhq2bXiKMXviBM+AqeQXPYyh65+aTcM4w==", + "path": "microsoft.extensions.logging/6.0.2-mauipre.1.22102.15", + "hashPath": "microsoft.extensions.logging.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "Microsoft.Extensions.Logging.Abstractions/6.0.3": { + "type": "package", + "serviceable": true, + "sha512": "sha512-SUpStcdjeBbdKjPKe53hVVLkFjylX0yIXY8K+xWa47+o1d+REDyOMZjHZa+chsQI1K9qZeiHWk9jos0TFU7vGg==", + "path": "microsoft.extensions.logging.abstractions/6.0.3", + "hashPath": "microsoft.extensions.logging.abstractions.6.0.3.nupkg.sha512" + }, + "Microsoft.Extensions.Logging.Configuration/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-nwJDYaaRA9/ux3iNv5bpBh/J4Vd+vwO3KOZNJMxZ0rwsK9zqypOQtgNSuUMgHwNWRZcQvJ1dmwMxPt4/uZAF+Q==", + "path": "microsoft.extensions.logging.configuration/6.0.2-mauipre.1.22102.15", + "hashPath": "microsoft.extensions.logging.configuration.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "Microsoft.Extensions.Logging.Console/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-D1gsTcJTMW3f6QljdmrWVP2oWs3SkyKu7vFcAfqQtP/DGqvBwufgZB/bOM+U1dtwt23j2izaYeCiDjK+wn9Bcg==", + "path": "microsoft.extensions.logging.console/6.0.2-mauipre.1.22102.15", + "hashPath": "microsoft.extensions.logging.console.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "Microsoft.Extensions.Logging.Debug/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-izB8BdhyexZjU8UxgFgdkWN/q8zffnCDEsnxQn8PDm6T++mnp8l99SEp2QeUqN+9LYiRrHV+A18icWVNhwzPgw==", + "path": "microsoft.extensions.logging.debug/6.0.2-mauipre.1.22102.15", + "hashPath": "microsoft.extensions.logging.debug.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "Microsoft.Extensions.Logging.EventLog/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-XV5fxRYdhuH/nvPv5WhXy9kZPZ2BCBF8SK00jl4S1cG38K2+zWiK0MLlNzVAGC/VFABQ1oVkvsiD6DGRVjgaOA==", + "path": "microsoft.extensions.logging.eventlog/6.0.2-mauipre.1.22102.15", + "hashPath": "microsoft.extensions.logging.eventlog.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "Microsoft.Extensions.Logging.EventSource/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-uqDh4qB+1H2B1IME5IwkNO1aoGadJENI6YBfNfqvgb9Au5xr4wu3cDEZk0oThDYrblsHF/+ni6jzxRr5cYkVLQ==", + "path": "microsoft.extensions.logging.eventsource/6.0.2-mauipre.1.22102.15", + "hashPath": "microsoft.extensions.logging.eventsource.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "Microsoft.Extensions.Options/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-BOa4mEpuqcD5qnyI6SvaQabcQzUWPUscISkFR6BT2Q2eCHsop9nHx09DvrFNZJ58o0Ny0/ffcdMVXvQwMGMzDA==", + "path": "microsoft.extensions.options/6.0.2-mauipre.1.22102.15", + "hashPath": "microsoft.extensions.options.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "Microsoft.Extensions.Options.ConfigurationExtensions/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-rurvZRGtHcwhHXVHhJbuNczyTGPn7MhYO8gVa+ayR2PGAAwNcYoQEcS7kLqmvkvH5l6OhTCU4mI3u4FG96SdgQ==", + "path": "microsoft.extensions.options.configurationextensions/6.0.2-mauipre.1.22102.15", + "hashPath": "microsoft.extensions.options.configurationextensions.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "Microsoft.Extensions.Primitives/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-UwHK1V4ccpDfP1rbUfNgSOf5Q/nn6B3rv1fKW5rzD7QtCm94IayO2Dnx9VgAhQUdOn+o4+/BgBDPjPYmGfnzLg==", + "path": "microsoft.extensions.primitives/6.0.2-mauipre.1.22102.15", + "hashPath": "microsoft.extensions.primitives.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "Microsoft.NETCore.Platforms/5.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-VyPlqzH2wavqquTcYpkIIAQ6WdenuKoFN0BdYBbCWsclXacSOHNQn66Gt4z5NBqEYW0FAPm5rlvki9ZiCij5xQ==", + "path": "microsoft.netcore.platforms/5.0.0", + "hashPath": "microsoft.netcore.platforms.5.0.0.nupkg.sha512" + }, + "Microsoft.NETCore.Targets/1.1.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-aOZA3BWfz9RXjpzt0sRJJMjAscAUm3Hoa4UWAfceV9UTYxgwZ1lZt5nO2myFf+/jetYQo4uTP7zS8sJY67BBxg==", + "path": "microsoft.netcore.targets/1.1.0", + "hashPath": "microsoft.netcore.targets.1.1.0.nupkg.sha512" + }, + "Microsoft.Toolkit.HighPerformance/7.1.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-cezzRky0BUJyYmSrcQUcX8qAv90JfUwCqWEbqfWZLHyeANo9/LWgW6y50pqbyc8r8SPXVsu2GNH98fB3VxrnvA==", + "path": "microsoft.toolkit.highperformance/7.1.2", + "hashPath": "microsoft.toolkit.highperformance.7.1.2.nupkg.sha512" + }, + "Microsoft.Win32.Primitives/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-9ZQKCWxH7Ijp9BfahvL2Zyf1cJIk8XYLF6Yjzr2yi0b2cOut/HQ31qf1ThHAgCc3WiZMdnWcfJCgN82/0UunxA==", + "path": "microsoft.win32.primitives/4.3.0", + "hashPath": "microsoft.win32.primitives.4.3.0.nupkg.sha512" + }, + "Microsoft.Win32.Registry/5.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-dDoKi0PnDz31yAyETfRntsLArTlVAVzUzCIvvEDsDsucrl33Dl8pIJG06ePTJTI3tGpeyHS9Cq7Foc/s4EeKcg==", + "path": "microsoft.win32.registry/5.0.0", + "hashPath": "microsoft.win32.registry.5.0.0.nupkg.sha512" + }, + "Microsoft.Win32.SystemEvents/5.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-Bh6blKG8VAKvXiLe2L+sEsn62nc1Ij34MrNxepD2OCrS5cpCwQa9MeLyhVQPQ/R4Wlzwuy6wMK8hLb11QPDRsQ==", + "path": "microsoft.win32.systemevents/5.0.0", + "hashPath": "microsoft.win32.systemevents.5.0.0.nupkg.sha512" + }, + "NETStandard.Library/2.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-7jnbRU+L08FXKMxqUflxEXtVymWvNOrS8yHgu9s6EM8Anr6T/wIX4nZ08j/u3Asz+tCufp3YVwFSEvFTPYmBPA==", + "path": "netstandard.library/2.0.0", + "hashPath": "netstandard.library.2.0.0.nupkg.sha512" + }, + "Nettle/1.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-MwwbaIpIGRhikck/L9ka2BWRlWu+wDoCVZ5opZHFLt6DlF/d213MSpVVCRi1Z1zQhBBS27jwDH7AqJxuT8o5Fw==", + "path": "nettle/1.3.0", + "hashPath": "nettle.1.3.0.nupkg.sha512" + }, + "Newtonsoft.Json/10.0.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-iwElSU2IXmwGvytJsezyDML2ZWDkG2JzTYzlU/BNlmzMdlmRvbnwITsGGY74gwVEpDli1UdOLkMT7/3jxWvXzA==", + "path": "newtonsoft.json/10.0.2", + "hashPath": "newtonsoft.json.10.0.2.nupkg.sha512" + }, + "NLog/5.0.5": { + "type": "package", + "serviceable": true, + "sha512": "sha512-NOTWSyUEljmjMq7OqZ1X9iu4bJ+rW/o6pt79Jq8j2Q7s8DyoMMCJwe0HoCKcNjhYRJ++b+E8erH6E6WwaCTshQ==", + "path": "nlog/5.0.5", + "hashPath": "nlog.5.0.5.nupkg.sha512" + }, + "NLog.Extensions.Logging/5.1.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-cQCKF2/iYjZUkn0d2o6VD1xkTUhIFHPYmZEm29KlTthLEzMht5aY80SwWlHZCKy0w19kaSq1jgLJSGrKsapUfg==", + "path": "nlog.extensions.logging/5.1.0", + "hashPath": "nlog.extensions.logging.5.1.0.nupkg.sha512" + }, + "Octokit/4.0.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-fwTQ/mEyvRA+LPvEApqziBR1Qvo6+AshUBQTZqXM5RMuJaSBzW3PGrG33HA+zOaq+71E4+EmN7kjCDBc+Ra3WQ==", + "path": "octokit/4.0.1", + "hashPath": "octokit.4.0.1.nupkg.sha512" + }, + "Octopus.Octodiff/2.0.100": { + "type": "package", + "serviceable": true, + "sha512": "sha512-9F6M766uyr0mbgP37ATLFW7gI/f/z/tI9DbZd/IhhRuGJb5A+7PfBDa9i/4k/3IzY/mG3vPo6HiMfTtEeACzjw==", + "path": "octopus.octodiff/2.0.100", + "hashPath": "octopus.octodiff.2.0.100.nupkg.sha512" + }, + "OMODFramework/3.0.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-jpo14v6B0Mq35cunVbQM7PXaZvtI3Q0IE7u1WFylcW5U4B7s8K4OAnciZQRz14MsRMmw4qpyyQ0qWvZxKtNXMg==", + "path": "omodframework/3.0.1", + "hashPath": "omodframework.3.0.1.nupkg.sha512" + }, + "protobuf-net/3.0.101": { + "type": "package", + "serviceable": true, + "sha512": "sha512-mLm8VGfGylp9q+rbJDp3uw0BOeNzfGENecVz/EYGlzq3ss7tfajGXHCMoZm/GxJ9vSn9pcK22UXWZnQ5GJQMjA==", + "path": "protobuf-net/3.0.101", + "hashPath": "protobuf-net.3.0.101.nupkg.sha512" + }, + "protobuf-net.Core/3.0.101": { + "type": "package", + "serviceable": true, + "sha512": "sha512-gf9QIF0RlctfjmOjbE6eOyMulkNEsH7tHncjKj/4BTu9tkuTyrH3fv5I+35GnolJqKJ6fh9kYaezvNRL3t75+Q==", + "path": "protobuf-net.core/3.0.101", + "hashPath": "protobuf-net.core.3.0.101.nupkg.sha512" + }, + "runtime.any.System.Collections/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-23g6rqftKmovn2cLeGsuHUYm0FD7pdutb0uQMJpZ3qTvq+zHkgmt6J65VtRry4WDGYlmkMa4xDACtaQ94alNag==", + "path": "runtime.any.system.collections/4.3.0", + "hashPath": "runtime.any.system.collections.4.3.0.nupkg.sha512" + }, + "runtime.any.System.Diagnostics.Tracing/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-1lpifymjGDzoYIaam6/Hyqf8GhBI3xXYLK2TgEvTtuZMorG3Kb9QnMTIKhLjJYXIiu1JvxjngHvtVFQQlpQ3HQ==", + "path": "runtime.any.system.diagnostics.tracing/4.3.0", + "hashPath": "runtime.any.system.diagnostics.tracing.4.3.0.nupkg.sha512" + }, + "runtime.any.System.Globalization/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-sMDBnad4rp4t7GY442Jux0MCUuKL4otn5BK6Ni0ARTXTSpRNBzZ7hpMfKSvnVSED5kYJm96YOWsqV0JH0d2uuw==", + "path": "runtime.any.system.globalization/4.3.0", + "hashPath": "runtime.any.system.globalization.4.3.0.nupkg.sha512" + }, + "runtime.any.System.Globalization.Calendars/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-M1r+760j1CNA6M/ZaW6KX8gOS8nxPRqloqDcJYVidRG566Ykwcs29AweZs2JF+nMOCgWDiMfPSTMfvwOI9F77w==", + "path": "runtime.any.system.globalization.calendars/4.3.0", + "hashPath": "runtime.any.system.globalization.calendars.4.3.0.nupkg.sha512" + }, + "runtime.any.System.IO/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-SDZ5AD1DtyRoxYtEcqQ3HDlcrorMYXZeCt7ZhG9US9I5Vva+gpIWDGMkcwa5XiKL0ceQKRZIX2x0XEjLX7PDzQ==", + "path": "runtime.any.system.io/4.3.0", + "hashPath": "runtime.any.system.io.4.3.0.nupkg.sha512" + }, + "runtime.any.System.Reflection/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-hLC3A3rI8jipR5d9k7+f0MgRCW6texsAp0MWkN/ci18FMtQ9KH7E2vDn/DH2LkxsszlpJpOn9qy6Z6/69rH6eQ==", + "path": "runtime.any.system.reflection/4.3.0", + "hashPath": "runtime.any.system.reflection.4.3.0.nupkg.sha512" + }, + "runtime.any.System.Reflection.Extensions/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-cPhT+Vqu52+cQQrDai/V91gubXUnDKNRvlBnH+hOgtGyHdC17aQIU64EaehwAQymd7kJA5rSrVRNfDYrbhnzyA==", + "path": "runtime.any.system.reflection.extensions/4.3.0", + "hashPath": "runtime.any.system.reflection.extensions.4.3.0.nupkg.sha512" + }, + "runtime.any.System.Reflection.Primitives/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-Nrm1p3armp6TTf2xuvaa+jGTTmncALWFq22CpmwRvhDf6dE9ZmH40EbOswD4GnFLrMRS0Ki6Kx5aUPmKK/hZBg==", + "path": "runtime.any.system.reflection.primitives/4.3.0", + "hashPath": "runtime.any.system.reflection.primitives.4.3.0.nupkg.sha512" + }, + "runtime.any.System.Resources.ResourceManager/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-Lxb89SMvf8w9p9+keBLyL6H6x/TEmc6QVsIIA0T36IuyOY3kNvIdyGddA2qt35cRamzxF8K5p0Opq4G4HjNbhQ==", + "path": "runtime.any.system.resources.resourcemanager/4.3.0", + "hashPath": "runtime.any.system.resources.resourcemanager.4.3.0.nupkg.sha512" + }, + "runtime.any.System.Runtime/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-fRS7zJgaG9NkifaAxGGclDDoRn9HC7hXACl52Or06a/fxdzDajWb5wov3c6a+gVSlekRoexfjwQSK9sh5um5LQ==", + "path": "runtime.any.system.runtime/4.3.0", + "hashPath": "runtime.any.system.runtime.4.3.0.nupkg.sha512" + }, + "runtime.any.System.Runtime.Handles/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-GG84X6vufoEzqx8PbeBKheE4srOhimv+yLtGb/JkR3Y2FmoqmueLNFU4Xx8Y67plFpltQSdK74x0qlEhIpv/CQ==", + "path": "runtime.any.system.runtime.handles/4.3.0", + "hashPath": "runtime.any.system.runtime.handles.4.3.0.nupkg.sha512" + }, + "runtime.any.System.Runtime.InteropServices/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-lBoFeQfxe/4eqjPi46E0LU/YaCMdNkQ8B4MZu/mkzdIAZh8RQ1NYZSj0egrQKdgdvlPFtP4STtob40r4o2DBAw==", + "path": "runtime.any.system.runtime.interopservices/4.3.0", + "hashPath": "runtime.any.system.runtime.interopservices.4.3.0.nupkg.sha512" + }, + "runtime.any.System.Text.Encoding/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-+ihI5VaXFCMVPJNstG4O4eo1CfbrByLxRrQQTqOTp1ttK0kUKDqOdBSTaCB2IBk/QtjDrs6+x4xuezyMXdm0HQ==", + "path": "runtime.any.system.text.encoding/4.3.0", + "hashPath": "runtime.any.system.text.encoding.4.3.0.nupkg.sha512" + }, + "runtime.any.System.Text.Encoding.Extensions/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-NLrxmLsfRrOuVqPWG+2lrQZnE53MLVeo+w9c54EV+TUo4c8rILpsDXfY8pPiOy9kHpUHHP07ugKmtsU3vVW5Jg==", + "path": "runtime.any.system.text.encoding.extensions/4.3.0", + "hashPath": "runtime.any.system.text.encoding.extensions.4.3.0.nupkg.sha512" + }, + "runtime.any.System.Threading.Tasks/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-OhBAVBQG5kFj1S+hCEQ3TUHBAEtZ3fbEMgZMRNdN8A0Pj4x+5nTELEqL59DU0TjKVE6II3dqKw4Dklb3szT65w==", + "path": "runtime.any.system.threading.tasks/4.3.0", + "hashPath": "runtime.any.system.threading.tasks.4.3.0.nupkg.sha512" + }, + "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-7VSGO0URRKoMEAq0Sc9cRz8mb6zbyx/BZDEWhgPdzzpmFhkam3fJ1DAGWFXBI4nGlma+uPKpfuMQP5LXRnOH5g==", + "path": "runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl/4.3.2", + "hashPath": "runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512" + }, + "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-0oAaTAm6e2oVH+/Zttt0cuhGaePQYKII1dY8iaqP7CvOpVKgLybKRFvQjXR2LtxXOXTVPNv14j0ot8uV+HrUmw==", + "path": "runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl/4.3.2", + "hashPath": "runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512" + }, + "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-G24ibsCNi5Kbz0oXWynBoRgtGvsw5ZSVEWjv13/KiCAM8C6wz9zzcCniMeQFIkJ2tasjo2kXlvlBZhplL51kGg==", + "path": "runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl/4.3.2", + "hashPath": "runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512" + }, + "runtime.native.System/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-c/qWt2LieNZIj1jGnVNsE2Kl23Ya2aSTBuXMD6V7k9KWr6l16Tqdwq+hJScEpWER9753NWC8h96PaVNY5Ld7Jw==", + "path": "runtime.native.system/4.3.0", + "hashPath": "runtime.native.system.4.3.0.nupkg.sha512" + }, + "runtime.native.System.Net.Http/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ZVuZJqnnegJhd2k/PtAbbIcZ3aZeITq3sj06oKfMBSfphW3HDmk/t4ObvbOk/JA/swGR0LNqMksAh/f7gpTROg==", + "path": "runtime.native.system.net.http/4.3.0", + "hashPath": "runtime.native.system.net.http.4.3.0.nupkg.sha512" + }, + "runtime.native.System.Security.Cryptography.Apple/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-DloMk88juo0OuOWr56QG7MNchmafTLYWvABy36izkrLI5VledI0rq28KGs1i9wbpeT9NPQrx/wTf8U2vazqQ3Q==", + "path": "runtime.native.system.security.cryptography.apple/4.3.0", + "hashPath": "runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512" + }, + "runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-QR1OwtwehHxSeQvZKXe+iSd+d3XZNkEcuWMFYa2i0aG1l+lR739HPicKMlTbJst3spmeekDVBUS7SeS26s4U/g==", + "path": "runtime.native.system.security.cryptography.openssl/4.3.2", + "hashPath": "runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512" + }, + "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-I+GNKGg2xCHueRd1m9PzeEW7WLbNNLznmTuEi8/vZX71HudUbx1UTwlGkiwMri7JLl8hGaIAWnA/GONhu+LOyQ==", + "path": "runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl/4.3.2", + "hashPath": "runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512" + }, + "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-1Z3TAq1ytS1IBRtPXJvEUZdVsfWfeNEhBkbiOCGEl9wwAfsjP2lz3ZFDx5tq8p60/EqbS0HItG5piHuB71RjoA==", + "path": "runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl/4.3.2", + "hashPath": "runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512" + }, + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-kVXCuMTrTlxq4XOOMAysuNwsXWpYeboGddNGpIgNSZmv1b6r/s/DPk0fYMB7Q5Qo4bY68o48jt4T4y5BVecbCQ==", + "path": "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple/4.3.0", + "hashPath": "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512" + }, + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-6mU/cVmmHtQiDXhnzUImxIcDL48GbTk+TsptXyJA+MIOG9LRjPoAQC/qBFB7X+UNyK86bmvGwC8t+M66wsYC8w==", + "path": "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl/4.3.2", + "hashPath": "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512" + }, + "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-vjwG0GGcTW/PPg6KVud8F9GLWYuAV1rrw1BKAqY0oh4jcUqg15oYF1+qkGR2x2ZHM4DQnWKQ7cJgYbfncz/lYg==", + "path": "runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl/4.3.2", + "hashPath": "runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512" + }, + "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-7KMFpTkHC/zoExs+PwP8jDCWcrK9H6L7soowT80CUx3e+nxP/AFnq0AQAW5W76z2WYbLAYCRyPfwYFG6zkvQRw==", + "path": "runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl/4.3.2", + "hashPath": "runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512" + }, + "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-xrlmRCnKZJLHxyyLIqkZjNXqgxnKdZxfItrPkjI+6pkRo5lHX8YvSZlWrSI5AVwLMi4HbNWP7064hcAWeZKp5w==", + "path": "runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl/4.3.2", + "hashPath": "runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512" + }, + "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-leXiwfiIkW7Gmn7cgnNcdtNAU70SjmKW3jxGj1iKHOvdn0zRWsgv/l2OJUO5zdGdiv2VRFnAsxxhDgMzofPdWg==", + "path": "runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl/4.3.2", + "hashPath": "runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512" + }, + "runtime.win.Microsoft.Win32.Primitives/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-NU51SEt/ZaD2MF48sJ17BIqx7rjeNNLXUevfMOjqQIetdndXwYjZfZsT6jD+rSWp/FYxjesdK4xUSl4OTEI0jw==", + "path": "runtime.win.microsoft.win32.primitives/4.3.0", + "hashPath": "runtime.win.microsoft.win32.primitives.4.3.0.nupkg.sha512" + }, + "runtime.win.System.Diagnostics.Debug/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-hHHP0WCStene2jjeYcuDkETozUYF/3sHVRHAEOgS3L15hlip24ssqCTnJC28Z03Wpo078oMcJd0H4egD2aJI8g==", + "path": "runtime.win.system.diagnostics.debug/4.3.0", + "hashPath": "runtime.win.system.diagnostics.debug.4.3.0.nupkg.sha512" + }, + "runtime.win.System.IO.FileSystem/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-Z37zcSCpXuGCYtFbqYO0TwOVXxS2d+BXgSoDFZmRg8BC4Cuy54edjyIvhhcfCrDQA9nl+EPFTgHN54dRAK7mNA==", + "path": "runtime.win.system.io.filesystem/4.3.0", + "hashPath": "runtime.win.system.io.filesystem.4.3.0.nupkg.sha512" + }, + "runtime.win.System.Net.Primitives/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-lkXXykakvXUU+Zq2j0pC6EO20lEhijjqMc01XXpp1CJN+DeCwl3nsj4t5Xbpz3kA7yQyTqw6d9SyIzsyLsV3zA==", + "path": "runtime.win.system.net.primitives/4.3.0", + "hashPath": "runtime.win.system.net.primitives.4.3.0.nupkg.sha512" + }, + "runtime.win.System.Runtime.Extensions/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-RkgHVhUPvzZxuUubiZe8yr/6CypRVXj0VBzaR8hsqQ8f+rUo7e4PWrHTLOCjd8fBMGWCrY//fi7Ku3qXD7oHRw==", + "path": "runtime.win.system.runtime.extensions/4.3.0", + "hashPath": "runtime.win.system.runtime.extensions.4.3.0.nupkg.sha512" + }, + "runtime.win7.System.Private.Uri/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-Q+IBgaPYicSQs2tBlmXqbS25c/JLIthWrgrpMwxKSOobW/OqIMVFruUGfuaz4QABVzV8iKdCAbN7APY7Tclbnw==", + "path": "runtime.win7.system.private.uri/4.3.0", + "hashPath": "runtime.win7.system.private.uri.4.3.0.nupkg.sha512" + }, + "SharpCompress/0.28.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-EM0NUv9givYJXAVCLrC5DXWT+EA+69N3DppwO1OTROU5ZIIOLlnHu6JfGt81mgi5Q8xQFQJdHmEDbisiLgpfzg==", + "path": "sharpcompress/0.28.1", + "hashPath": "sharpcompress.0.28.1.nupkg.sha512" + }, + "SharpZipLib/1.4.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-X8QiHZS7+bbZy85LfpKCAL9oh0yZkiiecWhQL5F1Yn1AKFDYiOzR3UG5vI+9bDYGRGyseVdMW5sTH8mv8LXF1g==", + "path": "sharpziplib/1.4.1", + "hashPath": "sharpziplib.1.4.1.nupkg.sha512" + }, + "Shipwreck.Phash/0.5.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-FMeI3ZkPAjr/KlIIyagMoFCdUVADj654njRVcUC172sBGUAqdc6LRBD/3Dj9SZxbeSL1iJU4iHCTakVgva9ukQ==", + "path": "shipwreck.phash/0.5.0", + "hashPath": "shipwreck.phash.0.5.0.nupkg.sha512" + }, + "SixLabors.ImageSharp/2.1.3": { + "type": "package", + "serviceable": true, + "sha512": "sha512-8yonNRWX3vUE9k29ta0Hbfa0AEc0hbDjSH/nZ3vOTJEXmY6hLnGsjDKoz96Z+AgOsrdkAu6PdL/Ebaf70aitzw==", + "path": "sixlabors.imagesharp/2.1.3", + "hashPath": "sixlabors.imagesharp.2.1.3.nupkg.sha512" + }, + "SteamKit2/2.4.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-t9yptysn/2YY6KZaI123vOOnumS+ZCFcC6MhFEkTiQ04mdpZ/EWhk5RVY7jU36IQHyTQUXotmn7taKFCXMKp4g==", + "path": "steamkit2/2.4.1", + "hashPath": "steamkit2.2.4.1.nupkg.sha512" + }, + "Stub.System.Data.SQLite.Core.NetStandard/1.0.116": { + "type": "package", + "serviceable": true, + "sha512": "sha512-VEe/vzvn2ECKovtyb+nf8fsnNQ4EYOUms7gnp9729NN7FSR/0v/uVoBDO7DETzV7YCquRVwRnSnYuoOwAoTEKA==", + "path": "stub.system.data.sqlite.core.netstandard/1.0.116", + "hashPath": "stub.system.data.sqlite.core.netstandard.1.0.116.nupkg.sha512" + }, + "System.Buffers/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ratu44uTIHgeBeI0dE8DWvmXVBSo4u7ozRZZHOMmK/JPpYyo0dAfgSiHlpiObMQ5lEtEyIXA40sKRYg5J6A8uQ==", + "path": "system.buffers/4.3.0", + "hashPath": "system.buffers.4.3.0.nupkg.sha512" + }, + "System.Collections/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-3Dcj85/TBdVpL5Zr+gEEBUuFe2icOnLalmEh9hfck1PTYbbyWuZgh4fmm2ysCLTrqLQw6t3TgTyJ+VLp+Qb+Lw==", + "path": "system.collections/4.3.0", + "hashPath": "system.collections.4.3.0.nupkg.sha512" + }, + "System.Collections.Concurrent/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ztl69Xp0Y/UXCL+3v3tEU+lIy+bvjKNUmopn1wep/a291pVPK7dxBd6T7WnlQqRog+d1a/hSsgRsmFnIBKTPLQ==", + "path": "system.collections.concurrent/4.3.0", + "hashPath": "system.collections.concurrent.4.3.0.nupkg.sha512" + }, + "System.Collections.NonGeneric/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-prtjIEMhGUnQq6RnPEYLpFt8AtLbp9yq2zxOSrY7KJJZrw25Fi97IzBqY7iqssbM61Ek5b8f3MG/sG1N2sN5KA==", + "path": "system.collections.nongeneric/4.3.0", + "hashPath": "system.collections.nongeneric.4.3.0.nupkg.sha512" + }, + "System.Collections.Specialized/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-Epx8PoVZR0iuOnJJDzp7pWvdfMMOAvpUo95pC4ScH2mJuXkKA2Y4aR3cG9qt2klHgSons1WFh4kcGW7cSXvrxg==", + "path": "system.collections.specialized/4.3.0", + "hashPath": "system.collections.specialized.4.3.0.nupkg.sha512" + }, + "System.CommandLine/2.0.0-beta4.22272.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-1uqED/q2H0kKoLJ4+hI2iPSBSEdTuhfCYADeJrAqERmiGQ2NNacYKRNEQ+gFbU4glgVyK8rxI+ZOe1onEtr/Pg==", + "path": "system.commandline/2.0.0-beta4.22272.1", + "hashPath": "system.commandline.2.0.0-beta4.22272.1.nupkg.sha512" + }, + "System.CommandLine.NamingConventionBinder/2.0.0-beta4.22272.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ux2eUA/syF+JtlpMDc/Lsd6PBIBuwjH3AvHnestoh5uD0WKT5b+wkQxDWVCqp9qgVjMBTLNhX19ZYFtenunt9A==", + "path": "system.commandline.namingconventionbinder/2.0.0-beta4.22272.1", + "hashPath": "system.commandline.namingconventionbinder.2.0.0-beta4.22272.1.nupkg.sha512" + }, + "System.ComponentModel/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-VyGn1jGRZVfxnh8EdvDCi71v3bMXrsu8aYJOwoV7SNDLVhiEqwP86pPMyRGsDsxhXAm2b3o9OIqeETfN5qfezw==", + "path": "system.componentmodel/4.3.0", + "hashPath": "system.componentmodel.4.3.0.nupkg.sha512" + }, + "System.ComponentModel.Primitives/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-j8GUkCpM8V4d4vhLIIoBLGey2Z5bCkMVNjEZseyAlm4n5arcsJOeI3zkUP+zvZgzsbLTYh4lYeP/ZD/gdIAPrw==", + "path": "system.componentmodel.primitives/4.3.0", + "hashPath": "system.componentmodel.primitives.4.3.0.nupkg.sha512" + }, + "System.ComponentModel.TypeConverter/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-16pQ6P+EdhcXzPiEK4kbA953Fu0MNG2ovxTZU81/qsCd1zPRsKc3uif5NgvllCY598k6bI0KUyKW8fanlfaDQg==", + "path": "system.componentmodel.typeconverter/4.3.0", + "hashPath": "system.componentmodel.typeconverter.4.3.0.nupkg.sha512" + }, + "System.Data.SQLite.Core/1.0.116": { + "type": "package", + "serviceable": true, + "sha512": "sha512-djwmo97syWCpUPJbDS0e2qUFUa8cDLeIfMotVkaRkAC5gpfBSZLMzvoLkLp1prY8waAuH1jEC3wcB2ymVVQWtA==", + "path": "system.data.sqlite.core/1.0.116", + "hashPath": "system.data.sqlite.core.1.0.116.nupkg.sha512" + }, + "System.Diagnostics.Debug/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ZUhUOdqmaG5Jk3Xdb8xi5kIyQYAA4PnTNlHx1mu9ZY3qv4ELIdKbnL/akbGaKi2RnNUWaZsAs31rvzFdewTj2g==", + "path": "system.diagnostics.debug/4.3.0", + "hashPath": "system.diagnostics.debug.4.3.0.nupkg.sha512" + }, + "System.Diagnostics.DiagnosticSource/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-IBjxUp4ajJ6aixDKzhKnkAiw90nWtVjAyL9deS7NUYqHXFU/dQsCoML8XWr6xgj8LR5/SrjeV52I3QAVza/Tcg==", + "path": "system.diagnostics.diagnosticsource/6.0.2-mauipre.1.22102.15", + "hashPath": "system.diagnostics.diagnosticsource.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "System.Diagnostics.EventLog/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-iBtuSm3ReFB/o0R97NtkCBcQNUDeodv9gIH4Yt2KSim/olwjk+a80PG20kpQgcdpWnf7zjDvDYxqUzOOF817kA==", + "path": "system.diagnostics.eventlog/6.0.2-mauipre.1.22102.15", + "hashPath": "system.diagnostics.eventlog.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "System.Diagnostics.Tracing/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-rswfv0f/Cqkh78rA5S8eN8Neocz234+emGCtTF3lxPY96F+mmmUen6tbn0glN6PMvlKQb9bPAY5e9u7fgPTkKw==", + "path": "system.diagnostics.tracing/4.3.0", + "hashPath": "system.diagnostics.tracing.4.3.0.nupkg.sha512" + }, + "System.Drawing.Common/5.0.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-rvr/M1WPf24ljpvvrVd74+NdjRUJu1bBkspkZcnzSZnmAUQWSvanlQ0k/hVHk+cHufZbZfu7vOh/vYc0q5Uu/A==", + "path": "system.drawing.common/5.0.2", + "hashPath": "system.drawing.common.5.0.2.nupkg.sha512" + }, + "System.Globalization/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-kYdVd2f2PAdFGblzFswE4hkNANJBKRmsfa2X5LG2AcWE1c7/4t0pYae1L8vfZ5xvE2nK/R9JprtToA61OSHWIg==", + "path": "system.globalization/4.3.0", + "hashPath": "system.globalization.4.3.0.nupkg.sha512" + }, + "System.Globalization.Calendars/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-GUlBtdOWT4LTV3I+9/PJW+56AnnChTaOqqTLFtdmype/L500M2LIyXgmtd9X2P2VOkmJd5c67H5SaC2QcL1bFA==", + "path": "system.globalization.calendars/4.3.0", + "hashPath": "system.globalization.calendars.4.3.0.nupkg.sha512" + }, + "System.Globalization.Extensions/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-FhKmdR6MPG+pxow6wGtNAWdZh7noIOpdD5TwQ3CprzgIE1bBBoim0vbR1+AWsWjQmU7zXHgQo4TWSP6lCeiWcQ==", + "path": "system.globalization.extensions/4.3.0", + "hashPath": "system.globalization.extensions.4.3.0.nupkg.sha512" + }, + "System.IO/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-3qjaHvxQPDpSOYICjUoTsmoq5u6QJAFRUITgeT/4gqkF1bajbSmb1kwSxEA8AHlofqgcKJcM8udgieRNhaJ5Cg==", + "path": "system.io/4.3.0", + "hashPath": "system.io.4.3.0.nupkg.sha512" + }, + "System.IO.Abstractions/17.2.3": { + "type": "package", + "serviceable": true, + "sha512": "sha512-VcozGeE4SxIo0cnXrDHhbrh/Gb8KQnZ3BvMelvh+iw0PrIKtuuA46U2Xm4e4pgnaWFgT4RdZfTpWl/WPRdw0WQ==", + "path": "system.io.abstractions/17.2.3", + "hashPath": "system.io.abstractions.17.2.3.nupkg.sha512" + }, + "System.IO.FileSystem/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-3wEMARTnuio+ulnvi+hkRNROYwa1kylvYahhcLk4HSoVdl+xxTFVeVlYOfLwrDPImGls0mDqbMhrza8qnWPTdA==", + "path": "system.io.filesystem/4.3.0", + "hashPath": "system.io.filesystem.4.3.0.nupkg.sha512" + }, + "System.IO.FileSystem.Primitives/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-6QOb2XFLch7bEc4lIcJH49nJN2HV+OC3fHDgsLVsBVBk3Y4hFAnOBGzJ2lUu7CyDDFo9IBWkSsnbkT6IBwwiMw==", + "path": "system.io.filesystem.primitives/4.3.0", + "hashPath": "system.io.filesystem.primitives.4.3.0.nupkg.sha512" + }, + "System.IO.Pipelines/6.0.3": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ryTgF+iFkpGZY1vRQhfCzX0xTdlV3pyaTTqRu2ETbEv+HlV7O6y7hyQURnghNIXvctl5DuZ//Dpks6HdL/Txgw==", + "path": "system.io.pipelines/6.0.3", + "hashPath": "system.io.pipelines.6.0.3.nupkg.sha512" + }, + "System.Linq/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-5DbqIUpsDp0dFftytzuMmc0oeMdQwjcP/EWxsksIz/w1TcFRkZ3yKKz0PqiYFMmEwPSWw+qNVqD7PJ889JzHbw==", + "path": "system.linq/4.3.0", + "hashPath": "system.linq.4.3.0.nupkg.sha512" + }, + "System.Net.Http/4.3.4": { + "type": "package", + "serviceable": true, + "sha512": "sha512-aOa2d51SEbmM+H+Csw7yJOuNZoHkrP2XnAurye5HWYgGVVU54YZDvsLUYRv6h18X3sPnjNCANmN7ZhIPiqMcjA==", + "path": "system.net.http/4.3.4", + "hashPath": "system.net.http.4.3.4.nupkg.sha512" + }, + "System.Net.Primitives/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-qOu+hDwFwoZPbzPvwut2qATe3ygjeQBDQj91xlsaqGFQUI5i4ZnZb8yyQuLGpDGivEPIt8EJkd1BVzVoP31FXA==", + "path": "system.net.primitives/4.3.0", + "hashPath": "system.net.primitives.4.3.0.nupkg.sha512" + }, + "System.Private.Uri/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-I4SwANiUGho1esj4V4oSlPllXjzCZDE+5XXso2P03LW2vOda2Enzh8DWOxwN6hnrJyp314c7KuVu31QYhRzOGg==", + "path": "system.private.uri/4.3.0", + "hashPath": "system.private.uri.4.3.0.nupkg.sha512" + }, + "System.Reactive/5.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", + "path": "system.reactive/5.0.0", + "hashPath": "system.reactive.5.0.0.nupkg.sha512" + }, + "System.Reflection/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-KMiAFoW7MfJGa9nDFNcfu+FpEdiHpWgTcS2HdMpDvt9saK3y/G4GwprPyzqjFH9NTaGPQeWNHU+iDlDILj96aQ==", + "path": "system.reflection/4.3.0", + "hashPath": "system.reflection.4.3.0.nupkg.sha512" + }, + "System.Reflection.Extensions/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-rJkrJD3kBI5B712aRu4DpSIiHRtr6QlfZSQsb0hYHrDCZORXCFjQfoipo2LaMUHoT9i1B7j7MnfaEKWDFmFQNQ==", + "path": "system.reflection.extensions/4.3.0", + "hashPath": "system.reflection.extensions.4.3.0.nupkg.sha512" + }, + "System.Reflection.Primitives/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-5RXItQz5As4xN2/YUDxdpsEkMhvw3e6aNveFXUn4Hl/udNTCNhnKp8lT9fnc3MhvGKh1baak5CovpuQUXHAlIA==", + "path": "system.reflection.primitives/4.3.0", + "hashPath": "system.reflection.primitives.4.3.0.nupkg.sha512" + }, + "System.Reflection.TypeExtensions/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-7u6ulLcZbyxB5Gq0nMkQttcdBTx57ibzw+4IOXEfR+sXYQoHvjW5LTLyNr8O22UIMrqYbchJQJnos4eooYzYJA==", + "path": "system.reflection.typeextensions/4.3.0", + "hashPath": "system.reflection.typeextensions.4.3.0.nupkg.sha512" + }, + "System.Resources.ResourceManager/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-/zrcPkkWdZmI4F92gL/TPumP98AVDu/Wxr3CSJGQQ+XN6wbRZcyfSKVoPo17ilb3iOr0cCRqJInGwNMolqhS8A==", + "path": "system.resources.resourcemanager/4.3.0", + "hashPath": "system.resources.resourcemanager.4.3.0.nupkg.sha512" + }, + "System.Runtime/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-JufQi0vPQ0xGnAczR13AUFglDyVYt4Kqnz1AZaiKZ5+GICq0/1MH/mO/eAJHt/mHW1zjKBJd7kV26SrxddAhiw==", + "path": "system.runtime/4.3.0", + "hashPath": "system.runtime.4.3.0.nupkg.sha512" + }, + "System.Runtime.CompilerServices.Unsafe/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-504wZt1lnx5T2rQHNa/FpmLjbMe5ho03TYMnFUU1PGnqVLXl0fR6LoPXvdy8hAjSlorOqVqfeXtalsUfVia1RQ==", + "path": "system.runtime.compilerservices.unsafe/6.0.2-mauipre.1.22102.15", + "hashPath": "system.runtime.compilerservices.unsafe.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "System.Runtime.Extensions/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-guW0uK0fn5fcJJ1tJVXYd7/1h5F+pea1r7FLSOz/f8vPEqbR2ZAknuRDvTQ8PzAilDveOxNjSfr0CHfIQfFk8g==", + "path": "system.runtime.extensions/4.3.0", + "hashPath": "system.runtime.extensions.4.3.0.nupkg.sha512" + }, + "System.Runtime.Handles/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-OKiSUN7DmTWeYb3l51A7EYaeNMnvxwE249YtZz7yooT4gOZhmTjIn48KgSsw2k2lYdLgTKNJw/ZIfSElwDRVgg==", + "path": "system.runtime.handles/4.3.0", + "hashPath": "system.runtime.handles.4.3.0.nupkg.sha512" + }, + "System.Runtime.InteropServices/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-uv1ynXqiMK8mp1GM3jDqPCFN66eJ5w5XNomaK2XD+TuCroNTLFGeZ+WCmBMcBDyTFKou3P6cR6J/QsaqDp7fGQ==", + "path": "system.runtime.interopservices/4.3.0", + "hashPath": "system.runtime.interopservices.4.3.0.nupkg.sha512" + }, + "System.Runtime.Numerics/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-yMH+MfdzHjy17l2KESnPiF2dwq7T+xLnSJar7slyimAkUh/gTrS9/UQOtv7xarskJ2/XDSNvfLGOBQPjL7PaHQ==", + "path": "system.runtime.numerics/4.3.0", + "hashPath": "system.runtime.numerics.4.3.0.nupkg.sha512" + }, + "System.Runtime.Serialization.Formatters/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-KT591AkTNFOTbhZlaeMVvfax3RqhH1EJlcwF50Wm7sfnBLuHiOeZRRKrr1ns3NESkM20KPZ5Ol/ueMq5vg4QoQ==", + "path": "system.runtime.serialization.formatters/4.3.0", + "hashPath": "system.runtime.serialization.formatters.4.3.0.nupkg.sha512" + }, + "System.Runtime.Serialization.Primitives/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-Wz+0KOukJGAlXjtKr+5Xpuxf8+c8739RI1C+A2BoQZT+wMCCoMDDdO8/4IRHfaVINqL78GO8dW8G2lW/e45Mcw==", + "path": "system.runtime.serialization.primitives/4.3.0", + "hashPath": "system.runtime.serialization.primitives.4.3.0.nupkg.sha512" + }, + "System.Security.AccessControl/5.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-dagJ1mHZO3Ani8GH0PHpPEe/oYO+rVdbQjvjJkBRNQkX4t0r1iaeGn8+/ybkSLEan3/slM0t59SVdHzuHf2jmw==", + "path": "system.security.accesscontrol/5.0.0", + "hashPath": "system.security.accesscontrol.5.0.0.nupkg.sha512" + }, + "System.Security.Cryptography.Algorithms/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-W1kd2Y8mYSCgc3ULTAZ0hOP2dSdG5YauTb1089T0/kRcN2MpSAW1izOFROrJgxSlMn3ArsgHXagigyi+ibhevg==", + "path": "system.security.cryptography.algorithms/4.3.0", + "hashPath": "system.security.cryptography.algorithms.4.3.0.nupkg.sha512" + }, + "System.Security.Cryptography.Cng/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-03idZOqFlsKRL4W+LuCpJ6dBYDUWReug6lZjBa3uJWnk5sPCUXckocevTaUA8iT/MFSrY/2HXkOt753xQ/cf8g==", + "path": "system.security.cryptography.cng/4.3.0", + "hashPath": "system.security.cryptography.cng.4.3.0.nupkg.sha512" + }, + "System.Security.Cryptography.Csp/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-X4s/FCkEUnRGnwR3aSfVIkldBmtURMhmexALNTwpjklzxWU7yjMk7GHLKOZTNkgnWnE0q7+BCf9N2LVRWxewaA==", + "path": "system.security.cryptography.csp/4.3.0", + "hashPath": "system.security.cryptography.csp.4.3.0.nupkg.sha512" + }, + "System.Security.Cryptography.Encoding/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-1DEWjZZly9ae9C79vFwqaO5kaOlI5q+3/55ohmq/7dpDyDfc8lYe7YVxJUZ5MF/NtbkRjwFRo14yM4OEo9EmDw==", + "path": "system.security.cryptography.encoding/4.3.0", + "hashPath": "system.security.cryptography.encoding.4.3.0.nupkg.sha512" + }, + "System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-h4CEgOgv5PKVF/HwaHzJRiVboL2THYCou97zpmhjghx5frc7fIvlkY1jL+lnIQyChrJDMNEXS6r7byGif8Cy4w==", + "path": "system.security.cryptography.openssl/4.3.0", + "hashPath": "system.security.cryptography.openssl.4.3.0.nupkg.sha512" + }, + "System.Security.Cryptography.Primitives/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-7bDIyVFNL/xKeFHjhobUAQqSpJq9YTOpbEs6mR233Et01STBMXNAc/V+BM6dwYGc95gVh/Zf+iVXWzj3mE8DWg==", + "path": "system.security.cryptography.primitives/4.3.0", + "hashPath": "system.security.cryptography.primitives.4.3.0.nupkg.sha512" + }, + "System.Security.Cryptography.X509Certificates/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-t2Tmu6Y2NtJ2um0RtcuhP7ZdNNxXEgUm2JeoA/0NvlMjAhKCnM1NX07TDl3244mVp3QU6LPEhT3HTtH1uF7IYw==", + "path": "system.security.cryptography.x509certificates/4.3.0", + "hashPath": "system.security.cryptography.x509certificates.4.3.0.nupkg.sha512" + }, + "System.Security.Principal.Windows/5.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-t0MGLukB5WAVU9bO3MGzvlGnyJPgUlcwerXn1kzBRjwLKixT96XV0Uza41W49gVd8zEMFu9vQEFlv0IOrytICA==", + "path": "system.security.principal.windows/5.0.0", + "hashPath": "system.security.principal.windows.5.0.0.nupkg.sha512" + }, + "System.Text.Encoding/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-BiIg+KWaSDOITze6jGQynxg64naAPtqGHBwDrLaCtixsa5bKiR8dpPOHA7ge3C0JJQizJE+sfkz1wV+BAKAYZw==", + "path": "system.text.encoding/4.3.0", + "hashPath": "system.text.encoding.4.3.0.nupkg.sha512" + }, + "System.Text.Encoding.CodePages/5.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-NyscU59xX6Uo91qvhOs2Ccho3AR2TnZPomo1Z0K6YpyztBPM/A5VbkzOO19sy3A3i1TtEnTxA7bCe3Us+r5MWg==", + "path": "system.text.encoding.codepages/5.0.0", + "hashPath": "system.text.encoding.codepages.5.0.0.nupkg.sha512" + }, + "System.Text.Encoding.Extensions/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-YVMK0Bt/A43RmwizJoZ22ei2nmrhobgeiYwFzC4YAN+nue8RF6djXDMog0UCn+brerQoYVyaS+ghy9P/MUVcmw==", + "path": "system.text.encoding.extensions/4.3.0", + "hashPath": "system.text.encoding.extensions.4.3.0.nupkg.sha512" + }, + "System.Text.Encodings.Web/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-6JfZwU3KiMuJObXrC1BPafwioPESZHrWWRWWK33xf+T8FczE32R/WSI9FslUCX6FGQ4sAB51ic6ZEvyYVo2FVA==", + "path": "system.text.encodings.web/6.0.2-mauipre.1.22102.15", + "hashPath": "system.text.encodings.web.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "System.Text.Json/6.0.2-mauipre.1.22102.15": { + "type": "package", + "serviceable": true, + "sha512": "sha512-Ec21VJ5Mrf4M4ZKgoA2Eq9pgYXAT1BMqcU1FqLEbnCZ4ucNoTgWbj7P4e+dzKmNTcw8lc/d4tYlwKxg0rkuOCQ==", + "path": "system.text.json/6.0.2-mauipre.1.22102.15", + "hashPath": "system.text.json.6.0.2-mauipre.1.22102.15.nupkg.sha512" + }, + "System.Text.RegularExpressions/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-RpT2DA+L660cBt1FssIE9CAGpLFdFPuheB7pLpKpn6ZXNby7jDERe8Ua/Ne2xGiwLVG2JOqziiaVCGDon5sKFA==", + "path": "system.text.regularexpressions/4.3.0", + "hashPath": "system.text.regularexpressions.4.3.0.nupkg.sha512" + }, + "System.Threading/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-VkUS0kOBcUf3Wwm0TSbrevDDZ6BlM+b/HRiapRFWjM5O0NS0LviG0glKmFK+hhPDd1XFeSdU1GmlLhb2CoVpIw==", + "path": "system.threading/4.3.0", + "hashPath": "system.threading.4.3.0.nupkg.sha512" + }, + "System.Threading.Overlapped/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-m3HQ2dPiX/DSTpf+yJt8B0c+SRvzfqAJKx+QDWi+VLhz8svLT23MVjEOHPF/KiSLeArKU/iHescrbLd3yVgyNg==", + "path": "system.threading.overlapped/4.3.0", + "hashPath": "system.threading.overlapped.4.3.0.nupkg.sha512" + }, + "System.Threading.Tasks/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-LbSxKEdOUhVe8BezB/9uOGGppt+nZf6e1VFyw6v3DN6lqitm0OSn2uXMOdtP0M3W4iMcqcivm2J6UgqiwwnXiA==", + "path": "system.threading.tasks/4.3.0", + "hashPath": "system.threading.tasks.4.3.0.nupkg.sha512" + }, + "System.Threading.Tasks.Extensions/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-npvJkVKl5rKXrtl1Kkm6OhOUaYGEiF9wFbppFRWSMoApKzt2PiPHT2Bb8a5sAWxprvdOAtvaARS9QYMznEUtug==", + "path": "system.threading.tasks.extensions/4.3.0", + "hashPath": "system.threading.tasks.extensions.4.3.0.nupkg.sha512" + }, + "System.Xml.ReaderWriter/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-GrprA+Z0RUXaR4N7/eW71j1rgMnEnEVlgii49GZyAjTH7uliMnrOU3HNFBr6fEDBCJCIdlVNq9hHbaDR621XBA==", + "path": "system.xml.readerwriter/4.3.0", + "hashPath": "system.xml.readerwriter.4.3.0.nupkg.sha512" + }, + "System.Xml.XmlDocument/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-lJ8AxvkX7GQxpC6GFCeBj8ThYVyQczx2+f/cWHJU8tjS7YfI6Cv6bon70jVEgs2CiFbmmM8b9j1oZVx0dSI2Ww==", + "path": "system.xml.xmldocument/4.3.0", + "hashPath": "system.xml.xmldocument.4.3.0.nupkg.sha512" + }, + "ValveKeyValue/0.8.2.162": { + "type": "package", + "serviceable": true, + "sha512": "sha512-I9Ra8KhksMkQTNGREX88iRp5xm36SWLm4VbG5fMt9GTceVPJrZbAsuCPw5qIZD0tbcODzVt3M6pZmas1aGf2Lw==", + "path": "valvekeyvalue/0.8.2.162", + "hashPath": "valvekeyvalue.0.8.2.162.nupkg.sha512" + }, + "YamlDotNet/12.0.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-IFj2oDZYJIv5sM8mqaj5edVrpgUyoXk/wCGqZQJrgys/0tBajajpjRSgFM+iA/9ILOfTsPYKtcDcwvqBnBcNIg==", + "path": "yamldotnet/12.0.2", + "hashPath": "yamldotnet.12.0.2.nupkg.sha512" + }, + "Wabbajack.CLI.Builder/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Common/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Compiler/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Compression.BSA/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Compression.Zip/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Downloaders.Bethesda/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Downloaders.Dispatcher/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Downloaders.GameFile/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Downloaders.GoogleDrive/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Downloaders.Http/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Downloaders.Interfaces/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Downloaders.IPS4OAuth2Downloader/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Downloaders.Manual/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Downloaders.MediaFire/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Downloaders.Mega/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Downloaders.ModDB/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Downloaders.Nexus/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Downloaders.VerificationCache/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Downloaders.WabbajackCDN/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.DTOs/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.FileExtractor/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Hashing.PHash/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Hashing.xxHash64/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Installer/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.IO.Async/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Networking.BethesdaNet/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Networking.Discord/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Networking.GitHub/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Networking.Http/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Networking.Http.Interfaces/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Networking.NexusApi/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Networking.Steam/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Networking.WabbajackClientApi/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Paths/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Paths.IO/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.RateLimiter/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Server.Lib/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.Services.OSIntegrated/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.VFS/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Wabbajack.VFS.Interfaces/3.0.6.2": { + "type": "project", + "serviceable": false, + "sha512": "" + } + }, + "runtimes": { + "win10-x64": [ + "win10", + "win81-x64", + "win81", + "win8-x64", + "win8", + "win7-x64", + "win7", + "win-x64", + "win", + "any", + "base" + ], + "win10-x64-aot": [ + "win10-aot", + "win10-x64", + "win10", + "win81-x64-aot", + "win81-aot", + "win81-x64", + "win81", + "win8-x64-aot", + "win8-aot", + "win8-x64", + "win8", + "win7-x64-aot", + "win7-aot", + "win7-x64", + "win7", + "win-x64-aot", + "win-aot", + "win-x64", + "win", + "aot", + "any", + "base" + ] + } +} \ No newline at end of file diff --git a/ui/3.0.6.2/wabbajack-cli.dll b/ui/3.0.6.2/wabbajack-cli.dll new file mode 100644 index 0000000..533af36 Binary files /dev/null and b/ui/3.0.6.2/wabbajack-cli.dll differ diff --git a/ui/3.0.6.2/wabbajack-cli.exe b/ui/3.0.6.2/wabbajack-cli.exe new file mode 100644 index 0000000..c1d16b5 Binary files /dev/null and b/ui/3.0.6.2/wabbajack-cli.exe differ diff --git a/ui/3.0.6.2/wabbajack-cli.runtimeconfig.json b/ui/3.0.6.2/wabbajack-cli.runtimeconfig.json new file mode 100644 index 0000000..ddd28df --- /dev/null +++ b/ui/3.0.6.2/wabbajack-cli.runtimeconfig.json @@ -0,0 +1,24 @@ +{ + "runtimeOptions": { + "tfm": "net6.0", + "includedFrameworks": [ + { + "name": "Microsoft.NETCore.App", + "version": "6.0.11" + } + ], + "configProperties": { + "Microsoft.Extensions.DependencyInjection.VerifyOpenGenericServiceTrimmability": true, + "System.ComponentModel.TypeConverter.EnableUnsafeBinaryFormatterInDesigntimeLicenseContextSerialization": false, + "System.Reflection.Metadata.MetadataUpdater.IsSupported": false, + "System.Resources.ResourceManager.AllowCustomResourceTypes": false, + "System.Runtime.InteropServices.BuiltInComInterop.IsSupported": false, + "System.Runtime.InteropServices.EnableConsumingManagedCodeFromNativeHosting": false, + "System.Runtime.InteropServices.EnableCppCLIHostActivation": false, + "System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false, + "System.StartupHookProvider.IsSupported": false, + "System.Threading.Thread.EnableAutoreleasePool": false, + "System.Text.Encoding.EnableUnsafeUTF7Encoding": false + } + } +} \ No newline at end of file diff --git a/ui/SDVX5.jpg b/ui/SDVX5.jpg new file mode 100644 index 0000000..a98e298 Binary files /dev/null and b/ui/SDVX5.jpg differ diff --git a/ui/SDVX5scaled.jpg b/ui/SDVX5scaled.jpg new file mode 100644 index 0000000..f43802b Binary files /dev/null and b/ui/SDVX5scaled.jpg differ diff --git a/ui/Vars.js b/ui/Vars.js new file mode 100644 index 0000000..157a2de --- /dev/null +++ b/ui/Vars.js @@ -0,0 +1,4 @@ +var AsphyxiaPath = "C:\\test\\cmd.exe" +var SDVX3Path = "C:\\test\\cmd2.exe" +var SDVX4Path = "" +var SDVX5Path = "" \ No newline at end of file diff --git a/ui/get/LICENSE b/ui/get/LICENSE new file mode 100644 index 0000000..dc1402e --- /dev/null +++ b/ui/get/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) Contributors to the Electron project + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/ui/get/README.md b/ui/get/README.md new file mode 100644 index 0000000..4f306ca --- /dev/null +++ b/ui/get/README.md @@ -0,0 +1,137 @@ +# @electron/get + +> Download Electron release artifacts + +[![CircleCI](https://circleci.com/gh/electron/get.svg?style=svg)](https://circleci.com/gh/electron/get) + +## Usage + +### Simple: Downloading an Electron Binary ZIP + +```typescript +import { download } from '@electron/get'; + +// NB: Use this syntax within an async function, Node does not have support for +// top-level await as of Node 12. +const zipFilePath = await download('4.0.4'); +``` + +### Advanced: Downloading a macOS Electron Symbol File + + +```typescript +import { downloadArtifact } from '@electron/get'; + +// NB: Use this syntax within an async function, Node does not have support for +// top-level await as of Node 12. +const zipFilePath = await downloadArtifact({ + version: '4.0.4', + platform: 'darwin', + artifactName: 'electron', + artifactSuffix: 'symbols', + arch: 'x64', +}); +``` + +### Specifying a mirror + +To specify another location to download Electron assets from, the following options are +available: + +* `mirrorOptions` Object + * `mirror` String (optional) - The base URL of the mirror to download from. + * `nightlyMirror` String (optional) - The Electron nightly-specific mirror URL. + * `customDir` String (optional) - The name of the directory to download from, often scoped by version number. + * `customFilename` String (optional) - The name of the asset to download. + * `resolveAssetURL` Function (optional) - A function allowing customization of the url used to download the asset. + +Anatomy of a download URL, in terms of `mirrorOptions`: + +``` +https://github.com/electron/electron/releases/download/v4.0.4/electron-v4.0.4-linux-x64.zip +| | | | +------------------------------------------------------- ----------------------------- + | | + mirror / nightlyMirror | | customFilename + ------ + || + customDir +``` + +Example: + +```typescript +import { download } from '@electron/get'; + +const zipFilePath = await download('4.0.4', { + mirrorOptions: { + mirror: 'https://mirror.example.com/electron/', + customDir: 'custom', + customFilename: 'unofficial-electron-linux.zip' + } +}); +// Will download from https://mirror.example.com/electron/custom/unofficial-electron-linux.zip + +const nightlyZipFilePath = await download('8.0.0-nightly.20190901', { + mirrorOptions: { + nightlyMirror: 'https://nightly.example.com/', + customDir: 'nightlies', + customFilename: 'nightly-linux.zip' + } +}); +// Will download from https://nightly.example.com/nightlies/nightly-linux.zip +``` + +`customDir` can have the placeholder `{{ version }}`, which will be replaced by the version +specified (without the leading `v`). For example: + +```javascript +const zipFilePath = await download('4.0.4', { + mirrorOptions: { + mirror: 'https://mirror.example.com/electron/', + customDir: 'version-{{ version }}', + platform: 'linux', + arch: 'x64' + } +}); +// Will download from https://mirror.example.com/electron/version-4.0.4/electron-v4.0.4-linux-x64.zip +``` + +#### Using environment variables for mirror options +Mirror options can also be specified via the following environment variables: +* `ELECTRON_CUSTOM_DIR` - Specifies the custom directory to download from. +* `ELECTRON_CUSTOM_FILENAME` - Specifies the custom file name to download. +* `ELECTRON_MIRROR` - Specifies the URL of the server to download from if the version is not a nightly version. +* `ELECTRON_NIGHTLY_MIRROR` - Specifies the URL of the server to download from if the version is a nightly version. + +### Overriding the version downloaded + +The version downloaded can be overriden by setting the `ELECTRON_CUSTOM_VERSION` environment variable. +Setting this environment variable will override the version passed in to `download` or `downloadArtifact`. + +## How It Works + +This module downloads Electron to a known place on your system and caches it +so that future requests for that asset can be returned instantly. The cache +locations are: + +* Linux: `$XDG_CACHE_HOME` or `~/.cache/electron/` +* MacOS: `~/Library/Caches/electron/` +* Windows: `%LOCALAPPDATA%/electron/Cache` or `~/AppData/Local/electron/Cache/` + +By default, the module uses [`got`](https://github.com/sindresorhus/got) as the +downloader. As a result, you can use the same [options](https://github.com/sindresorhus/got#options) +via `downloadOptions`. + +### Progress Bar + +By default, a progress bar is shown when downloading an artifact for more than 30 seconds. To +disable, set the `ELECTRON_GET_NO_PROGRESS` environment variable to any non-empty value, or set +`quiet` to `true` in `downloadOptions`. If you need to monitor progress yourself via the API, set +`getProgressCallback` in `downloadOptions`, which has the same function signature as `got`'s +[`downloadProgress` event callback](https://github.com/sindresorhus/got#ondownloadprogress-progress). + +### Proxies + +Downstream packages should utilize the `initializeProxy` function to add HTTP(S) proxy support. If +the environment variable `ELECTRON_GET_USE_PROXY` is set, it is called automatically. diff --git a/ui/get/dist/cjs/Cache.d.ts b/ui/get/dist/cjs/Cache.d.ts new file mode 100644 index 0000000..626001a --- /dev/null +++ b/ui/get/dist/cjs/Cache.d.ts @@ -0,0 +1,8 @@ +export declare class Cache { + private cacheRoot; + constructor(cacheRoot?: string); + static getCacheDirectory(downloadUrl: string): string; + getCachePath(downloadUrl: string, fileName: string): string; + getPathForFileInCache(url: string, fileName: string): Promise; + putFileInCache(url: string, currentPath: string, fileName: string): Promise; +} diff --git a/ui/get/dist/cjs/Cache.js b/ui/get/dist/cjs/Cache.js new file mode 100644 index 0000000..b8cd197 --- /dev/null +++ b/ui/get/dist/cjs/Cache.js @@ -0,0 +1,60 @@ +"use strict"; +var __rest = (this && this.__rest) || function (s, e) { + var t = {}; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const debug_1 = require("debug"); +const env_paths_1 = require("env-paths"); +const fs = require("fs-extra"); +const path = require("path"); +const url = require("url"); +const crypto = require("crypto"); +const d = debug_1.default('@electron/get:cache'); +const defaultCacheRoot = env_paths_1.default('electron', { + suffix: '', +}).cache; +class Cache { + constructor(cacheRoot = defaultCacheRoot) { + this.cacheRoot = cacheRoot; + } + static getCacheDirectory(downloadUrl) { + const parsedDownloadUrl = url.parse(downloadUrl); + // eslint-disable-next-line @typescript-eslint/no-unused-vars + const { search, hash, pathname } = parsedDownloadUrl, rest = __rest(parsedDownloadUrl, ["search", "hash", "pathname"]); + const strippedUrl = url.format(Object.assign(Object.assign({}, rest), { pathname: path.dirname(pathname || 'electron') })); + return crypto + .createHash('sha256') + .update(strippedUrl) + .digest('hex'); + } + getCachePath(downloadUrl, fileName) { + return path.resolve(this.cacheRoot, Cache.getCacheDirectory(downloadUrl), fileName); + } + async getPathForFileInCache(url, fileName) { + const cachePath = this.getCachePath(url, fileName); + if (await fs.pathExists(cachePath)) { + return cachePath; + } + return null; + } + async putFileInCache(url, currentPath, fileName) { + const cachePath = this.getCachePath(url, fileName); + d(`Moving ${currentPath} to ${cachePath}`); + if (await fs.pathExists(cachePath)) { + d('* Replacing existing file'); + await fs.remove(cachePath); + } + await fs.move(currentPath, cachePath); + return cachePath; + } +} +exports.Cache = Cache; +//# sourceMappingURL=Cache.js.map \ No newline at end of file diff --git a/ui/get/dist/cjs/Cache.js.map b/ui/get/dist/cjs/Cache.js.map new file mode 100644 index 0000000..ec54c24 --- /dev/null +++ b/ui/get/dist/cjs/Cache.js.map @@ -0,0 +1 @@ +{"version":3,"file":"Cache.js","sourceRoot":"","sources":["../../src/Cache.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,iCAA0B;AAC1B,yCAAiC;AACjC,+BAA+B;AAC/B,6BAA6B;AAC7B,2BAA2B;AAC3B,iCAAiC;AAEjC,MAAM,CAAC,GAAG,eAAK,CAAC,qBAAqB,CAAC,CAAC;AAEvC,MAAM,gBAAgB,GAAG,mBAAQ,CAAC,UAAU,EAAE;IAC5C,MAAM,EAAE,EAAE;CACX,CAAC,CAAC,KAAK,CAAC;AAET,MAAa,KAAK;IAChB,YAAoB,YAAY,gBAAgB;QAA5B,cAAS,GAAT,SAAS,CAAmB;IAAG,CAAC;IAE7C,MAAM,CAAC,iBAAiB,CAAC,WAAmB;QACjD,MAAM,iBAAiB,GAAG,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QACjD,6DAA6D;QAC7D,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,KAAc,iBAAiB,EAA7B,gEAA6B,CAAC;QAC9D,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,iCAAM,IAAI,KAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,UAAU,CAAC,IAAG,CAAC;QAE5F,OAAO,MAAM;aACV,UAAU,CAAC,QAAQ,CAAC;aACpB,MAAM,CAAC,WAAW,CAAC;aACnB,MAAM,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC;IAEM,YAAY,CAAC,WAAmB,EAAE,QAAgB;QACvD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,iBAAiB,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,CAAC;IACtF,CAAC;IAEM,KAAK,CAAC,qBAAqB,CAAC,GAAW,EAAE,QAAgB;QAC9D,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACnD,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;YAClC,OAAO,SAAS,CAAC;SAClB;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,cAAc,CAAC,GAAW,EAAE,WAAmB,EAAE,QAAgB;QAC5E,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACnD,CAAC,CAAC,UAAU,WAAW,OAAO,SAAS,EAAE,CAAC,CAAC;QAC3C,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;YAClC,CAAC,CAAC,2BAA2B,CAAC,CAAC;YAC/B,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;SAC5B;QAED,MAAM,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QAEtC,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AAxCD,sBAwCC"} \ No newline at end of file diff --git a/ui/get/dist/cjs/Downloader.d.ts b/ui/get/dist/cjs/Downloader.d.ts new file mode 100644 index 0000000..8e5e40e --- /dev/null +++ b/ui/get/dist/cjs/Downloader.d.ts @@ -0,0 +1,3 @@ +export interface Downloader { + download(url: string, targetFilePath: string, options: T): Promise; +} diff --git a/ui/get/dist/cjs/Downloader.js b/ui/get/dist/cjs/Downloader.js new file mode 100644 index 0000000..5940840 --- /dev/null +++ b/ui/get/dist/cjs/Downloader.js @@ -0,0 +1,3 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +//# sourceMappingURL=Downloader.js.map \ No newline at end of file diff --git a/ui/get/dist/cjs/Downloader.js.map b/ui/get/dist/cjs/Downloader.js.map new file mode 100644 index 0000000..c6199d5 --- /dev/null +++ b/ui/get/dist/cjs/Downloader.js.map @@ -0,0 +1 @@ +{"version":3,"file":"Downloader.js","sourceRoot":"","sources":["../../src/Downloader.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/ui/get/dist/cjs/GotDownloader.d.ts b/ui/get/dist/cjs/GotDownloader.d.ts new file mode 100644 index 0000000..6494756 --- /dev/null +++ b/ui/get/dist/cjs/GotDownloader.d.ts @@ -0,0 +1,21 @@ +import { Progress as GotProgress, Options as GotOptions } from 'got'; +import { Downloader } from './Downloader'; +/** + * See [`got#options`](https://github.com/sindresorhus/got#options) for possible keys/values. + */ +export declare type GotDownloaderOptions = (GotOptions & { + isStream?: true; +}) & { + /** + * if defined, triggers every time `got`'s `downloadProgress` event callback is triggered. + */ + getProgressCallback?: (progress: GotProgress) => Promise; + /** + * if `true`, disables the console progress bar (setting the `ELECTRON_GET_NO_PROGRESS` + * environment variable to a non-empty value also does this). + */ + quiet?: boolean; +}; +export declare class GotDownloader implements Downloader { + download(url: string, targetFilePath: string, options?: GotDownloaderOptions): Promise; +} diff --git a/ui/get/dist/cjs/GotDownloader.js b/ui/get/dist/cjs/GotDownloader.js new file mode 100644 index 0000000..ddbab14 --- /dev/null +++ b/ui/get/dist/cjs/GotDownloader.js @@ -0,0 +1,76 @@ +"use strict"; +var __rest = (this && this.__rest) || function (s, e) { + var t = {}; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const fs = require("fs-extra"); +const got_1 = require("got"); +const path = require("path"); +const ProgressBar = require("progress"); +const PROGRESS_BAR_DELAY_IN_SECONDS = 30; +class GotDownloader { + async download(url, targetFilePath, options) { + if (!options) { + options = {}; + } + const { quiet, getProgressCallback } = options, gotOptions = __rest(options, ["quiet", "getProgressCallback"]); + let downloadCompleted = false; + let bar; + let progressPercent; + let timeout = undefined; + await fs.mkdirp(path.dirname(targetFilePath)); + const writeStream = fs.createWriteStream(targetFilePath); + if (!quiet || !process.env.ELECTRON_GET_NO_PROGRESS) { + const start = new Date(); + timeout = setTimeout(() => { + if (!downloadCompleted) { + bar = new ProgressBar(`Downloading ${path.basename(url)}: [:bar] :percent ETA: :eta seconds `, { + curr: progressPercent, + total: 100, + }); + // https://github.com/visionmedia/node-progress/issues/159 + // eslint-disable-next-line @typescript-eslint/no-explicit-any + bar.start = start; + } + }, PROGRESS_BAR_DELAY_IN_SECONDS * 1000); + } + await new Promise((resolve, reject) => { + const downloadStream = got_1.default.stream(url, gotOptions); + downloadStream.on('downloadProgress', async (progress) => { + progressPercent = progress.percent; + if (bar) { + bar.update(progress.percent); + } + if (getProgressCallback) { + await getProgressCallback(progress); + } + }); + downloadStream.on('error', error => { + if (error instanceof got_1.HTTPError && error.response.statusCode === 404) { + error.message += ` for ${error.response.url}`; + } + if (writeStream.destroy) { + writeStream.destroy(error); + } + reject(error); + }); + writeStream.on('error', error => reject(error)); + writeStream.on('close', () => resolve()); + downloadStream.pipe(writeStream); + }); + downloadCompleted = true; + if (timeout) { + clearTimeout(timeout); + } + } +} +exports.GotDownloader = GotDownloader; +//# sourceMappingURL=GotDownloader.js.map \ No newline at end of file diff --git a/ui/get/dist/cjs/GotDownloader.js.map b/ui/get/dist/cjs/GotDownloader.js.map new file mode 100644 index 0000000..d5cb566 --- /dev/null +++ b/ui/get/dist/cjs/GotDownloader.js.map @@ -0,0 +1 @@ +{"version":3,"file":"GotDownloader.js","sourceRoot":"","sources":["../../src/GotDownloader.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,+BAA+B;AAC/B,6BAAqF;AACrF,6BAA6B;AAC7B,wCAAwC;AAIxC,MAAM,6BAA6B,GAAG,EAAE,CAAC;AAiBzC,MAAa,aAAa;IACxB,KAAK,CAAC,QAAQ,CACZ,GAAW,EACX,cAAsB,EACtB,OAA8B;QAE9B,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,GAAG,EAAE,CAAC;SACd;QACD,MAAM,EAAE,KAAK,EAAE,mBAAmB,KAAoB,OAAO,EAAzB,8DAAyB,CAAC;QAC9D,IAAI,iBAAiB,GAAG,KAAK,CAAC;QAC9B,IAAI,GAA4B,CAAC;QACjC,IAAI,eAAuB,CAAC;QAC5B,IAAI,OAAO,GAA+B,SAAS,CAAC;QACpD,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC;QAC9C,MAAM,WAAW,GAAG,EAAE,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;QAEzD,IAAI,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE;YACnD,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC;YACzB,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;gBACxB,IAAI,CAAC,iBAAiB,EAAE;oBACtB,GAAG,GAAG,IAAI,WAAW,CACnB,eAAe,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,sCAAsC,EACvE;wBACE,IAAI,EAAE,eAAe;wBACrB,KAAK,EAAE,GAAG;qBACX,CACF,CAAC;oBACF,0DAA0D;oBAC1D,8DAA8D;oBAC7D,GAAW,CAAC,KAAK,GAAG,KAAK,CAAC;iBAC5B;YACH,CAAC,EAAE,6BAA6B,GAAG,IAAI,CAAC,CAAC;SAC1C;QACD,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC1C,MAAM,cAAc,GAAG,aAAG,CAAC,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YACnD,cAAc,CAAC,EAAE,CAAC,kBAAkB,EAAE,KAAK,EAAC,QAAQ,EAAC,EAAE;gBACrD,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC;gBACnC,IAAI,GAAG,EAAE;oBACP,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;iBAC9B;gBACD,IAAI,mBAAmB,EAAE;oBACvB,MAAM,mBAAmB,CAAC,QAAQ,CAAC,CAAC;iBACrC;YACH,CAAC,CAAC,CAAC;YACH,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;gBACjC,IAAI,KAAK,YAAY,eAAS,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,KAAK,GAAG,EAAE;oBACnE,KAAK,CAAC,OAAO,IAAI,QAAQ,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;iBAC/C;gBACD,IAAI,WAAW,CAAC,OAAO,EAAE;oBACvB,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;iBAC5B;gBAED,MAAM,CAAC,KAAK,CAAC,CAAC;YAChB,CAAC,CAAC,CAAC;YACH,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAChD,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;YAEzC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;QAEH,iBAAiB,GAAG,IAAI,CAAC;QACzB,IAAI,OAAO,EAAE;YACX,YAAY,CAAC,OAAO,CAAC,CAAC;SACvB;IACH,CAAC;CACF;AAlED,sCAkEC"} \ No newline at end of file diff --git a/ui/get/dist/cjs/artifact-utils.d.ts b/ui/get/dist/cjs/artifact-utils.d.ts new file mode 100644 index 0000000..e03c96e --- /dev/null +++ b/ui/get/dist/cjs/artifact-utils.d.ts @@ -0,0 +1,4 @@ +import { ElectronArtifactDetails } from './types'; +export declare function getArtifactFileName(details: ElectronArtifactDetails): string; +export declare function getArtifactRemoteURL(details: ElectronArtifactDetails): Promise; +export declare function getArtifactVersion(details: ElectronArtifactDetails): string; diff --git a/ui/get/dist/cjs/artifact-utils.js b/ui/get/dist/cjs/artifact-utils.js new file mode 100644 index 0000000..5766965 --- /dev/null +++ b/ui/get/dist/cjs/artifact-utils.js @@ -0,0 +1,66 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const utils_1 = require("./utils"); +const BASE_URL = 'https://github.com/electron/electron/releases/download/'; +const NIGHTLY_BASE_URL = 'https://github.com/electron/nightlies/releases/download/'; +function getArtifactFileName(details) { + utils_1.ensureIsTruthyString(details, 'artifactName'); + if (details.isGeneric) { + return details.artifactName; + } + utils_1.ensureIsTruthyString(details, 'arch'); + utils_1.ensureIsTruthyString(details, 'platform'); + utils_1.ensureIsTruthyString(details, 'version'); + return `${[ + details.artifactName, + details.version, + details.platform, + details.arch, + ...(details.artifactSuffix ? [details.artifactSuffix] : []), + ].join('-')}.zip`; +} +exports.getArtifactFileName = getArtifactFileName; +function mirrorVar(name, options, defaultValue) { + // Convert camelCase to camel_case for env var reading + const snakeName = name.replace(/([a-z])([A-Z])/g, (_, a, b) => `${a}_${b}`).toLowerCase(); + return ( + // .npmrc + process.env[`npm_config_electron_${name.toLowerCase()}`] || + process.env[`NPM_CONFIG_ELECTRON_${snakeName.toUpperCase()}`] || + process.env[`npm_config_electron_${snakeName}`] || + // package.json + process.env[`npm_package_config_electron_${name}`] || + process.env[`npm_package_config_electron_${snakeName.toLowerCase()}`] || + // env + process.env[`ELECTRON_${snakeName.toUpperCase()}`] || + options[name] || + defaultValue); +} +async function getArtifactRemoteURL(details) { + const opts = details.mirrorOptions || {}; + let base = mirrorVar('mirror', opts, BASE_URL); + if (details.version.includes('nightly')) { + const nightlyDeprecated = mirrorVar('nightly_mirror', opts, ''); + if (nightlyDeprecated) { + base = nightlyDeprecated; + console.warn(`nightly_mirror is deprecated, please use nightlyMirror`); + } + else { + base = mirrorVar('nightlyMirror', opts, NIGHTLY_BASE_URL); + } + } + const path = mirrorVar('customDir', opts, details.version).replace('{{ version }}', details.version.replace(/^v/, '')); + const file = mirrorVar('customFilename', opts, getArtifactFileName(details)); + // Allow customized download URL resolution. + if (opts.resolveAssetURL) { + const url = await opts.resolveAssetURL(details); + return url; + } + return `${base}${path}/${file}`; +} +exports.getArtifactRemoteURL = getArtifactRemoteURL; +function getArtifactVersion(details) { + return utils_1.normalizeVersion(mirrorVar('customVersion', details.mirrorOptions || {}, details.version)); +} +exports.getArtifactVersion = getArtifactVersion; +//# sourceMappingURL=artifact-utils.js.map \ No newline at end of file diff --git a/ui/get/dist/cjs/artifact-utils.js.map b/ui/get/dist/cjs/artifact-utils.js.map new file mode 100644 index 0000000..bafa6f2 --- /dev/null +++ b/ui/get/dist/cjs/artifact-utils.js.map @@ -0,0 +1 @@ +{"version":3,"file":"artifact-utils.js","sourceRoot":"","sources":["../../src/artifact-utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/ui/get/dist/cjs/downloader-resolver.d.ts b/ui/get/dist/cjs/downloader-resolver.d.ts new file mode 100644 index 0000000..f7f09b2 --- /dev/null +++ b/ui/get/dist/cjs/downloader-resolver.d.ts @@ -0,0 +1,3 @@ +import { DownloadOptions } from './types'; +import { Downloader } from './Downloader'; +export declare function getDownloaderForSystem(): Promise>; diff --git a/ui/get/dist/cjs/downloader-resolver.js b/ui/get/dist/cjs/downloader-resolver.js new file mode 100644 index 0000000..52a51d3 --- /dev/null +++ b/ui/get/dist/cjs/downloader-resolver.js @@ -0,0 +1,12 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +async function getDownloaderForSystem() { + // TODO: Resolve the downloader or default to GotDownloader + // Current thoughts are a dot-file traversal for something like + // ".electron.downloader" which would be a text file with the name of the + // npm module to import() and use as the downloader + const { GotDownloader } = await Promise.resolve().then(() => require('./GotDownloader')); + return new GotDownloader(); +} +exports.getDownloaderForSystem = getDownloaderForSystem; +//# sourceMappingURL=downloader-resolver.js.map \ No newline at end of file diff --git a/ui/get/dist/cjs/downloader-resolver.js.map b/ui/get/dist/cjs/downloader-resolver.js.map new file mode 100644 index 0000000..586f565 --- /dev/null +++ b/ui/get/dist/cjs/downloader-resolver.js.map @@ -0,0 +1 @@ +{"version":3,"file":"downloader-resolver.js","sourceRoot":"","sources":["../../src/downloader-resolver.ts"],"names":[],"mappings":";;AAGO,KAAK,UAAU,sBAAsB;IAC1C,2DAA2D;IAC3D,+DAA+D;IAC/D,yEAAyE;IACzE,mDAAmD;IACnD,MAAM,EAAE,aAAa,EAAE,GAAG,2CAAa,iBAAiB,EAAC,CAAC;IAC1D,OAAO,IAAI,aAAa,EAAE,CAAC;AAC7B,CAAC;AAPD,wDAOC"} \ No newline at end of file diff --git a/ui/get/dist/cjs/index.d.ts b/ui/get/dist/cjs/index.d.ts new file mode 100644 index 0000000..93e709e --- /dev/null +++ b/ui/get/dist/cjs/index.d.ts @@ -0,0 +1,18 @@ +import { ElectronDownloadRequestOptions, ElectronPlatformArtifactDetailsWithDefaults } from './types'; +export { getHostArch } from './utils'; +export { initializeProxy } from './proxy'; +export * from './types'; +/** + * Downloads an artifact from an Electron release and returns an absolute path + * to the downloaded file. + * + * @param artifactDetails - The information required to download the artifact + */ +export declare function downloadArtifact(_artifactDetails: ElectronPlatformArtifactDetailsWithDefaults): Promise; +/** + * Downloads a specific version of Electron and returns an absolute path to a + * ZIP file. + * + * @param version - The version of Electron you want to download + */ +export declare function download(version: string, options?: ElectronDownloadRequestOptions): Promise; diff --git a/ui/get/dist/cjs/index.js b/ui/get/dist/cjs/index.js new file mode 100644 index 0000000..781ceda --- /dev/null +++ b/ui/get/dist/cjs/index.js @@ -0,0 +1,130 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const debug_1 = require("debug"); +const fs = require("fs-extra"); +const path = require("path"); +const semver = require("semver"); +const sumchecker = require("sumchecker"); +const artifact_utils_1 = require("./artifact-utils"); +const Cache_1 = require("./Cache"); +const downloader_resolver_1 = require("./downloader-resolver"); +const proxy_1 = require("./proxy"); +const utils_1 = require("./utils"); +var utils_2 = require("./utils"); +exports.getHostArch = utils_2.getHostArch; +var proxy_2 = require("./proxy"); +exports.initializeProxy = proxy_2.initializeProxy; +const d = debug_1.default('@electron/get:index'); +if (process.env.ELECTRON_GET_USE_PROXY) { + proxy_1.initializeProxy(); +} +/** + * Downloads an artifact from an Electron release and returns an absolute path + * to the downloaded file. + * + * @param artifactDetails - The information required to download the artifact + */ +async function downloadArtifact(_artifactDetails) { + const artifactDetails = Object.assign({}, _artifactDetails); + if (!_artifactDetails.isGeneric) { + const platformArtifactDetails = artifactDetails; + if (!platformArtifactDetails.platform) { + d('No platform found, defaulting to the host platform'); + platformArtifactDetails.platform = process.platform; + } + if (platformArtifactDetails.arch) { + platformArtifactDetails.arch = utils_1.getNodeArch(platformArtifactDetails.arch); + } + else { + d('No arch found, defaulting to the host arch'); + platformArtifactDetails.arch = utils_1.getHostArch(); + } + } + utils_1.ensureIsTruthyString(artifactDetails, 'version'); + artifactDetails.version = artifact_utils_1.getArtifactVersion(artifactDetails); + const fileName = artifact_utils_1.getArtifactFileName(artifactDetails); + const url = await artifact_utils_1.getArtifactRemoteURL(artifactDetails); + const cache = new Cache_1.Cache(artifactDetails.cacheRoot); + // Do not check if the file exists in the cache when force === true + if (!artifactDetails.force) { + d(`Checking the cache (${artifactDetails.cacheRoot}) for ${fileName} (${url})`); + const cachedPath = await cache.getPathForFileInCache(url, fileName); + if (cachedPath === null) { + d('Cache miss'); + } + else { + d('Cache hit'); + return cachedPath; + } + } + if (!artifactDetails.isGeneric && + utils_1.isOfficialLinuxIA32Download(artifactDetails.platform, artifactDetails.arch, artifactDetails.version, artifactDetails.mirrorOptions)) { + console.warn('Official Linux/ia32 support is deprecated.'); + console.warn('For more info: https://electronjs.org/blog/linux-32bit-support'); + } + return await utils_1.withTempDirectoryIn(artifactDetails.tempDirectory, async (tempFolder) => { + const tempDownloadPath = path.resolve(tempFolder, artifact_utils_1.getArtifactFileName(artifactDetails)); + const downloader = artifactDetails.downloader || (await downloader_resolver_1.getDownloaderForSystem()); + d(`Downloading ${url} to ${tempDownloadPath} with options: ${JSON.stringify(artifactDetails.downloadOptions)}`); + await downloader.download(url, tempDownloadPath, artifactDetails.downloadOptions); + // Don't try to verify the hash of the hash file itself + // and for older versions that don't have a SHASUMS256.txt + if (!artifactDetails.artifactName.startsWith('SHASUMS256') && + !artifactDetails.unsafelyDisableChecksums && + semver.gte(artifactDetails.version, '1.3.2')) { + await utils_1.withTempDirectory(async (tmpDir) => { + let shasumPath; + const checksums = artifactDetails.checksums; + if (checksums) { + shasumPath = path.resolve(tmpDir, 'SHASUMS256.txt'); + const fileNames = Object.keys(checksums); + if (fileNames.length === 0) { + throw new Error('Provided "checksums" object is empty, cannot generate a valid SHASUMS256.txt'); + } + const generatedChecksums = fileNames + .map(fileName => `${checksums[fileName]} *${fileName}`) + .join('\n'); + await fs.writeFile(shasumPath, generatedChecksums); + } + else { + shasumPath = await downloadArtifact({ + isGeneric: true, + version: artifactDetails.version, + artifactName: 'SHASUMS256.txt', + force: artifactDetails.force, + downloadOptions: artifactDetails.downloadOptions, + cacheRoot: artifactDetails.cacheRoot, + downloader: artifactDetails.downloader, + mirrorOptions: artifactDetails.mirrorOptions, + }); + } + // For versions 1.3.2 - 1.3.4, need to overwrite the `defaultTextEncoding` option: + // https://github.com/electron/electron/pull/6676#discussion_r75332120 + if (semver.satisfies(artifactDetails.version, '1.3.2 - 1.3.4')) { + const validatorOptions = {}; + validatorOptions.defaultTextEncoding = 'binary'; + const checker = new sumchecker.ChecksumValidator('sha256', shasumPath, validatorOptions); + await checker.validate(path.dirname(tempDownloadPath), path.basename(tempDownloadPath)); + } + else { + await sumchecker('sha256', shasumPath, path.dirname(tempDownloadPath), [ + path.basename(tempDownloadPath), + ]); + } + }); + } + return await cache.putFileInCache(url, tempDownloadPath, fileName); + }); +} +exports.downloadArtifact = downloadArtifact; +/** + * Downloads a specific version of Electron and returns an absolute path to a + * ZIP file. + * + * @param version - The version of Electron you want to download + */ +function download(version, options) { + return downloadArtifact(Object.assign(Object.assign({}, options), { version, platform: process.platform, arch: process.arch, artifactName: 'electron' })); +} +exports.download = download; +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/ui/get/dist/cjs/index.js.map b/ui/get/dist/cjs/index.js.map new file mode 100644 index 0000000..ac5d93c --- /dev/null +++ b/ui/get/dist/cjs/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/ui/get/dist/cjs/proxy.d.ts b/ui/get/dist/cjs/proxy.d.ts new file mode 100644 index 0000000..df3e16a --- /dev/null +++ b/ui/get/dist/cjs/proxy.d.ts @@ -0,0 +1,4 @@ +/** + * Initializes a third-party proxy module for HTTP(S) requests. + */ +export declare function initializeProxy(): void; diff --git a/ui/get/dist/cjs/proxy.js b/ui/get/dist/cjs/proxy.js new file mode 100644 index 0000000..09c99b5 --- /dev/null +++ b/ui/get/dist/cjs/proxy.js @@ -0,0 +1,27 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const debug = require("debug"); +const utils_1 = require("./utils"); +const d = debug('@electron/get:proxy'); +/** + * Initializes a third-party proxy module for HTTP(S) requests. + */ +function initializeProxy() { + try { + // See: https://github.com/electron/get/pull/214#discussion_r798845713 + const env = utils_1.getEnv('GLOBAL_AGENT_'); + utils_1.setEnv('GLOBAL_AGENT_HTTP_PROXY', env('HTTP_PROXY')); + utils_1.setEnv('GLOBAL_AGENT_HTTPS_PROXY', env('HTTPS_PROXY')); + utils_1.setEnv('GLOBAL_AGENT_NO_PROXY', env('NO_PROXY')); + /** + * TODO: replace global-agent with a hpagent. @BlackHole1 + * https://github.com/sindresorhus/got/blob/HEAD/documentation/tips.md#proxying + */ + require('global-agent').bootstrap(); + } + catch (e) { + d('Could not load either proxy modules, built-in proxy support not available:', e); + } +} +exports.initializeProxy = initializeProxy; +//# sourceMappingURL=proxy.js.map \ No newline at end of file diff --git a/ui/get/dist/cjs/proxy.js.map b/ui/get/dist/cjs/proxy.js.map new file mode 100644 index 0000000..d909824 --- /dev/null +++ b/ui/get/dist/cjs/proxy.js.map @@ -0,0 +1 @@ +{"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../src/proxy.ts"],"names":[],"mappings":";;AAAA,+BAA+B;AAC/B,mCAAyC;AAEzC,MAAM,CAAC,GAAG,KAAK,CAAC,qBAAqB,CAAC,CAAC;AAEvC;;GAEG;AACH,SAAgB,eAAe;IAC7B,IAAI;QACF,sEAAsE;QACtE,MAAM,GAAG,GAAG,cAAM,CAAC,eAAe,CAAC,CAAC;QAEpC,cAAM,CAAC,yBAAyB,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC;QACrD,cAAM,CAAC,0BAA0B,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC;QACvD,cAAM,CAAC,uBAAuB,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;QAEjD;;;WAGG;QACH,OAAO,CAAC,cAAc,CAAC,CAAC,SAAS,EAAE,CAAC;KACrC;IAAC,OAAO,CAAC,EAAE;QACV,CAAC,CAAC,4EAA4E,EAAE,CAAC,CAAC,CAAC;KACpF;AACH,CAAC;AAjBD,0CAiBC"} \ No newline at end of file diff --git a/ui/get/dist/cjs/types.d.ts b/ui/get/dist/cjs/types.d.ts new file mode 100644 index 0000000..a8284bb --- /dev/null +++ b/ui/get/dist/cjs/types.d.ts @@ -0,0 +1,129 @@ +import { Downloader } from './Downloader'; +export declare type DownloadOptions = any; +export interface MirrorOptions { + /** + * DEPRECATED - see nightlyMirror. + */ + nightly_mirror?: string; + /** + * The Electron nightly-specific mirror URL. + */ + nightlyMirror?: string; + /** + * The base URL of the mirror to download from, + * e.g https://github.com/electron/electron/releases/download + */ + mirror?: string; + /** + * The name of the directory to download from, + * often scoped by version number e.g 'v4.0.4' + */ + customDir?: string; + /** + * The name of the asset to download, + * e.g 'electron-v4.0.4-linux-x64.zip' + */ + customFilename?: string; + /** + * The version of the asset to download, + * e.g '4.0.4' + */ + customVersion?: string; + /** + * A function allowing customization of the url returned + * from getArtifactRemoteURL(). + */ + resolveAssetURL?: (opts: DownloadOptions) => Promise; +} +export interface ElectronDownloadRequest { + /** + * The version of Electron associated with the artifact. + */ + version: string; + /** + * The type of artifact. For example: + * * `electron` + * * `ffmpeg` + */ + artifactName: string; +} +export interface ElectronDownloadRequestOptions { + /** + * Whether to download an artifact regardless of whether it's in the cache directory. + * + * Defaults to `false`. + */ + force?: boolean; + /** + * When set to `true`, disables checking that the artifact download completed successfully + * with the correct payload. + * + * Defaults to `false`. + */ + unsafelyDisableChecksums?: boolean; + /** + * Provides checksums for the artifact as strings. + * Can be used if you already know the checksums of the Electron artifact + * you are downloading and want to skip the checksum file download + * without skipping the checksum validation. + * + * This should be an object whose keys are the file names of the artifacts and + * the values are their respective SHA256 checksums. + */ + checksums?: Record; + /** + * The directory that caches Electron artifact downloads. + * + * The default value is dependent upon the host platform: + * + * * Linux: `$XDG_CACHE_HOME` or `~/.cache/electron/` + * * MacOS: `~/Library/Caches/electron/` + * * Windows: `%LOCALAPPDATA%/electron/Cache` or `~/AppData/Local/electron/Cache/` + */ + cacheRoot?: string; + /** + * Options passed to the downloader module. + */ + downloadOptions?: DownloadOptions; + /** + * Options related to specifying an artifact mirror. + */ + mirrorOptions?: MirrorOptions; + /** + * The custom [[Downloader]] class used to download artifacts. Defaults to the + * built-in [[GotDownloader]]. + */ + downloader?: Downloader; + /** + * A temporary directory for downloads. + * It is used before artifacts are put into cache. + */ + tempDirectory?: string; +} +export declare type ElectronPlatformArtifactDetails = { + /** + * The target artifact platform. These are Node-style platform names, for example: + * * `win32` + * * `darwin` + * * `linux` + */ + platform: string; + /** + * The target artifact architecture. These are Node-style architecture names, for example: + * * `ia32` + * * `x64` + * * `armv7l` + */ + arch: string; + artifactSuffix?: string; + isGeneric?: false; +} & ElectronDownloadRequest & ElectronDownloadRequestOptions; +export declare type ElectronGenericArtifactDetails = { + isGeneric: true; +} & ElectronDownloadRequest & ElectronDownloadRequestOptions; +export declare type ElectronArtifactDetails = ElectronPlatformArtifactDetails | ElectronGenericArtifactDetails; +export declare type Omit = Pick>; +export declare type ElectronPlatformArtifactDetailsWithDefaults = (Omit & { + platform?: string; + arch?: string; +}) | ElectronGenericArtifactDetails; diff --git a/ui/get/dist/cjs/types.js b/ui/get/dist/cjs/types.js new file mode 100644 index 0000000..11e638d --- /dev/null +++ b/ui/get/dist/cjs/types.js @@ -0,0 +1,3 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/ui/get/dist/cjs/types.js.map b/ui/get/dist/cjs/types.js.map new file mode 100644 index 0000000..7b5fff8 --- /dev/null +++ b/ui/get/dist/cjs/types.js.map @@ -0,0 +1 @@ +{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/ui/get/dist/cjs/utils.d.ts b/ui/get/dist/cjs/utils.d.ts new file mode 100644 index 0000000..3cc40c1 --- /dev/null +++ b/ui/get/dist/cjs/utils.d.ts @@ -0,0 +1,25 @@ +export declare function withTempDirectoryIn(parentDirectory: string | undefined, fn: (directory: string) => Promise): Promise; +export declare function withTempDirectory(fn: (directory: string) => Promise): Promise; +export declare function normalizeVersion(version: string): string; +/** + * Runs the `uname` command and returns the trimmed output. + */ +export declare function uname(): string; +/** + * Generates an architecture name that would be used in an Electron or Node.js + * download file name. + */ +export declare function getNodeArch(arch: string): string; +/** + * Generates an architecture name that would be used in an Electron or Node.js + * download file name, from the `process` module information. + */ +export declare function getHostArch(): string; +export declare function ensureIsTruthyString(obj: T, key: K): void; +export declare function isOfficialLinuxIA32Download(platform: string, arch: string, version: string, mirrorOptions?: object): boolean; +/** + * Find the value of a environment variable which may or may not have the + * prefix, in a case-insensitive manner. + */ +export declare function getEnv(prefix?: string): (name: string) => string | undefined; +export declare function setEnv(key: string, value: string | undefined): void; diff --git a/ui/get/dist/cjs/utils.js b/ui/get/dist/cjs/utils.js new file mode 100644 index 0000000..4806842 --- /dev/null +++ b/ui/get/dist/cjs/utils.js @@ -0,0 +1,107 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const childProcess = require("child_process"); +const fs = require("fs-extra"); +const os = require("os"); +const path = require("path"); +async function useAndRemoveDirectory(directory, fn) { + let result; + try { + result = await fn(directory); + } + finally { + await fs.remove(directory); + } + return result; +} +async function withTempDirectoryIn(parentDirectory = os.tmpdir(), fn) { + const tempDirectoryPrefix = 'electron-download-'; + const tempDirectory = await fs.mkdtemp(path.resolve(parentDirectory, tempDirectoryPrefix)); + return useAndRemoveDirectory(tempDirectory, fn); +} +exports.withTempDirectoryIn = withTempDirectoryIn; +async function withTempDirectory(fn) { + return withTempDirectoryIn(undefined, fn); +} +exports.withTempDirectory = withTempDirectory; +function normalizeVersion(version) { + if (!version.startsWith('v')) { + return `v${version}`; + } + return version; +} +exports.normalizeVersion = normalizeVersion; +/** + * Runs the `uname` command and returns the trimmed output. + */ +function uname() { + return childProcess + .execSync('uname -m') + .toString() + .trim(); +} +exports.uname = uname; +/** + * Generates an architecture name that would be used in an Electron or Node.js + * download file name. + */ +function getNodeArch(arch) { + if (arch === 'arm') { + // eslint-disable-next-line @typescript-eslint/no-explicit-any + switch (process.config.variables.arm_version) { + case '6': + return uname(); + case '7': + default: + return 'armv7l'; + } + } + return arch; +} +exports.getNodeArch = getNodeArch; +/** + * Generates an architecture name that would be used in an Electron or Node.js + * download file name, from the `process` module information. + */ +function getHostArch() { + return getNodeArch(process.arch); +} +exports.getHostArch = getHostArch; +function ensureIsTruthyString(obj, key) { + if (!obj[key] || typeof obj[key] !== 'string') { + throw new Error(`Expected property "${key}" to be provided as a string but it was not`); + } +} +exports.ensureIsTruthyString = ensureIsTruthyString; +function isOfficialLinuxIA32Download(platform, arch, version, mirrorOptions) { + return (platform === 'linux' && + arch === 'ia32' && + Number(version.slice(1).split('.')[0]) >= 4 && + typeof mirrorOptions === 'undefined'); +} +exports.isOfficialLinuxIA32Download = isOfficialLinuxIA32Download; +/** + * Find the value of a environment variable which may or may not have the + * prefix, in a case-insensitive manner. + */ +function getEnv(prefix = '') { + const envsLowerCase = {}; + for (const envKey in process.env) { + envsLowerCase[envKey.toLowerCase()] = process.env[envKey]; + } + return (name) => { + return (envsLowerCase[`${prefix}${name}`.toLowerCase()] || + envsLowerCase[name.toLowerCase()] || + undefined); + }; +} +exports.getEnv = getEnv; +function setEnv(key, value) { + // The `void` operator always returns `undefined`. + // See: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/void + if (value !== void 0) { + process.env[key] = value; + } +} +exports.setEnv = setEnv; +//# sourceMappingURL=utils.js.map \ No newline at end of file diff --git a/ui/get/dist/cjs/utils.js.map b/ui/get/dist/cjs/utils.js.map new file mode 100644 index 0000000..5add151 --- /dev/null +++ b/ui/get/dist/cjs/utils.js.map @@ -0,0 +1 @@ +{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":";;AAAA,8CAA8C;AAC9C,+BAA+B;AAC/B,yBAAyB;AACzB,6BAA6B;AAE7B,KAAK,UAAU,qBAAqB,CAClC,SAAiB,EACjB,EAAqC;IAErC,IAAI,MAAS,CAAC;IACd,IAAI;QACF,MAAM,GAAG,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC;KAC9B;YAAS;QACR,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;KAC5B;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAEM,KAAK,UAAU,mBAAmB,CACvC,kBAA0B,EAAE,CAAC,MAAM,EAAE,EACrC,EAAqC;IAErC,MAAM,mBAAmB,GAAG,oBAAoB,CAAC;IACjD,MAAM,aAAa,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAC3F,OAAO,qBAAqB,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;AAClD,CAAC;AAPD,kDAOC;AAEM,KAAK,UAAU,iBAAiB,CAAI,EAAqC;IAC9E,OAAO,mBAAmB,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;AAC5C,CAAC;AAFD,8CAEC;AAED,SAAgB,gBAAgB,CAAC,OAAe;IAC9C,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;QAC5B,OAAO,IAAI,OAAO,EAAE,CAAC;KACtB;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AALD,4CAKC;AAED;;GAEG;AACH,SAAgB,KAAK;IACnB,OAAO,YAAY;SAChB,QAAQ,CAAC,UAAU,CAAC;SACpB,QAAQ,EAAE;SACV,IAAI,EAAE,CAAC;AACZ,CAAC;AALD,sBAKC;AAED;;;GAGG;AACH,SAAgB,WAAW,CAAC,IAAY;IACtC,IAAI,IAAI,KAAK,KAAK,EAAE;QAClB,8DAA8D;QAC9D,QAAS,OAAO,CAAC,MAAM,CAAC,SAAiB,CAAC,WAAW,EAAE;YACrD,KAAK,GAAG;gBACN,OAAO,KAAK,EAAE,CAAC;YACjB,KAAK,GAAG,CAAC;YACT;gBACE,OAAO,QAAQ,CAAC;SACnB;KACF;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAbD,kCAaC;AAED;;;GAGG;AACH,SAAgB,WAAW;IACzB,OAAO,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AACnC,CAAC;AAFD,kCAEC;AAED,SAAgB,oBAAoB,CAAuB,GAAM,EAAE,GAAM;IACvE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE;QAC7C,MAAM,IAAI,KAAK,CAAC,sBAAsB,GAAG,6CAA6C,CAAC,CAAC;KACzF;AACH,CAAC;AAJD,oDAIC;AAED,SAAgB,2BAA2B,CACzC,QAAgB,EAChB,IAAY,EACZ,OAAe,EACf,aAAsB;IAEtB,OAAO,CACL,QAAQ,KAAK,OAAO;QACpB,IAAI,KAAK,MAAM;QACf,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC3C,OAAO,aAAa,KAAK,WAAW,CACrC,CAAC;AACJ,CAAC;AAZD,kEAYC;AAED;;;GAGG;AACH,SAAgB,MAAM,CAAC,MAAM,GAAG,EAAE;IAChC,MAAM,aAAa,GAAsB,EAAE,CAAC;IAE5C,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,GAAG,EAAE;QAChC,aAAa,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;KAC3D;IAED,OAAO,CAAC,IAAY,EAAsB,EAAE;QAC1C,OAAO,CACL,aAAa,CAAC,GAAG,MAAM,GAAG,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YAC/C,aAAa,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACjC,SAAS,CACV,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAdD,wBAcC;AAED,SAAgB,MAAM,CAAC,GAAW,EAAE,KAAyB;IAC3D,kDAAkD;IAClD,wFAAwF;IACxF,IAAI,KAAK,KAAK,KAAK,CAAC,EAAE;QACpB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;KAC1B;AACH,CAAC;AAND,wBAMC"} \ No newline at end of file diff --git a/ui/get/dist/esm/Cache.d.ts b/ui/get/dist/esm/Cache.d.ts new file mode 100644 index 0000000..626001a --- /dev/null +++ b/ui/get/dist/esm/Cache.d.ts @@ -0,0 +1,8 @@ +export declare class Cache { + private cacheRoot; + constructor(cacheRoot?: string); + static getCacheDirectory(downloadUrl: string): string; + getCachePath(downloadUrl: string, fileName: string): string; + getPathForFileInCache(url: string, fileName: string): Promise; + putFileInCache(url: string, currentPath: string, fileName: string): Promise; +} diff --git a/ui/get/dist/esm/Cache.js b/ui/get/dist/esm/Cache.js new file mode 100644 index 0000000..4801010 --- /dev/null +++ b/ui/get/dist/esm/Cache.js @@ -0,0 +1,57 @@ +var __rest = (this && this.__rest) || function (s, e) { + var t = {}; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +}; +import debug from 'debug'; +import envPaths from 'env-paths'; +import * as fs from 'fs-extra'; +import * as path from 'path'; +import * as url from 'url'; +import * as crypto from 'crypto'; +const d = debug('@electron/get:cache'); +const defaultCacheRoot = envPaths('electron', { + suffix: '', +}).cache; +export class Cache { + constructor(cacheRoot = defaultCacheRoot) { + this.cacheRoot = cacheRoot; + } + static getCacheDirectory(downloadUrl) { + const parsedDownloadUrl = url.parse(downloadUrl); + // eslint-disable-next-line @typescript-eslint/no-unused-vars + const { search, hash, pathname } = parsedDownloadUrl, rest = __rest(parsedDownloadUrl, ["search", "hash", "pathname"]); + const strippedUrl = url.format(Object.assign(Object.assign({}, rest), { pathname: path.dirname(pathname || 'electron') })); + return crypto + .createHash('sha256') + .update(strippedUrl) + .digest('hex'); + } + getCachePath(downloadUrl, fileName) { + return path.resolve(this.cacheRoot, Cache.getCacheDirectory(downloadUrl), fileName); + } + async getPathForFileInCache(url, fileName) { + const cachePath = this.getCachePath(url, fileName); + if (await fs.pathExists(cachePath)) { + return cachePath; + } + return null; + } + async putFileInCache(url, currentPath, fileName) { + const cachePath = this.getCachePath(url, fileName); + d(`Moving ${currentPath} to ${cachePath}`); + if (await fs.pathExists(cachePath)) { + d('* Replacing existing file'); + await fs.remove(cachePath); + } + await fs.move(currentPath, cachePath); + return cachePath; + } +} +//# sourceMappingURL=Cache.js.map \ No newline at end of file diff --git a/ui/get/dist/esm/Cache.js.map b/ui/get/dist/esm/Cache.js.map new file mode 100644 index 0000000..943403b --- /dev/null +++ b/ui/get/dist/esm/Cache.js.map @@ -0,0 +1 @@ +{"version":3,"file":"Cache.js","sourceRoot":"","sources":["../../src/Cache.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,QAAQ,MAAM,WAAW,CAAC;AACjC,OAAO,KAAK,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAC3B,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAEjC,MAAM,CAAC,GAAG,KAAK,CAAC,qBAAqB,CAAC,CAAC;AAEvC,MAAM,gBAAgB,GAAG,QAAQ,CAAC,UAAU,EAAE;IAC5C,MAAM,EAAE,EAAE;CACX,CAAC,CAAC,KAAK,CAAC;AAET,MAAM,OAAO,KAAK;IAChB,YAAoB,YAAY,gBAAgB;QAA5B,cAAS,GAAT,SAAS,CAAmB;IAAG,CAAC;IAE7C,MAAM,CAAC,iBAAiB,CAAC,WAAmB;QACjD,MAAM,iBAAiB,GAAG,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QACjD,6DAA6D;QAC7D,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,KAAc,iBAAiB,EAA7B,gEAA6B,CAAC;QAC9D,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,iCAAM,IAAI,KAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,UAAU,CAAC,IAAG,CAAC;QAE5F,OAAO,MAAM;aACV,UAAU,CAAC,QAAQ,CAAC;aACpB,MAAM,CAAC,WAAW,CAAC;aACnB,MAAM,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC;IAEM,YAAY,CAAC,WAAmB,EAAE,QAAgB;QACvD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,iBAAiB,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,CAAC;IACtF,CAAC;IAEM,KAAK,CAAC,qBAAqB,CAAC,GAAW,EAAE,QAAgB;QAC9D,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACnD,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;YAClC,OAAO,SAAS,CAAC;SAClB;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,cAAc,CAAC,GAAW,EAAE,WAAmB,EAAE,QAAgB;QAC5E,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACnD,CAAC,CAAC,UAAU,WAAW,OAAO,SAAS,EAAE,CAAC,CAAC;QAC3C,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;YAClC,CAAC,CAAC,2BAA2B,CAAC,CAAC;YAC/B,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;SAC5B;QAED,MAAM,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QAEtC,OAAO,SAAS,CAAC;IACnB,CAAC;CACF"} \ No newline at end of file diff --git a/ui/get/dist/esm/Downloader.d.ts b/ui/get/dist/esm/Downloader.d.ts new file mode 100644 index 0000000..8e5e40e --- /dev/null +++ b/ui/get/dist/esm/Downloader.d.ts @@ -0,0 +1,3 @@ +export interface Downloader { + download(url: string, targetFilePath: string, options: T): Promise; +} diff --git a/ui/get/dist/esm/Downloader.js b/ui/get/dist/esm/Downloader.js new file mode 100644 index 0000000..6ff5866 --- /dev/null +++ b/ui/get/dist/esm/Downloader.js @@ -0,0 +1 @@ +//# sourceMappingURL=Downloader.js.map \ No newline at end of file diff --git a/ui/get/dist/esm/Downloader.js.map b/ui/get/dist/esm/Downloader.js.map new file mode 100644 index 0000000..c6199d5 --- /dev/null +++ b/ui/get/dist/esm/Downloader.js.map @@ -0,0 +1 @@ +{"version":3,"file":"Downloader.js","sourceRoot":"","sources":["../../src/Downloader.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/ui/get/dist/esm/GotDownloader.d.ts b/ui/get/dist/esm/GotDownloader.d.ts new file mode 100644 index 0000000..6494756 --- /dev/null +++ b/ui/get/dist/esm/GotDownloader.d.ts @@ -0,0 +1,21 @@ +import { Progress as GotProgress, Options as GotOptions } from 'got'; +import { Downloader } from './Downloader'; +/** + * See [`got#options`](https://github.com/sindresorhus/got#options) for possible keys/values. + */ +export declare type GotDownloaderOptions = (GotOptions & { + isStream?: true; +}) & { + /** + * if defined, triggers every time `got`'s `downloadProgress` event callback is triggered. + */ + getProgressCallback?: (progress: GotProgress) => Promise; + /** + * if `true`, disables the console progress bar (setting the `ELECTRON_GET_NO_PROGRESS` + * environment variable to a non-empty value also does this). + */ + quiet?: boolean; +}; +export declare class GotDownloader implements Downloader { + download(url: string, targetFilePath: string, options?: GotDownloaderOptions): Promise; +} diff --git a/ui/get/dist/esm/GotDownloader.js b/ui/get/dist/esm/GotDownloader.js new file mode 100644 index 0000000..921bbeb --- /dev/null +++ b/ui/get/dist/esm/GotDownloader.js @@ -0,0 +1,73 @@ +var __rest = (this && this.__rest) || function (s, e) { + var t = {}; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +}; +import * as fs from 'fs-extra'; +import got, { HTTPError } from 'got'; +import * as path from 'path'; +import * as ProgressBar from 'progress'; +const PROGRESS_BAR_DELAY_IN_SECONDS = 30; +export class GotDownloader { + async download(url, targetFilePath, options) { + if (!options) { + options = {}; + } + const { quiet, getProgressCallback } = options, gotOptions = __rest(options, ["quiet", "getProgressCallback"]); + let downloadCompleted = false; + let bar; + let progressPercent; + let timeout = undefined; + await fs.mkdirp(path.dirname(targetFilePath)); + const writeStream = fs.createWriteStream(targetFilePath); + if (!quiet || !process.env.ELECTRON_GET_NO_PROGRESS) { + const start = new Date(); + timeout = setTimeout(() => { + if (!downloadCompleted) { + bar = new ProgressBar(`Downloading ${path.basename(url)}: [:bar] :percent ETA: :eta seconds `, { + curr: progressPercent, + total: 100, + }); + // https://github.com/visionmedia/node-progress/issues/159 + // eslint-disable-next-line @typescript-eslint/no-explicit-any + bar.start = start; + } + }, PROGRESS_BAR_DELAY_IN_SECONDS * 1000); + } + await new Promise((resolve, reject) => { + const downloadStream = got.stream(url, gotOptions); + downloadStream.on('downloadProgress', async (progress) => { + progressPercent = progress.percent; + if (bar) { + bar.update(progress.percent); + } + if (getProgressCallback) { + await getProgressCallback(progress); + } + }); + downloadStream.on('error', error => { + if (error instanceof HTTPError && error.response.statusCode === 404) { + error.message += ` for ${error.response.url}`; + } + if (writeStream.destroy) { + writeStream.destroy(error); + } + reject(error); + }); + writeStream.on('error', error => reject(error)); + writeStream.on('close', () => resolve()); + downloadStream.pipe(writeStream); + }); + downloadCompleted = true; + if (timeout) { + clearTimeout(timeout); + } + } +} +//# sourceMappingURL=GotDownloader.js.map \ No newline at end of file diff --git a/ui/get/dist/esm/GotDownloader.js.map b/ui/get/dist/esm/GotDownloader.js.map new file mode 100644 index 0000000..4117388 --- /dev/null +++ b/ui/get/dist/esm/GotDownloader.js.map @@ -0,0 +1 @@ +{"version":3,"file":"GotDownloader.js","sourceRoot":"","sources":["../../src/GotDownloader.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,GAAG,EAAE,EAAE,SAAS,EAAkD,MAAM,KAAK,CAAC;AACrF,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,WAAW,MAAM,UAAU,CAAC;AAIxC,MAAM,6BAA6B,GAAG,EAAE,CAAC;AAiBzC,MAAM,OAAO,aAAa;IACxB,KAAK,CAAC,QAAQ,CACZ,GAAW,EACX,cAAsB,EACtB,OAA8B;QAE9B,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,GAAG,EAAE,CAAC;SACd;QACD,MAAM,EAAE,KAAK,EAAE,mBAAmB,KAAoB,OAAO,EAAzB,8DAAyB,CAAC;QAC9D,IAAI,iBAAiB,GAAG,KAAK,CAAC;QAC9B,IAAI,GAA4B,CAAC;QACjC,IAAI,eAAuB,CAAC;QAC5B,IAAI,OAAO,GAA+B,SAAS,CAAC;QACpD,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC;QAC9C,MAAM,WAAW,GAAG,EAAE,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;QAEzD,IAAI,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE;YACnD,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC;YACzB,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;gBACxB,IAAI,CAAC,iBAAiB,EAAE;oBACtB,GAAG,GAAG,IAAI,WAAW,CACnB,eAAe,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,sCAAsC,EACvE;wBACE,IAAI,EAAE,eAAe;wBACrB,KAAK,EAAE,GAAG;qBACX,CACF,CAAC;oBACF,0DAA0D;oBAC1D,8DAA8D;oBAC7D,GAAW,CAAC,KAAK,GAAG,KAAK,CAAC;iBAC5B;YACH,CAAC,EAAE,6BAA6B,GAAG,IAAI,CAAC,CAAC;SAC1C;QACD,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC1C,MAAM,cAAc,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YACnD,cAAc,CAAC,EAAE,CAAC,kBAAkB,EAAE,KAAK,EAAC,QAAQ,EAAC,EAAE;gBACrD,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC;gBACnC,IAAI,GAAG,EAAE;oBACP,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;iBAC9B;gBACD,IAAI,mBAAmB,EAAE;oBACvB,MAAM,mBAAmB,CAAC,QAAQ,CAAC,CAAC;iBACrC;YACH,CAAC,CAAC,CAAC;YACH,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;gBACjC,IAAI,KAAK,YAAY,SAAS,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,KAAK,GAAG,EAAE;oBACnE,KAAK,CAAC,OAAO,IAAI,QAAQ,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;iBAC/C;gBACD,IAAI,WAAW,CAAC,OAAO,EAAE;oBACvB,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;iBAC5B;gBAED,MAAM,CAAC,KAAK,CAAC,CAAC;YAChB,CAAC,CAAC,CAAC;YACH,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAChD,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;YAEzC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;QAEH,iBAAiB,GAAG,IAAI,CAAC;QACzB,IAAI,OAAO,EAAE;YACX,YAAY,CAAC,OAAO,CAAC,CAAC;SACvB;IACH,CAAC;CACF"} \ No newline at end of file diff --git a/ui/get/dist/esm/artifact-utils.d.ts b/ui/get/dist/esm/artifact-utils.d.ts new file mode 100644 index 0000000..e03c96e --- /dev/null +++ b/ui/get/dist/esm/artifact-utils.d.ts @@ -0,0 +1,4 @@ +import { ElectronArtifactDetails } from './types'; +export declare function getArtifactFileName(details: ElectronArtifactDetails): string; +export declare function getArtifactRemoteURL(details: ElectronArtifactDetails): Promise; +export declare function getArtifactVersion(details: ElectronArtifactDetails): string; diff --git a/ui/get/dist/esm/artifact-utils.js b/ui/get/dist/esm/artifact-utils.js new file mode 100644 index 0000000..8dc1433 --- /dev/null +++ b/ui/get/dist/esm/artifact-utils.js @@ -0,0 +1,61 @@ +import { ensureIsTruthyString, normalizeVersion } from './utils'; +const BASE_URL = 'https://github.com/electron/electron/releases/download/'; +const NIGHTLY_BASE_URL = 'https://github.com/electron/nightlies/releases/download/'; +export function getArtifactFileName(details) { + ensureIsTruthyString(details, 'artifactName'); + if (details.isGeneric) { + return details.artifactName; + } + ensureIsTruthyString(details, 'arch'); + ensureIsTruthyString(details, 'platform'); + ensureIsTruthyString(details, 'version'); + return `${[ + details.artifactName, + details.version, + details.platform, + details.arch, + ...(details.artifactSuffix ? [details.artifactSuffix] : []), + ].join('-')}.zip`; +} +function mirrorVar(name, options, defaultValue) { + // Convert camelCase to camel_case for env var reading + const snakeName = name.replace(/([a-z])([A-Z])/g, (_, a, b) => `${a}_${b}`).toLowerCase(); + return ( + // .npmrc + process.env[`npm_config_electron_${name.toLowerCase()}`] || + process.env[`NPM_CONFIG_ELECTRON_${snakeName.toUpperCase()}`] || + process.env[`npm_config_electron_${snakeName}`] || + // package.json + process.env[`npm_package_config_electron_${name}`] || + process.env[`npm_package_config_electron_${snakeName.toLowerCase()}`] || + // env + process.env[`ELECTRON_${snakeName.toUpperCase()}`] || + options[name] || + defaultValue); +} +export async function getArtifactRemoteURL(details) { + const opts = details.mirrorOptions || {}; + let base = mirrorVar('mirror', opts, BASE_URL); + if (details.version.includes('nightly')) { + const nightlyDeprecated = mirrorVar('nightly_mirror', opts, ''); + if (nightlyDeprecated) { + base = nightlyDeprecated; + console.warn(`nightly_mirror is deprecated, please use nightlyMirror`); + } + else { + base = mirrorVar('nightlyMirror', opts, NIGHTLY_BASE_URL); + } + } + const path = mirrorVar('customDir', opts, details.version).replace('{{ version }}', details.version.replace(/^v/, '')); + const file = mirrorVar('customFilename', opts, getArtifactFileName(details)); + // Allow customized download URL resolution. + if (opts.resolveAssetURL) { + const url = await opts.resolveAssetURL(details); + return url; + } + return `${base}${path}/${file}`; +} +export function getArtifactVersion(details) { + return normalizeVersion(mirrorVar('customVersion', details.mirrorOptions || {}, details.version)); +} +//# sourceMappingURL=artifact-utils.js.map \ No newline at end of file diff --git a/ui/get/dist/esm/artifact-utils.js.map b/ui/get/dist/esm/artifact-utils.js.map new file mode 100644 index 0000000..bfaaf9c --- /dev/null +++ b/ui/get/dist/esm/artifact-utils.js.map @@ -0,0 +1 @@ +{"version":3,"file":"artifact-utils.js","sourceRoot":"","sources":["../../src/artifact-utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/ui/get/dist/esm/downloader-resolver.d.ts b/ui/get/dist/esm/downloader-resolver.d.ts new file mode 100644 index 0000000..f7f09b2 --- /dev/null +++ b/ui/get/dist/esm/downloader-resolver.d.ts @@ -0,0 +1,3 @@ +import { DownloadOptions } from './types'; +import { Downloader } from './Downloader'; +export declare function getDownloaderForSystem(): Promise>; diff --git a/ui/get/dist/esm/downloader-resolver.js b/ui/get/dist/esm/downloader-resolver.js new file mode 100644 index 0000000..5a87c3c --- /dev/null +++ b/ui/get/dist/esm/downloader-resolver.js @@ -0,0 +1,9 @@ +export async function getDownloaderForSystem() { + // TODO: Resolve the downloader or default to GotDownloader + // Current thoughts are a dot-file traversal for something like + // ".electron.downloader" which would be a text file with the name of the + // npm module to import() and use as the downloader + const { GotDownloader } = await import('./GotDownloader'); + return new GotDownloader(); +} +//# sourceMappingURL=downloader-resolver.js.map \ No newline at end of file diff --git a/ui/get/dist/esm/downloader-resolver.js.map b/ui/get/dist/esm/downloader-resolver.js.map new file mode 100644 index 0000000..201069b --- /dev/null +++ b/ui/get/dist/esm/downloader-resolver.js.map @@ -0,0 +1 @@ +{"version":3,"file":"downloader-resolver.js","sourceRoot":"","sources":["../../src/downloader-resolver.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,KAAK,UAAU,sBAAsB;IAC1C,2DAA2D;IAC3D,+DAA+D;IAC/D,yEAAyE;IACzE,mDAAmD;IACnD,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;IAC1D,OAAO,IAAI,aAAa,EAAE,CAAC;AAC7B,CAAC"} \ No newline at end of file diff --git a/ui/get/dist/esm/index.d.ts b/ui/get/dist/esm/index.d.ts new file mode 100644 index 0000000..93e709e --- /dev/null +++ b/ui/get/dist/esm/index.d.ts @@ -0,0 +1,18 @@ +import { ElectronDownloadRequestOptions, ElectronPlatformArtifactDetailsWithDefaults } from './types'; +export { getHostArch } from './utils'; +export { initializeProxy } from './proxy'; +export * from './types'; +/** + * Downloads an artifact from an Electron release and returns an absolute path + * to the downloaded file. + * + * @param artifactDetails - The information required to download the artifact + */ +export declare function downloadArtifact(_artifactDetails: ElectronPlatformArtifactDetailsWithDefaults): Promise; +/** + * Downloads a specific version of Electron and returns an absolute path to a + * ZIP file. + * + * @param version - The version of Electron you want to download + */ +export declare function download(version: string, options?: ElectronDownloadRequestOptions): Promise; diff --git a/ui/get/dist/esm/index.js b/ui/get/dist/esm/index.js new file mode 100644 index 0000000..f3d30ee --- /dev/null +++ b/ui/get/dist/esm/index.js @@ -0,0 +1,124 @@ +import debug from 'debug'; +import * as fs from 'fs-extra'; +import * as path from 'path'; +import * as semver from 'semver'; +import * as sumchecker from 'sumchecker'; +import { getArtifactFileName, getArtifactRemoteURL, getArtifactVersion } from './artifact-utils'; +import { Cache } from './Cache'; +import { getDownloaderForSystem } from './downloader-resolver'; +import { initializeProxy } from './proxy'; +import { withTempDirectoryIn, getHostArch, getNodeArch, ensureIsTruthyString, isOfficialLinuxIA32Download, withTempDirectory, } from './utils'; +export { getHostArch } from './utils'; +export { initializeProxy } from './proxy'; +const d = debug('@electron/get:index'); +if (process.env.ELECTRON_GET_USE_PROXY) { + initializeProxy(); +} +/** + * Downloads an artifact from an Electron release and returns an absolute path + * to the downloaded file. + * + * @param artifactDetails - The information required to download the artifact + */ +export async function downloadArtifact(_artifactDetails) { + const artifactDetails = Object.assign({}, _artifactDetails); + if (!_artifactDetails.isGeneric) { + const platformArtifactDetails = artifactDetails; + if (!platformArtifactDetails.platform) { + d('No platform found, defaulting to the host platform'); + platformArtifactDetails.platform = process.platform; + } + if (platformArtifactDetails.arch) { + platformArtifactDetails.arch = getNodeArch(platformArtifactDetails.arch); + } + else { + d('No arch found, defaulting to the host arch'); + platformArtifactDetails.arch = getHostArch(); + } + } + ensureIsTruthyString(artifactDetails, 'version'); + artifactDetails.version = getArtifactVersion(artifactDetails); + const fileName = getArtifactFileName(artifactDetails); + const url = await getArtifactRemoteURL(artifactDetails); + const cache = new Cache(artifactDetails.cacheRoot); + // Do not check if the file exists in the cache when force === true + if (!artifactDetails.force) { + d(`Checking the cache (${artifactDetails.cacheRoot}) for ${fileName} (${url})`); + const cachedPath = await cache.getPathForFileInCache(url, fileName); + if (cachedPath === null) { + d('Cache miss'); + } + else { + d('Cache hit'); + return cachedPath; + } + } + if (!artifactDetails.isGeneric && + isOfficialLinuxIA32Download(artifactDetails.platform, artifactDetails.arch, artifactDetails.version, artifactDetails.mirrorOptions)) { + console.warn('Official Linux/ia32 support is deprecated.'); + console.warn('For more info: https://electronjs.org/blog/linux-32bit-support'); + } + return await withTempDirectoryIn(artifactDetails.tempDirectory, async (tempFolder) => { + const tempDownloadPath = path.resolve(tempFolder, getArtifactFileName(artifactDetails)); + const downloader = artifactDetails.downloader || (await getDownloaderForSystem()); + d(`Downloading ${url} to ${tempDownloadPath} with options: ${JSON.stringify(artifactDetails.downloadOptions)}`); + await downloader.download(url, tempDownloadPath, artifactDetails.downloadOptions); + // Don't try to verify the hash of the hash file itself + // and for older versions that don't have a SHASUMS256.txt + if (!artifactDetails.artifactName.startsWith('SHASUMS256') && + !artifactDetails.unsafelyDisableChecksums && + semver.gte(artifactDetails.version, '1.3.2')) { + await withTempDirectory(async (tmpDir) => { + let shasumPath; + const checksums = artifactDetails.checksums; + if (checksums) { + shasumPath = path.resolve(tmpDir, 'SHASUMS256.txt'); + const fileNames = Object.keys(checksums); + if (fileNames.length === 0) { + throw new Error('Provided "checksums" object is empty, cannot generate a valid SHASUMS256.txt'); + } + const generatedChecksums = fileNames + .map(fileName => `${checksums[fileName]} *${fileName}`) + .join('\n'); + await fs.writeFile(shasumPath, generatedChecksums); + } + else { + shasumPath = await downloadArtifact({ + isGeneric: true, + version: artifactDetails.version, + artifactName: 'SHASUMS256.txt', + force: artifactDetails.force, + downloadOptions: artifactDetails.downloadOptions, + cacheRoot: artifactDetails.cacheRoot, + downloader: artifactDetails.downloader, + mirrorOptions: artifactDetails.mirrorOptions, + }); + } + // For versions 1.3.2 - 1.3.4, need to overwrite the `defaultTextEncoding` option: + // https://github.com/electron/electron/pull/6676#discussion_r75332120 + if (semver.satisfies(artifactDetails.version, '1.3.2 - 1.3.4')) { + const validatorOptions = {}; + validatorOptions.defaultTextEncoding = 'binary'; + const checker = new sumchecker.ChecksumValidator('sha256', shasumPath, validatorOptions); + await checker.validate(path.dirname(tempDownloadPath), path.basename(tempDownloadPath)); + } + else { + await sumchecker('sha256', shasumPath, path.dirname(tempDownloadPath), [ + path.basename(tempDownloadPath), + ]); + } + }); + } + return await cache.putFileInCache(url, tempDownloadPath, fileName); + }); +} +/** + * Downloads a specific version of Electron and returns an absolute path to a + * ZIP file. + * + * @param version - The version of Electron you want to download + */ +export function download(version, options) { + return downloadArtifact(Object.assign(Object.assign({}, options), { version, platform: process.platform, arch: process.arch, artifactName: 'electron' })); +} +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/ui/get/dist/esm/index.js.map b/ui/get/dist/esm/index.js.map new file mode 100644 index 0000000..61d145b --- /dev/null +++ b/ui/get/dist/esm/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/ui/get/dist/esm/proxy.d.ts b/ui/get/dist/esm/proxy.d.ts new file mode 100644 index 0000000..df3e16a --- /dev/null +++ b/ui/get/dist/esm/proxy.d.ts @@ -0,0 +1,4 @@ +/** + * Initializes a third-party proxy module for HTTP(S) requests. + */ +export declare function initializeProxy(): void; diff --git a/ui/get/dist/esm/proxy.js b/ui/get/dist/esm/proxy.js new file mode 100644 index 0000000..c6336c1 --- /dev/null +++ b/ui/get/dist/esm/proxy.js @@ -0,0 +1,24 @@ +import * as debug from 'debug'; +import { getEnv, setEnv } from './utils'; +const d = debug('@electron/get:proxy'); +/** + * Initializes a third-party proxy module for HTTP(S) requests. + */ +export function initializeProxy() { + try { + // See: https://github.com/electron/get/pull/214#discussion_r798845713 + const env = getEnv('GLOBAL_AGENT_'); + setEnv('GLOBAL_AGENT_HTTP_PROXY', env('HTTP_PROXY')); + setEnv('GLOBAL_AGENT_HTTPS_PROXY', env('HTTPS_PROXY')); + setEnv('GLOBAL_AGENT_NO_PROXY', env('NO_PROXY')); + /** + * TODO: replace global-agent with a hpagent. @BlackHole1 + * https://github.com/sindresorhus/got/blob/HEAD/documentation/tips.md#proxying + */ + require('global-agent').bootstrap(); + } + catch (e) { + d('Could not load either proxy modules, built-in proxy support not available:', e); + } +} +//# sourceMappingURL=proxy.js.map \ No newline at end of file diff --git a/ui/get/dist/esm/proxy.js.map b/ui/get/dist/esm/proxy.js.map new file mode 100644 index 0000000..8c2f2d7 --- /dev/null +++ b/ui/get/dist/esm/proxy.js.map @@ -0,0 +1 @@ +{"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../src/proxy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEzC,MAAM,CAAC,GAAG,KAAK,CAAC,qBAAqB,CAAC,CAAC;AAEvC;;GAEG;AACH,MAAM,UAAU,eAAe;IAC7B,IAAI;QACF,sEAAsE;QACtE,MAAM,GAAG,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;QAEpC,MAAM,CAAC,yBAAyB,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC;QACrD,MAAM,CAAC,0BAA0B,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC;QACvD,MAAM,CAAC,uBAAuB,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;QAEjD;;;WAGG;QACH,OAAO,CAAC,cAAc,CAAC,CAAC,SAAS,EAAE,CAAC;KACrC;IAAC,OAAO,CAAC,EAAE;QACV,CAAC,CAAC,4EAA4E,EAAE,CAAC,CAAC,CAAC;KACpF;AACH,CAAC"} \ No newline at end of file diff --git a/ui/get/dist/esm/types.d.ts b/ui/get/dist/esm/types.d.ts new file mode 100644 index 0000000..a8284bb --- /dev/null +++ b/ui/get/dist/esm/types.d.ts @@ -0,0 +1,129 @@ +import { Downloader } from './Downloader'; +export declare type DownloadOptions = any; +export interface MirrorOptions { + /** + * DEPRECATED - see nightlyMirror. + */ + nightly_mirror?: string; + /** + * The Electron nightly-specific mirror URL. + */ + nightlyMirror?: string; + /** + * The base URL of the mirror to download from, + * e.g https://github.com/electron/electron/releases/download + */ + mirror?: string; + /** + * The name of the directory to download from, + * often scoped by version number e.g 'v4.0.4' + */ + customDir?: string; + /** + * The name of the asset to download, + * e.g 'electron-v4.0.4-linux-x64.zip' + */ + customFilename?: string; + /** + * The version of the asset to download, + * e.g '4.0.4' + */ + customVersion?: string; + /** + * A function allowing customization of the url returned + * from getArtifactRemoteURL(). + */ + resolveAssetURL?: (opts: DownloadOptions) => Promise; +} +export interface ElectronDownloadRequest { + /** + * The version of Electron associated with the artifact. + */ + version: string; + /** + * The type of artifact. For example: + * * `electron` + * * `ffmpeg` + */ + artifactName: string; +} +export interface ElectronDownloadRequestOptions { + /** + * Whether to download an artifact regardless of whether it's in the cache directory. + * + * Defaults to `false`. + */ + force?: boolean; + /** + * When set to `true`, disables checking that the artifact download completed successfully + * with the correct payload. + * + * Defaults to `false`. + */ + unsafelyDisableChecksums?: boolean; + /** + * Provides checksums for the artifact as strings. + * Can be used if you already know the checksums of the Electron artifact + * you are downloading and want to skip the checksum file download + * without skipping the checksum validation. + * + * This should be an object whose keys are the file names of the artifacts and + * the values are their respective SHA256 checksums. + */ + checksums?: Record; + /** + * The directory that caches Electron artifact downloads. + * + * The default value is dependent upon the host platform: + * + * * Linux: `$XDG_CACHE_HOME` or `~/.cache/electron/` + * * MacOS: `~/Library/Caches/electron/` + * * Windows: `%LOCALAPPDATA%/electron/Cache` or `~/AppData/Local/electron/Cache/` + */ + cacheRoot?: string; + /** + * Options passed to the downloader module. + */ + downloadOptions?: DownloadOptions; + /** + * Options related to specifying an artifact mirror. + */ + mirrorOptions?: MirrorOptions; + /** + * The custom [[Downloader]] class used to download artifacts. Defaults to the + * built-in [[GotDownloader]]. + */ + downloader?: Downloader; + /** + * A temporary directory for downloads. + * It is used before artifacts are put into cache. + */ + tempDirectory?: string; +} +export declare type ElectronPlatformArtifactDetails = { + /** + * The target artifact platform. These are Node-style platform names, for example: + * * `win32` + * * `darwin` + * * `linux` + */ + platform: string; + /** + * The target artifact architecture. These are Node-style architecture names, for example: + * * `ia32` + * * `x64` + * * `armv7l` + */ + arch: string; + artifactSuffix?: string; + isGeneric?: false; +} & ElectronDownloadRequest & ElectronDownloadRequestOptions; +export declare type ElectronGenericArtifactDetails = { + isGeneric: true; +} & ElectronDownloadRequest & ElectronDownloadRequestOptions; +export declare type ElectronArtifactDetails = ElectronPlatformArtifactDetails | ElectronGenericArtifactDetails; +export declare type Omit = Pick>; +export declare type ElectronPlatformArtifactDetailsWithDefaults = (Omit & { + platform?: string; + arch?: string; +}) | ElectronGenericArtifactDetails; diff --git a/ui/get/dist/esm/types.js b/ui/get/dist/esm/types.js new file mode 100644 index 0000000..5b2306a --- /dev/null +++ b/ui/get/dist/esm/types.js @@ -0,0 +1 @@ +//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/ui/get/dist/esm/types.js.map b/ui/get/dist/esm/types.js.map new file mode 100644 index 0000000..7b5fff8 --- /dev/null +++ b/ui/get/dist/esm/types.js.map @@ -0,0 +1 @@ +{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/ui/get/dist/esm/utils.d.ts b/ui/get/dist/esm/utils.d.ts new file mode 100644 index 0000000..3cc40c1 --- /dev/null +++ b/ui/get/dist/esm/utils.d.ts @@ -0,0 +1,25 @@ +export declare function withTempDirectoryIn(parentDirectory: string | undefined, fn: (directory: string) => Promise): Promise; +export declare function withTempDirectory(fn: (directory: string) => Promise): Promise; +export declare function normalizeVersion(version: string): string; +/** + * Runs the `uname` command and returns the trimmed output. + */ +export declare function uname(): string; +/** + * Generates an architecture name that would be used in an Electron or Node.js + * download file name. + */ +export declare function getNodeArch(arch: string): string; +/** + * Generates an architecture name that would be used in an Electron or Node.js + * download file name, from the `process` module information. + */ +export declare function getHostArch(): string; +export declare function ensureIsTruthyString(obj: T, key: K): void; +export declare function isOfficialLinuxIA32Download(platform: string, arch: string, version: string, mirrorOptions?: object): boolean; +/** + * Find the value of a environment variable which may or may not have the + * prefix, in a case-insensitive manner. + */ +export declare function getEnv(prefix?: string): (name: string) => string | undefined; +export declare function setEnv(key: string, value: string | undefined): void; diff --git a/ui/get/dist/esm/utils.js b/ui/get/dist/esm/utils.js new file mode 100644 index 0000000..575ea86 --- /dev/null +++ b/ui/get/dist/esm/utils.js @@ -0,0 +1,95 @@ +import * as childProcess from 'child_process'; +import * as fs from 'fs-extra'; +import * as os from 'os'; +import * as path from 'path'; +async function useAndRemoveDirectory(directory, fn) { + let result; + try { + result = await fn(directory); + } + finally { + await fs.remove(directory); + } + return result; +} +export async function withTempDirectoryIn(parentDirectory = os.tmpdir(), fn) { + const tempDirectoryPrefix = 'electron-download-'; + const tempDirectory = await fs.mkdtemp(path.resolve(parentDirectory, tempDirectoryPrefix)); + return useAndRemoveDirectory(tempDirectory, fn); +} +export async function withTempDirectory(fn) { + return withTempDirectoryIn(undefined, fn); +} +export function normalizeVersion(version) { + if (!version.startsWith('v')) { + return `v${version}`; + } + return version; +} +/** + * Runs the `uname` command and returns the trimmed output. + */ +export function uname() { + return childProcess + .execSync('uname -m') + .toString() + .trim(); +} +/** + * Generates an architecture name that would be used in an Electron or Node.js + * download file name. + */ +export function getNodeArch(arch) { + if (arch === 'arm') { + // eslint-disable-next-line @typescript-eslint/no-explicit-any + switch (process.config.variables.arm_version) { + case '6': + return uname(); + case '7': + default: + return 'armv7l'; + } + } + return arch; +} +/** + * Generates an architecture name that would be used in an Electron or Node.js + * download file name, from the `process` module information. + */ +export function getHostArch() { + return getNodeArch(process.arch); +} +export function ensureIsTruthyString(obj, key) { + if (!obj[key] || typeof obj[key] !== 'string') { + throw new Error(`Expected property "${key}" to be provided as a string but it was not`); + } +} +export function isOfficialLinuxIA32Download(platform, arch, version, mirrorOptions) { + return (platform === 'linux' && + arch === 'ia32' && + Number(version.slice(1).split('.')[0]) >= 4 && + typeof mirrorOptions === 'undefined'); +} +/** + * Find the value of a environment variable which may or may not have the + * prefix, in a case-insensitive manner. + */ +export function getEnv(prefix = '') { + const envsLowerCase = {}; + for (const envKey in process.env) { + envsLowerCase[envKey.toLowerCase()] = process.env[envKey]; + } + return (name) => { + return (envsLowerCase[`${prefix}${name}`.toLowerCase()] || + envsLowerCase[name.toLowerCase()] || + undefined); + }; +} +export function setEnv(key, value) { + // The `void` operator always returns `undefined`. + // See: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/void + if (value !== void 0) { + process.env[key] = value; + } +} +//# sourceMappingURL=utils.js.map \ No newline at end of file diff --git a/ui/get/dist/esm/utils.js.map b/ui/get/dist/esm/utils.js.map new file mode 100644 index 0000000..6c65992 --- /dev/null +++ b/ui/get/dist/esm/utils.js.map @@ -0,0 +1 @@ +{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/ui/get/package.json b/ui/get/package.json new file mode 100644 index 0000000..164a79d --- /dev/null +++ b/ui/get/package.json @@ -0,0 +1,100 @@ +{ + "name": "@electron/get", + "version": "2.0.2", + "description": "Utility for downloading artifacts from different versions of Electron", + "main": "dist/cjs/index.js", + "module": "dist/esm/index.js", + "repository": "https://github.com/electron/get", + "author": "Samuel Attard", + "license": "MIT", + "scripts": { + "build": "tsc && tsc -p tsconfig.esm.json", + "build:docs": "typedoc --out docs", + "eslint": "eslint --ext .ts src test", + "jest": "jest --coverage", + "lint": "npm run prettier && npm run eslint", + "prettier": "prettier --check \"src/**/*.ts\" \"test/**/*.ts\"", + "prepublishOnly": "npm run build", + "test": "npm run lint && npm run jest", + "test:nonetwork": "npm run lint && npm run jest -- --testPathIgnorePatterns network.spec" + }, + "files": [ + "dist/*", + "README.md" + ], + "engines": { + "node": ">=12" + }, + "dependencies": { + "debug": "^4.1.1", + "env-paths": "^2.2.0", + "fs-extra": "^8.1.0", + "got": "^11.8.5", + "progress": "^2.0.3", + "semver": "^6.2.0", + "sumchecker": "^3.0.1" + }, + "devDependencies": { + "@continuous-auth/semantic-release-npm": "^2.0.0", + "@types/debug": "^4.1.4", + "@types/fs-extra": "^8.0.0", + "@types/jest": "^24.0.13", + "@types/node": "^12.20.55", + "@types/progress": "^2.0.3", + "@types/semver": "^6.2.0", + "@typescript-eslint/eslint-plugin": "^2.34.0", + "@typescript-eslint/parser": "^2.34.0", + "eslint": "^6.8.0", + "eslint-config-prettier": "^6.15.0", + "eslint-plugin-import": "^2.22.1", + "eslint-plugin-jest": "< 24.0.0", + "husky": "^2.3.0", + "jest": "^24.8.0", + "lint-staged": "^8.1.7", + "prettier": "^1.17.1", + "ts-jest": "^24.0.0", + "typedoc": "^0.17.2", + "typescript": "^3.8.0" + }, + "eslintConfig": { + "parser": "@typescript-eslint/parser", + "extends": [ + "eslint:recommended", + "plugin:@typescript-eslint/eslint-recommended", + "plugin:@typescript-eslint/recommended", + "plugin:jest/recommended", + "plugin:import/errors", + "plugin:import/warnings", + "plugin:import/typescript", + "prettier", + "prettier/@typescript-eslint" + ] + }, + "husky": { + "hooks": { + "pre-commit": "lint-staged" + } + }, + "lint-staged": { + "*.ts": [ + "eslint --fix", + "prettier --write", + "git add" + ] + }, + "keywords": [ + "electron", + "download", + "prebuild", + "get", + "artifact", + "release" + ], + "optionalDependencies": { + "global-agent": "^3.0.0" + }, + "resolutions": { + "eslint/inquirer": "< 7.3.0", + "**/@typescript-eslint/typescript-estree/semver": "^6.3.0" + } +} diff --git a/ui/image.png.b5bf2f097d47d184e6ec84f44e3d5dcd.png b/ui/image.png.b5bf2f097d47d184e6ec84f44e3d5dcd.png new file mode 100644 index 0000000..cadd30c Binary files /dev/null and b/ui/image.png.b5bf2f097d47d184e6ec84f44e3d5dcd.png differ diff --git a/ui/index.html b/ui/index.html new file mode 100644 index 0000000..1cd8380 --- /dev/null +++ b/ui/index.html @@ -0,0 +1,87 @@ + + + + + + + + Document + + + +
+ + + + +
+ + + + + + + + + \ No newline at end of file diff --git a/ui/main.js b/ui/main.js new file mode 100644 index 0000000..7e6cd94 --- /dev/null +++ b/ui/main.js @@ -0,0 +1,21 @@ +const { app, BrowserWindow } = require('electron'); + +const createWindow = () => { + // Create the browser window. + mainWindow = new BrowserWindow({ + width: 800, + height: 600, + webPreferences: { + nodeIntegration: true, + contextIsolation: false, + enableRemoteModule: true + }, + autoHideMenuBar: true + }); + mainWindow.loadFile("index.html") //loadne index.html +}; + + +app.whenReady().then(() => { + createWindow(); +}); diff --git a/ui/maxresdefault.jpg b/ui/maxresdefault.jpg new file mode 100644 index 0000000..3ec85aa Binary files /dev/null and b/ui/maxresdefault.jpg differ diff --git a/ui/maxresdefault2.jpg b/ui/maxresdefault2.jpg new file mode 100644 index 0000000..3ec85aa Binary files /dev/null and b/ui/maxresdefault2.jpg differ diff --git a/ui/maxresdefault3.jpg b/ui/maxresdefault3.jpg new file mode 100644 index 0000000..afed5a5 Binary files /dev/null and b/ui/maxresdefault3.jpg differ diff --git a/ui/package-lock.json b/ui/package-lock.json new file mode 100644 index 0000000..b237aff --- /dev/null +++ b/ui/package-lock.json @@ -0,0 +1,818 @@ +{ + "name": "ui", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "ui", + "version": "1.0.0", + "license": "ISC", + "dependencies": { + "jquery": "^3.6.3" + }, + "devDependencies": { + "electron": "^23.1.0" + } + }, + "node_modules/@electron/get": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@electron/get/-/get-2.0.2.tgz", + "integrity": "sha512-eFZVFoRXb3GFGd7Ak7W4+6jBl9wBtiZ4AaYOse97ej6mKj5tkyO0dUnUChs1IhJZtx1BENo4/p4WUTXpi6vT+g==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "env-paths": "^2.2.0", + "fs-extra": "^8.1.0", + "got": "^11.8.5", + "progress": "^2.0.3", + "semver": "^6.2.0", + "sumchecker": "^3.0.1" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "global-agent": "^3.0.0" + } + }, + "node_modules/@sindresorhus/is": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", + "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" + } + }, + "node_modules/@szmarczak/http-timer": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz", + "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==", + "dev": true, + "dependencies": { + "defer-to-connect": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@types/cacheable-request": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.3.tgz", + "integrity": "sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw==", + "dev": true, + "dependencies": { + "@types/http-cache-semantics": "*", + "@types/keyv": "^3.1.4", + "@types/node": "*", + "@types/responselike": "^1.0.0" + } + }, + "node_modules/@types/http-cache-semantics": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz", + "integrity": "sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==", + "dev": true + }, + "node_modules/@types/keyv": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.4.tgz", + "integrity": "sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/node": { + "version": "16.18.12", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.12.tgz", + "integrity": "sha512-vzLe5NaNMjIE3mcddFVGlAXN1LEWueUsMsOJWaT6wWMJGyljHAWHznqfnKUQWGzu7TLPrGvWdNAsvQYW+C0xtw==", + "dev": true + }, + "node_modules/@types/responselike": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.0.tgz", + "integrity": "sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==", + "dev": true, + "optional": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/boolean": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/boolean/-/boolean-3.2.0.tgz", + "integrity": "sha512-d0II/GO9uf9lfUHH2BQsjxzRJZBdsjgsBiW4BvhWk/3qoKwQFjIDVN19PfX8F2D/r9PCMTtLWjYVCFrpeYUzsw==", + "dev": true, + "optional": true + }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/cacheable-lookup": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz", + "integrity": "sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==", + "dev": true, + "engines": { + "node": ">=10.6.0" + } + }, + "node_modules/cacheable-request": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.2.tgz", + "integrity": "sha512-pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew==", + "dev": true, + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^4.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^6.0.1", + "responselike": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/clone-response": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", + "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", + "dev": true, + "dependencies": { + "mimic-response": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "dev": true, + "dependencies": { + "mimic-response": "^3.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/decompress-response/node_modules/mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/defer-to-connect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", + "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/define-properties": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", + "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", + "dev": true, + "optional": true, + "dependencies": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", + "dev": true, + "optional": true + }, + "node_modules/electron": { + "version": "23.1.0", + "resolved": "https://registry.npmjs.org/electron/-/electron-23.1.0.tgz", + "integrity": "sha512-LRgACMpVrmjfYWPgCSyJ+TFQ/FPeniOowpO57z0xUcTchfC7EH+5rUncgYN+uMvqePiYDce+ywZeCIFaO8x/Nw==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "@electron/get": "^2.0.0", + "@types/node": "^16.11.26", + "extract-zip": "^2.0.1" + }, + "bin": { + "electron": "cli.js" + }, + "engines": { + "node": ">= 12.20.55" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dev": true, + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "dev": true, + "optional": true + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "optional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/extract-zip": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", + "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + }, + "bin": { + "extract-zip": "cli.js" + }, + "engines": { + "node": ">= 10.17.0" + }, + "optionalDependencies": { + "@types/yauzl": "^2.9.1" + } + }, + "node_modules/fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", + "dev": true, + "dependencies": { + "pend": "~1.2.0" + } + }, + "node_modules/fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true, + "optional": true + }, + "node_modules/get-intrinsic": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", + "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", + "dev": true, + "optional": true, + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dev": true, + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/global-agent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-agent/-/global-agent-3.0.0.tgz", + "integrity": "sha512-PT6XReJ+D07JvGoxQMkT6qji/jVNfX/h364XHZOWeRzy64sSFr+xJ5OX7LI3b4MPQzdL4H8Y8M0xzPpsVMwA8Q==", + "dev": true, + "optional": true, + "dependencies": { + "boolean": "^3.0.1", + "es6-error": "^4.1.1", + "matcher": "^3.0.0", + "roarr": "^2.15.3", + "semver": "^7.3.2", + "serialize-error": "^7.0.1" + }, + "engines": { + "node": ">=10.0" + } + }, + "node_modules/global-agent/node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, + "optional": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/globalthis": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", + "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "dev": true, + "optional": true, + "dependencies": { + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/got": { + "version": "11.8.6", + "resolved": "https://registry.npmjs.org/got/-/got-11.8.6.tgz", + "integrity": "sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==", + "dev": true, + "dependencies": { + "@sindresorhus/is": "^4.0.0", + "@szmarczak/http-timer": "^4.0.5", + "@types/cacheable-request": "^6.0.1", + "@types/responselike": "^1.0.0", + "cacheable-lookup": "^5.0.3", + "cacheable-request": "^7.0.2", + "decompress-response": "^6.0.0", + "http2-wrapper": "^1.0.0-beta.5.2", + "lowercase-keys": "^2.0.0", + "p-cancelable": "^2.0.0", + "responselike": "^2.0.0" + }, + "engines": { + "node": ">=10.19.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/got?sponsor=1" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", + "dev": true + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "optional": true, + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "dev": true, + "optional": true, + "dependencies": { + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true, + "optional": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", + "dev": true + }, + "node_modules/http2-wrapper": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz", + "integrity": "sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==", + "dev": true, + "dependencies": { + "quick-lru": "^5.1.1", + "resolve-alpn": "^1.0.0" + }, + "engines": { + "node": ">=10.19.0" + } + }, + "node_modules/jquery": { + "version": "3.6.3", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.6.3.tgz", + "integrity": "sha512-bZ5Sy3YzKo9Fyc8wH2iIQK4JImJ6R0GWI9kL1/k7Z91ZBNgkRXE6U0JfHIizZbort8ZunhSI3jw9I6253ahKfg==" + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "dev": true, + "optional": true + }, + "node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "dev": true, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/keyv": { + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.2.tgz", + "integrity": "sha512-5MHbFaKn8cNSmVW7BYnijeAVlE4cYA/SVkifVgrh7yotnfhKmjuXpDKjrABLnT0SfHWV21P8ow07OGfRrNDg8g==", + "dev": true, + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "optional": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/matcher": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-3.0.0.tgz", + "integrity": "sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==", + "dev": true, + "optional": true, + "dependencies": { + "escape-string-regexp": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/normalize-url": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", + "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "optional": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/p-cancelable": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", + "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", + "dev": true + }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/quick-lru": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/resolve-alpn": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz", + "integrity": "sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==", + "dev": true + }, + "node_modules/responselike": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz", + "integrity": "sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==", + "dev": true, + "dependencies": { + "lowercase-keys": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/roarr": { + "version": "2.15.4", + "resolved": "https://registry.npmjs.org/roarr/-/roarr-2.15.4.tgz", + "integrity": "sha512-CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==", + "dev": true, + "optional": true, + "dependencies": { + "boolean": "^3.0.1", + "detect-node": "^2.0.4", + "globalthis": "^1.0.1", + "json-stringify-safe": "^5.0.1", + "semver-compare": "^1.0.0", + "sprintf-js": "^1.1.2" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/semver-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", + "dev": true, + "optional": true + }, + "node_modules/serialize-error": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz", + "integrity": "sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==", + "dev": true, + "optional": true, + "dependencies": { + "type-fest": "^0.13.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/sprintf-js": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", + "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==", + "dev": true, + "optional": true + }, + "node_modules/sumchecker": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/sumchecker/-/sumchecker-3.0.1.tgz", + "integrity": "sha512-MvjXzkz/BOfyVDkG0oFOtBxHX2u3gKbMHIF/dXblZsgD3BWOFLmHovIpZY7BykJdAjcqRCBi1WYBNdEC9yI7vg==", + "dev": true, + "dependencies": { + "debug": "^4.1.0" + }, + "engines": { + "node": ">= 8.0" + } + }, + "node_modules/type-fest": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", + "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "optional": true + }, + "node_modules/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", + "dev": true, + "dependencies": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + } + } +} diff --git a/ui/package.json b/ui/package.json new file mode 100644 index 0000000..5961cdb --- /dev/null +++ b/ui/package.json @@ -0,0 +1,18 @@ +{ + "name": "ui", + "version": "1.0.0", + "description": "UI pro arcade mach", + "main": "main.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1", + "start": "electron ." + }, + "author": "", + "license": "ISC", + "devDependencies": { + "electron": "^23.1.0" + }, + "dependencies": { + "jquery": "^3.6.3" + } +} diff --git a/ui/sound-voltex-iii-gravity-wars-1.png b/ui/sound-voltex-iii-gravity-wars-1.png new file mode 100644 index 0000000..cc74df6 Binary files /dev/null and b/ui/sound-voltex-iii-gravity-wars-1.png differ diff --git a/ui/style.css b/ui/style.css new file mode 100644 index 0000000..7069d77 --- /dev/null +++ b/ui/style.css @@ -0,0 +1,84 @@ +.container{ + display: grid; + height: 100vw; + grid-template-columns: repeat(3,1fr); + grid-template-rows: repeat(2,1fr); + grid-gap: 15px; + margin-top: 10px; + +} +body{ + min-height: 100vh; + max-width: 85vw; + margin: 0 auto; +} +* { + box-sizing: border-box; /* ulehci zivot */ + } +.move{ + display: flex; + color:rgb(15, 12, 12, 0.88); + border: 3px solid black; + font-family:Verdana, Geneva, Tahoma, sans-serif; + justify-content: flex-end; + align-items: center; + flex-direction: column; +} + +.sex{ +} +#sdvx3-button{ +position: relative ; + +} +#sdvx3-button::after{ + content: ""; + background-image: url(sound-voltex-iii-gravity-wars-1.png); + background-size: cover; + opacity: 0.5; + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + width: 100%; + height: 100%; + z-index: 0; +} +#sdvx4-button{ + position: relative; +} +#sdvx4-button::after{ + content: ""; + background-image: url(maxresdefault3.jpg); + background-size: cover; + opacity: 0.5; + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + width: 100%; + height: 100%; + z-index: 0 +} +#sdvx5-button{ + position: relative; +} +#sdvx5-button::after{ + content: ""; + background-image: url(SDVX5scaled.jpg); + background-size: cover; + opacity: 0.5; + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + width: 100%; + height: 100%; + z-index: 0; +} +.sex:focus{ + border:10px solid red; +} \ No newline at end of file