From f5538cba6fdef3e474fdf031dd40b1439b38effd Mon Sep 17 00:00:00 2001 From: "Chris Ross (ASP.NET)" Date: Fri, 17 Jul 2020 23:07:49 +0000 Subject: [PATCH 01/45] Merged PR 9144: [5.0-preview8] Pass RequestAborted to SendFileAsync This is a cherry pick of the 3.1 PR. https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore/pullrequest/9042 The only change was to remove a questionable call to Abort after catching the exception. There are some less severe issues in Kestrel and MVC that we'll follow up on publicly after this releases. --- .../src/SendFileResponseExtensions.cs | 23 ++++- ...ft.AspNetCore.Http.Extensions.Tests.csproj | 4 + .../test/SendFileResponseExtensionsTests.cs | 95 ++++++++++++++++--- src/Http/Http.Extensions/test/testfile1kb.txt | 1 + .../StaticFiles/src/StaticFileContext.cs | 46 ++------- .../test/UnitTests/StaticFileContextTest.cs | 31 ++++++ .../FunctionalTests/ResponseSendFileTests.cs | 16 +++- 7 files changed, 156 insertions(+), 60 deletions(-) create mode 100644 src/Http/Http.Extensions/test/testfile1kb.txt diff --git a/src/Http/Http.Extensions/src/SendFileResponseExtensions.cs b/src/Http/Http.Extensions/src/SendFileResponseExtensions.cs index e7fd608c0510..8dfae44bdc12 100644 --- a/src/Http/Http.Extensions/src/SendFileResponseExtensions.cs +++ b/src/Http/Http.Extensions/src/SendFileResponseExtensions.cs @@ -16,6 +16,8 @@ namespace Microsoft.AspNetCore.Http /// public static class SendFileResponseExtensions { + private const int StreamCopyBufferSize = 64 * 1024; + /// /// Sends the given file using the SendFile extension. /// @@ -110,15 +112,21 @@ private static async Task SendFileAsyncCore(HttpResponse response, IFileInfo fil if (string.IsNullOrEmpty(file.PhysicalPath)) { CheckRange(offset, count, file.Length); + using var fileContent = file.CreateReadStream(); + + var useRequestAborted = !cancellationToken.CanBeCanceled; + var localCancel = useRequestAborted ? response.HttpContext.RequestAborted : cancellationToken; - using (var fileContent = file.CreateReadStream()) + try { + localCancel.ThrowIfCancellationRequested(); if (offset > 0) { fileContent.Seek(offset, SeekOrigin.Begin); } - await StreamCopyOperation.CopyToAsync(fileContent, response.Body, count, cancellationToken); + await StreamCopyOperation.CopyToAsync(fileContent, response.Body, count, StreamCopyBufferSize, localCancel); } + catch (OperationCanceledException) when (useRequestAborted) { } } else { @@ -126,10 +134,17 @@ private static async Task SendFileAsyncCore(HttpResponse response, IFileInfo fil } } - private static Task SendFileAsyncCore(HttpResponse response, string fileName, long offset, long? count, CancellationToken cancellationToken = default) + private static async Task SendFileAsyncCore(HttpResponse response, string fileName, long offset, long? count, CancellationToken cancellationToken = default) { + var useRequestAborted = !cancellationToken.CanBeCanceled; + var localCancel = useRequestAborted ? response.HttpContext.RequestAborted : cancellationToken; var sendFile = response.HttpContext.Features.Get(); - return sendFile.SendFileAsync(fileName, offset, count, cancellationToken); + + try + { + await sendFile.SendFileAsync(fileName, offset, count, localCancel); + } + catch (OperationCanceledException) when (useRequestAborted) { } } private static void CheckRange(long offset, long? count, long fileLength) diff --git a/src/Http/Http.Extensions/test/Microsoft.AspNetCore.Http.Extensions.Tests.csproj b/src/Http/Http.Extensions/test/Microsoft.AspNetCore.Http.Extensions.Tests.csproj index 19bf5e753ac1..fffeeb054b84 100644 --- a/src/Http/Http.Extensions/test/Microsoft.AspNetCore.Http.Extensions.Tests.csproj +++ b/src/Http/Http.Extensions/test/Microsoft.AspNetCore.Http.Extensions.Tests.csproj @@ -4,6 +4,10 @@ $(DefaultNetCoreTargetFramework) + + + + diff --git a/src/Http/Http.Extensions/test/SendFileResponseExtensionsTests.cs b/src/Http/Http.Extensions/test/SendFileResponseExtensionsTests.cs index 5f5a6341f818..54e22811c0b1 100644 --- a/src/Http/Http.Extensions/test/SendFileResponseExtensionsTests.cs +++ b/src/Http/Http.Extensions/test/SendFileResponseExtensionsTests.cs @@ -1,6 +1,7 @@ // Copyright (c) .NET Foundation. All rights reserved. // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. +using System; using System.IO; using System.IO.Pipelines; using System.Threading; @@ -29,18 +30,86 @@ public async Task SendFileWorks() await response.SendFileAsync("bob", 1, 3, CancellationToken.None); - Assert.Equal("bob", fakeFeature.name); - Assert.Equal(1, fakeFeature.offset); - Assert.Equal(3, fakeFeature.length); - Assert.Equal(CancellationToken.None, fakeFeature.token); + Assert.Equal("bob", fakeFeature.Name); + Assert.Equal(1, fakeFeature.Offset); + Assert.Equal(3, fakeFeature.Length); + Assert.Equal(CancellationToken.None, fakeFeature.Token); + } + + [Fact] + public async Task SendFile_FallsBackToBodyStream() + { + var body = new MemoryStream(); + var context = new DefaultHttpContext(); + var response = context.Response; + response.Body = body; + + await response.SendFileAsync("testfile1kb.txt", 1, 3, CancellationToken.None); + + Assert.Equal(3, body.Length); + } + + [Fact] + public async Task SendFile_Stream_ThrowsWhenCanceled() + { + var body = new MemoryStream(); + var context = new DefaultHttpContext(); + var response = context.Response; + response.Body = body; + + await Assert.ThrowsAnyAsync( + () => response.SendFileAsync("testfile1kb.txt", 1, 3, new CancellationToken(canceled: true))); + + Assert.Equal(0, body.Length); + } + + [Fact] + public async Task SendFile_Feature_ThrowsWhenCanceled() + { + var context = new DefaultHttpContext(); + var fakeFeature = new FakeResponseBodyFeature(); + context.Features.Set(fakeFeature); + var response = context.Response; + + await Assert.ThrowsAsync( + () => response.SendFileAsync("testfile1kb.txt", 1, 3, new CancellationToken(canceled: true))); + } + + [Fact] + public async Task SendFile_Stream_AbortsSilentlyWhenRequestCanceled() + { + var body = new MemoryStream(); + var context = new DefaultHttpContext(); + context.RequestAborted = new CancellationToken(canceled: true); + var response = context.Response; + response.Body = body; + + await response.SendFileAsync("testfile1kb.txt", 1, 3, CancellationToken.None); + + Assert.Equal(0, body.Length); + } + + [Fact] + public async Task SendFile_Feature_AbortsSilentlyWhenRequestCanceled() + { + var context = new DefaultHttpContext(); + var fakeFeature = new FakeResponseBodyFeature(); + context.Features.Set(fakeFeature); + var token = new CancellationToken(canceled: true); + context.RequestAborted = token; + var response = context.Response; + + await response.SendFileAsync("testfile1kb.txt", 1, 3, CancellationToken.None); + + Assert.Equal(token, fakeFeature.Token); } private class FakeResponseBodyFeature : IHttpResponseBodyFeature { - public string name = null; - public long offset = 0; - public long? length = null; - public CancellationToken token; + public string Name { get; set; } = null; + public long Offset { get; set; } = 0; + public long? Length { get; set; } = null; + public CancellationToken Token { get; set; } public Stream Stream => throw new System.NotImplementedException(); @@ -58,10 +127,12 @@ public void DisableBuffering() public Task SendFileAsync(string path, long offset, long? length, CancellationToken cancellation) { - this.name = path; - this.offset = offset; - this.length = length; - this.token = cancellation; + Name = path; + Offset = offset; + Length = length; + Token = cancellation; + + cancellation.ThrowIfCancellationRequested(); return Task.FromResult(0); } diff --git a/src/Http/Http.Extensions/test/testfile1kb.txt b/src/Http/Http.Extensions/test/testfile1kb.txt new file mode 100644 index 000000000000..61d982da1a51 --- /dev/null +++ b/src/Http/Http.Extensions/test/testfile1kb.txt @@ -0,0 +1 @@ +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/src/Middleware/StaticFiles/src/StaticFileContext.cs b/src/Middleware/StaticFiles/src/StaticFileContext.cs index 1d39b42c2e2a..540088e5fcd1 100644 --- a/src/Middleware/StaticFiles/src/StaticFileContext.cs +++ b/src/Middleware/StaticFiles/src/StaticFileContext.cs @@ -5,11 +5,9 @@ using System.Diagnostics; using System.IO; using System.Linq; -using System.Threading; using System.Threading.Tasks; using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Http; -using Microsoft.AspNetCore.Http.Extensions; using Microsoft.AspNetCore.Http.Features; using Microsoft.AspNetCore.Http.Headers; using Microsoft.AspNetCore.Internal; @@ -21,8 +19,6 @@ namespace Microsoft.AspNetCore.StaticFiles { internal struct StaticFileContext { - private const int StreamCopyBufferSize = 64 * 1024; - private readonly HttpContext _context; private readonly StaticFileOptions _options; private readonly HttpRequest _request; @@ -345,29 +341,14 @@ public async Task SendAsync() { SetCompressionMode(); ApplyResponseHeaders(StatusCodes.Status200OK); - string physicalPath = _fileInfo.PhysicalPath; - var sendFile = _context.Features.Get(); - if (sendFile != null && !string.IsNullOrEmpty(physicalPath)) - { - // We don't need to directly cancel this, if the client disconnects it will fail silently. - await sendFile.SendFileAsync(physicalPath, 0, _length, CancellationToken.None); - return; - } - try { - using (var readStream = _fileInfo.CreateReadStream()) - { - // Larger StreamCopyBufferSize is required because in case of FileStream readStream isn't going to be buffering - await StreamCopyOperation.CopyToAsync(readStream, _response.Body, _length, StreamCopyBufferSize, _context.RequestAborted); - } + await _context.Response.SendFileAsync(_fileInfo, 0, _length, _context.RequestAborted); } catch (OperationCanceledException ex) { - _logger.WriteCancelled(ex); // Don't throw this exception, it's most likely caused by the client disconnecting. - // However, if it was cancelled for any other reason we need to prevent empty responses. - _context.Abort(); + _logger.WriteCancelled(ex); } } @@ -391,31 +372,16 @@ internal async Task SendRangeAsync() SetCompressionMode(); ApplyResponseHeaders(StatusCodes.Status206PartialContent); - string physicalPath = _fileInfo.PhysicalPath; - var sendFile = _context.Features.Get(); - if (sendFile != null && !string.IsNullOrEmpty(physicalPath)) - { - _logger.SendingFileRange(_response.Headers[HeaderNames.ContentRange], physicalPath); - // We don't need to directly cancel this, if the client disconnects it will fail silently. - await sendFile.SendFileAsync(physicalPath, start, length, CancellationToken.None); - return; - } - try { - using (var readStream = _fileInfo.CreateReadStream()) - { - readStream.Seek(start, SeekOrigin.Begin); // TODO: What if !CanSeek? - _logger.CopyingFileRange(_response.Headers[HeaderNames.ContentRange], SubPath); - await StreamCopyOperation.CopyToAsync(readStream, _response.Body, length, _context.RequestAborted); - } + var logPath = !string.IsNullOrEmpty(_fileInfo.PhysicalPath) ? _fileInfo.PhysicalPath : SubPath; + _logger.SendingFileRange(_response.Headers[HeaderNames.ContentRange], logPath); + await _context.Response.SendFileAsync(_fileInfo, start, length, _context.RequestAborted); } catch (OperationCanceledException ex) { - _logger.WriteCancelled(ex); // Don't throw this exception, it's most likely caused by the client disconnecting. - // However, if it was cancelled for any other reason we need to prevent empty responses. - _context.Abort(); + _logger.WriteCancelled(ex); } } diff --git a/src/Middleware/StaticFiles/test/UnitTests/StaticFileContextTest.cs b/src/Middleware/StaticFiles/test/UnitTests/StaticFileContextTest.cs index efea2a08e56d..409cda5b5b4d 100644 --- a/src/Middleware/StaticFiles/test/UnitTests/StaticFileContextTest.cs +++ b/src/Middleware/StaticFiles/test/UnitTests/StaticFileContextTest.cs @@ -4,6 +4,7 @@ using System; using System.Collections.Generic; using System.IO; +using System.Threading; using System.Threading.Tasks; using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Http; @@ -120,6 +121,36 @@ public void SkipsHttpsCompression_IfNotMatched() Assert.Equal(HttpsCompressionMode.Default, httpsCompressionFeature.Mode); } + [Fact] + public async Task RequestAborted_DoesntThrow() + { + var options = new StaticFileOptions(); + var fileProvider = new TestFileProvider(); + fileProvider.AddFile("/foo.txt", new TestFileInfo + { + LastModified = new DateTimeOffset(2014, 1, 2, 3, 4, 5, TimeSpan.Zero) + }); + var pathString = new PathString("/test"); + var httpContext = new DefaultHttpContext(); + httpContext.Request.Path = new PathString("/test/foo.txt"); + httpContext.RequestAborted = new CancellationToken(canceled: true); + var body = new MemoryStream(); + httpContext.Response.Body = body; + var validateResult = StaticFileMiddleware.ValidatePath(httpContext, pathString, out var subPath); + var contentTypeResult = StaticFileMiddleware.LookupContentType(new FileExtensionContentTypeProvider(), options, subPath, out var contentType); + + var context = new StaticFileContext(httpContext, options, NullLogger.Instance, fileProvider, contentType, subPath); + + var result = context.LookupFileInfo(); + Assert.True(validateResult); + Assert.True(contentTypeResult); + Assert.True(result); + + await context.SendAsync(); + + Assert.Equal(0, body.Length); + } + private sealed class TestFileProvider : IFileProvider { private readonly Dictionary _files = new Dictionary(StringComparer.Ordinal); diff --git a/src/Servers/HttpSys/test/FunctionalTests/ResponseSendFileTests.cs b/src/Servers/HttpSys/test/FunctionalTests/ResponseSendFileTests.cs index 1bda0ddee12f..8d54a67a536d 100644 --- a/src/Servers/HttpSys/test/FunctionalTests/ResponseSendFileTests.cs +++ b/src/Servers/HttpSys/test/FunctionalTests/ResponseSendFileTests.cs @@ -487,17 +487,21 @@ public async Task ResponseSendFileExceptions_ClientDisconnectsBeforeFirstSend_Se try { + // Note Response.SendFileAsync uses RequestAborted by default. This can cause the response to be disposed + // before it throws an IOException, but there's a race depending on when the disconnect is noticed. + // Passing our own token to skip that. + using var cts = new CancellationTokenSource(); await Assert.ThrowsAsync(async () => { // It can take several tries before Send notices the disconnect. for (int i = 0; i < Utilities.WriteRetryLimit; i++) { - await httpContext.Response.SendFileAsync(AbsoluteFilePath, 0, null); + await httpContext.Response.SendFileAsync(AbsoluteFilePath, 0, null, cts.Token); } }); await Assert.ThrowsAsync(() => - httpContext.Response.SendFileAsync(AbsoluteFilePath, 0, null)); + httpContext.Response.SendFileAsync(AbsoluteFilePath, 0, null, cts.Token)); testComplete.SetResult(0); } @@ -573,9 +577,13 @@ public async Task ResponseSendFileExceptions_ClientDisconnectsBeforeSecondSend_S var testComplete = new TaskCompletionSource(TaskCreationOptions.RunContinuationsAsynchronously); using (Utilities.CreateHttpServer(out var address, async httpContext => { + // Note Response.SendFileAsync uses RequestAborted by default. This can cause the response to be disposed + // before it throws an IOException, but there's a race depending on when the disconnect is noticed. + // Passing our own token to skip that. + using var cts = new CancellationTokenSource(); httpContext.RequestAborted.Register(() => cancellationReceived.SetResult(0)); // First write sends headers - await httpContext.Response.SendFileAsync(AbsoluteFilePath, 0, null); + await httpContext.Response.SendFileAsync(AbsoluteFilePath, 0, null, cts.Token); firstSendComplete.SetResult(0); await clientDisconnected.Task; @@ -586,7 +594,7 @@ await Assert.ThrowsAsync(async () => // It can take several tries before Write notices the disconnect. for (int i = 0; i < Utilities.WriteRetryLimit; i++) { - await httpContext.Response.SendFileAsync(AbsoluteFilePath, 0, null, CancellationToken.None); + await httpContext.Response.SendFileAsync(AbsoluteFilePath, 0, null, cts.Token); } }); From 542031b42114b9c2e1f30276622a5f8b7768cf40 Mon Sep 17 00:00:00 2001 From: Brennan Conroy Date: Tue, 21 Jul 2020 21:59:33 +0000 Subject: [PATCH 02/45] Merged PR 9196: Modify WebSockets ValueTaskSource Create the GCHandle per operation and Free it when resetting the ValueTaskSource for re-use. Cherry-picked change from 3.1 --- .../IIS/IIS/src/Core/IO/WebSocketsAsyncIOEngine.Read.cs | 6 ++++-- .../IIS/IIS/src/Core/IO/WebSocketsAsyncIOEngine.Write.cs | 6 ++++-- src/Servers/IIS/IIS/src/Core/IO/WebSocketsAsyncIOEngine.cs | 2 +- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/Servers/IIS/IIS/src/Core/IO/WebSocketsAsyncIOEngine.Read.cs b/src/Servers/IIS/IIS/src/Core/IO/WebSocketsAsyncIOEngine.Read.cs index 2dac1a234e7d..db4068c52c3d 100644 --- a/src/Servers/IIS/IIS/src/Core/IO/WebSocketsAsyncIOEngine.Read.cs +++ b/src/Servers/IIS/IIS/src/Core/IO/WebSocketsAsyncIOEngine.Read.cs @@ -25,7 +25,7 @@ internal class WebSocketReadOperation : AsyncIOOperation }; private readonly WebSocketsAsyncIOEngine _engine; - private readonly GCHandle _thisHandle; + private GCHandle _thisHandle; private MemoryHandle _inputHandle; private IntPtr _requestHandler; private Memory _memory; @@ -33,11 +33,11 @@ internal class WebSocketReadOperation : AsyncIOOperation public WebSocketReadOperation(WebSocketsAsyncIOEngine engine) { _engine = engine; - _thisHandle = GCHandle.Alloc(this); } protected override unsafe bool InvokeOperation(out int hr, out int bytes) { + _thisHandle = GCHandle.Alloc(this); _inputHandle = _memory.Pin(); hr = NativeMethods.HttpWebsocketsReadBytes( @@ -67,6 +67,8 @@ protected override void ResetOperation() { base.ResetOperation(); + _thisHandle.Free(); + _memory = default; _inputHandle.Dispose(); _inputHandle = default; diff --git a/src/Servers/IIS/IIS/src/Core/IO/WebSocketsAsyncIOEngine.Write.cs b/src/Servers/IIS/IIS/src/Core/IO/WebSocketsAsyncIOEngine.Write.cs index 3eff3bba4609..5e6630aae5bd 100644 --- a/src/Servers/IIS/IIS/src/Core/IO/WebSocketsAsyncIOEngine.Write.cs +++ b/src/Servers/IIS/IIS/src/Core/IO/WebSocketsAsyncIOEngine.Write.cs @@ -25,16 +25,16 @@ internal sealed class WebSocketWriteOperation : AsyncWriteOperationBase }; private readonly WebSocketsAsyncIOEngine _engine; - private readonly GCHandle _thisHandle; + private GCHandle _thisHandle; public WebSocketWriteOperation(WebSocketsAsyncIOEngine engine) { _engine = engine; - _thisHandle = GCHandle.Alloc(this); } protected override unsafe int WriteChunks(IntPtr requestHandler, int chunkCount, HttpApiTypes.HTTP_DATA_CHUNK* dataChunks, out bool completionExpected) { + _thisHandle = GCHandle.Alloc(this); return NativeMethods.HttpWebsocketsWriteBytes(requestHandler, dataChunks, chunkCount, WriteCallback, (IntPtr)_thisHandle, out completionExpected); } @@ -42,6 +42,8 @@ protected override void ResetOperation() { base.ResetOperation(); + _thisHandle.Free(); + _engine.ReturnOperation(this); } } diff --git a/src/Servers/IIS/IIS/src/Core/IO/WebSocketsAsyncIOEngine.cs b/src/Servers/IIS/IIS/src/Core/IO/WebSocketsAsyncIOEngine.cs index a796af23b34e..2c1ac02e2031 100644 --- a/src/Servers/IIS/IIS/src/Core/IO/WebSocketsAsyncIOEngine.cs +++ b/src/Servers/IIS/IIS/src/Core/IO/WebSocketsAsyncIOEngine.cs @@ -39,7 +39,7 @@ public ValueTask ReadAsync(Memory memory) var read = GetReadOperation(); read.Initialize(_handler, memory); read.Invoke(); - return new ValueTask(read, 0); + return new ValueTask(read, 0); } } From cba2275799aba49c4ab66b8879c6ddef46d8c045 Mon Sep 17 00:00:00 2001 From: DotNet Bot Date: Sun, 26 Jul 2020 05:49:09 +0000 Subject: [PATCH 03/45] Merged PR 9296: [internal/release/5.0-preview8] Update dependencies from dnceng/internal/dotnet-runtime This pull request updates the following dependencies [marker]: <> (Begin:2f3f3ff0-d34f-49bd-50aa-08d828f9655f) ## From https://github.com/dotnet/runtime - **Subscription**: 2f3f3ff0-d34f-49bd-50aa-08d828f9655f - **Build**: 20200722.7 - **Date Produced**: 7/23/2020 12:04 AM - **Commit**: 3cab6dd440a5f3763bfbd2d582b36fe51095686a - **Branch**: refs/heads/internal/release/5.0-preview8 [DependencyUpdate]: <> (Begin) - **Updates**: - **System.Diagnostics.DiagnosticSource**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7 - **System.Diagnostics.EventLog**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7 - **System.Drawing.Common**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7 - **System.IO.Pipelines**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7 - **System.ComponentModel.Annotations**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7 - **Microsoft.Extensions.Logging.Abstractions**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7 - **Microsoft.Extensions.Logging.Configuration**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7 - **Microsoft.Extensions.Logging.Console**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7 - **Microsoft.Extensions.Logging.Debug**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7 - **Microsoft.Extensions.Logging.EventLog**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7 - **Microsoft.Extensions.Logging.EventSource**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7 - **Microsoft.Extensions.Logging.TraceSource**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7 - **Microsoft.Extensions.Options**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7 - **Microsoft.Extensions.Options.ConfigurationExtensions**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7 - **Microsoft.Extensions.Options.DataAnnotations**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7 - **Microsoft.Extensions.Primitives**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7 - **Microsoft.Extensions.Logging**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7 - **Microsoft.Extensions.Internal.Transport**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7 - **Microsoft.Extensions.Hosting.Abstractions**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7 - **Microsoft.Extensions.Caching.Abstractions**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7 - **Microsoft.Extensions.Caching.Memory**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7 - **Microsoft.Extensions.Configuration**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7 - **Microsoft.Extensions.Configuration.Abstractions**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7 - **Microsoft.Extensions.Configuration.Binder**: from 5.0.0-preview.8.20361.2 to 5.0.0-preview.8.20372.7 - **Microsoft.Extensions.Configuration.CommandLine**: from 5.0.0-preview.8.203... --- .azure/pipelines/ci.yml | 9 +- NuGet.config | 3 - eng/Version.Details.xml | 252 +++++++++--------- eng/Versions.props | 128 +++++---- eng/helix/content/InstallDotNet.ps1 | 35 --- eng/helix/content/runtests.cmd | 12 +- eng/helix/content/runtests.sh | 63 ++--- eng/scripts/ci-source-build.sh | 70 ++++- eng/targets/Helix.targets | 13 +- .../Web.JS/dist/Release/blazor.server.js | 6 +- .../Web.JS/dist/Release/blazor.webassembly.js | 2 +- .../Web.JS/src/Platform/Mono/MonoPlatform.ts | 1 + .../test/InteropTests/InteropTests.csproj | 3 + .../testassets/InteropClient/InteropClient.cs | 2 +- .../test/testassets/InteropWebsite/Program.cs | 2 +- src/Http/WebUtilities/src/FormPipeReader.cs | 2 +- .../clients/ts/FunctionalTests/Program.cs | 2 +- 17 files changed, 314 insertions(+), 291 deletions(-) delete mode 100644 eng/helix/content/InstallDotNet.ps1 diff --git a/.azure/pipelines/ci.yml b/.azure/pipelines/ci.yml index 62a8e30dc958..554d8f331c94 100644 --- a/.azure/pipelines/ci.yml +++ b/.azure/pipelines/ci.yml @@ -607,17 +607,18 @@ stages: timeoutInMinutes: 180 steps: # Build the shared framework - - script: ./build.cmd -ci -nobl -all -pack -arch x64 /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log + - script: ./build.cmd -ci -nobl -all -pack -arch x64 /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log $(_InternalRuntimeDownloadArgs) displayName: Build shared fx - - script: ./build.cmd -ci -nobl -noBuildRepoTasks -restore -noBuild -noBuildNative -projects src/Grpc/**/*.csproj + - script: ./build.cmd -ci -nobl -noBuildRepoTasks -restore -noBuild -noBuildNative -projects src/Grpc/**/*.csproj $(_InternalRuntimeDownloadArgs) displayName: Restore interop projects - script: ./build.cmd -ci -nobl -noBuildRepoTasks -noRestore -test -all -noBuildNative -projects eng\helix\helix.proj - /p:IsRequiredCheck=true /p:IsHelixJob=true /p:BuildInteropProjects=true /p:RunTemplateTests=true + /p:IsRequiredCheck=true /p:IsHelixJob=true /p:BuildInteropProjects=true /p:RunTemplateTests=true $(_InternalRuntimeDownloadArgs) /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log displayName: Run build.cmd helix target env: HelixApiAccessToken: $(HelixApiAccessToken) # Needed for internal queues SYSTEM_ACCESSTOKEN: $(System.AccessToken) # We need to set this env var to publish helix results to Azure Dev Ops + artifacts: - name: Helix_logs path: artifacts/log/ @@ -651,7 +652,7 @@ stages: arguments: $(Build.SourcesDirectory)/NuGet.config $Token env: Token: $(dn-bot-dnceng-artifact-feeds-rw) - - script: ./eng/scripts/ci-source-build.sh --ci --nobl --configuration Release /p:BuildManaged=true /p:BuildNodeJs=false + - script: ./eng/scripts/ci-source-build.sh --ci --nobl --configuration Release /p:BuildManaged=true /p:BuildNodeJs=false $(_InternalRuntimeDownloadArgs) displayName: Run ci-source-build.sh - task: PublishBuildArtifacts@1 displayName: Upload logs diff --git a/NuGet.config b/NuGet.config index 358177f770c7..94e12ce1b49e 100644 --- a/NuGet.config +++ b/NuGet.config @@ -2,9 +2,6 @@ - - - diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 8d8a192ba685..5f7f71da0faf 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -41,264 +41,264 @@ https://github.com/dotnet/efcore 58abc390e0e3eb849b5773da3f5ed2982ade521d - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a - + https://github.com/dotnet/runtime - f37dd6fc8595e130909dcb3085a56342d04aa20c + 3cab6dd440a5f3763bfbd2d582b36fe51095686a https://github.com/dotnet/arcade diff --git a/eng/Versions.props b/eng/Versions.props index 924244aaba33..516e8e1ae5af 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -64,70 +64,70 @@ 3.8.0-1.20361.1 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 - 5.0.0-preview.8.20361.2 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20361.2 + 5.0.0-preview.8.20372.7 3.2.0 @@ -155,7 +155,6 @@ --> $(MicrosoftNETCoreAppRuntimewinx64PackageVersion) - 5.0.0-preview.4.20180.4 diff --git a/eng/helix/content/InstallDotNet.ps1 b/eng/helix/content/InstallDotNet.ps1 deleted file mode 100644 index 7e8786643355..000000000000 --- a/eng/helix/content/InstallDotNet.ps1 +++ /dev/null @@ -1,35 +0,0 @@ - <# - .SYNOPSIS - Installs dotnet sdk and runtime using https://dot.net/v1/dotnet-install.ps1 - .DESCRIPTION - Installs dotnet sdk and runtime using https://dot.net/v1/dotnet-install.ps1 -.PARAMETER arch - The architecture to install. -.PARAMETER sdkVersion - The sdk version to install -.PARAMETER runtimeVersion - The runtime version to install -.PARAMETER installDir - The directory to install to -#> -param( - [Parameter(Mandatory = $true)] - $arch, - - [Parameter(Mandatory = $true)] - $sdkVersion, - - [Parameter(Mandatory = $true)] - $runtimeVersion, - - [Parameter(Mandatory = $true)] - $installDir -) - -& $PSScriptRoot\Download.ps1 "https://dot.net/v1/dotnet-install.ps1" $PSScriptRoot\dotnet-install.ps1 -Write-Host "Download of dotnet-install.ps1 complete..." -Write-Host "Installing SDK...& $PSScriptRoot\dotnet-install.ps1 -Architecture $arch -Version $sdkVersion -InstallDir $installDir" -Invoke-Expression "& $PSScriptRoot\dotnet-install.ps1 -Architecture $arch -Version $sdkVersion -InstallDir $installDir" -Write-Host "Installing Runtime...& $PSScriptRoot\dotnet-install.ps1 -Architecture $arch -Runtime dotnet -Version $runtimeVersion -InstallDir $installDir" -Invoke-Expression "& $PSScriptRoot\dotnet-install.ps1 -Architecture $arch -Runtime dotnet -Version $runtimeVersion -InstallDir $installDir" -Write-Host "InstallDotNet.ps1 complete..." \ No newline at end of file diff --git a/eng/helix/content/runtests.cmd b/eng/helix/content/runtests.cmd index c1b27b1c890c..d5d43bb8ffbf 100644 --- a/eng/helix/content/runtests.cmd +++ b/eng/helix/content/runtests.cmd @@ -15,6 +15,8 @@ set $aspnetref=%9 REM Batch only supports up to 9 arguments using the %# syntax, need to shift to get more shift set $helixTimeout=%9 +shift +set $feedCred=%9 set DOTNET_HOME=%HELIX_CORRELATION_PAYLOAD%\sdk set DOTNET_ROOT=%DOTNET_HOME%\%$arch% @@ -24,10 +26,16 @@ set DOTNET_CLI_HOME=%HELIX_CORRELATION_PAYLOAD%\home set PATH=%DOTNET_ROOT%;!PATH!;%HELIX_CORRELATION_PAYLOAD%\node\bin echo Set path to: %PATH% -echo "Invoking InstallDotNet.ps1 %$arch% %$sdkVersion% %$runtimeVersion% %DOTNET_ROOT%" -powershell.exe -NoProfile -ExecutionPolicy unrestricted -file InstallDotNet.ps1 %$arch% %$sdkVersion% %$runtimeVersion% %DOTNET_ROOT% + +powershell.exe -noLogo -NoProfile -ExecutionPolicy unrestricted -command ". eng\common\tools.ps1; InstallDotNet %DOTNET_ROOT% %$sdkVersion% %$arch% '' $true" +IF [%$feedCred%] == [] ( + powershell.exe -noLogo -NoProfile -ExecutionPolicy unrestricted -command ". eng\common\tools.ps1; InstallDotNet %DOTNET_ROOT% %$runtimeVersion% %$arch% dotnet $true" +) else ( + powershell.exe -noLogo -NoProfile -ExecutionPolicy unrestricted -command ". eng\common\tools.ps1; InstallDotNet %DOTNET_ROOT% %$runtimeVersion% %$arch% dotnet $true https://dotnetclimsrc.blob.core.windows.net/dotnet %$feedCred%" +) set exit_code=0 + echo "Restore: dotnet restore RunTests\RunTests.csproj --source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet5/nuget/v3/index.json --source https://api.nuget.org/v3/index.json --ignore-failed-sources..." dotnet restore RunTests\RunTests.csproj --source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet5/nuget/v3/index.json --source https://api.nuget.org/v3/index.json --ignore-failed-sources diff --git a/eng/helix/content/runtests.sh b/eng/helix/content/runtests.sh index a1bf93270604..90e6fca8a109 100644 --- a/eng/helix/content/runtests.sh +++ b/eng/helix/content/runtests.sh @@ -30,49 +30,24 @@ RED="\033[0;31m" YELLOW="\033[0;33m" MAGENTA="\033[0;95m" -curl -o dotnet-install.sh -sSL https://dot.net/v1/dotnet-install.sh -if [ $? -ne 0 ]; then - download_retries=3 - while [ $download_retries -gt 0 ]; do - curl -o dotnet-install.sh -sSL https://dot.net/v1/dotnet-install.sh - if [ $? -ne 0 ]; then - let download_retries=download_retries-1 - echo -e "${YELLOW}Failed to download dotnet-install.sh. Retries left: $download_retries.${RESET}" - else - download_retries=0 - fi - done -fi - -# Call "sync" between "chmod" and execution to prevent "text file busy" error in Docker (aufs) -chmod +x "dotnet-install.sh"; sync - -./dotnet-install.sh --version $dotnet_sdk_version --install-dir "$DOTNET_ROOT" -if [ $? -ne 0 ]; then - sdk_retries=3 - while [ $sdk_retries -gt 0 ]; do - ./dotnet-install.sh --version $dotnet_sdk_version --install-dir "$DOTNET_ROOT" - if [ $? -ne 0 ]; then - let sdk_retries=sdk_retries-1 - echo -e "${YELLOW}Failed to install .NET Core SDK $version. Retries left: $sdk_retries.${RESET}" - else - sdk_retries=0 - fi - done -fi - -./dotnet-install.sh --runtime dotnet --version $dotnet_runtime_version --install-dir "$DOTNET_ROOT" -if [ $? -ne 0 ]; then - runtime_retries=3 - while [ $runtime_retries -gt 0 ]; do - ./dotnet-install.sh --runtime dotnet --version $dotnet_runtime_version --install-dir "$DOTNET_ROOT" - if [ $? -ne 0 ]; then - let runtime_retries=runtime_retries-1 - echo -e "${YELLOW}Failed to install .NET Core runtime $version. Retries left: $runtime_retries.${RESET}" - else - runtime_retries=0 - fi - done +. eng/common/tools.sh +InstallDotNet $DOTNET_ROOT $dotnet_sdk_version "" "" true || { + exit_code=$? + Write-PipelineTelemetryError -Category 'InitializeToolset' -Message "dotnet-install.sh failed (exit code '$exit_code')." >&2 + ExitWithExitCode $exit_code +} +if [[ -z "${11:-}" ]]; then + InstallDotNet $DOTNET_ROOT $dotnet_runtime_version "" dotnet true || { + exit_code=$? + Write-PipelineTelemetryError -Category 'InitializeToolset' -Message "dotnet-install.sh failed (exit code '$exit_code')." >&2 + ExitWithExitCode $exit_code + } +else + InstallDotNet $DOTNET_ROOT $dotnet_runtime_version "" dotnet true https://dotnetclimsrc.blob.core.windows.net/dotnet ${11} || { + exit_code=$? + Write-PipelineTelemetryError -Category 'InitializeToolset' -Message "dotnet-install.sh failed (exit code '$exit_code')." >&2 + ExitWithExitCode $exit_code + } fi if [ -e /proc/self/coredump_filter ]; then @@ -82,7 +57,7 @@ if [ -e /proc/self/coredump_filter ]; then echo -n 0x3F > /proc/self/coredump_filter fi -# dontet-install.sh seems to affect the Linux filesystem and causes test flakiness unless we sync the filesystem before running tests +# dotnet-install.sh seems to affect the Linux filesystem and causes test flakiness unless we sync the filesystem before running tests sync exit_code=0 diff --git a/eng/scripts/ci-source-build.sh b/eng/scripts/ci-source-build.sh index 468f74975193..d599fced8c98 100755 --- a/eng/scripts/ci-source-build.sh +++ b/eng/scripts/ci-source-build.sh @@ -33,10 +33,76 @@ reporoot="$(dirname "$(dirname "$scriptroot")")" # mv "$reporoot/global.bak.json" "$reporoot/global.json" #}" EXIT +dotnet_runtime_source_feed='' +dotnet_runtime_source_feed_key='' +other_args=() + +# +# Functions +# +__usage() { + echo "Usage: $(basename "${BASH_SOURCE[0]}") [options] [[--] ...] + +Arguments: + ... Arguments passed to the command. Variable number of arguments allowed. + + --dotnet-runtime-source-feed Additional feed that can be used when downloading .NET runtimes + --dotnet-runtime-source-feed-key Key for feed that can be used when downloading .NET runtimes + +Description: + This script is meant for testing source build by imitating some of the input parameters and conditions. +" + + if [[ "${1:-}" != '--no-exit' ]]; then + exit 2 + fi +} + +__error() { + echo -e "${RED}error: $*${RESET}" 1>&2 +} + +# +# main +# + +while [[ $# -gt 0 ]]; do + opt="$(echo "${1/#--/-}" | awk '{print tolower($0)}')" + case "$opt" in + -\?|-h|-help) + __usage --no-exit + exit 0 + ;; + -dotnet-runtime-source-feed|-dotnetruntimesourcefeed) + shift + [ -z "${1:-}" ] && __error "Missing value for parameter --dotnet-runtime-source-feed" && __usage + dotnet_runtime_source_feed="${1:-}" + ;; + -dotnet-runtime-source-feed-key|-dotnetruntimesourcefeedkey) + shift + [ -z "${1:-}" ] && __error "Missing value for parameter --dotnet-runtime-source-feed-key" && __usage + dotnet_runtime_source_feed_key="${1:-}" + ;; + *) + other_args[${#other_args[*]}]="$1" + ;; + esac + shift +done + +# Set up additional runtime args +runtime_feed_args=() +if [ ! -z "$dotnet_runtime_source_feed$dotnet_runtime_source_feed_key" ]; then + runtimeFeedArg="/p:DotNetRuntimeSourceFeed=$dotnet_runtime_source_feed" + runtimeFeedKeyArg="/p:DotNetRuntimeSourceFeedKey=$dotnet_runtime_source_feed_key" + runtime_feed_args[${#runtime_feed_args[*]}]=$runtimeFeedArg + runtime_feed_args[${#runtime_feed_args[*]}]=$runtimeFeedKeyArg +fi + # Build repo tasks -"$reporoot/eng/common/build.sh" --restore --build --ci --configuration Release /p:ProjectToBuild=$reporoot/eng/tools/RepoTasks/RepoTasks.csproj +"$reporoot/eng/common/build.sh" --restore --build --ci --configuration Release /p:ProjectToBuild=$reporoot/eng/tools/RepoTasks/RepoTasks.csproj ${runtime_feed_args[@]+"${runtime_feed_args[@]}"} export DotNetBuildFromSource='true' # Build projects -"$reporoot/eng/common/build.sh" --restore --build --pack "$@" \ No newline at end of file +"$reporoot/eng/common/build.sh" --restore --build --pack ${other_args[@]+"${other_args[@]}"} ${runtime_feed_args[@]+"${runtime_feed_args[@]}"} diff --git a/eng/targets/Helix.targets b/eng/targets/Helix.targets index 0743963a02a9..188b9b01bc65 100644 --- a/eng/targets/Helix.targets +++ b/eng/targets/Helix.targets @@ -28,6 +28,15 @@ + + + + eng\common\%(Filename)%(Extension) + PreserveNewest + PreserveNewest + + false diff --git a/src/Grpc/test/testassets/InteropClient/InteropClient.cs b/src/Grpc/test/testassets/InteropClient/InteropClient.cs index 273bcd195029..d6b47ab24139 100644 --- a/src/Grpc/test/testassets/InteropClient/InteropClient.cs +++ b/src/Grpc/test/testassets/InteropClient/InteropClient.cs @@ -97,7 +97,7 @@ private InteropClient(ClientOptions options) services.AddLogging(configure => { configure.SetMinimumLevel(Microsoft.Extensions.Logging.LogLevel.Trace); - configure.AddConsole(loggerOptions => + configure.AddSimpleConsole(loggerOptions => { loggerOptions.IncludeScopes = true; loggerOptions.DisableColors = true; diff --git a/src/Grpc/test/testassets/InteropWebsite/Program.cs b/src/Grpc/test/testassets/InteropWebsite/Program.cs index 0648004d95c8..3efd0d647c91 100644 --- a/src/Grpc/test/testassets/InteropWebsite/Program.cs +++ b/src/Grpc/test/testassets/InteropWebsite/Program.cs @@ -37,7 +37,7 @@ public static IHostBuilder CreateHostBuilder(string[] args) => Host.CreateDefaultBuilder(args) .ConfigureLogging(builder => { - builder.AddConsole(o => o.DisableColors = true); + builder.AddSimpleConsole(o => o.DisableColors = true); builder.SetMinimumLevel(LogLevel.Trace); }) .ConfigureWebHostDefaults(webBuilder => diff --git a/src/Http/WebUtilities/src/FormPipeReader.cs b/src/Http/WebUtilities/src/FormPipeReader.cs index bcb553458d54..6a41dcd95e80 100644 --- a/src/Http/WebUtilities/src/FormPipeReader.cs +++ b/src/Http/WebUtilities/src/FormPipeReader.cs @@ -271,7 +271,7 @@ private void ParseValuesSlow( var keyValueReader = new SequenceReader(keyValuePair); ReadOnlySequence value; - if (keyValueReader.TryReadTo(out var key, equalsDelimiter)) + if (keyValueReader.TryReadTo(out ReadOnlySequence key, equalsDelimiter)) { if (key.Length > KeyLengthLimit) { diff --git a/src/SignalR/clients/ts/FunctionalTests/Program.cs b/src/SignalR/clients/ts/FunctionalTests/Program.cs index bc1cc0a323a7..358bba527e38 100644 --- a/src/SignalR/clients/ts/FunctionalTests/Program.cs +++ b/src/SignalR/clients/ts/FunctionalTests/Program.cs @@ -35,7 +35,7 @@ public static Task Main(string[] args) webHostBuilder .ConfigureLogging(factory => { - factory.AddConsole(options => + factory.AddSimpleConsole(options => { options.IncludeScopes = true; options.TimestampFormat = "[HH:mm:ss] "; From 3e7a10649154271b475dd4b6919fefe2b9e73a53 Mon Sep 17 00:00:00 2001 From: Pranav Krishnamoorthy Date: Tue, 28 Jul 2020 21:28:52 +0000 Subject: [PATCH 04/45] Merged PR 9371: Revive support for globalization and localization in Blazor WASM Revive support for globalization and localization in Blazor WASM * Load icu and timezone data files * Unskip tests Fixes https://github.com/dotnet/aspnetcore/issues/24174 Fixes https://github.com/dotnet/aspnetcore/issues/22975 Fixes https://github.com/dotnet/aspnetcore/issues/23260 --- .../Web.JS/dist/Release/blazor.server.js | 8 +-- .../Web.JS/dist/Release/blazor.webassembly.js | 2 +- .../Web.JS/src/Platform/Mono/MonoPlatform.ts | 49 +++++++++++++++++-- .../Web.JS/src/Platform/Mono/MonoTypes.ts | 3 ++ .../src/Platform/Mono/TimezoneDataFile.ts | 43 ---------------- .../src/Platform/WebAssemblyStartOptions.ts | 2 +- .../WasmBuildIntegrationTest.cs | 9 ++-- .../Sdk/src/targets/BlazorWasm.web.config | 1 + ....NET.Sdk.BlazorWebAssembly.Current.targets | 2 + ...WebAssemblyApplicationBuilderExtensions.cs | 1 + .../src/Hosting/SatelliteResourcesLoader.cs | 5 +- src/Components/test/E2ETest/Tests/BindTest.cs | 8 +-- .../Tests/WebAssemblyLocalizationTest.cs | 2 +- .../netstandard2.0/BlazorWasm.web.config | 1 + ...soft.NET.Sdk.Razor.Components.Wasm.targets | 3 ++ 15 files changed, 75 insertions(+), 64 deletions(-) delete mode 100644 src/Components/Web.JS/src/Platform/Mono/TimezoneDataFile.ts diff --git a/src/Components/Web.JS/dist/Release/blazor.server.js b/src/Components/Web.JS/dist/Release/blazor.server.js index ccb9e6880658..0fb8aff6368e 100644 --- a/src/Components/Web.JS/dist/Release/blazor.server.js +++ b/src/Components/Web.JS/dist/Release/blazor.server.js @@ -1,19 +1,19 @@ -!function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=53)}([function(e,t,n){"use strict";var r;n.d(t,"a",(function(){return r})),function(e){e[e.Trace=0]="Trace",e[e.Debug=1]="Debug",e[e.Information=2]="Information",e[e.Warning=3]="Warning",e[e.Error=4]="Error",e[e.Critical=5]="Critical",e[e.None=6]="None"}(r||(r={}))},function(e,t,n){"use strict";(function(e){n.d(t,"e",(function(){return c})),n.d(t,"a",(function(){return u})),n.d(t,"c",(function(){return l})),n.d(t,"g",(function(){return f})),n.d(t,"i",(function(){return h})),n.d(t,"j",(function(){return p})),n.d(t,"f",(function(){return d})),n.d(t,"d",(function(){return g})),n.d(t,"b",(function(){return y})),n.d(t,"h",(function(){return v}));var r=n(0),o=n(6),i=Object.assign||function(e){for(var t,n=1,r=arguments.length;n0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]-1&&this.subject.observers.splice(e,1),0===this.subject.observers.length&&this.subject.cancelCallback&&this.subject.cancelCallback().catch((function(e){}))},e}(),y=function(){function e(e){this.minimumLogLevel=e,this.outputConsole=console}return e.prototype.log=function(e,t){if(e>=this.minimumLogLevel)switch(e){case r.a.Critical:case r.a.Error:this.outputConsole.error("["+(new Date).toISOString()+"] "+r.a[e]+": "+t);break;case r.a.Warning:this.outputConsole.warn("["+(new Date).toISOString()+"] "+r.a[e]+": "+t);break;case r.a.Information:this.outputConsole.info("["+(new Date).toISOString()+"] "+r.a[e]+": "+t);break;default:this.outputConsole.log("["+(new Date).toISOString()+"] "+r.a[e]+": "+t)}},e}();function v(){var e="X-SignalR-User-Agent";return l.isNode&&(e="User-Agent"),[e,b(c,m(),E(),w())]}function b(e,t,n,r){var o="Microsoft SignalR/",i=e.split(".");return o+=i[0]+"."+i[1],o+=" ("+e+"; ",o+=t&&""!==t?t+"; ":"Unknown OS; ",o+=""+n,o+=r?"; "+r:"; Unknown Runtime Version",o+=")"}function m(){if(!l.isNode)return"";switch(e.platform){case"win32":return"Windows NT";case"darwin":return"macOS";case"linux":return"Linux";default:return e.platform}}function w(){if(l.isNode)return e.versions.node}function E(){return l.isNode?"NodeJS":"Browser"}}).call(this,n(14))},function(e,t,n){"use strict";n.r(t),n.d(t,"AbortError",(function(){return s})),n.d(t,"HttpError",(function(){return i})),n.d(t,"TimeoutError",(function(){return a})),n.d(t,"HttpClient",(function(){return l})),n.d(t,"HttpResponse",(function(){return u})),n.d(t,"DefaultHttpClient",(function(){return S})),n.d(t,"HubConnection",(function(){return O})),n.d(t,"HubConnectionState",(function(){return I})),n.d(t,"HubConnectionBuilder",(function(){return re})),n.d(t,"MessageType",(function(){return b})),n.d(t,"LogLevel",(function(){return f.a})),n.d(t,"HttpTransportType",(function(){return P})),n.d(t,"TransferFormat",(function(){return x})),n.d(t,"NullLogger",(function(){return $.a})),n.d(t,"JsonHubProtocol",(function(){return ee})),n.d(t,"Subject",(function(){return _})),n.d(t,"VERSION",(function(){return h.e}));var r,o=(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])},function(e,t){function n(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}),i=function(e){function t(t,n){var r=this,o=this.constructor.prototype;return(r=e.call(this,t)||this).statusCode=n,r.__proto__=o,r}return o(t,e),t}(Error),a=function(e){function t(t){void 0===t&&(t="A timeout occurred.");var n=this,r=this.constructor.prototype;return(n=e.call(this,t)||this).__proto__=r,n}return o(t,e),t}(Error),s=function(e){function t(t){void 0===t&&(t="An abort occurred.");var n=this,r=this.constructor.prototype;return(n=e.call(this,t)||this).__proto__=r,n}return o(t,e),t}(Error),c=Object.assign||function(e){for(var t,n=1,r=arguments.length;n0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]=200&&o.status<300?n(new u(o.status,o.statusText,o.response||o.responseText)):r(new i(o.statusText,o.status))},o.onerror=function(){t.logger.log(f.a.Warning,"Error from HTTP request. "+o.status+": "+o.statusText+"."),r(new i(o.statusText,o.status))},o.ontimeout=function(){t.logger.log(f.a.Warning,"Timeout from HTTP request."),r(new a)},o.send(e.content||"")})):Promise.reject(new Error("No url defined.")):Promise.reject(new Error("No method defined."))},t}(l),E=function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),S=function(e){function t(t){var n=e.call(this)||this;if("undefined"!=typeof fetch||h.c.isNode)n.httpClient=new v(t);else{if("undefined"==typeof XMLHttpRequest)throw new Error("No usable HttpClient found.");n.httpClient=new w(t)}return n}return E(t,e),t.prototype.send=function(e){return e.abortSignal&&e.abortSignal.aborted?Promise.reject(new s):e.method?e.url?this.httpClient.send(e):Promise.reject(new Error("No url defined.")):Promise.reject(new Error("No method defined."))},t.prototype.getCookieString=function(e){return this.httpClient.getCookieString(e)},t}(l),C=n(44);!function(e){e[e.Invocation=1]="Invocation",e[e.StreamItem=2]="StreamItem",e[e.Completion=3]="Completion",e[e.StreamInvocation=4]="StreamInvocation",e[e.CancelInvocation=5]="CancelInvocation",e[e.Ping=6]="Ping",e[e.Close=7]="Close"}(b||(b={}));var I,_=function(){function e(){this.observers=[]}return e.prototype.next=function(e){for(var t=0,n=this.observers;t0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0?[2,Promise.reject(new Error("Unable to connect to the server with any of the available transports. "+i.join(" ")))]:[2,Promise.reject(new Error("None of the transports supported by the client are supported by the server."))]}}))}))},e.prototype.constructTransport=function(e){switch(e){case P.WebSockets:if(!this.options.WebSocket)throw new Error("'WebSocket' is not supported in your environment.");return new Y(this.httpClient,this.accessTokenFactory,this.logger,this.options.logMessageContent||!1,this.options.WebSocket,this.options.headers||{});case P.ServerSentEvents:if(!this.options.EventSource)throw new Error("'EventSource' is not supported in your environment.");return new H(this.httpClient,this.accessTokenFactory,this.logger,this.options.logMessageContent||!1,this.options.EventSource,this.options.withCredentials,this.options.headers||{});case P.LongPolling:return new B(this.httpClient,this.accessTokenFactory,this.logger,this.options.logMessageContent||!1,this.options.withCredentials,this.options.headers||{});default:throw new Error("Unknown transport: "+e+".")}},e.prototype.startTransport=function(e,t){var n=this;return this.transport.onreceive=this.onreceive,this.transport.onclose=function(e){return n.stopConnection(e)},this.transport.connect(e,t)},e.prototype.resolveTransportOrError=function(e,t,n){var r=P[e.transport];if(null==r)return this.logger.log(f.a.Debug,"Skipping transport '"+e.transport+"' because it is not supported by this client."),new Error("Skipping transport '"+e.transport+"' because it is not supported by this client.");if(!function(e,t){return!e||0!=(t&e)}(t,r))return this.logger.log(f.a.Debug,"Skipping transport '"+P[r]+"' because it was disabled by the client."),new Error("'"+P[r]+"' is disabled by the client.");if(!(e.transferFormats.map((function(e){return x[e]})).indexOf(n)>=0))return this.logger.log(f.a.Debug,"Skipping transport '"+P[r]+"' because it does not support the requested transfer format '"+x[n]+"'."),new Error("'"+P[r]+"' does not support "+x[n]+".");if(r===P.WebSockets&&!this.options.WebSocket||r===P.ServerSentEvents&&!this.options.EventSource)return this.logger.log(f.a.Debug,"Skipping transport '"+P[r]+"' because it is not supported in your environment.'"),new Error("'"+P[r]+"' is not supported in your environment.");this.logger.log(f.a.Debug,"Selecting transport '"+P[r]+"'.");try{return this.constructTransport(r)}catch(e){return e}},e.prototype.isITransport=function(e){return e&&"object"==typeof e&&"connect"in e},e.prototype.stopConnection=function(e){var t=this;if(this.logger.log(f.a.Debug,"HttpConnection.stopConnection("+e+") called while in state "+this.connectionState+"."),this.transport=void 0,e=this.stopError||e,this.stopError=void 0,"Disconnected"!==this.connectionState){if("Connecting"===this.connectionState)throw this.logger.log(f.a.Warning,"Call to HttpConnection.stopConnection("+e+") was ignored because the connection is still in the connecting state."),new Error("HttpConnection.stopConnection("+e+") was called while the connection is still in the connecting state.");if("Disconnecting"===this.connectionState&&this.stopPromiseResolver(),e?this.logger.log(f.a.Error,"Connection disconnected with error '"+e+"'."):this.logger.log(f.a.Information,"Connection disconnected."),this.sendQueue&&(this.sendQueue.stop().catch((function(e){t.logger.log(f.a.Error,"TransportSendQueue.stop() threw error '"+e+"'.")})),this.sendQueue=void 0),this.connectionId=void 0,this.connectionState="Disconnected",this.connectionStarted){this.connectionStarted=!1;try{this.onclose&&this.onclose(e)}catch(t){this.logger.log(f.a.Error,"HttpConnection.onclose("+e+") threw error '"+t+"'.")}}}else this.logger.log(f.a.Debug,"Call to HttpConnection.stopConnection("+e+") was ignored because the connection is already in the disconnected state.")},e.prototype.resolveUrl=function(e){if(0===e.lastIndexOf("https://",0)||0===e.lastIndexOf("http://",0))return e;if(!h.c.isBrowser||!window.document)throw new Error("Cannot resolve '"+e+"'.");var t=window.document.createElement("a");return t.href=e,this.logger.log(f.a.Information,"Normalizing '"+e+"' to '"+t.href+"'."),t.href},e.prototype.resolveNegotiateUrl=function(e){var t=e.indexOf("?"),n=e.substring(0,-1===t?e.length:t);return"/"!==n[n.length-1]&&(n+="/"),n+="negotiate",-1===(n+=-1===t?"":e.substring(t)).indexOf("negotiateVersion")&&(n+=-1===t?"?":"&",n+="negotiateVersion="+this.negotiateVersion),n},e}();var G=function(){function e(e){this.transport=e,this.buffer=[],this.executing=!0,this.sendBufferedData=new Q,this.transportResult=new Q,this.sendLoopPromise=this.sendLoop()}return e.prototype.send=function(e){return this.bufferData(e),this.transportResult||(this.transportResult=new Q),this.transportResult.promise},e.prototype.stop=function(){return this.executing=!1,this.sendBufferedData.resolve(),this.sendLoopPromise},e.prototype.bufferData=function(e){if(this.buffer.length&&typeof this.buffer[0]!=typeof e)throw new Error("Expected data to be of type "+typeof this.buffer+" but was of type "+typeof e);this.buffer.push(e),this.sendBufferedData.resolve()},e.prototype.sendLoop=function(){return K(this,void 0,void 0,(function(){var t,n,r;return V(this,(function(o){switch(o.label){case 0:return[4,this.sendBufferedData.promise];case 1:if(o.sent(),!this.executing)return this.transportResult&&this.transportResult.reject("Connection stopped."),[3,6];this.sendBufferedData=new Q,t=this.transportResult,this.transportResult=void 0,n="string"==typeof this.buffer[0]?this.buffer.join(""):e.concatBuffers(this.buffer),this.buffer.length=0,o.label=2;case 2:return o.trys.push([2,4,,5]),[4,this.transport.send(n)];case 3:return o.sent(),t.resolve(),[3,5];case 4:return r=o.sent(),t.reject(r),[3,5];case 5:return[3,0];case 6:return[2]}}))}))},e.concatBuffers=function(e){for(var t=e.map((function(e){return e.byteLength})).reduce((function(e,t){return e+t})),n=new Uint8Array(t),r=0,o=0,i=e;o0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]-1&&this.subject.observers.splice(e,1),0===this.subject.observers.length&&this.subject.cancelCallback&&this.subject.cancelCallback().catch((function(e){}))},e}(),y=function(){function e(e){this.minimumLogLevel=e,this.outputConsole=console}return e.prototype.log=function(e,t){if(e>=this.minimumLogLevel)switch(e){case r.a.Critical:case r.a.Error:this.outputConsole.error("["+(new Date).toISOString()+"] "+r.a[e]+": "+t);break;case r.a.Warning:this.outputConsole.warn("["+(new Date).toISOString()+"] "+r.a[e]+": "+t);break;case r.a.Information:this.outputConsole.info("["+(new Date).toISOString()+"] "+r.a[e]+": "+t);break;default:this.outputConsole.log("["+(new Date).toISOString()+"] "+r.a[e]+": "+t)}},e}();function v(){var e="X-SignalR-User-Agent";return l.isNode&&(e="User-Agent"),[e,b(c,m(),E(),w())]}function b(e,t,n,r){var o="Microsoft SignalR/",i=e.split(".");return o+=i[0]+"."+i[1],o+=" ("+e+"; ",o+=t&&""!==t?t+"; ":"Unknown OS; ",o+=""+n,o+=r?"; "+r:"; Unknown Runtime Version",o+=")"}function m(){if(!l.isNode)return"";switch(e.platform){case"win32":return"Windows NT";case"darwin":return"macOS";case"linux":return"Linux";default:return e.platform}}function w(){if(l.isNode)return e.versions.node}function E(){return l.isNode?"NodeJS":"Browser"}}).call(this,n(14))},function(e,t,n){"use strict";n.r(t),n.d(t,"AbortError",(function(){return s})),n.d(t,"HttpError",(function(){return i})),n.d(t,"TimeoutError",(function(){return a})),n.d(t,"HttpClient",(function(){return l})),n.d(t,"HttpResponse",(function(){return u})),n.d(t,"DefaultHttpClient",(function(){return S})),n.d(t,"HubConnection",(function(){return O})),n.d(t,"HubConnectionState",(function(){return I})),n.d(t,"HubConnectionBuilder",(function(){return re})),n.d(t,"MessageType",(function(){return b})),n.d(t,"LogLevel",(function(){return f.a})),n.d(t,"HttpTransportType",(function(){return P})),n.d(t,"TransferFormat",(function(){return x})),n.d(t,"NullLogger",(function(){return $.a})),n.d(t,"JsonHubProtocol",(function(){return ee})),n.d(t,"Subject",(function(){return _})),n.d(t,"VERSION",(function(){return h.e}));var r,o=(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])},function(e,t){function n(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}),i=function(e){function t(t,n){var r=this,o=this.constructor.prototype;return(r=e.call(this,t)||this).statusCode=n,r.__proto__=o,r}return o(t,e),t}(Error),a=function(e){function t(t){void 0===t&&(t="A timeout occurred.");var n=this,r=this.constructor.prototype;return(n=e.call(this,t)||this).__proto__=r,n}return o(t,e),t}(Error),s=function(e){function t(t){void 0===t&&(t="An abort occurred.");var n=this,r=this.constructor.prototype;return(n=e.call(this,t)||this).__proto__=r,n}return o(t,e),t}(Error),c=Object.assign||function(e){for(var t,n=1,r=arguments.length;n0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]=200&&o.status<300?n(new u(o.status,o.statusText,o.response||o.responseText)):r(new i(o.statusText,o.status))},o.onerror=function(){t.logger.log(f.a.Warning,"Error from HTTP request. "+o.status+": "+o.statusText+"."),r(new i(o.statusText,o.status))},o.ontimeout=function(){t.logger.log(f.a.Warning,"Timeout from HTTP request."),r(new a)},o.send(e.content||"")})):Promise.reject(new Error("No url defined.")):Promise.reject(new Error("No method defined."))},t}(l),E=function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),S=function(e){function t(t){var n=e.call(this)||this;if("undefined"!=typeof fetch||h.c.isNode)n.httpClient=new v(t);else{if("undefined"==typeof XMLHttpRequest)throw new Error("No usable HttpClient found.");n.httpClient=new w(t)}return n}return E(t,e),t.prototype.send=function(e){return e.abortSignal&&e.abortSignal.aborted?Promise.reject(new s):e.method?e.url?this.httpClient.send(e):Promise.reject(new Error("No url defined.")):Promise.reject(new Error("No method defined."))},t.prototype.getCookieString=function(e){return this.httpClient.getCookieString(e)},t}(l),C=n(42);!function(e){e[e.Invocation=1]="Invocation",e[e.StreamItem=2]="StreamItem",e[e.Completion=3]="Completion",e[e.StreamInvocation=4]="StreamInvocation",e[e.CancelInvocation=5]="CancelInvocation",e[e.Ping=6]="Ping",e[e.Close=7]="Close"}(b||(b={}));var I,_=function(){function e(){this.observers=[]}return e.prototype.next=function(e){for(var t=0,n=this.observers;t0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0?[2,Promise.reject(new Error("Unable to connect to the server with any of the available transports. "+i.join(" ")))]:[2,Promise.reject(new Error("None of the transports supported by the client are supported by the server."))]}}))}))},e.prototype.constructTransport=function(e){switch(e){case P.WebSockets:if(!this.options.WebSocket)throw new Error("'WebSocket' is not supported in your environment.");return new Y(this.httpClient,this.accessTokenFactory,this.logger,this.options.logMessageContent||!1,this.options.WebSocket,this.options.headers||{});case P.ServerSentEvents:if(!this.options.EventSource)throw new Error("'EventSource' is not supported in your environment.");return new H(this.httpClient,this.accessTokenFactory,this.logger,this.options.logMessageContent||!1,this.options.EventSource,this.options.withCredentials,this.options.headers||{});case P.LongPolling:return new B(this.httpClient,this.accessTokenFactory,this.logger,this.options.logMessageContent||!1,this.options.withCredentials,this.options.headers||{});default:throw new Error("Unknown transport: "+e+".")}},e.prototype.startTransport=function(e,t){var n=this;return this.transport.onreceive=this.onreceive,this.transport.onclose=function(e){return n.stopConnection(e)},this.transport.connect(e,t)},e.prototype.resolveTransportOrError=function(e,t,n){var r=P[e.transport];if(null==r)return this.logger.log(f.a.Debug,"Skipping transport '"+e.transport+"' because it is not supported by this client."),new Error("Skipping transport '"+e.transport+"' because it is not supported by this client.");if(!function(e,t){return!e||0!=(t&e)}(t,r))return this.logger.log(f.a.Debug,"Skipping transport '"+P[r]+"' because it was disabled by the client."),new Error("'"+P[r]+"' is disabled by the client.");if(!(e.transferFormats.map((function(e){return x[e]})).indexOf(n)>=0))return this.logger.log(f.a.Debug,"Skipping transport '"+P[r]+"' because it does not support the requested transfer format '"+x[n]+"'."),new Error("'"+P[r]+"' does not support "+x[n]+".");if(r===P.WebSockets&&!this.options.WebSocket||r===P.ServerSentEvents&&!this.options.EventSource)return this.logger.log(f.a.Debug,"Skipping transport '"+P[r]+"' because it is not supported in your environment.'"),new Error("'"+P[r]+"' is not supported in your environment.");this.logger.log(f.a.Debug,"Selecting transport '"+P[r]+"'.");try{return this.constructTransport(r)}catch(e){return e}},e.prototype.isITransport=function(e){return e&&"object"==typeof e&&"connect"in e},e.prototype.stopConnection=function(e){var t=this;if(this.logger.log(f.a.Debug,"HttpConnection.stopConnection("+e+") called while in state "+this.connectionState+"."),this.transport=void 0,e=this.stopError||e,this.stopError=void 0,"Disconnected"!==this.connectionState){if("Connecting"===this.connectionState)throw this.logger.log(f.a.Warning,"Call to HttpConnection.stopConnection("+e+") was ignored because the connection is still in the connecting state."),new Error("HttpConnection.stopConnection("+e+") was called while the connection is still in the connecting state.");if("Disconnecting"===this.connectionState&&this.stopPromiseResolver(),e?this.logger.log(f.a.Error,"Connection disconnected with error '"+e+"'."):this.logger.log(f.a.Information,"Connection disconnected."),this.sendQueue&&(this.sendQueue.stop().catch((function(e){t.logger.log(f.a.Error,"TransportSendQueue.stop() threw error '"+e+"'.")})),this.sendQueue=void 0),this.connectionId=void 0,this.connectionState="Disconnected",this.connectionStarted){this.connectionStarted=!1;try{this.onclose&&this.onclose(e)}catch(t){this.logger.log(f.a.Error,"HttpConnection.onclose("+e+") threw error '"+t+"'.")}}}else this.logger.log(f.a.Debug,"Call to HttpConnection.stopConnection("+e+") was ignored because the connection is already in the disconnected state.")},e.prototype.resolveUrl=function(e){if(0===e.lastIndexOf("https://",0)||0===e.lastIndexOf("http://",0))return e;if(!h.c.isBrowser||!window.document)throw new Error("Cannot resolve '"+e+"'.");var t=window.document.createElement("a");return t.href=e,this.logger.log(f.a.Information,"Normalizing '"+e+"' to '"+t.href+"'."),t.href},e.prototype.resolveNegotiateUrl=function(e){var t=e.indexOf("?"),n=e.substring(0,-1===t?e.length:t);return"/"!==n[n.length-1]&&(n+="/"),n+="negotiate",-1===(n+=-1===t?"":e.substring(t)).indexOf("negotiateVersion")&&(n+=-1===t?"?":"&",n+="negotiateVersion="+this.negotiateVersion),n},e}();var G=function(){function e(e){this.transport=e,this.buffer=[],this.executing=!0,this.sendBufferedData=new Q,this.transportResult=new Q,this.sendLoopPromise=this.sendLoop()}return e.prototype.send=function(e){return this.bufferData(e),this.transportResult||(this.transportResult=new Q),this.transportResult.promise},e.prototype.stop=function(){return this.executing=!1,this.sendBufferedData.resolve(),this.sendLoopPromise},e.prototype.bufferData=function(e){if(this.buffer.length&&typeof this.buffer[0]!=typeof e)throw new Error("Expected data to be of type "+typeof this.buffer+" but was of type "+typeof e);this.buffer.push(e),this.sendBufferedData.resolve()},e.prototype.sendLoop=function(){return K(this,void 0,void 0,(function(){var t,n,r;return V(this,(function(o){switch(o.label){case 0:return[4,this.sendBufferedData.promise];case 1:if(o.sent(),!this.executing)return this.transportResult&&this.transportResult.reject("Connection stopped."),[3,6];this.sendBufferedData=new Q,t=this.transportResult,this.transportResult=void 0,n="string"==typeof this.buffer[0]?this.buffer.join(""):e.concatBuffers(this.buffer),this.buffer.length=0,o.label=2;case 2:return o.trys.push([2,4,,5]),[4,this.transport.send(n)];case 3:return o.sent(),t.resolve(),[3,5];case 4:return r=o.sent(),t.reject(r),[3,5];case 5:return[3,0];case 6:return[2]}}))}))},e.concatBuffers=function(e){for(var t=e.map((function(e){return e.byteLength})).reduce((function(e,t){return e+t})),n=new Uint8Array(t),r=0,o=0,i=e;o0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1] * @license MIT */ -var r=n(54),o=n(55),i=n(56);function a(){return c.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function s(e,t){if(a()=a())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a().toString(16)+" bytes");return 0|e}function d(e,t){if(c.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var n=e.length;if(0===n)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return F(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return H(e).length;default:if(r)return F(e).length;t=(""+t).toLowerCase(),r=!0}}function g(e,t,n){var r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return x(this,t,n);case"utf8":case"utf-8":return k(this,t,n);case"ascii":return T(this,t,n);case"latin1":case"binary":return P(this,t,n);case"base64":return _(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return O(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function y(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function v(e,t,n,r,o){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=o?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(o)return-1;n=e.length-1}else if(n<0){if(!o)return-1;n=0}if("string"==typeof t&&(t=c.from(t,r)),c.isBuffer(t))return 0===t.length?-1:b(e,t,n,r,o);if("number"==typeof t)return t&=255,c.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?o?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):b(e,[t],n,r,o);throw new TypeError("val must be string, number or Buffer")}function b(e,t,n,r,o){var i,a=1,s=e.length,c=t.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;a=2,s/=2,c/=2,n/=2}function u(e,t){return 1===a?e[t]:e.readUInt16BE(t*a)}if(o){var l=-1;for(i=n;is&&(n=s-c),i=n;i>=0;i--){for(var f=!0,h=0;ho&&(r=o):r=o;var i=t.length;if(i%2!=0)throw new TypeError("Invalid hex string");r>i/2&&(r=i/2);for(var a=0;a>8,o=n%256,i.push(o),i.push(r);return i}(t,e.length-n),e,n,r)}function _(e,t,n){return 0===t&&n===e.length?r.fromByteArray(e):r.fromByteArray(e.slice(t,n))}function k(e,t,n){n=Math.min(e.length,n);for(var r=[],o=t;o239?4:u>223?3:u>191?2:1;if(o+f<=n)switch(f){case 1:u<128&&(l=u);break;case 2:128==(192&(i=e[o+1]))&&(c=(31&u)<<6|63&i)>127&&(l=c);break;case 3:i=e[o+1],a=e[o+2],128==(192&i)&&128==(192&a)&&(c=(15&u)<<12|(63&i)<<6|63&a)>2047&&(c<55296||c>57343)&&(l=c);break;case 4:i=e[o+1],a=e[o+2],s=e[o+3],128==(192&i)&&128==(192&a)&&128==(192&s)&&(c=(15&u)<<18|(63&i)<<12|(63&a)<<6|63&s)>65535&&c<1114112&&(l=c)}null===l?(l=65533,f=1):l>65535&&(l-=65536,r.push(l>>>10&1023|55296),l=56320|1023&l),r.push(l),o+=f}return function(e){var t=e.length;if(t<=4096)return String.fromCharCode.apply(String,e);var n="",r=0;for(;r0&&(e=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(e+=" ... ")),""},c.prototype.compare=function(e,t,n,r,o){if(!c.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===o&&(o=this.length),t<0||n>e.length||r<0||o>this.length)throw new RangeError("out of range index");if(r>=o&&t>=n)return 0;if(r>=o)return-1;if(t>=n)return 1;if(this===e)return 0;for(var i=(o>>>=0)-(r>>>=0),a=(n>>>=0)-(t>>>=0),s=Math.min(i,a),u=this.slice(r,o),l=e.slice(t,n),f=0;fo)&&(n=o),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var i=!1;;)switch(r){case"hex":return m(this,e,t,n);case"utf8":case"utf-8":return w(this,e,t,n);case"ascii":return E(this,e,t,n);case"latin1":case"binary":return S(this,e,t,n);case"base64":return C(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return I(this,e,t,n);default:if(i)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),i=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function T(e,t,n){var r="";n=Math.min(e.length,n);for(var o=t;or)&&(n=r);for(var o="",i=t;in)throw new RangeError("Trying to access beyond buffer length")}function L(e,t,n,r,o,i){if(!c.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>o||te.length)throw new RangeError("Index out of range")}function D(e,t,n,r){t<0&&(t=65535+t+1);for(var o=0,i=Math.min(e.length-n,2);o>>8*(r?o:1-o)}function M(e,t,n,r){t<0&&(t=4294967295+t+1);for(var o=0,i=Math.min(e.length-n,4);o>>8*(r?o:3-o)&255}function j(e,t,n,r,o,i){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function A(e,t,n,r,i){return i||j(e,0,n,4),o.write(e,t,n,r,23,4),n+4}function B(e,t,n,r,i){return i||j(e,0,n,8),o.write(e,t,n,r,52,8),n+8}c.prototype.slice=function(e,t){var n,r=this.length;if((e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t0&&(o*=256);)r+=this[e+--t]*o;return r},c.prototype.readUInt8=function(e,t){return t||R(e,1,this.length),this[e]},c.prototype.readUInt16LE=function(e,t){return t||R(e,2,this.length),this[e]|this[e+1]<<8},c.prototype.readUInt16BE=function(e,t){return t||R(e,2,this.length),this[e]<<8|this[e+1]},c.prototype.readUInt32LE=function(e,t){return t||R(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},c.prototype.readUInt32BE=function(e,t){return t||R(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},c.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||R(e,t,this.length);for(var r=this[e],o=1,i=0;++i=(o*=128)&&(r-=Math.pow(2,8*t)),r},c.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||R(e,t,this.length);for(var r=t,o=1,i=this[e+--r];r>0&&(o*=256);)i+=this[e+--r]*o;return i>=(o*=128)&&(i-=Math.pow(2,8*t)),i},c.prototype.readInt8=function(e,t){return t||R(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},c.prototype.readInt16LE=function(e,t){t||R(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},c.prototype.readInt16BE=function(e,t){t||R(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},c.prototype.readInt32LE=function(e,t){return t||R(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},c.prototype.readInt32BE=function(e,t){return t||R(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},c.prototype.readFloatLE=function(e,t){return t||R(e,4,this.length),o.read(this,e,!0,23,4)},c.prototype.readFloatBE=function(e,t){return t||R(e,4,this.length),o.read(this,e,!1,23,4)},c.prototype.readDoubleLE=function(e,t){return t||R(e,8,this.length),o.read(this,e,!0,52,8)},c.prototype.readDoubleBE=function(e,t){return t||R(e,8,this.length),o.read(this,e,!1,52,8)},c.prototype.writeUIntLE=function(e,t,n,r){(e=+e,t|=0,n|=0,r)||L(this,e,t,n,Math.pow(2,8*n)-1,0);var o=1,i=0;for(this[t]=255&e;++i=0&&(i*=256);)this[t+o]=e/i&255;return t+n},c.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||L(this,e,t,1,255,0),c.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},c.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||L(this,e,t,2,65535,0),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):D(this,e,t,!0),t+2},c.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||L(this,e,t,2,65535,0),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):D(this,e,t,!1),t+2},c.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||L(this,e,t,4,4294967295,0),c.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):M(this,e,t,!0),t+4},c.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||L(this,e,t,4,4294967295,0),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):M(this,e,t,!1),t+4},c.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t|=0,!r){var o=Math.pow(2,8*n-1);L(this,e,t,n,o-1,-o)}var i=0,a=1,s=0;for(this[t]=255&e;++i>0)-s&255;return t+n},c.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t|=0,!r){var o=Math.pow(2,8*n-1);L(this,e,t,n,o-1,-o)}var i=n-1,a=1,s=0;for(this[t+i]=255&e;--i>=0&&(a*=256);)e<0&&0===s&&0!==this[t+i+1]&&(s=1),this[t+i]=(e/a>>0)-s&255;return t+n},c.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||L(this,e,t,1,127,-128),c.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},c.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||L(this,e,t,2,32767,-32768),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):D(this,e,t,!0),t+2},c.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||L(this,e,t,2,32767,-32768),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):D(this,e,t,!1),t+2},c.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||L(this,e,t,4,2147483647,-2147483648),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):M(this,e,t,!0),t+4},c.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||L(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):M(this,e,t,!1),t+4},c.prototype.writeFloatLE=function(e,t,n){return A(this,e,t,!0,n)},c.prototype.writeFloatBE=function(e,t,n){return A(this,e,t,!1,n)},c.prototype.writeDoubleLE=function(e,t,n){return B(this,e,t,!0,n)},c.prototype.writeDoubleBE=function(e,t,n){return B(this,e,t,!1,n)},c.prototype.copy=function(e,t,n,r){if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t=0;--o)e[o+t]=this[o+n];else if(i<1e3||!c.TYPED_ARRAY_SUPPORT)for(o=0;o>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(i=t;i55295&&n<57344){if(!o){if(n>56319){(t-=3)>-1&&i.push(239,191,189);continue}if(a+1===r){(t-=3)>-1&&i.push(239,191,189);continue}o=n;continue}if(n<56320){(t-=3)>-1&&i.push(239,191,189),o=n;continue}n=65536+(o-55296<<10|n-56320)}else o&&(t-=3)>-1&&i.push(239,191,189);if(o=null,n<128){if((t-=1)<0)break;i.push(n)}else if(n<2048){if((t-=2)<0)break;i.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;i.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;i.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return i}function H(e){return r.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(N,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function q(e,t,n,r){for(var o=0;o=t.length||o>=e.length);++o)t[o+n]=e[o];return o}}).call(this,n(9))},function(e,t,n){"use strict";var r=n(15).Buffer,o=n(57),i=n(21),a=n(70),s=n(73),c=n(74);e.exports=function(e){var t=[],n=[];return{encode:c(t,(e=e||{forceFloat64:!1,compatibilityMode:!1,disableTimestampEncoding:!1}).forceFloat64,e.compatibilityMode,e.disableTimestampEncoding),decode:s(n),register:function(e,t,n,a){return o(t,"must have a constructor"),o(n,"must have an encode function"),o(e>=0,"must have a non-negative type"),o(a,"must have a decode function"),this.registerEncoder((function(e){return e instanceof t}),(function(t){var o=i(),a=r.allocUnsafe(1);return a.writeInt8(e,0),o.append(a),o.append(n(t)),o})),this.registerDecoder(e,a),this},registerEncoder:function(e,n){return o(e,"must have an encode function"),o(n,"must have an encode function"),t.push({check:e,encode:n}),this},registerDecoder:function(e,t){return o(e>=0,"must have a non-negative type"),o(t,"must have a decode function"),n.push({type:e,decode:t}),this},encoder:a.encoder,decoder:a.decoder,buffer:!0,type:"msgpack5",IncompleteBufferError:s.IncompleteBufferError}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=p("_blazorLogicalChildren"),o=p("_blazorLogicalParent"),i=p("_blazorLogicalEnd");function a(e,t){if(e.childNodes.length>0&&!t)throw new Error("New logical elements must start empty, or allowExistingContents must be true");return r in e||(e[r]=[]),e}function s(e,t,n){var i=e;if(e instanceof Comment&&(u(i)&&u(i).length>0))throw new Error("Not implemented: inserting non-empty logical container");if(c(i))throw new Error("Not implemented: moving existing logical children");var a=u(t);if(n0;)e(r,0)}var i=r;i.parentNode.removeChild(i)},t.getLogicalParent=c,t.getLogicalSiblingEnd=function(e){return e[i]||null},t.getLogicalChild=function(e,t){return u(e)[t]},t.isSvgElement=function(e){return"http://www.w3.org/2000/svg"===l(e).namespaceURI},t.getLogicalChildrenArray=u,t.permuteLogicalChildren=function(e,t){var n=u(e);t.forEach((function(e){e.moveRangeStart=n[e.fromSiblingIndex],e.moveRangeEnd=function e(t){if(t instanceof Element)return t;var n=f(t);if(n)return n.previousSibling;var r=c(t);return r instanceof Element?r.lastChild:e(r)}(e.moveRangeStart)})),t.forEach((function(t){var r=t.moveToBeforeMarker=document.createComment("marker"),o=n[t.toSiblingIndex+1];o?o.parentNode.insertBefore(r,o):h(r,e)})),t.forEach((function(e){for(var t=e.moveToBeforeMarker,n=t.parentNode,r=e.moveRangeStart,o=e.moveRangeEnd,i=r;i;){var a=i.nextSibling;if(n.insertBefore(i,t),i===o)break;i=a}n.removeChild(t)})),t.forEach((function(e){n[e.toSiblingIndex]=e.moveRangeStart}))},t.getClosestDomElement=l},function(e,t){var n,r,o=e.exports={};function i(){throw new Error("setTimeout has not been defined")}function a(){throw new Error("clearTimeout has not been defined")}function s(e){if(n===setTimeout)return setTimeout(e,0);if((n===i||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:i}catch(e){n=i}try{r="function"==typeof clearTimeout?clearTimeout:a}catch(e){r=a}}();var c,u=[],l=!1,f=-1;function h(){l&&c&&(l=!1,c.length?u=c.concat(u):f=-1,u.length&&p())}function p(){if(!l){var e=s(h);l=!0;for(var t=u.length;t;){for(c=u,u=[];++f1)for(var n=1;nthis.length)&&(r=this.length),n>=this.length)return e||i.alloc(0);if(r<=0)return e||i.alloc(0);var o,a,s=!!e,c=this._offset(n),u=r-n,l=u,f=s&&t||0,h=c[1];if(0===n&&r==this.length){if(!s)return 1===this._bufs.length?this._bufs[0]:i.concat(this._bufs,this.length);for(a=0;a(o=this._bufs[a].length-h))){this._bufs[a].copy(e,f,h,h+l);break}this._bufs[a].copy(e,f,h),f+=o,l-=o,h&&(h=0)}return e},a.prototype.shallowSlice=function(e,t){e=e||0,t=t||this.length,e<0&&(e+=this.length),t<0&&(t+=this.length);var n=this._offset(e),r=this._offset(t),o=this._bufs.slice(n[0],r[0]+1);return 0==r[1]?o.pop():o[o.length-1]=o[o.length-1].slice(0,r[1]),0!=n[1]&&(o[0]=o[0].slice(n[1])),new a(o)},a.prototype.toString=function(e,t,n){return this.slice(t,n).toString(e)},a.prototype.consume=function(e){for(;this._bufs.length;){if(!(e>=this._bufs[0].length)){this._bufs[0]=this._bufs[0].slice(e),this.length-=e;break}e-=this._bufs[0].length,this.length-=this._bufs[0].length,this._bufs.shift()}return this},a.prototype.duplicate=function(){for(var e=0,t=new a;e0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]>>0)}t.readInt32LE=function(e,t){return e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24},t.readUint32LE=i,t.readUint64LE=function(e,t){var n=i(e,t+4);if(n>o)throw new Error("Cannot read uint64 with high order part "+n+", because the result would exceed Number.MAX_SAFE_INTEGER.");return n*r+i(e,t)},t.readLEB128=function(e,t){for(var n=0,r=0,o=0;o<4;o++){var i=e[t+o];if(n|=(127&i)<65535&&(u-=65536,r.push(u>>>10&1023|55296),u=56320|1023&u),r.push(u)}r.length>1024&&(o.push(String.fromCharCode.apply(null,r)),r.length=0)}return o.push(String.fromCharCode.apply(null,r)),o.join("")}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.shouldAutoStart=function(){return!(!document||!document.currentScript||"false"===document.currentScript.getAttribute("autostart"))}},function(e,t,n){(function(e){var r=Object.getOwnPropertyDescriptors||function(e){for(var t=Object.keys(e),n={},r=0;r=i)return e;switch(e){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(e){return"[Circular]"}default:return e}})),c=r[n];n=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),d(n)?r.showHidden=n:n&&t._extend(r,n),b(r.showHidden)&&(r.showHidden=!1),b(r.depth)&&(r.depth=2),b(r.colors)&&(r.colors=!1),b(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=c),l(r,e,r.depth)}function c(e,t){var n=s.styles[t];return n?"["+s.colors[n][0]+"m"+e+"["+s.colors[n][1]+"m":e}function u(e,t){return e}function l(e,n,r){if(e.customInspect&&n&&C(n.inspect)&&n.inspect!==t.inspect&&(!n.constructor||n.constructor.prototype!==n)){var o=n.inspect(r,e);return v(o)||(o=l(e,o,r)),o}var i=function(e,t){if(b(t))return e.stylize("undefined","undefined");if(v(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}if(y(t))return e.stylize(""+t,"number");if(d(t))return e.stylize(""+t,"boolean");if(g(t))return e.stylize("null","null")}(e,n);if(i)return i;var a=Object.keys(n),s=function(e){var t={};return e.forEach((function(e,n){t[e]=!0})),t}(a);if(e.showHidden&&(a=Object.getOwnPropertyNames(n)),S(n)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return f(n);if(0===a.length){if(C(n)){var c=n.name?": "+n.name:"";return e.stylize("[Function"+c+"]","special")}if(m(n))return e.stylize(RegExp.prototype.toString.call(n),"regexp");if(E(n))return e.stylize(Date.prototype.toString.call(n),"date");if(S(n))return f(n)}var u,w="",I=!1,_=["{","}"];(p(n)&&(I=!0,_=["[","]"]),C(n))&&(w=" [Function"+(n.name?": "+n.name:"")+"]");return m(n)&&(w=" "+RegExp.prototype.toString.call(n)),E(n)&&(w=" "+Date.prototype.toUTCString.call(n)),S(n)&&(w=" "+f(n)),0!==a.length||I&&0!=n.length?r<0?m(n)?e.stylize(RegExp.prototype.toString.call(n),"regexp"):e.stylize("[Object]","special"):(e.seen.push(n),u=I?function(e,t,n,r,o){for(var i=[],a=0,s=t.length;a=0&&0,e+t.replace(/\u001b\[\d\d?m/g,"").length+1}),0)>60)return n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1];return n[0]+t+" "+e.join(", ")+" "+n[1]}(u,w,_)):_[0]+w+_[1]}function f(e){return"["+Error.prototype.toString.call(e)+"]"}function h(e,t,n,r,o,i){var a,s,c;if((c=Object.getOwnPropertyDescriptor(t,o)||{value:t[o]}).get?s=c.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):c.set&&(s=e.stylize("[Setter]","special")),P(r,o)||(a="["+o+"]"),s||(e.seen.indexOf(c.value)<0?(s=g(n)?l(e,c.value,null):l(e,c.value,n-1)).indexOf("\n")>-1&&(s=i?s.split("\n").map((function(e){return" "+e})).join("\n").substr(2):"\n"+s.split("\n").map((function(e){return" "+e})).join("\n")):s=e.stylize("[Circular]","special")),b(a)){if(i&&o.match(/^\d+$/))return s;(a=JSON.stringify(""+o)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(a=a.substr(1,a.length-2),a=e.stylize(a,"name")):(a=a.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),a=e.stylize(a,"string"))}return a+": "+s}function p(e){return Array.isArray(e)}function d(e){return"boolean"==typeof e}function g(e){return null===e}function y(e){return"number"==typeof e}function v(e){return"string"==typeof e}function b(e){return void 0===e}function m(e){return w(e)&&"[object RegExp]"===I(e)}function w(e){return"object"==typeof e&&null!==e}function E(e){return w(e)&&"[object Date]"===I(e)}function S(e){return w(e)&&("[object Error]"===I(e)||e instanceof Error)}function C(e){return"function"==typeof e}function I(e){return Object.prototype.toString.call(e)}function _(e){return e<10?"0"+e.toString(10):e.toString(10)}t.debuglog=function(n){if(b(i)&&(i=e.env.NODE_DEBUG||""),n=n.toUpperCase(),!a[n])if(new RegExp("\\b"+n+"\\b","i").test(i)){var r=e.pid;a[n]=function(){var e=t.format.apply(t,arguments);console.error("%s %d: %s",n,r,e)}}else a[n]=function(){};return a[n]},t.inspect=s,s.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},s.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},t.isArray=p,t.isBoolean=d,t.isNull=g,t.isNullOrUndefined=function(e){return null==e},t.isNumber=y,t.isString=v,t.isSymbol=function(e){return"symbol"==typeof e},t.isUndefined=b,t.isRegExp=m,t.isObject=w,t.isDate=E,t.isError=S,t.isFunction=C,t.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e},t.isBuffer=n(59);var k=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function T(){var e=new Date,t=[_(e.getHours()),_(e.getMinutes()),_(e.getSeconds())].join(":");return[e.getDate(),k[e.getMonth()],t].join(" ")}function P(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.log=function(){console.log("%s - %s",T(),t.format.apply(t,arguments))},t.inherits=n(60),t._extend=function(e,t){if(!t||!w(t))return e;for(var n=Object.keys(t),r=n.length;r--;)e[n[r]]=t[n[r]];return e};var x="undefined"!=typeof Symbol?Symbol("util.promisify.custom"):void 0;function O(e,t){if(!e){var n=new Error("Promise was rejected with a falsy value");n.reason=e,e=n}return t(e)}t.promisify=function(e){if("function"!=typeof e)throw new TypeError('The "original" argument must be of type Function');if(x&&e[x]){var t;if("function"!=typeof(t=e[x]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(t,x,{value:t,enumerable:!1,writable:!1,configurable:!0}),t}function t(){for(var t,n,r=new Promise((function(e,r){t=e,n=r})),o=[],i=0;i0?("string"==typeof t||a.objectMode||Object.getPrototypeOf(t)===u.prototype||(t=function(e){return u.from(e)}(t)),r?a.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):E(e,a,t,!0):a.ended?e.emit("error",new Error("stream.push() after EOF")):(a.reading=!1,a.decoder&&!n?(t=a.decoder.write(t),a.objectMode||0!==t.length?E(e,a,t,!1):_(e,a)):E(e,a,t,!1))):r||(a.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=8388608?e=8388608:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function C(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(p("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?o.nextTick(I,e):I(e))}function I(e){p("emit readable"),e.emit("readable"),x(e)}function _(e,t){t.readingMore||(t.readingMore=!0,o.nextTick(k,e,t))}function k(e,t){for(var n=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):n=function(e,t,n){var r;ei.length?i.length:e;if(a===i.length?o+=i:o+=i.slice(0,e),0===(e-=a)){a===i.length?(++r,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=i.slice(a));break}++r}return t.length-=r,o}(e,t):function(e,t){var n=u.allocUnsafe(e),r=t.head,o=1;r.data.copy(n),e-=r.data.length;for(;r=r.next;){var i=r.data,a=e>i.length?i.length:e;if(i.copy(n,n.length-e,0,a),0===(e-=a)){a===i.length?(++o,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=i.slice(a));break}++o}return t.length-=o,n}(e,t);return r}(e,t.buffer,t.decoder),n);var n}function R(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,o.nextTick(L,t,e))}function L(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function D(e,t){for(var n=0,r=e.length;n=t.highWaterMark||t.ended))return p("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?R(this):C(this),null;if(0===(e=S(e,t))&&t.ended)return 0===t.length&&R(this),null;var r,o=t.needReadable;return p("need readable",o),(0===t.length||t.length-e0?O(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&R(this)),null!==r&&this.emit("data",r),r},m.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},m.prototype.pipe=function(e,t){var n=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=e;break;case 1:i.pipes=[i.pipes,e];break;default:i.pipes.push(e)}i.pipesCount+=1,p("pipe count=%d opts=%j",i.pipesCount,t);var c=(!t||!1!==t.end)&&e!==r.stdout&&e!==r.stderr?l:m;function u(t,r){p("onunpipe"),t===n&&r&&!1===r.hasUnpiped&&(r.hasUnpiped=!0,p("cleanup"),e.removeListener("close",v),e.removeListener("finish",b),e.removeListener("drain",f),e.removeListener("error",y),e.removeListener("unpipe",u),n.removeListener("end",l),n.removeListener("end",m),n.removeListener("data",g),h=!0,!i.awaitDrain||e._writableState&&!e._writableState.needDrain||f())}function l(){p("onend"),e.end()}i.endEmitted?o.nextTick(c):n.once("end",c),e.on("unpipe",u);var f=function(e){return function(){var t=e._readableState;p("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&s(e,"data")&&(t.flowing=!0,x(e))}}(n);e.on("drain",f);var h=!1;var d=!1;function g(t){p("ondata"),d=!1,!1!==e.write(t)||d||((1===i.pipesCount&&i.pipes===e||i.pipesCount>1&&-1!==D(i.pipes,e))&&!h&&(p("false write response, pause",n._readableState.awaitDrain),n._readableState.awaitDrain++,d=!0),n.pause())}function y(t){p("onerror",t),m(),e.removeListener("error",y),0===s(e,"error")&&e.emit("error",t)}function v(){e.removeListener("finish",b),m()}function b(){p("onfinish"),e.removeListener("close",v),m()}function m(){p("unpipe"),n.unpipe(e)}return n.on("data",g),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?a(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",y),e.once("close",v),e.once("finish",b),e.emit("pipe",n),i.flowing||(p("pipe resume"),n.resume()),e},m.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,n)),this;if(!e){var r=t.pipes,o=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var i=0;i0&&a.length>o&&!a.warned){a.warned=!0;var c=new Error("Possible EventEmitter memory leak detected. "+a.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");c.name="MaxListenersExceededWarning",c.emitter=e,c.type=t,c.count=a.length,s=c,console&&console.warn&&console.warn(s)}return e}function h(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function p(e,t,n){var r={fired:!1,wrapFn:void 0,target:e,type:t,listener:n},o=h.bind(r);return o.listener=n,r.wrapFn=o,o}function d(e,t,n){var r=e._events;if(void 0===r)return[];var o=r[t];return void 0===o?[]:"function"==typeof o?n?[o.listener||o]:[o]:n?function(e){for(var t=new Array(e.length),n=0;n0&&(a=t[0]),a instanceof Error)throw a;var s=new Error("Unhandled error."+(a?" ("+a.message+")":""));throw s.context=a,s}var c=o[e];if(void 0===c)return!1;if("function"==typeof c)i(c,this,t);else{var u=c.length,l=y(c,u);for(n=0;n=0;i--)if(n[i]===t||n[i].listener===t){a=n[i].listener,o=i;break}if(o<0)return this;0===o?n.shift():function(e,t){for(;t+1=0;r--)this.removeListener(e,t[r]);return this},s.prototype.listeners=function(e){return d(this,e,!0)},s.prototype.rawListeners=function(e){return d(this,e,!1)},s.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):g.call(e,t)},s.prototype.listenerCount=g,s.prototype.eventNames=function(){return this._eventsCount>0?r(this._events):[]}},function(e,t,n){e.exports=n(38).EventEmitter},function(e,t,n){"use strict";var r=n(22);function o(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var n=this,i=this._readableState&&this._readableState.destroyed,a=this._writableState&&this._writableState.destroyed;return i||a?(t?t(e):!e||this._writableState&&this._writableState.errorEmitted||r.nextTick(o,this,e),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?(r.nextTick(o,n,e),n._writableState&&(n._writableState.errorEmitted=!0)):t&&t(e)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},function(e,t,n){"use strict";var r=n(66).Buffer,o=r.isEncoding||function(e){switch((e=""+e)&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function i(e){var t;switch(this.encoding=function(e){var t=function(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}(e);if("string"!=typeof t&&(r.isEncoding===o||!o(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=c,this.end=u,t=4;break;case"utf8":this.fillLast=s,t=4;break;case"base64":this.text=l,this.end=f,t=3;break;default:return this.write=h,void(this.end=p)}this.lastNeed=0,this.lastTotal=0,this.lastChar=r.allocUnsafe(t)}function a(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function s(e){var t=this.lastTotal-this.lastNeed,n=function(e,t,n){if(128!=(192&t[0]))return e.lastNeed=0,"�";if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"�";if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"�"}}(this,e);return void 0!==n?n:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function c(e,t){if((e.length-t)%2==0){var n=e.toString("utf16le",t);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function u(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,n)}return t}function l(e,t){var n=(e.length-t)%3;return 0===n?e.toString("base64",t):(this.lastNeed=3-n,this.lastTotal=3,1===n?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-n))}function f(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function h(e){return e.toString(this.encoding)}function p(e){return e&&e.length?this.write(e):""}t.StringDecoder=i,i.prototype.write=function(e){if(0===e.length)return"";var t,n;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0)return o>0&&(e.lastNeed=o-1),o;if(--r=0)return o>0&&(e.lastNeed=o-2),o;if(--r=0)return o>0&&(2===o?o=0:e.lastNeed=o-3),o;return 0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=n;var r=e.length-(n-this.lastNeed);return e.copy(this.lastChar,0,r),e.toString("utf8",t,r)},i.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},function(e,t,n){"use strict";(function(t,r,o){var i=n(22);function a(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,n){var r=e.entry;e.entry=null;for(;r;){var o=r.callback;t.pendingcb--,o(n),r=r.next}t.corkedRequestsFree?t.corkedRequestsFree.next=e:t.corkedRequestsFree=e}(t,e)}}e.exports=b;var s,c=!t.browser&&["v0.10","v0.9."].indexOf(t.version.slice(0,5))>-1?r:i.nextTick;b.WritableState=v;var u=n(20);u.inherits=n(16);var l={deprecate:n(69)},f=n(39),h=n(15).Buffer,p=o.Uint8Array||function(){};var d,g=n(40);function y(){}function v(e,t){s=s||n(10),e=e||{};var r=t instanceof s;this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var o=e.highWaterMark,u=e.writableHighWaterMark,l=this.objectMode?16:16384;this.highWaterMark=o||0===o?o:r&&(u||0===u)?u:l,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var f=!1===e.decodeStrings;this.decodeStrings=!f,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var n=e._writableState,r=n.sync,o=n.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(n),t)!function(e,t,n,r,o){--t.pendingcb,n?(i.nextTick(o,r),i.nextTick(I,e,t),e._writableState.errorEmitted=!0,e.emit("error",r)):(o(r),e._writableState.errorEmitted=!0,e.emit("error",r),I(e,t))}(e,n,r,t,o);else{var a=S(n);a||n.corked||n.bufferProcessing||!n.bufferedRequest||E(e,n),r?c(w,e,n,a,o):w(e,n,a,o)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new a(this)}function b(e){if(s=s||n(10),!(d.call(b,this)||this instanceof s))return new b(e);this._writableState=new v(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),f.call(this)}function m(e,t,n,r,o,i,a){t.writelen=r,t.writecb=a,t.writing=!0,t.sync=!0,n?e._writev(o,t.onwrite):e._write(o,i,t.onwrite),t.sync=!1}function w(e,t,n,r){n||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,r(),I(e,t)}function E(e,t){t.bufferProcessing=!0;var n=t.bufferedRequest;if(e._writev&&n&&n.next){var r=t.bufferedRequestCount,o=new Array(r),i=t.corkedRequestsFree;i.entry=n;for(var s=0,c=!0;n;)o[s]=n,n.isBuf||(c=!1),n=n.next,s+=1;o.allBuffers=c,m(e,t,!0,t.length,o,"",i.finish),t.pendingcb++,t.lastBufferedRequest=null,i.next?(t.corkedRequestsFree=i.next,i.next=null):t.corkedRequestsFree=new a(t),t.bufferedRequestCount=0}else{for(;n;){var u=n.chunk,l=n.encoding,f=n.callback;if(m(e,t,!1,t.objectMode?1:u.length,u,l,f),n=n.next,t.bufferedRequestCount--,t.writing)break}null===n&&(t.lastBufferedRequest=null)}t.bufferedRequest=n,t.bufferProcessing=!1}function S(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function C(e,t){e._final((function(n){t.pendingcb--,n&&e.emit("error",n),t.prefinished=!0,e.emit("prefinish"),I(e,t)}))}function I(e,t){var n=S(t);return n&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,i.nextTick(C,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),n}u.inherits(b,f),v.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(v.prototype,"buffer",{get:l.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(d=Function.prototype[Symbol.hasInstance],Object.defineProperty(b,Symbol.hasInstance,{value:function(e){return!!d.call(this,e)||this===b&&(e&&e._writableState instanceof v)}})):d=function(e){return e instanceof this},b.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},b.prototype.write=function(e,t,n){var r,o=this._writableState,a=!1,s=!o.objectMode&&(r=e,h.isBuffer(r)||r instanceof p);return s&&!h.isBuffer(e)&&(e=function(e){return h.from(e)}(e)),"function"==typeof t&&(n=t,t=null),s?t="buffer":t||(t=o.defaultEncoding),"function"!=typeof n&&(n=y),o.ended?function(e,t){var n=new Error("write after end");e.emit("error",n),i.nextTick(t,n)}(this,n):(s||function(e,t,n,r){var o=!0,a=!1;return null===n?a=new TypeError("May not write null values to stream"):"string"==typeof n||void 0===n||t.objectMode||(a=new TypeError("Invalid non-string/buffer chunk")),a&&(e.emit("error",a),i.nextTick(r,a),o=!1),o}(this,o,e,n))&&(o.pendingcb++,a=function(e,t,n,r,o,i){if(!n){var a=function(e,t,n){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=h.from(t,n));return t}(t,r,o);r!==a&&(n=!0,o="buffer",r=a)}var s=t.objectMode?1:r.length;t.length+=s;var c=t.length-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(b.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),b.prototype._write=function(e,t,n){n(new Error("_write() is not implemented"))},b.prototype._writev=null,b.prototype.end=function(e,t,n){var r=this._writableState;"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||r.finished||function(e,t,n){t.ending=!0,I(e,t),n&&(t.finished?i.nextTick(n):e.once("finish",n));t.ended=!0,e.writable=!1}(this,r,n)},Object.defineProperty(b.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),b.prototype.destroy=g.destroy,b.prototype._undestroy=g.undestroy,b.prototype._destroy=function(e,t){this.end(),t(e)}}).call(this,n(14),n(67).setImmediate,n(9))},function(e,t,n){"use strict";e.exports=a;var r=n(10),o=n(20);function i(e,t){var n=this._transformState;n.transforming=!1;var r=n.writecb;if(!r)return this.emit("error",new Error("write callback called multiple times"));n.writechunk=null,n.writecb=null,null!=t&&this.push(t),r(e);var o=this._readableState;o.reading=!1,(o.needReadable||o.lengths?a.slice(s).buffer:null}else{var c,u=t;if(-1===(c=u.indexOf(r.a.RecordSeparator)))throw new Error("Message is incomplete.");s=c+1;n=u.substring(0,s),i=u.length>s?u.substring(s):null}var l=r.a.parse(n),f=JSON.parse(l[0]);if(f.type)throw new Error("Expected a handshake response from the server.");return[i,f]},t}()}).call(this,n(11).Buffer)},,,,,,,,,function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{c(r.next(e))}catch(e){i(e)}}function s(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}c((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0)&&!(r=i.next()).done;)a.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return a},a=this&&this.__spread||function(){for(var e=[],t=0;t0?a-4:a;for(n=0;n>16&255,c[l++]=t>>8&255,c[l++]=255&t;2===s&&(t=o[e.charCodeAt(n)]<<2|o[e.charCodeAt(n+1)]>>4,c[l++]=255&t);1===s&&(t=o[e.charCodeAt(n)]<<10|o[e.charCodeAt(n+1)]<<4|o[e.charCodeAt(n+2)]>>2,c[l++]=t>>8&255,c[l++]=255&t);return c},t.fromByteArray=function(e){for(var t,n=e.length,o=n%3,i=[],a=0,s=n-o;as?s:a+16383));1===o?(t=e[n-1],i.push(r[t>>2]+r[t<<4&63]+"==")):2===o&&(t=(e[n-2]<<8)+e[n-1],i.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"="));return i.join("")};for(var r=[],o=[],i="undefined"!=typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,c=a.length;s0)throw new Error("Invalid string. Length must be a multiple of 4");var n=e.indexOf("=");return-1===n&&(n=t),[n,n===t?0:4-n%4]}function l(e,t,n){for(var o,i,a=[],s=t;s>18&63]+r[i>>12&63]+r[i>>6&63]+r[63&i]);return a.join("")}o["-".charCodeAt(0)]=62,o["_".charCodeAt(0)]=63},function(e,t){t.read=function(e,t,n,r,o){var i,a,s=8*o-r-1,c=(1<>1,l=-7,f=n?o-1:0,h=n?-1:1,p=e[t+f];for(f+=h,i=p&(1<<-l)-1,p>>=-l,l+=s;l>0;i=256*i+e[t+f],f+=h,l-=8);for(a=i&(1<<-l)-1,i>>=-l,l+=r;l>0;a=256*a+e[t+f],f+=h,l-=8);if(0===i)i=1-u;else{if(i===c)return a?NaN:1/0*(p?-1:1);a+=Math.pow(2,r),i-=u}return(p?-1:1)*a*Math.pow(2,i-r)},t.write=function(e,t,n,r,o,i){var a,s,c,u=8*i-o-1,l=(1<>1,h=23===o?Math.pow(2,-24)-Math.pow(2,-77):0,p=r?0:i-1,d=r?1:-1,g=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,a=l):(a=Math.floor(Math.log(t)/Math.LN2),t*(c=Math.pow(2,-a))<1&&(a--,c*=2),(t+=a+f>=1?h/c:h*Math.pow(2,1-f))*c>=2&&(a++,c/=2),a+f>=l?(s=0,a=l):a+f>=1?(s=(t*c-1)*Math.pow(2,o),a+=f):(s=t*Math.pow(2,f-1)*Math.pow(2,o),a=0));o>=8;e[n+p]=255&s,p+=d,s/=256,o-=8);for(a=a<0;e[n+p]=255&a,p+=d,a/=256,u-=8);e[n+p-d]|=128*g}},function(e,t){var n={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==n.call(e)}},function(e,t,n){"use strict";(function(t){var r=n(58); +var r=n(51),o=n(52),i=n(53);function a(){return c.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function s(e,t){if(a()=a())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a().toString(16)+" bytes");return 0|e}function d(e,t){if(c.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var n=e.length;if(0===n)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return F(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return H(e).length;default:if(r)return F(e).length;t=(""+t).toLowerCase(),r=!0}}function g(e,t,n){var r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return x(this,t,n);case"utf8":case"utf-8":return k(this,t,n);case"ascii":return T(this,t,n);case"latin1":case"binary":return P(this,t,n);case"base64":return _(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return O(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function y(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function v(e,t,n,r,o){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=o?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(o)return-1;n=e.length-1}else if(n<0){if(!o)return-1;n=0}if("string"==typeof t&&(t=c.from(t,r)),c.isBuffer(t))return 0===t.length?-1:b(e,t,n,r,o);if("number"==typeof t)return t&=255,c.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?o?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):b(e,[t],n,r,o);throw new TypeError("val must be string, number or Buffer")}function b(e,t,n,r,o){var i,a=1,s=e.length,c=t.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;a=2,s/=2,c/=2,n/=2}function u(e,t){return 1===a?e[t]:e.readUInt16BE(t*a)}if(o){var l=-1;for(i=n;is&&(n=s-c),i=n;i>=0;i--){for(var f=!0,h=0;ho&&(r=o):r=o;var i=t.length;if(i%2!=0)throw new TypeError("Invalid hex string");r>i/2&&(r=i/2);for(var a=0;a>8,o=n%256,i.push(o),i.push(r);return i}(t,e.length-n),e,n,r)}function _(e,t,n){return 0===t&&n===e.length?r.fromByteArray(e):r.fromByteArray(e.slice(t,n))}function k(e,t,n){n=Math.min(e.length,n);for(var r=[],o=t;o239?4:u>223?3:u>191?2:1;if(o+f<=n)switch(f){case 1:u<128&&(l=u);break;case 2:128==(192&(i=e[o+1]))&&(c=(31&u)<<6|63&i)>127&&(l=c);break;case 3:i=e[o+1],a=e[o+2],128==(192&i)&&128==(192&a)&&(c=(15&u)<<12|(63&i)<<6|63&a)>2047&&(c<55296||c>57343)&&(l=c);break;case 4:i=e[o+1],a=e[o+2],s=e[o+3],128==(192&i)&&128==(192&a)&&128==(192&s)&&(c=(15&u)<<18|(63&i)<<12|(63&a)<<6|63&s)>65535&&c<1114112&&(l=c)}null===l?(l=65533,f=1):l>65535&&(l-=65536,r.push(l>>>10&1023|55296),l=56320|1023&l),r.push(l),o+=f}return function(e){var t=e.length;if(t<=4096)return String.fromCharCode.apply(String,e);var n="",r=0;for(;r0&&(e=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(e+=" ... ")),""},c.prototype.compare=function(e,t,n,r,o){if(!c.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===o&&(o=this.length),t<0||n>e.length||r<0||o>this.length)throw new RangeError("out of range index");if(r>=o&&t>=n)return 0;if(r>=o)return-1;if(t>=n)return 1;if(this===e)return 0;for(var i=(o>>>=0)-(r>>>=0),a=(n>>>=0)-(t>>>=0),s=Math.min(i,a),u=this.slice(r,o),l=e.slice(t,n),f=0;fo)&&(n=o),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var i=!1;;)switch(r){case"hex":return m(this,e,t,n);case"utf8":case"utf-8":return w(this,e,t,n);case"ascii":return E(this,e,t,n);case"latin1":case"binary":return S(this,e,t,n);case"base64":return C(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return I(this,e,t,n);default:if(i)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),i=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function T(e,t,n){var r="";n=Math.min(e.length,n);for(var o=t;or)&&(n=r);for(var o="",i=t;in)throw new RangeError("Trying to access beyond buffer length")}function L(e,t,n,r,o,i){if(!c.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>o||te.length)throw new RangeError("Index out of range")}function D(e,t,n,r){t<0&&(t=65535+t+1);for(var o=0,i=Math.min(e.length-n,2);o>>8*(r?o:1-o)}function M(e,t,n,r){t<0&&(t=4294967295+t+1);for(var o=0,i=Math.min(e.length-n,4);o>>8*(r?o:3-o)&255}function j(e,t,n,r,o,i){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function A(e,t,n,r,i){return i||j(e,0,n,4),o.write(e,t,n,r,23,4),n+4}function B(e,t,n,r,i){return i||j(e,0,n,8),o.write(e,t,n,r,52,8),n+8}c.prototype.slice=function(e,t){var n,r=this.length;if((e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t0&&(o*=256);)r+=this[e+--t]*o;return r},c.prototype.readUInt8=function(e,t){return t||R(e,1,this.length),this[e]},c.prototype.readUInt16LE=function(e,t){return t||R(e,2,this.length),this[e]|this[e+1]<<8},c.prototype.readUInt16BE=function(e,t){return t||R(e,2,this.length),this[e]<<8|this[e+1]},c.prototype.readUInt32LE=function(e,t){return t||R(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},c.prototype.readUInt32BE=function(e,t){return t||R(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},c.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||R(e,t,this.length);for(var r=this[e],o=1,i=0;++i=(o*=128)&&(r-=Math.pow(2,8*t)),r},c.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||R(e,t,this.length);for(var r=t,o=1,i=this[e+--r];r>0&&(o*=256);)i+=this[e+--r]*o;return i>=(o*=128)&&(i-=Math.pow(2,8*t)),i},c.prototype.readInt8=function(e,t){return t||R(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},c.prototype.readInt16LE=function(e,t){t||R(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},c.prototype.readInt16BE=function(e,t){t||R(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},c.prototype.readInt32LE=function(e,t){return t||R(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},c.prototype.readInt32BE=function(e,t){return t||R(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},c.prototype.readFloatLE=function(e,t){return t||R(e,4,this.length),o.read(this,e,!0,23,4)},c.prototype.readFloatBE=function(e,t){return t||R(e,4,this.length),o.read(this,e,!1,23,4)},c.prototype.readDoubleLE=function(e,t){return t||R(e,8,this.length),o.read(this,e,!0,52,8)},c.prototype.readDoubleBE=function(e,t){return t||R(e,8,this.length),o.read(this,e,!1,52,8)},c.prototype.writeUIntLE=function(e,t,n,r){(e=+e,t|=0,n|=0,r)||L(this,e,t,n,Math.pow(2,8*n)-1,0);var o=1,i=0;for(this[t]=255&e;++i=0&&(i*=256);)this[t+o]=e/i&255;return t+n},c.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||L(this,e,t,1,255,0),c.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},c.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||L(this,e,t,2,65535,0),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):D(this,e,t,!0),t+2},c.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||L(this,e,t,2,65535,0),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):D(this,e,t,!1),t+2},c.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||L(this,e,t,4,4294967295,0),c.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):M(this,e,t,!0),t+4},c.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||L(this,e,t,4,4294967295,0),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):M(this,e,t,!1),t+4},c.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t|=0,!r){var o=Math.pow(2,8*n-1);L(this,e,t,n,o-1,-o)}var i=0,a=1,s=0;for(this[t]=255&e;++i>0)-s&255;return t+n},c.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t|=0,!r){var o=Math.pow(2,8*n-1);L(this,e,t,n,o-1,-o)}var i=n-1,a=1,s=0;for(this[t+i]=255&e;--i>=0&&(a*=256);)e<0&&0===s&&0!==this[t+i+1]&&(s=1),this[t+i]=(e/a>>0)-s&255;return t+n},c.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||L(this,e,t,1,127,-128),c.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},c.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||L(this,e,t,2,32767,-32768),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):D(this,e,t,!0),t+2},c.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||L(this,e,t,2,32767,-32768),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):D(this,e,t,!1),t+2},c.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||L(this,e,t,4,2147483647,-2147483648),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):M(this,e,t,!0),t+4},c.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||L(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):M(this,e,t,!1),t+4},c.prototype.writeFloatLE=function(e,t,n){return A(this,e,t,!0,n)},c.prototype.writeFloatBE=function(e,t,n){return A(this,e,t,!1,n)},c.prototype.writeDoubleLE=function(e,t,n){return B(this,e,t,!0,n)},c.prototype.writeDoubleBE=function(e,t,n){return B(this,e,t,!1,n)},c.prototype.copy=function(e,t,n,r){if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t=0;--o)e[o+t]=this[o+n];else if(i<1e3||!c.TYPED_ARRAY_SUPPORT)for(o=0;o>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(i=t;i55295&&n<57344){if(!o){if(n>56319){(t-=3)>-1&&i.push(239,191,189);continue}if(a+1===r){(t-=3)>-1&&i.push(239,191,189);continue}o=n;continue}if(n<56320){(t-=3)>-1&&i.push(239,191,189),o=n;continue}n=65536+(o-55296<<10|n-56320)}else o&&(t-=3)>-1&&i.push(239,191,189);if(o=null,n<128){if((t-=1)<0)break;i.push(n)}else if(n<2048){if((t-=2)<0)break;i.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;i.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;i.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return i}function H(e){return r.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(U,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function q(e,t,n,r){for(var o=0;o=t.length||o>=e.length);++o)t[o+n]=e[o];return o}}).call(this,n(9))},function(e,t,n){"use strict";var r=n(15).Buffer,o=n(54),i=n(21),a=n(67),s=n(70),c=n(71);e.exports=function(e){var t=[],n=[];return{encode:c(t,(e=e||{forceFloat64:!1,compatibilityMode:!1,disableTimestampEncoding:!1}).forceFloat64,e.compatibilityMode,e.disableTimestampEncoding),decode:s(n),register:function(e,t,n,a){return o(t,"must have a constructor"),o(n,"must have an encode function"),o(e>=0,"must have a non-negative type"),o(a,"must have a decode function"),this.registerEncoder((function(e){return e instanceof t}),(function(t){var o=i(),a=r.allocUnsafe(1);return a.writeInt8(e,0),o.append(a),o.append(n(t)),o})),this.registerDecoder(e,a),this},registerEncoder:function(e,n){return o(e,"must have an encode function"),o(n,"must have an encode function"),t.push({check:e,encode:n}),this},registerDecoder:function(e,t){return o(e>=0,"must have a non-negative type"),o(t,"must have a decode function"),n.push({type:e,decode:t}),this},encoder:a.encoder,decoder:a.decoder,buffer:!0,type:"msgpack5",IncompleteBufferError:s.IncompleteBufferError}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=p("_blazorLogicalChildren"),o=p("_blazorLogicalParent"),i=p("_blazorLogicalEnd");function a(e,t){if(e.childNodes.length>0&&!t)throw new Error("New logical elements must start empty, or allowExistingContents must be true");return r in e||(e[r]=[]),e}function s(e,t,n){var i=e;if(e instanceof Comment&&(u(i)&&u(i).length>0))throw new Error("Not implemented: inserting non-empty logical container");if(c(i))throw new Error("Not implemented: moving existing logical children");var a=u(t);if(n0;)e(r,0)}var i=r;i.parentNode.removeChild(i)},t.getLogicalParent=c,t.getLogicalSiblingEnd=function(e){return e[i]||null},t.getLogicalChild=function(e,t){return u(e)[t]},t.isSvgElement=function(e){return"http://www.w3.org/2000/svg"===l(e).namespaceURI},t.getLogicalChildrenArray=u,t.permuteLogicalChildren=function(e,t){var n=u(e);t.forEach((function(e){e.moveRangeStart=n[e.fromSiblingIndex],e.moveRangeEnd=function e(t){if(t instanceof Element)return t;var n=f(t);if(n)return n.previousSibling;var r=c(t);return r instanceof Element?r.lastChild:e(r)}(e.moveRangeStart)})),t.forEach((function(t){var r=t.moveToBeforeMarker=document.createComment("marker"),o=n[t.toSiblingIndex+1];o?o.parentNode.insertBefore(r,o):h(r,e)})),t.forEach((function(e){for(var t=e.moveToBeforeMarker,n=t.parentNode,r=e.moveRangeStart,o=e.moveRangeEnd,i=r;i;){var a=i.nextSibling;if(n.insertBefore(i,t),i===o)break;i=a}n.removeChild(t)})),t.forEach((function(e){n[e.toSiblingIndex]=e.moveRangeStart}))},t.getClosestDomElement=l},function(e,t){var n,r,o=e.exports={};function i(){throw new Error("setTimeout has not been defined")}function a(){throw new Error("clearTimeout has not been defined")}function s(e){if(n===setTimeout)return setTimeout(e,0);if((n===i||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:i}catch(e){n=i}try{r="function"==typeof clearTimeout?clearTimeout:a}catch(e){r=a}}();var c,u=[],l=!1,f=-1;function h(){l&&c&&(l=!1,c.length?u=c.concat(u):f=-1,u.length&&p())}function p(){if(!l){var e=s(h);l=!0;for(var t=u.length;t;){for(c=u,u=[];++f1)for(var n=1;nthis.length)&&(r=this.length),n>=this.length)return e||i.alloc(0);if(r<=0)return e||i.alloc(0);var o,a,s=!!e,c=this._offset(n),u=r-n,l=u,f=s&&t||0,h=c[1];if(0===n&&r==this.length){if(!s)return 1===this._bufs.length?this._bufs[0]:i.concat(this._bufs,this.length);for(a=0;a(o=this._bufs[a].length-h))){this._bufs[a].copy(e,f,h,h+l);break}this._bufs[a].copy(e,f,h),f+=o,l-=o,h&&(h=0)}return e},a.prototype.shallowSlice=function(e,t){e=e||0,t=t||this.length,e<0&&(e+=this.length),t<0&&(t+=this.length);var n=this._offset(e),r=this._offset(t),o=this._bufs.slice(n[0],r[0]+1);return 0==r[1]?o.pop():o[o.length-1]=o[o.length-1].slice(0,r[1]),0!=n[1]&&(o[0]=o[0].slice(n[1])),new a(o)},a.prototype.toString=function(e,t,n){return this.slice(t,n).toString(e)},a.prototype.consume=function(e){for(;this._bufs.length;){if(!(e>=this._bufs[0].length)){this._bufs[0]=this._bufs[0].slice(e),this.length-=e;break}e-=this._bufs[0].length,this.length-=this._bufs[0].length,this._bufs.shift()}return this},a.prototype.duplicate=function(){for(var e=0,t=new a;e0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]=i)return e;switch(e){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(e){return"[Circular]"}default:return e}})),c=r[n];n=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),d(n)?r.showHidden=n:n&&t._extend(r,n),b(r.showHidden)&&(r.showHidden=!1),b(r.depth)&&(r.depth=2),b(r.colors)&&(r.colors=!1),b(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=c),l(r,e,r.depth)}function c(e,t){var n=s.styles[t];return n?"["+s.colors[n][0]+"m"+e+"["+s.colors[n][1]+"m":e}function u(e,t){return e}function l(e,n,r){if(e.customInspect&&n&&C(n.inspect)&&n.inspect!==t.inspect&&(!n.constructor||n.constructor.prototype!==n)){var o=n.inspect(r,e);return v(o)||(o=l(e,o,r)),o}var i=function(e,t){if(b(t))return e.stylize("undefined","undefined");if(v(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}if(y(t))return e.stylize(""+t,"number");if(d(t))return e.stylize(""+t,"boolean");if(g(t))return e.stylize("null","null")}(e,n);if(i)return i;var a=Object.keys(n),s=function(e){var t={};return e.forEach((function(e,n){t[e]=!0})),t}(a);if(e.showHidden&&(a=Object.getOwnPropertyNames(n)),S(n)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return f(n);if(0===a.length){if(C(n)){var c=n.name?": "+n.name:"";return e.stylize("[Function"+c+"]","special")}if(m(n))return e.stylize(RegExp.prototype.toString.call(n),"regexp");if(E(n))return e.stylize(Date.prototype.toString.call(n),"date");if(S(n))return f(n)}var u,w="",I=!1,_=["{","}"];(p(n)&&(I=!0,_=["[","]"]),C(n))&&(w=" [Function"+(n.name?": "+n.name:"")+"]");return m(n)&&(w=" "+RegExp.prototype.toString.call(n)),E(n)&&(w=" "+Date.prototype.toUTCString.call(n)),S(n)&&(w=" "+f(n)),0!==a.length||I&&0!=n.length?r<0?m(n)?e.stylize(RegExp.prototype.toString.call(n),"regexp"):e.stylize("[Object]","special"):(e.seen.push(n),u=I?function(e,t,n,r,o){for(var i=[],a=0,s=t.length;a=0&&0,e+t.replace(/\u001b\[\d\d?m/g,"").length+1}),0)>60)return n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1];return n[0]+t+" "+e.join(", ")+" "+n[1]}(u,w,_)):_[0]+w+_[1]}function f(e){return"["+Error.prototype.toString.call(e)+"]"}function h(e,t,n,r,o,i){var a,s,c;if((c=Object.getOwnPropertyDescriptor(t,o)||{value:t[o]}).get?s=c.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):c.set&&(s=e.stylize("[Setter]","special")),P(r,o)||(a="["+o+"]"),s||(e.seen.indexOf(c.value)<0?(s=g(n)?l(e,c.value,null):l(e,c.value,n-1)).indexOf("\n")>-1&&(s=i?s.split("\n").map((function(e){return" "+e})).join("\n").substr(2):"\n"+s.split("\n").map((function(e){return" "+e})).join("\n")):s=e.stylize("[Circular]","special")),b(a)){if(i&&o.match(/^\d+$/))return s;(a=JSON.stringify(""+o)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(a=a.substr(1,a.length-2),a=e.stylize(a,"name")):(a=a.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),a=e.stylize(a,"string"))}return a+": "+s}function p(e){return Array.isArray(e)}function d(e){return"boolean"==typeof e}function g(e){return null===e}function y(e){return"number"==typeof e}function v(e){return"string"==typeof e}function b(e){return void 0===e}function m(e){return w(e)&&"[object RegExp]"===I(e)}function w(e){return"object"==typeof e&&null!==e}function E(e){return w(e)&&"[object Date]"===I(e)}function S(e){return w(e)&&("[object Error]"===I(e)||e instanceof Error)}function C(e){return"function"==typeof e}function I(e){return Object.prototype.toString.call(e)}function _(e){return e<10?"0"+e.toString(10):e.toString(10)}t.debuglog=function(n){if(b(i)&&(i=e.env.NODE_DEBUG||""),n=n.toUpperCase(),!a[n])if(new RegExp("\\b"+n+"\\b","i").test(i)){var r=e.pid;a[n]=function(){var e=t.format.apply(t,arguments);console.error("%s %d: %s",n,r,e)}}else a[n]=function(){};return a[n]},t.inspect=s,s.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},s.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},t.isArray=p,t.isBoolean=d,t.isNull=g,t.isNullOrUndefined=function(e){return null==e},t.isNumber=y,t.isString=v,t.isSymbol=function(e){return"symbol"==typeof e},t.isUndefined=b,t.isRegExp=m,t.isObject=w,t.isDate=E,t.isError=S,t.isFunction=C,t.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e},t.isBuffer=n(56);var k=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function T(){var e=new Date,t=[_(e.getHours()),_(e.getMinutes()),_(e.getSeconds())].join(":");return[e.getDate(),k[e.getMonth()],t].join(" ")}function P(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.log=function(){console.log("%s - %s",T(),t.format.apply(t,arguments))},t.inherits=n(57),t._extend=function(e,t){if(!t||!w(t))return e;for(var n=Object.keys(t),r=n.length;r--;)e[n[r]]=t[n[r]];return e};var x="undefined"!=typeof Symbol?Symbol("util.promisify.custom"):void 0;function O(e,t){if(!e){var n=new Error("Promise was rejected with a falsy value");n.reason=e,e=n}return t(e)}t.promisify=function(e){if("function"!=typeof e)throw new TypeError('The "original" argument must be of type Function');if(x&&e[x]){var t;if("function"!=typeof(t=e[x]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(t,x,{value:t,enumerable:!1,writable:!1,configurable:!0}),t}function t(){for(var t,n,r=new Promise((function(e,r){t=e,n=r})),o=[],i=0;i0?("string"==typeof t||a.objectMode||Object.getPrototypeOf(t)===u.prototype||(t=function(e){return u.from(e)}(t)),r?a.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):E(e,a,t,!0):a.ended?e.emit("error",new Error("stream.push() after EOF")):(a.reading=!1,a.decoder&&!n?(t=a.decoder.write(t),a.objectMode||0!==t.length?E(e,a,t,!1):_(e,a)):E(e,a,t,!1))):r||(a.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=8388608?e=8388608:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function C(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(p("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?o.nextTick(I,e):I(e))}function I(e){p("emit readable"),e.emit("readable"),x(e)}function _(e,t){t.readingMore||(t.readingMore=!0,o.nextTick(k,e,t))}function k(e,t){for(var n=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):n=function(e,t,n){var r;ei.length?i.length:e;if(a===i.length?o+=i:o+=i.slice(0,e),0===(e-=a)){a===i.length?(++r,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=i.slice(a));break}++r}return t.length-=r,o}(e,t):function(e,t){var n=u.allocUnsafe(e),r=t.head,o=1;r.data.copy(n),e-=r.data.length;for(;r=r.next;){var i=r.data,a=e>i.length?i.length:e;if(i.copy(n,n.length-e,0,a),0===(e-=a)){a===i.length?(++o,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=i.slice(a));break}++o}return t.length-=o,n}(e,t);return r}(e,t.buffer,t.decoder),n);var n}function R(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,o.nextTick(L,t,e))}function L(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function D(e,t){for(var n=0,r=e.length;n=t.highWaterMark||t.ended))return p("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?R(this):C(this),null;if(0===(e=S(e,t))&&t.ended)return 0===t.length&&R(this),null;var r,o=t.needReadable;return p("need readable",o),(0===t.length||t.length-e0?O(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&R(this)),null!==r&&this.emit("data",r),r},m.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},m.prototype.pipe=function(e,t){var n=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=e;break;case 1:i.pipes=[i.pipes,e];break;default:i.pipes.push(e)}i.pipesCount+=1,p("pipe count=%d opts=%j",i.pipesCount,t);var c=(!t||!1!==t.end)&&e!==r.stdout&&e!==r.stderr?l:m;function u(t,r){p("onunpipe"),t===n&&r&&!1===r.hasUnpiped&&(r.hasUnpiped=!0,p("cleanup"),e.removeListener("close",v),e.removeListener("finish",b),e.removeListener("drain",f),e.removeListener("error",y),e.removeListener("unpipe",u),n.removeListener("end",l),n.removeListener("end",m),n.removeListener("data",g),h=!0,!i.awaitDrain||e._writableState&&!e._writableState.needDrain||f())}function l(){p("onend"),e.end()}i.endEmitted?o.nextTick(c):n.once("end",c),e.on("unpipe",u);var f=function(e){return function(){var t=e._readableState;p("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&s(e,"data")&&(t.flowing=!0,x(e))}}(n);e.on("drain",f);var h=!1;var d=!1;function g(t){p("ondata"),d=!1,!1!==e.write(t)||d||((1===i.pipesCount&&i.pipes===e||i.pipesCount>1&&-1!==D(i.pipes,e))&&!h&&(p("false write response, pause",n._readableState.awaitDrain),n._readableState.awaitDrain++,d=!0),n.pause())}function y(t){p("onerror",t),m(),e.removeListener("error",y),0===s(e,"error")&&e.emit("error",t)}function v(){e.removeListener("finish",b),m()}function b(){p("onfinish"),e.removeListener("close",v),m()}function m(){p("unpipe"),n.unpipe(e)}return n.on("data",g),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?a(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",y),e.once("close",v),e.once("finish",b),e.emit("pipe",n),i.flowing||(p("pipe resume"),n.resume()),e},m.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,n)),this;if(!e){var r=t.pipes,o=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var i=0;i0&&a.length>o&&!a.warned){a.warned=!0;var c=new Error("Possible EventEmitter memory leak detected. "+a.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");c.name="MaxListenersExceededWarning",c.emitter=e,c.type=t,c.count=a.length,s=c,console&&console.warn&&console.warn(s)}return e}function h(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function p(e,t,n){var r={fired:!1,wrapFn:void 0,target:e,type:t,listener:n},o=h.bind(r);return o.listener=n,r.wrapFn=o,o}function d(e,t,n){var r=e._events;if(void 0===r)return[];var o=r[t];return void 0===o?[]:"function"==typeof o?n?[o.listener||o]:[o]:n?function(e){for(var t=new Array(e.length),n=0;n0&&(a=t[0]),a instanceof Error)throw a;var s=new Error("Unhandled error."+(a?" ("+a.message+")":""));throw s.context=a,s}var c=o[e];if(void 0===c)return!1;if("function"==typeof c)i(c,this,t);else{var u=c.length,l=y(c,u);for(n=0;n=0;i--)if(n[i]===t||n[i].listener===t){a=n[i].listener,o=i;break}if(o<0)return this;0===o?n.shift():function(e,t){for(;t+1=0;r--)this.removeListener(e,t[r]);return this},s.prototype.listeners=function(e){return d(this,e,!0)},s.prototype.rawListeners=function(e){return d(this,e,!1)},s.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):g.call(e,t)},s.prototype.listenerCount=g,s.prototype.eventNames=function(){return this._eventsCount>0?r(this._events):[]}},function(e,t,n){e.exports=n(36).EventEmitter},function(e,t,n){"use strict";var r=n(22);function o(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var n=this,i=this._readableState&&this._readableState.destroyed,a=this._writableState&&this._writableState.destroyed;return i||a?(t?t(e):!e||this._writableState&&this._writableState.errorEmitted||r.nextTick(o,this,e),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?(r.nextTick(o,n,e),n._writableState&&(n._writableState.errorEmitted=!0)):t&&t(e)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},function(e,t,n){"use strict";var r=n(63).Buffer,o=r.isEncoding||function(e){switch((e=""+e)&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function i(e){var t;switch(this.encoding=function(e){var t=function(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}(e);if("string"!=typeof t&&(r.isEncoding===o||!o(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=c,this.end=u,t=4;break;case"utf8":this.fillLast=s,t=4;break;case"base64":this.text=l,this.end=f,t=3;break;default:return this.write=h,void(this.end=p)}this.lastNeed=0,this.lastTotal=0,this.lastChar=r.allocUnsafe(t)}function a(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function s(e){var t=this.lastTotal-this.lastNeed,n=function(e,t,n){if(128!=(192&t[0]))return e.lastNeed=0,"�";if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"�";if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"�"}}(this,e);return void 0!==n?n:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function c(e,t){if((e.length-t)%2==0){var n=e.toString("utf16le",t);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function u(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,n)}return t}function l(e,t){var n=(e.length-t)%3;return 0===n?e.toString("base64",t):(this.lastNeed=3-n,this.lastTotal=3,1===n?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-n))}function f(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function h(e){return e.toString(this.encoding)}function p(e){return e&&e.length?this.write(e):""}t.StringDecoder=i,i.prototype.write=function(e){if(0===e.length)return"";var t,n;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0)return o>0&&(e.lastNeed=o-1),o;if(--r=0)return o>0&&(e.lastNeed=o-2),o;if(--r=0)return o>0&&(2===o?o=0:e.lastNeed=o-3),o;return 0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=n;var r=e.length-(n-this.lastNeed);return e.copy(this.lastChar,0,r),e.toString("utf8",t,r)},i.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},function(e,t,n){"use strict";(function(t,r,o){var i=n(22);function a(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,n){var r=e.entry;e.entry=null;for(;r;){var o=r.callback;t.pendingcb--,o(n),r=r.next}t.corkedRequestsFree?t.corkedRequestsFree.next=e:t.corkedRequestsFree=e}(t,e)}}e.exports=b;var s,c=!t.browser&&["v0.10","v0.9."].indexOf(t.version.slice(0,5))>-1?r:i.nextTick;b.WritableState=v;var u=n(20);u.inherits=n(16);var l={deprecate:n(66)},f=n(37),h=n(15).Buffer,p=o.Uint8Array||function(){};var d,g=n(38);function y(){}function v(e,t){s=s||n(10),e=e||{};var r=t instanceof s;this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var o=e.highWaterMark,u=e.writableHighWaterMark,l=this.objectMode?16:16384;this.highWaterMark=o||0===o?o:r&&(u||0===u)?u:l,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var f=!1===e.decodeStrings;this.decodeStrings=!f,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var n=e._writableState,r=n.sync,o=n.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(n),t)!function(e,t,n,r,o){--t.pendingcb,n?(i.nextTick(o,r),i.nextTick(I,e,t),e._writableState.errorEmitted=!0,e.emit("error",r)):(o(r),e._writableState.errorEmitted=!0,e.emit("error",r),I(e,t))}(e,n,r,t,o);else{var a=S(n);a||n.corked||n.bufferProcessing||!n.bufferedRequest||E(e,n),r?c(w,e,n,a,o):w(e,n,a,o)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new a(this)}function b(e){if(s=s||n(10),!(d.call(b,this)||this instanceof s))return new b(e);this._writableState=new v(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),f.call(this)}function m(e,t,n,r,o,i,a){t.writelen=r,t.writecb=a,t.writing=!0,t.sync=!0,n?e._writev(o,t.onwrite):e._write(o,i,t.onwrite),t.sync=!1}function w(e,t,n,r){n||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,r(),I(e,t)}function E(e,t){t.bufferProcessing=!0;var n=t.bufferedRequest;if(e._writev&&n&&n.next){var r=t.bufferedRequestCount,o=new Array(r),i=t.corkedRequestsFree;i.entry=n;for(var s=0,c=!0;n;)o[s]=n,n.isBuf||(c=!1),n=n.next,s+=1;o.allBuffers=c,m(e,t,!0,t.length,o,"",i.finish),t.pendingcb++,t.lastBufferedRequest=null,i.next?(t.corkedRequestsFree=i.next,i.next=null):t.corkedRequestsFree=new a(t),t.bufferedRequestCount=0}else{for(;n;){var u=n.chunk,l=n.encoding,f=n.callback;if(m(e,t,!1,t.objectMode?1:u.length,u,l,f),n=n.next,t.bufferedRequestCount--,t.writing)break}null===n&&(t.lastBufferedRequest=null)}t.bufferedRequest=n,t.bufferProcessing=!1}function S(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function C(e,t){e._final((function(n){t.pendingcb--,n&&e.emit("error",n),t.prefinished=!0,e.emit("prefinish"),I(e,t)}))}function I(e,t){var n=S(t);return n&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,i.nextTick(C,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),n}u.inherits(b,f),v.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(v.prototype,"buffer",{get:l.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(d=Function.prototype[Symbol.hasInstance],Object.defineProperty(b,Symbol.hasInstance,{value:function(e){return!!d.call(this,e)||this===b&&(e&&e._writableState instanceof v)}})):d=function(e){return e instanceof this},b.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},b.prototype.write=function(e,t,n){var r,o=this._writableState,a=!1,s=!o.objectMode&&(r=e,h.isBuffer(r)||r instanceof p);return s&&!h.isBuffer(e)&&(e=function(e){return h.from(e)}(e)),"function"==typeof t&&(n=t,t=null),s?t="buffer":t||(t=o.defaultEncoding),"function"!=typeof n&&(n=y),o.ended?function(e,t){var n=new Error("write after end");e.emit("error",n),i.nextTick(t,n)}(this,n):(s||function(e,t,n,r){var o=!0,a=!1;return null===n?a=new TypeError("May not write null values to stream"):"string"==typeof n||void 0===n||t.objectMode||(a=new TypeError("Invalid non-string/buffer chunk")),a&&(e.emit("error",a),i.nextTick(r,a),o=!1),o}(this,o,e,n))&&(o.pendingcb++,a=function(e,t,n,r,o,i){if(!n){var a=function(e,t,n){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=h.from(t,n));return t}(t,r,o);r!==a&&(n=!0,o="buffer",r=a)}var s=t.objectMode?1:r.length;t.length+=s;var c=t.length-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(b.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),b.prototype._write=function(e,t,n){n(new Error("_write() is not implemented"))},b.prototype._writev=null,b.prototype.end=function(e,t,n){var r=this._writableState;"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||r.finished||function(e,t,n){t.ending=!0,I(e,t),n&&(t.finished?i.nextTick(n):e.once("finish",n));t.ended=!0,e.writable=!1}(this,r,n)},Object.defineProperty(b.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),b.prototype.destroy=g.destroy,b.prototype._undestroy=g.undestroy,b.prototype._destroy=function(e,t){this.end(),t(e)}}).call(this,n(14),n(64).setImmediate,n(9))},function(e,t,n){"use strict";e.exports=a;var r=n(10),o=n(20);function i(e,t){var n=this._transformState;n.transforming=!1;var r=n.writecb;if(!r)return this.emit("error",new Error("write callback called multiple times"));n.writechunk=null,n.writecb=null,null!=t&&this.push(t),r(e);var o=this._readableState;o.reading=!1,(o.needReadable||o.lengths?a.slice(s).buffer:null}else{var c,u=t;if(-1===(c=u.indexOf(r.a.RecordSeparator)))throw new Error("Message is incomplete.");s=c+1;n=u.substring(0,s),i=u.length>s?u.substring(s):null}var l=r.a.parse(n),f=JSON.parse(l[0]);if(f.type)throw new Error("Expected a handshake response from the server.");return[i,f]},t}()}).call(this,n(11).Buffer)},,,,,,,,function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{c(r.next(e))}catch(e){i(e)}}function s(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}c((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0)&&!(r=i.next()).done;)a.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return a},a=this&&this.__spread||function(){for(var e=[],t=0;t0?a-4:a;for(n=0;n>16&255,c[l++]=t>>8&255,c[l++]=255&t;2===s&&(t=o[e.charCodeAt(n)]<<2|o[e.charCodeAt(n+1)]>>4,c[l++]=255&t);1===s&&(t=o[e.charCodeAt(n)]<<10|o[e.charCodeAt(n+1)]<<4|o[e.charCodeAt(n+2)]>>2,c[l++]=t>>8&255,c[l++]=255&t);return c},t.fromByteArray=function(e){for(var t,n=e.length,o=n%3,i=[],a=0,s=n-o;as?s:a+16383));1===o?(t=e[n-1],i.push(r[t>>2]+r[t<<4&63]+"==")):2===o&&(t=(e[n-2]<<8)+e[n-1],i.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"="));return i.join("")};for(var r=[],o=[],i="undefined"!=typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,c=a.length;s0)throw new Error("Invalid string. Length must be a multiple of 4");var n=e.indexOf("=");return-1===n&&(n=t),[n,n===t?0:4-n%4]}function l(e,t,n){for(var o,i,a=[],s=t;s>18&63]+r[i>>12&63]+r[i>>6&63]+r[63&i]);return a.join("")}o["-".charCodeAt(0)]=62,o["_".charCodeAt(0)]=63},function(e,t){t.read=function(e,t,n,r,o){var i,a,s=8*o-r-1,c=(1<>1,l=-7,f=n?o-1:0,h=n?-1:1,p=e[t+f];for(f+=h,i=p&(1<<-l)-1,p>>=-l,l+=s;l>0;i=256*i+e[t+f],f+=h,l-=8);for(a=i&(1<<-l)-1,i>>=-l,l+=r;l>0;a=256*a+e[t+f],f+=h,l-=8);if(0===i)i=1-u;else{if(i===c)return a?NaN:1/0*(p?-1:1);a+=Math.pow(2,r),i-=u}return(p?-1:1)*a*Math.pow(2,i-r)},t.write=function(e,t,n,r,o,i){var a,s,c,u=8*i-o-1,l=(1<>1,h=23===o?Math.pow(2,-24)-Math.pow(2,-77):0,p=r?0:i-1,d=r?1:-1,g=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,a=l):(a=Math.floor(Math.log(t)/Math.LN2),t*(c=Math.pow(2,-a))<1&&(a--,c*=2),(t+=a+f>=1?h/c:h*Math.pow(2,1-f))*c>=2&&(a++,c/=2),a+f>=l?(s=0,a=l):a+f>=1?(s=(t*c-1)*Math.pow(2,o),a+=f):(s=t*Math.pow(2,f-1)*Math.pow(2,o),a=0));o>=8;e[n+p]=255&s,p+=d,s/=256,o-=8);for(a=a<0;e[n+p]=255&a,p+=d,a/=256,u-=8);e[n+p-d]|=128*g}},function(e,t){var n={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==n.call(e)}},function(e,t,n){"use strict";(function(t){var r=n(55); /*! * The buffer module from node.js, for the browser. * * @author Feross Aboukhadijeh * @license MIT - */function o(e,t){if(e===t)return 0;for(var n=e.length,r=t.length,o=0,i=Math.min(n,r);o=0;u--)if(l[u]!==f[u])return!1;for(u=l.length-1;u>=0;u--)if(s=l[u],!m(e[s],t[s],n,r))return!1;return!0}(e,t,n,r))}return n?e===t:e==t}function w(e){return"[object Arguments]"==Object.prototype.toString.call(e)}function E(e,t){if(!e||!t)return!1;if("[object RegExp]"==Object.prototype.toString.call(t))return t.test(e);try{if(e instanceof t)return!0}catch(e){}return!Error.isPrototypeOf(t)&&!0===t.call({},e)}function S(e,t,n,r){var o;if("function"!=typeof t)throw new TypeError('"block" argument must be a function');"string"==typeof n&&(r=n,n=null),o=function(e){var t;try{e()}catch(e){t=e}return t}(t),r=(n&&n.name?" ("+n.name+").":".")+(r?" "+r:"."),e&&!o&&v(o,n,"Missing expected exception"+r);var i="string"==typeof r,s=!e&&o&&!n;if((!e&&a.isError(o)&&i&&E(o,n)||s)&&v(o,n,"Got unwanted exception"+r),e&&o&&n&&!E(o,n)||!e&&o)throw o}h.AssertionError=function(e){this.name="AssertionError",this.actual=e.actual,this.expected=e.expected,this.operator=e.operator,e.message?(this.message=e.message,this.generatedMessage=!1):(this.message=function(e){return g(y(e.actual),128)+" "+e.operator+" "+g(y(e.expected),128)}(this),this.generatedMessage=!0);var t=e.stackStartFunction||v;if(Error.captureStackTrace)Error.captureStackTrace(this,t);else{var n=new Error;if(n.stack){var r=n.stack,o=d(t),i=r.indexOf("\n"+o);if(i>=0){var a=r.indexOf("\n",i+1);r=r.substring(a+1)}this.stack=r}}},a.inherits(h.AssertionError,Error),h.fail=v,h.ok=b,h.equal=function(e,t,n){e!=t&&v(e,t,n,"==",h.equal)},h.notEqual=function(e,t,n){e==t&&v(e,t,n,"!=",h.notEqual)},h.deepEqual=function(e,t,n){m(e,t,!1)||v(e,t,n,"deepEqual",h.deepEqual)},h.deepStrictEqual=function(e,t,n){m(e,t,!0)||v(e,t,n,"deepStrictEqual",h.deepStrictEqual)},h.notDeepEqual=function(e,t,n){m(e,t,!1)&&v(e,t,n,"notDeepEqual",h.notDeepEqual)},h.notDeepStrictEqual=function e(t,n,r){m(t,n,!0)&&v(t,n,r,"notDeepStrictEqual",e)},h.strictEqual=function(e,t,n){e!==t&&v(e,t,n,"===",h.strictEqual)},h.notStrictEqual=function(e,t,n){e===t&&v(e,t,n,"!==",h.notStrictEqual)},h.throws=function(e,t,n){S(!0,e,t,n)},h.doesNotThrow=function(e,t,n){S(!1,e,t,n)},h.ifError=function(e){if(e)throw e},h.strict=r((function e(t,n){t||v(t,!0,n,"==",e)}),h,{equal:h.strictEqual,deepEqual:h.deepStrictEqual,notEqual:h.notStrictEqual,notDeepEqual:h.notDeepStrictEqual}),h.strict.strict=h.strict;var C=Object.keys||function(e){var t=[];for(var n in e)s.call(e,n)&&t.push(n);return t}}).call(this,n(9))},function(e,t,n){"use strict"; + */function o(e,t){if(e===t)return 0;for(var n=e.length,r=t.length,o=0,i=Math.min(n,r);o=0;u--)if(l[u]!==f[u])return!1;for(u=l.length-1;u>=0;u--)if(s=l[u],!m(e[s],t[s],n,r))return!1;return!0}(e,t,n,r))}return n?e===t:e==t}function w(e){return"[object Arguments]"==Object.prototype.toString.call(e)}function E(e,t){if(!e||!t)return!1;if("[object RegExp]"==Object.prototype.toString.call(t))return t.test(e);try{if(e instanceof t)return!0}catch(e){}return!Error.isPrototypeOf(t)&&!0===t.call({},e)}function S(e,t,n,r){var o;if("function"!=typeof t)throw new TypeError('"block" argument must be a function');"string"==typeof n&&(r=n,n=null),o=function(e){var t;try{e()}catch(e){t=e}return t}(t),r=(n&&n.name?" ("+n.name+").":".")+(r?" "+r:"."),e&&!o&&v(o,n,"Missing expected exception"+r);var i="string"==typeof r,s=!e&&o&&!n;if((!e&&a.isError(o)&&i&&E(o,n)||s)&&v(o,n,"Got unwanted exception"+r),e&&o&&n&&!E(o,n)||!e&&o)throw o}h.AssertionError=function(e){this.name="AssertionError",this.actual=e.actual,this.expected=e.expected,this.operator=e.operator,e.message?(this.message=e.message,this.generatedMessage=!1):(this.message=function(e){return g(y(e.actual),128)+" "+e.operator+" "+g(y(e.expected),128)}(this),this.generatedMessage=!0);var t=e.stackStartFunction||v;if(Error.captureStackTrace)Error.captureStackTrace(this,t);else{var n=new Error;if(n.stack){var r=n.stack,o=d(t),i=r.indexOf("\n"+o);if(i>=0){var a=r.indexOf("\n",i+1);r=r.substring(a+1)}this.stack=r}}},a.inherits(h.AssertionError,Error),h.fail=v,h.ok=b,h.equal=function(e,t,n){e!=t&&v(e,t,n,"==",h.equal)},h.notEqual=function(e,t,n){e==t&&v(e,t,n,"!=",h.notEqual)},h.deepEqual=function(e,t,n){m(e,t,!1)||v(e,t,n,"deepEqual",h.deepEqual)},h.deepStrictEqual=function(e,t,n){m(e,t,!0)||v(e,t,n,"deepStrictEqual",h.deepStrictEqual)},h.notDeepEqual=function(e,t,n){m(e,t,!1)&&v(e,t,n,"notDeepEqual",h.notDeepEqual)},h.notDeepStrictEqual=function e(t,n,r){m(t,n,!0)&&v(t,n,r,"notDeepStrictEqual",e)},h.strictEqual=function(e,t,n){e!==t&&v(e,t,n,"===",h.strictEqual)},h.notStrictEqual=function(e,t,n){e===t&&v(e,t,n,"!==",h.notStrictEqual)},h.throws=function(e,t,n){S(!0,e,t,n)},h.doesNotThrow=function(e,t,n){S(!1,e,t,n)},h.ifError=function(e){if(e)throw e},h.strict=r((function e(t,n){t||v(t,!0,n,"==",e)}),h,{equal:h.strictEqual,deepEqual:h.deepStrictEqual,notEqual:h.notStrictEqual,notDeepEqual:h.notDeepStrictEqual}),h.strict.strict=h.strict;var C=Object.keys||function(e){var t=[];for(var n in e)s.call(e,n)&&t.push(n);return t}}).call(this,n(9))},function(e,t,n){"use strict"; /* object-assign (c) Sindre Sorhus @license MIT -*/var r=Object.getOwnPropertySymbols,o=Object.prototype.hasOwnProperty,i=Object.prototype.propertyIsEnumerable;function a(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(e,t){for(var n,s,c=a(e),u=1;u0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n},e.prototype.concat=function(e){if(0===this.length)return r.alloc(0);if(1===this.length)return this.head.data;for(var t,n,o,i=r.allocUnsafe(e>>>0),a=this.head,s=0;a;)t=a.data,n=i,o=s,t.copy(n,o),s+=a.data.length,a=a.next;return i},e}(),o&&o.inspect&&o.inspect.custom&&(e.exports.prototype[o.inspect.custom]=function(){var e=o.inspect({length:this.length});return this.constructor.name+" "+e})},function(e,t){},function(e,t,n){var r=n(11),o=r.Buffer;function i(e,t){for(var n in e)t[n]=e[n]}function a(e,t,n){return o(e,t,n)}o.from&&o.alloc&&o.allocUnsafe&&o.allocUnsafeSlow?e.exports=r:(i(r,t),t.Buffer=a),a.prototype=Object.create(o.prototype),i(o,a),a.from=function(e,t,n){if("number"==typeof e)throw new TypeError("Argument must not be a number");return o(e,t,n)},a.alloc=function(e,t,n){if("number"!=typeof e)throw new TypeError("Argument must be a number");var r=o(e);return void 0!==t?"string"==typeof n?r.fill(t,n):r.fill(t):r.fill(0),r},a.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return o(e)},a.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return r.SlowBuffer(e)}},function(e,t,n){(function(e){var r=void 0!==e&&e||"undefined"!=typeof self&&self||window,o=Function.prototype.apply;function i(e,t){this._id=e,this._clearFn=t}t.setTimeout=function(){return new i(o.call(setTimeout,r,arguments),clearTimeout)},t.setInterval=function(){return new i(o.call(setInterval,r,arguments),clearInterval)},t.clearTimeout=t.clearInterval=function(e){e&&e.close()},i.prototype.unref=i.prototype.ref=function(){},i.prototype.close=function(){this._clearFn.call(r,this._id)},t.enroll=function(e,t){clearTimeout(e._idleTimeoutId),e._idleTimeout=t},t.unenroll=function(e){clearTimeout(e._idleTimeoutId),e._idleTimeout=-1},t._unrefActive=t.active=function(e){clearTimeout(e._idleTimeoutId);var t=e._idleTimeout;t>=0&&(e._idleTimeoutId=setTimeout((function(){e._onTimeout&&e._onTimeout()}),t))},n(68),t.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==e&&e.setImmediate||this&&this.setImmediate,t.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==e&&e.clearImmediate||this&&this.clearImmediate}).call(this,n(9))},function(e,t,n){(function(e,t){!function(e,n){"use strict";if(!e.setImmediate){var r,o,i,a,s,c=1,u={},l=!1,f=e.document,h=Object.getPrototypeOf&&Object.getPrototypeOf(e);h=h&&h.setTimeout?h:e,"[object process]"==={}.toString.call(e.process)?r=function(e){t.nextTick((function(){d(e)}))}:!function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=n,t}}()?e.MessageChannel?((i=new MessageChannel).port1.onmessage=function(e){d(e.data)},r=function(e){i.port2.postMessage(e)}):f&&"onreadystatechange"in f.createElement("script")?(o=f.documentElement,r=function(e){var t=f.createElement("script");t.onreadystatechange=function(){d(e),t.onreadystatechange=null,o.removeChild(t),t=null},o.appendChild(t)}):r=function(e){setTimeout(d,0,e)}:(a="setImmediate$"+Math.random()+"$",s=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(a)&&d(+t.data.slice(a.length))},e.addEventListener?e.addEventListener("message",s,!1):e.attachEvent("onmessage",s),r=function(t){e.postMessage(a+t,"*")}),h.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),n=0;n0?this._transform(null,t,n):n()},e.exports.decoder=c,e.exports.encoder=s},function(e,t,n){(t=e.exports=n(37)).Stream=t,t.Readable=t,t.Writable=n(42),t.Duplex=n(10),t.Transform=n(43),t.PassThrough=n(72)},function(e,t,n){"use strict";e.exports=i;var r=n(43),o=n(20);function i(e){if(!(this instanceof i))return new i(e);r.call(this,e)}o.inherits=n(16),o.inherits(i,r),i.prototype._transform=function(e,t,n){n(null,e)}},function(e,t,n){var r=n(21);function o(e){Error.call(this),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name,this.message=e||"unable to decode"}n(36).inherits(o,Error),e.exports=function(e){return function(e){e instanceof r||(e=r().append(e));var t=i(e);if(t)return e.consume(t.bytesConsumed),t.value;throw new o};function t(e,t,n){return t>=n+e}function n(e,t){return{value:e,bytesConsumed:t}}function i(e,r){r=void 0===r?0:r;var o=e.length-r;if(o<=0)return null;var i,l,f,h=e.readUInt8(r),p=0;if(!function(e,t){var n=function(e){switch(e){case 196:return 2;case 197:return 3;case 198:return 5;case 199:return 3;case 200:return 4;case 201:return 6;case 202:return 5;case 203:return 9;case 204:return 2;case 205:return 3;case 206:return 5;case 207:return 9;case 208:return 2;case 209:return 3;case 210:return 5;case 211:return 9;case 212:return 3;case 213:return 4;case 214:return 6;case 215:return 10;case 216:return 18;case 217:return 2;case 218:return 3;case 219:return 5;case 222:return 3;default:return-1}}(e);return!(-1!==n&&t=0;f--)p+=e.readUInt8(r+f+1)*Math.pow(2,8*(7-f));return n(p,9);case 208:return n(p=e.readInt8(r+1),2);case 209:return n(p=e.readInt16BE(r+1),3);case 210:return n(p=e.readInt32BE(r+1),5);case 211:return n(p=function(e,t){var n=128==(128&e[t]);if(n)for(var r=1,o=t+7;o>=t;o--){var i=(255^e[o])+r;e[o]=255&i,r=i>>8}var a=e.readUInt32BE(t+0),s=e.readUInt32BE(t+4);return(4294967296*a+s)*(n?-1:1)}(e.slice(r+1,r+9),0),9);case 202:return n(p=e.readFloatBE(r+1),5);case 203:return n(p=e.readDoubleBE(r+1),9);case 217:return t(i=e.readUInt8(r+1),o,2)?n(p=e.toString("utf8",r+2,r+2+i),2+i):null;case 218:return t(i=e.readUInt16BE(r+1),o,3)?n(p=e.toString("utf8",r+3,r+3+i),3+i):null;case 219:return t(i=e.readUInt32BE(r+1),o,5)?n(p=e.toString("utf8",r+5,r+5+i),5+i):null;case 196:return t(i=e.readUInt8(r+1),o,2)?n(p=e.slice(r+2,r+2+i),2+i):null;case 197:return t(i=e.readUInt16BE(r+1),o,3)?n(p=e.slice(r+3,r+3+i),3+i):null;case 198:return t(i=e.readUInt32BE(r+1),o,5)?n(p=e.slice(r+5,r+5+i),5+i):null;case 220:return o<3?null:(i=e.readUInt16BE(r+1),a(e,r,i,3));case 221:return o<5?null:(i=e.readUInt32BE(r+1),a(e,r,i,5));case 222:return i=e.readUInt16BE(r+1),s(e,r,i,3);case 223:throw new Error("map too big to decode in JS");case 212:return c(e,r,1);case 213:return c(e,r,2);case 214:return c(e,r,4);case 215:return c(e,r,8);case 216:return c(e,r,16);case 199:return i=e.readUInt8(r+1),l=e.readUInt8(r+2),t(i,o,3)?u(e,r,l,i,3):null;case 200:return i=e.readUInt16BE(r+1),l=e.readUInt8(r+3),t(i,o,4)?u(e,r,l,i,4):null;case 201:return i=e.readUInt32BE(r+1),l=e.readUInt8(r+5),t(i,o,6)?u(e,r,l,i,6):null}if(144==(240&h))return a(e,r,i=15&h,1);if(128==(240&h))return s(e,r,i=15&h,1);if(160==(224&h))return t(i=31&h,o,1)?n(p=e.toString("utf8",r+1,r+i+1),i+1):null;if(h>=224)return n(p=h-256,1);if(h<128)return n(h,1);throw new Error("not implemented yet")}function a(e,t,r,o){var a,s=[],c=0;for(t+=o,a=0;a.1)&&((n=r.allocUnsafe(9))[0]=203,n.writeDoubleBE(e,1)),n}e.exports=function(e,t,n,a){function s(c,u){var l,f,h;if(void 0===c)throw new Error("undefined is not encodable in msgpack!");if(null===c)(l=r.allocUnsafe(1))[0]=192;else if(!0===c)(l=r.allocUnsafe(1))[0]=195;else if(!1===c)(l=r.allocUnsafe(1))[0]=194;else if("string"==typeof c)(f=r.byteLength(c))<32?((l=r.allocUnsafe(1+f))[0]=160|f,f>0&&l.write(c,1)):f<=255&&!n?((l=r.allocUnsafe(2+f))[0]=217,l[1]=f,l.write(c,2)):f<=65535?((l=r.allocUnsafe(3+f))[0]=218,l.writeUInt16BE(f,1),l.write(c,3)):((l=r.allocUnsafe(5+f))[0]=219,l.writeUInt32BE(f,1),l.write(c,5));else if(c&&(c.readUInt32LE||c instanceof Uint8Array))c instanceof Uint8Array&&(c=r.from(c)),c.length<=255?((l=r.allocUnsafe(2))[0]=196,l[1]=c.length):c.length<=65535?((l=r.allocUnsafe(3))[0]=197,l.writeUInt16BE(c.length,1)):((l=r.allocUnsafe(5))[0]=198,l.writeUInt32BE(c.length,1)),l=o([l,c]);else if(Array.isArray(c))c.length<16?(l=r.allocUnsafe(1))[0]=144|c.length:c.length<65536?((l=r.allocUnsafe(3))[0]=220,l.writeUInt16BE(c.length,1)):((l=r.allocUnsafe(5))[0]=221,l.writeUInt32BE(c.length,1)),l=c.reduce((function(e,t){return e.append(s(t,!0)),e}),o().append(l));else{if(!a&&"function"==typeof c.getDate)return function(e){var t,n=1*e,i=Math.floor(n/1e3),a=1e6*(n-1e3*i);if(a||i>4294967295){(t=new r(10))[0]=215,t[1]=-1;var s=4*a,c=i/Math.pow(2,32),u=s+c&4294967295,l=4294967295&i;t.writeInt32BE(u,2),t.writeInt32BE(l,6)}else(t=new r(6))[0]=214,t[1]=-1,t.writeUInt32BE(Math.floor(n/1e3),2);return o().append(t)}(c);if("object"==typeof c)l=function(t){var n,i,a,s=[];for(n=0;n>8),s.push(255&a)):(s.push(201),s.push(a>>24),s.push(a>>16&255),s.push(a>>8&255),s.push(255&a));return o().append(r.from(s)).append(i)}(c)||function(e){var t,n,i=[],a=0;for(t in e)e.hasOwnProperty(t)&&void 0!==e[t]&&"function"!=typeof e[t]&&(++a,i.push(s(t,!0)),i.push(s(e[t],!0)));a<16?(n=r.allocUnsafe(1))[0]=128|a:((n=r.allocUnsafe(3))[0]=222,n.writeUInt16BE(a,1));return i.unshift(n),i.reduce((function(e,t){return e.append(t)}),o())}(c);else if("number"==typeof c){if((h=c)!==Math.floor(h))return i(c,t);if(c>=0)if(c<128)(l=r.allocUnsafe(1))[0]=c;else if(c<256)(l=r.allocUnsafe(2))[0]=204,l[1]=c;else if(c<65536)(l=r.allocUnsafe(3))[0]=205,l.writeUInt16BE(c,1);else if(c<=4294967295)(l=r.allocUnsafe(5))[0]=206,l.writeUInt32BE(c,1);else{if(!(c<=9007199254740991))return i(c,!0);(l=r.allocUnsafe(9))[0]=207,function(e,t){for(var n=7;n>=0;n--)e[n+1]=255&t,t/=256}(l,c)}else if(c>=-32)(l=r.allocUnsafe(1))[0]=256+c;else if(c>=-128)(l=r.allocUnsafe(2))[0]=208,l.writeInt8(c,1);else if(c>=-32768)(l=r.allocUnsafe(3))[0]=209,l.writeInt16BE(c,1);else if(c>-214748365)(l=r.allocUnsafe(5))[0]=210,l.writeInt32BE(c,1);else{if(!(c>=-9007199254740991))return i(c,!0);(l=r.allocUnsafe(9))[0]=211,function(e,t,n){var r=n<0;r&&(n=Math.abs(n));var o=n%4294967296,i=n/4294967296;if(e.writeUInt32BE(Math.floor(i),t+0),e.writeUInt32BE(o,t+4),r)for(var a=1,s=t+7;s>=t;s--){var c=(255^e[s])+a;e[s]=255&c,a=c>>8}}(l,1,c)}}}if(!l)throw new Error("not implemented yet");return u?l:l.slice()}return s}},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{c(r.next(e))}catch(e){i(e)}}function s(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}c((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]this.nextBatchId?this.fatalError?(this.logger.log(s.LogLevel.Debug,"Received a new batch "+e+" but errored out on a previous batch "+(this.nextBatchId-1)),[4,n.send("OnRenderCompleted",this.nextBatchId-1,this.fatalError.toString())]):[3,4]:[3,5];case 3:return o.sent(),[2];case 4:return this.logger.log(s.LogLevel.Debug,"Waiting for batch "+this.nextBatchId+". Batch "+e+" not processed."),[2];case 5:return o.trys.push([5,7,,8]),this.nextBatchId++,this.logger.log(s.LogLevel.Debug,"Applying batch "+e+"."),i.renderBatch(this.browserRendererId,new a.OutOfProcessRenderBatch(t)),[4,this.completeBatch(n,e)];case 6:return o.sent(),[3,8];case 7:throw r=o.sent(),this.fatalError=r.toString(),this.logger.log(s.LogLevel.Error,"There was an error applying batch "+e+"."),n.send("OnRenderCompleted",e,r.toString()),r;case 8:return[2]}}))}))},e.prototype.getLastBatchid=function(){return this.nextBatchId-1},e.prototype.completeBatch=function(e,t){return r(this,void 0,void 0,(function(){return o(this,(function(n){switch(n.label){case 0:return n.trys.push([0,2,,3]),[4,e.send("OnRenderCompleted",t,null)];case 1:return n.sent(),[3,3];case 2:return n.sent(),this.logger.log(s.LogLevel.Warning,"Failed to deliver completion notification for render '"+t+"'."),[3,3];case 3:return[2]}}))}))},e}();t.RenderQueue=c},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(34),o=n(33),i=function(){function e(e){this.batchData=e;var t=new u(e);this.arrayRangeReader=new l(e),this.arrayBuilderSegmentReader=new f(e),this.diffReader=new a(e),this.editReader=new s(e,t),this.frameReader=new c(e,t)}return e.prototype.updatedComponents=function(){return o.readInt32LE(this.batchData,this.batchData.length-20)},e.prototype.referenceFrames=function(){return o.readInt32LE(this.batchData,this.batchData.length-16)},e.prototype.disposedComponentIds=function(){return o.readInt32LE(this.batchData,this.batchData.length-12)},e.prototype.disposedEventHandlerIds=function(){return o.readInt32LE(this.batchData,this.batchData.length-8)},e.prototype.updatedComponentsEntry=function(e,t){var n=e+4*t;return o.readInt32LE(this.batchData,n)},e.prototype.referenceFramesEntry=function(e,t){return e+20*t},e.prototype.disposedComponentIdsEntry=function(e,t){var n=e+4*t;return o.readInt32LE(this.batchData,n)},e.prototype.disposedEventHandlerIdsEntry=function(e,t){var n=e+8*t;return o.readUint64LE(this.batchData,n)},e}();t.OutOfProcessRenderBatch=i;var a=function(){function e(e){this.batchDataUint8=e}return e.prototype.componentId=function(e){return o.readInt32LE(this.batchDataUint8,e)},e.prototype.edits=function(e){return e+4},e.prototype.editsEntry=function(e,t){return e+16*t},e}(),s=function(){function e(e,t){this.batchDataUint8=e,this.stringReader=t}return e.prototype.editType=function(e){return o.readInt32LE(this.batchDataUint8,e)},e.prototype.siblingIndex=function(e){return o.readInt32LE(this.batchDataUint8,e+4)},e.prototype.newTreeIndex=function(e){return o.readInt32LE(this.batchDataUint8,e+8)},e.prototype.moveToSiblingIndex=function(e){return o.readInt32LE(this.batchDataUint8,e+8)},e.prototype.removedAttributeName=function(e){var t=o.readInt32LE(this.batchDataUint8,e+12);return this.stringReader.readString(t)},e}(),c=function(){function e(e,t){this.batchDataUint8=e,this.stringReader=t}return e.prototype.frameType=function(e){return o.readInt32LE(this.batchDataUint8,e)},e.prototype.subtreeLength=function(e){return o.readInt32LE(this.batchDataUint8,e+4)},e.prototype.elementReferenceCaptureId=function(e){var t=o.readInt32LE(this.batchDataUint8,e+4);return this.stringReader.readString(t)},e.prototype.componentId=function(e){return o.readInt32LE(this.batchDataUint8,e+8)},e.prototype.elementName=function(e){var t=o.readInt32LE(this.batchDataUint8,e+8);return this.stringReader.readString(t)},e.prototype.textContent=function(e){var t=o.readInt32LE(this.batchDataUint8,e+4);return this.stringReader.readString(t)},e.prototype.markupContent=function(e){var t=o.readInt32LE(this.batchDataUint8,e+4);return this.stringReader.readString(t)},e.prototype.attributeName=function(e){var t=o.readInt32LE(this.batchDataUint8,e+4);return this.stringReader.readString(t)},e.prototype.attributeValue=function(e){var t=o.readInt32LE(this.batchDataUint8,e+8);return this.stringReader.readString(t)},e.prototype.attributeEventHandlerId=function(e){return o.readUint64LE(this.batchDataUint8,e+12)},e}(),u=function(){function e(e){this.batchDataUint8=e,this.stringTableStartIndex=o.readInt32LE(e,e.length-4)}return e.prototype.readString=function(e){if(-1===e)return null;var t=o.readInt32LE(this.batchDataUint8,this.stringTableStartIndex+4*e),n=o.readLEB128(this.batchDataUint8,t),i=t+o.numLEB128Bytes(n),a=new Uint8Array(this.batchDataUint8.buffer,this.batchDataUint8.byteOffset+i,n);return r.decodeUtf8(a)},e}(),l=function(){function e(e){this.batchDataUint8=e}return e.prototype.count=function(e){return o.readInt32LE(this.batchDataUint8,e)},e.prototype.values=function(e){return e+4},e}(),f=function(){function e(e){this.batchDataUint8=e}return e.prototype.offset=function(e){return 0},e.prototype.count=function(e){return o.readInt32LE(this.batchDataUint8,e)},e.prototype.values=function(e){return e+4},e}()},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(17),o=function(){function e(){}return e.prototype.log=function(e,t){},e.instance=new e,e}();t.NullLogger=o;var i=function(){function e(e){this.minimumLogLevel=e}return e.prototype.log=function(e,t){if(e>=this.minimumLogLevel)switch(e){case r.LogLevel.Critical:case r.LogLevel.Error:console.error("["+(new Date).toISOString()+"] "+r.LogLevel[e]+": "+t);break;case r.LogLevel.Warning:console.warn("["+(new Date).toISOString()+"] "+r.LogLevel[e]+": "+t);break;case r.LogLevel.Information:console.info("["+(new Date).toISOString()+"] "+r.LogLevel[e]+": "+t);break;default:console.log("["+(new Date).toISOString()+"] "+r.LogLevel[e]+": "+t)}},e}();t.ConsoleLogger=i},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{c(r.next(e))}catch(e){i(e)}}function s(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}c((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]reloading the page if you're unable to reconnect.",this.message.querySelector("a").addEventListener("click",(function(){return location.reload()}))},e.prototype.rejected=function(){this.button.style.display="none",this.reloadParagraph.style.display="none",this.message.innerHTML="Could not reconnect to the server. Reload the page to restore functionality.",this.message.querySelector("a").addEventListener("click",(function(){return location.reload()}))},e}();t.DefaultReconnectDisplay=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(e){this.dialog=e}return e.prototype.show=function(){this.removeClasses(),this.dialog.classList.add(e.ShowClassName)},e.prototype.hide=function(){this.removeClasses(),this.dialog.classList.add(e.HideClassName)},e.prototype.failed=function(){this.removeClasses(),this.dialog.classList.add(e.FailedClassName)},e.prototype.rejected=function(){this.removeClasses(),this.dialog.classList.add(e.RejectedClassName)},e.prototype.removeClasses=function(){this.dialog.classList.remove(e.ShowClassName,e.HideClassName,e.FailedClassName,e.RejectedClassName)},e.ShowClassName="components-reconnect-show",e.HideClassName="components-reconnect-hide",e.FailedClassName="components-reconnect-failed",e.RejectedClassName="components-reconnect-rejected",e}();t.UserSpecifiedDisplay=r},function(e,t,n){"use strict";n.r(t),n.d(t,"VERSION",(function(){return l})),n.d(t,"MessagePackHubProtocol",(function(){return u}));var r=n(11),o=n(12),i=n(2),a=function(){function e(){}return e.write=function(e){var t=e.byteLength||e.length,n=[];do{var r=127&t;(t>>=7)>0&&(r|=128),n.push(r)}while(t>0);t=e.byteLength||e.length;var o=new Uint8Array(n.length+t);return o.set(n,0),o.set(e,n.length),o.buffer},e.parse=function(e){for(var t=[],n=new Uint8Array(e),r=[0,7,14,21,28],o=0;o7)throw new Error("Messages bigger than 2GB are not supported.");if(!(n.byteLength>=o+i+a))throw new Error("Incomplete message.");t.push(n.slice?n.slice(o+i,o+i+a):n.subarray(o+i,o+i+a)),o=o+i+a}return t},e}();var s=Object.assign||function(e){for(var t,n=1,r=arguments.length;n=3?e[2]:void 0,error:e[1],type:i.MessageType.Close}},e.prototype.createPingMessage=function(e){if(e.length<1)throw new Error("Invalid payload for Ping message.");return{type:i.MessageType.Ping}},e.prototype.createInvocationMessage=function(e,t){if(t.length<5)throw new Error("Invalid payload for Invocation message.");var n=t[2];return n?{arguments:t[4],headers:e,invocationId:n,streamIds:[],target:t[3],type:i.MessageType.Invocation}:{arguments:t[4],headers:e,streamIds:[],target:t[3],type:i.MessageType.Invocation}},e.prototype.createStreamItemMessage=function(e,t){if(t.length<4)throw new Error("Invalid payload for StreamItem message.");return{headers:e,invocationId:t[2],item:t[3],type:i.MessageType.StreamItem}},e.prototype.createCompletionMessage=function(e,t){if(t.length<4)throw new Error("Invalid payload for Completion message.");var n,r,o=t[3];if(o!==this.voidResult&&t.length<5)throw new Error("Invalid payload for Completion message.");switch(o){case this.errorResult:n=t[4];break;case this.nonVoidResult:r=t[4]}return{error:n,headers:e,invocationId:t[2],result:r,type:i.MessageType.Completion}},e.prototype.writeInvocation=function(e){var t,n=o(this.messagePackOptions);return t=e.streamIds?n.encode([i.MessageType.Invocation,e.headers||{},e.invocationId||null,e.target,e.arguments,e.streamIds]):n.encode([i.MessageType.Invocation,e.headers||{},e.invocationId||null,e.target,e.arguments]),a.write(t.slice())},e.prototype.writeStreamInvocation=function(e){var t,n=o(this.messagePackOptions);return t=e.streamIds?n.encode([i.MessageType.StreamInvocation,e.headers||{},e.invocationId,e.target,e.arguments,e.streamIds]):n.encode([i.MessageType.StreamInvocation,e.headers||{},e.invocationId,e.target,e.arguments]),a.write(t.slice())},e.prototype.writeStreamItem=function(e){var t=o(this.messagePackOptions).encode([i.MessageType.StreamItem,e.headers||{},e.invocationId,e.item]);return a.write(t.slice())},e.prototype.writeCompletion=function(e){var t,n=o(this.messagePackOptions),r=e.error?this.errorResult:e.result?this.nonVoidResult:this.voidResult;switch(r){case this.errorResult:t=n.encode([i.MessageType.Completion,e.headers||{},e.invocationId,r,e.error]);break;case this.voidResult:t=n.encode([i.MessageType.Completion,e.headers||{},e.invocationId,r]);break;case this.nonVoidResult:t=n.encode([i.MessageType.Completion,e.headers||{},e.invocationId,r,e.result])}return a.write(t.slice())},e.prototype.writeCancelInvocation=function(e){var t=o(this.messagePackOptions).encode([i.MessageType.CancelInvocation,e.headers||{},e.invocationId]);return a.write(t.slice())},e.prototype.readHeaders=function(e){var t=e[1];if("object"!=typeof t)throw new Error("Invalid headers.");return t},e}(),l="5.0.0-dev"}]); \ No newline at end of file +*/var r=Object.getOwnPropertySymbols,o=Object.prototype.hasOwnProperty,i=Object.prototype.propertyIsEnumerable;function a(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(e,t){for(var n,s,c=a(e),u=1;u0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n},e.prototype.concat=function(e){if(0===this.length)return r.alloc(0);if(1===this.length)return this.head.data;for(var t,n,o,i=r.allocUnsafe(e>>>0),a=this.head,s=0;a;)t=a.data,n=i,o=s,t.copy(n,o),s+=a.data.length,a=a.next;return i},e}(),o&&o.inspect&&o.inspect.custom&&(e.exports.prototype[o.inspect.custom]=function(){var e=o.inspect({length:this.length});return this.constructor.name+" "+e})},function(e,t){},function(e,t,n){var r=n(11),o=r.Buffer;function i(e,t){for(var n in e)t[n]=e[n]}function a(e,t,n){return o(e,t,n)}o.from&&o.alloc&&o.allocUnsafe&&o.allocUnsafeSlow?e.exports=r:(i(r,t),t.Buffer=a),a.prototype=Object.create(o.prototype),i(o,a),a.from=function(e,t,n){if("number"==typeof e)throw new TypeError("Argument must not be a number");return o(e,t,n)},a.alloc=function(e,t,n){if("number"!=typeof e)throw new TypeError("Argument must be a number");var r=o(e);return void 0!==t?"string"==typeof n?r.fill(t,n):r.fill(t):r.fill(0),r},a.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return o(e)},a.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return r.SlowBuffer(e)}},function(e,t,n){(function(e){var r=void 0!==e&&e||"undefined"!=typeof self&&self||window,o=Function.prototype.apply;function i(e,t){this._id=e,this._clearFn=t}t.setTimeout=function(){return new i(o.call(setTimeout,r,arguments),clearTimeout)},t.setInterval=function(){return new i(o.call(setInterval,r,arguments),clearInterval)},t.clearTimeout=t.clearInterval=function(e){e&&e.close()},i.prototype.unref=i.prototype.ref=function(){},i.prototype.close=function(){this._clearFn.call(r,this._id)},t.enroll=function(e,t){clearTimeout(e._idleTimeoutId),e._idleTimeout=t},t.unenroll=function(e){clearTimeout(e._idleTimeoutId),e._idleTimeout=-1},t._unrefActive=t.active=function(e){clearTimeout(e._idleTimeoutId);var t=e._idleTimeout;t>=0&&(e._idleTimeoutId=setTimeout((function(){e._onTimeout&&e._onTimeout()}),t))},n(65),t.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==e&&e.setImmediate||this&&this.setImmediate,t.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==e&&e.clearImmediate||this&&this.clearImmediate}).call(this,n(9))},function(e,t,n){(function(e,t){!function(e,n){"use strict";if(!e.setImmediate){var r,o,i,a,s,c=1,u={},l=!1,f=e.document,h=Object.getPrototypeOf&&Object.getPrototypeOf(e);h=h&&h.setTimeout?h:e,"[object process]"==={}.toString.call(e.process)?r=function(e){t.nextTick((function(){d(e)}))}:!function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=n,t}}()?e.MessageChannel?((i=new MessageChannel).port1.onmessage=function(e){d(e.data)},r=function(e){i.port2.postMessage(e)}):f&&"onreadystatechange"in f.createElement("script")?(o=f.documentElement,r=function(e){var t=f.createElement("script");t.onreadystatechange=function(){d(e),t.onreadystatechange=null,o.removeChild(t),t=null},o.appendChild(t)}):r=function(e){setTimeout(d,0,e)}:(a="setImmediate$"+Math.random()+"$",s=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(a)&&d(+t.data.slice(a.length))},e.addEventListener?e.addEventListener("message",s,!1):e.attachEvent("onmessage",s),r=function(t){e.postMessage(a+t,"*")}),h.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),n=0;n0?this._transform(null,t,n):n()},e.exports.decoder=c,e.exports.encoder=s},function(e,t,n){(t=e.exports=n(35)).Stream=t,t.Readable=t,t.Writable=n(40),t.Duplex=n(10),t.Transform=n(41),t.PassThrough=n(69)},function(e,t,n){"use strict";e.exports=i;var r=n(41),o=n(20);function i(e){if(!(this instanceof i))return new i(e);r.call(this,e)}o.inherits=n(16),o.inherits(i,r),i.prototype._transform=function(e,t,n){n(null,e)}},function(e,t,n){var r=n(21);function o(e){Error.call(this),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name,this.message=e||"unable to decode"}n(34).inherits(o,Error),e.exports=function(e){return function(e){e instanceof r||(e=r().append(e));var t=i(e);if(t)return e.consume(t.bytesConsumed),t.value;throw new o};function t(e,t,n){return t>=n+e}function n(e,t){return{value:e,bytesConsumed:t}}function i(e,r){r=void 0===r?0:r;var o=e.length-r;if(o<=0)return null;var i,l,f,h=e.readUInt8(r),p=0;if(!function(e,t){var n=function(e){switch(e){case 196:return 2;case 197:return 3;case 198:return 5;case 199:return 3;case 200:return 4;case 201:return 6;case 202:return 5;case 203:return 9;case 204:return 2;case 205:return 3;case 206:return 5;case 207:return 9;case 208:return 2;case 209:return 3;case 210:return 5;case 211:return 9;case 212:return 3;case 213:return 4;case 214:return 6;case 215:return 10;case 216:return 18;case 217:return 2;case 218:return 3;case 219:return 5;case 222:return 3;default:return-1}}(e);return!(-1!==n&&t=0;f--)p+=e.readUInt8(r+f+1)*Math.pow(2,8*(7-f));return n(p,9);case 208:return n(p=e.readInt8(r+1),2);case 209:return n(p=e.readInt16BE(r+1),3);case 210:return n(p=e.readInt32BE(r+1),5);case 211:return n(p=function(e,t){var n=128==(128&e[t]);if(n)for(var r=1,o=t+7;o>=t;o--){var i=(255^e[o])+r;e[o]=255&i,r=i>>8}var a=e.readUInt32BE(t+0),s=e.readUInt32BE(t+4);return(4294967296*a+s)*(n?-1:1)}(e.slice(r+1,r+9),0),9);case 202:return n(p=e.readFloatBE(r+1),5);case 203:return n(p=e.readDoubleBE(r+1),9);case 217:return t(i=e.readUInt8(r+1),o,2)?n(p=e.toString("utf8",r+2,r+2+i),2+i):null;case 218:return t(i=e.readUInt16BE(r+1),o,3)?n(p=e.toString("utf8",r+3,r+3+i),3+i):null;case 219:return t(i=e.readUInt32BE(r+1),o,5)?n(p=e.toString("utf8",r+5,r+5+i),5+i):null;case 196:return t(i=e.readUInt8(r+1),o,2)?n(p=e.slice(r+2,r+2+i),2+i):null;case 197:return t(i=e.readUInt16BE(r+1),o,3)?n(p=e.slice(r+3,r+3+i),3+i):null;case 198:return t(i=e.readUInt32BE(r+1),o,5)?n(p=e.slice(r+5,r+5+i),5+i):null;case 220:return o<3?null:(i=e.readUInt16BE(r+1),a(e,r,i,3));case 221:return o<5?null:(i=e.readUInt32BE(r+1),a(e,r,i,5));case 222:return i=e.readUInt16BE(r+1),s(e,r,i,3);case 223:throw new Error("map too big to decode in JS");case 212:return c(e,r,1);case 213:return c(e,r,2);case 214:return c(e,r,4);case 215:return c(e,r,8);case 216:return c(e,r,16);case 199:return i=e.readUInt8(r+1),l=e.readUInt8(r+2),t(i,o,3)?u(e,r,l,i,3):null;case 200:return i=e.readUInt16BE(r+1),l=e.readUInt8(r+3),t(i,o,4)?u(e,r,l,i,4):null;case 201:return i=e.readUInt32BE(r+1),l=e.readUInt8(r+5),t(i,o,6)?u(e,r,l,i,6):null}if(144==(240&h))return a(e,r,i=15&h,1);if(128==(240&h))return s(e,r,i=15&h,1);if(160==(224&h))return t(i=31&h,o,1)?n(p=e.toString("utf8",r+1,r+i+1),i+1):null;if(h>=224)return n(p=h-256,1);if(h<128)return n(h,1);throw new Error("not implemented yet")}function a(e,t,r,o){var a,s=[],c=0;for(t+=o,a=0;a.1)&&((n=r.allocUnsafe(9))[0]=203,n.writeDoubleBE(e,1)),n}e.exports=function(e,t,n,a){function s(c,u){var l,f,h;if(void 0===c)throw new Error("undefined is not encodable in msgpack!");if(null===c)(l=r.allocUnsafe(1))[0]=192;else if(!0===c)(l=r.allocUnsafe(1))[0]=195;else if(!1===c)(l=r.allocUnsafe(1))[0]=194;else if("string"==typeof c)(f=r.byteLength(c))<32?((l=r.allocUnsafe(1+f))[0]=160|f,f>0&&l.write(c,1)):f<=255&&!n?((l=r.allocUnsafe(2+f))[0]=217,l[1]=f,l.write(c,2)):f<=65535?((l=r.allocUnsafe(3+f))[0]=218,l.writeUInt16BE(f,1),l.write(c,3)):((l=r.allocUnsafe(5+f))[0]=219,l.writeUInt32BE(f,1),l.write(c,5));else if(c&&(c.readUInt32LE||c instanceof Uint8Array))c instanceof Uint8Array&&(c=r.from(c)),c.length<=255?((l=r.allocUnsafe(2))[0]=196,l[1]=c.length):c.length<=65535?((l=r.allocUnsafe(3))[0]=197,l.writeUInt16BE(c.length,1)):((l=r.allocUnsafe(5))[0]=198,l.writeUInt32BE(c.length,1)),l=o([l,c]);else if(Array.isArray(c))c.length<16?(l=r.allocUnsafe(1))[0]=144|c.length:c.length<65536?((l=r.allocUnsafe(3))[0]=220,l.writeUInt16BE(c.length,1)):((l=r.allocUnsafe(5))[0]=221,l.writeUInt32BE(c.length,1)),l=c.reduce((function(e,t){return e.append(s(t,!0)),e}),o().append(l));else{if(!a&&"function"==typeof c.getDate)return function(e){var t,n=1*e,i=Math.floor(n/1e3),a=1e6*(n-1e3*i);if(a||i>4294967295){(t=new r(10))[0]=215,t[1]=-1;var s=4*a,c=i/Math.pow(2,32),u=s+c&4294967295,l=4294967295&i;t.writeInt32BE(u,2),t.writeInt32BE(l,6)}else(t=new r(6))[0]=214,t[1]=-1,t.writeUInt32BE(Math.floor(n/1e3),2);return o().append(t)}(c);if("object"==typeof c)l=function(t){var n,i,a,s=[];for(n=0;n>8),s.push(255&a)):(s.push(201),s.push(a>>24),s.push(a>>16&255),s.push(a>>8&255),s.push(255&a));return o().append(r.from(s)).append(i)}(c)||function(e){var t,n,i=[],a=0;for(t in e)e.hasOwnProperty(t)&&void 0!==e[t]&&"function"!=typeof e[t]&&(++a,i.push(s(t,!0)),i.push(s(e[t],!0)));a<16?(n=r.allocUnsafe(1))[0]=128|a:((n=r.allocUnsafe(3))[0]=222,n.writeUInt16BE(a,1));return i.unshift(n),i.reduce((function(e,t){return e.append(t)}),o())}(c);else if("number"==typeof c){if((h=c)!==Math.floor(h))return i(c,t);if(c>=0)if(c<128)(l=r.allocUnsafe(1))[0]=c;else if(c<256)(l=r.allocUnsafe(2))[0]=204,l[1]=c;else if(c<65536)(l=r.allocUnsafe(3))[0]=205,l.writeUInt16BE(c,1);else if(c<=4294967295)(l=r.allocUnsafe(5))[0]=206,l.writeUInt32BE(c,1);else{if(!(c<=9007199254740991))return i(c,!0);(l=r.allocUnsafe(9))[0]=207,function(e,t){for(var n=7;n>=0;n--)e[n+1]=255&t,t/=256}(l,c)}else if(c>=-32)(l=r.allocUnsafe(1))[0]=256+c;else if(c>=-128)(l=r.allocUnsafe(2))[0]=208,l.writeInt8(c,1);else if(c>=-32768)(l=r.allocUnsafe(3))[0]=209,l.writeInt16BE(c,1);else if(c>-214748365)(l=r.allocUnsafe(5))[0]=210,l.writeInt32BE(c,1);else{if(!(c>=-9007199254740991))return i(c,!0);(l=r.allocUnsafe(9))[0]=211,function(e,t,n){var r=n<0;r&&(n=Math.abs(n));var o=n%4294967296,i=n/4294967296;if(e.writeUInt32BE(Math.floor(i),t+0),e.writeUInt32BE(o,t+4),r)for(var a=1,s=t+7;s>=t;s--){var c=(255^e[s])+a;e[s]=255&c,a=c>>8}}(l,1,c)}}}if(!l)throw new Error("not implemented yet");return u?l:l.slice()}return s}},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{c(r.next(e))}catch(e){i(e)}}function s(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}c((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]this.nextBatchId?this.fatalError?(this.logger.log(s.LogLevel.Debug,"Received a new batch "+e+" but errored out on a previous batch "+(this.nextBatchId-1)),[4,n.send("OnRenderCompleted",this.nextBatchId-1,this.fatalError.toString())]):[3,4]:[3,5];case 3:return o.sent(),[2];case 4:return this.logger.log(s.LogLevel.Debug,"Waiting for batch "+this.nextBatchId+". Batch "+e+" not processed."),[2];case 5:return o.trys.push([5,7,,8]),this.nextBatchId++,this.logger.log(s.LogLevel.Debug,"Applying batch "+e+"."),i.renderBatch(this.browserRendererId,new a.OutOfProcessRenderBatch(t)),[4,this.completeBatch(n,e)];case 6:return o.sent(),[3,8];case 7:throw r=o.sent(),this.fatalError=r.toString(),this.logger.log(s.LogLevel.Error,"There was an error applying batch "+e+"."),n.send("OnRenderCompleted",e,r.toString()),r;case 8:return[2]}}))}))},e.prototype.getLastBatchid=function(){return this.nextBatchId-1},e.prototype.completeBatch=function(e,t){return r(this,void 0,void 0,(function(){return o(this,(function(n){switch(n.label){case 0:return n.trys.push([0,2,,3]),[4,e.send("OnRenderCompleted",t,null)];case 1:return n.sent(),[3,3];case 2:return n.sent(),this.logger.log(s.LogLevel.Warning,"Failed to deliver completion notification for render '"+t+"'."),[3,3];case 3:return[2]}}))}))},e}();t.RenderQueue=c},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(74),o=n(75),i=function(){function e(e){this.batchData=e;var t=new u(e);this.arrayRangeReader=new l(e),this.arrayBuilderSegmentReader=new f(e),this.diffReader=new a(e),this.editReader=new s(e,t),this.frameReader=new c(e,t)}return e.prototype.updatedComponents=function(){return o.readInt32LE(this.batchData,this.batchData.length-20)},e.prototype.referenceFrames=function(){return o.readInt32LE(this.batchData,this.batchData.length-16)},e.prototype.disposedComponentIds=function(){return o.readInt32LE(this.batchData,this.batchData.length-12)},e.prototype.disposedEventHandlerIds=function(){return o.readInt32LE(this.batchData,this.batchData.length-8)},e.prototype.updatedComponentsEntry=function(e,t){var n=e+4*t;return o.readInt32LE(this.batchData,n)},e.prototype.referenceFramesEntry=function(e,t){return e+20*t},e.prototype.disposedComponentIdsEntry=function(e,t){var n=e+4*t;return o.readInt32LE(this.batchData,n)},e.prototype.disposedEventHandlerIdsEntry=function(e,t){var n=e+8*t;return o.readUint64LE(this.batchData,n)},e}();t.OutOfProcessRenderBatch=i;var a=function(){function e(e){this.batchDataUint8=e}return e.prototype.componentId=function(e){return o.readInt32LE(this.batchDataUint8,e)},e.prototype.edits=function(e){return e+4},e.prototype.editsEntry=function(e,t){return e+16*t},e}(),s=function(){function e(e,t){this.batchDataUint8=e,this.stringReader=t}return e.prototype.editType=function(e){return o.readInt32LE(this.batchDataUint8,e)},e.prototype.siblingIndex=function(e){return o.readInt32LE(this.batchDataUint8,e+4)},e.prototype.newTreeIndex=function(e){return o.readInt32LE(this.batchDataUint8,e+8)},e.prototype.moveToSiblingIndex=function(e){return o.readInt32LE(this.batchDataUint8,e+8)},e.prototype.removedAttributeName=function(e){var t=o.readInt32LE(this.batchDataUint8,e+12);return this.stringReader.readString(t)},e}(),c=function(){function e(e,t){this.batchDataUint8=e,this.stringReader=t}return e.prototype.frameType=function(e){return o.readInt32LE(this.batchDataUint8,e)},e.prototype.subtreeLength=function(e){return o.readInt32LE(this.batchDataUint8,e+4)},e.prototype.elementReferenceCaptureId=function(e){var t=o.readInt32LE(this.batchDataUint8,e+4);return this.stringReader.readString(t)},e.prototype.componentId=function(e){return o.readInt32LE(this.batchDataUint8,e+8)},e.prototype.elementName=function(e){var t=o.readInt32LE(this.batchDataUint8,e+8);return this.stringReader.readString(t)},e.prototype.textContent=function(e){var t=o.readInt32LE(this.batchDataUint8,e+4);return this.stringReader.readString(t)},e.prototype.markupContent=function(e){var t=o.readInt32LE(this.batchDataUint8,e+4);return this.stringReader.readString(t)},e.prototype.attributeName=function(e){var t=o.readInt32LE(this.batchDataUint8,e+4);return this.stringReader.readString(t)},e.prototype.attributeValue=function(e){var t=o.readInt32LE(this.batchDataUint8,e+8);return this.stringReader.readString(t)},e.prototype.attributeEventHandlerId=function(e){return o.readUint64LE(this.batchDataUint8,e+12)},e}(),u=function(){function e(e){this.batchDataUint8=e,this.stringTableStartIndex=o.readInt32LE(e,e.length-4)}return e.prototype.readString=function(e){if(-1===e)return null;var t=o.readInt32LE(this.batchDataUint8,this.stringTableStartIndex+4*e),n=o.readLEB128(this.batchDataUint8,t),i=t+o.numLEB128Bytes(n),a=new Uint8Array(this.batchDataUint8.buffer,this.batchDataUint8.byteOffset+i,n);return r.decodeUtf8(a)},e}(),l=function(){function e(e){this.batchDataUint8=e}return e.prototype.count=function(e){return o.readInt32LE(this.batchDataUint8,e)},e.prototype.values=function(e){return e+4},e}(),f=function(){function e(e){this.batchDataUint8=e}return e.prototype.offset=function(e){return 0},e.prototype.count=function(e){return o.readInt32LE(this.batchDataUint8,e)},e.prototype.values=function(e){return e+4},e}()},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r="function"==typeof TextDecoder?new TextDecoder("utf-8"):null;t.decodeUtf8=r?r.decode.bind(r):function(e){var t=0,n=e.length,r=[],o=[];for(;t65535&&(u-=65536,r.push(u>>>10&1023|55296),u=56320|1023&u),r.push(u)}r.length>1024&&(o.push(String.fromCharCode.apply(null,r)),r.length=0)}return o.push(String.fromCharCode.apply(null,r)),o.join("")}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Math.pow(2,32),o=Math.pow(2,21)-1;function i(e,t){return e[t]+(e[t+1]<<8)+(e[t+2]<<16)+(e[t+3]<<24>>>0)}t.readInt32LE=function(e,t){return e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24},t.readUint32LE=i,t.readUint64LE=function(e,t){var n=i(e,t+4);if(n>o)throw new Error("Cannot read uint64 with high order part "+n+", because the result would exceed Number.MAX_SAFE_INTEGER.");return n*r+i(e,t)},t.readLEB128=function(e,t){for(var n=0,r=0,o=0;o<4;o++){var i=e[t+o];if(n|=(127&i)<=this.minimumLogLevel)switch(e){case r.LogLevel.Critical:case r.LogLevel.Error:console.error("["+(new Date).toISOString()+"] "+r.LogLevel[e]+": "+t);break;case r.LogLevel.Warning:console.warn("["+(new Date).toISOString()+"] "+r.LogLevel[e]+": "+t);break;case r.LogLevel.Information:console.info("["+(new Date).toISOString()+"] "+r.LogLevel[e]+": "+t);break;default:console.log("["+(new Date).toISOString()+"] "+r.LogLevel[e]+": "+t)}},e}();t.ConsoleLogger=i},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{c(r.next(e))}catch(e){i(e)}}function s(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}c((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]reloading the page if you're unable to reconnect.",this.message.querySelector("a").addEventListener("click",(function(){return location.reload()}))},e.prototype.rejected=function(){this.button.style.display="none",this.reloadParagraph.style.display="none",this.message.innerHTML="Could not reconnect to the server. Reload the page to restore functionality.",this.message.querySelector("a").addEventListener("click",(function(){return location.reload()}))},e}();t.DefaultReconnectDisplay=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(e){this.dialog=e}return e.prototype.show=function(){this.removeClasses(),this.dialog.classList.add(e.ShowClassName)},e.prototype.hide=function(){this.removeClasses(),this.dialog.classList.add(e.HideClassName)},e.prototype.failed=function(){this.removeClasses(),this.dialog.classList.add(e.FailedClassName)},e.prototype.rejected=function(){this.removeClasses(),this.dialog.classList.add(e.RejectedClassName)},e.prototype.removeClasses=function(){this.dialog.classList.remove(e.ShowClassName,e.HideClassName,e.FailedClassName,e.RejectedClassName)},e.ShowClassName="components-reconnect-show",e.HideClassName="components-reconnect-hide",e.FailedClassName="components-reconnect-failed",e.RejectedClassName="components-reconnect-rejected",e}();t.UserSpecifiedDisplay=r},function(e,t,n){"use strict";n.r(t),n.d(t,"VERSION",(function(){return l})),n.d(t,"MessagePackHubProtocol",(function(){return u}));var r=n(11),o=n(12),i=n(2),a=function(){function e(){}return e.write=function(e){var t=e.byteLength||e.length,n=[];do{var r=127&t;(t>>=7)>0&&(r|=128),n.push(r)}while(t>0);t=e.byteLength||e.length;var o=new Uint8Array(n.length+t);return o.set(n,0),o.set(e,n.length),o.buffer},e.parse=function(e){for(var t=[],n=new Uint8Array(e),r=[0,7,14,21,28],o=0;o7)throw new Error("Messages bigger than 2GB are not supported.");if(!(n.byteLength>=o+i+a))throw new Error("Incomplete message.");t.push(n.slice?n.slice(o+i,o+i+a):n.subarray(o+i,o+i+a)),o=o+i+a}return t},e}();var s=Object.assign||function(e){for(var t,n=1,r=arguments.length;n=3?e[2]:void 0,error:e[1],type:i.MessageType.Close}},e.prototype.createPingMessage=function(e){if(e.length<1)throw new Error("Invalid payload for Ping message.");return{type:i.MessageType.Ping}},e.prototype.createInvocationMessage=function(e,t){if(t.length<5)throw new Error("Invalid payload for Invocation message.");var n=t[2];return n?{arguments:t[4],headers:e,invocationId:n,streamIds:[],target:t[3],type:i.MessageType.Invocation}:{arguments:t[4],headers:e,streamIds:[],target:t[3],type:i.MessageType.Invocation}},e.prototype.createStreamItemMessage=function(e,t){if(t.length<4)throw new Error("Invalid payload for StreamItem message.");return{headers:e,invocationId:t[2],item:t[3],type:i.MessageType.StreamItem}},e.prototype.createCompletionMessage=function(e,t){if(t.length<4)throw new Error("Invalid payload for Completion message.");var n,r,o=t[3];if(o!==this.voidResult&&t.length<5)throw new Error("Invalid payload for Completion message.");switch(o){case this.errorResult:n=t[4];break;case this.nonVoidResult:r=t[4]}return{error:n,headers:e,invocationId:t[2],result:r,type:i.MessageType.Completion}},e.prototype.writeInvocation=function(e){var t,n=o(this.messagePackOptions);return t=e.streamIds?n.encode([i.MessageType.Invocation,e.headers||{},e.invocationId||null,e.target,e.arguments,e.streamIds]):n.encode([i.MessageType.Invocation,e.headers||{},e.invocationId||null,e.target,e.arguments]),a.write(t.slice())},e.prototype.writeStreamInvocation=function(e){var t,n=o(this.messagePackOptions);return t=e.streamIds?n.encode([i.MessageType.StreamInvocation,e.headers||{},e.invocationId,e.target,e.arguments,e.streamIds]):n.encode([i.MessageType.StreamInvocation,e.headers||{},e.invocationId,e.target,e.arguments]),a.write(t.slice())},e.prototype.writeStreamItem=function(e){var t=o(this.messagePackOptions).encode([i.MessageType.StreamItem,e.headers||{},e.invocationId,e.item]);return a.write(t.slice())},e.prototype.writeCompletion=function(e){var t,n=o(this.messagePackOptions),r=e.error?this.errorResult:e.result?this.nonVoidResult:this.voidResult;switch(r){case this.errorResult:t=n.encode([i.MessageType.Completion,e.headers||{},e.invocationId,r,e.error]);break;case this.voidResult:t=n.encode([i.MessageType.Completion,e.headers||{},e.invocationId,r]);break;case this.nonVoidResult:t=n.encode([i.MessageType.Completion,e.headers||{},e.invocationId,r,e.result])}return a.write(t.slice())},e.prototype.writeCancelInvocation=function(e){var t=o(this.messagePackOptions).encode([i.MessageType.CancelInvocation,e.headers||{},e.invocationId]);return a.write(t.slice())},e.prototype.readHeaders=function(e){var t=e[1];if("object"!=typeof t)throw new Error("Invalid headers.");return t},e}(),l="0.0.0-DEV_BUILD"}]); \ No newline at end of file diff --git a/src/Components/Web.JS/dist/Release/blazor.webassembly.js b/src/Components/Web.JS/dist/Release/blazor.webassembly.js index cb80bf059e18..6d86abf0d89b 100644 --- a/src/Components/Web.JS/dist/Release/blazor.webassembly.js +++ b/src/Components/Web.JS/dist/Release/blazor.webassembly.js @@ -1 +1 @@ -!function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=45)}([,,,function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){window.DotNet=e;var t=[],n={},r={},o=1,i=null;function a(e){t.push(e)}function s(e,t,n,r){var o=l();if(o.invokeDotNetFromJS){var i=JSON.stringify(r,m),a=o.invokeDotNetFromJS(e,t,n,i);return a?f(a):null}throw new Error("The current dispatcher does not support synchronous calls from JS to .NET. Use invokeMethodAsync instead.")}function u(e,t,r,i){if(e&&r)throw new Error("For instance method calls, assemblyName should be null. Received '"+e+"'.");var a=o++,s=new Promise((function(e,t){n[a]={resolve:e,reject:t}}));try{var u=JSON.stringify(i,m);l().beginInvokeDotNetFromJS(a,e,t,r,u)}catch(e){c(a,!1,e)}return s}function l(){if(null!==i)return i;throw new Error("No .NET call dispatcher has been set.")}function c(e,t,r){if(!n.hasOwnProperty(e))throw new Error("There is no pending async call with ID "+e+".");var o=n[e];delete n[e],t?o.resolve(r):o.reject(r)}function f(e){return e?JSON.parse(e,(function(e,n){return t.reduce((function(t,n){return n(e,t)}),n)})):null}function d(e){return e instanceof Error?e.message+"\n"+e.stack:e?e.toString():"null"}function p(e){if(Object.prototype.hasOwnProperty.call(r,e))return r[e];var t,n=window,o="window";if(e.split(".").forEach((function(e){if(!(e in n))throw new Error("Could not find '"+e+"' in '"+o+"'.");t=n,n=n[e],o+="."+e})),n instanceof Function)return n=n.bind(t),r[e]=n,n;throw new Error("The value '"+o+"' is not a function.")}e.attachDispatcher=function(e){i=e},e.attachReviver=a,e.invokeMethod=function(e,t){for(var n=[],r=2;r0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&!t)throw new Error("New logical elements must start empty, or allowExistingContents must be true");return r in e||(e[r]=[]),e}function s(e,t,n){var i=e;if(e instanceof Comment&&(l(i)&&l(i).length>0))throw new Error("Not implemented: inserting non-empty logical container");if(u(i))throw new Error("Not implemented: moving existing logical children");var a=l(t);if(n0;)e(r,0)}var i=r;i.parentNode.removeChild(i)},t.getLogicalParent=u,t.getLogicalSiblingEnd=function(e){return e[i]||null},t.getLogicalChild=function(e,t){return l(e)[t]},t.isSvgElement=function(e){return"http://www.w3.org/2000/svg"===c(e).namespaceURI},t.getLogicalChildrenArray=l,t.permuteLogicalChildren=function(e,t){var n=l(e);t.forEach((function(e){e.moveRangeStart=n[e.fromSiblingIndex],e.moveRangeEnd=function e(t){if(t instanceof Element)return t;var n=f(t);if(n)return n.previousSibling;var r=u(t);return r instanceof Element?r.lastChild:e(r)}(e.moveRangeStart)})),t.forEach((function(t){var r=t.moveToBeforeMarker=document.createComment("marker"),o=n[t.toSiblingIndex+1];o?o.parentNode.insertBefore(r,o):d(r,e)})),t.forEach((function(e){for(var t=e.moveToBeforeMarker,n=t.parentNode,r=e.moveRangeStart,o=e.moveRangeEnd,i=r;i;){var a=i.nextSibling;if(n.insertBefore(i,t),i===o)break;i=a}n.removeChild(t)})),t.forEach((function(e){n[e.toSiblingIndex]=e.moveRangeStart}))},t.getClosestDomElement=c},,,,,function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.setPlatform=function(e){return t.platform=e,t.platform}},function(e,t,n){"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.dispatchEvent=function(e,t){if(!r)throw new Error("eventDispatcher not initialized. Call 'setEventDispatcher' to configure it.");r(e,t)},t.setEventDispatcher=function(e){r=e}},,,,function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(8),o=n(4),i=n(31),a=n(5);window.Blazor={navigateTo:r.navigateTo,_internal:{attachRootComponentToElement:o.attachRootComponentToElement,navigationManager:r.internalFunctions,domWrapper:i.domFunctions,setProfilingEnabled:a.setProfilingEnabled}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(26),o=n(27),i=n(13),a=n(30),s=n(19),u=n(8),l=n(5),c=document.createElement("template"),f=document.createElementNS("http://www.w3.org/2000/svg","g"),d={submit:!0},p={},h=function(){function e(e){var t=this;this.childComponentLocations={},this.browserRendererId=e,this.eventDelegator=new o.EventDelegator((function(e,n,r,o){!function(e,t,n,r,o){d[e.type]&&e.preventDefault();var i={browserRendererId:t,eventHandlerId:n,eventArgsType:r.type,eventFieldInfo:o};s.dispatchEvent(i,r.data)}(e,t.browserRendererId,n,r,o)})),u.attachToEventDelegator(this.eventDelegator)}return e.prototype.attachRootComponentToLogicalElement=function(e,t){this.attachComponentToElement(e,t),p[e]=t},e.prototype.updateComponent=function(e,t,n,r){l.profileStart("updateComponent");var o=this.childComponentLocations[t];if(!o)throw new Error("No element is currently associated with component "+t);var a=p[t];if(a){var s=i.getLogicalSiblingEnd(a);delete p[t],s?function(e,t){var n=i.getLogicalParent(e);if(!n)throw new Error("Can't clear between nodes. The start node does not have a logical parent.");for(var r=i.getLogicalChildrenArray(n),o=r.indexOf(e)+1,a=r.indexOf(t),s=o;s<=a;s++)i.removeLogicalChild(n,o);e.textContent="!"}(a,s):function(e){var t;for(;t=e.firstChild;)e.removeChild(t)}(a)}var u=i.getClosestDomElement(o).ownerDocument,c=u&&u.activeElement;this.applyEdits(e,t,o,0,n,r),c instanceof HTMLElement&&u&&u.activeElement!==c&&c.focus(),l.profileEnd("updateComponent")},e.prototype.disposeComponent=function(e){delete this.childComponentLocations[e]},e.prototype.disposeEventHandler=function(e){this.eventDelegator.removeListener(e)},e.prototype.attachComponentToElement=function(e,t){this.childComponentLocations[e]=t},e.prototype.applyEdits=function(e,t,n,o,a,s){for(var u,l=0,c=o,f=e.arrayBuilderSegmentReader,d=e.editReader,p=e.frameReader,h=f.values(a),m=f.offset(a),y=m+f.count(a),v=m;v0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]>>0)}t.readInt32LE=function(e,t){return e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24},t.readUint32LE=i,t.readUint64LE=function(e,t){var n=i(e,t+4);if(n>o)throw new Error("Cannot read uint64 with high order part "+n+", because the result would exceed Number.MAX_SAFE_INTEGER.");return n*r+i(e,t)},t.readLEB128=function(e,t){for(var n=0,r=0,o=0;o<4;o++){var i=e[t+o];if(n|=(127&i)<65535&&(l-=65536,r.push(l>>>10&1023|55296),l=56320|1023&l),r.push(l)}r.length>1024&&(o.push(String.fromCharCode.apply(null,r)),r.length=0)}return o.push(String.fromCharCode.apply(null,r)),o.join("")}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.shouldAutoStart=function(){return!(!document||!document.currentScript||"false"===document.currentScript.getAttribute("autostart"))}},,,,,,,,,,function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{u(r.next(e))}catch(e){i(e)}}function s(e){try{u(r.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}u((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0)&&!(r=i.next()).done;)a.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return a};Object.defineProperty(t,"__esModule",{value:!0});var a=n(3);n(23);var s=n(18),u=n(46),l=n(4),c=n(49),f=n(35),d=n(19),p=n(50),h=n(51),m=n(52),y=n(5),v=!1;function b(e){return r(this,void 0,void 0,(function(){var t,n,f,b,g,w,E,_=this;return o(this,(function(C){switch(C.label){case 0:if(v)throw new Error("Blazor has already started.");return v=!0,d.setEventDispatcher((function(e,t){u.monoPlatform.invokeWhenHeapUnlocked((function(){return a.DotNet.invokeMethodAsync("Microsoft.AspNetCore.Components.WebAssembly","DispatchEvent",e,JSON.stringify(t))}))})),t=s.setPlatform(u.monoPlatform),window.Blazor.platform=t,window.Blazor._internal.renderBatch=function(e,t){y.profileStart("renderBatch");var n=u.monoPlatform.beginHeapLock();try{l.renderBatch(e,new c.SharedMemoryRenderBatch(t))}finally{n.release()}y.profileEnd("renderBatch")},n=window.Blazor._internal.navigationManager.getBaseURI,f=window.Blazor._internal.navigationManager.getLocationHref,window.Blazor._internal.navigationManager.getUnmarshalledBaseURI=function(){return BINDING.js_string_to_mono_string(n())},window.Blazor._internal.navigationManager.getUnmarshalledLocationHref=function(){return BINDING.js_string_to_mono_string(f())},window.Blazor._internal.navigationManager.listenForNavigationEvents((function(e,t){return r(_,void 0,void 0,(function(){return o(this,(function(n){switch(n.label){case 0:return[4,a.DotNet.invokeMethodAsync("Microsoft.AspNetCore.Components.WebAssembly","NotifyLocationChanged",e,t)];case 1:return n.sent(),[2]}}))}))})),[4,m.BootConfigResult.initAsync()];case 1:return b=C.sent(),[4,Promise.all([p.WebAssemblyResourceLoader.initAsync(b.bootConfig,e||{}),h.WebAssemblyConfigLoader.initAsync(b)])];case 2:g=i.apply(void 0,[C.sent(),1]),w=g[0],C.label=3;case 3:return C.trys.push([3,5,,6]),[4,t.start(w)];case 4:return C.sent(),[3,6];case 5:throw E=C.sent(),new Error("Failed to start platform. Reason: "+E);case 6:return t.callEntryPoint(w.bootConfig.entryAssembly),[2]}}))}))}window.Blazor.start=b,f.shouldAutoStart()&&b().catch((function(e){"undefined"!=typeof Module&&Module.printErr?Module.printErr(e):console.error(e)}))},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{u(r.next(e))}catch(e){i(e)}}function s(e){try{u(r.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}u((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]>2]}t.monoPlatform={start:function(e){return new Promise((function(t,n){var f,d;s.attachDebuggerHotkey(e),c.initializeProfiling((function(e){v("Microsoft.AspNetCore.Components","Microsoft.AspNetCore.Components.Profiling.WebAssemblyComponentsProfiling","SetCapturing")(e)})),window.Browser={init:function(){}},f=function(){window.Module=function(e,t,n){var c=this,f=e.bootConfig.resources,d=window.Module||{},p=["DEBUGGING ENABLED"];d.print=function(e){return p.indexOf(e)<0&&console.log(e)},d.printErr=function(e){console.error(e),u.showErrorNotification()},d.preRun=d.preRun||[],d.postRun=d.postRun||[],d.preloadPlugins=[];var h,y=e.loadResources(f.assembly,(function(e){return"_framework/"+e}),"assembly"),w=e.loadResources(f.pdb||{},(function(e){return"_framework/"+e}),"pdb"),E=e.loadResource("dotnet.wasm","_framework/dotnet.wasm",e.bootConfig.resources.runtime["dotnet.wasm"],"dotnetwasm");return e.bootConfig.resources.runtime.hasOwnProperty("dotnet.timezones.dat")&&(h=e.loadResource("dotnet.timezones.dat","_framework/dotnet.timezones.dat",e.bootConfig.resources.runtime["dotnet.timezones.dat"],"timezonedata")),d.instantiateWasm=function(e,t){return r(c,void 0,void 0,(function(){var n,r;return o(this,(function(o){switch(o.label){case 0:return o.trys.push([0,3,,4]),[4,E];case 1:return[4,b(o.sent(),e)];case 2:return n=o.sent(),[3,4];case 3:throw r=o.sent(),d.printErr(r),r;case 4:return t(n),[2]}}))})),[]},d.preRun.push((function(){i=cwrap("mono_wasm_add_assembly",null,["string","number","number"]),MONO.loaded_files=[],h&&function(e){r(this,void 0,void 0,(function(){var t,n;return o(this,(function(r){switch(r.label){case 0:return t="blazor:timezonedata",addRunDependency(t),[4,e.response];case 1:return[4,r.sent().arrayBuffer()];case 2:return n=r.sent(),l.loadTimezoneData(n),removeRunDependency(t),[2]}}))}))}(h),y.forEach((function(e){return _(e,function(e,t){var n=e.lastIndexOf(".");if(n<0)throw new Error("No extension to replace in '"+e+"'");return e.substr(0,n)+t}(e.name,".dll"))})),w.forEach((function(e){return _(e,e.name)})),window.Blazor._internal.dotNetCriticalError=function(e){d.printErr(BINDING.conv_string(e)||"(null)")},window.Blazor._internal.getSatelliteAssemblies=function(t){var n=BINDING.mono_array_to_js_array(t),i=e.bootConfig.resources.satelliteResources;if(i){var a=Promise.all(n.filter((function(e){return i.hasOwnProperty(e)})).map((function(t){return e.loadResources(i[t],(function(e){return"_framework/"+e}),"assembly")})).reduce((function(e,t){return e.concat(t)}),new Array).map((function(e){return r(c,void 0,void 0,(function(){return o(this,(function(t){switch(t.label){case 0:return[4,e.response];case 1:return[2,t.sent().arrayBuffer()]}}))}))})));return BINDING.js_to_mono_obj(a.then((function(e){return e.length&&(window.Blazor._internal.readSatelliteAssemblies=function(){for(var t=BINDING.mono_obj_array_new(e.length),n=0;n>1];var n},readInt32Field:function(e,t){return h(e+(t||0))},readUint64Field:function(e,t){return function(e){var t=e>>2,n=Module.HEAPU32[t+1];if(n>d)throw new Error("Cannot read uint64 with high order part "+n+", because the result would exceed Number.MAX_SAFE_INTEGER.");return n*f+Module.HEAPU32[t]}(e+(t||0))},readFloatField:function(e,t){return n=e+(t||0),Module.HEAPF32[n>>2];var n},readObjectField:function(e,t){return h(e+(t||0))},readStringField:function(e,t,n){var r,o=h(e+(t||0));if(0===o)return null;if(n){var i=BINDING.unbox_mono_obj(o);return"boolean"==typeof i?i?"":null:i}return p?void 0===(r=p.stringCache.get(o))&&(r=BINDING.conv_string(o),p.stringCache.set(o,r)):r=BINDING.conv_string(o),r},readStructField:function(e,t){return e+(t||0)},beginHeapLock:function(){return g(),p=new w},invokeWhenHeapUnlocked:function(e){p?p.enqueuePostReleaseAction(e):e()}};var m=document.createElement("a");function y(e){return e+12}function v(e,t,n){var r="["+e+"] "+t+":"+n;return BINDING.bind_static_method(r)}function b(e,t){return r(this,void 0,void 0,(function(){var n,r;return o(this,(function(o){switch(o.label){case 0:if("function"!=typeof WebAssembly.instantiateStreaming)return[3,4];o.label=1;case 1:return o.trys.push([1,3,,4]),[4,WebAssembly.instantiateStreaming(e.response,t)];case 2:return[2,o.sent().instance];case 3:return n=o.sent(),console.info("Streaming compilation failed. Falling back to ArrayBuffer instantiation. ",n),[3,4];case 4:return[4,e.response.then((function(e){return e.arrayBuffer()}))];case 5:return r=o.sent(),[4,WebAssembly.instantiate(r,t)];case 6:return[2,o.sent().instance]}}))}))}function g(){if(p)throw new Error("Assertion failed - heap is currently locked")}var w=function(){function e(){this.stringCache=new Map}return e.prototype.enqueuePostReleaseAction=function(e){this.postReleaseActions||(this.postReleaseActions=[]),this.postReleaseActions.push(e)},e.prototype.release=function(){var e;if(p!==this)throw new Error("Trying to release a lock which isn't current");for(p=null;null===(e=this.postReleaseActions)||void 0===e?void 0:e.length;){this.postReleaseActions.shift()(),g()}},e}()},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=window.chrome&&navigator.userAgent.indexOf("Edge")<0,o=!1;function i(){return o&&r}t.hasDebuggingEnabled=i,t.attachDebuggerHotkey=function(e){o=!!e.bootConfig.resources.pdb;var t=navigator.platform.match(/^Mac/i)?"Cmd":"Alt";i()&&console.info("Debugging hotkey: Shift+"+t+"+D (when application has focus)"),document.addEventListener("keydown",(function(e){var t;e.shiftKey&&(e.metaKey||e.altKey)&&"KeyD"===e.code&&(o?r?((t=document.createElement("a")).href="_framework/debug?url="+encodeURIComponent(location.href),t.target="_blank",t.rel="noopener noreferrer",t.click()):console.error("Currently, only Microsoft Edge (80+), or Google Chrome, are supported for debugging."):console.error("Cannot start debugging, because the application was not compiled with debugging enabled."))}))}},function(e,t,n){"use strict";var r=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,o,i=n.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(r=i.next()).done;)a.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return a};Object.defineProperty(t,"__esModule",{value:!0});var i=n(33),a=n(34);t.loadTimezoneData=function(e){var t,n,s=new Uint8Array(e),u=i.readInt32LE(s,0);s=s.slice(4);var l=a.decodeUtf8(s.slice(0,u)),c=JSON.parse(l);s=s.slice(u),Module.FS_createPath("/","zoneinfo",!0,!0),new Set(c.map((function(e){return e[0].split("/")[0]}))).forEach((function(e){return Module.FS_createPath("/zoneinfo",e,!0,!0)}));try{for(var f=r(c),d=f.next();!d.done;d=f.next()){var p=o(d.value,2),h=p[0],m=p[1],y=s.slice(0,m);Module.FS_createDataFile("/zoneinfo/"+h,null,y,!0,!0,!0),s=s.slice(m)}}catch(e){t={error:e}}finally{try{d&&!d.done&&(n=f.return)&&n.call(f)}finally{if(t)throw t.error}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(18),o=function(){function e(e){this.batchAddress=e,this.arrayRangeReader=i,this.arrayBuilderSegmentReader=a,this.diffReader=s,this.editReader=u,this.frameReader=l}return e.prototype.updatedComponents=function(){return r.platform.readStructField(this.batchAddress,0)},e.prototype.referenceFrames=function(){return r.platform.readStructField(this.batchAddress,i.structLength)},e.prototype.disposedComponentIds=function(){return r.platform.readStructField(this.batchAddress,2*i.structLength)},e.prototype.disposedEventHandlerIds=function(){return r.platform.readStructField(this.batchAddress,3*i.structLength)},e.prototype.updatedComponentsEntry=function(e,t){return c(e,t,s.structLength)},e.prototype.referenceFramesEntry=function(e,t){return c(e,t,l.structLength)},e.prototype.disposedComponentIdsEntry=function(e,t){var n=c(e,t,4);return r.platform.readInt32Field(n)},e.prototype.disposedEventHandlerIdsEntry=function(e,t){var n=c(e,t,8);return r.platform.readUint64Field(n)},e}();t.SharedMemoryRenderBatch=o;var i={structLength:8,values:function(e){return r.platform.readObjectField(e,0)},count:function(e){return r.platform.readInt32Field(e,4)}},a={structLength:12,values:function(e){var t=r.platform.readObjectField(e,0),n=r.platform.getObjectFieldsBaseAddress(t);return r.platform.readObjectField(n,0)},offset:function(e){return r.platform.readInt32Field(e,4)},count:function(e){return r.platform.readInt32Field(e,8)}},s={structLength:4+a.structLength,componentId:function(e){return r.platform.readInt32Field(e,0)},edits:function(e){return r.platform.readStructField(e,4)},editsEntry:function(e,t){return c(e,t,u.structLength)}},u={structLength:20,editType:function(e){return r.platform.readInt32Field(e,0)},siblingIndex:function(e){return r.platform.readInt32Field(e,4)},newTreeIndex:function(e){return r.platform.readInt32Field(e,8)},moveToSiblingIndex:function(e){return r.platform.readInt32Field(e,8)},removedAttributeName:function(e){return r.platform.readStringField(e,16)}},l={structLength:36,frameType:function(e){return r.platform.readInt16Field(e,4)},subtreeLength:function(e){return r.platform.readInt32Field(e,8)},elementReferenceCaptureId:function(e){return r.platform.readStringField(e,16)},componentId:function(e){return r.platform.readInt32Field(e,12)},elementName:function(e){return r.platform.readStringField(e,16)},textContent:function(e){return r.platform.readStringField(e,16)},markupContent:function(e){return r.platform.readStringField(e,16)},attributeName:function(e){return r.platform.readStringField(e,16)},attributeValue:function(e){return r.platform.readStringField(e,24,!0)},attributeEventHandlerId:function(e){return r.platform.readUint64Field(e,8)}};function c(e,t,n){return r.platform.getArrayEntryPtr(e,t,n)}},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{u(r.next(e))}catch(e){i(e)}}function s(e){try{u(r.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}u((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]0&&!t)throw new Error("New logical elements must start empty, or allowExistingContents must be true");return r in e||(e[r]=[]),e}function s(e,t,n){var a=e;if(e instanceof Comment&&(c(a)&&c(a).length>0))throw new Error("Not implemented: inserting non-empty logical container");if(u(a))throw new Error("Not implemented: moving existing logical children");var i=c(t);if(n0;)e(r,0)}var a=r;a.parentNode.removeChild(a)},t.getLogicalParent=u,t.getLogicalSiblingEnd=function(e){return e[a]||null},t.getLogicalChild=function(e,t){return c(e)[t]},t.isSvgElement=function(e){return"http://www.w3.org/2000/svg"===l(e).namespaceURI},t.getLogicalChildrenArray=c,t.permuteLogicalChildren=function(e,t){var n=c(e);t.forEach((function(e){e.moveRangeStart=n[e.fromSiblingIndex],e.moveRangeEnd=function e(t){if(t instanceof Element)return t;var n=f(t);if(n)return n.previousSibling;var r=u(t);return r instanceof Element?r.lastChild:e(r)}(e.moveRangeStart)})),t.forEach((function(t){var r=t.moveToBeforeMarker=document.createComment("marker"),o=n[t.toSiblingIndex+1];o?o.parentNode.insertBefore(r,o):d(r,e)})),t.forEach((function(e){for(var t=e.moveToBeforeMarker,n=t.parentNode,r=e.moveRangeStart,o=e.moveRangeEnd,a=r;a;){var i=a.nextSibling;if(n.insertBefore(a,t),a===o)break;a=i}n.removeChild(t)})),t.forEach((function(e){n[e.toSiblingIndex]=e.moveRangeStart}))},t.getClosestDomElement=l},,,,,function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.setPlatform=function(e){return t.platform=e,t.platform}},function(e,t,n){"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.dispatchEvent=function(e,t){if(!r)throw new Error("eventDispatcher not initialized. Call 'setEventDispatcher' to configure it.");r(e,t)},t.setEventDispatcher=function(e){r=e}},,,,function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(8),o=n(4),a=n(31),i=n(5);window.Blazor={navigateTo:r.navigateTo,_internal:{attachRootComponentToElement:o.attachRootComponentToElement,navigationManager:r.internalFunctions,domWrapper:a.domFunctions,setProfilingEnabled:i.setProfilingEnabled}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(26),o=n(27),a=n(13),i=n(30),s=n(19),u=n(8),c=n(5),l=document.createElement("template"),f=document.createElementNS("http://www.w3.org/2000/svg","g"),d={submit:!0},p={},h=function(){function e(e){var t=this;this.childComponentLocations={},this.browserRendererId=e,this.eventDelegator=new o.EventDelegator((function(e,n,r,o){!function(e,t,n,r,o){d[e.type]&&e.preventDefault();var a={browserRendererId:t,eventHandlerId:n,eventArgsType:r.type,eventFieldInfo:o};s.dispatchEvent(a,r.data)}(e,t.browserRendererId,n,r,o)})),u.attachToEventDelegator(this.eventDelegator)}return e.prototype.attachRootComponentToLogicalElement=function(e,t){this.attachComponentToElement(e,t),p[e]=t},e.prototype.updateComponent=function(e,t,n,r){c.profileStart("updateComponent");var o=this.childComponentLocations[t];if(!o)throw new Error("No element is currently associated with component "+t);var i=p[t];if(i){var s=a.getLogicalSiblingEnd(i);delete p[t],s?function(e,t){var n=a.getLogicalParent(e);if(!n)throw new Error("Can't clear between nodes. The start node does not have a logical parent.");for(var r=a.getLogicalChildrenArray(n),o=r.indexOf(e)+1,i=r.indexOf(t),s=o;s<=i;s++)a.removeLogicalChild(n,o);e.textContent="!"}(i,s):function(e){var t;for(;t=e.firstChild;)e.removeChild(t)}(i)}var u=a.getClosestDomElement(o).ownerDocument,l=u&&u.activeElement;this.applyEdits(e,t,o,0,n,r),l instanceof HTMLElement&&u&&u.activeElement!==l&&l.focus(),c.profileEnd("updateComponent")},e.prototype.disposeComponent=function(e){delete this.childComponentLocations[e]},e.prototype.disposeEventHandler=function(e){this.eventDelegator.removeListener(e)},e.prototype.attachComponentToElement=function(e,t){this.childComponentLocations[e]=t},e.prototype.applyEdits=function(e,t,n,o,i,s){for(var u,c=0,l=o,f=e.arrayBuilderSegmentReader,d=e.editReader,p=e.frameReader,h=f.values(i),m=f.offset(i),y=m+f.count(i),v=m;v0&&o[o.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]0&&o[o.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]0)&&!(r=a.next()).done;)i.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=a.return)&&n.call(a)}finally{if(o)throw o.error}}return i};Object.defineProperty(t,"__esModule",{value:!0});var i=n(3);n(23);var s=n(18),u=n(44),c=n(4),l=n(46),f=n(33),d=n(19),p=n(47),h=n(48),m=n(49),y=n(5),v=!1;function b(e){return r(this,void 0,void 0,(function(){var t,n,f,b,g,w,E,_=this;return o(this,(function(C){switch(C.label){case 0:if(v)throw new Error("Blazor has already started.");return v=!0,d.setEventDispatcher((function(e,t){u.monoPlatform.invokeWhenHeapUnlocked((function(){return i.DotNet.invokeMethodAsync("Microsoft.AspNetCore.Components.WebAssembly","DispatchEvent",e,JSON.stringify(t))}))})),t=s.setPlatform(u.monoPlatform),window.Blazor.platform=t,window.Blazor._internal.renderBatch=function(e,t){y.profileStart("renderBatch");var n=u.monoPlatform.beginHeapLock();try{c.renderBatch(e,new l.SharedMemoryRenderBatch(t))}finally{n.release()}y.profileEnd("renderBatch")},n=window.Blazor._internal.navigationManager.getBaseURI,f=window.Blazor._internal.navigationManager.getLocationHref,window.Blazor._internal.navigationManager.getUnmarshalledBaseURI=function(){return BINDING.js_string_to_mono_string(n())},window.Blazor._internal.navigationManager.getUnmarshalledLocationHref=function(){return BINDING.js_string_to_mono_string(f())},window.Blazor._internal.navigationManager.listenForNavigationEvents((function(e,t){return r(_,void 0,void 0,(function(){return o(this,(function(n){switch(n.label){case 0:return[4,i.DotNet.invokeMethodAsync("Microsoft.AspNetCore.Components.WebAssembly","NotifyLocationChanged",e,t)];case 1:return n.sent(),[2]}}))}))})),[4,m.BootConfigResult.initAsync()];case 1:return b=C.sent(),[4,Promise.all([p.WebAssemblyResourceLoader.initAsync(b.bootConfig,e||{}),h.WebAssemblyConfigLoader.initAsync(b)])];case 2:g=a.apply(void 0,[C.sent(),1]),w=g[0],C.label=3;case 3:return C.trys.push([3,5,,6]),[4,t.start(w)];case 4:return C.sent(),[3,6];case 5:throw E=C.sent(),new Error("Failed to start platform. Reason: "+E);case 6:return t.callEntryPoint(w.bootConfig.entryAssembly),[2]}}))}))}window.Blazor.start=b,f.shouldAutoStart()&&b().catch((function(e){"undefined"!=typeof Module&&Module.printErr?Module.printErr(e):console.error(e)}))},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,a){function i(e){try{u(r.next(e))}catch(e){a(e)}}function s(e){try{u(r.throw(e))}catch(e){a(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(i,s)}u((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(a){return function(s){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;i;)try{if(n=1,r&&(o=2&a[0]?r.return:a[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,a[1])).done)return o;switch(r=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,r=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]>2]}t.monoPlatform={start:function(e){return new Promise((function(t,n){var l,f;s.attachDebuggerHotkey(e),c.initializeProfiling((function(e){y("Microsoft.AspNetCore.Components","Microsoft.AspNetCore.Components.Profiling.WebAssemblyComponentsProfiling","SetCapturing")(e)})),window.Browser={init:function(){}},l=function(){window.Module=function(e,t,n){var c=this,l=e.bootConfig.resources,f=window.Module||{},d=["DEBUGGING ENABLED"];f.print=function(e){return d.indexOf(e)<0&&console.log(e)},f.printErr=function(e){console.error(e),u.showErrorNotification()},f.preRun=f.preRun||[],f.postRun=f.postRun||[],f.preloadPlugins=[];var p,m,g=e.loadResources(l.assembly,(function(e){return"_framework/"+e}),"assembly"),w=e.loadResources(l.pdb||{},(function(e){return"_framework/"+e}),"pdb"),E=e.loadResource("dotnet.wasm","_framework/dotnet.wasm",e.bootConfig.resources.runtime["dotnet.wasm"],"dotnetwasm");return e.bootConfig.resources.runtime.hasOwnProperty("dotnet.timezones.blat")&&(p=e.loadResource("dotnet.timezones.blat","_framework/dotnet.timezones.blat",e.bootConfig.resources.runtime["dotnet.timezones.blat"],"globalization")),e.bootConfig.resources.runtime.hasOwnProperty("icudt.dat")?m=e.loadResource("icudt.dat","_framework/icudt.dat",e.bootConfig.resources.runtime["icudt.dat"],"globalization"):MONO.mono_wasm_setenv("DOTNET_SYSTEM_GLOBALIZATION_INVARIANT","1"),f.instantiateWasm=function(e,t){return r(c,void 0,void 0,(function(){var n,r;return o(this,(function(o){switch(o.label){case 0:return o.trys.push([0,3,,4]),[4,E];case 1:return[4,v(o.sent(),e)];case 2:return n=o.sent(),[3,4];case 3:throw r=o.sent(),f.printErr(r),r;case 4:return t(n),[2]}}))})),[]},f.preRun.push((function(){a=cwrap("mono_wasm_add_assembly",null,["string","number","number"]),MONO.loaded_files=[],p&&function(e){r(this,void 0,void 0,(function(){var t,n;return o(this,(function(r){switch(r.label){case 0:return t="blazor:timezonedata",addRunDependency(t),[4,e.response];case 1:return[4,r.sent().arrayBuffer()];case 2:return n=r.sent(),Module.FS_createPath("/","usr",!0,!0),Module.FS_createPath("/usr/","share",!0,!0),Module.FS_createPath("/usr/share/","zoneinfo",!0,!0),MONO.mono_wasm_load_data_archive(new Uint8Array(n),"/usr/share/zoneinfo/"),removeRunDependency(t),[2]}}))}))}(p),m&&function(e){r(this,void 0,void 0,(function(){var t,n,r,a,i;return o(this,(function(o){switch(o.label){case 0:return t="blazor:icudata",addRunDependency(t),[4,e.response];case 1:return n=o.sent(),a=Uint8Array.bind,[4,n.arrayBuffer()];case 2:if(r=new(a.apply(Uint8Array,[void 0,o.sent()])),i=MONO.mono_wasm_load_bytes_into_heap(r),!MONO.mono_wasm_load_icu_data(i))throw new Error("Error loading ICU asset.");return removeRunDependency(t),[2]}}))}))}(m),g.forEach((function(e){return _(e,function(e,t){var n=e.lastIndexOf(".");if(n<0)throw new Error("No extension to replace in '"+e+"'");return e.substr(0,n)+t}(e.name,".dll"))})),w.forEach((function(e){return _(e,e.name)})),window.Blazor._internal.dotNetCriticalError=function(e){f.printErr(BINDING.conv_string(e)||"(null)")},window.Blazor._internal.getSatelliteAssemblies=function(t){var n=BINDING.mono_array_to_js_array(t),a=e.bootConfig.resources.satelliteResources;if(a){var i=Promise.all(n.filter((function(e){return a.hasOwnProperty(e)})).map((function(t){return e.loadResources(a[t],(function(e){return"_framework/"+e}),"assembly")})).reduce((function(e,t){return e.concat(t)}),new Array).map((function(e){return r(c,void 0,void 0,(function(){return o(this,(function(t){switch(t.label){case 0:return[4,e.response];case 1:return[2,t.sent().arrayBuffer()]}}))}))})));return BINDING.js_to_mono_obj(i.then((function(e){return e.length&&(window.Blazor._internal.readSatelliteAssemblies=function(){for(var t=BINDING.mono_obj_array_new(e.length),n=0;n>1];var n},readInt32Field:function(e,t){return p(e+(t||0))},readUint64Field:function(e,t){return function(e){var t=e>>2,n=Module.HEAPU32[t+1];if(n>f)throw new Error("Cannot read uint64 with high order part "+n+", because the result would exceed Number.MAX_SAFE_INTEGER.");return n*l+Module.HEAPU32[t]}(e+(t||0))},readFloatField:function(e,t){return n=e+(t||0),Module.HEAPF32[n>>2];var n},readObjectField:function(e,t){return p(e+(t||0))},readStringField:function(e,t,n){var r,o=p(e+(t||0));if(0===o)return null;if(n){var a=BINDING.unbox_mono_obj(o);return"boolean"==typeof a?a?"":null:a}return d?void 0===(r=d.stringCache.get(o))&&(r=BINDING.conv_string(o),d.stringCache.set(o,r)):r=BINDING.conv_string(o),r},readStructField:function(e,t){return e+(t||0)},beginHeapLock:function(){return b(),d=new g},invokeWhenHeapUnlocked:function(e){d?d.enqueuePostReleaseAction(e):e()}};var h=document.createElement("a");function m(e){return e+12}function y(e,t,n){var r="["+e+"] "+t+":"+n;return BINDING.bind_static_method(r)}function v(e,t){return r(this,void 0,void 0,(function(){var n,r;return o(this,(function(o){switch(o.label){case 0:if("function"!=typeof WebAssembly.instantiateStreaming)return[3,4];o.label=1;case 1:return o.trys.push([1,3,,4]),[4,WebAssembly.instantiateStreaming(e.response,t)];case 2:return[2,o.sent().instance];case 3:return n=o.sent(),console.info("Streaming compilation failed. Falling back to ArrayBuffer instantiation. ",n),[3,4];case 4:return[4,e.response.then((function(e){return e.arrayBuffer()}))];case 5:return r=o.sent(),[4,WebAssembly.instantiate(r,t)];case 6:return[2,o.sent().instance]}}))}))}function b(){if(d)throw new Error("Assertion failed - heap is currently locked")}var g=function(){function e(){this.stringCache=new Map}return e.prototype.enqueuePostReleaseAction=function(e){this.postReleaseActions||(this.postReleaseActions=[]),this.postReleaseActions.push(e)},e.prototype.release=function(){var e;if(d!==this)throw new Error("Trying to release a lock which isn't current");for(d=null;null===(e=this.postReleaseActions)||void 0===e?void 0:e.length;){this.postReleaseActions.shift()(),b()}},e}()},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=window.chrome&&navigator.userAgent.indexOf("Edge")<0,o=!1;function a(){return o&&r}t.hasDebuggingEnabled=a,t.attachDebuggerHotkey=function(e){o=!!e.bootConfig.resources.pdb;var t=navigator.platform.match(/^Mac/i)?"Cmd":"Alt";a()&&console.info("Debugging hotkey: Shift+"+t+"+D (when application has focus)"),document.addEventListener("keydown",(function(e){var t;e.shiftKey&&(e.metaKey||e.altKey)&&"KeyD"===e.code&&(o?r?((t=document.createElement("a")).href="_framework/debug?url="+encodeURIComponent(location.href),t.target="_blank",t.rel="noopener noreferrer",t.click()):console.error("Currently, only Microsoft Edge (80+), or Google Chrome, are supported for debugging."):console.error("Cannot start debugging, because the application was not compiled with debugging enabled."))}))}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(18),o=function(){function e(e){this.batchAddress=e,this.arrayRangeReader=a,this.arrayBuilderSegmentReader=i,this.diffReader=s,this.editReader=u,this.frameReader=c}return e.prototype.updatedComponents=function(){return r.platform.readStructField(this.batchAddress,0)},e.prototype.referenceFrames=function(){return r.platform.readStructField(this.batchAddress,a.structLength)},e.prototype.disposedComponentIds=function(){return r.platform.readStructField(this.batchAddress,2*a.structLength)},e.prototype.disposedEventHandlerIds=function(){return r.platform.readStructField(this.batchAddress,3*a.structLength)},e.prototype.updatedComponentsEntry=function(e,t){return l(e,t,s.structLength)},e.prototype.referenceFramesEntry=function(e,t){return l(e,t,c.structLength)},e.prototype.disposedComponentIdsEntry=function(e,t){var n=l(e,t,4);return r.platform.readInt32Field(n)},e.prototype.disposedEventHandlerIdsEntry=function(e,t){var n=l(e,t,8);return r.platform.readUint64Field(n)},e}();t.SharedMemoryRenderBatch=o;var a={structLength:8,values:function(e){return r.platform.readObjectField(e,0)},count:function(e){return r.platform.readInt32Field(e,4)}},i={structLength:12,values:function(e){var t=r.platform.readObjectField(e,0),n=r.platform.getObjectFieldsBaseAddress(t);return r.platform.readObjectField(n,0)},offset:function(e){return r.platform.readInt32Field(e,4)},count:function(e){return r.platform.readInt32Field(e,8)}},s={structLength:4+i.structLength,componentId:function(e){return r.platform.readInt32Field(e,0)},edits:function(e){return r.platform.readStructField(e,4)},editsEntry:function(e,t){return l(e,t,u.structLength)}},u={structLength:20,editType:function(e){return r.platform.readInt32Field(e,0)},siblingIndex:function(e){return r.platform.readInt32Field(e,4)},newTreeIndex:function(e){return r.platform.readInt32Field(e,8)},moveToSiblingIndex:function(e){return r.platform.readInt32Field(e,8)},removedAttributeName:function(e){return r.platform.readStringField(e,16)}},c={structLength:36,frameType:function(e){return r.platform.readInt16Field(e,4)},subtreeLength:function(e){return r.platform.readInt32Field(e,8)},elementReferenceCaptureId:function(e){return r.platform.readStringField(e,16)},componentId:function(e){return r.platform.readInt32Field(e,12)},elementName:function(e){return r.platform.readStringField(e,16)},textContent:function(e){return r.platform.readStringField(e,16)},markupContent:function(e){return r.platform.readStringField(e,16)},attributeName:function(e){return r.platform.readStringField(e,16)},attributeValue:function(e){return r.platform.readStringField(e,24,!0)},attributeEventHandlerId:function(e){return r.platform.readUint64Field(e,8)}};function l(e,t,n){return r.platform.getArrayEntryPtr(e,t,n)}},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,a){function i(e){try{u(r.next(e))}catch(e){a(e)}}function s(e){try{u(r.throw(e))}catch(e){a(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(i,s)}u((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(a){return function(s){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;i;)try{if(n=1,r&&(o=2&a[0]?r.return:a[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,a[1])).done)return o;switch(r=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,r=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]0&&o[o.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]0&&o[o.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1] void; const appBinDirName = 'appBinDir'; +const icuDataResourceName = 'icudt.dat'; const uint64HighOrderShift = Math.pow(2, 32); const maxSafeNumberHighPart = Math.pow(2, 21) - 1; // The high-order int32 from Number.MAX_SAFE_INTEGER @@ -244,14 +244,26 @@ function createEmscriptenModuleInstance(resourceLoader: WebAssemblyResourceLoade /* hash */ resourceLoader.bootConfig.resources.runtime[dotnetWasmResourceName], /* type */ 'dotnetwasm'); - const dotnetTimeZoneResourceName = 'dotnet.timezones.dat'; + const dotnetTimeZoneResourceName = 'dotnet.timezones.blat'; let timeZoneResource: LoadingResource | undefined; if (resourceLoader.bootConfig.resources.runtime.hasOwnProperty(dotnetTimeZoneResourceName)) { timeZoneResource = resourceLoader.loadResource( dotnetTimeZoneResourceName, `_framework/${dotnetTimeZoneResourceName}`, resourceLoader.bootConfig.resources.runtime[dotnetTimeZoneResourceName], - 'timezonedata'); + 'globalization'); + } + + let icuDataResource: LoadingResource | undefined; + if (resourceLoader.bootConfig.resources.runtime.hasOwnProperty(icuDataResourceName)) { + icuDataResource = resourceLoader.loadResource( + icuDataResourceName, + `_framework/${icuDataResourceName}`, + resourceLoader.bootConfig.resources.runtime[icuDataResourceName], + 'globalization'); + } else { + // Use invariant culture if the app does not carry icu data. + MONO.mono_wasm_setenv("DOTNET_SYSTEM_GLOBALIZATION_INVARIANT", "1"); } // Override the mechanism for fetching the main wasm file so we can connect it to our cache @@ -279,6 +291,10 @@ function createEmscriptenModuleInstance(resourceLoader: WebAssemblyResourceLoade loadTimezone(timeZoneResource); } + if (icuDataResource) { + loadICUData(icuDataResource); + } + // Fetch the assemblies and PDBs in the background, telling Mono to wait until they are loaded // Mono requires the assembly filenames to have a '.dll' extension, so supply such names regardless // of the extensions in the URLs. This allows loading assemblies with arbitrary filenames. @@ -363,7 +379,11 @@ function createEmscriptenModuleInstance(resourceLoader: WebAssemblyResourceLoade resourceLoader.purgeUnusedCacheEntriesAsync(); // Don't await - it's fine to run in background MONO.mono_wasm_setenv("MONO_URI_DOTNETRELATIVEORABSOLUTE", "true"); - MONO.mono_wasm_setenv("DOTNET_SYSTEM_GLOBALIZATION_INVARIANT", "1"); + let timeZone = "UTC"; + try { + timeZone = Intl.DateTimeFormat().resolvedOptions().timeZone; + } catch { } + MONO.mono_wasm_setenv("TZ", timeZone); const load_runtime = cwrap('mono_wasm_load_runtime', null, ['string', 'number']); // -1 enables debugging with logging disabled. 0 disables debugging entirely. load_runtime(appBinDirName, hasDebuggingEnabled() ? -1 : 0); @@ -461,8 +481,27 @@ async function loadTimezone(timeZoneResource: LoadingResource) : Promise { const request = await timeZoneResource.response; const arrayBuffer = await request.arrayBuffer(); - loadTimezoneData(arrayBuffer) + Module['FS_createPath']('/', 'usr', true, true); + Module['FS_createPath']('/usr/', 'share', true, true); + Module['FS_createPath']('/usr/share/', 'zoneinfo', true, true); + MONO.mono_wasm_load_data_archive(new Uint8Array(arrayBuffer), '/usr/share/zoneinfo/'); + + removeRunDependency(runDependencyId); +} + +async function loadICUData(icuDataResource: LoadingResource) : Promise { + const runDependencyId = `blazor:icudata`; + addRunDependency(runDependencyId); + + const request = await icuDataResource.response; + const array = new Uint8Array(await request.arrayBuffer()); + + const offset = MONO.mono_wasm_load_bytes_into_heap(array); + if (!MONO.mono_wasm_load_icu_data(offset)) + { + throw new Error("Error loading ICU asset."); + } removeRunDependency(runDependencyId); } diff --git a/src/Components/Web.JS/src/Platform/Mono/MonoTypes.ts b/src/Components/Web.JS/src/Platform/Mono/MonoTypes.ts index 6d833884303b..9e87713b65e0 100644 --- a/src/Components/Web.JS/src/Platform/Mono/MonoTypes.ts +++ b/src/Components/Web.JS/src/Platform/Mono/MonoTypes.ts @@ -6,6 +6,9 @@ declare interface MONO { loaded_files: string[]; mono_wasm_runtime_ready (): void; mono_wasm_setenv (name: string, value: string): void; + mono_wasm_load_data_archive(data: Uint8Array, prefix: string): void; + mono_wasm_load_bytes_into_heap (data: Uint8Array): Pointer; + mono_wasm_load_icu_data(heapAddress: Pointer): boolean; } // Mono uses this global to hold low-level interop APIs diff --git a/src/Components/Web.JS/src/Platform/Mono/TimezoneDataFile.ts b/src/Components/Web.JS/src/Platform/Mono/TimezoneDataFile.ts deleted file mode 100644 index 47076f4aae2c..000000000000 --- a/src/Components/Web.JS/src/Platform/Mono/TimezoneDataFile.ts +++ /dev/null @@ -1,43 +0,0 @@ -import { readInt32LE } from "../../BinaryDecoder"; -import { decodeUtf8 } from "../../Utf8Decoder"; - -export function loadTimezoneData(arrayBuffer: ArrayBuffer) { - let remainingData = new Uint8Array(arrayBuffer); - - // The timezone file is generated by https://github.com/dotnet/blazor/tree/master/src/TimeZoneData. - // The file format of the TZ file look like so - // - // [4 - byte length of manifest] - // [json manifest] - // [data bytes] - // - // The json manifest is an array that looks like so: - // - // [...["America/Fort_Nelson",2249],["America/Glace_Bay",2206]..] - // - // where the first token in each array is the relative path of the file on disk, and the second is the - // length of the file. The starting offset of a file can be calculated using the lengths of all files - // that appear prior to it. - const manifestSize = readInt32LE(remainingData, 0); - remainingData = remainingData.slice(4); - const manifestContent = decodeUtf8(remainingData.slice(0, manifestSize)); - const manifest = JSON.parse(manifestContent) as ManifestEntry[]; - remainingData = remainingData.slice(manifestSize); - - // Create the folder structure - // /zoneinfo - // /zoneinfo/Africa - // /zoneinfo/Asia - // .. - Module['FS_createPath']('/', 'zoneinfo', true, true); - new Set(manifest.map(m => m[0].split('/')![0])).forEach(folder => - Module['FS_createPath']('/zoneinfo', folder, true, true)); - - for (const [name, length] of manifest) { - const bytes = remainingData.slice(0, length); - Module['FS_createDataFile'](`/zoneinfo/${name}`, null, bytes, true, true, true); - remainingData = remainingData.slice(length); - } - } - - type ManifestEntry = [string, number]; \ No newline at end of file diff --git a/src/Components/Web.JS/src/Platform/WebAssemblyStartOptions.ts b/src/Components/Web.JS/src/Platform/WebAssemblyStartOptions.ts index c6710e74059f..8549d5bd582b 100644 --- a/src/Components/Web.JS/src/Platform/WebAssemblyStartOptions.ts +++ b/src/Components/Web.JS/src/Platform/WebAssemblyStartOptions.ts @@ -14,4 +14,4 @@ export interface WebAssemblyStartOptions { // This type doesn't have to align with anything in BootConfig. // Instead, this represents the public API through which certain aspects // of boot resource loading can be customized. -export type WebAssemblyBootResourceType = 'assembly' | 'pdb' | 'dotnetjs' | 'dotnetwasm' | 'timezonedata'; +export type WebAssemblyBootResourceType = 'assembly' | 'pdb' | 'dotnetjs' | 'dotnetwasm' | 'globalization'; diff --git a/src/Components/WebAssembly/Sdk/integrationtests/WasmBuildIntegrationTest.cs b/src/Components/WebAssembly/Sdk/integrationtests/WasmBuildIntegrationTest.cs index 7313c0b24351..5790168c249e 100644 --- a/src/Components/WebAssembly/Sdk/integrationtests/WasmBuildIntegrationTest.cs +++ b/src/Components/WebAssembly/Sdk/integrationtests/WasmBuildIntegrationTest.cs @@ -31,6 +31,7 @@ public async Task BuildMinimal_Works() Assert.FileExists(result, buildOutputDirectory, "wwwroot", "_framework", "blazor.boot.json"); Assert.FileExists(result, buildOutputDirectory, "wwwroot", "_framework", "blazor.webassembly.js"); Assert.FileExists(result, buildOutputDirectory, "wwwroot", "_framework", "dotnet.wasm"); + Assert.FileExists(result, buildOutputDirectory, "wwwroot", "_framework", "dotnet.timezones.blat"); Assert.FileExists(result, buildOutputDirectory, "wwwroot", "_framework", "dotnet.wasm.gz"); Assert.FileExists(result, buildOutputDirectory, "wwwroot", "_framework", DotNetJsFileName); Assert.FileExists(result, buildOutputDirectory, "wwwroot", "_framework", "blazorwasm-minimal.dll"); @@ -169,7 +170,7 @@ public async Task Build_InRelease_ProducesBootJsonDataWithExpectedContent() Assert.Null(bootJsonData.resources.satelliteResources); } - [Fact(Skip = "https://github.com/dotnet/aspnetcore/issues/22975")] + [Fact] public async Task Build_WithBlazorEnableTimeZoneSupportDisabled_DoesNotCopyTimeZoneInfo() { // Arrange @@ -192,10 +193,10 @@ public async Task Build_WithBlazorEnableTimeZoneSupportDisabled_DoesNotCopyTimeZ var runtime = bootJsonData.resources.runtime.Keys; Assert.Contains("dotnet.wasm", runtime); - Assert.DoesNotContain("dotnet.timezones.dat", runtime); + Assert.DoesNotContain("dotnet.timezones.blat", runtime); - Assert.FileExists(result, buildOutputDirectory, "wwwroot", "_framework", "wasm", "dotnet.wasm"); - Assert.FileDoesNotExist(result, buildOutputDirectory, "wwwroot", "_framework", "wasm", "dotnet.timezones.dat"); + Assert.FileExists(result, buildOutputDirectory, "wwwroot", "_framework", "dotnet.wasm"); + Assert.FileDoesNotExist(result, buildOutputDirectory, "wwwroot", "_framework", "dotnet.timezones.blat"); } [Fact] diff --git a/src/Components/WebAssembly/Sdk/src/targets/BlazorWasm.web.config b/src/Components/WebAssembly/Sdk/src/targets/BlazorWasm.web.config index 7f9995d792c3..c16575f7519c 100644 --- a/src/Components/WebAssembly/Sdk/src/targets/BlazorWasm.web.config +++ b/src/Components/WebAssembly/Sdk/src/targets/BlazorWasm.web.config @@ -2,6 +2,7 @@ + diff --git a/src/Components/WebAssembly/Sdk/src/targets/Microsoft.NET.Sdk.BlazorWebAssembly.Current.targets b/src/Components/WebAssembly/Sdk/src/targets/Microsoft.NET.Sdk.BlazorWebAssembly.Current.targets index a0c4faa97936..ff92c11941b9 100644 --- a/src/Components/WebAssembly/Sdk/src/targets/Microsoft.NET.Sdk.BlazorWebAssembly.Current.targets +++ b/src/Components/WebAssembly/Sdk/src/targets/Microsoft.NET.Sdk.BlazorWebAssembly.Current.targets @@ -123,6 +123,8 @@ Copyright (c) .NET Foundation. All rights reserved. + + + + + - + https://github.com/dotnet/runtime - 3cab6dd440a5f3763bfbd2d582b36fe51095686a + e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 - + https://github.com/dotnet/runtime - 3cab6dd440a5f3763bfbd2d582b36fe51095686a + e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 - + https://github.com/dotnet/runtime - 3cab6dd440a5f3763bfbd2d582b36fe51095686a + e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 https://github.com/dotnet/arcade diff --git a/eng/Versions.props b/eng/Versions.props index 516e8e1ae5af..7793b47245f9 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -64,70 +64,70 @@ 3.8.0-1.20361.1 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 - 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20372.7 + 5.0.0-preview.8.20378.11 3.2.0 From 5dc9931a54e7992223625018ed10a0143ca78442 Mon Sep 17 00:00:00 2001 From: DotNet Bot Date: Thu, 30 Jul 2020 09:55:58 +0000 Subject: [PATCH 06/45] [internal/release/5.0-preview8] Update dependencies from dnceng/internal/dotnet-runtime --- eng/Version.Details.xml | 252 ++++++++++++++++++++-------------------- eng/Versions.props | 126 ++++++++++---------- 2 files changed, 189 insertions(+), 189 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 7c314532bf04..9ba634824dd6 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -41,264 +41,264 @@ https://github.com/dotnet/efcore 58abc390e0e3eb849b5773da3f5ed2982ade521d - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 - + https://github.com/dotnet/runtime - e26443ae490a9c292d22f0dc0dfc1fb7c9faaad2 + cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 https://github.com/dotnet/arcade diff --git a/eng/Versions.props b/eng/Versions.props index 3116176cac59..a5eb74218ac4 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -64,70 +64,70 @@ 3.8.0-1.20361.1 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 - 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20378.11 + 5.0.0-preview.8.20379.8 3.2.0 From fed19537a0440752b6d8595d8e3598da1fc133e6 Mon Sep 17 00:00:00 2001 From: DotNet Bot Date: Fri, 31 Jul 2020 20:12:58 +0000 Subject: [PATCH 07/45] [internal/release/5.0-preview8] Update dependencies from dnceng/internal/dotnet-efcore - Updates: - Microsoft.EntityFrameworkCore.Tools: from 5.0.0-preview.8.20360.8 to 5.0.0-preview.8.20379.2 - Microsoft.EntityFrameworkCore.SqlServer: from 5.0.0-preview.8.20360.8 to 5.0.0-preview.8.20379.2 - dotnet-ef: from 5.0.0-preview.8.20360.8 to 5.0.0-preview.8.20379.2 - Microsoft.EntityFrameworkCore: from 5.0.0-preview.8.20360.8 to 5.0.0-preview.8.20379.2 - Microsoft.EntityFrameworkCore.Relational: from 5.0.0-preview.8.20360.8 to 5.0.0-preview.8.20379.2 - Microsoft.EntityFrameworkCore.Sqlite: from 5.0.0-preview.8.20360.8 to 5.0.0-preview.8.20379.2 - Microsoft.EntityFrameworkCore.InMemory: from 5.0.0-preview.8.20360.8 to 5.0.0-preview.8.20379.2 --- eng/Version.Details.xml | 28 ++++++++++++++-------------- eng/Versions.props | 14 +++++++------- 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 9ba634824dd6..b13a6fa0e295 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -13,33 +13,33 @@ https://github.com/dotnet/blazor cc449601d638ffaab58ae9487f0fd010bb178a12 - + https://github.com/dotnet/efcore - 58abc390e0e3eb849b5773da3f5ed2982ade521d + f3f7551cbff7effc8f605e35d18f5974ca945e5b - + https://github.com/dotnet/efcore - 58abc390e0e3eb849b5773da3f5ed2982ade521d + f3f7551cbff7effc8f605e35d18f5974ca945e5b - + https://github.com/dotnet/efcore - 58abc390e0e3eb849b5773da3f5ed2982ade521d + f3f7551cbff7effc8f605e35d18f5974ca945e5b - + https://github.com/dotnet/efcore - 58abc390e0e3eb849b5773da3f5ed2982ade521d + f3f7551cbff7effc8f605e35d18f5974ca945e5b - + https://github.com/dotnet/efcore - 58abc390e0e3eb849b5773da3f5ed2982ade521d + f3f7551cbff7effc8f605e35d18f5974ca945e5b - + https://github.com/dotnet/efcore - 58abc390e0e3eb849b5773da3f5ed2982ade521d + f3f7551cbff7effc8f605e35d18f5974ca945e5b - + https://github.com/dotnet/efcore - 58abc390e0e3eb849b5773da3f5ed2982ade521d + f3f7551cbff7effc8f605e35d18f5974ca945e5b https://github.com/dotnet/runtime diff --git a/eng/Versions.props b/eng/Versions.props index a5eb74218ac4..d3d7f0373e40 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -131,13 +131,13 @@ 3.2.0 - 5.0.0-preview.8.20360.8 - 5.0.0-preview.8.20360.8 - 5.0.0-preview.8.20360.8 - 5.0.0-preview.8.20360.8 - 5.0.0-preview.8.20360.8 - 5.0.0-preview.8.20360.8 - 5.0.0-preview.8.20360.8 + 5.0.0-preview.8.20379.2 + 5.0.0-preview.8.20379.2 + 5.0.0-preview.8.20379.2 + 5.0.0-preview.8.20379.2 + 5.0.0-preview.8.20379.2 + 5.0.0-preview.8.20379.2 + 5.0.0-preview.8.20379.2 - + https://github.com/dotnet/runtime - cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 + 4f703e60c34640ba337323c58d7de89bf584c922 - + https://github.com/dotnet/runtime - cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 + 4f703e60c34640ba337323c58d7de89bf584c922 - + https://github.com/dotnet/runtime - cfa1c371b2eb7e0a0a5947dc8e05c41f1bc2aba6 + 4f703e60c34640ba337323c58d7de89bf584c922 https://github.com/dotnet/arcade diff --git a/eng/Versions.props b/eng/Versions.props index d3d7f0373e40..8ba38300d03c 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -64,70 +64,70 @@ 3.8.0-1.20361.1 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 - 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20379.8 + 5.0.0-preview.8.20380.14 3.2.0 From 3516b8d580794a4bdc9ba5726638bdc301364ece Mon Sep 17 00:00:00 2001 From: DotNet Bot Date: Mon, 3 Aug 2020 05:08:03 +0000 Subject: [PATCH 09/45] [internal/release/5.0-preview8] Update dependencies from dnceng/internal/dotnet-runtime --- eng/Version.Details.xml | 252 ++++++++++++++++++++-------------------- eng/Versions.props | 126 ++++++++++---------- 2 files changed, 189 insertions(+), 189 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 8742e19f5f86..dc43fbede14e 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -41,264 +41,264 @@ https://github.com/dotnet/efcore f3f7551cbff7effc8f605e35d18f5974ca945e5b - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 - + https://github.com/dotnet/runtime - 4f703e60c34640ba337323c58d7de89bf584c922 + 7b82cf110596ca9c41fd9a1c910df59595814ec4 https://github.com/dotnet/arcade diff --git a/eng/Versions.props b/eng/Versions.props index 8ba38300d03c..24d26ec9ad93 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -64,70 +64,70 @@ 3.8.0-1.20361.1 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 - 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20380.14 + 5.0.0-preview.8.20381.10 3.2.0 From a1df872449f07a903a1356e0aad9b7a0fa720134 Mon Sep 17 00:00:00 2001 From: DotNet Bot Date: Sat, 8 Aug 2020 01:18:13 +0000 Subject: [PATCH 10/45] [internal/release/5.0-preview8] Update dependencies from dnceng/internal/dotnet-runtime --- eng/Version.Details.xml | 252 ++++++++++++++++++++-------------------- eng/Versions.props | 126 ++++++++++---------- 2 files changed, 189 insertions(+), 189 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index dc43fbede14e..4021cb046fa6 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -41,264 +41,264 @@ https://github.com/dotnet/efcore f3f7551cbff7effc8f605e35d18f5974ca945e5b - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 - + https://github.com/dotnet/runtime - 7b82cf110596ca9c41fd9a1c910df59595814ec4 + bf456654f9a4f9a86c15d9d50095ff29cde5f0a4 https://github.com/dotnet/arcade diff --git a/eng/Versions.props b/eng/Versions.props index 24d26ec9ad93..f93d8bdf13a2 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -64,70 +64,70 @@ 3.8.0-1.20361.1 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 - 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 + 5.0.0-preview.8.20407.11 - 5.0.0-preview.8.20381.10 + 5.0.0-preview.8.20407.11 3.2.0 From 929a89b7a2bd8ebd4252251fbef5333a315ad385 Mon Sep 17 00:00:00 2001 From: DotNet Bot Date: Mon, 10 Aug 2020 09:29:28 +0000 Subject: [PATCH 11/45] [internal/release/5.0-preview8] Update dependencies from dnceng/internal/dotnet-efcore - Updates: - Microsoft.EntityFrameworkCore.Tools: from 5.0.0-preview.8.20379.2 to 5.0.0-preview.8.20407.2 - Microsoft.EntityFrameworkCore.SqlServer: from 5.0.0-preview.8.20379.2 to 5.0.0-preview.8.20407.2 - dotnet-ef: from 5.0.0-preview.8.20379.2 to 5.0.0-preview.8.20407.2 - Microsoft.EntityFrameworkCore: from 5.0.0-preview.8.20379.2 to 5.0.0-preview.8.20407.2 - Microsoft.EntityFrameworkCore.Relational: from 5.0.0-preview.8.20379.2 to 5.0.0-preview.8.20407.2 - Microsoft.EntityFrameworkCore.Sqlite: from 5.0.0-preview.8.20379.2 to 5.0.0-preview.8.20407.2 - Microsoft.EntityFrameworkCore.InMemory: from 5.0.0-preview.8.20379.2 to 5.0.0-preview.8.20407.2 --- eng/Version.Details.xml | 42 ++++++++++++++++++++--------------------- eng/Versions.props | 14 +++++++------- 2 files changed, 28 insertions(+), 28 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 4021cb046fa6..6688f2860660 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -13,33 +13,33 @@ https://github.com/dotnet/blazor cc449601d638ffaab58ae9487f0fd010bb178a12 - - https://github.com/dotnet/efcore - f3f7551cbff7effc8f605e35d18f5974ca945e5b + + https://dev.azure.com/dnceng/internal/_git/dotnet-efcore + 1a0927da48e4d2f164fd0076f17d3e89c72dac9e - - https://github.com/dotnet/efcore - f3f7551cbff7effc8f605e35d18f5974ca945e5b + + https://dev.azure.com/dnceng/internal/_git/dotnet-efcore + 1a0927da48e4d2f164fd0076f17d3e89c72dac9e - - https://github.com/dotnet/efcore - f3f7551cbff7effc8f605e35d18f5974ca945e5b + + https://dev.azure.com/dnceng/internal/_git/dotnet-efcore + 1a0927da48e4d2f164fd0076f17d3e89c72dac9e - - https://github.com/dotnet/efcore - f3f7551cbff7effc8f605e35d18f5974ca945e5b + + https://dev.azure.com/dnceng/internal/_git/dotnet-efcore + 1a0927da48e4d2f164fd0076f17d3e89c72dac9e - - https://github.com/dotnet/efcore - f3f7551cbff7effc8f605e35d18f5974ca945e5b + + https://dev.azure.com/dnceng/internal/_git/dotnet-efcore + 1a0927da48e4d2f164fd0076f17d3e89c72dac9e - - https://github.com/dotnet/efcore - f3f7551cbff7effc8f605e35d18f5974ca945e5b + + https://dev.azure.com/dnceng/internal/_git/dotnet-efcore + 1a0927da48e4d2f164fd0076f17d3e89c72dac9e - - https://github.com/dotnet/efcore - f3f7551cbff7effc8f605e35d18f5974ca945e5b + + https://dev.azure.com/dnceng/internal/_git/dotnet-efcore + 1a0927da48e4d2f164fd0076f17d3e89c72dac9e https://github.com/dotnet/runtime diff --git a/eng/Versions.props b/eng/Versions.props index f93d8bdf13a2..5053d81e362a 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -131,13 +131,13 @@ 3.2.0 - 5.0.0-preview.8.20379.2 - 5.0.0-preview.8.20379.2 - 5.0.0-preview.8.20379.2 - 5.0.0-preview.8.20379.2 - 5.0.0-preview.8.20379.2 - 5.0.0-preview.8.20379.2 - 5.0.0-preview.8.20379.2 + 5.0.0-preview.8.20407.2 + 5.0.0-preview.8.20407.2 + 5.0.0-preview.8.20407.2 + 5.0.0-preview.8.20407.2 + 5.0.0-preview.8.20407.2 + 5.0.0-preview.8.20407.2 + 5.0.0-preview.8.20407.2 3.2.0 - 5.0.0-preview.8.20407.2 - 5.0.0-preview.8.20407.2 - 5.0.0-preview.8.20407.2 - 5.0.0-preview.8.20407.2 - 5.0.0-preview.8.20407.2 - 5.0.0-preview.8.20407.2 - 5.0.0-preview.8.20407.2 + 5.0.0-preview.8.20407.4 + 5.0.0-preview.8.20407.4 + 5.0.0-preview.8.20407.4 + 5.0.0-preview.8.20407.4 + 5.0.0-preview.8.20407.4 + 5.0.0-preview.8.20407.4 + 5.0.0-preview.8.20407.4 - false From 72a7635b62e627d1ad677d5643eb3969cfb0477c Mon Sep 17 00:00:00 2001 From: Will Godbe Date: Fri, 28 Aug 2020 09:13:19 -0700 Subject: [PATCH 16/45] Fix InteropClient testasset --- src/Grpc/test/testassets/InteropClient/InteropClient.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Grpc/test/testassets/InteropClient/InteropClient.cs b/src/Grpc/test/testassets/InteropClient/InteropClient.cs index 8090bf3ae69f..6590d8ae6930 100644 --- a/src/Grpc/test/testassets/InteropClient/InteropClient.cs +++ b/src/Grpc/test/testassets/InteropClient/InteropClient.cs @@ -95,8 +95,8 @@ private InteropClient(ClientOptions options) var services = new ServiceCollection(); services.AddLogging(configure => { - configure.SetMinimumLevel(Microsoft.Extensions.Logging.LogLevel.Trace); - configure.AddSimpleConsole(loggerOptions => + configure.SetMinimumLevel(LogLevel.Trace); + configure.AddConsole(loggerOptions => { #pragma warning disable CS0618 // Type or member is obsolete loggerOptions.IncludeScopes = true; From 08309b1e0245eee30b4dea7e2ba0d96df8310e51 Mon Sep 17 00:00:00 2001 From: Will Godbe Date: Tue, 1 Sep 2020 15:49:38 -0700 Subject: [PATCH 17/45] Fix tools.ps1 --- eng/common/tools.ps1 | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/eng/common/tools.ps1 b/eng/common/tools.ps1 index 6f8bc41116b7..27e97a3f8adc 100644 --- a/eng/common/tools.ps1 +++ b/eng/common/tools.ps1 @@ -222,8 +222,8 @@ function GetDotNetInstallScript([string] $dotnetRoot) { return $installScript } -function InstallDotNetSdk([string] $dotnetRoot, [string] $version, [string] $architecture = '') { - InstallDotNet $dotnetRoot $version $architecture +function InstallDotNetSdk([string] $dotnetRoot, [string] $version, [string] $architecture = '', [switch] $noPath) { + InstallDotNet $dotnetRoot $version $architecture '' $false $runtimeSourceFeed $runtimeSourceFeedKey -noPath:$noPath } function InstallDotNet([string] $dotnetRoot, @@ -232,7 +232,8 @@ function InstallDotNet([string] $dotnetRoot, [string] $runtime = '', [bool] $skipNonVersionedFiles = $false, [string] $runtimeSourceFeed = '', - [string] $runtimeSourceFeedKey = '') { + [string] $runtimeSourceFeedKey = '', + [switch] $noPath) { $installScript = GetDotNetInstallScript $dotnetRoot $installParameters = @{ @@ -243,6 +244,7 @@ function InstallDotNet([string] $dotnetRoot, if ($architecture) { $installParameters.Architecture = $architecture } if ($runtime) { $installParameters.Runtime = $runtime } if ($skipNonVersionedFiles) { $installParameters.SkipNonVersionedFiles = $skipNonVersionedFiles } + if ($noPath) { $installParameters.NoPath = $True } try { & $installScript @installParameters From d1ab8efe70893475f049655afeacda5c86f0a2fb Mon Sep 17 00:00:00 2001 From: Will Godbe Date: Wed, 2 Sep 2020 09:32:10 -0700 Subject: [PATCH 18/45] Use -nopath --- eng/helix/content/runtests.cmd | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/eng/helix/content/runtests.cmd b/eng/helix/content/runtests.cmd index dc36eedf7220..4dca87d067d3 100644 --- a/eng/helix/content/runtests.cmd +++ b/eng/helix/content/runtests.cmd @@ -29,11 +29,11 @@ set DOTNET_CLI_HOME=%HELIX_CORRELATION_PAYLOAD%\home set PATH=%DOTNET_ROOT%;!PATH!;%HELIX_CORRELATION_PAYLOAD%\node\bin echo Set path to: %PATH% -powershell.exe -noLogo -NoProfile -ExecutionPolicy unrestricted -command ". eng\common\tools.ps1; InstallDotNet %DOTNET_ROOT% %$sdkVersion% %$arch% '' $true" +powershell.exe -noLogo -NoProfile -ExecutionPolicy unrestricted -command ". eng\common\tools.ps1; InstallDotNet %DOTNET_ROOT% %$sdkVersion% %$arch% '' $true '' '' $true" IF [%$feedCred%] == [] ( - powershell.exe -noLogo -NoProfile -ExecutionPolicy unrestricted -command ". eng\common\tools.ps1; InstallDotNet %DOTNET_ROOT% %$runtimeVersion% %$arch% dotnet $true" + powershell.exe -noLogo -NoProfile -ExecutionPolicy unrestricted -command ". eng\common\tools.ps1; InstallDotNet %DOTNET_ROOT% %$runtimeVersion% %$arch% dotnet $true '' '' $true" ) else ( - powershell.exe -noLogo -NoProfile -ExecutionPolicy unrestricted -command ". eng\common\tools.ps1; InstallDotNet %DOTNET_ROOT% %$runtimeVersion% %$arch% dotnet $true https://dotnetclimsrc.blob.core.windows.net/dotnet %$feedCred%" + powershell.exe -noLogo -NoProfile -ExecutionPolicy unrestricted -command ". eng\common\tools.ps1; InstallDotNet %DOTNET_ROOT% %$runtimeVersion% %$arch% dotnet $true https://dotnetclimsrc.blob.core.windows.net/dotnet %$feedCred% $true" ) set exit_code=0 From cd0ec1f46b2bb416c590c56fa09c4e0ba96e1726 Mon Sep 17 00:00:00 2001 From: Doug Bunting <6431421+dougbu@users.noreply.github.com> Date: Fri, 4 Sep 2020 10:53:15 -0700 Subject: [PATCH 19/45] Add dotnet-install-scripts files to Helix content --- eng/targets/Helix.targets | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/eng/targets/Helix.targets b/eng/targets/Helix.targets index 9a277c0d5988..706c407778f2 100644 --- a/eng/targets/Helix.targets +++ b/eng/targets/Helix.targets @@ -33,6 +33,11 @@ PreserveNewest PreserveNewest + + eng\common\dotnet-install-scripts\%(Filename)%(Extension) + PreserveNewest + PreserveNewest + $(NoWarn);RS0041 - - - - - - - + + + Date: Sun, 6 Sep 2020 21:33:03 -0700 Subject: [PATCH 26/45] [release/5.0-rc2] Add public API baselines for Components (#25660) - part of #24347 - unable to do src/Components/Authorization due to contained `*.razor` file - ignored src/Components/Analyzers and src/Components/WebAssembly/Sdk --- .../Components/src/BindConverter.cs | 25 + .../EventCallbackFactoryBinderExtensions.cs | 25 + .../Components/src/PublicAPI.Shipped.txt | 1 + .../Components/src/PublicAPI.Unshipped.txt | 429 ++++++++++++++++++ .../Forms/src/PublicAPI.Shipped.txt | 1 + .../Forms/src/PublicAPI.Unshipped.txt | 59 +++ .../Ignitor/src/PublicAPI.Shipped.txt | 1 + .../Ignitor/src/PublicAPI.Unshipped.txt | 193 ++++++++ .../src/PublicAPI.Shipped.txt | 1 + .../src/PublicAPI.Unshipped.txt | 17 + .../Server/src/PublicAPI.Shipped.txt | 1 + .../Server/src/PublicAPI.Unshipped.txt | 44 ++ .../Web.Extensions/src/PublicAPI.Shipped.txt | 1 + .../src/PublicAPI.Unshipped.txt | 18 + src/Components/Web/src/PublicAPI.Shipped.txt | 1 + .../Web/src/PublicAPI.Unshipped.txt | 413 +++++++++++++++++ .../src/PublicAPI.Shipped.txt | 1 + .../src/PublicAPI.Unshipped.txt | 39 ++ .../DevServer/src/PublicAPI.Shipped.txt | 1 + .../DevServer/src/PublicAPI.Unshipped.txt | 4 + .../JSInterop/src/PublicAPI.Shipped.txt | 1 + .../JSInterop/src/PublicAPI.Unshipped.txt | 10 + .../Server/src/PublicAPI.Shipped.txt | 1 + .../Server/src/PublicAPI.Unshipped.txt | 9 + .../src/PublicAPI.Shipped.txt | 1 + .../src/PublicAPI.Unshipped.txt | 226 +++++++++ .../WebAssembly/src/PublicAPI.Shipped.txt | 1 + .../WebAssembly/src/PublicAPI.Unshipped.txt | 74 +++ 28 files changed, 1598 insertions(+) create mode 100644 src/Components/Components/src/PublicAPI.Shipped.txt create mode 100644 src/Components/Components/src/PublicAPI.Unshipped.txt create mode 100644 src/Components/Forms/src/PublicAPI.Shipped.txt create mode 100644 src/Components/Forms/src/PublicAPI.Unshipped.txt create mode 100644 src/Components/Ignitor/src/PublicAPI.Shipped.txt create mode 100644 src/Components/Ignitor/src/PublicAPI.Unshipped.txt create mode 100644 src/Components/ProtectedBrowserStorage/src/PublicAPI.Shipped.txt create mode 100644 src/Components/ProtectedBrowserStorage/src/PublicAPI.Unshipped.txt create mode 100644 src/Components/Server/src/PublicAPI.Shipped.txt create mode 100644 src/Components/Server/src/PublicAPI.Unshipped.txt create mode 100644 src/Components/Web.Extensions/src/PublicAPI.Shipped.txt create mode 100644 src/Components/Web.Extensions/src/PublicAPI.Unshipped.txt create mode 100644 src/Components/Web/src/PublicAPI.Shipped.txt create mode 100644 src/Components/Web/src/PublicAPI.Unshipped.txt create mode 100644 src/Components/WebAssembly/Authentication.Msal/src/PublicAPI.Shipped.txt create mode 100644 src/Components/WebAssembly/Authentication.Msal/src/PublicAPI.Unshipped.txt create mode 100644 src/Components/WebAssembly/DevServer/src/PublicAPI.Shipped.txt create mode 100644 src/Components/WebAssembly/DevServer/src/PublicAPI.Unshipped.txt create mode 100644 src/Components/WebAssembly/JSInterop/src/PublicAPI.Shipped.txt create mode 100644 src/Components/WebAssembly/JSInterop/src/PublicAPI.Unshipped.txt create mode 100644 src/Components/WebAssembly/Server/src/PublicAPI.Shipped.txt create mode 100644 src/Components/WebAssembly/Server/src/PublicAPI.Unshipped.txt create mode 100644 src/Components/WebAssembly/WebAssembly.Authentication/src/PublicAPI.Shipped.txt create mode 100644 src/Components/WebAssembly/WebAssembly.Authentication/src/PublicAPI.Unshipped.txt create mode 100644 src/Components/WebAssembly/WebAssembly/src/PublicAPI.Shipped.txt create mode 100644 src/Components/WebAssembly/WebAssembly/src/PublicAPI.Unshipped.txt diff --git a/src/Components/Components/src/BindConverter.cs b/src/Components/Components/src/BindConverter.cs index 57a6cacd213a..223681ad0de9 100644 --- a/src/Components/Components/src/BindConverter.cs +++ b/src/Components/Components/src/BindConverter.cs @@ -4,6 +4,7 @@ using System; using System.Collections.Concurrent; using System.ComponentModel; +using System.Diagnostics.CodeAnalysis; using System.Globalization; using System.Reflection; @@ -35,6 +36,7 @@ public static class BindConverter /// The to use while formatting. Defaults to . /// /// The formatted value. + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static string? FormatValue(string? value, CultureInfo? culture = null) => FormatStringValueCore(value, culture); private static string? FormatStringValueCore(string? value, CultureInfo? culture) @@ -50,6 +52,7 @@ public static class BindConverter /// The to use while formatting. Defaults to . /// /// The formatted value. + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static bool FormatValue(bool value, CultureInfo? culture = null) { // Formatting for bool is special-cased. We need to produce a boolean value for conditional attributes @@ -73,6 +76,7 @@ private static object FormatBoolValueCore(bool value, CultureInfo? culture) /// The to use while formatting. Defaults to . /// /// The formatted value. + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static bool? FormatValue(bool? value, CultureInfo? culture = null) { // Formatting for bool is special-cased. We need to produce a boolean value for conditional attributes @@ -96,6 +100,7 @@ private static object FormatBoolValueCore(bool value, CultureInfo? culture) /// The to use while formatting. Defaults to . /// /// The formatted value. + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static string? FormatValue(int value, CultureInfo? culture = null) => FormatIntValueCore(value, culture); private static string? FormatIntValueCore(int value, CultureInfo? culture) @@ -111,6 +116,7 @@ private static object FormatBoolValueCore(bool value, CultureInfo? culture) /// The to use while formatting. Defaults to . /// /// The formatted value. + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static string? FormatValue(int? value, CultureInfo? culture = null) => FormatNullableIntValueCore(value, culture); private static string? FormatNullableIntValueCore(int? value, CultureInfo? culture) @@ -131,6 +137,7 @@ private static object FormatBoolValueCore(bool value, CultureInfo? culture) /// The to use while formatting. Defaults to . /// /// The formatted value. + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static string FormatValue(long value, CultureInfo? culture = null) => FormatLongValueCore(value, culture); private static string FormatLongValueCore(long value, CultureInfo? culture) @@ -146,6 +153,7 @@ private static string FormatLongValueCore(long value, CultureInfo? culture) /// The to use while formatting. Defaults to . /// /// The formatted value. + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static string? FormatValue(long? value, CultureInfo? culture = null) => FormatNullableLongValueCore(value, culture); private static string? FormatNullableLongValueCore(long? value, CultureInfo? culture) @@ -166,6 +174,7 @@ private static string FormatLongValueCore(long value, CultureInfo? culture) /// The to use while formatting. Defaults to . /// /// The formatted value. + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static string FormatValue(short value, CultureInfo? culture = null) => FormatShortValueCore(value, culture); private static string FormatShortValueCore(short value, CultureInfo? culture) @@ -181,6 +190,7 @@ private static string FormatShortValueCore(short value, CultureInfo? culture) /// The to use while formatting. Defaults to . /// /// The formatted value. + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static string? FormatValue(short? value, CultureInfo? culture = null) => FormatNullableShortValueCore(value, culture); private static string? FormatNullableShortValueCore(short? value, CultureInfo? culture) @@ -201,6 +211,7 @@ private static string FormatShortValueCore(short value, CultureInfo? culture) /// The to use while formatting. Defaults to . /// /// The formatted value. + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static string FormatValue(float value, CultureInfo? culture = null) => FormatFloatValueCore(value, culture); private static string FormatFloatValueCore(float value, CultureInfo? culture) @@ -216,6 +227,7 @@ private static string FormatFloatValueCore(float value, CultureInfo? culture) /// The to use while formatting. Defaults to . /// /// The formatted value. + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static string? FormatValue(float? value, CultureInfo? culture = null) => FormatNullableFloatValueCore(value, culture); private static string? FormatNullableFloatValueCore(float? value, CultureInfo? culture) @@ -236,6 +248,7 @@ private static string FormatFloatValueCore(float value, CultureInfo? culture) /// The to use while formatting. Defaults to . /// /// The formatted value. + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static string? FormatValue(double value, CultureInfo? culture = null) => FormatDoubleValueCore(value, culture); private static string FormatDoubleValueCore(double value, CultureInfo? culture) @@ -251,6 +264,7 @@ private static string FormatDoubleValueCore(double value, CultureInfo? culture) /// The to use while formatting. Defaults to . /// /// The formatted value. + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static string? FormatValue(double? value, CultureInfo? culture = null) => FormatNullableDoubleValueCore(value, culture); private static string? FormatNullableDoubleValueCore(double? value, CultureInfo? culture) @@ -271,6 +285,7 @@ private static string FormatDoubleValueCore(double value, CultureInfo? culture) /// The to use while formatting. Defaults to . /// /// The formatted value. + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static string FormatValue(decimal value, CultureInfo? culture = null) => FormatDecimalValueCore(value, culture); private static string FormatDecimalValueCore(decimal value, CultureInfo? culture) @@ -286,6 +301,7 @@ private static string FormatDecimalValueCore(decimal value, CultureInfo? culture /// The to use while formatting. Defaults to . /// /// The formatted value. + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static string? FormatValue(decimal? value, CultureInfo? culture = null) => FormatNullableDecimalValueCore(value, culture); private static string? FormatNullableDecimalValueCore(decimal? value, CultureInfo? culture) @@ -306,6 +322,7 @@ private static string FormatDecimalValueCore(decimal value, CultureInfo? culture /// The to use while formatting. Defaults to . /// /// The formatted value. + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static string FormatValue(DateTime value, CultureInfo? culture = null) => FormatDateTimeValueCore(value, format: null, culture); /// @@ -317,6 +334,7 @@ private static string FormatDecimalValueCore(decimal value, CultureInfo? culture /// The to use while formatting. Defaults to . /// /// The formatted value. + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static string FormatValue(DateTime value, string format, CultureInfo? culture = null) => FormatDateTimeValueCore(value, format, culture); private static string FormatDateTimeValueCore(DateTime value, string? format, CultureInfo? culture) @@ -342,6 +360,7 @@ private static string FormatDateTimeValueCore(DateTime value, CultureInfo? cultu /// The to use while formatting. Defaults to . /// /// The formatted value. + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static string? FormatValue(DateTime? value, CultureInfo? culture = null) => FormatNullableDateTimeValueCore(value, format: null, culture); /// @@ -353,6 +372,7 @@ private static string FormatDateTimeValueCore(DateTime value, CultureInfo? cultu /// The to use while formatting. Defaults to . /// /// The formatted value. + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static string? FormatValue(DateTime? value, string? format, CultureInfo? culture = null) => FormatNullableDateTimeValueCore(value, format, culture); private static string? FormatNullableDateTimeValueCore(DateTime? value, string? format, CultureInfo? culture) @@ -388,6 +408,7 @@ private static string FormatDateTimeValueCore(DateTime value, CultureInfo? cultu /// The to use while formatting. Defaults to . /// /// The formatted value. + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static string FormatValue(DateTimeOffset value, CultureInfo? culture = null) => FormatDateTimeOffsetValueCore(value, format: null, culture); @@ -400,6 +421,7 @@ private static string FormatDateTimeValueCore(DateTime value, CultureInfo? cultu /// The to use while formatting. Defaults to . /// /// The formatted value. + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static string FormatValue(DateTimeOffset value, string format, CultureInfo? culture = null) => FormatDateTimeOffsetValueCore(value, format, culture); private static string FormatDateTimeOffsetValueCore(DateTimeOffset value, string? format, CultureInfo? culture) @@ -425,6 +447,7 @@ private static string FormatDateTimeOffsetValueCore(DateTimeOffset value, Cultur /// The to use while formatting. Defaults to . /// /// The formatted value. + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static string? FormatValue(DateTimeOffset? value, CultureInfo? culture = null) => FormatNullableDateTimeOffsetValueCore(value, format: null, culture); /// @@ -436,6 +459,7 @@ private static string FormatDateTimeOffsetValueCore(DateTimeOffset value, Cultur /// The to use while formatting. Defaults to . /// /// The formatted value. + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static string? FormatValue(DateTimeOffset? value, string format, CultureInfo? culture = null) => FormatNullableDateTimeOffsetValueCore(value, format, culture); private static string? FormatNullableDateTimeOffsetValueCore(DateTimeOffset? value, string? format, CultureInfo? culture) @@ -486,6 +510,7 @@ private static string FormatEnumValueCore(T value, CultureInfo? culture) wher /// The to use while formatting. Defaults to . /// /// The formatted value. + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static object? FormatValue(T value, CultureInfo? culture = null) { var formatter = FormatterDelegateCache.Get(); diff --git a/src/Components/Components/src/EventCallbackFactoryBinderExtensions.cs b/src/Components/Components/src/EventCallbackFactoryBinderExtensions.cs index ac868f3ac62d..b38e9ae0a835 100644 --- a/src/Components/Components/src/EventCallbackFactoryBinderExtensions.cs +++ b/src/Components/Components/src/EventCallbackFactoryBinderExtensions.cs @@ -2,6 +2,7 @@ // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. using System; +using System.Diagnostics.CodeAnalysis; using System.Globalization; using static Microsoft.AspNetCore.Components.BindConverter; @@ -31,6 +32,7 @@ public static class EventCallbackFactoryBinderExtensions /// /// /// + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static EventCallback CreateBinder( this EventCallbackFactory factory, object receiver, @@ -50,6 +52,7 @@ public static EventCallback CreateBinder( /// /// /// + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static EventCallback CreateBinder( this EventCallbackFactory factory, object receiver, @@ -69,6 +72,7 @@ public static EventCallback CreateBinder( /// /// /// + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static EventCallback CreateBinder( this EventCallbackFactory factory, object receiver, @@ -88,6 +92,7 @@ public static EventCallback CreateBinder( /// /// /// + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static EventCallback CreateBinder( this EventCallbackFactory factory, object receiver, @@ -107,6 +112,7 @@ public static EventCallback CreateBinder( /// /// /// + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static EventCallback CreateBinder( this EventCallbackFactory factory, object receiver, @@ -126,6 +132,7 @@ public static EventCallback CreateBinder( /// /// /// + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static EventCallback CreateBinder( this EventCallbackFactory factory, object receiver, @@ -145,6 +152,7 @@ public static EventCallback CreateBinder( /// /// /// + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static EventCallback CreateBinder( this EventCallbackFactory factory, object receiver, @@ -164,6 +172,7 @@ public static EventCallback CreateBinder( /// /// /// + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static EventCallback CreateBinder( this EventCallbackFactory factory, object receiver, @@ -183,6 +192,7 @@ public static EventCallback CreateBinder( /// /// /// + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static EventCallback CreateBinder( this EventCallbackFactory factory, object receiver, @@ -202,6 +212,7 @@ public static EventCallback CreateBinder( /// /// /// + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static EventCallback CreateBinder( this EventCallbackFactory factory, object receiver, @@ -221,6 +232,7 @@ public static EventCallback CreateBinder( /// /// /// + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static EventCallback CreateBinder( this EventCallbackFactory factory, object receiver, @@ -240,6 +252,7 @@ public static EventCallback CreateBinder( /// /// /// + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static EventCallback CreateBinder( this EventCallbackFactory factory, object receiver, @@ -259,6 +272,7 @@ public static EventCallback CreateBinder( /// /// /// + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static EventCallback CreateBinder( this EventCallbackFactory factory, object receiver, @@ -278,6 +292,7 @@ public static EventCallback CreateBinder( /// /// /// + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static EventCallback CreateBinder( this EventCallbackFactory factory, object receiver, @@ -297,6 +312,7 @@ public static EventCallback CreateBinder( /// /// /// + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static EventCallback CreateBinder( this EventCallbackFactory factory, object receiver, @@ -316,6 +332,7 @@ public static EventCallback CreateBinder( /// /// /// + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static EventCallback CreateBinder( this EventCallbackFactory factory, object receiver, @@ -336,6 +353,7 @@ public static EventCallback CreateBinder( /// /// /// + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static EventCallback CreateBinder( this EventCallbackFactory factory, object receiver, @@ -356,6 +374,7 @@ public static EventCallback CreateBinder( /// /// /// + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static EventCallback CreateBinder( this EventCallbackFactory factory, object receiver, @@ -376,6 +395,7 @@ public static EventCallback CreateBinder( /// /// /// + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static EventCallback CreateBinder( this EventCallbackFactory factory, object receiver, @@ -396,6 +416,7 @@ public static EventCallback CreateBinder( /// /// /// + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static EventCallback CreateBinder( this EventCallbackFactory factory, object receiver, @@ -416,6 +437,7 @@ public static EventCallback CreateBinder( /// /// /// + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static EventCallback CreateBinder( this EventCallbackFactory factory, object receiver, @@ -436,6 +458,7 @@ public static EventCallback CreateBinder( /// /// /// + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static EventCallback CreateBinder( this EventCallbackFactory factory, object receiver, @@ -456,6 +479,7 @@ public static EventCallback CreateBinder( /// /// /// + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static EventCallback CreateBinder( this EventCallbackFactory factory, object receiver, @@ -477,6 +501,7 @@ public static EventCallback CreateBinder( /// /// /// + [SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Required to maintain compatibility")] public static EventCallback CreateBinder( this EventCallbackFactory factory, object receiver, diff --git a/src/Components/Components/src/PublicAPI.Shipped.txt b/src/Components/Components/src/PublicAPI.Shipped.txt new file mode 100644 index 000000000000..ab058de62d44 --- /dev/null +++ b/src/Components/Components/src/PublicAPI.Shipped.txt @@ -0,0 +1 @@ +#nullable enable diff --git a/src/Components/Components/src/PublicAPI.Unshipped.txt b/src/Components/Components/src/PublicAPI.Unshipped.txt new file mode 100644 index 000000000000..bccbaa73c306 --- /dev/null +++ b/src/Components/Components/src/PublicAPI.Unshipped.txt @@ -0,0 +1,429 @@ +Microsoft.AspNetCore.Components.BindConverter +Microsoft.AspNetCore.Components.BindElementAttribute +Microsoft.AspNetCore.Components.BindElementAttribute.BindElementAttribute(string! element, string? suffix, string! valueAttribute, string! changeAttribute) -> void +Microsoft.AspNetCore.Components.BindElementAttribute.ChangeAttribute.get -> string! +Microsoft.AspNetCore.Components.BindElementAttribute.Element.get -> string! +Microsoft.AspNetCore.Components.BindElementAttribute.Suffix.get -> string? +Microsoft.AspNetCore.Components.BindElementAttribute.ValueAttribute.get -> string! +Microsoft.AspNetCore.Components.CascadingParameterAttribute +Microsoft.AspNetCore.Components.CascadingParameterAttribute.CascadingParameterAttribute() -> void +Microsoft.AspNetCore.Components.CascadingParameterAttribute.Name.get -> string? +Microsoft.AspNetCore.Components.CascadingParameterAttribute.Name.set -> void +Microsoft.AspNetCore.Components.CascadingValue +Microsoft.AspNetCore.Components.CascadingValue.Attach(Microsoft.AspNetCore.Components.RenderHandle renderHandle) -> void +Microsoft.AspNetCore.Components.CascadingValue.CascadingValue() -> void +Microsoft.AspNetCore.Components.CascadingValue.ChildContent.get -> Microsoft.AspNetCore.Components.RenderFragment! +Microsoft.AspNetCore.Components.CascadingValue.ChildContent.set -> void +Microsoft.AspNetCore.Components.CascadingValue.IsFixed.get -> bool +Microsoft.AspNetCore.Components.CascadingValue.IsFixed.set -> void +Microsoft.AspNetCore.Components.CascadingValue.Name.get -> string? +Microsoft.AspNetCore.Components.CascadingValue.Name.set -> void +Microsoft.AspNetCore.Components.CascadingValue.SetParametersAsync(Microsoft.AspNetCore.Components.ParameterView parameters) -> System.Threading.Tasks.Task! +Microsoft.AspNetCore.Components.CascadingValue.Value.get -> TValue +Microsoft.AspNetCore.Components.CascadingValue.Value.set -> void +Microsoft.AspNetCore.Components.ChangeEventArgs +Microsoft.AspNetCore.Components.ChangeEventArgs.ChangeEventArgs() -> void +Microsoft.AspNetCore.Components.ChangeEventArgs.Value.get -> object? +Microsoft.AspNetCore.Components.ChangeEventArgs.Value.set -> void +Microsoft.AspNetCore.Components.CompilerServices.RuntimeHelpers +Microsoft.AspNetCore.Components.ComponentBase +Microsoft.AspNetCore.Components.ComponentBase.ComponentBase() -> void +Microsoft.AspNetCore.Components.ComponentBase.InvokeAsync(System.Action! workItem) -> System.Threading.Tasks.Task! +Microsoft.AspNetCore.Components.ComponentBase.InvokeAsync(System.Func! workItem) -> System.Threading.Tasks.Task! +Microsoft.AspNetCore.Components.ComponentBase.StateHasChanged() -> void +Microsoft.AspNetCore.Components.Dispatcher +Microsoft.AspNetCore.Components.Dispatcher.AssertAccess() -> void +Microsoft.AspNetCore.Components.Dispatcher.Dispatcher() -> void +Microsoft.AspNetCore.Components.Dispatcher.OnUnhandledException(System.UnhandledExceptionEventArgs! e) -> void +Microsoft.AspNetCore.Components.ElementReference +Microsoft.AspNetCore.Components.ElementReference.Context.get -> Microsoft.AspNetCore.Components.ElementReferenceContext? +Microsoft.AspNetCore.Components.ElementReference.ElementReference(string! id) -> void +Microsoft.AspNetCore.Components.ElementReference.ElementReference(string! id, Microsoft.AspNetCore.Components.ElementReferenceContext? context) -> void +Microsoft.AspNetCore.Components.ElementReference.Id.get -> string! +Microsoft.AspNetCore.Components.ElementReferenceContext +Microsoft.AspNetCore.Components.ElementReferenceContext.ElementReferenceContext() -> void +Microsoft.AspNetCore.Components.EventCallback +Microsoft.AspNetCore.Components.EventCallback.EventCallback(Microsoft.AspNetCore.Components.IHandleEvent? receiver, System.MulticastDelegate? delegate) -> void +Microsoft.AspNetCore.Components.EventCallback.HasDelegate.get -> bool +Microsoft.AspNetCore.Components.EventCallback.InvokeAsync() -> System.Threading.Tasks.Task! +Microsoft.AspNetCore.Components.EventCallback.InvokeAsync(object! arg) -> System.Threading.Tasks.Task! +Microsoft.AspNetCore.Components.EventCallback +Microsoft.AspNetCore.Components.EventCallback.EventCallback(Microsoft.AspNetCore.Components.IHandleEvent? receiver, System.MulticastDelegate? delegate) -> void +Microsoft.AspNetCore.Components.EventCallback.HasDelegate.get -> bool +Microsoft.AspNetCore.Components.EventCallback.InvokeAsync() -> System.Threading.Tasks.Task! +Microsoft.AspNetCore.Components.EventCallback.InvokeAsync(TValue arg) -> System.Threading.Tasks.Task! +Microsoft.AspNetCore.Components.EventCallbackFactory +Microsoft.AspNetCore.Components.EventCallbackFactory.Create(object! receiver, Microsoft.AspNetCore.Components.EventCallback callback) -> Microsoft.AspNetCore.Components.EventCallback +Microsoft.AspNetCore.Components.EventCallbackFactory.Create(object! receiver, System.Action! callback) -> Microsoft.AspNetCore.Components.EventCallback +Microsoft.AspNetCore.Components.EventCallbackFactory.Create(object! receiver, System.Action! callback) -> Microsoft.AspNetCore.Components.EventCallback +Microsoft.AspNetCore.Components.EventCallbackFactory.Create(object! receiver, System.Func! callback) -> Microsoft.AspNetCore.Components.EventCallback +Microsoft.AspNetCore.Components.EventCallbackFactory.Create(object! receiver, System.Func! callback) -> Microsoft.AspNetCore.Components.EventCallback +Microsoft.AspNetCore.Components.EventCallbackFactory.Create(object! receiver, Microsoft.AspNetCore.Components.EventCallback callback) -> Microsoft.AspNetCore.Components.EventCallback +Microsoft.AspNetCore.Components.EventCallbackFactory.Create(object! receiver, Microsoft.AspNetCore.Components.EventCallback callback) -> Microsoft.AspNetCore.Components.EventCallback +Microsoft.AspNetCore.Components.EventCallbackFactory.Create(object! receiver, System.Action! callback) -> Microsoft.AspNetCore.Components.EventCallback +Microsoft.AspNetCore.Components.EventCallbackFactory.Create(object! receiver, System.Action! callback) -> Microsoft.AspNetCore.Components.EventCallback +Microsoft.AspNetCore.Components.EventCallbackFactory.Create(object! receiver, System.Func! callback) -> Microsoft.AspNetCore.Components.EventCallback +Microsoft.AspNetCore.Components.EventCallbackFactory.Create(object! receiver, System.Func! callback) -> Microsoft.AspNetCore.Components.EventCallback +Microsoft.AspNetCore.Components.EventCallbackFactory.CreateInferred(object! receiver, System.Action! callback, TValue value) -> Microsoft.AspNetCore.Components.EventCallback +Microsoft.AspNetCore.Components.EventCallbackFactory.CreateInferred(object! receiver, System.Func! callback, TValue value) -> Microsoft.AspNetCore.Components.EventCallback +Microsoft.AspNetCore.Components.EventCallbackFactory.EventCallbackFactory() -> void +Microsoft.AspNetCore.Components.EventCallbackFactoryBinderExtensions +Microsoft.AspNetCore.Components.EventCallbackFactoryEventArgsExtensions +Microsoft.AspNetCore.Components.EventCallbackWorkItem +Microsoft.AspNetCore.Components.EventCallbackWorkItem.EventCallbackWorkItem(System.MulticastDelegate? delegate) -> void +Microsoft.AspNetCore.Components.EventCallbackWorkItem.InvokeAsync(object? arg) -> System.Threading.Tasks.Task! +Microsoft.AspNetCore.Components.EventHandlerAttribute +Microsoft.AspNetCore.Components.EventHandlerAttribute.AttributeName.get -> string! +Microsoft.AspNetCore.Components.EventHandlerAttribute.EnablePreventDefault.get -> bool +Microsoft.AspNetCore.Components.EventHandlerAttribute.EnableStopPropagation.get -> bool +Microsoft.AspNetCore.Components.EventHandlerAttribute.EventArgsType.get -> System.Type! +Microsoft.AspNetCore.Components.EventHandlerAttribute.EventHandlerAttribute(string! attributeName, System.Type! eventArgsType) -> void +Microsoft.AspNetCore.Components.EventHandlerAttribute.EventHandlerAttribute(string! attributeName, System.Type! eventArgsType, bool enableStopPropagation, bool enablePreventDefault) -> void +Microsoft.AspNetCore.Components.IComponent +Microsoft.AspNetCore.Components.IComponent.Attach(Microsoft.AspNetCore.Components.RenderHandle renderHandle) -> void +Microsoft.AspNetCore.Components.IComponent.SetParametersAsync(Microsoft.AspNetCore.Components.ParameterView parameters) -> System.Threading.Tasks.Task! +Microsoft.AspNetCore.Components.IComponentActivator +Microsoft.AspNetCore.Components.IComponentActivator.CreateInstance(System.Type! componentType) -> Microsoft.AspNetCore.Components.IComponent! +Microsoft.AspNetCore.Components.IHandleAfterRender +Microsoft.AspNetCore.Components.IHandleAfterRender.OnAfterRenderAsync() -> System.Threading.Tasks.Task! +Microsoft.AspNetCore.Components.IHandleEvent +Microsoft.AspNetCore.Components.IHandleEvent.HandleEventAsync(Microsoft.AspNetCore.Components.EventCallbackWorkItem item, object? arg) -> System.Threading.Tasks.Task! +Microsoft.AspNetCore.Components.InjectAttribute +Microsoft.AspNetCore.Components.InjectAttribute.InjectAttribute() -> void +Microsoft.AspNetCore.Components.LayoutAttribute +Microsoft.AspNetCore.Components.LayoutAttribute.LayoutAttribute(System.Type! layoutType) -> void +Microsoft.AspNetCore.Components.LayoutAttribute.LayoutType.get -> System.Type! +Microsoft.AspNetCore.Components.LayoutComponentBase +Microsoft.AspNetCore.Components.LayoutComponentBase.Body.get -> Microsoft.AspNetCore.Components.RenderFragment? +Microsoft.AspNetCore.Components.LayoutComponentBase.Body.set -> void +Microsoft.AspNetCore.Components.LayoutComponentBase.LayoutComponentBase() -> void +Microsoft.AspNetCore.Components.LayoutView +Microsoft.AspNetCore.Components.LayoutView.Attach(Microsoft.AspNetCore.Components.RenderHandle renderHandle) -> void +Microsoft.AspNetCore.Components.LayoutView.ChildContent.get -> Microsoft.AspNetCore.Components.RenderFragment! +Microsoft.AspNetCore.Components.LayoutView.ChildContent.set -> void +Microsoft.AspNetCore.Components.LayoutView.Layout.get -> System.Type! +Microsoft.AspNetCore.Components.LayoutView.Layout.set -> void +Microsoft.AspNetCore.Components.LayoutView.LayoutView() -> void +Microsoft.AspNetCore.Components.LayoutView.SetParametersAsync(Microsoft.AspNetCore.Components.ParameterView parameters) -> System.Threading.Tasks.Task! +Microsoft.AspNetCore.Components.LocationChangeException +Microsoft.AspNetCore.Components.LocationChangeException.LocationChangeException(string! message, System.Exception! innerException) -> void +Microsoft.AspNetCore.Components.MarkupString +Microsoft.AspNetCore.Components.MarkupString.MarkupString(string! value) -> void +Microsoft.AspNetCore.Components.MarkupString.Value.get -> string! +Microsoft.AspNetCore.Components.NavigationException +Microsoft.AspNetCore.Components.NavigationException.Location.get -> string! +Microsoft.AspNetCore.Components.NavigationException.NavigationException(string! uri) -> void +Microsoft.AspNetCore.Components.NavigationManager +Microsoft.AspNetCore.Components.NavigationManager.BaseUri.get -> string! +Microsoft.AspNetCore.Components.NavigationManager.BaseUri.set -> void +Microsoft.AspNetCore.Components.NavigationManager.Initialize(string! baseUri, string! uri) -> void +Microsoft.AspNetCore.Components.NavigationManager.LocationChanged -> System.EventHandler! +Microsoft.AspNetCore.Components.NavigationManager.NavigateTo(string! uri, bool forceLoad = false) -> void +Microsoft.AspNetCore.Components.NavigationManager.NavigationManager() -> void +Microsoft.AspNetCore.Components.NavigationManager.NotifyLocationChanged(bool isInterceptedLink) -> void +Microsoft.AspNetCore.Components.NavigationManager.ToAbsoluteUri(string! relativeUri) -> System.Uri! +Microsoft.AspNetCore.Components.NavigationManager.ToBaseRelativePath(string! uri) -> string! +Microsoft.AspNetCore.Components.NavigationManager.Uri.get -> string! +Microsoft.AspNetCore.Components.NavigationManager.Uri.set -> void +Microsoft.AspNetCore.Components.OwningComponentBase +Microsoft.AspNetCore.Components.OwningComponentBase.IsDisposed.get -> bool +Microsoft.AspNetCore.Components.OwningComponentBase.OwningComponentBase() -> void +Microsoft.AspNetCore.Components.OwningComponentBase.ScopedServices.get -> System.IServiceProvider! +Microsoft.AspNetCore.Components.OwningComponentBase +Microsoft.AspNetCore.Components.OwningComponentBase.OwningComponentBase() -> void +Microsoft.AspNetCore.Components.OwningComponentBase.Service.get -> TService +Microsoft.AspNetCore.Components.ParameterAttribute +Microsoft.AspNetCore.Components.ParameterAttribute.CaptureUnmatchedValues.get -> bool +Microsoft.AspNetCore.Components.ParameterAttribute.CaptureUnmatchedValues.set -> void +Microsoft.AspNetCore.Components.ParameterAttribute.ParameterAttribute() -> void +Microsoft.AspNetCore.Components.ParameterValue +Microsoft.AspNetCore.Components.ParameterValue.Cascading.get -> bool +Microsoft.AspNetCore.Components.ParameterValue.Name.get -> string! +Microsoft.AspNetCore.Components.ParameterValue.Value.get -> object! +Microsoft.AspNetCore.Components.ParameterView +Microsoft.AspNetCore.Components.ParameterView.Enumerator +Microsoft.AspNetCore.Components.ParameterView.Enumerator.Current.get -> Microsoft.AspNetCore.Components.ParameterValue +Microsoft.AspNetCore.Components.ParameterView.Enumerator.MoveNext() -> bool +Microsoft.AspNetCore.Components.ParameterView.GetEnumerator() -> Microsoft.AspNetCore.Components.ParameterView.Enumerator +Microsoft.AspNetCore.Components.ParameterView.GetValueOrDefault(string! parameterName) -> TValue +Microsoft.AspNetCore.Components.ParameterView.GetValueOrDefault(string! parameterName, TValue defaultValue) -> TValue +Microsoft.AspNetCore.Components.ParameterView.SetParameterProperties(object! target) -> void +Microsoft.AspNetCore.Components.ParameterView.ToDictionary() -> System.Collections.Generic.IReadOnlyDictionary! +Microsoft.AspNetCore.Components.ParameterView.TryGetValue(string! parameterName, out TValue result) -> bool +Microsoft.AspNetCore.Components.RenderFragment +Microsoft.AspNetCore.Components.RenderFragment +Microsoft.AspNetCore.Components.RenderHandle +Microsoft.AspNetCore.Components.RenderHandle.Dispatcher.get -> Microsoft.AspNetCore.Components.Dispatcher! +Microsoft.AspNetCore.Components.RenderHandle.IsInitialized.get -> bool +Microsoft.AspNetCore.Components.RenderHandle.Render(Microsoft.AspNetCore.Components.RenderFragment! renderFragment) -> void +Microsoft.AspNetCore.Components.RenderTree.ArrayBuilderSegment +Microsoft.AspNetCore.Components.RenderTree.ArrayBuilderSegment.Array.get -> T[]! +Microsoft.AspNetCore.Components.RenderTree.ArrayBuilderSegment.Count.get -> int +Microsoft.AspNetCore.Components.RenderTree.ArrayBuilderSegment.Offset.get -> int +Microsoft.AspNetCore.Components.RenderTree.ArrayBuilderSegment.this[int index].get -> T +Microsoft.AspNetCore.Components.RenderTree.ArrayRange +Microsoft.AspNetCore.Components.RenderTree.ArrayRange.ArrayRange(T[]! array, int count) -> void +Microsoft.AspNetCore.Components.RenderTree.ArrayRange.Clone() -> Microsoft.AspNetCore.Components.RenderTree.ArrayRange +Microsoft.AspNetCore.Components.RenderTree.EventFieldInfo +Microsoft.AspNetCore.Components.RenderTree.EventFieldInfo.ComponentId.get -> int +Microsoft.AspNetCore.Components.RenderTree.EventFieldInfo.ComponentId.set -> void +Microsoft.AspNetCore.Components.RenderTree.EventFieldInfo.EventFieldInfo() -> void +Microsoft.AspNetCore.Components.RenderTree.EventFieldInfo.FieldValue.get -> object! +Microsoft.AspNetCore.Components.RenderTree.EventFieldInfo.FieldValue.set -> void +Microsoft.AspNetCore.Components.RenderTree.RenderBatch +Microsoft.AspNetCore.Components.RenderTree.RenderBatch.DisposedComponentIDs.get -> Microsoft.AspNetCore.Components.RenderTree.ArrayRange +Microsoft.AspNetCore.Components.RenderTree.RenderBatch.DisposedEventHandlerIDs.get -> Microsoft.AspNetCore.Components.RenderTree.ArrayRange +Microsoft.AspNetCore.Components.RenderTree.RenderBatch.ReferenceFrames.get -> Microsoft.AspNetCore.Components.RenderTree.ArrayRange +Microsoft.AspNetCore.Components.RenderTree.RenderBatch.UpdatedComponents.get -> Microsoft.AspNetCore.Components.RenderTree.ArrayRange +Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiff +Microsoft.AspNetCore.Components.RenderTree.RenderTreeEdit +Microsoft.AspNetCore.Components.RenderTree.RenderTreeEditType +Microsoft.AspNetCore.Components.RenderTree.RenderTreeEditType.PermutationListEnd = 10 -> Microsoft.AspNetCore.Components.RenderTree.RenderTreeEditType +Microsoft.AspNetCore.Components.RenderTree.RenderTreeEditType.PermutationListEntry = 9 -> Microsoft.AspNetCore.Components.RenderTree.RenderTreeEditType +Microsoft.AspNetCore.Components.RenderTree.RenderTreeEditType.PrependFrame = 1 -> Microsoft.AspNetCore.Components.RenderTree.RenderTreeEditType +Microsoft.AspNetCore.Components.RenderTree.RenderTreeEditType.RemoveAttribute = 4 -> Microsoft.AspNetCore.Components.RenderTree.RenderTreeEditType +Microsoft.AspNetCore.Components.RenderTree.RenderTreeEditType.RemoveFrame = 2 -> Microsoft.AspNetCore.Components.RenderTree.RenderTreeEditType +Microsoft.AspNetCore.Components.RenderTree.RenderTreeEditType.SetAttribute = 3 -> Microsoft.AspNetCore.Components.RenderTree.RenderTreeEditType +Microsoft.AspNetCore.Components.RenderTree.RenderTreeEditType.StepIn = 6 -> Microsoft.AspNetCore.Components.RenderTree.RenderTreeEditType +Microsoft.AspNetCore.Components.RenderTree.RenderTreeEditType.StepOut = 7 -> Microsoft.AspNetCore.Components.RenderTree.RenderTreeEditType +Microsoft.AspNetCore.Components.RenderTree.RenderTreeEditType.UpdateMarkup = 8 -> Microsoft.AspNetCore.Components.RenderTree.RenderTreeEditType +Microsoft.AspNetCore.Components.RenderTree.RenderTreeEditType.UpdateText = 5 -> Microsoft.AspNetCore.Components.RenderTree.RenderTreeEditType +Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrame +Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrame.AttributeEventHandlerId.get -> ulong +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.AddAttribute(int sequence, string! name, string? value) -> void +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.AddComponentReferenceCapture(int sequence, System.Action! componentReferenceCaptureAction) -> void +Microsoft.AspNetCore.Components.Routing.Router.OnNavigateAsync.get -> Microsoft.AspNetCore.Components.EventCallback +Microsoft.AspNetCore.Components.Routing.Router.OnNavigateAsync.set -> void +~Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrame.AttributeEventUpdatesAttributeName.get -> string +~Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrame.AttributeName.get -> string +~Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrame.AttributeValue.get -> object +~Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrame.Component.get -> Microsoft.AspNetCore.Components.IComponent +Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrame.ComponentId.get -> int +~Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrame.ComponentKey.get -> object +~Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrame.ComponentReferenceCaptureAction.get -> System.Action +Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrame.ComponentReferenceCaptureParentFrameIndex.get -> int +Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrame.ComponentSubtreeLength.get -> int +~Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrame.ComponentType.get -> System.Type +~Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrame.ElementKey.get -> object +~Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrame.ElementName.get -> string +~Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrame.ElementReferenceCaptureAction.get -> System.Action +~Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrame.ElementReferenceCaptureId.get -> string +Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrame.ElementSubtreeLength.get -> int +Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrame.FrameType.get -> Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrameType +~Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrame.MarkupContent.get -> string +Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrame.RegionSubtreeLength.get -> int +Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrame.Sequence.get -> int +~Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrame.TextContent.get -> string +Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrameType +Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrameType.Attribute = 3 -> Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrameType +Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrameType.Component = 4 -> Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrameType +Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrameType.ComponentReferenceCapture = 7 -> Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrameType +Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrameType.Element = 1 -> Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrameType +Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrameType.ElementReferenceCapture = 6 -> Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrameType +Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrameType.Markup = 8 -> Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrameType +Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrameType.None = 0 -> Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrameType +Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrameType.Region = 5 -> Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrameType +Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrameType.Text = 2 -> Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrameType +Microsoft.AspNetCore.Components.RenderTree.Renderer +Microsoft.AspNetCore.Components.RenderTree.Renderer.AssignRootComponentId(Microsoft.AspNetCore.Components.IComponent! component) -> int +Microsoft.AspNetCore.Components.RenderTree.Renderer.Dispose() -> void +Microsoft.AspNetCore.Components.RenderTree.Renderer.ElementReferenceContext.get -> Microsoft.AspNetCore.Components.ElementReferenceContext? +Microsoft.AspNetCore.Components.RenderTree.Renderer.ElementReferenceContext.set -> void +Microsoft.AspNetCore.Components.RenderTree.Renderer.GetCurrentRenderTreeFrames(int componentId) -> Microsoft.AspNetCore.Components.RenderTree.ArrayRange +Microsoft.AspNetCore.Components.RenderTree.Renderer.InstantiateComponent(System.Type! componentType) -> Microsoft.AspNetCore.Components.IComponent! +Microsoft.AspNetCore.Components.RenderTree.Renderer.RenderRootComponentAsync(int componentId) -> System.Threading.Tasks.Task! +Microsoft.AspNetCore.Components.RenderTree.Renderer.RenderRootComponentAsync(int componentId, Microsoft.AspNetCore.Components.ParameterView initialParameters) -> System.Threading.Tasks.Task! +Microsoft.AspNetCore.Components.RenderTree.Renderer.Renderer(System.IServiceProvider! serviceProvider, Microsoft.Extensions.Logging.ILoggerFactory! loggerFactory) -> void +Microsoft.AspNetCore.Components.RenderTree.Renderer.Renderer(System.IServiceProvider! serviceProvider, Microsoft.Extensions.Logging.ILoggerFactory! loggerFactory, Microsoft.AspNetCore.Components.IComponentActivator! componentActivator) -> void +Microsoft.AspNetCore.Components.RenderTree.Renderer.UnhandledSynchronizationException -> System.UnhandledExceptionEventHandler! +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.AddAttribute(int sequence, Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrame frame) -> void +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.AddAttribute(int sequence, string! name) -> void +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.AddAttribute(int sequence, string! name, Microsoft.AspNetCore.Components.EventCallback value) -> void +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.AddAttribute(int sequence, string! name, System.MulticastDelegate? value) -> void +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.AddAttribute(int sequence, string! name, bool value) -> void +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.AddAttribute(int sequence, string! name, object? value) -> void +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.AddAttribute(int sequence, string! name, Microsoft.AspNetCore.Components.EventCallback value) -> void +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.AddContent(int sequence, Microsoft.AspNetCore.Components.MarkupString markupContent) -> void +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.AddContent(int sequence, Microsoft.AspNetCore.Components.RenderFragment? fragment) -> void +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.AddContent(int sequence, object? textContent) -> void +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.AddContent(int sequence, string? textContent) -> void +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.AddContent(int sequence, Microsoft.AspNetCore.Components.RenderFragment? fragment, TValue value) -> void +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.AddElementReferenceCapture(int sequence, System.Action! elementReferenceCaptureAction) -> void +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.AddMarkupContent(int sequence, string? markupContent) -> void +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.AddMultipleAttributes(int sequence, System.Collections.Generic.IEnumerable>? attributes) -> void +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.Clear() -> void +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.CloseComponent() -> void +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.CloseElement() -> void +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.CloseRegion() -> void +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.GetFrames() -> Microsoft.AspNetCore.Components.RenderTree.ArrayRange +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.OpenComponent(int sequence, System.Type! componentType) -> void +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.OpenComponent(int sequence) -> void +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.OpenElement(int sequence, string! elementName) -> void +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.OpenRegion(int sequence) -> void +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.RenderTreeBuilder() -> void +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.SetKey(object? value) -> void +Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder.SetUpdatesAttributeName(string! updatesAttributeName) -> void +Microsoft.AspNetCore.Components.RouteAttribute +Microsoft.AspNetCore.Components.RouteAttribute.RouteAttribute(string! template) -> void +Microsoft.AspNetCore.Components.RouteAttribute.Template.get -> string! +Microsoft.AspNetCore.Components.RouteData +Microsoft.AspNetCore.Components.RouteData.PageType.get -> System.Type! +Microsoft.AspNetCore.Components.RouteData.RouteData(System.Type! pageType, System.Collections.Generic.IReadOnlyDictionary! routeValues) -> void +Microsoft.AspNetCore.Components.RouteData.RouteValues.get -> System.Collections.Generic.IReadOnlyDictionary! +Microsoft.AspNetCore.Components.RouteView +Microsoft.AspNetCore.Components.RouteView.Attach(Microsoft.AspNetCore.Components.RenderHandle renderHandle) -> void +Microsoft.AspNetCore.Components.RouteView.DefaultLayout.get -> System.Type! +Microsoft.AspNetCore.Components.RouteView.DefaultLayout.set -> void +Microsoft.AspNetCore.Components.RouteView.RouteData.get -> Microsoft.AspNetCore.Components.RouteData! +Microsoft.AspNetCore.Components.RouteView.RouteData.set -> void +Microsoft.AspNetCore.Components.RouteView.RouteView() -> void +Microsoft.AspNetCore.Components.RouteView.SetParametersAsync(Microsoft.AspNetCore.Components.ParameterView parameters) -> System.Threading.Tasks.Task! +Microsoft.AspNetCore.Components.Routing.IHostEnvironmentNavigationManager +Microsoft.AspNetCore.Components.Routing.IHostEnvironmentNavigationManager.Initialize(string! baseUri, string! uri) -> void +Microsoft.AspNetCore.Components.Routing.INavigationInterception +Microsoft.AspNetCore.Components.Routing.INavigationInterception.EnableNavigationInterceptionAsync() -> System.Threading.Tasks.Task! +Microsoft.AspNetCore.Components.Routing.LocationChangedEventArgs +Microsoft.AspNetCore.Components.Routing.LocationChangedEventArgs.IsNavigationIntercepted.get -> bool +Microsoft.AspNetCore.Components.Routing.LocationChangedEventArgs.Location.get -> string! +Microsoft.AspNetCore.Components.Routing.LocationChangedEventArgs.LocationChangedEventArgs(string! location, bool isNavigationIntercepted) -> void +Microsoft.AspNetCore.Components.Routing.NavigationContext +Microsoft.AspNetCore.Components.Routing.NavigationContext.CancellationToken.get -> System.Threading.CancellationToken +Microsoft.AspNetCore.Components.Routing.NavigationContext.Path.get -> string! +Microsoft.AspNetCore.Components.Routing.Router +Microsoft.AspNetCore.Components.Routing.Router.AdditionalAssemblies.get -> System.Collections.Generic.IEnumerable! +Microsoft.AspNetCore.Components.Routing.Router.AdditionalAssemblies.set -> void +Microsoft.AspNetCore.Components.Routing.Router.AppAssembly.get -> System.Reflection.Assembly! +Microsoft.AspNetCore.Components.Routing.Router.AppAssembly.set -> void +Microsoft.AspNetCore.Components.Routing.Router.Attach(Microsoft.AspNetCore.Components.RenderHandle renderHandle) -> void +Microsoft.AspNetCore.Components.Routing.Router.Dispose() -> void +Microsoft.AspNetCore.Components.Routing.Router.Found.get -> Microsoft.AspNetCore.Components.RenderFragment! +Microsoft.AspNetCore.Components.Routing.Router.Found.set -> void +Microsoft.AspNetCore.Components.Routing.Router.Navigating.get -> Microsoft.AspNetCore.Components.RenderFragment? +Microsoft.AspNetCore.Components.Routing.Router.Navigating.set -> void +Microsoft.AspNetCore.Components.Routing.Router.NotFound.get -> Microsoft.AspNetCore.Components.RenderFragment! +Microsoft.AspNetCore.Components.Routing.Router.NotFound.set -> void +Microsoft.AspNetCore.Components.Routing.Router.Router() -> void +Microsoft.AspNetCore.Components.Routing.Router.SetParametersAsync(Microsoft.AspNetCore.Components.ParameterView parameters) -> System.Threading.Tasks.Task! +abstract Microsoft.AspNetCore.Components.Dispatcher.CheckAccess() -> bool +abstract Microsoft.AspNetCore.Components.Dispatcher.InvokeAsync(System.Action! workItem) -> System.Threading.Tasks.Task! +abstract Microsoft.AspNetCore.Components.Dispatcher.InvokeAsync(System.Func! workItem) -> System.Threading.Tasks.Task! +abstract Microsoft.AspNetCore.Components.Dispatcher.InvokeAsync(System.Func!>! workItem) -> System.Threading.Tasks.Task! +abstract Microsoft.AspNetCore.Components.Dispatcher.InvokeAsync(System.Func! workItem) -> System.Threading.Tasks.Task! +abstract Microsoft.AspNetCore.Components.NavigationManager.NavigateToCore(string! uri, bool forceLoad) -> void +abstract Microsoft.AspNetCore.Components.RenderTree.Renderer.Dispatcher.get -> Microsoft.AspNetCore.Components.Dispatcher! +abstract Microsoft.AspNetCore.Components.RenderTree.Renderer.HandleException(System.Exception! exception) -> void +abstract Microsoft.AspNetCore.Components.RenderTree.Renderer.UpdateDisplayAsync(in Microsoft.AspNetCore.Components.RenderTree.RenderBatch renderBatch) -> System.Threading.Tasks.Task! +override Microsoft.AspNetCore.Components.MarkupString.ToString() -> string! +~override Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrame.ToString() -> string +readonly Microsoft.AspNetCore.Components.RenderTree.ArrayRange.Array -> T[]! +readonly Microsoft.AspNetCore.Components.RenderTree.ArrayRange.Count -> int +readonly Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiff.ComponentId -> int +readonly Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiff.Edits -> Microsoft.AspNetCore.Components.RenderTree.ArrayBuilderSegment +readonly Microsoft.AspNetCore.Components.RenderTree.RenderTreeEdit.MoveToSiblingIndex -> int +readonly Microsoft.AspNetCore.Components.RenderTree.RenderTreeEdit.ReferenceFrameIndex -> int +readonly Microsoft.AspNetCore.Components.RenderTree.RenderTreeEdit.RemovedAttributeName -> string! +readonly Microsoft.AspNetCore.Components.RenderTree.RenderTreeEdit.SiblingIndex -> int +readonly Microsoft.AspNetCore.Components.RenderTree.RenderTreeEdit.Type -> Microsoft.AspNetCore.Components.RenderTree.RenderTreeEditType +static Microsoft.AspNetCore.Components.BindConverter.FormatValue(System.DateTime value, System.Globalization.CultureInfo? culture = null) -> string! +static Microsoft.AspNetCore.Components.BindConverter.FormatValue(System.DateTime value, string! format, System.Globalization.CultureInfo? culture = null) -> string! +static Microsoft.AspNetCore.Components.BindConverter.FormatValue(System.DateTime? value, System.Globalization.CultureInfo? culture = null) -> string? +static Microsoft.AspNetCore.Components.BindConverter.FormatValue(System.DateTime? value, string? format, System.Globalization.CultureInfo? culture = null) -> string? +static Microsoft.AspNetCore.Components.BindConverter.FormatValue(System.DateTimeOffset value, System.Globalization.CultureInfo? culture = null) -> string! +static Microsoft.AspNetCore.Components.BindConverter.FormatValue(System.DateTimeOffset value, string! format, System.Globalization.CultureInfo? culture = null) -> string! +static Microsoft.AspNetCore.Components.BindConverter.FormatValue(System.DateTimeOffset? value, System.Globalization.CultureInfo? culture = null) -> string? +static Microsoft.AspNetCore.Components.BindConverter.FormatValue(System.DateTimeOffset? value, string! format, System.Globalization.CultureInfo? culture = null) -> string? +static Microsoft.AspNetCore.Components.BindConverter.FormatValue(bool value, System.Globalization.CultureInfo? culture = null) -> bool +static Microsoft.AspNetCore.Components.BindConverter.FormatValue(bool? value, System.Globalization.CultureInfo? culture = null) -> bool? +static Microsoft.AspNetCore.Components.BindConverter.FormatValue(decimal value, System.Globalization.CultureInfo? culture = null) -> string! +static Microsoft.AspNetCore.Components.BindConverter.FormatValue(decimal? value, System.Globalization.CultureInfo? culture = null) -> string? +static Microsoft.AspNetCore.Components.BindConverter.FormatValue(double value, System.Globalization.CultureInfo? culture = null) -> string? +static Microsoft.AspNetCore.Components.BindConverter.FormatValue(double? value, System.Globalization.CultureInfo? culture = null) -> string? +static Microsoft.AspNetCore.Components.BindConverter.FormatValue(float value, System.Globalization.CultureInfo? culture = null) -> string! +static Microsoft.AspNetCore.Components.BindConverter.FormatValue(float? value, System.Globalization.CultureInfo? culture = null) -> string? +static Microsoft.AspNetCore.Components.BindConverter.FormatValue(int value, System.Globalization.CultureInfo? culture = null) -> string? +static Microsoft.AspNetCore.Components.BindConverter.FormatValue(int? value, System.Globalization.CultureInfo? culture = null) -> string? +static Microsoft.AspNetCore.Components.BindConverter.FormatValue(long value, System.Globalization.CultureInfo? culture = null) -> string! +static Microsoft.AspNetCore.Components.BindConverter.FormatValue(long? value, System.Globalization.CultureInfo? culture = null) -> string? +static Microsoft.AspNetCore.Components.BindConverter.FormatValue(short value, System.Globalization.CultureInfo? culture = null) -> string! +static Microsoft.AspNetCore.Components.BindConverter.FormatValue(short? value, System.Globalization.CultureInfo? culture = null) -> string? +static Microsoft.AspNetCore.Components.BindConverter.FormatValue(string? value, System.Globalization.CultureInfo? culture = null) -> string? +static Microsoft.AspNetCore.Components.BindConverter.FormatValue(T value, System.Globalization.CultureInfo? culture = null) -> object? +static Microsoft.AspNetCore.Components.BindConverter.TryConvertTo(object? obj, System.Globalization.CultureInfo? culture, out T value) -> bool +static Microsoft.AspNetCore.Components.BindConverter.TryConvertToBool(object? obj, System.Globalization.CultureInfo? culture, out bool value) -> bool +static Microsoft.AspNetCore.Components.BindConverter.TryConvertToDateTime(object? obj, System.Globalization.CultureInfo? culture, out System.DateTime value) -> bool +static Microsoft.AspNetCore.Components.BindConverter.TryConvertToDateTime(object? obj, System.Globalization.CultureInfo? culture, string! format, out System.DateTime value) -> bool +static Microsoft.AspNetCore.Components.BindConverter.TryConvertToDateTimeOffset(object? obj, System.Globalization.CultureInfo? culture, out System.DateTimeOffset value) -> bool +static Microsoft.AspNetCore.Components.BindConverter.TryConvertToDateTimeOffset(object? obj, System.Globalization.CultureInfo? culture, string! format, out System.DateTimeOffset value) -> bool +static Microsoft.AspNetCore.Components.BindConverter.TryConvertToDecimal(object? obj, System.Globalization.CultureInfo? culture, out decimal value) -> bool +static Microsoft.AspNetCore.Components.BindConverter.TryConvertToDouble(object? obj, System.Globalization.CultureInfo? culture, out double value) -> bool +static Microsoft.AspNetCore.Components.BindConverter.TryConvertToFloat(object? obj, System.Globalization.CultureInfo? culture, out float value) -> bool +static Microsoft.AspNetCore.Components.BindConverter.TryConvertToInt(object? obj, System.Globalization.CultureInfo? culture, out int value) -> bool +static Microsoft.AspNetCore.Components.BindConverter.TryConvertToLong(object? obj, System.Globalization.CultureInfo? culture, out long value) -> bool +static Microsoft.AspNetCore.Components.BindConverter.TryConvertToNullableBool(object? obj, System.Globalization.CultureInfo? culture, out bool? value) -> bool +static Microsoft.AspNetCore.Components.BindConverter.TryConvertToNullableDateTime(object? obj, System.Globalization.CultureInfo? culture, out System.DateTime? value) -> bool +static Microsoft.AspNetCore.Components.BindConverter.TryConvertToNullableDateTime(object? obj, System.Globalization.CultureInfo? culture, string! format, out System.DateTime? value) -> bool +static Microsoft.AspNetCore.Components.BindConverter.TryConvertToNullableDateTimeOffset(object? obj, System.Globalization.CultureInfo? culture, out System.DateTimeOffset? value) -> bool +static Microsoft.AspNetCore.Components.BindConverter.TryConvertToNullableDateTimeOffset(object? obj, System.Globalization.CultureInfo? culture, string! format, out System.DateTimeOffset? value) -> bool +static Microsoft.AspNetCore.Components.BindConverter.TryConvertToNullableDecimal(object? obj, System.Globalization.CultureInfo? culture, out decimal? value) -> bool +static Microsoft.AspNetCore.Components.BindConverter.TryConvertToNullableDouble(object? obj, System.Globalization.CultureInfo? culture, out double? value) -> bool +static Microsoft.AspNetCore.Components.BindConverter.TryConvertToNullableFloat(object? obj, System.Globalization.CultureInfo? culture, out float? value) -> bool +static Microsoft.AspNetCore.Components.BindConverter.TryConvertToNullableInt(object? obj, System.Globalization.CultureInfo? culture, out int? value) -> bool +static Microsoft.AspNetCore.Components.BindConverter.TryConvertToNullableLong(object? obj, System.Globalization.CultureInfo? culture, out long? value) -> bool +static Microsoft.AspNetCore.Components.BindConverter.TryConvertToNullableShort(object? obj, System.Globalization.CultureInfo? culture, out short? value) -> bool +static Microsoft.AspNetCore.Components.BindConverter.TryConvertToShort(object? obj, System.Globalization.CultureInfo? culture, out short value) -> bool +static Microsoft.AspNetCore.Components.BindConverter.TryConvertToString(object? obj, System.Globalization.CultureInfo? culture, out string? value) -> bool +static Microsoft.AspNetCore.Components.CompilerServices.RuntimeHelpers.CreateInferredEventCallback(object! receiver, System.Action! callback, T value) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.CompilerServices.RuntimeHelpers.CreateInferredEventCallback(object! receiver, System.Func! callback, T value) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.CompilerServices.RuntimeHelpers.TypeCheck(T value) -> T +static Microsoft.AspNetCore.Components.Dispatcher.CreateDefault() -> Microsoft.AspNetCore.Components.Dispatcher! +static Microsoft.AspNetCore.Components.EventCallbackFactoryBinderExtensions.CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! setter, System.DateTime existingValue, System.Globalization.CultureInfo? culture = null) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.EventCallbackFactoryBinderExtensions.CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! setter, System.DateTime existingValue, string! format, System.Globalization.CultureInfo? culture = null) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.EventCallbackFactoryBinderExtensions.CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! setter, System.DateTime? existingValue, System.Globalization.CultureInfo? culture = null) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.EventCallbackFactoryBinderExtensions.CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! setter, System.DateTime? existingValue, string! format, System.Globalization.CultureInfo? culture = null) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.EventCallbackFactoryBinderExtensions.CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! setter, System.DateTimeOffset existingValue, System.Globalization.CultureInfo? culture = null) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.EventCallbackFactoryBinderExtensions.CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! setter, System.DateTimeOffset existingValue, string! format, System.Globalization.CultureInfo? culture = null) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.EventCallbackFactoryBinderExtensions.CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! setter, System.DateTimeOffset? existingValue, System.Globalization.CultureInfo? culture = null) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.EventCallbackFactoryBinderExtensions.CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! setter, System.DateTimeOffset? existingValue, string! format, System.Globalization.CultureInfo? culture = null) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.EventCallbackFactoryBinderExtensions.CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! setter, bool existingValue, System.Globalization.CultureInfo? culture = null) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.EventCallbackFactoryBinderExtensions.CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! setter, bool? existingValue, System.Globalization.CultureInfo? culture = null) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.EventCallbackFactoryBinderExtensions.CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! setter, decimal existingValue, System.Globalization.CultureInfo? culture = null) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.EventCallbackFactoryBinderExtensions.CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! setter, decimal? existingValue, System.Globalization.CultureInfo? culture = null) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.EventCallbackFactoryBinderExtensions.CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! setter, double existingValue, System.Globalization.CultureInfo? culture = null) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.EventCallbackFactoryBinderExtensions.CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! setter, double? existingValue, System.Globalization.CultureInfo? culture = null) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.EventCallbackFactoryBinderExtensions.CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! setter, float existingValue, System.Globalization.CultureInfo? culture = null) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.EventCallbackFactoryBinderExtensions.CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! setter, float? existingValue, System.Globalization.CultureInfo? culture = null) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.EventCallbackFactoryBinderExtensions.CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! setter, int existingValue, System.Globalization.CultureInfo? culture = null) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.EventCallbackFactoryBinderExtensions.CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! setter, int? existingValue, System.Globalization.CultureInfo? culture = null) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.EventCallbackFactoryBinderExtensions.CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! setter, long existingValue, System.Globalization.CultureInfo? culture = null) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.EventCallbackFactoryBinderExtensions.CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! setter, long? existingValue, System.Globalization.CultureInfo? culture = null) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.EventCallbackFactoryBinderExtensions.CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! setter, short existingValue, System.Globalization.CultureInfo? culture = null) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.EventCallbackFactoryBinderExtensions.CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! setter, short? existingValue, System.Globalization.CultureInfo? culture = null) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.EventCallbackFactoryBinderExtensions.CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! setter, string! existingValue, System.Globalization.CultureInfo? culture = null) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.EventCallbackFactoryBinderExtensions.CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! setter, T existingValue, System.Globalization.CultureInfo? culture = null) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.EventCallbackFactoryEventArgsExtensions.Create(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! callback) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.EventCallbackFactoryEventArgsExtensions.Create(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! callback) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.EventCallbackFactoryEventArgsExtensions.Create(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Func! callback) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.EventCallbackFactoryEventArgsExtensions.Create(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Func! callback) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.MarkupString.explicit operator Microsoft.AspNetCore.Components.MarkupString(string! value) -> Microsoft.AspNetCore.Components.MarkupString +static Microsoft.AspNetCore.Components.ParameterView.Empty.get -> Microsoft.AspNetCore.Components.ParameterView +static Microsoft.AspNetCore.Components.ParameterView.FromDictionary(System.Collections.Generic.IDictionary! parameters) -> Microsoft.AspNetCore.Components.ParameterView +static readonly Microsoft.AspNetCore.Components.EventCallback.Empty -> Microsoft.AspNetCore.Components.EventCallback +static readonly Microsoft.AspNetCore.Components.EventCallback.Factory -> Microsoft.AspNetCore.Components.EventCallbackFactory! +static readonly Microsoft.AspNetCore.Components.EventCallback.Empty -> Microsoft.AspNetCore.Components.EventCallback +static readonly Microsoft.AspNetCore.Components.EventCallbackWorkItem.Empty -> Microsoft.AspNetCore.Components.EventCallbackWorkItem +virtual Microsoft.AspNetCore.Components.ComponentBase.BuildRenderTree(Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder! builder) -> void +virtual Microsoft.AspNetCore.Components.ComponentBase.OnAfterRender(bool firstRender) -> void +virtual Microsoft.AspNetCore.Components.ComponentBase.OnAfterRenderAsync(bool firstRender) -> System.Threading.Tasks.Task! +virtual Microsoft.AspNetCore.Components.ComponentBase.OnInitialized() -> void +virtual Microsoft.AspNetCore.Components.ComponentBase.OnInitializedAsync() -> System.Threading.Tasks.Task! +virtual Microsoft.AspNetCore.Components.ComponentBase.OnParametersSet() -> void +virtual Microsoft.AspNetCore.Components.ComponentBase.OnParametersSetAsync() -> System.Threading.Tasks.Task! +virtual Microsoft.AspNetCore.Components.ComponentBase.SetParametersAsync(Microsoft.AspNetCore.Components.ParameterView parameters) -> System.Threading.Tasks.Task! +virtual Microsoft.AspNetCore.Components.ComponentBase.ShouldRender() -> bool +virtual Microsoft.AspNetCore.Components.NavigationManager.EnsureInitialized() -> void +virtual Microsoft.AspNetCore.Components.OwningComponentBase.Dispose(bool disposing) -> void +virtual Microsoft.AspNetCore.Components.RenderTree.Renderer.DispatchEventAsync(ulong eventHandlerId, Microsoft.AspNetCore.Components.RenderTree.EventFieldInfo! fieldInfo, System.EventArgs! eventArgs) -> System.Threading.Tasks.Task! +virtual Microsoft.AspNetCore.Components.RenderTree.Renderer.Dispose(bool disposing) -> void +virtual Microsoft.AspNetCore.Components.RenderTree.Renderer.ProcessPendingRender() -> void +virtual Microsoft.AspNetCore.Components.RouteView.Render(Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder! builder) -> void diff --git a/src/Components/Forms/src/PublicAPI.Shipped.txt b/src/Components/Forms/src/PublicAPI.Shipped.txt new file mode 100644 index 000000000000..ab058de62d44 --- /dev/null +++ b/src/Components/Forms/src/PublicAPI.Shipped.txt @@ -0,0 +1 @@ +#nullable enable diff --git a/src/Components/Forms/src/PublicAPI.Unshipped.txt b/src/Components/Forms/src/PublicAPI.Unshipped.txt new file mode 100644 index 000000000000..fcd59a88b3bd --- /dev/null +++ b/src/Components/Forms/src/PublicAPI.Unshipped.txt @@ -0,0 +1,59 @@ +#nullable enable +Microsoft.AspNetCore.Components.Forms.DataAnnotationsValidator +Microsoft.AspNetCore.Components.Forms.DataAnnotationsValidator.DataAnnotationsValidator() -> void +Microsoft.AspNetCore.Components.Forms.EditContext +Microsoft.AspNetCore.Components.Forms.EditContext.EditContext(object! model) -> void +Microsoft.AspNetCore.Components.Forms.EditContext.Field(string! fieldName) -> Microsoft.AspNetCore.Components.Forms.FieldIdentifier +Microsoft.AspNetCore.Components.Forms.EditContext.GetValidationMessages() -> System.Collections.Generic.IEnumerable! +Microsoft.AspNetCore.Components.Forms.EditContext.GetValidationMessages(Microsoft.AspNetCore.Components.Forms.FieldIdentifier fieldIdentifier) -> System.Collections.Generic.IEnumerable! +Microsoft.AspNetCore.Components.Forms.EditContext.GetValidationMessages(System.Linq.Expressions.Expression!>! accessor) -> System.Collections.Generic.IEnumerable! +Microsoft.AspNetCore.Components.Forms.EditContext.IsModified() -> bool +Microsoft.AspNetCore.Components.Forms.EditContext.IsModified(System.Linq.Expressions.Expression!>! accessor) -> bool +Microsoft.AspNetCore.Components.Forms.EditContext.IsModified(in Microsoft.AspNetCore.Components.Forms.FieldIdentifier fieldIdentifier) -> bool +Microsoft.AspNetCore.Components.Forms.EditContext.MarkAsUnmodified() -> void +Microsoft.AspNetCore.Components.Forms.EditContext.MarkAsUnmodified(in Microsoft.AspNetCore.Components.Forms.FieldIdentifier fieldIdentifier) -> void +Microsoft.AspNetCore.Components.Forms.EditContext.Model.get -> object! +Microsoft.AspNetCore.Components.Forms.EditContext.NotifyFieldChanged(in Microsoft.AspNetCore.Components.Forms.FieldIdentifier fieldIdentifier) -> void +Microsoft.AspNetCore.Components.Forms.EditContext.NotifyValidationStateChanged() -> void +Microsoft.AspNetCore.Components.Forms.EditContext.OnFieldChanged -> System.EventHandler? +Microsoft.AspNetCore.Components.Forms.EditContext.OnValidationRequested -> System.EventHandler? +Microsoft.AspNetCore.Components.Forms.EditContext.OnValidationStateChanged -> System.EventHandler? +Microsoft.AspNetCore.Components.Forms.EditContext.Properties.get -> Microsoft.AspNetCore.Components.Forms.EditContextProperties! +Microsoft.AspNetCore.Components.Forms.EditContext.Validate() -> bool +Microsoft.AspNetCore.Components.Forms.EditContextDataAnnotationsExtensions +Microsoft.AspNetCore.Components.Forms.EditContextProperties +Microsoft.AspNetCore.Components.Forms.EditContextProperties.EditContextProperties() -> void +Microsoft.AspNetCore.Components.Forms.EditContextProperties.Remove(object! key) -> bool +Microsoft.AspNetCore.Components.Forms.EditContextProperties.TryGetValue(object! key, out object? value) -> bool +Microsoft.AspNetCore.Components.Forms.EditContextProperties.this[object! key].get -> object! +Microsoft.AspNetCore.Components.Forms.EditContextProperties.this[object! key].set -> void +Microsoft.AspNetCore.Components.Forms.FieldChangedEventArgs +Microsoft.AspNetCore.Components.Forms.FieldChangedEventArgs.FieldChangedEventArgs(in Microsoft.AspNetCore.Components.Forms.FieldIdentifier fieldIdentifier) -> void +Microsoft.AspNetCore.Components.Forms.FieldChangedEventArgs.FieldIdentifier.get -> Microsoft.AspNetCore.Components.Forms.FieldIdentifier +Microsoft.AspNetCore.Components.Forms.FieldIdentifier +Microsoft.AspNetCore.Components.Forms.FieldIdentifier.Equals(Microsoft.AspNetCore.Components.Forms.FieldIdentifier otherIdentifier) -> bool +Microsoft.AspNetCore.Components.Forms.FieldIdentifier.FieldIdentifier(object! model, string! fieldName) -> void +Microsoft.AspNetCore.Components.Forms.FieldIdentifier.FieldName.get -> string! +Microsoft.AspNetCore.Components.Forms.FieldIdentifier.Model.get -> object! +Microsoft.AspNetCore.Components.Forms.ValidationMessageStore +Microsoft.AspNetCore.Components.Forms.ValidationMessageStore.Add(System.Linq.Expressions.Expression!>! accessor, System.Collections.Generic.IEnumerable! messages) -> void +Microsoft.AspNetCore.Components.Forms.ValidationMessageStore.Add(System.Linq.Expressions.Expression!>! accessor, string! message) -> void +Microsoft.AspNetCore.Components.Forms.ValidationMessageStore.Add(in Microsoft.AspNetCore.Components.Forms.FieldIdentifier fieldIdentifier, System.Collections.Generic.IEnumerable! messages) -> void +Microsoft.AspNetCore.Components.Forms.ValidationMessageStore.Add(in Microsoft.AspNetCore.Components.Forms.FieldIdentifier fieldIdentifier, string! message) -> void +Microsoft.AspNetCore.Components.Forms.ValidationMessageStore.Clear() -> void +Microsoft.AspNetCore.Components.Forms.ValidationMessageStore.Clear(System.Linq.Expressions.Expression!>! accessor) -> void +Microsoft.AspNetCore.Components.Forms.ValidationMessageStore.Clear(in Microsoft.AspNetCore.Components.Forms.FieldIdentifier fieldIdentifier) -> void +Microsoft.AspNetCore.Components.Forms.ValidationMessageStore.ValidationMessageStore(Microsoft.AspNetCore.Components.Forms.EditContext! editContext) -> void +Microsoft.AspNetCore.Components.Forms.ValidationMessageStore.this[Microsoft.AspNetCore.Components.Forms.FieldIdentifier fieldIdentifier].get -> System.Collections.Generic.IEnumerable! +Microsoft.AspNetCore.Components.Forms.ValidationMessageStore.this[System.Linq.Expressions.Expression!>! accessor].get -> System.Collections.Generic.IEnumerable! +Microsoft.AspNetCore.Components.Forms.ValidationRequestedEventArgs +Microsoft.AspNetCore.Components.Forms.ValidationRequestedEventArgs.ValidationRequestedEventArgs() -> void +Microsoft.AspNetCore.Components.Forms.ValidationStateChangedEventArgs +Microsoft.AspNetCore.Components.Forms.ValidationStateChangedEventArgs.ValidationStateChangedEventArgs() -> void +override Microsoft.AspNetCore.Components.Forms.DataAnnotationsValidator.OnInitialized() -> void +override Microsoft.AspNetCore.Components.Forms.FieldIdentifier.Equals(object? obj) -> bool +override Microsoft.AspNetCore.Components.Forms.FieldIdentifier.GetHashCode() -> int +static Microsoft.AspNetCore.Components.Forms.EditContextDataAnnotationsExtensions.AddDataAnnotationsValidation(this Microsoft.AspNetCore.Components.Forms.EditContext! editContext) -> Microsoft.AspNetCore.Components.Forms.EditContext! +static Microsoft.AspNetCore.Components.Forms.FieldIdentifier.Create(System.Linq.Expressions.Expression!>! accessor) -> Microsoft.AspNetCore.Components.Forms.FieldIdentifier +static readonly Microsoft.AspNetCore.Components.Forms.ValidationRequestedEventArgs.Empty -> Microsoft.AspNetCore.Components.Forms.ValidationRequestedEventArgs! +static readonly Microsoft.AspNetCore.Components.Forms.ValidationStateChangedEventArgs.Empty -> Microsoft.AspNetCore.Components.Forms.ValidationStateChangedEventArgs! diff --git a/src/Components/Ignitor/src/PublicAPI.Shipped.txt b/src/Components/Ignitor/src/PublicAPI.Shipped.txt new file mode 100644 index 000000000000..ab058de62d44 --- /dev/null +++ b/src/Components/Ignitor/src/PublicAPI.Shipped.txt @@ -0,0 +1 @@ +#nullable enable diff --git a/src/Components/Ignitor/src/PublicAPI.Unshipped.txt b/src/Components/Ignitor/src/PublicAPI.Unshipped.txt new file mode 100644 index 000000000000..a755bf1e0395 --- /dev/null +++ b/src/Components/Ignitor/src/PublicAPI.Unshipped.txt @@ -0,0 +1,193 @@ +#nullable enable +Ignitor.ArrayBuilderSegment +Ignitor.ArrayBuilderSegment.Array.get -> T[]! +Ignitor.ArrayBuilderSegment.Count.get -> int +Ignitor.ArrayBuilderSegment.Offset.get -> int +Ignitor.ArrayBuilderSegment.this[int index].get -> T +Ignitor.ArrayRange +Ignitor.ArrayRange.Clone() -> Ignitor.ArrayRange +Ignitor.BlazorClient +Ignitor.BlazorClient.BlazorClient() -> void +Ignitor.BlazorClient.Cancel() -> void +Ignitor.BlazorClient.CaptureOperations.get -> bool +Ignitor.BlazorClient.CaptureOperations.set -> void +Ignitor.BlazorClient.CircuitId.get -> string? +Ignitor.BlazorClient.ClickAsync(string! elementId, bool expectRenderBatch = true) -> System.Threading.Tasks.Task! +Ignitor.BlazorClient.ConfirmBatch(int batchId, string? error = null) -> System.Threading.Tasks.Task! +Ignitor.BlazorClient.ConfirmRenderBatch.get -> bool +Ignitor.BlazorClient.ConfirmRenderBatch.set -> void +Ignitor.BlazorClient.ConnectAsync(System.Uri! uri, bool connectAutomatically = true, System.Action? configure = null) -> System.Threading.Tasks.Task! +Ignitor.BlazorClient.DefaultConnectionTimeout.get -> System.TimeSpan? +Ignitor.BlazorClient.DefaultConnectionTimeout.set -> void +Ignitor.BlazorClient.DefaultOperationTimeout.get -> System.TimeSpan? +Ignitor.BlazorClient.DefaultOperationTimeout.set -> void +Ignitor.BlazorClient.DisposeAsync() -> System.Threading.Tasks.ValueTask +Ignitor.BlazorClient.DotNetInteropCompletion -> System.Action? +Ignitor.BlazorClient.ExpectCircuitError(System.Func! action, System.TimeSpan? timeout = null) -> System.Threading.Tasks.Task! +Ignitor.BlazorClient.ExpectCircuitErrorAndDisconnect(System.Func! action, System.TimeSpan? timeout = null) -> System.Threading.Tasks.Task<(string? error, System.Exception? exception)>! +Ignitor.BlazorClient.ExpectDisconnect(System.Func! action, System.TimeSpan? timeout = null) -> System.Threading.Tasks.Task! +Ignitor.BlazorClient.ExpectDotNetInterop(System.Func! action, System.TimeSpan? timeout = null) -> System.Threading.Tasks.Task! +Ignitor.BlazorClient.ExpectJSInterop(System.Func! action, System.TimeSpan? timeout = null) -> System.Threading.Tasks.Task! +Ignitor.BlazorClient.ExpectRenderBatch(System.Func! action, System.TimeSpan? timeout = null) -> System.Threading.Tasks.Task! +Ignitor.BlazorClient.FindElementById(string! id) -> Ignitor.ElementNode! +Ignitor.BlazorClient.FormatError.get -> System.Func? +Ignitor.BlazorClient.FormatError.set -> void +Ignitor.BlazorClient.GetPrerenderDescriptors(System.Uri! uri) -> System.Threading.Tasks.Task! +Ignitor.BlazorClient.Hive.get -> Ignitor.ElementHive! +Ignitor.BlazorClient.HubConnection.get -> Microsoft.AspNetCore.SignalR.Client.HubConnection! +Ignitor.BlazorClient.ImplicitWait.get -> bool +Ignitor.BlazorClient.InvokeDotNetMethod(object! callId, string! assemblyName, string! methodIdentifier, object! dotNetObjectId, string! argsJson) -> System.Threading.Tasks.Task! +Ignitor.BlazorClient.JSInterop -> System.Action? +Ignitor.BlazorClient.LoggerProvider.get -> Microsoft.Extensions.Logging.ILoggerProvider! +Ignitor.BlazorClient.LoggerProvider.set -> void +Ignitor.BlazorClient.OnCircuitError -> System.Action? +Ignitor.BlazorClient.Operations.get -> Ignitor.Operations! +Ignitor.BlazorClient.PrepareForNextBatch(System.TimeSpan? timeout) -> System.Threading.Tasks.Task! +Ignitor.BlazorClient.PrepareForNextCircuitError(System.TimeSpan? timeout) -> System.Threading.Tasks.Task! +Ignitor.BlazorClient.PrepareForNextDisconnect(System.TimeSpan? timeout) -> System.Threading.Tasks.Task! +Ignitor.BlazorClient.PrepareForNextDotNetInterop(System.TimeSpan? timeout) -> System.Threading.Tasks.Task! +Ignitor.BlazorClient.PrepareForNextJSInterop(System.TimeSpan? timeout) -> System.Threading.Tasks.Task! +Ignitor.BlazorClient.RenderBatchReceived -> System.Action? +Ignitor.BlazorClient.SelectAsync(string! elementId, string! value) -> System.Threading.Tasks.Task! +Ignitor.CapturedAttachComponentCall +Ignitor.CapturedAttachComponentCall.ComponentId.get -> int +Ignitor.CapturedJSInteropCall +Ignitor.CapturedJSInteropCall.AsyncHandle.get -> int +Ignitor.CapturedJSInteropCall.ResultType.get -> int +Ignitor.CapturedJSInteropCall.TargetInstanceId.get -> long +Ignitor.CapturedRenderBatch +Ignitor.CapturedRenderBatch.Id.get -> int +Ignitor.ComponentNode +Ignitor.ComponentNode.ComponentId.get -> int +Ignitor.ComponentNode.ComponentNode(int componentId) -> void +Ignitor.ComponentState +Ignitor.ComponentState.Component.get -> Ignitor.IComponent? +Ignitor.ComponentState.ComponentId.get -> int +Ignitor.ComponentState.ComponentState(int componentId) -> void +Ignitor.ContainerNode +Ignitor.ContainerNode.Children.get -> System.Collections.Generic.IReadOnlyList! +Ignitor.ContainerNode.ContainerNode() -> void +Ignitor.ContainerNode.CreateAndInsertComponent(int componentId, int childIndex) -> Ignitor.ComponentNode! +Ignitor.ContainerNode.CreateAndInsertContainer(int childIndex) -> Ignitor.ContainerNode! +Ignitor.ContainerNode.InsertLogicalChild(Ignitor.Node! child, int childIndex) -> void +Ignitor.ContainerNode.RemoveLogicalChild(int childIndex) -> void +Ignitor.ElementHive +Ignitor.ElementHive.Components.get -> System.Collections.Generic.Dictionary! +Ignitor.ElementHive.ElementHive() -> void +Ignitor.ElementHive.SerializedValue.get -> string! +Ignitor.ElementHive.TryFindElementById(string! id, out Ignitor.ElementNode? element) -> bool +Ignitor.ElementHive.Update(Ignitor.RenderBatch batch) -> void +Ignitor.ElementNode +Ignitor.ElementNode.Attributes.get -> System.Collections.Generic.IReadOnlyDictionary! +Ignitor.ElementNode.ClickAsync(Microsoft.AspNetCore.SignalR.Client.HubConnection! connection) -> System.Threading.Tasks.Task! +Ignitor.ElementNode.ElementEventDescriptor +Ignitor.ElementNode.ElementEventDescriptor.ElementEventDescriptor(string! eventName, ulong eventId) -> void +Ignitor.ElementNode.ElementEventDescriptor.EventId.get -> ulong +Ignitor.ElementNode.ElementEventDescriptor.EventName.get -> string! +Ignitor.ElementNode.ElementNode(string! tagName) -> void +Ignitor.ElementNode.Events.get -> System.Collections.Generic.IReadOnlyDictionary! +Ignitor.ElementNode.Properties.get -> System.Collections.Generic.IReadOnlyDictionary! +Ignitor.ElementNode.RemoveAttribute(string! key) -> void +Ignitor.ElementNode.SetAttribute(string! key, object! value) -> void +Ignitor.ElementNode.SetEvent(string! eventName, Ignitor.ElementNode.ElementEventDescriptor! descriptor) -> void +Ignitor.ElementNode.SetProperty(string! key, object! value) -> void +Ignitor.ElementNode.TagName.get -> string! +Ignitor.ElementReference +Ignitor.Error +Ignitor.Error.Error() -> void +Ignitor.Error.Stack.get -> string? +Ignitor.Error.Stack.set -> void +Ignitor.IComponent +Ignitor.IgnitorMessagePackHubProtocol +Ignitor.IgnitorMessagePackHubProtocol.IgnitorMessagePackHubProtocol() -> void +Ignitor.MarkupNode +Ignitor.Node +Ignitor.Node.Node() -> void +Ignitor.Node.SerializedValue.get -> string! +Ignitor.Operations +Ignitor.Operations.AttachComponent.get -> System.Collections.Concurrent.ConcurrentQueue! +Ignitor.Operations.Batches.get -> System.Collections.Concurrent.ConcurrentQueue! +Ignitor.Operations.DotNetCompletions.get -> System.Collections.Concurrent.ConcurrentQueue! +Ignitor.Operations.Errors.get -> System.Collections.Concurrent.ConcurrentQueue! +Ignitor.Operations.JSInteropCalls.get -> System.Collections.Concurrent.ConcurrentQueue! +Ignitor.Operations.Operations() -> void +Ignitor.RenderBatch +Ignitor.RenderBatch.DisposedComponentIDs.get -> Ignitor.ArrayRange +Ignitor.RenderBatch.DisposedEventHandlerIDs.get -> Ignitor.ArrayRange +Ignitor.RenderBatch.ReferenceFrames.get -> Ignitor.ArrayRange +Ignitor.RenderBatch.UpdatedComponents.get -> Ignitor.ArrayRange +Ignitor.RenderBatchReader +Ignitor.RenderTreeDiff +Ignitor.RenderTreeEdit +Ignitor.RenderTreeEditType +Ignitor.RenderTreeEditType.PermutationListEnd = 10 -> Ignitor.RenderTreeEditType +Ignitor.RenderTreeEditType.PermutationListEntry = 9 -> Ignitor.RenderTreeEditType +Ignitor.RenderTreeEditType.PrependFrame = 1 -> Ignitor.RenderTreeEditType +Ignitor.RenderTreeEditType.RemoveAttribute = 4 -> Ignitor.RenderTreeEditType +Ignitor.RenderTreeEditType.RemoveFrame = 2 -> Ignitor.RenderTreeEditType +Ignitor.RenderTreeEditType.SetAttribute = 3 -> Ignitor.RenderTreeEditType +Ignitor.RenderTreeEditType.StepIn = 6 -> Ignitor.RenderTreeEditType +Ignitor.RenderTreeEditType.StepOut = 7 -> Ignitor.RenderTreeEditType +Ignitor.RenderTreeEditType.UpdateMarkup = 8 -> Ignitor.RenderTreeEditType +Ignitor.RenderTreeEditType.UpdateText = 5 -> Ignitor.RenderTreeEditType +Ignitor.RenderTreeFrame +Ignitor.RenderTreeFrame.AttributeEventHandlerId.get -> ulong +Ignitor.RenderTreeFrame.ComponentId.get -> int +Ignitor.RenderTreeFrame.ComponentReferenceCaptureParentFrameIndex.get -> int +Ignitor.RenderTreeFrame.ComponentSubtreeLength.get -> int +Ignitor.RenderTreeFrame.ElementSubtreeLength.get -> int +Ignitor.RenderTreeFrame.FrameType.get -> Ignitor.RenderTreeFrameType +Ignitor.RenderTreeFrame.RegionSubtreeLength.get -> int +Ignitor.RenderTreeFrame.Sequence.get -> int +Ignitor.RenderTreeFrameType +Ignitor.RenderTreeFrameType.Attribute = 3 -> Ignitor.RenderTreeFrameType +Ignitor.RenderTreeFrameType.Component = 4 -> Ignitor.RenderTreeFrameType +Ignitor.RenderTreeFrameType.ComponentReferenceCapture = 7 -> Ignitor.RenderTreeFrameType +Ignitor.RenderTreeFrameType.Element = 1 -> Ignitor.RenderTreeFrameType +Ignitor.RenderTreeFrameType.ElementReferenceCapture = 6 -> Ignitor.RenderTreeFrameType +Ignitor.RenderTreeFrameType.Markup = 8 -> Ignitor.RenderTreeFrameType +Ignitor.RenderTreeFrameType.None = 0 -> Ignitor.RenderTreeFrameType +Ignitor.RenderTreeFrameType.Region = 5 -> Ignitor.RenderTreeFrameType +Ignitor.RenderTreeFrameType.Text = 2 -> Ignitor.RenderTreeFrameType +Ignitor.TextNode +readonly Ignitor.ArrayRange.Count -> int +readonly Ignitor.RenderTreeDiff.ComponentId -> int +readonly Ignitor.RenderTreeDiff.Edits -> Ignitor.ArrayBuilderSegment +readonly Ignitor.RenderTreeEdit.MoveToSiblingIndex -> int +readonly Ignitor.RenderTreeEdit.ReferenceFrameIndex -> int +readonly Ignitor.RenderTreeEdit.SiblingIndex -> int +readonly Ignitor.RenderTreeEdit.Type -> Ignitor.RenderTreeEditType +static Ignitor.RenderBatchReader.Read(System.ReadOnlySpan data) -> Ignitor.RenderBatch +virtual Ignitor.Node.Parent.get -> Ignitor.ContainerNode? +virtual Ignitor.Node.Parent.set -> void +~Ignitor.ArrayRange.ArrayRange(T[] array, int count) -> void +~Ignitor.CapturedAttachComponentCall.CapturedAttachComponentCall(int componentId, string selector) -> void +~Ignitor.CapturedAttachComponentCall.Selector.get -> string +~Ignitor.CapturedJSInteropCall.ArgsJson.get -> string +~Ignitor.CapturedJSInteropCall.CapturedJSInteropCall(int asyncHandle, string identifier, string argsJson, int resultType, long targetInstanceId) -> void +~Ignitor.CapturedJSInteropCall.Identifier.get -> string +~Ignitor.CapturedRenderBatch.CapturedRenderBatch(int id, byte[] data) -> void +~Ignitor.CapturedRenderBatch.Data.get -> byte[] +~Ignitor.ElementReference.ElementReference(string id) -> void +~Ignitor.ElementReference.Id.get -> string +~Ignitor.MarkupNode.MarkupContent.get -> string +~Ignitor.MarkupNode.MarkupNode(string markupContent) -> void +~Ignitor.RenderTreeFrame.AttributeEventUpdatesAttributeName.get -> string +~Ignitor.RenderTreeFrame.AttributeName.get -> string +~Ignitor.RenderTreeFrame.AttributeValue.get -> object +~Ignitor.RenderTreeFrame.Component.get -> Ignitor.IComponent +~Ignitor.RenderTreeFrame.ComponentKey.get -> object +~Ignitor.RenderTreeFrame.ComponentReferenceCaptureAction.get -> System.Action +~Ignitor.RenderTreeFrame.ComponentType.get -> System.Type +~Ignitor.RenderTreeFrame.ElementKey.get -> object +~Ignitor.RenderTreeFrame.ElementName.get -> string +~Ignitor.RenderTreeFrame.ElementReferenceCaptureAction.get -> System.Action +~Ignitor.RenderTreeFrame.ElementReferenceCaptureId.get -> string +~Ignitor.RenderTreeFrame.MarkupContent.get -> string +~Ignitor.RenderTreeFrame.TextContent.get -> string +~Ignitor.TextNode.TextContent.get -> string +~Ignitor.TextNode.TextContent.set -> void +~Ignitor.TextNode.TextNode(string text) -> void +~override Ignitor.RenderTreeFrame.ToString() -> string +~readonly Ignitor.ArrayRange.Array -> T[] +~readonly Ignitor.RenderTreeEdit.RemovedAttributeName -> string diff --git a/src/Components/ProtectedBrowserStorage/src/PublicAPI.Shipped.txt b/src/Components/ProtectedBrowserStorage/src/PublicAPI.Shipped.txt new file mode 100644 index 000000000000..ab058de62d44 --- /dev/null +++ b/src/Components/ProtectedBrowserStorage/src/PublicAPI.Shipped.txt @@ -0,0 +1 @@ +#nullable enable diff --git a/src/Components/ProtectedBrowserStorage/src/PublicAPI.Unshipped.txt b/src/Components/ProtectedBrowserStorage/src/PublicAPI.Unshipped.txt new file mode 100644 index 000000000000..4e019a246088 --- /dev/null +++ b/src/Components/ProtectedBrowserStorage/src/PublicAPI.Unshipped.txt @@ -0,0 +1,17 @@ +#nullable enable +Microsoft.AspNetCore.Components.ProtectedBrowserStorage.ProtectedBrowserStorage +Microsoft.AspNetCore.Components.ProtectedBrowserStorage.ProtectedBrowserStorage.DeleteAsync(string! key) -> System.Threading.Tasks.ValueTask +Microsoft.AspNetCore.Components.ProtectedBrowserStorage.ProtectedBrowserStorage.GetAsync(string! key) -> System.Threading.Tasks.ValueTask> +Microsoft.AspNetCore.Components.ProtectedBrowserStorage.ProtectedBrowserStorage.GetAsync(string! purpose, string! key) -> System.Threading.Tasks.ValueTask> +Microsoft.AspNetCore.Components.ProtectedBrowserStorage.ProtectedBrowserStorage.ProtectedBrowserStorage(string! storeName, Microsoft.JSInterop.IJSRuntime! jsRuntime, Microsoft.AspNetCore.DataProtection.IDataProtectionProvider! dataProtectionProvider) -> void +Microsoft.AspNetCore.Components.ProtectedBrowserStorage.ProtectedBrowserStorage.SetAsync(string! key, object! value) -> System.Threading.Tasks.ValueTask +Microsoft.AspNetCore.Components.ProtectedBrowserStorage.ProtectedBrowserStorage.SetAsync(string! purpose, string! key, object! value) -> System.Threading.Tasks.ValueTask +Microsoft.AspNetCore.Components.ProtectedBrowserStorage.ProtectedBrowserStorageResult +Microsoft.AspNetCore.Components.ProtectedBrowserStorage.ProtectedBrowserStorageResult.Success.get -> bool +Microsoft.AspNetCore.Components.ProtectedBrowserStorage.ProtectedBrowserStorageResult.Value.get -> T +Microsoft.AspNetCore.Components.ProtectedBrowserStorage.ProtectedLocalStorage +Microsoft.AspNetCore.Components.ProtectedBrowserStorage.ProtectedLocalStorage.ProtectedLocalStorage(Microsoft.JSInterop.IJSRuntime! jsRuntime, Microsoft.AspNetCore.DataProtection.IDataProtectionProvider! dataProtectionProvider) -> void +Microsoft.AspNetCore.Components.ProtectedBrowserStorage.ProtectedSessionStorage +Microsoft.AspNetCore.Components.ProtectedBrowserStorage.ProtectedSessionStorage.ProtectedSessionStorage(Microsoft.JSInterop.IJSRuntime! jsRuntime, Microsoft.AspNetCore.DataProtection.IDataProtectionProvider! dataProtectionProvider) -> void +Microsoft.Extensions.DependencyInjection.ProtectedBrowserStorageServiceCollectionExtensions +static Microsoft.Extensions.DependencyInjection.ProtectedBrowserStorageServiceCollectionExtensions.AddProtectedBrowserStorage(this Microsoft.Extensions.DependencyInjection.IServiceCollection! services) -> void diff --git a/src/Components/Server/src/PublicAPI.Shipped.txt b/src/Components/Server/src/PublicAPI.Shipped.txt new file mode 100644 index 000000000000..ab058de62d44 --- /dev/null +++ b/src/Components/Server/src/PublicAPI.Shipped.txt @@ -0,0 +1 @@ +#nullable enable diff --git a/src/Components/Server/src/PublicAPI.Unshipped.txt b/src/Components/Server/src/PublicAPI.Unshipped.txt new file mode 100644 index 000000000000..fb14baf6f43c --- /dev/null +++ b/src/Components/Server/src/PublicAPI.Unshipped.txt @@ -0,0 +1,44 @@ +Microsoft.AspNetCore.Builder.ComponentEndpointConventionBuilder +Microsoft.AspNetCore.Builder.ComponentEndpointConventionBuilder.Add(System.Action! convention) -> void +Microsoft.AspNetCore.Builder.ComponentEndpointRouteBuilderExtensions +Microsoft.AspNetCore.Components.Server.CircuitOptions +Microsoft.AspNetCore.Components.Server.CircuitOptions.CircuitOptions() -> void +Microsoft.AspNetCore.Components.Server.CircuitOptions.DetailedErrors.get -> bool +Microsoft.AspNetCore.Components.Server.CircuitOptions.DetailedErrors.set -> void +Microsoft.AspNetCore.Components.Server.CircuitOptions.DisconnectedCircuitMaxRetained.get -> int +Microsoft.AspNetCore.Components.Server.CircuitOptions.DisconnectedCircuitMaxRetained.set -> void +Microsoft.AspNetCore.Components.Server.CircuitOptions.DisconnectedCircuitRetentionPeriod.get -> System.TimeSpan +Microsoft.AspNetCore.Components.Server.CircuitOptions.DisconnectedCircuitRetentionPeriod.set -> void +Microsoft.AspNetCore.Components.Server.CircuitOptions.JSInteropDefaultCallTimeout.get -> System.TimeSpan +Microsoft.AspNetCore.Components.Server.CircuitOptions.JSInteropDefaultCallTimeout.set -> void +Microsoft.AspNetCore.Components.Server.CircuitOptions.MaxBufferedUnacknowledgedRenderBatches.get -> int +Microsoft.AspNetCore.Components.Server.CircuitOptions.MaxBufferedUnacknowledgedRenderBatches.set -> void +Microsoft.AspNetCore.Components.Server.Circuits.Circuit +Microsoft.AspNetCore.Components.Server.Circuits.Circuit.Id.get -> string! +Microsoft.AspNetCore.Components.Server.Circuits.CircuitHandler +Microsoft.AspNetCore.Components.Server.Circuits.CircuitHandler.CircuitHandler() -> void +Microsoft.AspNetCore.Components.Server.RevalidatingServerAuthenticationStateProvider +Microsoft.AspNetCore.Components.Server.RevalidatingServerAuthenticationStateProvider.RevalidatingServerAuthenticationStateProvider(Microsoft.Extensions.Logging.ILoggerFactory! loggerFactory) -> void +Microsoft.AspNetCore.Components.Server.ServerAuthenticationStateProvider +Microsoft.AspNetCore.Components.Server.ServerAuthenticationStateProvider.ServerAuthenticationStateProvider() -> void +Microsoft.AspNetCore.Components.Server.ServerAuthenticationStateProvider.SetAuthenticationState(System.Threading.Tasks.Task! authenticationStateTask) -> void +Microsoft.Extensions.DependencyInjection.ComponentServiceCollectionExtensions +Microsoft.Extensions.DependencyInjection.IServerSideBlazorBuilder +Microsoft.Extensions.DependencyInjection.IServerSideBlazorBuilder.Services.get -> Microsoft.Extensions.DependencyInjection.IServiceCollection! +Microsoft.Extensions.DependencyInjection.ServerSideBlazorBuilderExtensions +abstract Microsoft.AspNetCore.Components.Server.RevalidatingServerAuthenticationStateProvider.RevalidationInterval.get -> System.TimeSpan +abstract Microsoft.AspNetCore.Components.Server.RevalidatingServerAuthenticationStateProvider.ValidateAuthenticationStateAsync(Microsoft.AspNetCore.Components.Authorization.AuthenticationState! authenticationState, System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.Task! +override Microsoft.AspNetCore.Components.Server.ServerAuthenticationStateProvider.GetAuthenticationStateAsync() -> System.Threading.Tasks.Task! +static Microsoft.AspNetCore.Builder.ComponentEndpointRouteBuilderExtensions.MapBlazorHub(this Microsoft.AspNetCore.Routing.IEndpointRouteBuilder! endpoints) -> Microsoft.AspNetCore.Builder.ComponentEndpointConventionBuilder! +static Microsoft.AspNetCore.Builder.ComponentEndpointRouteBuilderExtensions.MapBlazorHub(this Microsoft.AspNetCore.Routing.IEndpointRouteBuilder! endpoints, System.Action! configureOptions) -> Microsoft.AspNetCore.Builder.ComponentEndpointConventionBuilder! +static Microsoft.AspNetCore.Builder.ComponentEndpointRouteBuilderExtensions.MapBlazorHub(this Microsoft.AspNetCore.Routing.IEndpointRouteBuilder! endpoints, string! path) -> Microsoft.AspNetCore.Builder.ComponentEndpointConventionBuilder! +static Microsoft.AspNetCore.Builder.ComponentEndpointRouteBuilderExtensions.MapBlazorHub(this Microsoft.AspNetCore.Routing.IEndpointRouteBuilder! endpoints, string! path, System.Action! configureOptions) -> Microsoft.AspNetCore.Builder.ComponentEndpointConventionBuilder! +static Microsoft.Extensions.DependencyInjection.ComponentServiceCollectionExtensions.AddServerSideBlazor(this Microsoft.Extensions.DependencyInjection.IServiceCollection! services, System.Action? configure = null) -> Microsoft.Extensions.DependencyInjection.IServerSideBlazorBuilder! +static Microsoft.Extensions.DependencyInjection.ServerSideBlazorBuilderExtensions.AddCircuitOptions(this Microsoft.Extensions.DependencyInjection.IServerSideBlazorBuilder! builder, System.Action! configure) -> Microsoft.Extensions.DependencyInjection.IServerSideBlazorBuilder! +static Microsoft.Extensions.DependencyInjection.ServerSideBlazorBuilderExtensions.AddHubOptions(this Microsoft.Extensions.DependencyInjection.IServerSideBlazorBuilder! builder, System.Action! configure) -> Microsoft.Extensions.DependencyInjection.IServerSideBlazorBuilder! +virtual Microsoft.AspNetCore.Components.Server.Circuits.CircuitHandler.OnCircuitClosedAsync(Microsoft.AspNetCore.Components.Server.Circuits.Circuit! circuit, System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.Task! +virtual Microsoft.AspNetCore.Components.Server.Circuits.CircuitHandler.OnCircuitOpenedAsync(Microsoft.AspNetCore.Components.Server.Circuits.Circuit! circuit, System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.Task! +virtual Microsoft.AspNetCore.Components.Server.Circuits.CircuitHandler.OnConnectionDownAsync(Microsoft.AspNetCore.Components.Server.Circuits.Circuit! circuit, System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.Task! +virtual Microsoft.AspNetCore.Components.Server.Circuits.CircuitHandler.OnConnectionUpAsync(Microsoft.AspNetCore.Components.Server.Circuits.Circuit! circuit, System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.Task! +virtual Microsoft.AspNetCore.Components.Server.Circuits.CircuitHandler.Order.get -> int +virtual Microsoft.AspNetCore.Components.Server.RevalidatingServerAuthenticationStateProvider.Dispose(bool disposing) -> void \ No newline at end of file diff --git a/src/Components/Web.Extensions/src/PublicAPI.Shipped.txt b/src/Components/Web.Extensions/src/PublicAPI.Shipped.txt new file mode 100644 index 000000000000..ab058de62d44 --- /dev/null +++ b/src/Components/Web.Extensions/src/PublicAPI.Shipped.txt @@ -0,0 +1 @@ +#nullable enable diff --git a/src/Components/Web.Extensions/src/PublicAPI.Unshipped.txt b/src/Components/Web.Extensions/src/PublicAPI.Unshipped.txt new file mode 100644 index 000000000000..f95bb5366e08 --- /dev/null +++ b/src/Components/Web.Extensions/src/PublicAPI.Unshipped.txt @@ -0,0 +1,18 @@ +#nullable enable +Microsoft.AspNetCore.Components.Web.Extensions.Head.HeadTagBase +Microsoft.AspNetCore.Components.Web.Extensions.Head.HeadTagBase.Attributes.get -> System.Collections.Generic.IReadOnlyDictionary? +Microsoft.AspNetCore.Components.Web.Extensions.Head.HeadTagBase.Attributes.set -> void +Microsoft.AspNetCore.Components.Web.Extensions.Head.HeadTagBase.Dispose() -> void +Microsoft.AspNetCore.Components.Web.Extensions.Head.HeadTagBase.HeadTagBase() -> void +Microsoft.AspNetCore.Components.Web.Extensions.Head.Link +Microsoft.AspNetCore.Components.Web.Extensions.Head.Link.Link() -> void +Microsoft.AspNetCore.Components.Web.Extensions.Head.Meta +Microsoft.AspNetCore.Components.Web.Extensions.Head.Meta.Meta() -> void +Microsoft.AspNetCore.Components.Web.Extensions.Head.Title +Microsoft.AspNetCore.Components.Web.Extensions.Head.Title.Title() -> void +Microsoft.AspNetCore.Components.Web.Extensions.Head.Title.Value.get -> string! +Microsoft.AspNetCore.Components.Web.Extensions.Head.Title.Value.set -> void +abstract Microsoft.AspNetCore.Components.Web.Extensions.Head.HeadTagBase.TagName.get -> string! +override Microsoft.AspNetCore.Components.Web.Extensions.Head.HeadTagBase.BuildRenderTree(Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder! builder) -> void +override Microsoft.AspNetCore.Components.Web.Extensions.Head.HeadTagBase.OnAfterRenderAsync(bool firstRender) -> System.Threading.Tasks.Task! +override Microsoft.AspNetCore.Components.Web.Extensions.Head.HeadTagBase.OnParametersSet() -> void diff --git a/src/Components/Web/src/PublicAPI.Shipped.txt b/src/Components/Web/src/PublicAPI.Shipped.txt new file mode 100644 index 000000000000..ab058de62d44 --- /dev/null +++ b/src/Components/Web/src/PublicAPI.Shipped.txt @@ -0,0 +1 @@ +#nullable enable diff --git a/src/Components/Web/src/PublicAPI.Unshipped.txt b/src/Components/Web/src/PublicAPI.Unshipped.txt new file mode 100644 index 000000000000..44a2bd927d74 --- /dev/null +++ b/src/Components/Web/src/PublicAPI.Unshipped.txt @@ -0,0 +1,413 @@ +Microsoft.AspNetCore.Components.BindInputElementAttribute +Microsoft.AspNetCore.Components.BindInputElementAttribute.BindInputElementAttribute(string? type, string? suffix, string? valueAttribute, string? changeAttribute, bool isInvariantCulture, string? format) -> void +Microsoft.AspNetCore.Components.BindInputElementAttribute.ChangeAttribute.get -> string? +Microsoft.AspNetCore.Components.BindInputElementAttribute.Format.get -> string? +Microsoft.AspNetCore.Components.BindInputElementAttribute.IsInvariantCulture.get -> bool +Microsoft.AspNetCore.Components.BindInputElementAttribute.Suffix.get -> string? +Microsoft.AspNetCore.Components.BindInputElementAttribute.Type.get -> string? +Microsoft.AspNetCore.Components.BindInputElementAttribute.ValueAttribute.get -> string? +Microsoft.AspNetCore.Components.ElementReferenceExtensions +Microsoft.AspNetCore.Components.Forms.BrowserFileExtensions +Microsoft.AspNetCore.Components.Forms.EditContextFieldClassExtensions +Microsoft.AspNetCore.Components.Forms.EditForm +Microsoft.AspNetCore.Components.Forms.EditForm.AdditionalAttributes.get -> System.Collections.Generic.IReadOnlyDictionary? +Microsoft.AspNetCore.Components.Forms.EditForm.AdditionalAttributes.set -> void +Microsoft.AspNetCore.Components.Forms.EditForm.ChildContent.get -> Microsoft.AspNetCore.Components.RenderFragment? +Microsoft.AspNetCore.Components.Forms.EditForm.ChildContent.set -> void +Microsoft.AspNetCore.Components.Forms.EditForm.EditContext.get -> Microsoft.AspNetCore.Components.Forms.EditContext? +Microsoft.AspNetCore.Components.Forms.EditForm.EditContext.set -> void +Microsoft.AspNetCore.Components.Forms.EditForm.EditForm() -> void +Microsoft.AspNetCore.Components.Forms.EditForm.Model.get -> object? +Microsoft.AspNetCore.Components.Forms.EditForm.Model.set -> void +Microsoft.AspNetCore.Components.Forms.EditForm.OnInvalidSubmit.get -> Microsoft.AspNetCore.Components.EventCallback +Microsoft.AspNetCore.Components.Forms.EditForm.OnInvalidSubmit.set -> void +Microsoft.AspNetCore.Components.Forms.EditForm.OnSubmit.get -> Microsoft.AspNetCore.Components.EventCallback +Microsoft.AspNetCore.Components.Forms.EditForm.OnSubmit.set -> void +Microsoft.AspNetCore.Components.Forms.EditForm.OnValidSubmit.get -> Microsoft.AspNetCore.Components.EventCallback +Microsoft.AspNetCore.Components.Forms.EditForm.OnValidSubmit.set -> void +Microsoft.AspNetCore.Components.Forms.FieldCssClassProvider +Microsoft.AspNetCore.Components.Forms.FieldCssClassProvider.FieldCssClassProvider() -> void +Microsoft.AspNetCore.Components.Forms.IBrowserFile +Microsoft.AspNetCore.Components.Forms.IBrowserFile.ContentType.get -> string! +Microsoft.AspNetCore.Components.Forms.IBrowserFile.LastModified.get -> System.DateTimeOffset +Microsoft.AspNetCore.Components.Forms.IBrowserFile.Name.get -> string! +Microsoft.AspNetCore.Components.Forms.IBrowserFile.OpenReadStream(long maxAllowedSize = 512000, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.IO.Stream! +Microsoft.AspNetCore.Components.Forms.IBrowserFile.Size.get -> long +Microsoft.AspNetCore.Components.Forms.InputBase +Microsoft.AspNetCore.Components.Forms.InputBase.AdditionalAttributes.get -> System.Collections.Generic.IReadOnlyDictionary? +Microsoft.AspNetCore.Components.Forms.InputBase.AdditionalAttributes.set -> void +Microsoft.AspNetCore.Components.Forms.InputBase.CssClass.get -> string! +Microsoft.AspNetCore.Components.Forms.InputBase.CurrentValue.get -> TValue +Microsoft.AspNetCore.Components.Forms.InputBase.CurrentValue.set -> void +Microsoft.AspNetCore.Components.Forms.InputBase.CurrentValueAsString.get -> string? +Microsoft.AspNetCore.Components.Forms.InputBase.CurrentValueAsString.set -> void +Microsoft.AspNetCore.Components.Forms.InputBase.DisplayName.get -> string? +Microsoft.AspNetCore.Components.Forms.InputBase.DisplayName.set -> void +Microsoft.AspNetCore.Components.Forms.InputBase.EditContext.get -> Microsoft.AspNetCore.Components.Forms.EditContext! +Microsoft.AspNetCore.Components.Forms.InputBase.EditContext.set -> void +Microsoft.AspNetCore.Components.Forms.InputBase.FieldIdentifier.get -> Microsoft.AspNetCore.Components.Forms.FieldIdentifier +Microsoft.AspNetCore.Components.Forms.InputBase.FieldIdentifier.set -> void +Microsoft.AspNetCore.Components.Forms.InputBase.InputBase() -> void +Microsoft.AspNetCore.Components.Forms.InputBase.Value.get -> TValue +Microsoft.AspNetCore.Components.Forms.InputBase.Value.set -> void +Microsoft.AspNetCore.Components.Forms.InputBase.ValueChanged.get -> Microsoft.AspNetCore.Components.EventCallback +Microsoft.AspNetCore.Components.Forms.InputBase.ValueChanged.set -> void +Microsoft.AspNetCore.Components.Forms.InputBase.ValueExpression.get -> System.Linq.Expressions.Expression!>? +Microsoft.AspNetCore.Components.Forms.InputBase.ValueExpression.set -> void +Microsoft.AspNetCore.Components.Forms.InputCheckbox +Microsoft.AspNetCore.Components.Forms.InputCheckbox.InputCheckbox() -> void +Microsoft.AspNetCore.Components.Forms.InputDate +Microsoft.AspNetCore.Components.Forms.InputDate.InputDate() -> void +Microsoft.AspNetCore.Components.Forms.InputDate.ParsingErrorMessage.get -> string! +Microsoft.AspNetCore.Components.Forms.InputDate.ParsingErrorMessage.set -> void +Microsoft.AspNetCore.Components.Forms.InputFile +Microsoft.AspNetCore.Components.Forms.InputFile.AdditionalAttributes.get -> System.Collections.Generic.IDictionary? +Microsoft.AspNetCore.Components.Forms.InputFile.AdditionalAttributes.set -> void +Microsoft.AspNetCore.Components.Forms.InputFile.InputFile() -> void +Microsoft.AspNetCore.Components.Forms.InputFile.OnChange.get -> Microsoft.AspNetCore.Components.EventCallback +Microsoft.AspNetCore.Components.Forms.InputFile.OnChange.set -> void +Microsoft.AspNetCore.Components.Forms.InputFileChangeEventArgs +Microsoft.AspNetCore.Components.Forms.InputFileChangeEventArgs.File.get -> Microsoft.AspNetCore.Components.Forms.IBrowserFile! +Microsoft.AspNetCore.Components.Forms.InputFileChangeEventArgs.FileCount.get -> int +Microsoft.AspNetCore.Components.Forms.InputFileChangeEventArgs.GetMultipleFiles(int maximumFileCount = 10) -> System.Collections.Generic.IReadOnlyList! +Microsoft.AspNetCore.Components.Forms.InputFileChangeEventArgs.InputFileChangeEventArgs(System.Collections.Generic.IReadOnlyList! files) -> void +Microsoft.AspNetCore.Components.Forms.InputNumber +Microsoft.AspNetCore.Components.Forms.InputNumber.InputNumber() -> void +Microsoft.AspNetCore.Components.Forms.InputNumber.ParsingErrorMessage.get -> string! +Microsoft.AspNetCore.Components.Forms.InputNumber.ParsingErrorMessage.set -> void +Microsoft.AspNetCore.Components.Forms.InputRadio +Microsoft.AspNetCore.Components.Forms.InputRadio.AdditionalAttributes.get -> System.Collections.Generic.IReadOnlyDictionary? +Microsoft.AspNetCore.Components.Forms.InputRadio.AdditionalAttributes.set -> void +Microsoft.AspNetCore.Components.Forms.InputRadio.InputRadio() -> void +Microsoft.AspNetCore.Components.Forms.InputRadio.Name.get -> string? +Microsoft.AspNetCore.Components.Forms.InputRadio.Name.set -> void +Microsoft.AspNetCore.Components.Forms.InputRadio.Value.get -> TValue +Microsoft.AspNetCore.Components.Forms.InputRadio.Value.set -> void +Microsoft.AspNetCore.Components.Forms.InputRadioGroup +Microsoft.AspNetCore.Components.Forms.InputRadioGroup.ChildContent.get -> Microsoft.AspNetCore.Components.RenderFragment? +Microsoft.AspNetCore.Components.Forms.InputRadioGroup.ChildContent.set -> void +Microsoft.AspNetCore.Components.Forms.InputRadioGroup.InputRadioGroup() -> void +Microsoft.AspNetCore.Components.Forms.InputRadioGroup.Name.get -> string? +Microsoft.AspNetCore.Components.Forms.InputRadioGroup.Name.set -> void +Microsoft.AspNetCore.Components.Forms.InputSelect +Microsoft.AspNetCore.Components.Forms.InputSelect.ChildContent.get -> Microsoft.AspNetCore.Components.RenderFragment? +Microsoft.AspNetCore.Components.Forms.InputSelect.ChildContent.set -> void +Microsoft.AspNetCore.Components.Forms.InputSelect.InputSelect() -> void +Microsoft.AspNetCore.Components.Forms.InputText +Microsoft.AspNetCore.Components.Forms.InputText.InputText() -> void +Microsoft.AspNetCore.Components.Forms.InputTextArea +Microsoft.AspNetCore.Components.Forms.InputTextArea.InputTextArea() -> void +Microsoft.AspNetCore.Components.Forms.RemoteBrowserFileStreamOptions +Microsoft.AspNetCore.Components.Forms.RemoteBrowserFileStreamOptions.MaxBufferSize.get -> int +Microsoft.AspNetCore.Components.Forms.RemoteBrowserFileStreamOptions.MaxBufferSize.set -> void +Microsoft.AspNetCore.Components.Forms.RemoteBrowserFileStreamOptions.MaxSegmentSize.get -> int +Microsoft.AspNetCore.Components.Forms.RemoteBrowserFileStreamOptions.MaxSegmentSize.set -> void +Microsoft.AspNetCore.Components.Forms.RemoteBrowserFileStreamOptions.RemoteBrowserFileStreamOptions() -> void +Microsoft.AspNetCore.Components.Forms.RemoteBrowserFileStreamOptions.SegmentFetchTimeout.get -> System.TimeSpan +Microsoft.AspNetCore.Components.Forms.RemoteBrowserFileStreamOptions.SegmentFetchTimeout.set -> void +Microsoft.AspNetCore.Components.Forms.ValidationMessage +Microsoft.AspNetCore.Components.Forms.ValidationMessage.AdditionalAttributes.get -> System.Collections.Generic.IReadOnlyDictionary? +Microsoft.AspNetCore.Components.Forms.ValidationMessage.AdditionalAttributes.set -> void +Microsoft.AspNetCore.Components.Forms.ValidationMessage.For.get -> System.Linq.Expressions.Expression!>? +Microsoft.AspNetCore.Components.Forms.ValidationMessage.For.set -> void +Microsoft.AspNetCore.Components.Forms.ValidationMessage.ValidationMessage() -> void +Microsoft.AspNetCore.Components.Forms.ValidationSummary +Microsoft.AspNetCore.Components.Forms.ValidationSummary.AdditionalAttributes.get -> System.Collections.Generic.IReadOnlyDictionary? +Microsoft.AspNetCore.Components.Forms.ValidationSummary.AdditionalAttributes.set -> void +Microsoft.AspNetCore.Components.Forms.ValidationSummary.Model.get -> object? +Microsoft.AspNetCore.Components.Forms.ValidationSummary.Model.set -> void +Microsoft.AspNetCore.Components.Forms.ValidationSummary.ValidationSummary() -> void +Microsoft.AspNetCore.Components.RenderTree.WebEventDescriptor +Microsoft.AspNetCore.Components.RenderTree.WebEventDescriptor.BrowserRendererId.get -> int +Microsoft.AspNetCore.Components.RenderTree.WebEventDescriptor.BrowserRendererId.set -> void +Microsoft.AspNetCore.Components.RenderTree.WebEventDescriptor.EventArgsType.get -> string! +Microsoft.AspNetCore.Components.RenderTree.WebEventDescriptor.EventArgsType.set -> void +Microsoft.AspNetCore.Components.RenderTree.WebEventDescriptor.EventFieldInfo.get -> Microsoft.AspNetCore.Components.RenderTree.EventFieldInfo? +Microsoft.AspNetCore.Components.RenderTree.WebEventDescriptor.EventFieldInfo.set -> void +Microsoft.AspNetCore.Components.RenderTree.WebEventDescriptor.EventHandlerId.get -> ulong +Microsoft.AspNetCore.Components.RenderTree.WebEventDescriptor.EventHandlerId.set -> void +Microsoft.AspNetCore.Components.RenderTree.WebEventDescriptor.WebEventDescriptor() -> void +Microsoft.AspNetCore.Components.Routing.NavLink +Microsoft.AspNetCore.Components.Routing.NavLink.ActiveClass.get -> string? +Microsoft.AspNetCore.Components.Routing.NavLink.ActiveClass.set -> void +Microsoft.AspNetCore.Components.Routing.NavLink.AdditionalAttributes.get -> System.Collections.Generic.IReadOnlyDictionary? +Microsoft.AspNetCore.Components.Routing.NavLink.AdditionalAttributes.set -> void +Microsoft.AspNetCore.Components.Routing.NavLink.ChildContent.get -> Microsoft.AspNetCore.Components.RenderFragment? +Microsoft.AspNetCore.Components.Routing.NavLink.ChildContent.set -> void +Microsoft.AspNetCore.Components.Routing.NavLink.CssClass.get -> string? +Microsoft.AspNetCore.Components.Routing.NavLink.CssClass.set -> void +Microsoft.AspNetCore.Components.Routing.NavLink.Dispose() -> void +Microsoft.AspNetCore.Components.Routing.NavLink.Match.get -> Microsoft.AspNetCore.Components.Routing.NavLinkMatch +Microsoft.AspNetCore.Components.Routing.NavLink.Match.set -> void +Microsoft.AspNetCore.Components.Routing.NavLink.NavLink() -> void +Microsoft.AspNetCore.Components.Routing.NavLinkMatch +Microsoft.AspNetCore.Components.Routing.NavLinkMatch.All = 1 -> Microsoft.AspNetCore.Components.Routing.NavLinkMatch +Microsoft.AspNetCore.Components.Routing.NavLinkMatch.Prefix = 0 -> Microsoft.AspNetCore.Components.Routing.NavLinkMatch +Microsoft.AspNetCore.Components.Web.BindAttributes +Microsoft.AspNetCore.Components.Web.ClipboardEventArgs +Microsoft.AspNetCore.Components.Web.ClipboardEventArgs.ClipboardEventArgs() -> void +Microsoft.AspNetCore.Components.Web.ClipboardEventArgs.Type.get -> string! +Microsoft.AspNetCore.Components.Web.ClipboardEventArgs.Type.set -> void +Microsoft.AspNetCore.Components.Web.DataTransfer +Microsoft.AspNetCore.Components.Web.DataTransfer.DataTransfer() -> void +Microsoft.AspNetCore.Components.Web.DataTransfer.DropEffect.get -> string! +Microsoft.AspNetCore.Components.Web.DataTransfer.DropEffect.set -> void +Microsoft.AspNetCore.Components.Web.DataTransfer.EffectAllowed.get -> string? +Microsoft.AspNetCore.Components.Web.DataTransfer.EffectAllowed.set -> void +Microsoft.AspNetCore.Components.Web.DataTransfer.Files.get -> string![]! +Microsoft.AspNetCore.Components.Web.DataTransfer.Files.set -> void +Microsoft.AspNetCore.Components.Web.DataTransfer.Items.get -> Microsoft.AspNetCore.Components.Web.DataTransferItem![]! +Microsoft.AspNetCore.Components.Web.DataTransfer.Items.set -> void +Microsoft.AspNetCore.Components.Web.DataTransfer.Types.get -> string![]! +Microsoft.AspNetCore.Components.Web.DataTransfer.Types.set -> void +Microsoft.AspNetCore.Components.Web.DataTransferItem +Microsoft.AspNetCore.Components.Web.DataTransferItem.DataTransferItem() -> void +Microsoft.AspNetCore.Components.Web.DataTransferItem.Kind.get -> string! +Microsoft.AspNetCore.Components.Web.DataTransferItem.Kind.set -> void +Microsoft.AspNetCore.Components.Web.DataTransferItem.Type.get -> string! +Microsoft.AspNetCore.Components.Web.DataTransferItem.Type.set -> void +Microsoft.AspNetCore.Components.Web.DragEventArgs +Microsoft.AspNetCore.Components.Web.DragEventArgs.DataTransfer.get -> Microsoft.AspNetCore.Components.Web.DataTransfer! +Microsoft.AspNetCore.Components.Web.DragEventArgs.DataTransfer.set -> void +Microsoft.AspNetCore.Components.Web.DragEventArgs.DragEventArgs() -> void +Microsoft.AspNetCore.Components.Web.ErrorEventArgs +Microsoft.AspNetCore.Components.Web.ErrorEventArgs.Colno.get -> int +Microsoft.AspNetCore.Components.Web.ErrorEventArgs.Colno.set -> void +Microsoft.AspNetCore.Components.Web.ErrorEventArgs.ErrorEventArgs() -> void +Microsoft.AspNetCore.Components.Web.ErrorEventArgs.Filename.get -> string? +Microsoft.AspNetCore.Components.Web.ErrorEventArgs.Filename.set -> void +Microsoft.AspNetCore.Components.Web.ErrorEventArgs.Lineno.get -> int +Microsoft.AspNetCore.Components.Web.ErrorEventArgs.Lineno.set -> void +Microsoft.AspNetCore.Components.Web.ErrorEventArgs.Message.get -> string? +Microsoft.AspNetCore.Components.Web.ErrorEventArgs.Message.set -> void +Microsoft.AspNetCore.Components.Web.ErrorEventArgs.Type.get -> string? +Microsoft.AspNetCore.Components.Web.ErrorEventArgs.Type.set -> void +Microsoft.AspNetCore.Components.Web.EventHandlers +Microsoft.AspNetCore.Components.Web.FocusEventArgs +Microsoft.AspNetCore.Components.Web.FocusEventArgs.FocusEventArgs() -> void +Microsoft.AspNetCore.Components.Web.FocusEventArgs.Type.get -> string? +Microsoft.AspNetCore.Components.Web.FocusEventArgs.Type.set -> void +Microsoft.AspNetCore.Components.Web.KeyboardEventArgs +Microsoft.AspNetCore.Components.Web.KeyboardEventArgs.AltKey.get -> bool +Microsoft.AspNetCore.Components.Web.KeyboardEventArgs.AltKey.set -> void +Microsoft.AspNetCore.Components.Web.KeyboardEventArgs.Code.get -> string! +Microsoft.AspNetCore.Components.Web.KeyboardEventArgs.Code.set -> void +Microsoft.AspNetCore.Components.Web.KeyboardEventArgs.CtrlKey.get -> bool +Microsoft.AspNetCore.Components.Web.KeyboardEventArgs.CtrlKey.set -> void +Microsoft.AspNetCore.Components.Web.KeyboardEventArgs.Key.get -> string! +Microsoft.AspNetCore.Components.Web.KeyboardEventArgs.Key.set -> void +Microsoft.AspNetCore.Components.Web.KeyboardEventArgs.KeyboardEventArgs() -> void +Microsoft.AspNetCore.Components.Web.KeyboardEventArgs.Location.get -> float +Microsoft.AspNetCore.Components.Web.KeyboardEventArgs.Location.set -> void +Microsoft.AspNetCore.Components.Web.KeyboardEventArgs.MetaKey.get -> bool +Microsoft.AspNetCore.Components.Web.KeyboardEventArgs.MetaKey.set -> void +Microsoft.AspNetCore.Components.Web.KeyboardEventArgs.Repeat.get -> bool +Microsoft.AspNetCore.Components.Web.KeyboardEventArgs.Repeat.set -> void +Microsoft.AspNetCore.Components.Web.KeyboardEventArgs.ShiftKey.get -> bool +Microsoft.AspNetCore.Components.Web.KeyboardEventArgs.ShiftKey.set -> void +Microsoft.AspNetCore.Components.Web.KeyboardEventArgs.Type.get -> string! +Microsoft.AspNetCore.Components.Web.KeyboardEventArgs.Type.set -> void +Microsoft.AspNetCore.Components.Web.MouseEventArgs +Microsoft.AspNetCore.Components.Web.MouseEventArgs.AltKey.get -> bool +Microsoft.AspNetCore.Components.Web.MouseEventArgs.AltKey.set -> void +Microsoft.AspNetCore.Components.Web.MouseEventArgs.Button.get -> long +Microsoft.AspNetCore.Components.Web.MouseEventArgs.Button.set -> void +Microsoft.AspNetCore.Components.Web.MouseEventArgs.Buttons.get -> long +Microsoft.AspNetCore.Components.Web.MouseEventArgs.Buttons.set -> void +Microsoft.AspNetCore.Components.Web.MouseEventArgs.ClientX.get -> double +Microsoft.AspNetCore.Components.Web.MouseEventArgs.ClientX.set -> void +Microsoft.AspNetCore.Components.Web.MouseEventArgs.ClientY.get -> double +Microsoft.AspNetCore.Components.Web.MouseEventArgs.ClientY.set -> void +Microsoft.AspNetCore.Components.Web.MouseEventArgs.CtrlKey.get -> bool +Microsoft.AspNetCore.Components.Web.MouseEventArgs.CtrlKey.set -> void +Microsoft.AspNetCore.Components.Web.MouseEventArgs.Detail.get -> long +Microsoft.AspNetCore.Components.Web.MouseEventArgs.Detail.set -> void +Microsoft.AspNetCore.Components.Web.MouseEventArgs.MetaKey.get -> bool +Microsoft.AspNetCore.Components.Web.MouseEventArgs.MetaKey.set -> void +Microsoft.AspNetCore.Components.Web.MouseEventArgs.MouseEventArgs() -> void +Microsoft.AspNetCore.Components.Web.MouseEventArgs.OffsetX.get -> double +Microsoft.AspNetCore.Components.Web.MouseEventArgs.OffsetX.set -> void +Microsoft.AspNetCore.Components.Web.MouseEventArgs.OffsetY.get -> double +Microsoft.AspNetCore.Components.Web.MouseEventArgs.OffsetY.set -> void +Microsoft.AspNetCore.Components.Web.MouseEventArgs.ScreenX.get -> double +Microsoft.AspNetCore.Components.Web.MouseEventArgs.ScreenX.set -> void +Microsoft.AspNetCore.Components.Web.MouseEventArgs.ScreenY.get -> double +Microsoft.AspNetCore.Components.Web.MouseEventArgs.ScreenY.set -> void +Microsoft.AspNetCore.Components.Web.MouseEventArgs.ShiftKey.get -> bool +Microsoft.AspNetCore.Components.Web.MouseEventArgs.ShiftKey.set -> void +Microsoft.AspNetCore.Components.Web.MouseEventArgs.Type.get -> string! +Microsoft.AspNetCore.Components.Web.MouseEventArgs.Type.set -> void +Microsoft.AspNetCore.Components.Web.PointerEventArgs +Microsoft.AspNetCore.Components.Web.PointerEventArgs.Height.get -> float +Microsoft.AspNetCore.Components.Web.PointerEventArgs.Height.set -> void +Microsoft.AspNetCore.Components.Web.PointerEventArgs.IsPrimary.get -> bool +Microsoft.AspNetCore.Components.Web.PointerEventArgs.IsPrimary.set -> void +Microsoft.AspNetCore.Components.Web.PointerEventArgs.PointerEventArgs() -> void +Microsoft.AspNetCore.Components.Web.PointerEventArgs.PointerId.get -> long +Microsoft.AspNetCore.Components.Web.PointerEventArgs.PointerId.set -> void +Microsoft.AspNetCore.Components.Web.PointerEventArgs.PointerType.get -> string! +Microsoft.AspNetCore.Components.Web.PointerEventArgs.PointerType.set -> void +Microsoft.AspNetCore.Components.Web.PointerEventArgs.Pressure.get -> float +Microsoft.AspNetCore.Components.Web.PointerEventArgs.Pressure.set -> void +Microsoft.AspNetCore.Components.Web.PointerEventArgs.TiltX.get -> float +Microsoft.AspNetCore.Components.Web.PointerEventArgs.TiltX.set -> void +Microsoft.AspNetCore.Components.Web.PointerEventArgs.TiltY.get -> float +Microsoft.AspNetCore.Components.Web.PointerEventArgs.TiltY.set -> void +Microsoft.AspNetCore.Components.Web.PointerEventArgs.Width.get -> float +Microsoft.AspNetCore.Components.Web.PointerEventArgs.Width.set -> void +Microsoft.AspNetCore.Components.Web.ProgressEventArgs +Microsoft.AspNetCore.Components.Web.ProgressEventArgs.LengthComputable.get -> bool +Microsoft.AspNetCore.Components.Web.ProgressEventArgs.LengthComputable.set -> void +Microsoft.AspNetCore.Components.Web.ProgressEventArgs.Loaded.get -> long +Microsoft.AspNetCore.Components.Web.ProgressEventArgs.Loaded.set -> void +Microsoft.AspNetCore.Components.Web.ProgressEventArgs.ProgressEventArgs() -> void +Microsoft.AspNetCore.Components.Web.ProgressEventArgs.Total.get -> long +Microsoft.AspNetCore.Components.Web.ProgressEventArgs.Total.set -> void +Microsoft.AspNetCore.Components.Web.ProgressEventArgs.Type.get -> string! +Microsoft.AspNetCore.Components.Web.ProgressEventArgs.Type.set -> void +Microsoft.AspNetCore.Components.Web.TouchEventArgs +Microsoft.AspNetCore.Components.Web.TouchEventArgs.AltKey.get -> bool +Microsoft.AspNetCore.Components.Web.TouchEventArgs.AltKey.set -> void +Microsoft.AspNetCore.Components.Web.TouchEventArgs.ChangedTouches.get -> Microsoft.AspNetCore.Components.Web.TouchPoint![]! +Microsoft.AspNetCore.Components.Web.TouchEventArgs.ChangedTouches.set -> void +Microsoft.AspNetCore.Components.Web.TouchEventArgs.CtrlKey.get -> bool +Microsoft.AspNetCore.Components.Web.TouchEventArgs.CtrlKey.set -> void +Microsoft.AspNetCore.Components.Web.TouchEventArgs.Detail.get -> long +Microsoft.AspNetCore.Components.Web.TouchEventArgs.Detail.set -> void +Microsoft.AspNetCore.Components.Web.TouchEventArgs.MetaKey.get -> bool +Microsoft.AspNetCore.Components.Web.TouchEventArgs.MetaKey.set -> void +Microsoft.AspNetCore.Components.Web.TouchEventArgs.ShiftKey.get -> bool +Microsoft.AspNetCore.Components.Web.TouchEventArgs.ShiftKey.set -> void +Microsoft.AspNetCore.Components.Web.TouchEventArgs.TargetTouches.get -> Microsoft.AspNetCore.Components.Web.TouchPoint![]! +Microsoft.AspNetCore.Components.Web.TouchEventArgs.TargetTouches.set -> void +Microsoft.AspNetCore.Components.Web.TouchEventArgs.TouchEventArgs() -> void +Microsoft.AspNetCore.Components.Web.TouchEventArgs.Touches.get -> Microsoft.AspNetCore.Components.Web.TouchPoint![]! +Microsoft.AspNetCore.Components.Web.TouchEventArgs.Touches.set -> void +Microsoft.AspNetCore.Components.Web.TouchEventArgs.Type.get -> string! +Microsoft.AspNetCore.Components.Web.TouchEventArgs.Type.set -> void +Microsoft.AspNetCore.Components.Web.TouchPoint +Microsoft.AspNetCore.Components.Web.TouchPoint.ClientX.get -> double +Microsoft.AspNetCore.Components.Web.TouchPoint.ClientX.set -> void +Microsoft.AspNetCore.Components.Web.TouchPoint.ClientY.get -> double +Microsoft.AspNetCore.Components.Web.TouchPoint.ClientY.set -> void +Microsoft.AspNetCore.Components.Web.TouchPoint.Identifier.get -> long +Microsoft.AspNetCore.Components.Web.TouchPoint.Identifier.set -> void +Microsoft.AspNetCore.Components.Web.TouchPoint.PageX.get -> double +Microsoft.AspNetCore.Components.Web.TouchPoint.PageX.set -> void +Microsoft.AspNetCore.Components.Web.TouchPoint.PageY.get -> double +Microsoft.AspNetCore.Components.Web.TouchPoint.PageY.set -> void +Microsoft.AspNetCore.Components.Web.TouchPoint.ScreenX.get -> double +Microsoft.AspNetCore.Components.Web.TouchPoint.ScreenX.set -> void +Microsoft.AspNetCore.Components.Web.TouchPoint.ScreenY.get -> double +Microsoft.AspNetCore.Components.Web.TouchPoint.ScreenY.set -> void +Microsoft.AspNetCore.Components.Web.TouchPoint.TouchPoint() -> void +Microsoft.AspNetCore.Components.Web.Virtualization.ItemsProviderDelegate +Microsoft.AspNetCore.Components.Web.Virtualization.ItemsProviderRequest +Microsoft.AspNetCore.Components.Web.Virtualization.ItemsProviderRequest.CancellationToken.get -> System.Threading.CancellationToken +Microsoft.AspNetCore.Components.Web.Virtualization.ItemsProviderRequest.Count.get -> int +Microsoft.AspNetCore.Components.Web.Virtualization.ItemsProviderRequest.ItemsProviderRequest(int startIndex, int count, System.Threading.CancellationToken cancellationToken) -> void +Microsoft.AspNetCore.Components.Web.Virtualization.ItemsProviderRequest.StartIndex.get -> int +Microsoft.AspNetCore.Components.Web.Virtualization.ItemsProviderResult +Microsoft.AspNetCore.Components.Web.Virtualization.ItemsProviderResult.Items.get -> System.Collections.Generic.IEnumerable! +Microsoft.AspNetCore.Components.Web.Virtualization.ItemsProviderResult.ItemsProviderResult(System.Collections.Generic.IEnumerable! items, int totalItemCount) -> void +Microsoft.AspNetCore.Components.Web.Virtualization.ItemsProviderResult.TotalItemCount.get -> int +Microsoft.AspNetCore.Components.Web.Virtualization.PlaceholderContext +Microsoft.AspNetCore.Components.Web.Virtualization.PlaceholderContext.Index.get -> int +Microsoft.AspNetCore.Components.Web.Virtualization.PlaceholderContext.PlaceholderContext(int index, float size = 0) -> void +Microsoft.AspNetCore.Components.Web.Virtualization.PlaceholderContext.Size.get -> float +Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize +Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize.ChildContent.get -> Microsoft.AspNetCore.Components.RenderFragment? +Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize.ChildContent.set -> void +Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize.DisposeAsync() -> System.Threading.Tasks.ValueTask +Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize.ItemContent.get -> Microsoft.AspNetCore.Components.RenderFragment? +Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize.ItemContent.set -> void +Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize.ItemSize.get -> float +Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize.ItemSize.set -> void +Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize.Items.get -> System.Collections.Generic.ICollection? +Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize.Items.set -> void +Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize.ItemsProvider.get -> Microsoft.AspNetCore.Components.Web.Virtualization.ItemsProviderDelegate? +Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize.ItemsProvider.set -> void +Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize.OverscanCount.get -> int +Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize.OverscanCount.set -> void +Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize.Placeholder.get -> Microsoft.AspNetCore.Components.RenderFragment? +Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize.Placeholder.set -> void +Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize.Virtualize() -> void +Microsoft.AspNetCore.Components.Web.WebEventCallbackFactoryEventArgsExtensions +Microsoft.AspNetCore.Components.Web.WebRenderTreeBuilderExtensions +Microsoft.AspNetCore.Components.Web.WheelEventArgs +Microsoft.AspNetCore.Components.Web.WheelEventArgs.DeltaMode.get -> long +Microsoft.AspNetCore.Components.Web.WheelEventArgs.DeltaMode.set -> void +Microsoft.AspNetCore.Components.Web.WheelEventArgs.DeltaX.get -> double +Microsoft.AspNetCore.Components.Web.WheelEventArgs.DeltaX.set -> void +Microsoft.AspNetCore.Components.Web.WheelEventArgs.DeltaY.get -> double +Microsoft.AspNetCore.Components.Web.WheelEventArgs.DeltaY.set -> void +Microsoft.AspNetCore.Components.Web.WheelEventArgs.DeltaZ.get -> double +Microsoft.AspNetCore.Components.Web.WheelEventArgs.DeltaZ.set -> void +Microsoft.AspNetCore.Components.Web.WheelEventArgs.WheelEventArgs() -> void +Microsoft.AspNetCore.Components.WebElementReferenceContext +Microsoft.AspNetCore.Components.WebElementReferenceContext.WebElementReferenceContext(Microsoft.JSInterop.IJSRuntime! jsRuntime) -> void +abstract Microsoft.AspNetCore.Components.Forms.InputBase.TryParseValueFromString(string? value, out TValue result, out string? validationErrorMessage) -> bool +override Microsoft.AspNetCore.Components.Forms.EditForm.BuildRenderTree(Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder! builder) -> void +override Microsoft.AspNetCore.Components.Forms.EditForm.OnParametersSet() -> void +override Microsoft.AspNetCore.Components.Forms.InputBase.SetParametersAsync(Microsoft.AspNetCore.Components.ParameterView parameters) -> System.Threading.Tasks.Task! +override Microsoft.AspNetCore.Components.Forms.InputCheckbox.BuildRenderTree(Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder! builder) -> void +override Microsoft.AspNetCore.Components.Forms.InputCheckbox.TryParseValueFromString(string? value, out bool result, out string? validationErrorMessage) -> bool +override Microsoft.AspNetCore.Components.Forms.InputDate.BuildRenderTree(Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder! builder) -> void +override Microsoft.AspNetCore.Components.Forms.InputDate.FormatValueAsString(TValue value) -> string! +override Microsoft.AspNetCore.Components.Forms.InputDate.TryParseValueFromString(string? value, out TValue result, out string? validationErrorMessage) -> bool +override Microsoft.AspNetCore.Components.Forms.InputFile.BuildRenderTree(Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder! builder) -> void +override Microsoft.AspNetCore.Components.Forms.InputFile.OnAfterRenderAsync(bool firstRender) -> System.Threading.Tasks.Task! +override Microsoft.AspNetCore.Components.Forms.InputFile.OnInitialized() -> void +override Microsoft.AspNetCore.Components.Forms.InputNumber.BuildRenderTree(Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder! builder) -> void +override Microsoft.AspNetCore.Components.Forms.InputNumber.FormatValueAsString(TValue value) -> string? +override Microsoft.AspNetCore.Components.Forms.InputNumber.TryParseValueFromString(string? value, out TValue result, out string? validationErrorMessage) -> bool +override Microsoft.AspNetCore.Components.Forms.InputRadio.BuildRenderTree(Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder! builder) -> void +override Microsoft.AspNetCore.Components.Forms.InputRadio.OnParametersSet() -> void +override Microsoft.AspNetCore.Components.Forms.InputRadioGroup.BuildRenderTree(Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder! builder) -> void +override Microsoft.AspNetCore.Components.Forms.InputRadioGroup.OnParametersSet() -> void +override Microsoft.AspNetCore.Components.Forms.InputRadioGroup.TryParseValueFromString(string? value, out TValue result, out string? validationErrorMessage) -> bool +override Microsoft.AspNetCore.Components.Forms.InputSelect.BuildRenderTree(Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder! builder) -> void +override Microsoft.AspNetCore.Components.Forms.InputSelect.TryParseValueFromString(string? value, out TValue result, out string? validationErrorMessage) -> bool +override Microsoft.AspNetCore.Components.Forms.InputText.BuildRenderTree(Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder! builder) -> void +override Microsoft.AspNetCore.Components.Forms.InputText.TryParseValueFromString(string? value, out string? result, out string? validationErrorMessage) -> bool +override Microsoft.AspNetCore.Components.Forms.InputTextArea.BuildRenderTree(Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder! builder) -> void +override Microsoft.AspNetCore.Components.Forms.InputTextArea.TryParseValueFromString(string? value, out string? result, out string? validationErrorMessage) -> bool +override Microsoft.AspNetCore.Components.Forms.ValidationMessage.BuildRenderTree(Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder! builder) -> void +override Microsoft.AspNetCore.Components.Forms.ValidationMessage.OnParametersSet() -> void +override Microsoft.AspNetCore.Components.Forms.ValidationSummary.BuildRenderTree(Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder! builder) -> void +override Microsoft.AspNetCore.Components.Forms.ValidationSummary.OnParametersSet() -> void +override Microsoft.AspNetCore.Components.Routing.NavLink.BuildRenderTree(Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder! builder) -> void +override Microsoft.AspNetCore.Components.Routing.NavLink.OnInitialized() -> void +override Microsoft.AspNetCore.Components.Routing.NavLink.OnParametersSet() -> void +static Microsoft.AspNetCore.Components.ElementReferenceExtensions.FocusAsync(this Microsoft.AspNetCore.Components.ElementReference elementReference) -> System.Threading.Tasks.ValueTask +static Microsoft.AspNetCore.Components.Forms.BrowserFileExtensions.RequestImageFileAsync(this Microsoft.AspNetCore.Components.Forms.IBrowserFile! browserFile, string! format, int maxWith, int maxHeight) -> System.Threading.Tasks.ValueTask +static Microsoft.AspNetCore.Components.Forms.EditContextFieldClassExtensions.FieldCssClass(this Microsoft.AspNetCore.Components.Forms.EditContext! editContext, in Microsoft.AspNetCore.Components.Forms.FieldIdentifier fieldIdentifier) -> string! +static Microsoft.AspNetCore.Components.Forms.EditContextFieldClassExtensions.FieldCssClass(this Microsoft.AspNetCore.Components.Forms.EditContext! editContext, System.Linq.Expressions.Expression!>! accessor) -> string! +static Microsoft.AspNetCore.Components.Forms.EditContextFieldClassExtensions.SetFieldCssClassProvider(this Microsoft.AspNetCore.Components.Forms.EditContext! editContext, Microsoft.AspNetCore.Components.Forms.FieldCssClassProvider! fieldCssClassProvider) -> void +static Microsoft.AspNetCore.Components.Web.WebEventCallbackFactoryEventArgsExtensions.Create(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! callback) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.Web.WebEventCallbackFactoryEventArgsExtensions.Create(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! callback) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.Web.WebEventCallbackFactoryEventArgsExtensions.Create(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! callback) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.Web.WebEventCallbackFactoryEventArgsExtensions.Create(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! callback) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.Web.WebEventCallbackFactoryEventArgsExtensions.Create(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! callback) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.Web.WebEventCallbackFactoryEventArgsExtensions.Create(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! callback) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.Web.WebEventCallbackFactoryEventArgsExtensions.Create(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! callback) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.Web.WebEventCallbackFactoryEventArgsExtensions.Create(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! callback) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.Web.WebEventCallbackFactoryEventArgsExtensions.Create(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! callback) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.Web.WebEventCallbackFactoryEventArgsExtensions.Create(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Action! callback) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.Web.WebEventCallbackFactoryEventArgsExtensions.Create(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Func! callback) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.Web.WebEventCallbackFactoryEventArgsExtensions.Create(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Func! callback) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.Web.WebEventCallbackFactoryEventArgsExtensions.Create(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Func! callback) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.Web.WebEventCallbackFactoryEventArgsExtensions.Create(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Func! callback) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.Web.WebEventCallbackFactoryEventArgsExtensions.Create(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Func! callback) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.Web.WebEventCallbackFactoryEventArgsExtensions.Create(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Func! callback) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.Web.WebEventCallbackFactoryEventArgsExtensions.Create(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Func! callback) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.Web.WebEventCallbackFactoryEventArgsExtensions.Create(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Func! callback) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.Web.WebEventCallbackFactoryEventArgsExtensions.Create(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Func! callback) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.Web.WebEventCallbackFactoryEventArgsExtensions.Create(this Microsoft.AspNetCore.Components.EventCallbackFactory! factory, object! receiver, System.Func! callback) -> Microsoft.AspNetCore.Components.EventCallback +static Microsoft.AspNetCore.Components.Web.WebRenderTreeBuilderExtensions.AddEventPreventDefaultAttribute(this Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder! builder, int sequence, string! eventName, bool value) -> void +static Microsoft.AspNetCore.Components.Web.WebRenderTreeBuilderExtensions.AddEventStopPropagationAttribute(this Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder! builder, int sequence, string! eventName, bool value) -> void +virtual Microsoft.AspNetCore.Components.Forms.FieldCssClassProvider.GetFieldCssClass(Microsoft.AspNetCore.Components.Forms.EditContext! editContext, in Microsoft.AspNetCore.Components.Forms.FieldIdentifier fieldIdentifier) -> string! +virtual Microsoft.AspNetCore.Components.Forms.InputBase.Dispose(bool disposing) -> void +virtual Microsoft.AspNetCore.Components.Forms.InputBase.FormatValueAsString(TValue value) -> string? +virtual Microsoft.AspNetCore.Components.Forms.ValidationMessage.Dispose(bool disposing) -> void +virtual Microsoft.AspNetCore.Components.Forms.ValidationSummary.Dispose(bool disposing) -> void \ No newline at end of file diff --git a/src/Components/WebAssembly/Authentication.Msal/src/PublicAPI.Shipped.txt b/src/Components/WebAssembly/Authentication.Msal/src/PublicAPI.Shipped.txt new file mode 100644 index 000000000000..ab058de62d44 --- /dev/null +++ b/src/Components/WebAssembly/Authentication.Msal/src/PublicAPI.Shipped.txt @@ -0,0 +1 @@ +#nullable enable diff --git a/src/Components/WebAssembly/Authentication.Msal/src/PublicAPI.Unshipped.txt b/src/Components/WebAssembly/Authentication.Msal/src/PublicAPI.Unshipped.txt new file mode 100644 index 000000000000..29c41fb053d4 --- /dev/null +++ b/src/Components/WebAssembly/Authentication.Msal/src/PublicAPI.Unshipped.txt @@ -0,0 +1,39 @@ +#nullable enable +Microsoft.Authentication.WebAssembly.Msal.Models.MsalCacheOptions +Microsoft.Authentication.WebAssembly.Msal.Models.MsalCacheOptions.MsalCacheOptions() -> void +Microsoft.Authentication.WebAssembly.Msal.Models.MsalCacheOptions.StoreAuthStateInCookie.get -> bool +Microsoft.Authentication.WebAssembly.Msal.Models.MsalCacheOptions.StoreAuthStateInCookie.set -> void +Microsoft.Authentication.WebAssembly.Msal.Models.MsalProviderOptions +Microsoft.Authentication.WebAssembly.Msal.Models.MsalProviderOptions.MsalProviderOptions() -> void +Microsoft.Authentication.WebAssembly.Msal.MsalAuthenticationOptions +Microsoft.Authentication.WebAssembly.Msal.MsalAuthenticationOptions.MsalAuthenticationOptions() -> void +Microsoft.Authentication.WebAssembly.Msal.MsalAuthenticationOptions.NavigateToLoginRequestUrl.get -> bool +Microsoft.Authentication.WebAssembly.Msal.MsalAuthenticationOptions.NavigateToLoginRequestUrl.set -> void +Microsoft.Authentication.WebAssembly.Msal.MsalAuthenticationOptions.ValidateAuthority.get -> bool +Microsoft.Authentication.WebAssembly.Msal.MsalAuthenticationOptions.ValidateAuthority.set -> void +Microsoft.Extensions.DependencyInjection.MsalWebAssemblyServiceCollectionExtensions +~Microsoft.Authentication.WebAssembly.Msal.Models.MsalCacheOptions.CacheLocation.get -> string +~Microsoft.Authentication.WebAssembly.Msal.Models.MsalCacheOptions.CacheLocation.set -> void +~Microsoft.Authentication.WebAssembly.Msal.Models.MsalProviderOptions.AdditionalScopesToConsent.get -> System.Collections.Generic.IList +~Microsoft.Authentication.WebAssembly.Msal.Models.MsalProviderOptions.AdditionalScopesToConsent.set -> void +~Microsoft.Authentication.WebAssembly.Msal.Models.MsalProviderOptions.Authentication.get -> Microsoft.Authentication.WebAssembly.Msal.MsalAuthenticationOptions +~Microsoft.Authentication.WebAssembly.Msal.Models.MsalProviderOptions.Authentication.set -> void +~Microsoft.Authentication.WebAssembly.Msal.Models.MsalProviderOptions.Cache.get -> Microsoft.Authentication.WebAssembly.Msal.Models.MsalCacheOptions +~Microsoft.Authentication.WebAssembly.Msal.Models.MsalProviderOptions.Cache.set -> void +~Microsoft.Authentication.WebAssembly.Msal.Models.MsalProviderOptions.DefaultAccessTokenScopes.get -> System.Collections.Generic.IList +~Microsoft.Authentication.WebAssembly.Msal.Models.MsalProviderOptions.DefaultAccessTokenScopes.set -> void +~Microsoft.Authentication.WebAssembly.Msal.Models.MsalProviderOptions.LoginMode.get -> string +~Microsoft.Authentication.WebAssembly.Msal.Models.MsalProviderOptions.LoginMode.set -> void +~Microsoft.Authentication.WebAssembly.Msal.MsalAuthenticationOptions.Authority.get -> string +~Microsoft.Authentication.WebAssembly.Msal.MsalAuthenticationOptions.Authority.set -> void +~Microsoft.Authentication.WebAssembly.Msal.MsalAuthenticationOptions.ClientId.get -> string +~Microsoft.Authentication.WebAssembly.Msal.MsalAuthenticationOptions.ClientId.set -> void +~Microsoft.Authentication.WebAssembly.Msal.MsalAuthenticationOptions.KnownAuthorities.get -> System.Collections.Generic.IList +~Microsoft.Authentication.WebAssembly.Msal.MsalAuthenticationOptions.KnownAuthorities.set -> void +~Microsoft.Authentication.WebAssembly.Msal.MsalAuthenticationOptions.PostLogoutRedirectUri.get -> string +~Microsoft.Authentication.WebAssembly.Msal.MsalAuthenticationOptions.PostLogoutRedirectUri.set -> void +~Microsoft.Authentication.WebAssembly.Msal.MsalAuthenticationOptions.RedirectUri.get -> string +~Microsoft.Authentication.WebAssembly.Msal.MsalAuthenticationOptions.RedirectUri.set -> void +~static Microsoft.Extensions.DependencyInjection.MsalWebAssemblyServiceCollectionExtensions.AddMsalAuthentication(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action> configure) -> Microsoft.Extensions.DependencyInjection.IRemoteAuthenticationBuilder +~static Microsoft.Extensions.DependencyInjection.MsalWebAssemblyServiceCollectionExtensions.AddMsalAuthentication(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action> configure) -> Microsoft.Extensions.DependencyInjection.IRemoteAuthenticationBuilder +~static Microsoft.Extensions.DependencyInjection.MsalWebAssemblyServiceCollectionExtensions.AddMsalAuthentication(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action> configure) -> Microsoft.Extensions.DependencyInjection.IRemoteAuthenticationBuilder diff --git a/src/Components/WebAssembly/DevServer/src/PublicAPI.Shipped.txt b/src/Components/WebAssembly/DevServer/src/PublicAPI.Shipped.txt new file mode 100644 index 000000000000..ab058de62d44 --- /dev/null +++ b/src/Components/WebAssembly/DevServer/src/PublicAPI.Shipped.txt @@ -0,0 +1 @@ +#nullable enable diff --git a/src/Components/WebAssembly/DevServer/src/PublicAPI.Unshipped.txt b/src/Components/WebAssembly/DevServer/src/PublicAPI.Unshipped.txt new file mode 100644 index 000000000000..e6777be07cae --- /dev/null +++ b/src/Components/WebAssembly/DevServer/src/PublicAPI.Unshipped.txt @@ -0,0 +1,4 @@ +#nullable enable +Microsoft.AspNetCore.Components.WebAssembly.DevServer.Server.Program +Microsoft.AspNetCore.Components.WebAssembly.DevServer.Server.Program.Program() -> void +~static Microsoft.AspNetCore.Components.WebAssembly.DevServer.Server.Program.BuildWebHost(string[] args) -> Microsoft.Extensions.Hosting.IHost diff --git a/src/Components/WebAssembly/JSInterop/src/PublicAPI.Shipped.txt b/src/Components/WebAssembly/JSInterop/src/PublicAPI.Shipped.txt new file mode 100644 index 000000000000..ab058de62d44 --- /dev/null +++ b/src/Components/WebAssembly/JSInterop/src/PublicAPI.Shipped.txt @@ -0,0 +1 @@ +#nullable enable diff --git a/src/Components/WebAssembly/JSInterop/src/PublicAPI.Unshipped.txt b/src/Components/WebAssembly/JSInterop/src/PublicAPI.Unshipped.txt new file mode 100644 index 000000000000..d565dd9b1761 --- /dev/null +++ b/src/Components/WebAssembly/JSInterop/src/PublicAPI.Unshipped.txt @@ -0,0 +1,10 @@ +#nullable enable +Microsoft.JSInterop.WebAssembly.WebAssemblyJSRuntime +Microsoft.JSInterop.WebAssembly.WebAssemblyJSRuntime.WebAssemblyJSRuntime() -> void +override Microsoft.JSInterop.WebAssembly.WebAssemblyJSRuntime.EndInvokeDotNet(Microsoft.JSInterop.Infrastructure.DotNetInvocationInfo callInfo, in Microsoft.JSInterop.Infrastructure.DotNetInvocationResult dispatchResult) -> void +~Microsoft.JSInterop.WebAssembly.WebAssemblyJSRuntime.InvokeUnmarshalled(string identifier, T0 arg0, T1 arg1, T2 arg2) -> TResult +~Microsoft.JSInterop.WebAssembly.WebAssemblyJSRuntime.InvokeUnmarshalled(string identifier, T0 arg0, T1 arg1) -> TResult +~Microsoft.JSInterop.WebAssembly.WebAssemblyJSRuntime.InvokeUnmarshalled(string identifier, T0 arg0) -> TResult +~Microsoft.JSInterop.WebAssembly.WebAssemblyJSRuntime.InvokeUnmarshalled(string identifier) -> TResult +~override Microsoft.JSInterop.WebAssembly.WebAssemblyJSRuntime.BeginInvokeJS(long asyncHandle, string identifier, string argsJson, Microsoft.JSInterop.JSCallResultType resultType, long targetInstanceId) -> void +~override Microsoft.JSInterop.WebAssembly.WebAssemblyJSRuntime.InvokeJS(string identifier, string argsJson, Microsoft.JSInterop.JSCallResultType resultType, long targetInstanceId) -> string diff --git a/src/Components/WebAssembly/Server/src/PublicAPI.Shipped.txt b/src/Components/WebAssembly/Server/src/PublicAPI.Shipped.txt new file mode 100644 index 000000000000..ab058de62d44 --- /dev/null +++ b/src/Components/WebAssembly/Server/src/PublicAPI.Shipped.txt @@ -0,0 +1 @@ +#nullable enable diff --git a/src/Components/WebAssembly/Server/src/PublicAPI.Unshipped.txt b/src/Components/WebAssembly/Server/src/PublicAPI.Unshipped.txt new file mode 100644 index 000000000000..ba007b89a11d --- /dev/null +++ b/src/Components/WebAssembly/Server/src/PublicAPI.Unshipped.txt @@ -0,0 +1,9 @@ +#nullable enable +Microsoft.AspNetCore.Builder.ComponentsWebAssemblyApplicationBuilderExtensions +Microsoft.AspNetCore.Builder.WebAssemblyNetDebugProxyAppBuilderExtensions +Microsoft.AspNetCore.Components.WebAssembly.Server.TargetPickerUi +~Microsoft.AspNetCore.Components.WebAssembly.Server.TargetPickerUi.Display(Microsoft.AspNetCore.Http.HttpContext context) -> System.Threading.Tasks.Task +~Microsoft.AspNetCore.Components.WebAssembly.Server.TargetPickerUi.TargetPickerUi(string debugProxyUrl, string devToolsHost) -> void +~static Microsoft.AspNetCore.Builder.ComponentsWebAssemblyApplicationBuilderExtensions.UseBlazorFrameworkFiles(this Microsoft.AspNetCore.Builder.IApplicationBuilder applicationBuilder) -> Microsoft.AspNetCore.Builder.IApplicationBuilder +~static Microsoft.AspNetCore.Builder.ComponentsWebAssemblyApplicationBuilderExtensions.UseBlazorFrameworkFiles(this Microsoft.AspNetCore.Builder.IApplicationBuilder builder, Microsoft.AspNetCore.Http.PathString pathPrefix) -> Microsoft.AspNetCore.Builder.IApplicationBuilder +~static Microsoft.AspNetCore.Builder.WebAssemblyNetDebugProxyAppBuilderExtensions.UseWebAssemblyDebugging(this Microsoft.AspNetCore.Builder.IApplicationBuilder app) -> void diff --git a/src/Components/WebAssembly/WebAssembly.Authentication/src/PublicAPI.Shipped.txt b/src/Components/WebAssembly/WebAssembly.Authentication/src/PublicAPI.Shipped.txt new file mode 100644 index 000000000000..ab058de62d44 --- /dev/null +++ b/src/Components/WebAssembly/WebAssembly.Authentication/src/PublicAPI.Shipped.txt @@ -0,0 +1 @@ +#nullable enable diff --git a/src/Components/WebAssembly/WebAssembly.Authentication/src/PublicAPI.Unshipped.txt b/src/Components/WebAssembly/WebAssembly.Authentication/src/PublicAPI.Unshipped.txt new file mode 100644 index 000000000000..3e3c985f0365 --- /dev/null +++ b/src/Components/WebAssembly/WebAssembly.Authentication/src/PublicAPI.Unshipped.txt @@ -0,0 +1,226 @@ +#nullable enable +Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessToken +Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessToken.AccessToken() -> void +Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessToken.Expires.get -> System.DateTimeOffset +Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessToken.Expires.set -> void +Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessTokenNotAvailableException +Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessTokenNotAvailableException.Redirect() -> void +Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessTokenRequestOptions +Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessTokenRequestOptions.AccessTokenRequestOptions() -> void +Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessTokenResult +Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessTokenResult.Status.get -> Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessTokenResultStatus +Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessTokenResultStatus +Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessTokenResultStatus.RequiresRedirect = 1 -> Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessTokenResultStatus +Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessTokenResultStatus.Success = 0 -> Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessTokenResultStatus +Microsoft.AspNetCore.Components.WebAssembly.Authentication.ApiAuthorizationProviderOptions +Microsoft.AspNetCore.Components.WebAssembly.Authentication.ApiAuthorizationProviderOptions.ApiAuthorizationProviderOptions() -> void +Microsoft.AspNetCore.Components.WebAssembly.Authentication.AuthorizationMessageHandler +Microsoft.AspNetCore.Components.WebAssembly.Authentication.BaseAddressAuthorizationMessageHandler +Microsoft.AspNetCore.Components.WebAssembly.Authentication.IAccessTokenProvider +Microsoft.AspNetCore.Components.WebAssembly.Authentication.Internal.IAccessTokenProviderAccessor +Microsoft.AspNetCore.Components.WebAssembly.Authentication.OidcProviderOptions +Microsoft.AspNetCore.Components.WebAssembly.Authentication.OidcProviderOptions.OidcProviderOptions() -> void +Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationActions +Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationActions.RemoteAuthenticationActions() -> void +Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationApplicationPathsOptions +Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationApplicationPathsOptions.RemoteAuthenticationApplicationPathsOptions() -> void +Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationContext.RemoteAuthenticationContext() -> void +Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationDefaults +Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationDefaults.RemoteAuthenticationDefaults() -> void +Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationOptions +Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationOptions.ProviderOptions.get -> TRemoteAuthenticationProviderOptions +Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationOptions.RemoteAuthenticationOptions() -> void +Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationResult.RemoteAuthenticationResult() -> void +Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationResult.Status.get -> Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationStatus +Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationResult.Status.set -> void +Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationState +Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationState.RemoteAuthenticationState() -> void +Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationStatus +Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationStatus.Failure = 2 -> Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationStatus +Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationStatus.OperationCompleted = 3 -> Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationStatus +Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationStatus.Redirect = 0 -> Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationStatus +Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationStatus.Success = 1 -> Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationStatus +Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationUserOptions +Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationUserOptions.RemoteAuthenticationUserOptions() -> void +Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorView +Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorView.RemoteAuthenticatorView() -> void +Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.RemoteAuthenticatorViewCore() -> void +Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteUserAccount +Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteUserAccount.RemoteUserAccount() -> void +Microsoft.AspNetCore.Components.WebAssembly.Authentication.SignOutSessionStateManager +Microsoft.Extensions.DependencyInjection.RemoteAuthenticationBuilderExtensions +Microsoft.Extensions.DependencyInjection.WebAssemblyAuthenticationServiceCollectionExtensions +virtual Microsoft.AspNetCore.Components.WebAssembly.Authentication.SignOutSessionStateManager.SetSignOutState() -> System.Threading.Tasks.ValueTask +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessToken.GrantedScopes.get -> System.Collections.Generic.IReadOnlyList +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessToken.GrantedScopes.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessToken.Value.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessToken.Value.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessTokenNotAvailableException.AccessTokenNotAvailableException(Microsoft.AspNetCore.Components.NavigationManager navigation, Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessTokenResult tokenResult, System.Collections.Generic.IEnumerable scopes) -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessTokenRequestOptions.ReturnUrl.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessTokenRequestOptions.ReturnUrl.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessTokenRequestOptions.Scopes.get -> System.Collections.Generic.IEnumerable +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessTokenRequestOptions.Scopes.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessTokenResult.AccessTokenResult(Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessTokenResultStatus status, Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessToken token, string redirectUrl) -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessTokenResult.RedirectUrl.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessTokenResult.TryGetToken(out Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessToken accessToken) -> bool +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccountClaimsPrincipalFactory +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccountClaimsPrincipalFactory.AccountClaimsPrincipalFactory(Microsoft.AspNetCore.Components.WebAssembly.Authentication.Internal.IAccessTokenProviderAccessor accessor) -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccountClaimsPrincipalFactory.TokenProvider.get -> Microsoft.AspNetCore.Components.WebAssembly.Authentication.IAccessTokenProvider +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.ApiAuthorizationProviderOptions.ConfigurationEndpoint.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.ApiAuthorizationProviderOptions.ConfigurationEndpoint.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.AuthorizationMessageHandler.AuthorizationMessageHandler(Microsoft.AspNetCore.Components.WebAssembly.Authentication.IAccessTokenProvider provider, Microsoft.AspNetCore.Components.NavigationManager navigation) -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.AuthorizationMessageHandler.ConfigureHandler(System.Collections.Generic.IEnumerable authorizedUrls, System.Collections.Generic.IEnumerable scopes = null, string returnUrl = null) -> Microsoft.AspNetCore.Components.WebAssembly.Authentication.AuthorizationMessageHandler +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.BaseAddressAuthorizationMessageHandler.BaseAddressAuthorizationMessageHandler(Microsoft.AspNetCore.Components.WebAssembly.Authentication.IAccessTokenProvider provider, Microsoft.AspNetCore.Components.NavigationManager navigationManager) -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.IAccessTokenProvider.RequestAccessToken() -> System.Threading.Tasks.ValueTask +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.IAccessTokenProvider.RequestAccessToken(Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessTokenRequestOptions options) -> System.Threading.Tasks.ValueTask +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.IRemoteAuthenticationService +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.IRemoteAuthenticationService.CompleteSignInAsync(Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationContext context) -> System.Threading.Tasks.Task> +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.IRemoteAuthenticationService.CompleteSignOutAsync(Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationContext context) -> System.Threading.Tasks.Task> +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.IRemoteAuthenticationService.SignInAsync(Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationContext context) -> System.Threading.Tasks.Task> +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.IRemoteAuthenticationService.SignOutAsync(Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationContext context) -> System.Threading.Tasks.Task> +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.Internal.IAccessTokenProviderAccessor.TokenProvider.get -> Microsoft.AspNetCore.Components.WebAssembly.Authentication.IAccessTokenProvider +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.OidcProviderOptions.Authority.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.OidcProviderOptions.Authority.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.OidcProviderOptions.ClientId.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.OidcProviderOptions.ClientId.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.OidcProviderOptions.DefaultScopes.get -> System.Collections.Generic.IList +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.OidcProviderOptions.MetadataUrl.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.OidcProviderOptions.MetadataUrl.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.OidcProviderOptions.PostLogoutRedirectUri.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.OidcProviderOptions.PostLogoutRedirectUri.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.OidcProviderOptions.RedirectUri.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.OidcProviderOptions.RedirectUri.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.OidcProviderOptions.ResponseMode.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.OidcProviderOptions.ResponseMode.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.OidcProviderOptions.ResponseType.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.OidcProviderOptions.ResponseType.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationApplicationPathsOptions.LogInCallbackPath.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationApplicationPathsOptions.LogInCallbackPath.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationApplicationPathsOptions.LogInFailedPath.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationApplicationPathsOptions.LogInFailedPath.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationApplicationPathsOptions.LogInPath.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationApplicationPathsOptions.LogInPath.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationApplicationPathsOptions.LogOutCallbackPath.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationApplicationPathsOptions.LogOutCallbackPath.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationApplicationPathsOptions.LogOutFailedPath.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationApplicationPathsOptions.LogOutFailedPath.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationApplicationPathsOptions.LogOutPath.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationApplicationPathsOptions.LogOutPath.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationApplicationPathsOptions.LogOutSucceededPath.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationApplicationPathsOptions.LogOutSucceededPath.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationApplicationPathsOptions.ProfilePath.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationApplicationPathsOptions.ProfilePath.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationApplicationPathsOptions.RegisterPath.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationApplicationPathsOptions.RegisterPath.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationApplicationPathsOptions.RemoteProfilePath.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationApplicationPathsOptions.RemoteProfilePath.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationApplicationPathsOptions.RemoteRegisterPath.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationApplicationPathsOptions.RemoteRegisterPath.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationContext +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationContext.State.get -> TRemoteAuthenticationState +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationContext.State.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationContext.Url.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationContext.Url.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationOptions.AuthenticationPaths.get -> Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationApplicationPathsOptions +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationOptions.UserOptions.get -> Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationUserOptions +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationResult +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationResult.ErrorMessage.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationResult.ErrorMessage.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationResult.State.get -> TRemoteAuthenticationState +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationResult.State.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationService +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationService.AccountClaimsPrincipalFactory.get -> Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccountClaimsPrincipalFactory +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationService.JsRuntime.get -> Microsoft.JSInterop.IJSRuntime +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationService.Navigation.get -> Microsoft.AspNetCore.Components.NavigationManager +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationService.Options.get -> Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationOptions +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationService.RemoteAuthenticationService(Microsoft.JSInterop.IJSRuntime jsRuntime, Microsoft.Extensions.Options.IOptions> options, Microsoft.AspNetCore.Components.NavigationManager navigation, Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccountClaimsPrincipalFactory accountClaimsPrincipalFactory) -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationState.ReturnUrl.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationState.ReturnUrl.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationUserOptions.AuthenticationType.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationUserOptions.AuthenticationType.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationUserOptions.NameClaim.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationUserOptions.NameClaim.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationUserOptions.RoleClaim.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationUserOptions.RoleClaim.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationUserOptions.ScopeClaim.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationUserOptions.ScopeClaim.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.Action.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.Action.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.ApplicationPaths.get -> Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationApplicationPathsOptions +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.ApplicationPaths.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.AuthenticationState.get -> TAuthenticationState +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.AuthenticationState.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.CompletingLogOut.get -> Microsoft.AspNetCore.Components.RenderFragment +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.CompletingLogOut.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.CompletingLoggingIn.get -> Microsoft.AspNetCore.Components.RenderFragment +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.CompletingLoggingIn.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.LogInFailed.get -> Microsoft.AspNetCore.Components.RenderFragment +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.LogInFailed.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.LogOut.get -> Microsoft.AspNetCore.Components.RenderFragment +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.LogOut.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.LogOutFailed.get -> Microsoft.AspNetCore.Components.RenderFragment +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.LogOutFailed.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.LogOutSucceeded.get -> Microsoft.AspNetCore.Components.RenderFragment +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.LogOutSucceeded.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.LoggingIn.get -> Microsoft.AspNetCore.Components.RenderFragment +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.LoggingIn.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.OnLogInSucceeded.get -> Microsoft.AspNetCore.Components.EventCallback +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.OnLogInSucceeded.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.OnLogOutSucceeded.get -> Microsoft.AspNetCore.Components.EventCallback +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.OnLogOutSucceeded.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.Registering.get -> Microsoft.AspNetCore.Components.RenderFragment +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.Registering.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.UserProfile.get -> Microsoft.AspNetCore.Components.RenderFragment +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.UserProfile.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteUserAccount.AdditionalProperties.get -> System.Collections.Generic.IDictionary +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteUserAccount.AdditionalProperties.set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Authentication.SignOutSessionStateManager.SignOutSessionStateManager(Microsoft.JSInterop.IJSRuntime jsRuntime) -> void +~Microsoft.Extensions.DependencyInjection.IRemoteAuthenticationBuilder +~Microsoft.Extensions.DependencyInjection.IRemoteAuthenticationBuilder.Services.get -> Microsoft.Extensions.DependencyInjection.IServiceCollection +~const Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationActions.LogIn = "login" -> string +~const Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationActions.LogInCallback = "login-callback" -> string +~const Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationActions.LogInFailed = "login-failed" -> string +~const Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationActions.LogOut = "logout" -> string +~const Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationActions.LogOutCallback = "logout-callback" -> string +~const Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationActions.LogOutFailed = "logout-failed" -> string +~const Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationActions.LogOutSucceeded = "logged-out" -> string +~const Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationActions.Profile = "profile" -> string +~const Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationActions.Register = "register" -> string +~override Microsoft.AspNetCore.Components.WebAssembly.Authentication.AuthorizationMessageHandler.SendAsync(System.Net.Http.HttpRequestMessage request, System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.Task +~override Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationService.GetAuthenticationStateAsync() -> System.Threading.Tasks.Task +~override Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.BuildRenderTree(Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder builder) -> void +~override Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticatorViewCore.OnParametersSetAsync() -> System.Threading.Tasks.Task +~static Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationActions.IsAction(string action, string candidate) -> bool +~static Microsoft.Extensions.DependencyInjection.RemoteAuthenticationBuilderExtensions.AddAccountClaimsPrincipalFactory(this Microsoft.Extensions.DependencyInjection.IRemoteAuthenticationBuilder builder) -> Microsoft.Extensions.DependencyInjection.IRemoteAuthenticationBuilder +~static Microsoft.Extensions.DependencyInjection.RemoteAuthenticationBuilderExtensions.AddAccountClaimsPrincipalFactory(this Microsoft.Extensions.DependencyInjection.IRemoteAuthenticationBuilder builder) -> Microsoft.Extensions.DependencyInjection.IRemoteAuthenticationBuilder +~static Microsoft.Extensions.DependencyInjection.RemoteAuthenticationBuilderExtensions.AddAccountClaimsPrincipalFactory(this Microsoft.Extensions.DependencyInjection.IRemoteAuthenticationBuilder builder) -> Microsoft.Extensions.DependencyInjection.IRemoteAuthenticationBuilder +~static Microsoft.Extensions.DependencyInjection.WebAssemblyAuthenticationServiceCollectionExtensions.AddApiAuthorization(this Microsoft.Extensions.DependencyInjection.IServiceCollection services) -> Microsoft.Extensions.DependencyInjection.IRemoteAuthenticationBuilder +~static Microsoft.Extensions.DependencyInjection.WebAssemblyAuthenticationServiceCollectionExtensions.AddApiAuthorization(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action> configure) -> Microsoft.Extensions.DependencyInjection.IRemoteAuthenticationBuilder +~static Microsoft.Extensions.DependencyInjection.WebAssemblyAuthenticationServiceCollectionExtensions.AddApiAuthorization(this Microsoft.Extensions.DependencyInjection.IServiceCollection services) -> Microsoft.Extensions.DependencyInjection.IRemoteAuthenticationBuilder +~static Microsoft.Extensions.DependencyInjection.WebAssemblyAuthenticationServiceCollectionExtensions.AddApiAuthorization(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action> configure) -> Microsoft.Extensions.DependencyInjection.IRemoteAuthenticationBuilder +~static Microsoft.Extensions.DependencyInjection.WebAssemblyAuthenticationServiceCollectionExtensions.AddApiAuthorization(this Microsoft.Extensions.DependencyInjection.IServiceCollection services) -> Microsoft.Extensions.DependencyInjection.IRemoteAuthenticationBuilder +~static Microsoft.Extensions.DependencyInjection.WebAssemblyAuthenticationServiceCollectionExtensions.AddApiAuthorization(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action> configure) -> Microsoft.Extensions.DependencyInjection.IRemoteAuthenticationBuilder +~static Microsoft.Extensions.DependencyInjection.WebAssemblyAuthenticationServiceCollectionExtensions.AddOidcAuthentication(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action> configure) -> Microsoft.Extensions.DependencyInjection.IRemoteAuthenticationBuilder +~static Microsoft.Extensions.DependencyInjection.WebAssemblyAuthenticationServiceCollectionExtensions.AddOidcAuthentication(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action> configure) -> Microsoft.Extensions.DependencyInjection.IRemoteAuthenticationBuilder +~static Microsoft.Extensions.DependencyInjection.WebAssemblyAuthenticationServiceCollectionExtensions.AddOidcAuthentication(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action> configure) -> Microsoft.Extensions.DependencyInjection.IRemoteAuthenticationBuilder +~static Microsoft.Extensions.DependencyInjection.WebAssemblyAuthenticationServiceCollectionExtensions.AddRemoteAuthentication(this Microsoft.Extensions.DependencyInjection.IServiceCollection services) -> Microsoft.Extensions.DependencyInjection.IRemoteAuthenticationBuilder +~static Microsoft.Extensions.DependencyInjection.WebAssemblyAuthenticationServiceCollectionExtensions.AddRemoteAuthentication(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action> configure) -> Microsoft.Extensions.DependencyInjection.IRemoteAuthenticationBuilder +~static readonly Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationDefaults.LoginCallbackPath -> string +~static readonly Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationDefaults.LoginFailedPath -> string +~static readonly Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationDefaults.LoginPath -> string +~static readonly Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationDefaults.LogoutCallbackPath -> string +~static readonly Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationDefaults.LogoutFailedPath -> string +~static readonly Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationDefaults.LogoutPath -> string +~static readonly Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationDefaults.LogoutSucceededPath -> string +~static readonly Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationDefaults.ProfilePath -> string +~static readonly Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationDefaults.RegisterPath -> string +~virtual Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccountClaimsPrincipalFactory.CreateUserAsync(TAccount account, Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationUserOptions options) -> System.Threading.Tasks.ValueTask +~virtual Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationService.CompleteSignInAsync(Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationContext context) -> System.Threading.Tasks.Task> +~virtual Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationService.CompleteSignOutAsync(Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationContext context) -> System.Threading.Tasks.Task> +~virtual Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationService.GetAuthenticatedUser() -> System.Threading.Tasks.ValueTask +~virtual Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationService.RequestAccessToken() -> System.Threading.Tasks.ValueTask +~virtual Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationService.RequestAccessToken(Microsoft.AspNetCore.Components.WebAssembly.Authentication.AccessTokenRequestOptions options) -> System.Threading.Tasks.ValueTask +~virtual Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationService.SignInAsync(Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationContext context) -> System.Threading.Tasks.Task> +~virtual Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationService.SignOutAsync(Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationContext context) -> System.Threading.Tasks.Task> +~virtual Microsoft.AspNetCore.Components.WebAssembly.Authentication.SignOutSessionStateManager.ValidateSignOutState() -> System.Threading.Tasks.Task diff --git a/src/Components/WebAssembly/WebAssembly/src/PublicAPI.Shipped.txt b/src/Components/WebAssembly/WebAssembly/src/PublicAPI.Shipped.txt new file mode 100644 index 000000000000..ab058de62d44 --- /dev/null +++ b/src/Components/WebAssembly/WebAssembly/src/PublicAPI.Shipped.txt @@ -0,0 +1 @@ +#nullable enable diff --git a/src/Components/WebAssembly/WebAssembly/src/PublicAPI.Unshipped.txt b/src/Components/WebAssembly/WebAssembly/src/PublicAPI.Unshipped.txt new file mode 100644 index 000000000000..831880cbcba2 --- /dev/null +++ b/src/Components/WebAssembly/WebAssembly/src/PublicAPI.Unshipped.txt @@ -0,0 +1,74 @@ +#nullable enable +Microsoft.AspNetCore.Components.WebAssembly.Hosting.IWebAssemblyHostEnvironment +Microsoft.AspNetCore.Components.WebAssembly.Hosting.RootComponentMapping +Microsoft.AspNetCore.Components.WebAssembly.Hosting.RootComponentMapping.Parameters.get -> Microsoft.AspNetCore.Components.ParameterView +Microsoft.AspNetCore.Components.WebAssembly.Hosting.RootComponentMappingCollection +Microsoft.AspNetCore.Components.WebAssembly.Hosting.RootComponentMappingCollection.RootComponentMappingCollection() -> void +Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHost +Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHost.DisposeAsync() -> System.Threading.Tasks.ValueTask +Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHostBuilder +Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHostConfiguration +Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHostConfiguration.Dispose() -> void +Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHostConfiguration.Reload() -> void +Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHostConfiguration.WebAssemblyHostConfiguration() -> void +Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHostEnvironmentExtensions +Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestCache +Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestCache.Default = 0 -> Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestCache +Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestCache.ForceCache = 4 -> Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestCache +Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestCache.NoCache = 3 -> Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestCache +Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestCache.NoStore = 1 -> Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestCache +Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestCache.OnlyIfCached = 5 -> Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestCache +Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestCache.Reload = 2 -> Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestCache +Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestCredentials +Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestCredentials.Include = 2 -> Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestCredentials +Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestCredentials.Omit = 0 -> Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestCredentials +Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestCredentials.SameOrigin = 1 -> Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestCredentials +Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestMode +Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestMode.Cors = 2 -> Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestMode +Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestMode.Navigate = 3 -> Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestMode +Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestMode.NoCors = 1 -> Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestMode +Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestMode.SameOrigin = 0 -> Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestMode +Microsoft.AspNetCore.Components.WebAssembly.Http.WebAssemblyHttpRequestMessageExtensions +Microsoft.AspNetCore.Components.WebAssembly.Infrastructure.JSInteropMethods +Microsoft.AspNetCore.Components.WebAssembly.Services.LazyAssemblyLoader +~Microsoft.AspNetCore.Components.WebAssembly.Hosting.IWebAssemblyHostEnvironment.BaseAddress.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Hosting.IWebAssemblyHostEnvironment.Environment.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Hosting.RootComponentMapping.ComponentType.get -> System.Type +~Microsoft.AspNetCore.Components.WebAssembly.Hosting.RootComponentMapping.RootComponentMapping(System.Type componentType, string selector) -> void +~Microsoft.AspNetCore.Components.WebAssembly.Hosting.RootComponentMapping.RootComponentMapping(System.Type componentType, string selector, Microsoft.AspNetCore.Components.ParameterView parameters) -> void +~Microsoft.AspNetCore.Components.WebAssembly.Hosting.RootComponentMapping.Selector.get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Hosting.RootComponentMappingCollection.Add(System.Type componentType, string selector) -> void +~Microsoft.AspNetCore.Components.WebAssembly.Hosting.RootComponentMappingCollection.Add(System.Type componentType, string selector, Microsoft.AspNetCore.Components.ParameterView parameters) -> void +~Microsoft.AspNetCore.Components.WebAssembly.Hosting.RootComponentMappingCollection.Add(string selector) -> void +~Microsoft.AspNetCore.Components.WebAssembly.Hosting.RootComponentMappingCollection.AddRange(System.Collections.Generic.IEnumerable items) -> void +~Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHost.Configuration.get -> Microsoft.Extensions.Configuration.IConfiguration +~Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHost.RunAsync() -> System.Threading.Tasks.Task +~Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHost.Services.get -> System.IServiceProvider +~Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHostBuilder.Build() -> Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHost +~Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHostBuilder.Configuration.get -> Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHostConfiguration +~Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHostBuilder.ConfigureContainer(Microsoft.Extensions.DependencyInjection.IServiceProviderFactory factory, System.Action configure = null) -> void +~Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHostBuilder.HostEnvironment.get -> Microsoft.AspNetCore.Components.WebAssembly.Hosting.IWebAssemblyHostEnvironment +~Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHostBuilder.Logging.get -> Microsoft.Extensions.Logging.ILoggingBuilder +~Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHostBuilder.RootComponents.get -> Microsoft.AspNetCore.Components.WebAssembly.Hosting.RootComponentMappingCollection +~Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHostBuilder.Services.get -> Microsoft.Extensions.DependencyInjection.IServiceCollection +~Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHostConfiguration.Add(Microsoft.Extensions.Configuration.IConfigurationSource source) -> Microsoft.Extensions.Configuration.IConfigurationBuilder +~Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHostConfiguration.Build() -> Microsoft.Extensions.Configuration.IConfigurationRoot +~Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHostConfiguration.GetReloadToken() -> Microsoft.Extensions.Primitives.IChangeToken +~Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHostConfiguration.GetSection(string key) -> Microsoft.Extensions.Configuration.IConfigurationSection +~Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHostConfiguration.this[string key].get -> string +~Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHostConfiguration.this[string key].set -> void +~Microsoft.AspNetCore.Components.WebAssembly.Services.LazyAssemblyLoader.LazyAssemblyLoader(Microsoft.JSInterop.IJSRuntime jsRuntime) -> void +~Microsoft.AspNetCore.Components.WebAssembly.Services.LazyAssemblyLoader.LoadAssembliesAsync(System.Collections.Generic.IEnumerable assembliesToLoad) -> System.Threading.Tasks.Task> +~static Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHostBuilder.CreateDefault(string[] args = null) -> Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHostBuilder +~static Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHostEnvironmentExtensions.IsDevelopment(this Microsoft.AspNetCore.Components.WebAssembly.Hosting.IWebAssemblyHostEnvironment hostingEnvironment) -> bool +~static Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHostEnvironmentExtensions.IsEnvironment(this Microsoft.AspNetCore.Components.WebAssembly.Hosting.IWebAssemblyHostEnvironment hostingEnvironment, string environmentName) -> bool +~static Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHostEnvironmentExtensions.IsProduction(this Microsoft.AspNetCore.Components.WebAssembly.Hosting.IWebAssemblyHostEnvironment hostingEnvironment) -> bool +~static Microsoft.AspNetCore.Components.WebAssembly.Hosting.WebAssemblyHostEnvironmentExtensions.IsStaging(this Microsoft.AspNetCore.Components.WebAssembly.Hosting.IWebAssemblyHostEnvironment hostingEnvironment) -> bool +~static Microsoft.AspNetCore.Components.WebAssembly.Http.WebAssemblyHttpRequestMessageExtensions.SetBrowserRequestCache(this System.Net.Http.HttpRequestMessage requestMessage, Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestCache requestCache) -> System.Net.Http.HttpRequestMessage +~static Microsoft.AspNetCore.Components.WebAssembly.Http.WebAssemblyHttpRequestMessageExtensions.SetBrowserRequestCredentials(this System.Net.Http.HttpRequestMessage requestMessage, Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestCredentials requestCredentials) -> System.Net.Http.HttpRequestMessage +~static Microsoft.AspNetCore.Components.WebAssembly.Http.WebAssemblyHttpRequestMessageExtensions.SetBrowserRequestIntegrity(this System.Net.Http.HttpRequestMessage requestMessage, string integrity) -> System.Net.Http.HttpRequestMessage +~static Microsoft.AspNetCore.Components.WebAssembly.Http.WebAssemblyHttpRequestMessageExtensions.SetBrowserRequestMode(this System.Net.Http.HttpRequestMessage requestMessage, Microsoft.AspNetCore.Components.WebAssembly.Http.BrowserRequestMode requestMode) -> System.Net.Http.HttpRequestMessage +~static Microsoft.AspNetCore.Components.WebAssembly.Http.WebAssemblyHttpRequestMessageExtensions.SetBrowserRequestOption(this System.Net.Http.HttpRequestMessage requestMessage, string name, object value) -> System.Net.Http.HttpRequestMessage +~static Microsoft.AspNetCore.Components.WebAssembly.Http.WebAssemblyHttpRequestMessageExtensions.SetBrowserResponseStreamingEnabled(this System.Net.Http.HttpRequestMessage requestMessage, bool streamingEnabled) -> System.Net.Http.HttpRequestMessage +~static Microsoft.AspNetCore.Components.WebAssembly.Infrastructure.JSInteropMethods.DispatchEvent(Microsoft.AspNetCore.Components.RenderTree.WebEventDescriptor eventDescriptor, string eventArgsJson) -> System.Threading.Tasks.Task +~static Microsoft.AspNetCore.Components.WebAssembly.Infrastructure.JSInteropMethods.NotifyLocationChanged(string uri, bool isInterceptedLink) -> void From 9cbf55b09413a12a322010cd938e7485ce038675 Mon Sep 17 00:00:00 2001 From: Brennan Date: Tue, 8 Sep 2020 10:54:09 -0700 Subject: [PATCH 27/45] [Java] Fix close with LongPolling (#25582) --- .../com/microsoft/signalr/HubConnection.java | 4 +- .../signalr/LongPollingTransport.java | 9 ++- .../microsoft/signalr/HubConnectionTest.java | 78 +++++++++++++++++++ .../signalr/LongPollingTransportTest.java | 28 ++++++- 4 files changed, 113 insertions(+), 6 deletions(-) diff --git a/src/SignalR/clients/java/signalr/core/src/main/java/com/microsoft/signalr/HubConnection.java b/src/SignalR/clients/java/signalr/core/src/main/java/com/microsoft/signalr/HubConnection.java index 0aa4e4c336ca..e67bdacc8867 100644 --- a/src/SignalR/clients/java/signalr/core/src/main/java/com/microsoft/signalr/HubConnection.java +++ b/src/SignalR/clients/java/signalr/core/src/main/java/com/microsoft/signalr/HubConnection.java @@ -527,7 +527,9 @@ private Completable stop(String errorMessage) { hubConnectionStateLock.unlock(); } - return transport.stop(); + Completable stop = transport.stop(); + stop.onErrorComplete().subscribe(); + return stop; } /** diff --git a/src/SignalR/clients/java/signalr/core/src/main/java/com/microsoft/signalr/LongPollingTransport.java b/src/SignalR/clients/java/signalr/core/src/main/java/com/microsoft/signalr/LongPollingTransport.java index 00dc46f97b74..d52d5edb3880 100644 --- a/src/SignalR/clients/java/signalr/core/src/main/java/com/microsoft/signalr/LongPollingTransport.java +++ b/src/SignalR/clients/java/signalr/core/src/main/java/com/microsoft/signalr/LongPollingTransport.java @@ -19,7 +19,7 @@ class LongPollingTransport implements Transport { private OnReceiveCallBack onReceiveCallBack; - private TransportOnClosedCallback onClose; + private TransportOnClosedCallback onClose = (reason) -> {}; private String url; private final HttpClient client; private final HttpClient pollingClient; @@ -30,6 +30,7 @@ class LongPollingTransport implements Transport { private String pollUrl; private String closeError; private CompletableSubject receiveLoop = CompletableSubject.create(); + private CompletableSubject closeSubject = CompletableSubject.create(); private ExecutorService threadPool; private ExecutorService onReceiveThread; private AtomicBoolean stopCalled = new AtomicBoolean(false); @@ -157,7 +158,7 @@ public void setOnClose(TransportOnClosedCallback onCloseCallback) { public Completable stop() { if (stopCalled.compareAndSet(false, true)) { this.active = false; - return this.updateHeaderToken().andThen(Completable.defer(() -> { + Completable stopCompletable = this.updateHeaderToken().andThen(Completable.defer(() -> { HttpRequest request = new HttpRequest(); request.addHeaders(headers); return this.pollingClient.delete(this.url, request).ignoreElement() @@ -168,8 +169,10 @@ public Completable stop() { })).doOnError(e -> { cleanup(e.getMessage()); }); + + stopCompletable.subscribe(closeSubject); } - return Completable.complete(); + return closeSubject; } private void cleanup(String error) { diff --git a/src/SignalR/clients/java/signalr/test/src/main/java/com/microsoft/signalr/HubConnectionTest.java b/src/SignalR/clients/java/signalr/test/src/main/java/com/microsoft/signalr/HubConnectionTest.java index 402a21c74b91..57c0c8c9b30e 100644 --- a/src/SignalR/clients/java/signalr/test/src/main/java/com/microsoft/signalr/HubConnectionTest.java +++ b/src/SignalR/clients/java/signalr/test/src/main/java/com/microsoft/signalr/HubConnectionTest.java @@ -3127,6 +3127,84 @@ public void LongPollingTransportAccessTokenProviderThrowsDuringStop() { assertEquals(HubConnectionState.DISCONNECTED, hubConnection.getConnectionState()); } + @Test + public void stopWithoutObservingWithLongPollingTransportStops() { + AtomicInteger requestCount = new AtomicInteger(0); + CompletableSubject blockGet = CompletableSubject.create(); + TestHttpClient client = new TestHttpClient() + .on("POST", "http://example.com/negotiate?negotiateVersion=1", + (req) -> Single.just(new HttpResponse(200, "", + TestUtils.stringToByteBuffer("{\"connectionId\":\"bVOiRPG8-6YiJ6d7ZcTOVQ\",\"" + + "availableTransports\":[{\"transport\":\"LongPolling\",\"transferFormats\":[\"Text\",\"Binary\"]}]}")))) + .on("GET", (req) -> { + if (requestCount.getAndIncrement() > 1) { + blockGet.blockingAwait(); + } + return Single.just(new HttpResponse(200, "", TestUtils.stringToByteBuffer("{}" + RECORD_SEPARATOR))); + }) + .on("POST", "http://example.com?id=bVOiRPG8-6YiJ6d7ZcTOVQ", (req) -> { + return Single.just(new HttpResponse(200, "", TestUtils.stringToByteBuffer(""))); + }); + + HubConnection hubConnection = HubConnectionBuilder + .create("http://example.com") + .withTransport(TransportEnum.LONG_POLLING) + .withHttpClient(client) + .build(); + + CompletableSubject closed = CompletableSubject.create(); + hubConnection.onClosed((e) -> { + closed.onComplete(); + }); + + hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + + hubConnection.stop(); + closed.timeout(1, TimeUnit.SECONDS).blockingAwait(); + blockGet.onComplete(); + assertEquals(HubConnectionState.DISCONNECTED, hubConnection.getConnectionState()); + } + + @Test + public void hubConnectionClosesAndRunsOnClosedCallbackAfterCloseMessageWithLongPolling() { + AtomicInteger requestCount = new AtomicInteger(0); + CompletableSubject blockGet = CompletableSubject.create(); + TestHttpClient client = new TestHttpClient() + .on("POST", "http://example.com/negotiate?negotiateVersion=1", + (req) -> Single.just(new HttpResponse(200, "", + TestUtils.stringToByteBuffer("{\"connectionId\":\"bVOiRPG8-6YiJ6d7ZcTOVQ\",\"" + + "availableTransports\":[{\"transport\":\"LongPolling\",\"transferFormats\":[\"Text\",\"Binary\"]}]}")))) + .on("GET", (req) -> { + if (requestCount.getAndIncrement() > 1) { + blockGet.blockingAwait(); + return Single.just(new HttpResponse(200, "", TestUtils.stringToByteBuffer("{\"type\":7}" + RECORD_SEPARATOR))); + } + return Single.just(new HttpResponse(200, "", TestUtils.stringToByteBuffer("{}" + RECORD_SEPARATOR))); + }) + .on("POST", "http://example.com?id=bVOiRPG8-6YiJ6d7ZcTOVQ", (req) -> { + return Single.just(new HttpResponse(200, "", TestUtils.stringToByteBuffer(""))); + }); + + HubConnection hubConnection = HubConnectionBuilder + .create("http://example.com") + .withTransport(TransportEnum.LONG_POLLING) + .withHttpClient(client) + .build(); + + CompletableSubject closed = CompletableSubject.create(); + hubConnection.onClosed((ex) -> { + closed.onComplete(); + }); + hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + + assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); + blockGet.onComplete(); + + closed.timeout(1, TimeUnit.SECONDS).blockingAwait(); + + assertEquals(HubConnectionState.DISCONNECTED, hubConnection.getConnectionState()); + } + @Test public void receivingServerSentEventsTransportFromNegotiateFails() { TestHttpClient client = new TestHttpClient().on("POST", "http://example.com/negotiate?negotiateVersion=1", diff --git a/src/SignalR/clients/java/signalr/test/src/main/java/com/microsoft/signalr/LongPollingTransportTest.java b/src/SignalR/clients/java/signalr/test/src/main/java/com/microsoft/signalr/LongPollingTransportTest.java index 0e65390d39d5..6ee518d41565 100644 --- a/src/SignalR/clients/java/signalr/test/src/main/java/com/microsoft/signalr/LongPollingTransportTest.java +++ b/src/SignalR/clients/java/signalr/test/src/main/java/com/microsoft/signalr/LongPollingTransportTest.java @@ -307,7 +307,7 @@ public void LongPollingTransportRunsAccessTokenProviderEveryRequest() { } @Test - public void After204StopDoesNotTriggerOnClose() { + public void After204StopDoesNotTriggerOnCloseAgain() { AtomicBoolean firstPoll = new AtomicBoolean(true); CompletableSubject block = CompletableSubject.create(); TestHttpClient client = new TestHttpClient() @@ -317,6 +317,9 @@ public void After204StopDoesNotTriggerOnClose() { return Single.just(new HttpResponse(200, "", TestUtils.emptyByteBuffer)); } return Single.just(new HttpResponse(204, "", TestUtils.emptyByteBuffer)); + }) + .on("DELETE", (req) -> { + return Single.just(new HttpResponse(200, "", TestUtils.emptyByteBuffer)); }); Map headers = new HashMap<>(); @@ -356,7 +359,7 @@ public void StoppingTransportRunsCloseHandlersOnce() { }) .on("DELETE", (req) ->{ //Unblock the last poll when we sent the DELETE request. - block.onComplete(); + block.onComplete(); return Single.just(new HttpResponse(200, "", TestUtils.emptyByteBuffer)); }); @@ -373,4 +376,25 @@ public void StoppingTransportRunsCloseHandlersOnce() { assertEquals(1, onCloseCount.get()); assertFalse(transport.isActive()); } + + @Test + public void ErrorFromClosePropagatesOnSecondStopCall() { + AtomicBoolean firstPoll = new AtomicBoolean(true); + TestHttpClient client = new TestHttpClient() + .on("GET", (req) -> { + if (firstPoll.get()) { + firstPoll.set(false); + return Single.just(new HttpResponse(200, "", TestUtils.emptyByteBuffer)); + } + return Single.just(new HttpResponse(204, "", TestUtils.emptyByteBuffer)); + }); + + Map headers = new HashMap<>(); + LongPollingTransport transport = new LongPollingTransport(headers, client, Single.just("")); + + transport.start("http://example.com").timeout(100, TimeUnit.SECONDS).blockingAwait(); + + RuntimeException exception = assertThrows(RuntimeException.class, () -> transport.stop().blockingAwait(100, TimeUnit.SECONDS)); + assertEquals("Request has no handler: DELETE http://example.com", exception.getMessage()); + } } From 0a33267c1c2ae6518cb081652728799e6d3b4d60 Mon Sep 17 00:00:00 2001 From: John Luo Date: Tue, 8 Sep 2020 15:42:19 -0700 Subject: [PATCH 28/45] Simplify blazorserver template for individual local auth support (#25523) --- .../.template.config/template.json | 25 ----------------- .../Pages/Shared/_LoginPartial.OrgAuth.cshtml | 27 ------------------- ...l.Identity.cshtml => _LoginPartial.cshtml} | 0 .../BlazorServerWeb-CSharp/_Imports.razor | 1 + 4 files changed, 1 insertion(+), 52 deletions(-) delete mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/BlazorServerWeb-CSharp/Areas/Identity/Pages/Shared/_LoginPartial.OrgAuth.cshtml rename src/ProjectTemplates/Web.ProjectTemplates/content/BlazorServerWeb-CSharp/Areas/Identity/Pages/Shared/{_LoginPartial.Identity.cshtml => _LoginPartial.cshtml} (100%) diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorServerWeb-CSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorServerWeb-CSharp/.template.config/template.json index 3d3cb33674fe..33f9f126343c 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorServerWeb-CSharp/.template.config/template.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorServerWeb-CSharp/.template.config/template.json @@ -26,31 +26,6 @@ "sources": [ { "modifiers": [ - { - "condition": "(!OrganizationalAuth && !IndividualAuth)", - "exclude": [ - "Areas/Identity/Pages/Shared/_LoginPartial.Identity.cshtml", - "Areas/Identity/Pages/Shared/_LoginPartial.OrgAuth.cshtml" - ] - }, - { - "condition": "(OrganizationalAuth || IndividualB2CAuth)", - "rename": { - "Areas/Identity/Pages/Shared/_LoginPartial.OrgAuth.cshtml": "Areas/Identity/Pages/Shared/_LoginPartial.cshtml" - }, - "exclude": [ - "Areas/Identity/Pages/Shared/_LoginPartial.Identity.cshtml" - ] - }, - { - "condition": "(IndividualLocalAuth)", - "rename": { - "Areas/Identity/Pages/Shared/_LoginPartial.Identity.cshtml": "Areas/Identity/Pages/Shared/_LoginPartial.cshtml" - }, - "exclude": [ - "Areas/Identity/Pages/Shared/_LoginPartial.OrgAuth.cshtml" - ] - }, { "condition": "(!IndividualLocalAuth || UseLocalDB)", "exclude": [ diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorServerWeb-CSharp/Areas/Identity/Pages/Shared/_LoginPartial.OrgAuth.cshtml b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorServerWeb-CSharp/Areas/Identity/Pages/Shared/_LoginPartial.OrgAuth.cshtml deleted file mode 100644 index 85263d76e2e4..000000000000 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorServerWeb-CSharp/Areas/Identity/Pages/Shared/_LoginPartial.OrgAuth.cshtml +++ /dev/null @@ -1,27 +0,0 @@ -@using Microsoft.AspNetCore.Identity -@inject SignInManager SignInManager -@inject UserManager UserManager -@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers - - diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorServerWeb-CSharp/Areas/Identity/Pages/Shared/_LoginPartial.Identity.cshtml b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorServerWeb-CSharp/Areas/Identity/Pages/Shared/_LoginPartial.cshtml similarity index 100% rename from src/ProjectTemplates/Web.ProjectTemplates/content/BlazorServerWeb-CSharp/Areas/Identity/Pages/Shared/_LoginPartial.Identity.cshtml rename to src/ProjectTemplates/Web.ProjectTemplates/content/BlazorServerWeb-CSharp/Areas/Identity/Pages/Shared/_LoginPartial.cshtml diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorServerWeb-CSharp/_Imports.razor b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorServerWeb-CSharp/_Imports.razor index 4fe5a889de3e..48dcfafe899e 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorServerWeb-CSharp/_Imports.razor +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorServerWeb-CSharp/_Imports.razor @@ -4,6 +4,7 @@ @using Microsoft.AspNetCore.Components.Forms @using Microsoft.AspNetCore.Components.Routing @using Microsoft.AspNetCore.Components.Web +@using Microsoft.AspNetCore.Components.Web.Virtualization @using Microsoft.JSInterop @using BlazorServerWeb_CSharp @using BlazorServerWeb_CSharp.Shared From 4718c11f4d628ceed906f79ffa61ff24cda776df Mon Sep 17 00:00:00 2001 From: Brennan Date: Tue, 8 Sep 2020 16:30:18 -0700 Subject: [PATCH 29/45] Add incremental build and project references to java projects (#25707) * Add incremental build and project references to java projects * fb * fix version --- Directory.Build.props | 1 + Directory.Build.targets | 1 + eng/targets/Java.Common.props | 7 ++ eng/targets/Java.Common.targets | 77 +++++++++++++++++++ .../core/signalr.client.java.core.javaproj | 34 -------- .../signalr.client.java.messagepack.javaproj | 36 +-------- .../test/signalr.client.java.Tests.javaproj | 13 ++-- 7 files changed, 95 insertions(+), 74 deletions(-) create mode 100644 eng/targets/Java.Common.props create mode 100644 eng/targets/Java.Common.targets diff --git a/Directory.Build.props b/Directory.Build.props index 9fef8a526ee0..224d84c78184 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -217,6 +217,7 @@ + diff --git a/Directory.Build.targets b/Directory.Build.targets index 34e36b4b06bd..58171d37f4be 100644 --- a/Directory.Build.targets +++ b/Directory.Build.targets @@ -186,6 +186,7 @@ + diff --git a/eng/targets/Java.Common.props b/eng/targets/Java.Common.props new file mode 100644 index 000000000000..1de16487d3a7 --- /dev/null +++ b/eng/targets/Java.Common.props @@ -0,0 +1,7 @@ + + + + $(GradleOptions) -Dorg.gradle.daemon=false + false + + \ No newline at end of file diff --git a/eng/targets/Java.Common.targets b/eng/targets/Java.Common.targets new file mode 100644 index 000000000000..c8905b10c4b6 --- /dev/null +++ b/eng/targets/Java.Common.targets @@ -0,0 +1,77 @@ + + + + $(ArtifactsDir)\obj\ + $([MSBuild]::NormalizeDirectory('$(BaseIntermediateOutputPath)'))$(Configuration)\ + + PrepareForBuild; + ResolveProjectReferences; + _Build; + + ../gradlew $(GradleOptions) compileJava + $(GradleOptions) -PpackageVersion="$(PackageVersion)" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Build; + $(PackDependsOn); + + + + + + + + + + + + + + + + diff --git a/src/SignalR/clients/java/signalr/core/signalr.client.java.core.javaproj b/src/SignalR/clients/java/signalr/core/signalr.client.java.core.javaproj index 2bc876ea0ccb..6454353c7085 100644 --- a/src/SignalR/clients/java/signalr/core/signalr.client.java.core.javaproj +++ b/src/SignalR/clients/java/signalr/core/signalr.client.java.core.javaproj @@ -7,8 +7,6 @@ true false - - $(GradleOptions) -Dorg.gradle.daemon=false $(OutputPath) @@ -21,37 +19,5 @@ - - - - - $(PackDependsOn); - Build - - - - - - $(GradleOptions) -PpackageVersion="$(PackageVersion)" - - - - - - - - - - - - - - - - - - - - diff --git a/src/SignalR/clients/java/signalr/messagepack/signalr.client.java.messagepack.javaproj b/src/SignalR/clients/java/signalr/messagepack/signalr.client.java.messagepack.javaproj index 37e14879af24..09d1441cc1ab 100644 --- a/src/SignalR/clients/java/signalr/messagepack/signalr.client.java.messagepack.javaproj +++ b/src/SignalR/clients/java/signalr/messagepack/signalr.client.java.messagepack.javaproj @@ -7,8 +7,6 @@ true false - - $(GradleOptions) -Dorg.gradle.daemon=false $(OutputPath) @@ -21,37 +19,9 @@ - - - - - $(PackDependsOn); - Build - - + + + - - - $(GradleOptions) -PpackageVersion="$(PackageVersion)" - - - - - - - - - - - - - - - - - - - - diff --git a/src/SignalR/clients/java/signalr/test/signalr.client.java.Tests.javaproj b/src/SignalR/clients/java/signalr/test/signalr.client.java.Tests.javaproj index d44d8d25a0d9..a3f8bee075f5 100644 --- a/src/SignalR/clients/java/signalr/test/signalr.client.java.Tests.javaproj +++ b/src/SignalR/clients/java/signalr/test/signalr.client.java.Tests.javaproj @@ -8,12 +8,15 @@ true false - - $(GradleOptions) -Dorg.gradle.daemon=false $(OutputPath) true + + + + + @@ -21,9 +24,7 @@ - - - + @@ -46,8 +47,6 @@ - - $(GradleOptions) -PpackageVersion="$(PackageVersion)" chmod +x ./gradlew && ./gradlew $(GradleOptions) test call gradlew $(GradleOptions) test From 95763af89a4b8abd42bf9e9ed654e359e13a4650 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Tue, 8 Sep 2020 23:34:53 +0000 Subject: [PATCH 30/45] [release/5.0-rc2] Update dependencies from dotnet/arcade dotnet/runtime dotnet/efcore (#25555) [release/5.0-rc2] Update dependencies from dotnet/arcade dotnet/runtime dotnet/efcore - Updates: - System.ComponentModel.Annotations: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - System.Diagnostics.DiagnosticSource: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - System.Diagnostics.EventLog: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - System.DirectoryServices.Protocols: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Logging.Abstractions: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Logging.Configuration: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Logging.Console: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Logging.Debug: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Logging.EventLog: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Logging.EventSource: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Logging.TraceSource: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Options: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Options.ConfigurationExtensions: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Options.DataAnnotations: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Primitives: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Logging: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Internal.Transport: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Http: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Hosting.Abstractions: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Caching.Abstractions: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Caching.Memory: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Configuration: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Configuration.Abstractions: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Configuration.Binder: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Configuration.CommandLine: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Configuration.EnvironmentVariables: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Configuration.FileExtensions: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Configuration.Ini: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Configuration.UserSecrets: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Configuration.Xml: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.DependencyInjection: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.DependencyInjection.Abstractions: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.DependencyModel: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.FileProviders.Abstractions: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.FileProviders.Composite: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.FileProviders.Physical: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.FileSystemGlobbing: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.HostFactoryResolver.Sources: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Hosting: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Extensions.Configuration.Json: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.NETCore.App.Runtime.win-x64: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.NETCore.BrowserDebugHost.Transport: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.NETCore.Platforms: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Win32.Registry: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.Win32.SystemEvents: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.NETCore.App.Internal: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Microsoft.NETCore.App.Ref: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - System.Drawing.Common: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - System.Threading.Channels: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - System.Windows.Extensions: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - System.Text.Json: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - System.Text.Encodings.Web: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - System.ServiceProcess.ServiceController: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - System.IO.Pipelines: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - System.Net.Http.Json: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - System.Net.Http.WinHttpHandler: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - System.Net.WebSockets.WebSocketProtocol: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - System.Reflection.Metadata: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - System.Runtime.CompilerServices.Unsafe: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - System.Security.AccessControl: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - System.Security.Cryptography.Cng: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - System.Security.Cryptography.Pkcs: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - System.Security.Cryptography.Xml: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - System.Security.Permissions: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - System.Security.Principal.Windows: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - System.Resources.Extensions: from 5.0.0-rc.2.20452.8 to 5.0.0-rc.2.20454.25 - Updates: - Microsoft.EntityFrameworkCore.Tools: from 5.0.0-rc.2.20452.4 to 5.0.0-rc.2.20458.4 - Microsoft.EntityFrameworkCore.SqlServer: from 5.0.0-rc.2.20452.4 to 5.0.0-rc.2.20458.4 - dotnet-ef: from 5.0.0-rc.2.20452.4 to 5.0.0-rc.2.20458.4 - Microsoft.EntityFrameworkCore: from 5.0.0-rc.2.20452.4 to 5.0.0-rc.2.20458.4 - Microsoft.EntityFrameworkCore.Design: from 5.0.0-rc.2.20452.4 to 5.0.0-rc.2.20458.4 - Microsoft.EntityFrameworkCore.Relational: from 5.0.0-rc.2.20452.4 to 5.0.0-rc.2.20458.4 - Microsoft.EntityFrameworkCore.Sqlite: from 5.0.0-rc.2.20452.4 to 5.0.0-rc.2.20458.4 - Microsoft.EntityFrameworkCore.InMemory: from 5.0.0-rc.2.20452.4 to 5.0.0-rc.2.20458.4 - Updates: - Microsoft.DotNet.Build.Tasks.Installers: from 5.0.0-beta.20431.1 to 5.0.0-beta.20452.19 - Microsoft.DotNet.Helix.Sdk: from 5.0.0-beta.20431.1 to 5.0.0-beta.20452.19 - Microsoft.DotNet.Arcade.Sdk: from 5.0.0-beta.20431.1 to 5.0.0-beta.20452.19 - System.IO.Pipelines Fix (cherry picked from commit 520b9e23f027d7cca49d33f1dc6b2a0e57c893b3) - Skip reference check of System.IO.Pipelines ref/ assembly - add Framework projects to solution - add Framework.slnf and startvs.cmd in src/Framework - Merge branch 'release/5.0-rc2' into darc-release/5.0-rc2-d6b9c1c0-be36-4d12-b860-e7e54a75cb6d --- AspNetCore.sln | 31 ++ eng/SharedFramework.External.props | 1 + eng/Version.Details.xml | 308 +++++++++--------- eng/Versions.props | 150 ++++----- eng/common/post-build/publish-using-darc.ps1 | 1 + eng/common/templates/steps/publish-logs.yml | 27 +- global.json | 4 +- ...Microsoft.AspNetCore.Components.Web.csproj | 1 + src/Framework/Framework.slnf | 104 ++++++ src/Framework/startvs.cmd | 3 + src/Framework/test/TargetingPackTests.cs | 23 +- src/Framework/test/TestData.cs | 2 + .../src/Microsoft.AspNetCore.TestHost.csproj | 6 +- .../Microsoft.AspNetCore.Http.Features.csproj | 8 - .../Microsoft.AspNetCore.WebUtilities.csproj | 1 + ...AspNetCore.Connections.Abstractions.csproj | 2 +- .../Microsoft.AspNetCore.Server.IIS.csproj | 1 + ...ft.AspNetCore.Server.IISIntegration.csproj | 1 + .../Microsoft.AspNetCore.Shared.Tests.csproj | 1 + 19 files changed, 409 insertions(+), 266 deletions(-) create mode 100644 src/Framework/Framework.slnf create mode 100644 src/Framework/startvs.cmd diff --git a/AspNetCore.sln b/AspNetCore.sln index 55931107f86a..bbc9fd05ae68 100644 --- a/AspNetCore.sln +++ b/AspNetCore.sln @@ -1507,6 +1507,10 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.FilePr EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.FileProviders.Embedded.Tests", "src\FileProviders\Embedded\test\Microsoft.Extensions.FileProviders.Embedded.Tests.csproj", "{B06ADD57-E855-4D8C-85DC-B323509AE540}" EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.App.Ref", "src\Framework\App.Ref\src\Microsoft.AspNetCore.App.Ref.csproj", "{BAD47859-95DF-4C8F-9AF7-C48B68F478A1}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.App.UnitTests", "src\Framework\test\Microsoft.AspNetCore.App.UnitTests.csproj", "{010A9638-F20E-4FE6-A186-85732BFC9CB0}" +EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Localization", "Localization", "{3D34C81F-2CB5-459E-87E9-0CC04757A2A0}" EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Localization.Abstractions", "src\Localization\Abstractions\src\Microsoft.Extensions.Localization.Abstractions.csproj", "{FEF97646-9BC9-4D1B-A939-784D915C18A4}" @@ -7207,6 +7211,31 @@ Global {B06ADD57-E855-4D8C-85DC-B323509AE540}.Release|x64.Build.0 = Release|Any CPU {B06ADD57-E855-4D8C-85DC-B323509AE540}.Release|x86.ActiveCfg = Release|Any CPU {B06ADD57-E855-4D8C-85DC-B323509AE540}.Release|x86.Build.0 = Release|Any CPU + {BAD47859-95DF-4C8F-9AF7-C48B68F478A1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {BAD47859-95DF-4C8F-9AF7-C48B68F478A1}.Debug|Any CPU.Build.0 = Debug|Any CPU + {BAD47859-95DF-4C8F-9AF7-C48B68F478A1}.Debug|x64.ActiveCfg = Debug|Any CPU + {BAD47859-95DF-4C8F-9AF7-C48B68F478A1}.Debug|x64.Build.0 = Debug|Any CPU + {BAD47859-95DF-4C8F-9AF7-C48B68F478A1}.Debug|x86.ActiveCfg = Debug|Any CPU + {BAD47859-95DF-4C8F-9AF7-C48B68F478A1}.Debug|x86.Build.0 = Debug|Any CPU + {BAD47859-95DF-4C8F-9AF7-C48B68F478A1}.Release|Any CPU.ActiveCfg = Release|Any CPU + {BAD47859-95DF-4C8F-9AF7-C48B68F478A1}.Release|Any CPU.Build.0 = Release|Any CPU + {BAD47859-95DF-4C8F-9AF7-C48B68F478A1}.Release|x64.ActiveCfg = Release|Any CPU + {BAD47859-95DF-4C8F-9AF7-C48B68F478A1}.Release|x64.Build.0 = Release|Any CPU + {BAD47859-95DF-4C8F-9AF7-C48B68F478A1}.Release|x86.ActiveCfg = Release|Any CPU + {BAD47859-95DF-4C8F-9AF7-C48B68F478A1}.Release|x86.Build.0 = Release|Any CPU + {010A9638-F20E-4FE6-A186-85732BFC9CB0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {010A9638-F20E-4FE6-A186-85732BFC9CB0}.Debug|Any CPU.Build.0 = Debug|Any CPU + {010A9638-F20E-4FE6-A186-85732BFC9CB0}.Debug|x64.ActiveCfg = Debug|Any CPU + {010A9638-F20E-4FE6-A186-85732BFC9CB0}.Debug|x64.Build.0 = Debug|Any CPU + {010A9638-F20E-4FE6-A186-85732BFC9CB0}.Debug|x86.ActiveCfg = Debug|Any CPU + {010A9638-F20E-4FE6-A186-85732BFC9CB0}.Debug|x86.Build.0 = Debug|Any CPU + {010A9638-F20E-4FE6-A186-85732BFC9CB0}.Release|Any CPU.ActiveCfg = Release|Any CPU + {010A9638-F20E-4FE6-A186-85732BFC9CB0}.Release|Any CPU.Build.0 = Release|Any CPU + {010A9638-F20E-4FE6-A186-85732BFC9CB0}.Release|x64.ActiveCfg = Release|Any CPU + {010A9638-F20E-4FE6-A186-85732BFC9CB0}.Release|x64.Build.0 = Release|Any CPU + {010A9638-F20E-4FE6-A186-85732BFC9CB0}.Release|x86.ActiveCfg = Release|Any CPU + {010A9638-F20E-4FE6-A186-85732BFC9CB0}.Release|x86.Build.0 = Release|Any CPU +======= {FEF97646-9BC9-4D1B-A939-784D915C18A4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {FEF97646-9BC9-4D1B-A939-784D915C18A4}.Debug|Any CPU.Build.0 = Debug|Any CPU {FEF97646-9BC9-4D1B-A939-784D915C18A4}.Debug|x64.ActiveCfg = Debug|Any CPU @@ -8034,6 +8063,8 @@ Global {37329855-01B8-4B03-9765-1A941B06E43C} = {8C15FD04-7F90-43FC-B488-023432FE3CE1} {D3246226-BC1A-47F1-8E3E-C3380A8F13FB} = {8C15FD04-7F90-43FC-B488-023432FE3CE1} {B06ADD57-E855-4D8C-85DC-B323509AE540} = {898F7E0B-1671-42CB-9DFB-689AFF212ED3} + {BAD47859-95DF-4C8F-9AF7-C48B68F478A1} = {A4C26078-B6D8-4FD8-87A6-7C15A3482038} + {010A9638-F20E-4FE6-A186-85732BFC9CB0} = {A4C26078-B6D8-4FD8-87A6-7C15A3482038} {3D34C81F-2CB5-459E-87E9-0CC04757A2A0} = {017429CC-C5FB-48B4-9C46-034E29EE2F06} {FEF97646-9BC9-4D1B-A939-784D915C18A4} = {3D34C81F-2CB5-459E-87E9-0CC04757A2A0} {839CE175-E0D9-43B9-9FA8-F32C47E7F56B} = {3D34C81F-2CB5-459E-87E9-0CC04757A2A0} diff --git a/eng/SharedFramework.External.props b/eng/SharedFramework.External.props index d9914be2e486..a43f82e80353 100644 --- a/eng/SharedFramework.External.props +++ b/eng/SharedFramework.External.props @@ -40,6 +40,7 @@ + - + https://github.com/dotnet/runtime - 7097851a16f17d757506bf3d4bf13343540be148 + a916def25585f474712c7e2cbd763977c3c37ff6 - + https://github.com/dotnet/runtime - 7097851a16f17d757506bf3d4bf13343540be148 + a916def25585f474712c7e2cbd763977c3c37ff6 - + https://github.com/dotnet/runtime - 7097851a16f17d757506bf3d4bf13343540be148 + a916def25585f474712c7e2cbd763977c3c37ff6 - + https://github.com/dotnet/runtime - 7097851a16f17d757506bf3d4bf13343540be148 + a916def25585f474712c7e2cbd763977c3c37ff6 - + https://github.com/dotnet/runtime - 7097851a16f17d757506bf3d4bf13343540be148 + a916def25585f474712c7e2cbd763977c3c37ff6 - + https://github.com/dotnet/runtime - 7097851a16f17d757506bf3d4bf13343540be148 + a916def25585f474712c7e2cbd763977c3c37ff6 - + https://github.com/dotnet/runtime - 7097851a16f17d757506bf3d4bf13343540be148 + a916def25585f474712c7e2cbd763977c3c37ff6 - + https://github.com/dotnet/runtime - 7097851a16f17d757506bf3d4bf13343540be148 + a916def25585f474712c7e2cbd763977c3c37ff6 - + https://github.com/dotnet/runtime - 7097851a16f17d757506bf3d4bf13343540be148 + a916def25585f474712c7e2cbd763977c3c37ff6 - + https://github.com/dotnet/runtime - 7097851a16f17d757506bf3d4bf13343540be148 + a916def25585f474712c7e2cbd763977c3c37ff6 - + https://github.com/dotnet/runtime - 7097851a16f17d757506bf3d4bf13343540be148 + a916def25585f474712c7e2cbd763977c3c37ff6 - + https://github.com/dotnet/runtime - 7097851a16f17d757506bf3d4bf13343540be148 + a916def25585f474712c7e2cbd763977c3c37ff6 - + https://github.com/dotnet/runtime - 7097851a16f17d757506bf3d4bf13343540be148 + a916def25585f474712c7e2cbd763977c3c37ff6 - + https://github.com/dotnet/runtime - 7097851a16f17d757506bf3d4bf13343540be148 + a916def25585f474712c7e2cbd763977c3c37ff6 - + https://github.com/dotnet/runtime - 7097851a16f17d757506bf3d4bf13343540be148 + a916def25585f474712c7e2cbd763977c3c37ff6 - + https://github.com/dotnet/runtime - 7097851a16f17d757506bf3d4bf13343540be148 + a916def25585f474712c7e2cbd763977c3c37ff6 - + https://github.com/dotnet/runtime - 7097851a16f17d757506bf3d4bf13343540be148 + a916def25585f474712c7e2cbd763977c3c37ff6 - + https://github.com/dotnet/arcade - 4be47e467013f8a07a1ed7b6e49e39c8150bde54 + fd104228e5b97494a4ab0896a979b69928257ef9 - + https://github.com/dotnet/arcade - 4be47e467013f8a07a1ed7b6e49e39c8150bde54 + fd104228e5b97494a4ab0896a979b69928257ef9 - + https://github.com/dotnet/arcade - 4be47e467013f8a07a1ed7b6e49e39c8150bde54 + fd104228e5b97494a4ab0896a979b69928257ef9 https://github.com/dotnet/roslyn diff --git a/eng/Versions.props b/eng/Versions.props index 6db16b87e9a4..6a03a4a533da 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -64,87 +64,87 @@ 3.8.0-2.20403.2 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 - 5.0.0-rc.2.20452.8 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20452.8 + 5.0.0-rc.2.20454.25 3.2.0 - 5.0.0-rc.2.20452.4 - 5.0.0-rc.2.20452.4 - 5.0.0-rc.2.20452.4 - 5.0.0-rc.2.20452.4 - 5.0.0-rc.2.20452.4 - 5.0.0-rc.2.20452.4 - 5.0.0-rc.2.20452.4 - 5.0.0-rc.2.20452.4 + 5.0.0-rc.2.20458.4 + 5.0.0-rc.2.20458.4 + 5.0.0-rc.2.20458.4 + 5.0.0-rc.2.20458.4 + 5.0.0-rc.2.20458.4 + 5.0.0-rc.2.20458.4 + 5.0.0-rc.2.20458.4 + 5.0.0-rc.2.20458.4 - 5.0.0-beta.20431.1 + 5.0.0-beta.20452.19 - - - diff --git a/src/Http/Http.Features/src/Microsoft.AspNetCore.Http.Features.csproj b/src/Http/Http.Features/src/Microsoft.AspNetCore.Http.Features.csproj index d6e93d7b0212..dda22adeabb8 100644 --- a/src/Http/Http.Features/src/Microsoft.AspNetCore.Http.Features.csproj +++ b/src/Http/Http.Features/src/Microsoft.AspNetCore.Http.Features.csproj @@ -14,15 +14,7 @@ - - - - - - - - diff --git a/src/Http/WebUtilities/src/Microsoft.AspNetCore.WebUtilities.csproj b/src/Http/WebUtilities/src/Microsoft.AspNetCore.WebUtilities.csproj index ac568dc32fba..d165fe972721 100644 --- a/src/Http/WebUtilities/src/Microsoft.AspNetCore.WebUtilities.csproj +++ b/src/Http/WebUtilities/src/Microsoft.AspNetCore.WebUtilities.csproj @@ -19,6 +19,7 @@ + diff --git a/src/Servers/Connections.Abstractions/src/Microsoft.AspNetCore.Connections.Abstractions.csproj b/src/Servers/Connections.Abstractions/src/Microsoft.AspNetCore.Connections.Abstractions.csproj index b9614fcb0221..dda00cbf9235 100644 --- a/src/Servers/Connections.Abstractions/src/Microsoft.AspNetCore.Connections.Abstractions.csproj +++ b/src/Servers/Connections.Abstractions/src/Microsoft.AspNetCore.Connections.Abstractions.csproj @@ -25,7 +25,7 @@ diff --git a/src/Servers/IIS/IIS/src/Microsoft.AspNetCore.Server.IIS.csproj b/src/Servers/IIS/IIS/src/Microsoft.AspNetCore.Server.IIS.csproj index de559faf6d26..d262f5cd0b44 100644 --- a/src/Servers/IIS/IIS/src/Microsoft.AspNetCore.Server.IIS.csproj +++ b/src/Servers/IIS/IIS/src/Microsoft.AspNetCore.Server.IIS.csproj @@ -41,6 +41,7 @@ + diff --git a/src/Servers/IIS/IISIntegration/src/Microsoft.AspNetCore.Server.IISIntegration.csproj b/src/Servers/IIS/IISIntegration/src/Microsoft.AspNetCore.Server.IISIntegration.csproj index b76aa029d628..addaf56ff283 100644 --- a/src/Servers/IIS/IISIntegration/src/Microsoft.AspNetCore.Server.IISIntegration.csproj +++ b/src/Servers/IIS/IISIntegration/src/Microsoft.AspNetCore.Server.IISIntegration.csproj @@ -20,6 +20,7 @@ + diff --git a/src/Shared/test/Shared.Tests/Microsoft.AspNetCore.Shared.Tests.csproj b/src/Shared/test/Shared.Tests/Microsoft.AspNetCore.Shared.Tests.csproj index d3bba11e6d5b..c3956a4c1946 100644 --- a/src/Shared/test/Shared.Tests/Microsoft.AspNetCore.Shared.Tests.csproj +++ b/src/Shared/test/Shared.Tests/Microsoft.AspNetCore.Shared.Tests.csproj @@ -35,6 +35,7 @@ + From ec61467a5d3be96aab8a4a8332e89d41f1f624a9 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Wed, 9 Sep 2020 03:24:42 +0000 Subject: [PATCH 31/45] [release/5.0-rc2] Update dependencies from dotnet/runtime dotnet/efcore (#25711) [release/5.0-rc2] Update dependencies from dotnet/runtime dotnet/efcore - Updates: - System.ComponentModel.Annotations: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - System.Diagnostics.DiagnosticSource: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - System.Diagnostics.EventLog: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - System.DirectoryServices.Protocols: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Logging.Abstractions: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Logging.Configuration: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Logging.Console: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Logging.Debug: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Logging.EventLog: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Logging.EventSource: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Logging.TraceSource: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Options: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Options.ConfigurationExtensions: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Options.DataAnnotations: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Primitives: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Logging: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Internal.Transport: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Http: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Hosting.Abstractions: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Caching.Abstractions: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Caching.Memory: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Configuration: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Configuration.Abstractions: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Configuration.Binder: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Configuration.CommandLine: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Configuration.EnvironmentVariables: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Configuration.FileExtensions: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Configuration.Ini: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Configuration.UserSecrets: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Configuration.Xml: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.DependencyInjection: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.DependencyInjection.Abstractions: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.DependencyModel: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.FileProviders.Abstractions: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.FileProviders.Composite: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.FileProviders.Physical: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.FileSystemGlobbing: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.HostFactoryResolver.Sources: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Hosting: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Extensions.Configuration.Json: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.NETCore.App.Runtime.win-x64: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.NETCore.BrowserDebugHost.Transport: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.NETCore.Platforms: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Win32.Registry: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.Win32.SystemEvents: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.NETCore.App.Internal: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Microsoft.NETCore.App.Ref: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - System.Drawing.Common: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - System.Threading.Channels: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - System.Windows.Extensions: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - System.Text.Json: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - System.Text.Encodings.Web: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - System.ServiceProcess.ServiceController: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - System.IO.Pipelines: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - System.Net.Http.Json: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - System.Net.Http.WinHttpHandler: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - System.Net.WebSockets.WebSocketProtocol: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - System.Reflection.Metadata: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - System.Runtime.CompilerServices.Unsafe: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - System.Security.AccessControl: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - System.Security.Cryptography.Cng: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - System.Security.Cryptography.Pkcs: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - System.Security.Cryptography.Xml: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - System.Security.Permissions: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - System.Security.Principal.Windows: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - System.Resources.Extensions: from 5.0.0-rc.2.20454.25 to 5.0.0-rc.2.20458.8 - Updates: - Microsoft.EntityFrameworkCore.Tools: from 5.0.0-rc.2.20458.4 to 5.0.0-rc.2.20458.8 - Microsoft.EntityFrameworkCore.SqlServer: from 5.0.0-rc.2.20458.4 to 5.0.0-rc.2.20458.8 - dotnet-ef: from 5.0.0-rc.2.20458.4 to 5.0.0-rc.2.20458.8 - Microsoft.EntityFrameworkCore: from 5.0.0-rc.2.20458.4 to 5.0.0-rc.2.20458.8 - Microsoft.EntityFrameworkCore.Design: from 5.0.0-rc.2.20458.4 to 5.0.0-rc.2.20458.8 - Microsoft.EntityFrameworkCore.Relational: from 5.0.0-rc.2.20458.4 to 5.0.0-rc.2.20458.8 - Microsoft.EntityFrameworkCore.Sqlite: from 5.0.0-rc.2.20458.4 to 5.0.0-rc.2.20458.8 - Microsoft.EntityFrameworkCore.InMemory: from 5.0.0-rc.2.20458.4 to 5.0.0-rc.2.20458.8 --- eng/Version.Details.xml | 296 ++++++++++++++++++++-------------------- eng/Versions.props | 148 ++++++++++---------- 2 files changed, 222 insertions(+), 222 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 1c94b796f03c..6a30655a21d6 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -13,309 +13,309 @@ https://github.com/dotnet/blazor cc449601d638ffaab58ae9487f0fd010bb178a12 - + https://github.com/dotnet/efcore - 7db82b40ffeac1b6d6fb3121c9687fdca2d4fee7 + cbe5fcaa819f7fdba45ae336fa5874de212bb87c - + https://github.com/dotnet/efcore - 7db82b40ffeac1b6d6fb3121c9687fdca2d4fee7 + cbe5fcaa819f7fdba45ae336fa5874de212bb87c - + https://github.com/dotnet/efcore - 7db82b40ffeac1b6d6fb3121c9687fdca2d4fee7 + cbe5fcaa819f7fdba45ae336fa5874de212bb87c - + https://github.com/dotnet/efcore - 7db82b40ffeac1b6d6fb3121c9687fdca2d4fee7 + cbe5fcaa819f7fdba45ae336fa5874de212bb87c - + https://github.com/dotnet/efcore - 7db82b40ffeac1b6d6fb3121c9687fdca2d4fee7 + cbe5fcaa819f7fdba45ae336fa5874de212bb87c - + https://github.com/dotnet/efcore - 7db82b40ffeac1b6d6fb3121c9687fdca2d4fee7 + cbe5fcaa819f7fdba45ae336fa5874de212bb87c - + https://github.com/dotnet/efcore - 7db82b40ffeac1b6d6fb3121c9687fdca2d4fee7 + cbe5fcaa819f7fdba45ae336fa5874de212bb87c - + https://github.com/dotnet/efcore - 7db82b40ffeac1b6d6fb3121c9687fdca2d4fee7 + cbe5fcaa819f7fdba45ae336fa5874de212bb87c - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc - + https://github.com/dotnet/runtime - a916def25585f474712c7e2cbd763977c3c37ff6 + 98dd0970541944e149783bf8c1782472cded18fc https://github.com/dotnet/arcade diff --git a/eng/Versions.props b/eng/Versions.props index 6a03a4a533da..62f3b3b0390b 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -64,85 +64,85 @@ 3.8.0-2.20403.2 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 - 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20454.25 + 5.0.0-rc.2.20458.8 3.2.0 - 5.0.0-rc.2.20458.4 - 5.0.0-rc.2.20458.4 - 5.0.0-rc.2.20458.4 - 5.0.0-rc.2.20458.4 - 5.0.0-rc.2.20458.4 - 5.0.0-rc.2.20458.4 - 5.0.0-rc.2.20458.4 - 5.0.0-rc.2.20458.4 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.8 5.0.0-beta.20452.19 From d5a477ce1ef1298dd27bb9f93ea8801dddfec652 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Wed, 9 Sep 2020 06:36:29 +0000 Subject: [PATCH 32/45] [release/5.0-rc2] Update dependencies from dotnet/runtime dotnet/efcore (#25718) [release/5.0-rc2] Update dependencies from dotnet/runtime dotnet/efcore - Updates: - Microsoft.EntityFrameworkCore.Tools: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.10 - Microsoft.EntityFrameworkCore.SqlServer: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.10 - dotnet-ef: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.10 - Microsoft.EntityFrameworkCore: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.10 - Microsoft.EntityFrameworkCore.Design: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.10 - Microsoft.EntityFrameworkCore.Relational: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.10 - Microsoft.EntityFrameworkCore.Sqlite: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.10 - Microsoft.EntityFrameworkCore.InMemory: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.10 - Updates: - System.ComponentModel.Annotations: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - System.Diagnostics.DiagnosticSource: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - System.Diagnostics.EventLog: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - System.DirectoryServices.Protocols: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Logging.Abstractions: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Logging.Configuration: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Logging.Console: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Logging.Debug: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Logging.EventLog: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Logging.EventSource: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Logging.TraceSource: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Options: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Options.ConfigurationExtensions: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Options.DataAnnotations: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Primitives: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Logging: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Internal.Transport: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Http: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Hosting.Abstractions: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Caching.Abstractions: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Caching.Memory: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Configuration: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Configuration.Abstractions: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Configuration.Binder: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Configuration.CommandLine: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Configuration.EnvironmentVariables: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Configuration.FileExtensions: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Configuration.Ini: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Configuration.UserSecrets: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Configuration.Xml: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.DependencyInjection: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.DependencyInjection.Abstractions: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.DependencyModel: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.FileProviders.Abstractions: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.FileProviders.Composite: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.FileProviders.Physical: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.FileSystemGlobbing: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.HostFactoryResolver.Sources: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Hosting: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Extensions.Configuration.Json: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.NETCore.App.Runtime.win-x64: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.NETCore.BrowserDebugHost.Transport: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.NETCore.Platforms: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Win32.Registry: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.Win32.SystemEvents: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.NETCore.App.Internal: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - Microsoft.NETCore.App.Ref: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - System.Drawing.Common: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - System.Threading.Channels: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - System.Windows.Extensions: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - System.Text.Json: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - System.Text.Encodings.Web: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - System.ServiceProcess.ServiceController: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - System.IO.Pipelines: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - System.Net.Http.Json: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - System.Net.Http.WinHttpHandler: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - System.Net.WebSockets.WebSocketProtocol: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - System.Reflection.Metadata: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - System.Runtime.CompilerServices.Unsafe: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - System.Security.AccessControl: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - System.Security.Cryptography.Cng: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - System.Security.Cryptography.Pkcs: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - System.Security.Cryptography.Xml: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - System.Security.Permissions: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - System.Security.Principal.Windows: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 - System.Resources.Extensions: from 5.0.0-rc.2.20458.8 to 5.0.0-rc.2.20458.14 --- eng/Version.Details.xml | 296 ++++++++++++++++++++-------------------- eng/Versions.props | 148 ++++++++++---------- 2 files changed, 222 insertions(+), 222 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 6a30655a21d6..35d2f34b7f7e 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -13,309 +13,309 @@ https://github.com/dotnet/blazor cc449601d638ffaab58ae9487f0fd010bb178a12 - + https://github.com/dotnet/efcore - cbe5fcaa819f7fdba45ae336fa5874de212bb87c + e89ef2df81fef4d3228e210fc0d2214cfad540b2 - + https://github.com/dotnet/efcore - cbe5fcaa819f7fdba45ae336fa5874de212bb87c + e89ef2df81fef4d3228e210fc0d2214cfad540b2 - + https://github.com/dotnet/efcore - cbe5fcaa819f7fdba45ae336fa5874de212bb87c + e89ef2df81fef4d3228e210fc0d2214cfad540b2 - + https://github.com/dotnet/efcore - cbe5fcaa819f7fdba45ae336fa5874de212bb87c + e89ef2df81fef4d3228e210fc0d2214cfad540b2 - + https://github.com/dotnet/efcore - cbe5fcaa819f7fdba45ae336fa5874de212bb87c + e89ef2df81fef4d3228e210fc0d2214cfad540b2 - + https://github.com/dotnet/efcore - cbe5fcaa819f7fdba45ae336fa5874de212bb87c + e89ef2df81fef4d3228e210fc0d2214cfad540b2 - + https://github.com/dotnet/efcore - cbe5fcaa819f7fdba45ae336fa5874de212bb87c + e89ef2df81fef4d3228e210fc0d2214cfad540b2 - + https://github.com/dotnet/efcore - cbe5fcaa819f7fdba45ae336fa5874de212bb87c + e89ef2df81fef4d3228e210fc0d2214cfad540b2 - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b - + https://github.com/dotnet/runtime - 98dd0970541944e149783bf8c1782472cded18fc + 482494f9ecc9a630599278b80893841462c90a5b https://github.com/dotnet/arcade diff --git a/eng/Versions.props b/eng/Versions.props index 62f3b3b0390b..2196a612674e 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -64,85 +64,85 @@ 3.8.0-2.20403.2 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 + 5.0.0-rc.2.20458.14 - 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.14 3.2.0 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 - 5.0.0-rc.2.20458.8 + 5.0.0-rc.2.20458.10 + 5.0.0-rc.2.20458.10 + 5.0.0-rc.2.20458.10 + 5.0.0-rc.2.20458.10 + 5.0.0-rc.2.20458.10 + 5.0.0-rc.2.20458.10 + 5.0.0-rc.2.20458.10 + 5.0.0-rc.2.20458.10 5.0.0-beta.20452.19 From 9f5276d17a13a68f4ff56dac1c038aaed8bb6f72 Mon Sep 17 00:00:00 2001 From: Steve Sanderson Date: Wed, 9 Sep 2020 16:25:26 +0100 Subject: [PATCH 33/45] Update RCL template to use 5.0 features (#25613) * Update JS interop to use auto-loaded ES6 module * Test update * Make it lazy for compatibility with prerendering * Update comment * Code style: go back to .AsTask - it's probably easier to read --- .../ExampleJsInterop.cs | 37 +++++++++++++++---- .../wwwroot/exampleJsInterop.js | 12 +++--- .../test/template-baselines.json | 2 +- 3 files changed, 36 insertions(+), 15 deletions(-) diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/ExampleJsInterop.cs b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/ExampleJsInterop.cs index 4e5efbbcdf0f..769455838f24 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/ExampleJsInterop.cs +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/ExampleJsInterop.cs @@ -1,16 +1,39 @@ -using Microsoft.JSInterop; +using System; using System.Threading.Tasks; +using Microsoft.JSInterop; namespace Company.RazorClassLibrary1 { - public class ExampleJsInterop + // This class provides an example of how JavaScript functionality can be wrapped + // in a .NET class for easy consumption. The associated JavaScript module is + // loaded on demand when first needed. + // + // This class can be registered as scoped DI service and then injected into Blazor + // components for use. + + public class ExampleJsInterop : IAsyncDisposable { - public static ValueTask Prompt(IJSRuntime jsRuntime, string message) + private readonly Lazy> moduleTask; + + public ExampleJsInterop(IJSRuntime jsRuntime) + { + moduleTask = new (() => jsRuntime.InvokeAsync( + "import", "./_content/Company.RazorClassLibrary1/exampleJsInterop.js").AsTask()); + } + + public async ValueTask Prompt(string message) + { + var module = await moduleTask.Value; + return await module.InvokeAsync("showPrompt", message); + } + + public async ValueTask DisposeAsync() { - // Implemented in exampleJsInterop.js - return jsRuntime.InvokeAsync( - "exampleJsFunctions.showPrompt", - message); + if (moduleTask.IsValueCreated) + { + var module = await moduleTask.Value; + await module.DisposeAsync(); + } } } } diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/wwwroot/exampleJsInterop.js b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/wwwroot/exampleJsInterop.js index e35d0744fb35..ea8d76ad2d12 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/wwwroot/exampleJsInterop.js +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/wwwroot/exampleJsInterop.js @@ -1,8 +1,6 @@ -// This file is to show how a library package may provide JavaScript interop features -// wrapped in a .NET API +// This is a JavaScript module that is loaded on demand. It can export any number of +// functions, and may import other JavaScript modules if required. -window.exampleJsFunctions = { - showPrompt: function (message) { - return prompt(message, 'Type anything here'); - } -}; +export function showPrompt(message) { + return prompt(message, 'Type anything here'); +} diff --git a/src/ProjectTemplates/test/template-baselines.json b/src/ProjectTemplates/test/template-baselines.json index e77037842c72..ac99c7a49167 100644 --- a/src/ProjectTemplates/test/template-baselines.json +++ b/src/ProjectTemplates/test/template-baselines.json @@ -877,9 +877,9 @@ "Files": [ "wwwroot/background.png", "wwwroot/exampleJsInterop.js", - "wwwroot/styles.css", "_Imports.razor", "Component1.razor", + "Component1.razor.css", "ExampleJsInterop.cs" ] }, From 646925127b434387797eaae92407160303383606 Mon Sep 17 00:00:00 2001 From: Pranav K Date: Wed, 9 Sep 2020 09:54:14 -0700 Subject: [PATCH 34/45] Move ProtectedBrowserStorage to the shared fx (#25557) * Move ProtectedBrowserStorage to the shared fx * Fixups * Fixup --- AspNetCore.sln | 33 ------------------- eng/ProjectReferences.props | 1 - src/Components/Components.slnf | 4 +-- src/Components/ComponentsNoDeps.slnf | 4 +-- ....Components.ProtectedBrowserStorage.csproj | 20 ----------- .../src/Properties/AssemblyInfo.cs | 4 --- ...owserStorageServiceCollectionExtensions.cs | 24 -------------- ...nents.ProtectedBrowserStorage.Tests.csproj | 18 ---------- .../ComponentServiceCollectionExtensions.cs | 4 +++ .../ProtectedBrowserStorage.cs | 10 +++--- .../ProtectedBrowserStorageResult.cs | 12 +++---- .../ProtectedLocalStorage.cs | 6 ++-- .../ProtectedSessionStorage.cs | 6 ++-- .../test/ProtectedBrowserStorageTest.cs | 2 +- .../BasicTestAppWebDriverExtensions.cs | 5 ++- .../ProtectedBrowserStorageUsageTest.cs | 9 +++-- .../ProtectedBrowserStorageInjectionTest.cs | 5 +-- .../BasicTestApp/BasicTestApp.csproj | 1 - .../test/testassets/BasicTestApp/Index.razor | 15 +++++++-- .../test/testassets/BasicTestApp/Program.cs | 6 ---- .../BasicTestApp/wwwroot/index.html | 1 + .../TestServer/Components.TestServer.csproj | 1 - .../TestServer/Pages/_ServerHost.cshtml | 1 + .../TestServer/PrerenderedStartup.cs | 2 +- ...ctedBrowserStorageInjectionComponent.razor | 5 ++- ...rotectedBrowserStorageUsageComponent.razor | 3 +- .../testassets/TestServer/ServerStartup.cs | 3 +- .../test/testassets/TestServer/_Imports.razor | 2 ++ 28 files changed, 51 insertions(+), 156 deletions(-) delete mode 100644 src/Components/ProtectedBrowserStorage/src/Microsoft.AspNetCore.Components.ProtectedBrowserStorage.csproj delete mode 100644 src/Components/ProtectedBrowserStorage/src/Properties/AssemblyInfo.cs delete mode 100644 src/Components/ProtectedBrowserStorage/src/ProtectedBrowserStorage/ProtectedBrowserStorageServiceCollectionExtensions.cs delete mode 100644 src/Components/ProtectedBrowserStorage/test/Microsoft.AspNetCore.Components.ProtectedBrowserStorage.Tests.csproj rename src/Components/{ProtectedBrowserStorage => Server}/src/ProtectedBrowserStorage/ProtectedBrowserStorage.cs (95%) rename src/Components/{ProtectedBrowserStorage => Server}/src/ProtectedBrowserStorage/ProtectedBrowserStorageResult.cs (65%) rename src/Components/{ProtectedBrowserStorage => Server}/src/ProtectedBrowserStorage/ProtectedLocalStorage.cs (84%) rename src/Components/{ProtectedBrowserStorage => Server}/src/ProtectedBrowserStorage/ProtectedSessionStorage.cs (85%) rename src/Components/{ProtectedBrowserStorage => Server}/test/ProtectedBrowserStorageTest.cs (99%) rename src/Components/test/testassets/{BasicTestApp => TestServer}/ProtectedBrowserStorageInjectionComponent.razor (82%) rename src/Components/test/testassets/{BasicTestApp => TestServer}/ProtectedBrowserStorageUsageComponent.razor (93%) create mode 100644 src/Components/test/testassets/TestServer/_Imports.razor diff --git a/AspNetCore.sln b/AspNetCore.sln index bbc9fd05ae68..958e9a61b7fa 100644 --- a/AspNetCore.sln +++ b/AspNetCore.sln @@ -1487,12 +1487,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Diagno EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.JSInterop.Tests", "src\JSInterop\Microsoft.JSInterop\test\Microsoft.JSInterop.Tests.csproj", "{DAAB6B35-CBD2-4573-B633-CDD42F583A0E}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "ProtectedBrowserStorage", "ProtectedBrowserStorage", "{1B06FD32-3A1D-46A4-B2AF-99159FAD8127}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Components.ProtectedBrowserStorage", "src\Components\ProtectedBrowserStorage\src\Microsoft.AspNetCore.Components.ProtectedBrowserStorage.csproj", "{9059AC97-7547-4CC1-A076-680CBCCC1F33}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Components.ProtectedBrowserStorage.Tests", "src\Components\ProtectedBrowserStorage\test\Microsoft.AspNetCore.Components.ProtectedBrowserStorage.Tests.csproj", "{943FD3EC-D330-4277-B3F3-3DFABB57D3B5}" -EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Configuration.KeyPerFile", "src\Configuration.KeyPerFile\src\Microsoft.Extensions.Configuration.KeyPerFile.csproj", "{498A4F54-F11A-46C5-A58D-09DE56C6A034}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Configuration.KeyPerFile", "Configuration.KeyPerFile", "{AEB1933E-9369-4305-B20E-F186F888158F}" @@ -7127,30 +7121,6 @@ Global {DAAB6B35-CBD2-4573-B633-CDD42F583A0E}.Release|x64.Build.0 = Release|Any CPU {DAAB6B35-CBD2-4573-B633-CDD42F583A0E}.Release|x86.ActiveCfg = Release|Any CPU {DAAB6B35-CBD2-4573-B633-CDD42F583A0E}.Release|x86.Build.0 = Release|Any CPU - {9059AC97-7547-4CC1-A076-680CBCCC1F33}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {9059AC97-7547-4CC1-A076-680CBCCC1F33}.Debug|Any CPU.Build.0 = Debug|Any CPU - {9059AC97-7547-4CC1-A076-680CBCCC1F33}.Debug|x64.ActiveCfg = Debug|Any CPU - {9059AC97-7547-4CC1-A076-680CBCCC1F33}.Debug|x64.Build.0 = Debug|Any CPU - {9059AC97-7547-4CC1-A076-680CBCCC1F33}.Debug|x86.ActiveCfg = Debug|Any CPU - {9059AC97-7547-4CC1-A076-680CBCCC1F33}.Debug|x86.Build.0 = Debug|Any CPU - {9059AC97-7547-4CC1-A076-680CBCCC1F33}.Release|Any CPU.ActiveCfg = Release|Any CPU - {9059AC97-7547-4CC1-A076-680CBCCC1F33}.Release|Any CPU.Build.0 = Release|Any CPU - {9059AC97-7547-4CC1-A076-680CBCCC1F33}.Release|x64.ActiveCfg = Release|Any CPU - {9059AC97-7547-4CC1-A076-680CBCCC1F33}.Release|x64.Build.0 = Release|Any CPU - {9059AC97-7547-4CC1-A076-680CBCCC1F33}.Release|x86.ActiveCfg = Release|Any CPU - {9059AC97-7547-4CC1-A076-680CBCCC1F33}.Release|x86.Build.0 = Release|Any CPU - {943FD3EC-D330-4277-B3F3-3DFABB57D3B5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {943FD3EC-D330-4277-B3F3-3DFABB57D3B5}.Debug|Any CPU.Build.0 = Debug|Any CPU - {943FD3EC-D330-4277-B3F3-3DFABB57D3B5}.Debug|x64.ActiveCfg = Debug|Any CPU - {943FD3EC-D330-4277-B3F3-3DFABB57D3B5}.Debug|x64.Build.0 = Debug|Any CPU - {943FD3EC-D330-4277-B3F3-3DFABB57D3B5}.Debug|x86.ActiveCfg = Debug|Any CPU - {943FD3EC-D330-4277-B3F3-3DFABB57D3B5}.Debug|x86.Build.0 = Debug|Any CPU - {943FD3EC-D330-4277-B3F3-3DFABB57D3B5}.Release|Any CPU.ActiveCfg = Release|Any CPU - {943FD3EC-D330-4277-B3F3-3DFABB57D3B5}.Release|Any CPU.Build.0 = Release|Any CPU - {943FD3EC-D330-4277-B3F3-3DFABB57D3B5}.Release|x64.ActiveCfg = Release|Any CPU - {943FD3EC-D330-4277-B3F3-3DFABB57D3B5}.Release|x64.Build.0 = Release|Any CPU - {943FD3EC-D330-4277-B3F3-3DFABB57D3B5}.Release|x86.ActiveCfg = Release|Any CPU - {943FD3EC-D330-4277-B3F3-3DFABB57D3B5}.Release|x86.Build.0 = Release|Any CPU {498A4F54-F11A-46C5-A58D-09DE56C6A034}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {498A4F54-F11A-46C5-A58D-09DE56C6A034}.Debug|Any CPU.Build.0 = Debug|Any CPU {498A4F54-F11A-46C5-A58D-09DE56C6A034}.Debug|x64.ActiveCfg = Debug|Any CPU @@ -8053,9 +8023,6 @@ Global {55CACC1F-FE96-47C8-8073-91F4CAA55C75} = {2A91479A-4ABE-4BB7-9A5E-CA3B9CCFC69E} {7509AA1E-3093-4BEE-984F-E11579E98A11} = {7CB09412-C9B0-47E8-A8C3-311AA4CFDE04} {DAAB6B35-CBD2-4573-B633-CDD42F583A0E} = {16898702-3E33-41C1-B8D8-4CE3F1D46BD9} - {1B06FD32-3A1D-46A4-B2AF-99159FAD8127} = {60D51C98-2CC0-40DF-B338-44154EFEE2FF} - {9059AC97-7547-4CC1-A076-680CBCCC1F33} = {1B06FD32-3A1D-46A4-B2AF-99159FAD8127} - {943FD3EC-D330-4277-B3F3-3DFABB57D3B5} = {1B06FD32-3A1D-46A4-B2AF-99159FAD8127} {498A4F54-F11A-46C5-A58D-09DE56C6A034} = {AEB1933E-9369-4305-B20E-F186F888158F} {AEB1933E-9369-4305-B20E-F186F888158F} = {017429CC-C5FB-48B4-9C46-034E29EE2F06} {B9D37BCF-80D1-489D-9FC6-55191FDBB033} = {AEB1933E-9369-4305-B20E-F186F888158F} diff --git a/eng/ProjectReferences.props b/eng/ProjectReferences.props index 0e0a9a7c7976..43a998225972 100644 --- a/eng/ProjectReferences.props +++ b/eng/ProjectReferences.props @@ -140,7 +140,6 @@ - diff --git a/src/Components/Components.slnf b/src/Components/Components.slnf index bfb10dcc6f7f..87f23a36bd84 100644 --- a/src/Components/Components.slnf +++ b/src/Components/Components.slnf @@ -111,9 +111,7 @@ "src\\Components\\WebAssembly\\Sdk\\src\\Microsoft.NET.Sdk.BlazorWebAssembly.csproj", "src\\Components\\WebAssembly\\Sdk\\test\\Microsoft.NET.Sdk.BlazorWebAssembly.Tests.csproj", "src\\Components\\WebAssembly\\Sdk\\integrationtests\\Microsoft.NET.Sdk.BlazorWebAssembly.IntegrationTests.csproj", - "src\\JSInterop\\Microsoft.JSInterop\\src\\Microsoft.JSInterop.csproj", - "src\\Components\\ProtectedBrowserStorage\\src\\Microsoft.AspNetCore.Components.ProtectedBrowserStorage.csproj", - "src\\Components\\ProtectedBrowserStorage\\test\\Microsoft.AspNetCore.Components.ProtectedBrowserStorage.Tests.csproj" + "src\\JSInterop\\Microsoft.JSInterop\\src\\Microsoft.JSInterop.csproj" ] } } diff --git a/src/Components/ComponentsNoDeps.slnf b/src/Components/ComponentsNoDeps.slnf index b6e75d5a65ae..d7918fcc1acd 100644 --- a/src/Components/ComponentsNoDeps.slnf +++ b/src/Components/ComponentsNoDeps.slnf @@ -45,9 +45,7 @@ "src\\Components\\test\\testassets\\BasicTestApp\\BasicTestApp.csproj", "src\\Components\\test\\testassets\\ComponentsApp.Server\\ComponentsApp.Server.csproj", "src\\Components\\test\\testassets\\TestContentPackage\\TestContentPackage.csproj", - "src\\Components\\test\\testassets\\TestServer\\Components.TestServer.csproj", - "src\\Components\\ProtectedBrowserStorage\\src\\Microsoft.AspNetCore.Components.ProtectedBrowserStorage.csproj", - "src\\Components\\ProtectedBrowserStorage\\test\\Microsoft.AspNetCore.Components.ProtectedBrowserStorage.Tests.csproj" + "src\\Components\\test\\testassets\\TestServer\\Components.TestServer.csproj" ] } } diff --git a/src/Components/ProtectedBrowserStorage/src/Microsoft.AspNetCore.Components.ProtectedBrowserStorage.csproj b/src/Components/ProtectedBrowserStorage/src/Microsoft.AspNetCore.Components.ProtectedBrowserStorage.csproj deleted file mode 100644 index 47d821394fc0..000000000000 --- a/src/Components/ProtectedBrowserStorage/src/Microsoft.AspNetCore.Components.ProtectedBrowserStorage.csproj +++ /dev/null @@ -1,20 +0,0 @@ - - - - $(DefaultNetCoreTargetFramework) - Provides functionality for storing protected data using the browser's localStorage and sessionStorage APIs. - true - enable - - - - - - - - - - - - - diff --git a/src/Components/ProtectedBrowserStorage/src/Properties/AssemblyInfo.cs b/src/Components/ProtectedBrowserStorage/src/Properties/AssemblyInfo.cs deleted file mode 100644 index 6c858dd3970c..000000000000 --- a/src/Components/ProtectedBrowserStorage/src/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,4 +0,0 @@ -using System.Runtime.CompilerServices; -using System.Runtime.Versioning; - -[assembly: InternalsVisibleTo("Microsoft.AspNetCore.Components.ProtectedBrowserStorage.Tests, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] diff --git a/src/Components/ProtectedBrowserStorage/src/ProtectedBrowserStorage/ProtectedBrowserStorageServiceCollectionExtensions.cs b/src/Components/ProtectedBrowserStorage/src/ProtectedBrowserStorage/ProtectedBrowserStorageServiceCollectionExtensions.cs deleted file mode 100644 index 8fd43a6ed847..000000000000 --- a/src/Components/ProtectedBrowserStorage/src/ProtectedBrowserStorage/ProtectedBrowserStorageServiceCollectionExtensions.cs +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -using Microsoft.AspNetCore.Components.ProtectedBrowserStorage; - -namespace Microsoft.Extensions.DependencyInjection -{ - /// - /// Extension methods for registering Protected Browser Storage services. - /// - public static class ProtectedBrowserStorageServiceCollectionExtensions - { - /// - /// Adds services for protected browser storage to the specified . - /// - /// The . - public static void AddProtectedBrowserStorage(this IServiceCollection services) - { - services.AddDataProtection(); - services.AddScoped(); - services.AddScoped(); - } - } -} diff --git a/src/Components/ProtectedBrowserStorage/test/Microsoft.AspNetCore.Components.ProtectedBrowserStorage.Tests.csproj b/src/Components/ProtectedBrowserStorage/test/Microsoft.AspNetCore.Components.ProtectedBrowserStorage.Tests.csproj deleted file mode 100644 index 04c21cbd137c..000000000000 --- a/src/Components/ProtectedBrowserStorage/test/Microsoft.AspNetCore.Components.ProtectedBrowserStorage.Tests.csproj +++ /dev/null @@ -1,18 +0,0 @@ - - - - $(DefaultNetCoreTargetFramework) - - - - - - - - - - - - - - diff --git a/src/Components/Server/src/DependencyInjection/ComponentServiceCollectionExtensions.cs b/src/Components/Server/src/DependencyInjection/ComponentServiceCollectionExtensions.cs index d3868d082b07..f87dc1392852 100644 --- a/src/Components/Server/src/DependencyInjection/ComponentServiceCollectionExtensions.cs +++ b/src/Components/Server/src/DependencyInjection/ComponentServiceCollectionExtensions.cs @@ -9,6 +9,7 @@ using Microsoft.AspNetCore.Components.Server; using Microsoft.AspNetCore.Components.Server.BlazorPack; using Microsoft.AspNetCore.Components.Server.Circuits; +using Microsoft.AspNetCore.Components.Server.ProtectedBrowserStorage; using Microsoft.AspNetCore.SignalR.Protocol; using Microsoft.Extensions.DependencyInjection.Extensions; using Microsoft.Extensions.Options; @@ -33,6 +34,9 @@ public static IServerSideBlazorBuilder AddServerSideBlazor(this IServiceCollecti services.AddDataProtection(); + services.TryAddScoped(); + services.TryAddScoped(); + // This call INTENTIONALLY uses the AddHubOptions on the SignalR builder, because it will merge // the global HubOptions before running the configure callback. We want to ensure that happens // once. Our AddHubOptions method doesn't do this. diff --git a/src/Components/ProtectedBrowserStorage/src/ProtectedBrowserStorage/ProtectedBrowserStorage.cs b/src/Components/Server/src/ProtectedBrowserStorage/ProtectedBrowserStorage.cs similarity index 95% rename from src/Components/ProtectedBrowserStorage/src/ProtectedBrowserStorage/ProtectedBrowserStorage.cs rename to src/Components/Server/src/ProtectedBrowserStorage/ProtectedBrowserStorage.cs index 565d32574b3c..4445265fffa8 100644 --- a/src/Components/ProtectedBrowserStorage/src/ProtectedBrowserStorage/ProtectedBrowserStorage.cs +++ b/src/Components/Server/src/ProtectedBrowserStorage/ProtectedBrowserStorage.cs @@ -4,19 +4,17 @@ using System; using System.Collections.Concurrent; using System.Runtime.InteropServices; -using System.Runtime.Versioning; using System.Text.Json; using System.Threading.Tasks; using Microsoft.AspNetCore.DataProtection; using Microsoft.JSInterop; -namespace Microsoft.AspNetCore.Components.ProtectedBrowserStorage +namespace Microsoft.AspNetCore.Components.Server.ProtectedBrowserStorage { /// /// Provides mechanisms for storing and retrieving data in the browser storage. /// - [UnsupportedOSPlatform("browser")] public abstract class ProtectedBrowserStorage { private readonly string _storeName; @@ -31,7 +29,7 @@ private readonly ConcurrentDictionary _cachedDataProtect /// The name of the store in which the data should be stored. /// The . /// The . - protected ProtectedBrowserStorage(string storeName, IJSRuntime jsRuntime, IDataProtectionProvider dataProtectionProvider) + private protected ProtectedBrowserStorage(string storeName, IJSRuntime jsRuntime, IDataProtectionProvider dataProtectionProvider) { // Performing data protection on the client would give users a false sense of security, so we'll prevent this. if (RuntimeInformation.IsOSPlatform(OSPlatform.Create("BROWSER"))) @@ -155,8 +153,8 @@ private TValue Unprotect(string purpose, string protectedJson) private ValueTask SetProtectedJsonAsync(string key, string protectedJson) => _jsRuntime.InvokeVoidAsync($"{_storeName}.setItem", key, protectedJson); - private ValueTask GetProtectedJsonAsync(string key) - => _jsRuntime.InvokeAsync($"{_storeName}.getItem", key); + private ValueTask GetProtectedJsonAsync(string key) + => _jsRuntime.InvokeAsync($"{_storeName}.getItem", key); // IDataProtect isn't disposable, so we're fine holding these indefinitely. // Only a bounded number of them will be created, as the 'key' values should diff --git a/src/Components/ProtectedBrowserStorage/src/ProtectedBrowserStorage/ProtectedBrowserStorageResult.cs b/src/Components/Server/src/ProtectedBrowserStorage/ProtectedBrowserStorageResult.cs similarity index 65% rename from src/Components/ProtectedBrowserStorage/src/ProtectedBrowserStorage/ProtectedBrowserStorageResult.cs rename to src/Components/Server/src/ProtectedBrowserStorage/ProtectedBrowserStorageResult.cs index 7fa193231f26..26abda605c8d 100644 --- a/src/Components/ProtectedBrowserStorage/src/ProtectedBrowserStorage/ProtectedBrowserStorageResult.cs +++ b/src/Components/Server/src/ProtectedBrowserStorage/ProtectedBrowserStorageResult.cs @@ -1,14 +1,12 @@ // Copyright (c) .NET Foundation. All rights reserved. // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -using System.Diagnostics.CodeAnalysis; - -namespace Microsoft.AspNetCore.Components.ProtectedBrowserStorage +namespace Microsoft.AspNetCore.Components.Server.ProtectedBrowserStorage { /// /// Contains the result of a protected browser storage operation. /// - public readonly struct ProtectedBrowserStorageResult + public readonly struct ProtectedBrowserStorageResult { /// /// Gets whether the operation succeeded. @@ -18,11 +16,9 @@ public readonly struct ProtectedBrowserStorageResult /// /// Gets the result value of the operation. /// - [MaybeNull] - [AllowNull] - public T Value { get; } + public TValue? Value { get; } - internal ProtectedBrowserStorageResult(bool success, [AllowNull] T value) + internal ProtectedBrowserStorageResult(bool success, TValue? value) { Success = success; Value = value; diff --git a/src/Components/ProtectedBrowserStorage/src/ProtectedBrowserStorage/ProtectedLocalStorage.cs b/src/Components/Server/src/ProtectedBrowserStorage/ProtectedLocalStorage.cs similarity index 84% rename from src/Components/ProtectedBrowserStorage/src/ProtectedBrowserStorage/ProtectedLocalStorage.cs rename to src/Components/Server/src/ProtectedBrowserStorage/ProtectedLocalStorage.cs index badaaaea9560..0d606b541915 100644 --- a/src/Components/ProtectedBrowserStorage/src/ProtectedBrowserStorage/ProtectedLocalStorage.cs +++ b/src/Components/Server/src/ProtectedBrowserStorage/ProtectedLocalStorage.cs @@ -1,11 +1,10 @@ // Copyright (c) .NET Foundation. All rights reserved. // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -using System.Runtime.Versioning; using Microsoft.AspNetCore.DataProtection; using Microsoft.JSInterop; -namespace Microsoft.AspNetCore.Components.ProtectedBrowserStorage +namespace Microsoft.AspNetCore.Components.Server.ProtectedBrowserStorage { /// /// Provides mechanisms for storing and retrieving data in the browser's @@ -16,8 +15,7 @@ namespace Microsoft.AspNetCore.Components.ProtectedBrowserStorage /// /// See: https://developer.mozilla.org/en-US/docs/Web/API/Window/localStorage /// - [UnsupportedOSPlatform("browser")] - public class ProtectedLocalStorage : ProtectedBrowserStorage + public sealed class ProtectedLocalStorage : ProtectedBrowserStorage { /// /// Constructs an instance of . diff --git a/src/Components/ProtectedBrowserStorage/src/ProtectedBrowserStorage/ProtectedSessionStorage.cs b/src/Components/Server/src/ProtectedBrowserStorage/ProtectedSessionStorage.cs similarity index 85% rename from src/Components/ProtectedBrowserStorage/src/ProtectedBrowserStorage/ProtectedSessionStorage.cs rename to src/Components/Server/src/ProtectedBrowserStorage/ProtectedSessionStorage.cs index 35fb9d7ea44d..274179f70f4d 100644 --- a/src/Components/ProtectedBrowserStorage/src/ProtectedBrowserStorage/ProtectedSessionStorage.cs +++ b/src/Components/Server/src/ProtectedBrowserStorage/ProtectedSessionStorage.cs @@ -1,11 +1,10 @@ // Copyright (c) .NET Foundation. All rights reserved. // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -using System.Runtime.Versioning; using Microsoft.AspNetCore.DataProtection; using Microsoft.JSInterop; -namespace Microsoft.AspNetCore.Components.ProtectedBrowserStorage +namespace Microsoft.AspNetCore.Components.Server.ProtectedBrowserStorage { /// /// Provides mechanisms for storing and retrieving data in the browser's @@ -16,8 +15,7 @@ namespace Microsoft.AspNetCore.Components.ProtectedBrowserStorage /// /// See: https://developer.mozilla.org/en-US/docs/Web/API/Window/sessionStorage /// - [UnsupportedOSPlatform("browser")] - public class ProtectedSessionStorage : ProtectedBrowserStorage + public sealed class ProtectedSessionStorage : ProtectedBrowserStorage { /// /// Constructs an instance of . diff --git a/src/Components/ProtectedBrowserStorage/test/ProtectedBrowserStorageTest.cs b/src/Components/Server/test/ProtectedBrowserStorageTest.cs similarity index 99% rename from src/Components/ProtectedBrowserStorage/test/ProtectedBrowserStorageTest.cs rename to src/Components/Server/test/ProtectedBrowserStorageTest.cs index f5a752d9a3c0..3e5f8f4a582c 100644 --- a/src/Components/ProtectedBrowserStorage/test/ProtectedBrowserStorageTest.cs +++ b/src/Components/Server/test/ProtectedBrowserStorageTest.cs @@ -14,7 +14,7 @@ using Microsoft.JSInterop; using Xunit; -namespace Microsoft.AspNetCore.Components.ProtectedBrowserStorage +namespace Microsoft.AspNetCore.Components.Server.ProtectedBrowserStorage { public class ProtectedBrowserStorageTest { diff --git a/src/Components/test/E2ETest/Infrastructure/WebDriverExtensions/BasicTestAppWebDriverExtensions.cs b/src/Components/test/E2ETest/Infrastructure/WebDriverExtensions/BasicTestAppWebDriverExtensions.cs index 1d744ab26def..77b77275bd9c 100644 --- a/src/Components/test/E2ETest/Infrastructure/WebDriverExtensions/BasicTestAppWebDriverExtensions.cs +++ b/src/Components/test/E2ETest/Infrastructure/WebDriverExtensions/BasicTestAppWebDriverExtensions.cs @@ -8,7 +8,10 @@ internal static class BasicTestAppWebDriverExtensions { public static IWebElement MountTestComponent(this IWebDriver browser) where TComponent : IComponent { - var componentTypeName = typeof(TComponent).FullName; + var componentType = typeof(TComponent); + var componentTypeName = componentType.Assembly == typeof(BasicTestApp.Program).Assembly ? + componentType.FullName : + componentType.AssemblyQualifiedName; var testSelector = browser.WaitUntilTestSelectorReady(); testSelector.SelectByValue("none"); testSelector.SelectByValue(componentTypeName); diff --git a/src/Components/test/E2ETest/ServerExecutionTests/ProtectedBrowserStorageUsageTest.cs b/src/Components/test/E2ETest/ServerExecutionTests/ProtectedBrowserStorageUsageTest.cs index 5908dffc4b83..1e692eff4de1 100644 --- a/src/Components/test/E2ETest/ServerExecutionTests/ProtectedBrowserStorageUsageTest.cs +++ b/src/Components/test/E2ETest/ServerExecutionTests/ProtectedBrowserStorageUsageTest.cs @@ -5,25 +5,24 @@ using System.Linq; using System.Runtime.InteropServices; using System.Threading.Tasks; -using BasicTestApp; +using Components.TestServer; using Microsoft.AspNetCore.Components.E2ETest.Infrastructure; using Microsoft.AspNetCore.Components.E2ETest.Infrastructure.ServerFixtures; using Microsoft.AspNetCore.E2ETesting; using OpenQA.Selenium; using OpenQA.Selenium.Interactions; -using TestServer; using Xunit; using Xunit.Abstractions; namespace Microsoft.AspNetCore.Components.E2ETest.ServerExecutionTests { - public class ProtectedBrowserStorageUsageTest : ServerTestBase> + public class ProtectedBrowserStorageUsageTest : ServerTestBase> { public ProtectedBrowserStorageUsageTest( BrowserFixture browserFixture, - BasicTestAppServerSiteFixture serverFixture, + ToggleExecutionModeServerFixture serverFixture, ITestOutputHelper output) - : base(browserFixture, serverFixture, output) + : base(browserFixture, serverFixture.WithServerExecution(), output) { } diff --git a/src/Components/test/E2ETest/Tests/ProtectedBrowserStorageInjectionTest.cs b/src/Components/test/E2ETest/Tests/ProtectedBrowserStorageInjectionTest.cs index d3ae79c94437..2cd415087e9d 100644 --- a/src/Components/test/E2ETest/Tests/ProtectedBrowserStorageInjectionTest.cs +++ b/src/Components/test/E2ETest/Tests/ProtectedBrowserStorageInjectionTest.cs @@ -3,6 +3,7 @@ using System; using BasicTestApp; +using Components.TestServer; using Microsoft.AspNetCore.Components.E2ETest.Infrastructure; using Microsoft.AspNetCore.Components.E2ETest.Infrastructure.ServerFixtures; using Microsoft.AspNetCore.E2ETesting; @@ -10,7 +11,7 @@ using Xunit; using Xunit.Abstractions; -namespace Microsoft.AspNetCore.Components.E2ETest.Tests +namespace Microsoft.AspNetCore.Components.E2ETest.ServerExecutionTests { public class ProtectedBrowserStorageInjectionTest : ServerTestBase> { @@ -18,7 +19,7 @@ public ProtectedBrowserStorageInjectionTest( BrowserFixture browserFixture, ToggleExecutionModeServerFixture serverFixture, ITestOutputHelper output) - : base(browserFixture, serverFixture, output) + : base(browserFixture, serverFixture.WithServerExecution(), output) { } diff --git a/src/Components/test/testassets/BasicTestApp/BasicTestApp.csproj b/src/Components/test/testassets/BasicTestApp/BasicTestApp.csproj index d25ab757956b..13f08442bf56 100644 --- a/src/Components/test/testassets/BasicTestApp/BasicTestApp.csproj +++ b/src/Components/test/testassets/BasicTestApp/BasicTestApp.csproj @@ -15,7 +15,6 @@ - diff --git a/src/Components/test/testassets/BasicTestApp/Index.razor b/src/Components/test/testassets/BasicTestApp/Index.razor index f2abaa1ba948..d73fb75fbfd7 100644 --- a/src/Components/test/testassets/BasicTestApp/Index.razor +++ b/src/Components/test/testassets/BasicTestApp/Index.razor @@ -66,8 +66,8 @@ - - + + @@ -108,7 +108,7 @@ string SelectedComponentTypeName { get; set; } = "none"; Type SelectedComponentType - => SelectedComponentTypeName == "none" ? null : Type.GetType(SelectedComponentTypeName); + => SelectedComponentTypeName == "none" ? null : Type.GetType(SelectedComponentTypeName, throwOnError: true); void RenderSelectedComponent(RenderTreeBuilder builder) { @@ -118,4 +118,13 @@ builder.CloseComponent(); } } + + static string GetTestServerProjectComponent(string componentName) + { + var serverAssembly = AppDomain.CurrentDomain.GetAssemblies().FirstOrDefault(f => f.GetName().Name == "Components.TestServer"); + // If the server project isn't loaded return the component name as-is. Calculating the SelectedComponentType property will result in an error. + return serverAssembly is null ? + componentName : + serverAssembly.GetType(componentName, throwOnError: true).AssemblyQualifiedName; + } } diff --git a/src/Components/test/testassets/BasicTestApp/Program.cs b/src/Components/test/testassets/BasicTestApp/Program.cs index 09f652e62e8f..0a33c288da0d 100644 --- a/src/Components/test/testassets/BasicTestApp/Program.cs +++ b/src/Components/test/testassets/BasicTestApp/Program.cs @@ -19,7 +19,6 @@ using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging.Configuration; using Microsoft.JSInterop; -using Microsoft.AspNetCore.Components.ProtectedBrowserStorage; namespace BasicTestApp { @@ -40,11 +39,6 @@ public static async Task Main(string[] args) policy.RequireAssertion(ctx => ctx.User.Identity.Name?.StartsWith("B") ?? false)); }); - builder.Services.AddDataProtection(); - - builder.Services.AddTransient(); - builder.Services.AddTransient(); - builder.Logging.AddConfiguration(builder.Configuration.GetSection("Logging")); builder.Logging.Services.AddSingleton(s => diff --git a/src/Components/test/testassets/BasicTestApp/wwwroot/index.html b/src/Components/test/testassets/BasicTestApp/wwwroot/index.html index 584dcc44bb9f..ed8bf6a89fe7 100644 --- a/src/Components/test/testassets/BasicTestApp/wwwroot/index.html +++ b/src/Components/test/testassets/BasicTestApp/wwwroot/index.html @@ -6,6 +6,7 @@ Basic test app + diff --git a/src/Components/test/testassets/TestServer/Components.TestServer.csproj b/src/Components/test/testassets/TestServer/Components.TestServer.csproj index 5030a5fc7818..ebe6254a9054 100644 --- a/src/Components/test/testassets/TestServer/Components.TestServer.csproj +++ b/src/Components/test/testassets/TestServer/Components.TestServer.csproj @@ -7,7 +7,6 @@ - diff --git a/src/Components/test/testassets/TestServer/Pages/_ServerHost.cshtml b/src/Components/test/testassets/TestServer/Pages/_ServerHost.cshtml index 2421d246ad61..1276708a8e85 100644 --- a/src/Components/test/testassets/TestServer/Pages/_ServerHost.cshtml +++ b/src/Components/test/testassets/TestServer/Pages/_ServerHost.cshtml @@ -7,6 +7,7 @@ Basic test app + diff --git a/src/Components/test/testassets/TestServer/PrerenderedStartup.cs b/src/Components/test/testassets/TestServer/PrerenderedStartup.cs index 961333fb6e20..c4d7ad3c94dd 100644 --- a/src/Components/test/testassets/TestServer/PrerenderedStartup.cs +++ b/src/Components/test/testassets/TestServer/PrerenderedStartup.cs @@ -23,7 +23,7 @@ public void ConfigureServices(IServiceCollection services) services.AddMvc(); services.AddServerSideBlazor(); services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme).AddCookie(); - services.AddSingleton(); + services.AddScoped(); } // This method gets called by the runtime. Use this method to configure the HTTP request pipeline. diff --git a/src/Components/test/testassets/BasicTestApp/ProtectedBrowserStorageInjectionComponent.razor b/src/Components/test/testassets/TestServer/ProtectedBrowserStorageInjectionComponent.razor similarity index 82% rename from src/Components/test/testassets/BasicTestApp/ProtectedBrowserStorageInjectionComponent.razor rename to src/Components/test/testassets/TestServer/ProtectedBrowserStorageInjectionComponent.razor index 1fc1b40c0d3e..54ec048f77a0 100644 --- a/src/Components/test/testassets/BasicTestApp/ProtectedBrowserStorageInjectionComponent.razor +++ b/src/Components/test/testassets/TestServer/ProtectedBrowserStorageInjectionComponent.razor @@ -1,6 +1,5 @@ -@using Microsoft.Extensions.DependencyInjection -@using Microsoft.AspNetCore.Components.Web.Extensions -@using Microsoft.AspNetCore.Components.ProtectedBrowserStorage +@using Microsoft.Extensions.DependencyInjection +@using Microsoft.AspNetCore.Components.Server.ProtectedBrowserStorage @inject IServiceProvider ServiceProvider diff --git a/src/Components/test/testassets/BasicTestApp/ProtectedBrowserStorageUsageComponent.razor b/src/Components/test/testassets/TestServer/ProtectedBrowserStorageUsageComponent.razor similarity index 93% rename from src/Components/test/testassets/BasicTestApp/ProtectedBrowserStorageUsageComponent.razor rename to src/Components/test/testassets/TestServer/ProtectedBrowserStorageUsageComponent.razor index fd9c65d4c9d0..8f9da1a79a27 100644 --- a/src/Components/test/testassets/BasicTestApp/ProtectedBrowserStorageUsageComponent.razor +++ b/src/Components/test/testassets/TestServer/ProtectedBrowserStorageUsageComponent.razor @@ -1,5 +1,4 @@ -@using Microsoft.AspNetCore.Components.Web.Extensions -@using Microsoft.AspNetCore.Components.ProtectedBrowserStorage +@using Microsoft.AspNetCore.Components.Server.ProtectedBrowserStorage @inject ProtectedLocalStorage ProtectedLocalStore @inject ProtectedSessionStorage ProtectedSessionStore diff --git a/src/Components/test/testassets/TestServer/ServerStartup.cs b/src/Components/test/testassets/TestServer/ServerStartup.cs index 90d6e862fa91..83578c5dcb3a 100644 --- a/src/Components/test/testassets/TestServer/ServerStartup.cs +++ b/src/Components/test/testassets/TestServer/ServerStartup.cs @@ -19,8 +19,7 @@ public ServerStartup(IConfiguration configuration) public void ConfigureServices(IServiceCollection services) { services.AddMvc(); - services.AddServerSideBlazor(); - services.AddProtectedBrowserStorage(); + services.AddServerSideBlazor(options => options.DetailedErrors = true); } // This method gets called by the runtime. Use this method to configure the HTTP request pipeline. diff --git a/src/Components/test/testassets/TestServer/_Imports.razor b/src/Components/test/testassets/TestServer/_Imports.razor new file mode 100644 index 000000000000..a71616835c7b --- /dev/null +++ b/src/Components/test/testassets/TestServer/_Imports.razor @@ -0,0 +1,2 @@ +@using Microsoft.AspNetCore.Components.Web +@using Microsoft.AspNetCore.Components.Web.Virtualization From c5bcd68853f8d5b1842faaba4950cc4283f7e74f Mon Sep 17 00:00:00 2001 From: Steve Sanderson Date: Wed, 9 Sep 2020 17:54:45 +0100 Subject: [PATCH 35/45] Fix wasm caching on localhost and various E2E test issues (#25689) * Fix caching of WASM resources on localhost * Fix test server startup * Add missing server variant of VirtualizationTest * Make test namespaces consistent * Fix VirtualizationTest cases * Update BootResourceCachingTest --- .../Web.JS/dist/Release/blazor.webassembly.js | 2 +- .../Web.JS/src/Platform/WebAssemblyResourceLoader.ts | 4 ++-- .../E2ETest/ServerExecutionTests/TestSubclasses.cs | 8 ++++++++ .../test/E2ETest/Tests/BootResourceCachingTest.cs | 10 +++++----- .../Tests/ClientRenderingMultpleComponentsTest.cs | 2 +- .../test/E2ETest/Tests/HeadComponentsTest.cs | 3 +-- .../test/E2ETest/Tests/VirtualizationTest.cs | 7 +++---- 7 files changed, 21 insertions(+), 15 deletions(-) diff --git a/src/Components/Web.JS/dist/Release/blazor.webassembly.js b/src/Components/Web.JS/dist/Release/blazor.webassembly.js index 4536b800bb05..59a481f9799b 100644 --- a/src/Components/Web.JS/dist/Release/blazor.webassembly.js +++ b/src/Components/Web.JS/dist/Release/blazor.webassembly.js @@ -1 +1 @@ -!function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=47)}([,,,function(e,t,n){"use strict";var r;n.r(t),n.d(t,"DotNet",(function(){return r})),function(e){var t;window.DotNet=e;var n=[],r=function(){function e(e){this._jsObject=e,this._cachedFunctions=new Map}return e.prototype.findFunction=function(e){var t=this._cachedFunctions.get(e);if(t)return t;var n,r=this._jsObject;if(e.split(".").forEach((function(t){if(!(t in r))throw new Error("Could not find '"+e+"' ('"+t+"' was undefined).");n=r,r=r[t]})),r instanceof Function)return r=r.bind(n),this._cachedFunctions.set(e,r),r;throw new Error("The value '"+e+"' is not a function.")},e.prototype.getWrappedObject=function(){return this._jsObject},e}(),o={},i=((t={})[0]=new r(window),t);i[0]._cachedFunctions.set("import",(function(e){return"string"==typeof e&&e.startsWith("./")&&(e=document.baseURI+e.substr(2)),import(e)}));var a,s=1,u=1,c=null;function l(e){n.push(e)}function f(e){var t;if(e&&"object"==typeof e){i[u]=new r(e);var n=((t={}).__jsObjectId=u,t);return u++,n}throw new Error("Cannot create a JSObjectReference from the value '"+e+"'.")}function d(e){return e?JSON.parse(e,(function(e,t){return n.reduce((function(t,n){return n(e,t)}),t)})):null}function p(e,t,n,r){var o=m();if(o.invokeDotNetFromJS){var i=JSON.stringify(r,_),a=o.invokeDotNetFromJS(e,t,n,i);return a?d(a):null}throw new Error("The current dispatcher does not support synchronous calls from JS to .NET. Use invokeMethodAsync instead.")}function h(e,t,n,r){if(e&&n)throw new Error("For instance method calls, assemblyName should be null. Received '"+e+"'.");var i=s++,a=new Promise((function(e,t){o[i]={resolve:e,reject:t}}));try{var u=JSON.stringify(r,_);m().beginInvokeDotNetFromJS(i,e,t,n,u)}catch(e){v(i,!1,e)}return a}function m(){if(null!==c)return c;throw new Error("No .NET call dispatcher has been set.")}function v(e,t,n){if(!o.hasOwnProperty(e))throw new Error("There is no pending async call with ID "+e+".");var r=o[e];delete o[e],t?r.resolve(n):r.reject(n)}function y(e){return e instanceof Error?e.message+"\n"+e.stack:e?e.toString():"null"}function b(e,t){var n=i[t];if(n)return n.findFunction(e);throw new Error("JS object instance with ID "+t+" does not exist (has it been disposed?).")}function g(e){delete i[e]}e.attachDispatcher=function(e){c=e},e.attachReviver=l,e.invokeMethod=function(e,t){for(var n=[],r=2;r0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&!t)throw new Error("New logical elements must start empty, or allowExistingContents must be true");return r in e||(e[r]=[]),e}function s(e,t,n){var i=e;if(e instanceof Comment&&(c(i)&&c(i).length>0))throw new Error("Not implemented: inserting non-empty logical container");if(u(i))throw new Error("Not implemented: moving existing logical children");var a=c(t);if(n0;)e(r,0)}var i=r;i.parentNode.removeChild(i)},t.getLogicalParent=u,t.getLogicalSiblingEnd=function(e){return e[i]||null},t.getLogicalChild=function(e,t){return c(e)[t]},t.isSvgElement=function(e){return"http://www.w3.org/2000/svg"===l(e).namespaceURI},t.getLogicalChildrenArray=c,t.permuteLogicalChildren=function(e,t){var n=c(e);t.forEach((function(e){e.moveRangeStart=n[e.fromSiblingIndex],e.moveRangeEnd=function e(t){if(t instanceof Element)return t;var n=f(t);if(n)return n.previousSibling;var r=u(t);return r instanceof Element?r.lastChild:e(r)}(e.moveRangeStart)})),t.forEach((function(t){var r=t.moveToBeforeMarker=document.createComment("marker"),o=n[t.toSiblingIndex+1];o?o.parentNode.insertBefore(r,o):d(r,e)})),t.forEach((function(e){for(var t=e.moveToBeforeMarker,n=t.parentNode,r=e.moveRangeStart,o=e.moveRangeEnd,i=r;i;){var a=i.nextSibling;if(n.insertBefore(i,t),i===o)break;i=a}n.removeChild(t)})),t.forEach((function(e){n[e.toSiblingIndex]=e.moveRangeStart}))},t.getClosestDomElement=l},,,,,function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n(25),n(17);var r=n(26),o=n(7),i={},a=!1;function s(e,t,n){var o=i[e];o||(o=i[e]=new r.BrowserRenderer(e)),o.attachRootComponentToLogicalElement(n,t)}t.attachRootComponentToLogicalElement=s,t.attachRootComponentToElement=function(e,t,n){var r=document.querySelector(e);if(!r)throw new Error("Could not find any element matching selector '"+e+"'.");s(n||0,o.toLogicalElement(r,!0),t)},t.getRendererer=function(e){return i[e]},t.renderBatch=function(e,t){var n=i[e];if(!n)throw new Error("There is no browser renderer with ID "+e+".");for(var r=t.arrayRangeReader,o=t.updatedComponents(),s=r.values(o),u=r.count(o),c=t.referenceFrames(),l=r.values(c),f=t.diffReader,d=0;d0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]>2]}t.monoPlatform={start:function(e){return new Promise((function(t,n){var c,l;s.attachDebuggerHotkey(e),window.Browser={init:function(){}},c=function(){window.Module=function(e,t,n){var c=this,l=e.bootConfig.resources,f=window.Module||{},d=["DEBUGGING ENABLED"];f.print=function(e){return d.indexOf(e)<0&&console.log(e)},f.printErr=function(e){console.error(e),u.showErrorNotification()},f.preRun=f.preRun||[],f.postRun=f.postRun||[],f.preloadPlugins=[];var h,b,g=e.loadResources(l.assembly,(function(e){return"_framework/"+e}),"assembly"),w=e.loadResources(l.pdb||{},(function(e){return"_framework/"+e}),"pdb"),E=e.loadResource("dotnet.wasm","_framework/dotnet.wasm",e.bootConfig.resources.runtime["dotnet.wasm"],"dotnetwasm");return e.bootConfig.resources.runtime.hasOwnProperty("dotnet.timezones.blat")&&(h=e.loadResource("dotnet.timezones.blat","_framework/dotnet.timezones.blat",e.bootConfig.resources.runtime["dotnet.timezones.blat"],"globalization")),e.bootConfig.resources.runtime.hasOwnProperty("icudt.dat")&&(b=e.loadResource("icudt.dat","_framework/icudt.dat",e.bootConfig.resources.runtime["icudt.dat"],"globalization")),f.instantiateWasm=function(e,t){return r(c,void 0,void 0,(function(){var n,r;return o(this,(function(o){switch(o.label){case 0:return o.trys.push([0,3,,4]),[4,E];case 1:return[4,v(o.sent(),e)];case 2:return n=o.sent(),[3,4];case 3:throw r=o.sent(),f.printErr(r),r;case 4:return t(n),[2]}}))})),[]},f.preRun.push((function(){i=cwrap("mono_wasm_add_assembly",null,["string","number","number"]),MONO.loaded_files=[],h&&function(e){r(this,void 0,void 0,(function(){var t,n;return o(this,(function(r){switch(r.label){case 0:return t="blazor:timezonedata",addRunDependency(t),[4,e.response];case 1:return[4,r.sent().arrayBuffer()];case 2:return n=r.sent(),Module.FS_createPath("/","usr",!0,!0),Module.FS_createPath("/usr/","share",!0,!0),Module.FS_createPath("/usr/share/","zoneinfo",!0,!0),MONO.mono_wasm_load_data_archive(new Uint8Array(n),"/usr/share/zoneinfo/"),removeRunDependency(t),[2]}}))}))}(h),b?function(e){r(this,void 0,void 0,(function(){var t,n,r,i,a;return o(this,(function(o){switch(o.label){case 0:return t="blazor:icudata",addRunDependency(t),[4,e.response];case 1:return n=o.sent(),i=Uint8Array.bind,[4,n.arrayBuffer()];case 2:if(r=new(i.apply(Uint8Array,[void 0,o.sent()])),a=MONO.mono_wasm_load_bytes_into_heap(r),!MONO.mono_wasm_load_icu_data(a))throw new Error("Error loading ICU asset.");return removeRunDependency(t),[2]}}))}))}(b):MONO.mono_wasm_setenv("DOTNET_SYSTEM_GLOBALIZATION_INVARIANT","1"),g.forEach((function(e){return _(e,function(e,t){var n=e.lastIndexOf(".");if(n<0)throw new Error("No extension to replace in '"+e+"'");return e.substr(0,n)+t}(e.name,".dll"))})),w.forEach((function(e){return _(e,e.name)})),window.Blazor._internal.dotNetCriticalError=function(e){f.printErr(BINDING.conv_string(e)||"(null)")},window.Blazor._internal.getSatelliteAssemblies=function(t){var n=BINDING.mono_array_to_js_array(t),i=e.bootConfig.resources.satelliteResources;if(i){var a=Promise.all(n.filter((function(e){return i.hasOwnProperty(e)})).map((function(t){return e.loadResources(i[t],(function(e){return"_framework/"+e}),"assembly")})).reduce((function(e,t){return e.concat(t)}),new Array).map((function(e){return r(c,void 0,void 0,(function(){return o(this,(function(t){switch(t.label){case 0:return[4,e.response];case 1:return[2,t.sent().arrayBuffer()]}}))}))})));return BINDING.js_to_mono_obj(a.then((function(e){return e.length&&(window.Blazor._internal.readSatelliteAssemblies=function(){for(var t=BINDING.mono_obj_array_new(e.length),n=0;n>1];var n},readInt32Field:function(e,t){return d(e+(t||0))},readUint64Field:function(e,t){return function(e){var t=e>>2,n=Module.HEAPU32[t+1];if(n>l)throw new Error("Cannot read uint64 with high order part "+n+", because the result would exceed Number.MAX_SAFE_INTEGER.");return n*c+Module.HEAPU32[t]}(e+(t||0))},readFloatField:function(e,t){return n=e+(t||0),Module.HEAPF32[n>>2];var n},readObjectField:function(e,t){return d(e+(t||0))},readStringField:function(e,t,n){var r,o=d(e+(t||0));if(0===o)return null;if(n){var i=BINDING.unbox_mono_obj(o);return"boolean"==typeof i?i?"":null:i}return f?void 0===(r=f.stringCache.get(o))&&(r=BINDING.conv_string(o),f.stringCache.set(o,r)):r=BINDING.conv_string(o),r},readStructField:function(e,t){return e+(t||0)},beginHeapLock:function(){return y(),f=new b},invokeWhenHeapUnlocked:function(e){f?f.enqueuePostReleaseAction(e):e()}};var p=document.createElement("a");function h(e){return e+12}function m(e,t,n){var r="["+e+"] "+t+":"+n;return BINDING.bind_static_method(r)}function v(e,t){return r(this,void 0,void 0,(function(){var n,r;return o(this,(function(o){switch(o.label){case 0:if("function"!=typeof WebAssembly.instantiateStreaming)return[3,4];o.label=1;case 1:return o.trys.push([1,3,,4]),[4,WebAssembly.instantiateStreaming(e.response,t)];case 2:return[2,o.sent().instance];case 3:return n=o.sent(),console.info("Streaming compilation failed. Falling back to ArrayBuffer instantiation. ",n),[3,4];case 4:return[4,e.response.then((function(e){return e.arrayBuffer()}))];case 5:return r=o.sent(),[4,WebAssembly.instantiate(r,t)];case 6:return[2,o.sent().instance]}}))}))}function y(){if(f)throw new Error("Assertion failed - heap is currently locked")}var b=function(){function e(){this.stringCache=new Map}return e.prototype.enqueuePostReleaseAction=function(e){this.postReleaseActions||(this.postReleaseActions=[]),this.postReleaseActions.push(e)},e.prototype.release=function(){var e;if(f!==this)throw new Error("Trying to release a lock which isn't current");for(f=null;null===(e=this.postReleaseActions)||void 0===e?void 0:e.length;){this.postReleaseActions.shift()(),y()}},e}()},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{u(r.next(e))}catch(e){i(e)}}function s(e){try{u(r.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}u((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&e.invokeMethodAsync("OnSpacerAfterVisible",r.boundingClientRect.bottom-r.intersectionRect.bottom,a,s)}}))}),{root:i,rootMargin:o+"px"});a.observe(t),a.observe(n);var s=c(t),u=c(n);function c(e){var t=new MutationObserver((function(){a.unobserve(e),a.observe(e)}));return t.observe(e,{attributes:!0}),t}r[e._id]={intersectionObserver:a,mutationObserverBefore:s,mutationObserverAfter:u}},dispose:function(e){var t=r[e._id];t&&(t.intersectionObserver.disconnect(),t.mutationObserverBefore.disconnect(),t.mutationObserverAfter.disconnect(),e.dispose(),delete r[e._id])}};var r={}},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{u(r.next(e))}catch(e){i(e)}}function s(e){try{u(r.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}u((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1].*)$/;function i(e,t){var n=e.currentElement;if(n&&n.nodeType===Node.COMMENT_NODE&&n.textContent){var r=new RegExp(o).exec(n.textContent),i=r&&r.groups&&r.groups.descriptor;if(!i)return;try{var s=function(e){var t=JSON.parse(e),n=t.type;if("server"!==n&&"webassembly"!==n)throw new Error("Invalid component type '"+n+"'.");return t}(i);switch(t){case"webassembly":return function(e,t,n){var r=e.type,o=e.assembly,i=e.typeName,s=e.parameterDefinitions,u=e.parameterValues,c=e.prerenderId;if("webassembly"!==r)return;if(!o)throw new Error("assembly must be defined when using a descriptor.");if(!i)throw new Error("typeName must be defined when using a descriptor.");if(c){var l=a(c,n);if(!l)throw new Error("Could not find an end component comment for '"+t+"'");return{type:r,assembly:o,typeName:i,parameterDefinitions:s&&atob(s),parameterValues:u&&atob(u),start:t,prerenderId:c,end:l}}return{type:r,assembly:o,typeName:i,parameterDefinitions:s&&atob(s),parameterValues:u&&atob(u),start:t}}(s,n,e);case"server":return function(e,t,n){var r=e.type,o=e.descriptor,i=e.sequence,s=e.prerenderId;if("server"!==r)return;if(!o)throw new Error("descriptor must be defined when using a descriptor.");if(void 0===i)throw new Error("sequence must be defined when using a descriptor.");if(!Number.isInteger(i))throw new Error("Error parsing the sequence '"+i+"' for component '"+JSON.stringify(e)+"'");if(s){var u=a(s,n);if(!u)throw new Error("Could not find an end component comment for '"+t+"'");return{type:r,sequence:i,descriptor:o,start:t,prerenderId:s,end:u}}return{type:r,sequence:i,descriptor:o,start:t}}(s,n,e)}}catch(e){throw new Error("Found malformed component comment at "+n.textContent)}}}function a(e,t){for(;t.next()&&t.currentElement;){var n=t.currentElement;if(n.nodeType===Node.COMMENT_NODE&&n.textContent){var r=new RegExp(o).exec(n.textContent),i=r&&r[1];if(i)return s(i,e),n}}}function s(e,t){var n=JSON.parse(e);if(1!==Object.keys(n).length)throw new Error("Invalid end of component comment: '"+e+"'");var r=n.prerenderId;if(!r)throw new Error("End of component comment must have a value for the prerendered property: '"+e+"'");if(r!==t)throw new Error("End of component comment prerendered property must match the start comment prerender id: '"+t+"', '"+r+"'")}var u=function(){function e(e){this.childNodes=e,this.currentIndex=-1,this.length=e.length}return e.prototype.next=function(){return this.currentIndex++,this.currentIndex0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0)&&!(r=i.next()).done;)a.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return a};Object.defineProperty(t,"__esModule",{value:!0});var a=n(3);n(24);var s=n(17),u=n(20),c=n(12),l=n(48),f=n(36),d=n(18),p=n(49),h=n(50),m=n(51),v=n(52),y=n(37),b=!1;function g(e){return r(this,void 0,void 0,(function(){var t,n,f,g,E,_,I,C,N,S,A,k=this;return o(this,(function(F){switch(F.label){case 0:if(b)throw new Error("Blazor has already started.");return b=!0,d.setEventDispatcher((function(e,t){c.getRendererer(e.browserRendererId).eventDelegator.getHandler(e.eventHandlerId)&&u.monoPlatform.invokeWhenHeapUnlocked((function(){return a.DotNet.invokeMethodAsync("Microsoft.AspNetCore.Components.WebAssembly","DispatchEvent",e,JSON.stringify(t))}))})),window.Blazor._internal.invokeJSFromDotNet=w,t=s.setPlatform(u.monoPlatform),window.Blazor.platform=t,window.Blazor._internal.renderBatch=function(e,t){var n=u.monoPlatform.beginHeapLock();try{c.renderBatch(e,new l.SharedMemoryRenderBatch(t))}finally{n.release()}},n=window.Blazor._internal.navigationManager.getBaseURI,f=window.Blazor._internal.navigationManager.getLocationHref,window.Blazor._internal.navigationManager.getUnmarshalledBaseURI=function(){return BINDING.js_string_to_mono_string(n())},window.Blazor._internal.navigationManager.getUnmarshalledLocationHref=function(){return BINDING.js_string_to_mono_string(f())},window.Blazor._internal.navigationManager.listenForNavigationEvents((function(e,t){return r(k,void 0,void 0,(function(){return o(this,(function(n){switch(n.label){case 0:return[4,a.DotNet.invokeMethodAsync("Microsoft.AspNetCore.Components.WebAssembly","NotifyLocationChanged",e,t)];case 1:return n.sent(),[2]}}))}))})),g=null==e?void 0:e.environment,E=m.BootConfigResult.initAsync(g),_=y.discoverComponents(document,"webassembly"),I=new v.WebAssemblyComponentAttacher(_),window.Blazor._internal.registeredComponents={getRegisteredComponentsCount:function(){return I.getCount()},getId:function(e){return I.getId(e)},getAssembly:function(e){return BINDING.js_string_to_mono_string(I.getAssembly(e))},getTypeName:function(e){return BINDING.js_string_to_mono_string(I.getTypeName(e))},getParameterDefinitions:function(e){return BINDING.js_string_to_mono_string(I.getParameterDefinitions(e)||"")},getParameterValues:function(e){return BINDING.js_string_to_mono_string(I.getParameterValues(e)||"")}},window.Blazor._internal.attachRootComponentToElement=function(e,t,n){var r=I.resolveRegisteredElement(e);r?c.attachRootComponentToLogicalElement(n,r,t):c.attachRootComponentToElement(e,t,n)},[4,E];case 1:return C=F.sent(),[4,Promise.all([p.WebAssemblyResourceLoader.initAsync(C.bootConfig,e||{}),h.WebAssemblyConfigLoader.initAsync(C)])];case 2:N=i.apply(void 0,[F.sent(),1]),S=N[0],F.label=3;case 3:return F.trys.push([3,5,,6]),[4,t.start(S)];case 4:return F.sent(),[3,6];case 5:throw A=F.sent(),new Error("Failed to start platform. Reason: "+A);case 6:return t.callEntryPoint(S.bootConfig.entryAssembly),[2]}}))}))}function w(e,t,n,r){var o=u.monoPlatform.readStringField(e,0),i=u.monoPlatform.readInt32Field(e,4),s=u.monoPlatform.readStringField(e,8),c=u.monoPlatform.readUint64Field(e,20);if(null!==s){var l=u.monoPlatform.readUint64Field(e,12);if(0!==l)return a.DotNet.jsCallDispatcher.beginInvokeJSFromDotNet(l,o,s,i,c),0;var f=a.DotNet.jsCallDispatcher.invokeJSFromDotNet(o,s,i,c);return null===f?0:BINDING.js_string_to_mono_string(f)}var d=a.DotNet.jsCallDispatcher.findJSFunction(o,c).call(null,t,n,r);switch(i){case a.DotNet.JSCallResultType.Default:return d;case a.DotNet.JSCallResultType.JSObjectReference:return a.DotNet.createJSObjectReference(d).__jsObjectId;default:throw new Error("Invalid JS call result type '"+i+"'.")}}window.Blazor.start=g,f.shouldAutoStart()&&g().catch((function(e){"undefined"!=typeof Module&&Module.printErr?Module.printErr(e):console.error(e)}))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(17),o=function(){function e(e){this.batchAddress=e,this.arrayRangeReader=i,this.arrayBuilderSegmentReader=a,this.diffReader=s,this.editReader=u,this.frameReader=c}return e.prototype.updatedComponents=function(){return r.platform.readStructField(this.batchAddress,0)},e.prototype.referenceFrames=function(){return r.platform.readStructField(this.batchAddress,i.structLength)},e.prototype.disposedComponentIds=function(){return r.platform.readStructField(this.batchAddress,2*i.structLength)},e.prototype.disposedEventHandlerIds=function(){return r.platform.readStructField(this.batchAddress,3*i.structLength)},e.prototype.updatedComponentsEntry=function(e,t){return l(e,t,s.structLength)},e.prototype.referenceFramesEntry=function(e,t){return l(e,t,c.structLength)},e.prototype.disposedComponentIdsEntry=function(e,t){var n=l(e,t,4);return r.platform.readInt32Field(n)},e.prototype.disposedEventHandlerIdsEntry=function(e,t){var n=l(e,t,8);return r.platform.readUint64Field(n)},e}();t.SharedMemoryRenderBatch=o;var i={structLength:8,values:function(e){return r.platform.readObjectField(e,0)},count:function(e){return r.platform.readInt32Field(e,4)}},a={structLength:12,values:function(e){var t=r.platform.readObjectField(e,0),n=r.platform.getObjectFieldsBaseAddress(t);return r.platform.readObjectField(n,0)},offset:function(e){return r.platform.readInt32Field(e,4)},count:function(e){return r.platform.readInt32Field(e,8)}},s={structLength:4+a.structLength,componentId:function(e){return r.platform.readInt32Field(e,0)},edits:function(e){return r.platform.readStructField(e,4)},editsEntry:function(e,t){return l(e,t,u.structLength)}},u={structLength:20,editType:function(e){return r.platform.readInt32Field(e,0)},siblingIndex:function(e){return r.platform.readInt32Field(e,4)},newTreeIndex:function(e){return r.platform.readInt32Field(e,8)},moveToSiblingIndex:function(e){return r.platform.readInt32Field(e,8)},removedAttributeName:function(e){return r.platform.readStringField(e,16)}},c={structLength:36,frameType:function(e){return r.platform.readInt16Field(e,4)},subtreeLength:function(e){return r.platform.readInt32Field(e,8)},elementReferenceCaptureId:function(e){return r.platform.readStringField(e,16)},componentId:function(e){return r.platform.readInt32Field(e,12)},elementName:function(e){return r.platform.readStringField(e,16)},textContent:function(e){return r.platform.readStringField(e,16)},markupContent:function(e){return r.platform.readStringField(e,16)},attributeName:function(e){return r.platform.readStringField(e,16)},attributeValue:function(e){return r.platform.readStringField(e,24,!0)},attributeEventHandlerId:function(e){return r.platform.readUint64Field(e,8)}};function l(e,t,n){return r.platform.getArrayEntryPtr(e,t,n)}},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{u(r.next(e))}catch(e){i(e)}}function s(e){try{u(r.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}u((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&!t)throw new Error("New logical elements must start empty, or allowExistingContents must be true");return r in e||(e[r]=[]),e}function s(e,t,n){var i=e;if(e instanceof Comment&&(c(i)&&c(i).length>0))throw new Error("Not implemented: inserting non-empty logical container");if(u(i))throw new Error("Not implemented: moving existing logical children");var a=c(t);if(n0;)e(r,0)}var i=r;i.parentNode.removeChild(i)},t.getLogicalParent=u,t.getLogicalSiblingEnd=function(e){return e[i]||null},t.getLogicalChild=function(e,t){return c(e)[t]},t.isSvgElement=function(e){return"http://www.w3.org/2000/svg"===l(e).namespaceURI},t.getLogicalChildrenArray=c,t.permuteLogicalChildren=function(e,t){var n=c(e);t.forEach((function(e){e.moveRangeStart=n[e.fromSiblingIndex],e.moveRangeEnd=function e(t){if(t instanceof Element)return t;var n=f(t);if(n)return n.previousSibling;var r=u(t);return r instanceof Element?r.lastChild:e(r)}(e.moveRangeStart)})),t.forEach((function(t){var r=t.moveToBeforeMarker=document.createComment("marker"),o=n[t.toSiblingIndex+1];o?o.parentNode.insertBefore(r,o):d(r,e)})),t.forEach((function(e){for(var t=e.moveToBeforeMarker,n=t.parentNode,r=e.moveRangeStart,o=e.moveRangeEnd,i=r;i;){var a=i.nextSibling;if(n.insertBefore(i,t),i===o)break;i=a}n.removeChild(t)})),t.forEach((function(e){n[e.toSiblingIndex]=e.moveRangeStart}))},t.getClosestDomElement=l},,,,,function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n(25),n(17);var r=n(26),o=n(7),i={},a=!1;function s(e,t,n){var o=i[e];o||(o=i[e]=new r.BrowserRenderer(e)),o.attachRootComponentToLogicalElement(n,t)}t.attachRootComponentToLogicalElement=s,t.attachRootComponentToElement=function(e,t,n){var r=document.querySelector(e);if(!r)throw new Error("Could not find any element matching selector '"+e+"'.");s(n||0,o.toLogicalElement(r,!0),t)},t.getRendererer=function(e){return i[e]},t.renderBatch=function(e,t){var n=i[e];if(!n)throw new Error("There is no browser renderer with ID "+e+".");for(var r=t.arrayRangeReader,o=t.updatedComponents(),s=r.values(o),u=r.count(o),c=t.referenceFrames(),l=r.values(c),f=t.diffReader,d=0;d0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]>2]}t.monoPlatform={start:function(e){return new Promise((function(t,n){var c,l;s.attachDebuggerHotkey(e),window.Browser={init:function(){}},c=function(){window.Module=function(e,t,n){var c=this,l=e.bootConfig.resources,f=window.Module||{},d=["DEBUGGING ENABLED"];f.print=function(e){return d.indexOf(e)<0&&console.log(e)},f.printErr=function(e){console.error(e),u.showErrorNotification()},f.preRun=f.preRun||[],f.postRun=f.postRun||[],f.preloadPlugins=[];var h,b,g=e.loadResources(l.assembly,(function(e){return"_framework/"+e}),"assembly"),w=e.loadResources(l.pdb||{},(function(e){return"_framework/"+e}),"pdb"),E=e.loadResource("dotnet.wasm","_framework/dotnet.wasm",e.bootConfig.resources.runtime["dotnet.wasm"],"dotnetwasm");return e.bootConfig.resources.runtime.hasOwnProperty("dotnet.timezones.blat")&&(h=e.loadResource("dotnet.timezones.blat","_framework/dotnet.timezones.blat",e.bootConfig.resources.runtime["dotnet.timezones.blat"],"globalization")),e.bootConfig.resources.runtime.hasOwnProperty("icudt.dat")&&(b=e.loadResource("icudt.dat","_framework/icudt.dat",e.bootConfig.resources.runtime["icudt.dat"],"globalization")),f.instantiateWasm=function(e,t){return r(c,void 0,void 0,(function(){var n,r;return o(this,(function(o){switch(o.label){case 0:return o.trys.push([0,3,,4]),[4,E];case 1:return[4,v(o.sent(),e)];case 2:return n=o.sent(),[3,4];case 3:throw r=o.sent(),f.printErr(r),r;case 4:return t(n),[2]}}))})),[]},f.preRun.push((function(){i=cwrap("mono_wasm_add_assembly",null,["string","number","number"]),MONO.loaded_files=[],h&&function(e){r(this,void 0,void 0,(function(){var t,n;return o(this,(function(r){switch(r.label){case 0:return t="blazor:timezonedata",addRunDependency(t),[4,e.response];case 1:return[4,r.sent().arrayBuffer()];case 2:return n=r.sent(),Module.FS_createPath("/","usr",!0,!0),Module.FS_createPath("/usr/","share",!0,!0),Module.FS_createPath("/usr/share/","zoneinfo",!0,!0),MONO.mono_wasm_load_data_archive(new Uint8Array(n),"/usr/share/zoneinfo/"),removeRunDependency(t),[2]}}))}))}(h),b?function(e){r(this,void 0,void 0,(function(){var t,n,r,i,a;return o(this,(function(o){switch(o.label){case 0:return t="blazor:icudata",addRunDependency(t),[4,e.response];case 1:return n=o.sent(),i=Uint8Array.bind,[4,n.arrayBuffer()];case 2:if(r=new(i.apply(Uint8Array,[void 0,o.sent()])),a=MONO.mono_wasm_load_bytes_into_heap(r),!MONO.mono_wasm_load_icu_data(a))throw new Error("Error loading ICU asset.");return removeRunDependency(t),[2]}}))}))}(b):MONO.mono_wasm_setenv("DOTNET_SYSTEM_GLOBALIZATION_INVARIANT","1"),g.forEach((function(e){return _(e,function(e,t){var n=e.lastIndexOf(".");if(n<0)throw new Error("No extension to replace in '"+e+"'");return e.substr(0,n)+t}(e.name,".dll"))})),w.forEach((function(e){return _(e,e.name)})),window.Blazor._internal.dotNetCriticalError=function(e){f.printErr(BINDING.conv_string(e)||"(null)")},window.Blazor._internal.getSatelliteAssemblies=function(t){var n=BINDING.mono_array_to_js_array(t),i=e.bootConfig.resources.satelliteResources;if(i){var a=Promise.all(n.filter((function(e){return i.hasOwnProperty(e)})).map((function(t){return e.loadResources(i[t],(function(e){return"_framework/"+e}),"assembly")})).reduce((function(e,t){return e.concat(t)}),new Array).map((function(e){return r(c,void 0,void 0,(function(){return o(this,(function(t){switch(t.label){case 0:return[4,e.response];case 1:return[2,t.sent().arrayBuffer()]}}))}))})));return BINDING.js_to_mono_obj(a.then((function(e){return e.length&&(window.Blazor._internal.readSatelliteAssemblies=function(){for(var t=BINDING.mono_obj_array_new(e.length),n=0;n>1];var n},readInt32Field:function(e,t){return d(e+(t||0))},readUint64Field:function(e,t){return function(e){var t=e>>2,n=Module.HEAPU32[t+1];if(n>l)throw new Error("Cannot read uint64 with high order part "+n+", because the result would exceed Number.MAX_SAFE_INTEGER.");return n*c+Module.HEAPU32[t]}(e+(t||0))},readFloatField:function(e,t){return n=e+(t||0),Module.HEAPF32[n>>2];var n},readObjectField:function(e,t){return d(e+(t||0))},readStringField:function(e,t,n){var r,o=d(e+(t||0));if(0===o)return null;if(n){var i=BINDING.unbox_mono_obj(o);return"boolean"==typeof i?i?"":null:i}return f?void 0===(r=f.stringCache.get(o))&&(r=BINDING.conv_string(o),f.stringCache.set(o,r)):r=BINDING.conv_string(o),r},readStructField:function(e,t){return e+(t||0)},beginHeapLock:function(){return y(),f=new b},invokeWhenHeapUnlocked:function(e){f?f.enqueuePostReleaseAction(e):e()}};var p=document.createElement("a");function h(e){return e+12}function m(e,t,n){var r="["+e+"] "+t+":"+n;return BINDING.bind_static_method(r)}function v(e,t){return r(this,void 0,void 0,(function(){var n,r;return o(this,(function(o){switch(o.label){case 0:if("function"!=typeof WebAssembly.instantiateStreaming)return[3,4];o.label=1;case 1:return o.trys.push([1,3,,4]),[4,WebAssembly.instantiateStreaming(e.response,t)];case 2:return[2,o.sent().instance];case 3:return n=o.sent(),console.info("Streaming compilation failed. Falling back to ArrayBuffer instantiation. ",n),[3,4];case 4:return[4,e.response.then((function(e){return e.arrayBuffer()}))];case 5:return r=o.sent(),[4,WebAssembly.instantiate(r,t)];case 6:return[2,o.sent().instance]}}))}))}function y(){if(f)throw new Error("Assertion failed - heap is currently locked")}var b=function(){function e(){this.stringCache=new Map}return e.prototype.enqueuePostReleaseAction=function(e){this.postReleaseActions||(this.postReleaseActions=[]),this.postReleaseActions.push(e)},e.prototype.release=function(){var e;if(f!==this)throw new Error("Trying to release a lock which isn't current");for(f=null;null===(e=this.postReleaseActions)||void 0===e?void 0:e.length;){this.postReleaseActions.shift()(),y()}},e}()},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{u(r.next(e))}catch(e){i(e)}}function s(e){try{u(r.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}u((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&e.invokeMethodAsync("OnSpacerAfterVisible",r.boundingClientRect.bottom-r.intersectionRect.bottom,a,s)}}))}),{root:i,rootMargin:o+"px"});a.observe(t),a.observe(n);var s=c(t),u=c(n);function c(e){var t=new MutationObserver((function(){a.unobserve(e),a.observe(e)}));return t.observe(e,{attributes:!0}),t}r[e._id]={intersectionObserver:a,mutationObserverBefore:s,mutationObserverAfter:u}},dispose:function(e){var t=r[e._id];t&&(t.intersectionObserver.disconnect(),t.mutationObserverBefore.disconnect(),t.mutationObserverAfter.disconnect(),e.dispose(),delete r[e._id])}};var r={}},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{u(r.next(e))}catch(e){i(e)}}function s(e){try{u(r.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}u((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1].*)$/;function i(e,t){var n=e.currentElement;if(n&&n.nodeType===Node.COMMENT_NODE&&n.textContent){var r=new RegExp(o).exec(n.textContent),i=r&&r.groups&&r.groups.descriptor;if(!i)return;try{var s=function(e){var t=JSON.parse(e),n=t.type;if("server"!==n&&"webassembly"!==n)throw new Error("Invalid component type '"+n+"'.");return t}(i);switch(t){case"webassembly":return function(e,t,n){var r=e.type,o=e.assembly,i=e.typeName,s=e.parameterDefinitions,u=e.parameterValues,c=e.prerenderId;if("webassembly"!==r)return;if(!o)throw new Error("assembly must be defined when using a descriptor.");if(!i)throw new Error("typeName must be defined when using a descriptor.");if(c){var l=a(c,n);if(!l)throw new Error("Could not find an end component comment for '"+t+"'");return{type:r,assembly:o,typeName:i,parameterDefinitions:s&&atob(s),parameterValues:u&&atob(u),start:t,prerenderId:c,end:l}}return{type:r,assembly:o,typeName:i,parameterDefinitions:s&&atob(s),parameterValues:u&&atob(u),start:t}}(s,n,e);case"server":return function(e,t,n){var r=e.type,o=e.descriptor,i=e.sequence,s=e.prerenderId;if("server"!==r)return;if(!o)throw new Error("descriptor must be defined when using a descriptor.");if(void 0===i)throw new Error("sequence must be defined when using a descriptor.");if(!Number.isInteger(i))throw new Error("Error parsing the sequence '"+i+"' for component '"+JSON.stringify(e)+"'");if(s){var u=a(s,n);if(!u)throw new Error("Could not find an end component comment for '"+t+"'");return{type:r,sequence:i,descriptor:o,start:t,prerenderId:s,end:u}}return{type:r,sequence:i,descriptor:o,start:t}}(s,n,e)}}catch(e){throw new Error("Found malformed component comment at "+n.textContent)}}}function a(e,t){for(;t.next()&&t.currentElement;){var n=t.currentElement;if(n.nodeType===Node.COMMENT_NODE&&n.textContent){var r=new RegExp(o).exec(n.textContent),i=r&&r[1];if(i)return s(i,e),n}}}function s(e,t){var n=JSON.parse(e);if(1!==Object.keys(n).length)throw new Error("Invalid end of component comment: '"+e+"'");var r=n.prerenderId;if(!r)throw new Error("End of component comment must have a value for the prerendered property: '"+e+"'");if(r!==t)throw new Error("End of component comment prerendered property must match the start comment prerender id: '"+t+"', '"+r+"'")}var u=function(){function e(e){this.childNodes=e,this.currentIndex=-1,this.length=e.length}return e.prototype.next=function(){return this.currentIndex++,this.currentIndex0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0)&&!(r=i.next()).done;)a.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return a};Object.defineProperty(t,"__esModule",{value:!0});var a=n(3);n(24);var s=n(17),u=n(20),c=n(12),l=n(48),f=n(36),d=n(18),p=n(49),h=n(50),m=n(51),v=n(52),y=n(37),b=!1;function g(e){return r(this,void 0,void 0,(function(){var t,n,f,g,E,_,I,C,N,S,A,k=this;return o(this,(function(F){switch(F.label){case 0:if(b)throw new Error("Blazor has already started.");return b=!0,d.setEventDispatcher((function(e,t){c.getRendererer(e.browserRendererId).eventDelegator.getHandler(e.eventHandlerId)&&u.monoPlatform.invokeWhenHeapUnlocked((function(){return a.DotNet.invokeMethodAsync("Microsoft.AspNetCore.Components.WebAssembly","DispatchEvent",e,JSON.stringify(t))}))})),window.Blazor._internal.invokeJSFromDotNet=w,t=s.setPlatform(u.monoPlatform),window.Blazor.platform=t,window.Blazor._internal.renderBatch=function(e,t){var n=u.monoPlatform.beginHeapLock();try{c.renderBatch(e,new l.SharedMemoryRenderBatch(t))}finally{n.release()}},n=window.Blazor._internal.navigationManager.getBaseURI,f=window.Blazor._internal.navigationManager.getLocationHref,window.Blazor._internal.navigationManager.getUnmarshalledBaseURI=function(){return BINDING.js_string_to_mono_string(n())},window.Blazor._internal.navigationManager.getUnmarshalledLocationHref=function(){return BINDING.js_string_to_mono_string(f())},window.Blazor._internal.navigationManager.listenForNavigationEvents((function(e,t){return r(k,void 0,void 0,(function(){return o(this,(function(n){switch(n.label){case 0:return[4,a.DotNet.invokeMethodAsync("Microsoft.AspNetCore.Components.WebAssembly","NotifyLocationChanged",e,t)];case 1:return n.sent(),[2]}}))}))})),g=null==e?void 0:e.environment,E=m.BootConfigResult.initAsync(g),_=y.discoverComponents(document,"webassembly"),I=new v.WebAssemblyComponentAttacher(_),window.Blazor._internal.registeredComponents={getRegisteredComponentsCount:function(){return I.getCount()},getId:function(e){return I.getId(e)},getAssembly:function(e){return BINDING.js_string_to_mono_string(I.getAssembly(e))},getTypeName:function(e){return BINDING.js_string_to_mono_string(I.getTypeName(e))},getParameterDefinitions:function(e){return BINDING.js_string_to_mono_string(I.getParameterDefinitions(e)||"")},getParameterValues:function(e){return BINDING.js_string_to_mono_string(I.getParameterValues(e)||"")}},window.Blazor._internal.attachRootComponentToElement=function(e,t,n){var r=I.resolveRegisteredElement(e);r?c.attachRootComponentToLogicalElement(n,r,t):c.attachRootComponentToElement(e,t,n)},[4,E];case 1:return C=F.sent(),[4,Promise.all([p.WebAssemblyResourceLoader.initAsync(C.bootConfig,e||{}),h.WebAssemblyConfigLoader.initAsync(C)])];case 2:N=i.apply(void 0,[F.sent(),1]),S=N[0],F.label=3;case 3:return F.trys.push([3,5,,6]),[4,t.start(S)];case 4:return F.sent(),[3,6];case 5:throw A=F.sent(),new Error("Failed to start platform. Reason: "+A);case 6:return t.callEntryPoint(S.bootConfig.entryAssembly),[2]}}))}))}function w(e,t,n,r){var o=u.monoPlatform.readStringField(e,0),i=u.monoPlatform.readInt32Field(e,4),s=u.monoPlatform.readStringField(e,8),c=u.monoPlatform.readUint64Field(e,20);if(null!==s){var l=u.monoPlatform.readUint64Field(e,12);if(0!==l)return a.DotNet.jsCallDispatcher.beginInvokeJSFromDotNet(l,o,s,i,c),0;var f=a.DotNet.jsCallDispatcher.invokeJSFromDotNet(o,s,i,c);return null===f?0:BINDING.js_string_to_mono_string(f)}var d=a.DotNet.jsCallDispatcher.findJSFunction(o,c).call(null,t,n,r);switch(i){case a.DotNet.JSCallResultType.Default:return d;case a.DotNet.JSCallResultType.JSObjectReference:return a.DotNet.createJSObjectReference(d).__jsObjectId;default:throw new Error("Invalid JS call result type '"+i+"'.")}}window.Blazor.start=g,f.shouldAutoStart()&&g().catch((function(e){"undefined"!=typeof Module&&Module.printErr?Module.printErr(e):console.error(e)}))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(17),o=function(){function e(e){this.batchAddress=e,this.arrayRangeReader=i,this.arrayBuilderSegmentReader=a,this.diffReader=s,this.editReader=u,this.frameReader=c}return e.prototype.updatedComponents=function(){return r.platform.readStructField(this.batchAddress,0)},e.prototype.referenceFrames=function(){return r.platform.readStructField(this.batchAddress,i.structLength)},e.prototype.disposedComponentIds=function(){return r.platform.readStructField(this.batchAddress,2*i.structLength)},e.prototype.disposedEventHandlerIds=function(){return r.platform.readStructField(this.batchAddress,3*i.structLength)},e.prototype.updatedComponentsEntry=function(e,t){return l(e,t,s.structLength)},e.prototype.referenceFramesEntry=function(e,t){return l(e,t,c.structLength)},e.prototype.disposedComponentIdsEntry=function(e,t){var n=l(e,t,4);return r.platform.readInt32Field(n)},e.prototype.disposedEventHandlerIdsEntry=function(e,t){var n=l(e,t,8);return r.platform.readUint64Field(n)},e}();t.SharedMemoryRenderBatch=o;var i={structLength:8,values:function(e){return r.platform.readObjectField(e,0)},count:function(e){return r.platform.readInt32Field(e,4)}},a={structLength:12,values:function(e){var t=r.platform.readObjectField(e,0),n=r.platform.getObjectFieldsBaseAddress(t);return r.platform.readObjectField(n,0)},offset:function(e){return r.platform.readInt32Field(e,4)},count:function(e){return r.platform.readInt32Field(e,8)}},s={structLength:4+a.structLength,componentId:function(e){return r.platform.readInt32Field(e,0)},edits:function(e){return r.platform.readStructField(e,4)},editsEntry:function(e,t){return l(e,t,u.structLength)}},u={structLength:20,editType:function(e){return r.platform.readInt32Field(e,0)},siblingIndex:function(e){return r.platform.readInt32Field(e,4)},newTreeIndex:function(e){return r.platform.readInt32Field(e,8)},moveToSiblingIndex:function(e){return r.platform.readInt32Field(e,8)},removedAttributeName:function(e){return r.platform.readStringField(e,16)}},c={structLength:36,frameType:function(e){return r.platform.readInt16Field(e,4)},subtreeLength:function(e){return r.platform.readInt32Field(e,8)},elementReferenceCaptureId:function(e){return r.platform.readStringField(e,16)},componentId:function(e){return r.platform.readInt32Field(e,12)},elementName:function(e){return r.platform.readStringField(e,16)},textContent:function(e){return r.platform.readStringField(e,16)},markupContent:function(e){return r.platform.readStringField(e,16)},attributeName:function(e){return r.platform.readStringField(e,16)},attributeValue:function(e){return r.platform.readStringField(e,24,!0)},attributeEventHandlerId:function(e){return r.platform.readUint64Field(e,8)}};function l(e,t,n){return r.platform.getArrayEntryPtr(e,t,n)}},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{u(r.next(e))}catch(e){i(e)}}function s(e){try{u(r.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}u((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1] serverFixture, ITestOutputHelper output) + : base(browserFixture, serverFixture.WithServerExecution(), output) + { + } + } } diff --git a/src/Components/test/E2ETest/Tests/BootResourceCachingTest.cs b/src/Components/test/E2ETest/Tests/BootResourceCachingTest.cs index 1dd32e822112..889f96a1b2cf 100644 --- a/src/Components/test/E2ETest/Tests/BootResourceCachingTest.cs +++ b/src/Components/test/E2ETest/Tests/BootResourceCachingTest.cs @@ -71,16 +71,16 @@ public void IncrementallyUpdatesCache() Navigate("/"); WaitUntilLoaded(); var cacheEntryUrls1 = GetCacheEntryUrls(); - var cacheEntryForMsCorLib = cacheEntryUrls1.Single(url => url.Contains("/mscorlib.dll")); + var cacheEntryForComponentsDll = cacheEntryUrls1.Single(url => url.Contains("/Microsoft.AspNetCore.Components.dll")); var cacheEntryForDotNetWasm = cacheEntryUrls1.Single(url => url.Contains("/dotnet.wasm")); var cacheEntryForDotNetWasmWithChangedHash = cacheEntryForDotNetWasm.Replace(".sha256-", ".sha256-different"); // Remove some items we do need, and add an item we don't need - RemoveCacheEntry(cacheEntryForMsCorLib); + RemoveCacheEntry(cacheEntryForComponentsDll); RemoveCacheEntry(cacheEntryForDotNetWasm); AddCacheEntry(cacheEntryForDotNetWasmWithChangedHash, "ignored content"); var cacheEntryUrls2 = GetCacheEntryUrls(); - Assert.DoesNotContain(cacheEntryForMsCorLib, cacheEntryUrls2); + Assert.DoesNotContain(cacheEntryForComponentsDll, cacheEntryUrls2); Assert.DoesNotContain(cacheEntryForDotNetWasm, cacheEntryUrls2); Assert.Contains(cacheEntryForDotNetWasmWithChangedHash, cacheEntryUrls2); @@ -91,13 +91,13 @@ public void IncrementallyUpdatesCache() WaitUntilLoaded(); var subsequentResourcesRequested = GetAndClearRequestedPaths(); Assert.Collection(subsequentResourcesRequested.Where(url => url.Contains(".dll")), - requestedDll => Assert.Contains("/mscorlib.dll", requestedDll)); + requestedDll => Assert.Contains("/Microsoft.AspNetCore.Components.dll", requestedDll)); Assert.Collection(subsequentResourcesRequested.Where(url => url.Contains(".wasm")), requestedDll => Assert.Contains("/dotnet.wasm", requestedDll)); // We also update the cache (add new items, remove unnecessary items) var cacheEntryUrls3 = GetCacheEntryUrls(); - Assert.Contains(cacheEntryForMsCorLib, cacheEntryUrls3); + Assert.Contains(cacheEntryForComponentsDll, cacheEntryUrls3); Assert.Contains(cacheEntryForDotNetWasm, cacheEntryUrls3); Assert.DoesNotContain(cacheEntryForDotNetWasmWithChangedHash, cacheEntryUrls3); } diff --git a/src/Components/test/E2ETest/Tests/ClientRenderingMultpleComponentsTest.cs b/src/Components/test/E2ETest/Tests/ClientRenderingMultpleComponentsTest.cs index 7e4df2898e75..8ac2563fc2fa 100644 --- a/src/Components/test/E2ETest/Tests/ClientRenderingMultpleComponentsTest.cs +++ b/src/Components/test/E2ETest/Tests/ClientRenderingMultpleComponentsTest.cs @@ -14,7 +14,7 @@ using Xunit; using Xunit.Abstractions; -namespace Microsoft.AspNetCore.Components.E2ETests.Tests +namespace Microsoft.AspNetCore.Components.E2ETest.Tests { public class ClientRenderingMultpleComponentsTest : ServerTestBase> { diff --git a/src/Components/test/E2ETest/Tests/HeadComponentsTest.cs b/src/Components/test/E2ETest/Tests/HeadComponentsTest.cs index f84f0b1bce47..86abf7802cdb 100644 --- a/src/Components/test/E2ETest/Tests/HeadComponentsTest.cs +++ b/src/Components/test/E2ETest/Tests/HeadComponentsTest.cs @@ -3,7 +3,6 @@ using System.Linq; using BasicTestApp; -using Microsoft.AspNetCore.Components.E2ETest; using Microsoft.AspNetCore.Components.E2ETest.Infrastructure; using Microsoft.AspNetCore.Components.E2ETest.Infrastructure.ServerFixtures; using Microsoft.AspNetCore.E2ETesting; @@ -11,7 +10,7 @@ using Xunit; using Xunit.Abstractions; -namespace Microsoft.AspNetCore.Components.E2ETests.Tests +namespace Microsoft.AspNetCore.Components.E2ETest.Tests { public class HeadComponentsTest : ServerTestBase> { diff --git a/src/Components/test/E2ETest/Tests/VirtualizationTest.cs b/src/Components/test/E2ETest/Tests/VirtualizationTest.cs index 6894af066af3..1dc34c69e9ac 100644 --- a/src/Components/test/E2ETest/Tests/VirtualizationTest.cs +++ b/src/Components/test/E2ETest/Tests/VirtualizationTest.cs @@ -2,7 +2,6 @@ // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. using BasicTestApp; -using Microsoft.AspNetCore.Components.E2ETest; using Microsoft.AspNetCore.Components.E2ETest.Infrastructure; using Microsoft.AspNetCore.Components.E2ETest.Infrastructure.ServerFixtures; using Microsoft.AspNetCore.E2ETesting; @@ -12,7 +11,7 @@ using Xunit; using Xunit.Abstractions; -namespace Microsoft.AspNetCore.Components.E2ETests.Tests +namespace Microsoft.AspNetCore.Components.E2ETest.Tests { public class VirtualizationTest : ServerTestBase> { @@ -121,7 +120,7 @@ public void RerendersWhenItemSizeShrinks_Sync() var itemSizeInput = Browser.FindElement(By.Id("item-size-input")); // Change the item size. - itemSizeInput.SendKeys("\b\b\b50\n"); + itemSizeInput.SendKeys("\b\b\b10\n"); // Validate that the list has been re-rendered to show more items. Browser.True(() => GetItemCount() > initialItemCount); @@ -146,7 +145,7 @@ public void RerendersWhenItemSizeShrinks_Async() var itemSizeInput = Browser.FindElement(By.Id("item-size-input")); // Change the item size. - itemSizeInput.SendKeys("\b\b\b50\n"); + itemSizeInput.SendKeys("\b\b\b10\n"); // Validate that the same number of loaded items is rendered. Browser.Equal(initialItemCount, GetItemCount); From 0d548f302b472e8c1d48719aeaebc14131c03e56 Mon Sep 17 00:00:00 2001 From: Artak <34246760+mkArtakMSFT@users.noreply.github.com> Date: Wed, 9 Sep 2020 09:57:42 -0700 Subject: [PATCH 36/45] Enable PlatformCompatibilityAnalyzer for RCL projects (#25636) --- .../Web.ProjectTemplates/RazorClassLibrary-CSharp.csproj.in | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/ProjectTemplates/Web.ProjectTemplates/RazorClassLibrary-CSharp.csproj.in b/src/ProjectTemplates/Web.ProjectTemplates/RazorClassLibrary-CSharp.csproj.in index 78d4ceaeae6a..3ddb38c8ba6b 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/RazorClassLibrary-CSharp.csproj.in +++ b/src/ProjectTemplates/Web.ProjectTemplates/RazorClassLibrary-CSharp.csproj.in @@ -9,6 +9,10 @@ + + + + From ecc2ba16b8d20d5180d272f4f548e5b8a02461f0 Mon Sep 17 00:00:00 2001 From: Steve Sanderson Date: Wed, 9 Sep 2020 19:08:10 +0100 Subject: [PATCH 37/45] Accessibility fixes (#25678) * Fix header tab ordering issues. Fixes 1163117 * Ensure text can be zoomed to 200% without switching to mobile layout. Fixes 1163184. * Ensure "Log out" link can show focus state. Fixes 1162890 * Use screen reader-friendly link text. Fixes 1163642 * Update template test --- .../Identity/Pages/V4/Account/Login.cshtml | 4 ++-- .../Identity/Pages/V4/Account/Register.cshtml | 4 ++-- src/Identity/UI/src/wwwroot/V4/css/site.css | 4 ++++ .../Shared/MainLayout.razor.css | 4 ++-- .../Shared/NavMenu.razor.css | 2 +- .../Client/Shared/MainLayout.razor.css | 4 ++-- .../Client/Shared/NavMenu.razor.css | 2 +- .../Pages/Shared/_Layout.cshtml | 12 +++++------ .../Views/Shared/_Layout.cshtml | 12 +++++------ .../src/app/nav-menu/nav-menu.component.html | 8 ++++---- src/ProjectTemplates/test/MvcTemplateTest.cs | 20 +++++++++---------- 11 files changed, 40 insertions(+), 36 deletions(-) diff --git a/src/Identity/UI/src/Areas/Identity/Pages/V4/Account/Login.cshtml b/src/Identity/UI/src/Areas/Identity/Pages/V4/Account/Login.cshtml index f5157d41fc97..33a3c01acdb2 100644 --- a/src/Identity/UI/src/Areas/Identity/Pages/V4/Account/Login.cshtml +++ b/src/Identity/UI/src/Areas/Identity/Pages/V4/Account/Login.cshtml @@ -57,8 +57,8 @@ {

- There are no external authentication services configured. See this article - for details on setting up this ASP.NET application to support logging in via external services. + There are no external authentication services configured. See this article + about setting up this ASP.NET application to support logging in via external services.

} diff --git a/src/Identity/UI/src/Areas/Identity/Pages/V4/Account/Register.cshtml b/src/Identity/UI/src/Areas/Identity/Pages/V4/Account/Register.cshtml index faa4a90888b1..dcfb7280b62a 100644 --- a/src/Identity/UI/src/Areas/Identity/Pages/V4/Account/Register.cshtml +++ b/src/Identity/UI/src/Areas/Identity/Pages/V4/Account/Register.cshtml @@ -39,8 +39,8 @@ {

- There are no external authentication services configured. See this article - for details on setting up this ASP.NET application to support logging in via external services. + There are no external authentication services configured. See this article + about setting up this ASP.NET application to support logging in via external services.

} diff --git a/src/Identity/UI/src/wwwroot/V4/css/site.css b/src/Identity/UI/src/wwwroot/V4/css/site.css index 52889ec4d5c9..d0420ca4fb74 100644 --- a/src/Identity/UI/src/wwwroot/V4/css/site.css +++ b/src/Identity/UI/src/wwwroot/V4/css/site.css @@ -24,6 +24,10 @@ a { border-color: #1861ac; } +.btn-link.nav-link:focus { + outline: black auto 1px; +} + /* Sticky footer styles -------------------------------------------------- */ html { diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorServerWeb-CSharp/Shared/MainLayout.razor.css b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorServerWeb-CSharp/Shared/MainLayout.razor.css index 61a993539a38..43c355a47ac7 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorServerWeb-CSharp/Shared/MainLayout.razor.css +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorServerWeb-CSharp/Shared/MainLayout.razor.css @@ -31,7 +31,7 @@ text-overflow: ellipsis; } -@media (max-width: 767.98px) { +@media (max-width: 640.98px) { .top-row:not(.auth) { display: none; } @@ -45,7 +45,7 @@ } } -@media (min-width: 768px) { +@media (min-width: 641px) { .page { flex-direction: row; } diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorServerWeb-CSharp/Shared/NavMenu.razor.css b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorServerWeb-CSharp/Shared/NavMenu.razor.css index 622671ec4c87..acc5f9f81919 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorServerWeb-CSharp/Shared/NavMenu.razor.css +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorServerWeb-CSharp/Shared/NavMenu.razor.css @@ -50,7 +50,7 @@ color: white; } -@media (min-width: 768px) { +@media (min-width: 641px) { .navbar-toggler { display: none; } diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Client/Shared/MainLayout.razor.css b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Client/Shared/MainLayout.razor.css index 61a993539a38..43c355a47ac7 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Client/Shared/MainLayout.razor.css +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Client/Shared/MainLayout.razor.css @@ -31,7 +31,7 @@ text-overflow: ellipsis; } -@media (max-width: 767.98px) { +@media (max-width: 640.98px) { .top-row:not(.auth) { display: none; } @@ -45,7 +45,7 @@ } } -@media (min-width: 768px) { +@media (min-width: 641px) { .page { flex-direction: row; } diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Client/Shared/NavMenu.razor.css b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Client/Shared/NavMenu.razor.css index 622671ec4c87..acc5f9f81919 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Client/Shared/NavMenu.razor.css +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Client/Shared/NavMenu.razor.css @@ -50,7 +50,7 @@ color: white; } -@media (min-width: 768px) { +@media (min-width: 641px) { .navbar-toggler { display: none; } diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/Pages/Shared/_Layout.cshtml b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/Pages/Shared/_Layout.cshtml index 835d806c2ee6..e2a66b3b62d4 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/Pages/Shared/_Layout.cshtml +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/Pages/Shared/_Layout.cshtml @@ -16,12 +16,7 @@ aria-expanded="false" aria-label="Toggle navigation"> - diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/Views/Shared/_Layout.cshtml b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/Views/Shared/_Layout.cshtml index 5234625f8d2e..560ffb88ce24 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/Views/Shared/_Layout.cshtml +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/Views/Shared/_Layout.cshtml @@ -16,12 +16,7 @@ aria-expanded="false" aria-label="Toggle navigation"> - diff --git a/src/ProjectTemplates/Web.Spa.ProjectTemplates/content/Angular-CSharp/ClientApp/src/app/nav-menu/nav-menu.component.html b/src/ProjectTemplates/Web.Spa.ProjectTemplates/content/Angular-CSharp/ClientApp/src/app/nav-menu/nav-menu.component.html index 79a4b2185c66..1b2e45ad5795 100644 --- a/src/ProjectTemplates/Web.Spa.ProjectTemplates/content/Angular-CSharp/ClientApp/src/app/nav-menu/nav-menu.component.html +++ b/src/ProjectTemplates/Web.Spa.ProjectTemplates/content/Angular-CSharp/ClientApp/src/app/nav-menu/nav-menu.component.html @@ -16,12 +16,9 @@ diff --git a/src/ProjectTemplates/test/MvcTemplateTest.cs b/src/ProjectTemplates/test/MvcTemplateTest.cs index e3fdf66b3aab..9bbe8fdc836a 100644 --- a/src/ProjectTemplates/test/MvcTemplateTest.cs +++ b/src/ProjectTemplates/test/MvcTemplateTest.cs @@ -142,10 +142,10 @@ public async Task MvcTemplate_IndividualAuth(bool useLocalDB) Url = PageUrls.ForgotPassword, Links = new string [] { PageUrls.HomeUrl, - PageUrls.RegisterUrl, - PageUrls.LoginUrl, PageUrls.HomeUrl, PageUrls.PrivacyUrl, + PageUrls.RegisterUrl, + PageUrls.LoginUrl, PageUrls.PrivacyUrl } }, @@ -154,10 +154,10 @@ public async Task MvcTemplate_IndividualAuth(bool useLocalDB) Url = PageUrls.HomeUrl, Links = new string[] { PageUrls.HomeUrl, - PageUrls.RegisterUrl, - PageUrls.LoginUrl, PageUrls.HomeUrl, PageUrls.PrivacyUrl, + PageUrls.RegisterUrl, + PageUrls.LoginUrl, PageUrls.DocsUrl, PageUrls.PrivacyUrl } @@ -167,10 +167,10 @@ public async Task MvcTemplate_IndividualAuth(bool useLocalDB) Url = PageUrls.PrivacyFullUrl, Links = new string[] { PageUrls.HomeUrl, - PageUrls.RegisterUrl, - PageUrls.LoginUrl, PageUrls.HomeUrl, PageUrls.PrivacyUrl, + PageUrls.RegisterUrl, + PageUrls.LoginUrl, PageUrls.PrivacyUrl } }, @@ -179,10 +179,10 @@ public async Task MvcTemplate_IndividualAuth(bool useLocalDB) Url = PageUrls.LoginUrl, Links = new string[] { PageUrls.HomeUrl, - PageUrls.RegisterUrl, - PageUrls.LoginUrl, PageUrls.HomeUrl, PageUrls.PrivacyUrl, + PageUrls.RegisterUrl, + PageUrls.LoginUrl, PageUrls.ForgotPassword, PageUrls.RegisterUrl, PageUrls.ResendEmailConfirmation, @@ -194,10 +194,10 @@ public async Task MvcTemplate_IndividualAuth(bool useLocalDB) Url = PageUrls.RegisterUrl, Links = new string [] { PageUrls.HomeUrl, - PageUrls.RegisterUrl, - PageUrls.LoginUrl, PageUrls.HomeUrl, PageUrls.PrivacyUrl, + PageUrls.RegisterUrl, + PageUrls.LoginUrl, PageUrls.ExternalArticle, PageUrls.PrivacyUrl } From b3f4a32d23e96487aaa3b2f1e15e4af7b190cdeb Mon Sep 17 00:00:00 2001 From: Stephen Halter Date: Wed, 9 Sep 2020 11:26:51 -0700 Subject: [PATCH 38/45] Increase SignalR Java client test timeouts to 30 seconds (#25639) --- .../microsoft/signalr/HubConnectionTest.java | 700 +++++++++--------- .../signalr/LongPollingTransportTest.java | 22 +- 2 files changed, 361 insertions(+), 361 deletions(-) diff --git a/src/SignalR/clients/java/signalr/test/src/main/java/com/microsoft/signalr/HubConnectionTest.java b/src/SignalR/clients/java/signalr/test/src/main/java/com/microsoft/signalr/HubConnectionTest.java index 57c0c8c9b30e..655bd807c01f 100644 --- a/src/SignalR/clients/java/signalr/test/src/main/java/com/microsoft/signalr/HubConnectionTest.java +++ b/src/SignalR/clients/java/signalr/test/src/main/java/com/microsoft/signalr/HubConnectionTest.java @@ -38,7 +38,7 @@ class HubConnectionTest { @Test public void checkHubConnectionState() { HubConnection hubConnection = TestUtils.createHubConnection("http://example.com"); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); hubConnection.stop(); @@ -49,7 +49,7 @@ public void checkHubConnectionState() { public void transportCloseTriggersStopInHubConnection() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); mockTransport.stop(); @@ -67,7 +67,7 @@ public void transportCloseWithErrorTriggersStopInHubConnection() { message.set(error.getMessage()); }); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); mockTransport.stopWithError(errorMessage); assertEquals(errorMessage, message.get()); @@ -82,7 +82,7 @@ public void checkHubConnectionStateNoHandShakeResponse() { .shouldSkipNegotiate(true) .withHandshakeResponseTimeout(100) .build(); - Throwable exception = assertThrows(RuntimeException.class, () -> hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait()); + Throwable exception = assertThrows(RuntimeException.class, () -> hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait()); assertEquals(TimeoutException.class, exception.getCause().getClass()); assertEquals("Timed out waiting for the server to respond to the handshake message.", exception.getCause().getMessage()); assertEquals(HubConnectionState.DISCONNECTED, hubConnection.getConnectionState()); @@ -93,7 +93,7 @@ public void constructHubConnectionWithHttpConnectionOptions() { Transport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); hubConnection.stop(); @@ -105,7 +105,7 @@ public void hubConnectionClosesAfterCloseMessage() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); @@ -119,21 +119,21 @@ public void hubConnectionUrlCanBeChanged() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); assertEquals("http://example.com", hubConnection.getBaseUrl()); - hubConnection.stop().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.stop().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.DISCONNECTED, hubConnection.getConnectionState()); hubConnection.setBaseUrl("http://newurl.com"); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals("http://newurl.com", hubConnection.getBaseUrl()); - hubConnection.stop().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.stop().timeout(30, TimeUnit.SECONDS).blockingAwait(); } @Test @@ -141,7 +141,7 @@ public void canUpdateUrlInOnClosed() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); assertEquals("http://example.com", hubConnection.getBaseUrl()); @@ -150,15 +150,15 @@ public void canUpdateUrlInOnClosed() { hubConnection.setBaseUrl("http://newurl.com"); }); - hubConnection.stop().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.stop().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.DISCONNECTED, hubConnection.getConnectionState()); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals("http://newurl.com", hubConnection.getBaseUrl()); - hubConnection.stop().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.stop().timeout(30, TimeUnit.SECONDS).blockingAwait(); } @Test @@ -166,7 +166,7 @@ public void changingUrlWhenConnectedThrows() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); assertEquals("http://example.com", hubConnection.getBaseUrl()); @@ -180,7 +180,7 @@ public void settingNewUrlToNullThrows() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); assertEquals("http://example.com", hubConnection.getBaseUrl()); @@ -195,7 +195,7 @@ public void invalidHandShakeResponse() { HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); hubConnection.start(); - mockTransport.getStartTask().timeout(1, TimeUnit.SECONDS).blockingAwait(); + mockTransport.getStartTask().timeout(30, TimeUnit.SECONDS).blockingAwait(); Throwable exception = assertThrows(RuntimeException.class, () -> mockTransport.receiveMessage("{" + RECORD_SEPARATOR)); assertEquals("An invalid handshake response was received from the server.", exception.getMessage()); @@ -208,8 +208,8 @@ public void hubConnectionReceiveHandshakeResponseWithError() { HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); hubConnection.start(); - mockTransport.getStartTask().timeout(1, TimeUnit.SECONDS).blockingAwait(); - Throwable exception = assertThrows(RuntimeException.class, () -> + mockTransport.getStartTask().timeout(30, TimeUnit.SECONDS).blockingAwait(); + Throwable exception = assertThrows(RuntimeException.class, () -> mockTransport.receiveMessage("{\"error\":\"Requested protocol 'messagepack' is not available.\"}" + RECORD_SEPARATOR)); assertEquals("Error in handshake Requested protocol 'messagepack' is not available.", exception.getMessage()); } @@ -226,7 +226,7 @@ public void registeringMultipleHandlersAndBothGetTriggered() { assertEquals(Double.valueOf(0), value.get()); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); String message = TestUtils.byteBufferToString(mockTransport.getSentMessages()[0]); String expectedHanshakeRequest = "{\"protocol\":\"json\",\"version\":1}" + RECORD_SEPARATOR; @@ -250,7 +250,7 @@ public void removeHandlerByName() { assertEquals(Double.valueOf(0), value.get()); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); String message = TestUtils.byteBufferToString(mockTransport.getSentMessages()[0]); String expectedHanshakeRequest = "{\"protocol\":\"json\",\"version\":1}" + RECORD_SEPARATOR; @@ -277,7 +277,7 @@ public void addAndRemoveHandlerImmediately() { assertEquals(Double.valueOf(0), value.get()); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); String message = TestUtils.byteBufferToString(mockTransport.getSentMessages()[0]); String expectedHanshakeRequest = "{\"protocol\":\"json\",\"version\":1}" + RECORD_SEPARATOR; @@ -302,7 +302,7 @@ public void removingMultipleHandlersWithOneCallToRemove() { assertEquals(Double.valueOf(0), value.get()); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); String message = TestUtils.byteBufferToString(mockTransport.getSentMessages()[0]); String expectedHanshakeRequest = "{\"protocol\":\"json\",\"version\":1}" + RECORD_SEPARATOR; @@ -331,7 +331,7 @@ public void removeHandlerWithUnsubscribe() { assertEquals(Double.valueOf(0), value.get()); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); String message = TestUtils.byteBufferToString(mockTransport.getSentMessages()[0]); String expectedHanshakeRequest = "{\"protocol\":\"json\",\"version\":1}" + RECORD_SEPARATOR; @@ -363,7 +363,7 @@ public void unsubscribeTwice() { assertEquals(Double.valueOf(0), value.get()); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); String message = TestUtils.byteBufferToString(mockTransport.getSentMessages()[0]); String expectedHanshakeRequest = "{\"protocol\":\"json\",\"version\":1}" + RECORD_SEPARATOR; @@ -398,7 +398,7 @@ public void removeSingleHandlerWithUnsubscribe() { assertEquals(Double.valueOf(0), value.get()); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); String message = TestUtils.byteBufferToString(mockTransport.getSentMessages()[0]); String expectedHanshakeRequest = "{\"protocol\":\"json\",\"version\":1}" + RECORD_SEPARATOR; @@ -426,7 +426,7 @@ public void addAndRemoveHandlerImmediatelyWithSubscribe() { assertEquals(Double.valueOf(0), value.get()); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); try { mockTransport.receiveMessage("{\"type\":1,\"target\":\"inc\",\"arguments\":[]}" + RECORD_SEPARATOR); @@ -450,7 +450,7 @@ public void registeringMultipleHandlersThatTakeParamsAndBothGetTriggered() { hubConnection.on("add", action, Double.class); assertEquals(Double.valueOf(0), value.get()); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); mockTransport.receiveMessage("{\"type\":1,\"target\":\"add\",\"arguments\":[12]}" + RECORD_SEPARATOR); // Confirming that our handler was called and the correct message was passed in. @@ -462,7 +462,7 @@ public void checkStreamUploadSingleItemThroughSend() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); ReplaySubject stream = ReplaySubject.create(); hubConnection.send("UploadStream", stream); @@ -481,7 +481,7 @@ public void checkStreamUploadMultipleStreamsThroughSend() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); ReplaySubject firstStream = ReplaySubject.create(); ReplaySubject secondStream = ReplaySubject.create(); @@ -508,7 +508,7 @@ public void checkStreamUploadThroughSendWithArgs() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); ReplaySubject stream = ReplaySubject.create(); hubConnection.send("UploadStream", stream, 12); @@ -528,7 +528,7 @@ public void streamMapIsClearedOnClose() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); ReplaySubject stream = ReplaySubject.create(); hubConnection.send("UploadStream", stream, 12); @@ -542,7 +542,7 @@ public void streamMapIsClearedOnClose() { messages = mockTransport.getSentMessages(); assertEquals("{\"type\":3,\"invocationId\":\"1\"}\u001E", TestUtils.byteBufferToString(messages[3])); - hubConnection.stop().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.stop().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertTrue(hubConnection.getStreamMap().isEmpty()); } @@ -552,7 +552,7 @@ public void streamMapEntriesRemovedOnStreamClose() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); ReplaySubject stream = ReplaySubject.create(); hubConnection.send("UploadStream", stream, 12); @@ -587,7 +587,7 @@ public void streamMapEntriesRemovedOnStreamClose() { assertEquals("{\"type\":3,\"invocationId\":\"1\"}\u001E", TestUtils.byteBufferToString(messages[5])); assertEquals("{\"type\":3,\"invocationId\":\"2\",\"error\":\"java.lang.Exception: Exception\"}\u001E", TestUtils.byteBufferToString(messages[6])); - hubConnection.stop().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.stop().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertTrue(hubConnection.getStreamMap().isEmpty()); } @@ -596,7 +596,7 @@ public void useSameSubjectMultipleTimes() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); ReplaySubject stream = ReplaySubject.create(); hubConnection.send("UploadStream", stream, stream); @@ -620,7 +620,7 @@ public void checkStreamUploadSingleItemThroughInvoke() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); ReplaySubject stream = ReplaySubject.create(); hubConnection.invoke(String.class, "UploadStream", stream); @@ -631,7 +631,7 @@ public void checkStreamUploadSingleItemThroughInvoke() { System.out.println(TestUtils.byteBufferToString(bb)); } assertEquals(3, messages.length); - assertEquals("{\"type\":1,\"invocationId\":\"1\",\"target\":\"UploadStream\",\"arguments\":[],\"streamIds\":[\"2\"]}\u001E", + assertEquals("{\"type\":1,\"invocationId\":\"1\",\"target\":\"UploadStream\",\"arguments\":[],\"streamIds\":[\"2\"]}\u001E", TestUtils.byteBufferToString(messages[1])); assertEquals("{\"type\":2,\"invocationId\":\"2\",\"item\":\"FirstItem\"}\u001E", TestUtils.byteBufferToString(messages[2])); @@ -639,13 +639,13 @@ public void checkStreamUploadSingleItemThroughInvoke() { messages = mockTransport.getSentMessages(); assertEquals("{\"type\":3,\"invocationId\":\"2\"}\u001E", TestUtils.byteBufferToString(messages[3])); } - + @Test public void checkStreamUploadSingleItemThroughInvokeWithMessagePack() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport, true); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); ReplaySubject stream = ReplaySubject.create(); hubConnection.invoke(stringType, "UploadStream", stream); @@ -656,18 +656,18 @@ public void checkStreamUploadSingleItemThroughInvokeWithMessagePack() { System.out.println(TestUtils.byteBufferToString(bb)); } assertEquals(3, messages.length); - - byte[] firstMessageExpectedBytes = new byte[] { 0x16, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xAC, 0x55, 0x70, 0x6C, 0x6F, + + byte[] firstMessageExpectedBytes = new byte[] { 0x16, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xAC, 0x55, 0x70, 0x6C, 0x6F, 0x61, 0x64, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6D, (byte) 0x90, (byte) 0x91, (byte) 0xA1, 0x32 }; assertEquals(ByteString.of(firstMessageExpectedBytes), ByteString.of(messages[1])); - - byte[] secondMessageExpectedBytes = new byte[] { 0x0F, (byte) 0x94, 0x02, (byte) 0x80, (byte) 0xA1, 0x32, (byte) 0xA9, 0x46, 0x69, 0x72, 0x73, + + byte[] secondMessageExpectedBytes = new byte[] { 0x0F, (byte) 0x94, 0x02, (byte) 0x80, (byte) 0xA1, 0x32, (byte) 0xA9, 0x46, 0x69, 0x72, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6D }; assertEquals(ByteString.of(secondMessageExpectedBytes), ByteString.of(messages[2])); stream.onComplete(); messages = mockTransport.getSentMessages(); - + byte[] thirdMessageExpectedBytes = new byte[] { 0x06, (byte) 0x94, 0x03, (byte) 0x80, (byte) 0xA1, 0x32, 0x02 }; assertEquals(ByteString.of(thirdMessageExpectedBytes), ByteString.of(messages[3])); } @@ -677,7 +677,7 @@ public void checkStreamUploadSingleItemThroughStream() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); ReplaySubject stream = ReplaySubject.create(); hubConnection.stream(String.class, "UploadStream", stream); @@ -686,7 +686,7 @@ public void checkStreamUploadSingleItemThroughStream() { ByteBuffer[] messages = mockTransport.getSentMessages(); assertEquals(3, messages.length); - assertEquals("{\"type\":4,\"invocationId\":\"1\",\"target\":\"UploadStream\",\"arguments\":[],\"streamIds\":[\"2\"]}\u001E", + assertEquals("{\"type\":4,\"invocationId\":\"1\",\"target\":\"UploadStream\",\"arguments\":[],\"streamIds\":[\"2\"]}\u001E", TestUtils.byteBufferToString(messages[1])); assertEquals("{\"type\":2,\"invocationId\":\"2\",\"item\":\"FirstItem\"}\u001E", TestUtils.byteBufferToString(messages[2])); @@ -695,13 +695,13 @@ public void checkStreamUploadSingleItemThroughStream() { assertEquals(4, messages.length); assertEquals("{\"type\":3,\"invocationId\":\"2\"}\u001E", TestUtils.byteBufferToString(messages[3])); } - + @Test public void checkStreamUploadSingleItemThroughStreamWithMessagePack() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport, true); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); ReplaySubject stream = ReplaySubject.create(); hubConnection.stream(stringType, "UploadStream", stream); @@ -710,19 +710,19 @@ public void checkStreamUploadSingleItemThroughStreamWithMessagePack() { ByteBuffer[] messages = mockTransport.getSentMessages(); assertEquals(3, messages.length); - - byte[] firstMessageExpectedBytes = new byte[] { 0x16, (byte) 0x96, 0x04, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xAC, 0x55, 0x70, 0x6C, 0x6F, + + byte[] firstMessageExpectedBytes = new byte[] { 0x16, (byte) 0x96, 0x04, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xAC, 0x55, 0x70, 0x6C, 0x6F, 0x61, 0x64, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6D, (byte) 0x90, (byte) 0x91, (byte) 0xA1, 0x32 }; assertEquals(ByteString.of(firstMessageExpectedBytes), ByteString.of(messages[1])); - - byte[] secondMessageExpectedBytes = new byte[] { 0x0F, (byte) 0x94, 0x02, (byte) 0x80, (byte) 0xA1, 0x32, (byte) 0xA9, 0x46, 0x69, 0x72, 0x73, + + byte[] secondMessageExpectedBytes = new byte[] { 0x0F, (byte) 0x94, 0x02, (byte) 0x80, (byte) 0xA1, 0x32, (byte) 0xA9, 0x46, 0x69, 0x72, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6D }; assertEquals(ByteString.of(secondMessageExpectedBytes), ByteString.of(messages[2])); stream.onComplete(); messages = mockTransport.getSentMessages(); assertEquals(4, messages.length); - + byte[] thirdMessageExpectedBytes = new byte[] { 0x06, (byte) 0x94, 0x03, (byte) 0x80, (byte) 0xA1, 0x32, 0x02 }; assertEquals(ByteString.of(thirdMessageExpectedBytes), ByteString.of(messages[3])); } @@ -732,7 +732,7 @@ public void useSameSubjectInMutlipleStreamsFromDifferentMethods() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); ReplaySubject stream = ReplaySubject.create(); hubConnection.send("UploadStream", stream); @@ -742,9 +742,9 @@ public void useSameSubjectInMutlipleStreamsFromDifferentMethods() { ByteBuffer[] messages = mockTransport.getSentMessages(); assertEquals(4, messages.length); assertEquals("{\"type\":1,\"target\":\"UploadStream\",\"arguments\":[],\"streamIds\":[\"1\"]}\u001E", TestUtils.byteBufferToString(messages[1])); - assertEquals("{\"type\":1,\"invocationId\":\"2\",\"target\":\"UploadStream\",\"arguments\":[],\"streamIds\":[\"3\"]}\u001E", + assertEquals("{\"type\":1,\"invocationId\":\"2\",\"target\":\"UploadStream\",\"arguments\":[],\"streamIds\":[\"3\"]}\u001E", TestUtils.byteBufferToString(messages[2])); - assertEquals("{\"type\":4,\"invocationId\":\"4\",\"target\":\"UploadStream\",\"arguments\":[],\"streamIds\":[\"5\"]}\u001E", + assertEquals("{\"type\":4,\"invocationId\":\"4\",\"target\":\"UploadStream\",\"arguments\":[],\"streamIds\":[\"5\"]}\u001E", TestUtils.byteBufferToString(messages[3])); stream.onNext("FirstItem"); @@ -762,13 +762,13 @@ public void useSameSubjectInMutlipleStreamsFromDifferentMethods() { assertEquals("{\"type\":3,\"invocationId\":\"3\"}\u001E", TestUtils.byteBufferToString(messages[8])); assertEquals("{\"type\":3,\"invocationId\":\"5\"}\u001E", TestUtils.byteBufferToString(messages[9])); } - + @Test public void useSameSubjectInMutlipleStreamsFromDifferentMethodsWithMessagePack() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport, true); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); ReplaySubject stream = ReplaySubject.create(); hubConnection.send("UploadStream", stream); @@ -777,16 +777,16 @@ public void useSameSubjectInMutlipleStreamsFromDifferentMethodsWithMessagePack() ByteBuffer[] messages = mockTransport.getSentMessages(); assertEquals(4, messages.length); - - byte[] firstMessageExpectedBytes = new byte[] { 0x15, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xC0, (byte) 0xAC, 0x55, 0x70, 0x6C, 0x6F, 0x61, + + byte[] firstMessageExpectedBytes = new byte[] { 0x15, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xC0, (byte) 0xAC, 0x55, 0x70, 0x6C, 0x6F, 0x61, 0x64, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6D, (byte) 0x90, (byte) 0x91, (byte) 0xA1, 0x31 }; assertEquals(ByteString.of(firstMessageExpectedBytes), ByteString.of(messages[1])); - - byte[] secondMessageExpectedBytes = new byte[] { 0x16, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xA1, 0x32, (byte) 0xAC, 0x55, 0x70, 0x6C, 0x6F, + + byte[] secondMessageExpectedBytes = new byte[] { 0x16, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xA1, 0x32, (byte) 0xAC, 0x55, 0x70, 0x6C, 0x6F, 0x61, 0x64, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6D, (byte) 0x90, (byte) 0x91, (byte) 0xA1, 0x33 }; assertEquals(ByteString.of(secondMessageExpectedBytes), ByteString.of(messages[2])); - byte[] thirdMessageExpectedBytes = new byte[] { 0x16, (byte) 0x96, 0x04, (byte) 0x80, (byte) 0xA1, 0x34, (byte) 0xAC, 0x55, 0x70, 0x6C, 0x6F, + byte[] thirdMessageExpectedBytes = new byte[] { 0x16, (byte) 0x96, 0x04, (byte) 0x80, (byte) 0xA1, 0x34, (byte) 0xAC, 0x55, 0x70, 0x6C, 0x6F, 0x61, 0x64, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6D, (byte) 0x90, (byte) 0x91, (byte) 0xA1, 0x35 }; assertEquals(ByteString.of(thirdMessageExpectedBytes), ByteString.of(messages[3])); @@ -794,29 +794,29 @@ public void useSameSubjectInMutlipleStreamsFromDifferentMethodsWithMessagePack() messages = mockTransport.getSentMessages(); assertEquals(7, messages.length); - - byte[] fourthMessageExpectedBytes = new byte[] { 0x0F, (byte) 0x94, 0x02, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA9, 0x46, 0x69, 0x72, 0x73, 0x74, + + byte[] fourthMessageExpectedBytes = new byte[] { 0x0F, (byte) 0x94, 0x02, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA9, 0x46, 0x69, 0x72, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6D }; assertEquals(ByteString.of(fourthMessageExpectedBytes), ByteString.of(messages[4])); - - byte[] fifthMessageExpectedBytes = new byte[] { 0x0F, (byte) 0x94, 0x02, (byte) 0x80, (byte) 0xA1, 0x33, (byte) 0xA9, 0x46, 0x69, 0x72, 0x73, 0x74, + + byte[] fifthMessageExpectedBytes = new byte[] { 0x0F, (byte) 0x94, 0x02, (byte) 0x80, (byte) 0xA1, 0x33, (byte) 0xA9, 0x46, 0x69, 0x72, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6D }; assertEquals(ByteString.of(fifthMessageExpectedBytes), ByteString.of(messages[5])); - - byte[] sixthMessageExpectedBytes = new byte[] { 0x0F, (byte) 0x94, 0x02, (byte) 0x80, (byte) 0xA1, 0x35, (byte) 0xA9, 0x46, 0x69, 0x72, 0x73, 0x74, + + byte[] sixthMessageExpectedBytes = new byte[] { 0x0F, (byte) 0x94, 0x02, (byte) 0x80, (byte) 0xA1, 0x35, (byte) 0xA9, 0x46, 0x69, 0x72, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6D }; assertEquals(ByteString.of(sixthMessageExpectedBytes), ByteString.of(messages[6])); stream.onComplete(); messages = mockTransport.getSentMessages(); assertEquals(10, messages.length); - + byte[] seventhMessageExpectedBytes = new byte[] { 0x06, (byte) 0x94, 0x03, (byte) 0x80, (byte) 0xA1, 0x31, 0x02 }; assertEquals(ByteString.of(seventhMessageExpectedBytes), ByteString.of(messages[7])); - + byte[] eighthMessageExpectedBytes = new byte[] { 0x06, (byte) 0x94, 0x03, (byte) 0x80, (byte) 0xA1, 0x33, 0x02 }; assertEquals(ByteString.of(eighthMessageExpectedBytes), ByteString.of(messages[8])); - + byte[] ninthMessageExpectedBytes = new byte[] { 0x06, (byte) 0x94, 0x03, (byte) 0x80, (byte) 0xA1, 0x35, 0x02 }; assertEquals(ByteString.of(ninthMessageExpectedBytes), ByteString.of(messages[9])); } @@ -826,7 +826,7 @@ public void streamUploadCallOnError() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); ReplaySubject stream = ReplaySubject.create(); hubConnection.send("UploadStream", stream); @@ -836,7 +836,7 @@ public void streamUploadCallOnError() { ByteBuffer[] messages = mockTransport.getSentMessages(); assertEquals(4, messages.length); assertEquals("{\"type\":2,\"invocationId\":\"1\",\"item\":\"FirstItem\"}\u001E", TestUtils.byteBufferToString(messages[2])); - assertEquals("{\"type\":3,\"invocationId\":\"1\",\"error\":\"java.lang.RuntimeException: onError called\"}\u001E", + assertEquals("{\"type\":3,\"invocationId\":\"1\",\"error\":\"java.lang.RuntimeException: onError called\"}\u001E", TestUtils.byteBufferToString(messages[3])); // onComplete doesn't send a completion message after onError. @@ -850,7 +850,7 @@ public void checkStreamUploadMultipleItemsThroughSend() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); ReplaySubject stream = ReplaySubject.create(); hubConnection.send("UploadStream", stream); @@ -876,7 +876,7 @@ public void checkStreamUploadMultipleItemsThroughInvoke() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); ReplaySubject stream = ReplaySubject.create(); hubConnection.invoke(String.class, "UploadStream", stream); @@ -894,13 +894,13 @@ public void checkStreamUploadMultipleItemsThroughInvoke() { assertEquals(5, messages.length); assertEquals("{\"type\":3,\"invocationId\":\"2\"}\u001E", TestUtils.byteBufferToString(messages[4])); } - + @Test public void checkStreamUploadMultipleItemsThroughInvokeWithMessagePack() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport, true); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); ReplaySubject stream = ReplaySubject.create(); hubConnection.invoke(stringType, "UploadStream", stream); @@ -910,19 +910,19 @@ public void checkStreamUploadMultipleItemsThroughInvokeWithMessagePack() { ByteBuffer[] messages = mockTransport.getSentMessages(); assertEquals(4, messages.length); - - byte[] firstMessageExpectedBytes = new byte[] { 0x0F, (byte) 0x94, 0x02, (byte) 0x80, (byte) 0xA1, 0x32, (byte) 0xA9, 0x46, 0x69, 0x72, 0x73, 0x74, + + byte[] firstMessageExpectedBytes = new byte[] { 0x0F, (byte) 0x94, 0x02, (byte) 0x80, (byte) 0xA1, 0x32, (byte) 0xA9, 0x46, 0x69, 0x72, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6D }; assertEquals(ByteString.of(firstMessageExpectedBytes), ByteString.of(messages[2])); - - byte[] secondMessageExpectedBytes = new byte[] { 0x10, (byte) 0x94, 0x02, (byte) 0x80, (byte) 0xA1, 0x32, (byte) 0xAA, 0x53, 0x65, 0x63, 0x6F, 0x6E, + + byte[] secondMessageExpectedBytes = new byte[] { 0x10, (byte) 0x94, 0x02, (byte) 0x80, (byte) 0xA1, 0x32, (byte) 0xAA, 0x53, 0x65, 0x63, 0x6F, 0x6E, 0x64, 0x49, 0x74, 0x65, 0x6D }; assertEquals(ByteString.of(secondMessageExpectedBytes), ByteString.of(messages[3])); stream.onComplete(); messages = mockTransport.getSentMessages(); assertEquals(5, messages.length); - + byte[] thirdMessageExpectedBytes = new byte[] { 0x06, (byte) 0x94, 0x03, (byte) 0x80, (byte) 0xA1, 0x32, 0x02 }; assertEquals(ByteString.of(thirdMessageExpectedBytes), ByteString.of(messages[4])); } @@ -932,7 +932,7 @@ public void canStartAndStopMultipleStreams() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); PublishSubject streamOne = PublishSubject.create(); PublishSubject streamTwo = PublishSubject.create(); @@ -964,7 +964,7 @@ public void checkStreamSingleItem() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean completed = new AtomicBoolean(); AtomicBoolean onNextCalled = new AtomicBoolean(); @@ -973,7 +973,7 @@ public void checkStreamSingleItem() { (error) -> {}, () -> completed.set(true)); - assertEquals("{\"type\":4,\"invocationId\":\"1\",\"target\":\"echo\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, + assertEquals("{\"type\":4,\"invocationId\":\"1\",\"target\":\"echo\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, TestUtils.byteBufferToString(mockTransport.getSentMessages()[1])); assertFalse(completed.get()); assertFalse(onNextCalled.get()); @@ -985,15 +985,15 @@ public void checkStreamSingleItem() { mockTransport.receiveMessage("{\"type\":3,\"invocationId\":\"1\",\"result\":\"hello\"}" + RECORD_SEPARATOR); assertTrue(completed.get()); - assertEquals("First", result.timeout(1000, TimeUnit.MILLISECONDS).blockingFirst()); + assertEquals("First", result.timeout(30, TimeUnit.SECONDS).blockingFirst()); } - + @Test public void checkStreamSingleItemWithMessagePack() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport, true); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean completed = new AtomicBoolean(); AtomicBoolean onNextCalled = new AtomicBoolean(); @@ -1002,7 +1002,7 @@ public void checkStreamSingleItemWithMessagePack() { (error) -> {}, () -> completed.set(true)); - byte[] firstMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x04, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA4, 0x65, 0x63, 0x68, 0x6F, + byte[] firstMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x04, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA4, 0x65, 0x63, 0x68, 0x6F, (byte) 0x91, (byte) 0xA7, 0x6D, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, (byte) 0x90 }; assertEquals(ByteString.of(firstMessageExpectedBytes), ByteString.of(mockTransport.getSentMessages()[1])); assertFalse(completed.get()); @@ -1017,15 +1017,15 @@ public void checkStreamSingleItemWithMessagePack() { mockTransport.receiveMessage(ByteBuffer.wrap(thirdMessageExpectedBytes)); assertTrue(completed.get()); - assertEquals("First", result.timeout(1000, TimeUnit.MILLISECONDS).blockingFirst()); + assertEquals("First", result.timeout(30, TimeUnit.SECONDS).blockingFirst()); } - + @Test public void checkStreamCompletionResult() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean completed = new AtomicBoolean(); AtomicBoolean onNextCalled = new AtomicBoolean(); @@ -1034,7 +1034,7 @@ public void checkStreamCompletionResult() { (error) -> {}, () -> completed.set(true)); - assertEquals("{\"type\":4,\"invocationId\":\"1\",\"target\":\"echo\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, + assertEquals("{\"type\":4,\"invocationId\":\"1\",\"target\":\"echo\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, TestUtils.byteBufferToString(mockTransport.getSentMessages()[1])); assertFalse(completed.get()); assertFalse(onNextCalled.get()); @@ -1046,16 +1046,16 @@ public void checkStreamCompletionResult() { mockTransport.receiveMessage("{\"type\":3,\"invocationId\":\"1\",\"result\":\"COMPLETED\"}" + RECORD_SEPARATOR); assertTrue(completed.get()); - assertEquals("First", result.timeout(1000, TimeUnit.MILLISECONDS).blockingFirst()); - assertEquals("COMPLETED", result.timeout(1000, TimeUnit.MILLISECONDS).blockingLast()); + assertEquals("First", result.timeout(30, TimeUnit.SECONDS).blockingFirst()); + assertEquals("COMPLETED", result.timeout(30, TimeUnit.SECONDS).blockingLast()); } - + @Test public void checkStreamCompletionResultWithMessagePack() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport, true); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean completed = new AtomicBoolean(); AtomicBoolean onNextCalled = new AtomicBoolean(); @@ -1064,7 +1064,7 @@ public void checkStreamCompletionResultWithMessagePack() { (error) -> {}, () -> completed.set(true)); - byte[] firstMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x04, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA4, 0x65, 0x63, 0x68, 0x6F, + byte[] firstMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x04, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA4, 0x65, 0x63, 0x68, 0x6F, (byte) 0x91, (byte) 0xA7, 0x6D, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, (byte) 0x90 }; assertEquals(ByteString.of(firstMessageExpectedBytes), ByteString.of(mockTransport.getSentMessages()[1])); assertFalse(completed.get()); @@ -1075,13 +1075,13 @@ public void checkStreamCompletionResultWithMessagePack() { assertTrue(onNextCalled.get()); - byte[] thirdMessageExpectedBytes = new byte[] { 0x10, (byte) 0x95, 0x03, (byte) 0x80, (byte) 0xA1, 0x31, 0x03, (byte) 0xA9, 0x43, 0x4F, 0x4D, 0x50, + byte[] thirdMessageExpectedBytes = new byte[] { 0x10, (byte) 0x95, 0x03, (byte) 0x80, (byte) 0xA1, 0x31, 0x03, (byte) 0xA9, 0x43, 0x4F, 0x4D, 0x50, 0x4C, 0x45, 0x54, 0x45, 0x44 }; mockTransport.receiveMessage(ByteBuffer.wrap(thirdMessageExpectedBytes)); assertTrue(completed.get()); - assertEquals("First", result.timeout(1000, TimeUnit.MILLISECONDS).blockingFirst()); - assertEquals("COMPLETED", result.timeout(1000, TimeUnit.MILLISECONDS).blockingLast()); + assertEquals("First", result.timeout(30, TimeUnit.SECONDS).blockingFirst()); + assertEquals("COMPLETED", result.timeout(30, TimeUnit.SECONDS).blockingLast()); } @Test @@ -1089,7 +1089,7 @@ public void checkStreamCompletionError() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean onErrorCalled = new AtomicBoolean(); AtomicBoolean onNextCalled = new AtomicBoolean(); @@ -1098,7 +1098,7 @@ public void checkStreamCompletionError() { (error) -> onErrorCalled.set(true), () -> {}); - assertEquals("{\"type\":4,\"invocationId\":\"1\",\"target\":\"echo\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, + assertEquals("{\"type\":4,\"invocationId\":\"1\",\"target\":\"echo\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, TestUtils.byteBufferToString(mockTransport.getSentMessages()[1])); assertFalse(onErrorCalled.get()); assertFalse(onNextCalled.get()); @@ -1110,17 +1110,17 @@ public void checkStreamCompletionError() { mockTransport.receiveMessage("{\"type\":3,\"invocationId\":\"1\",\"error\":\"There was an error\"}" + RECORD_SEPARATOR); assertTrue(onErrorCalled.get()); - assertEquals("First", result.timeout(1000, TimeUnit.MILLISECONDS).blockingFirst()); - Throwable exception = assertThrows(HubException.class, () -> result.timeout(1000, TimeUnit.MILLISECONDS).blockingLast()); + assertEquals("First", result.timeout(30, TimeUnit.SECONDS).blockingFirst()); + Throwable exception = assertThrows(HubException.class, () -> result.timeout(30, TimeUnit.SECONDS).blockingLast()); assertEquals("There was an error", exception.getMessage()); } - + @Test public void checkStreamCompletionErrorWithMessagePack() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport, true); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean onErrorCalled = new AtomicBoolean(); AtomicBoolean onNextCalled = new AtomicBoolean(); @@ -1129,7 +1129,7 @@ public void checkStreamCompletionErrorWithMessagePack() { (error) -> onErrorCalled.set(true), () -> {}); - byte[] firstMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x04, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA4, 0x65, 0x63, 0x68, 0x6F, + byte[] firstMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x04, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA4, 0x65, 0x63, 0x68, 0x6F, (byte) 0x91, (byte) 0xA7, 0x6D, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, (byte) 0x90 }; assertEquals(ByteString.of(firstMessageExpectedBytes), ByteString.of(mockTransport.getSentMessages()[1])); assertFalse(onErrorCalled.get()); @@ -1144,8 +1144,8 @@ public void checkStreamCompletionErrorWithMessagePack() { mockTransport.receiveMessage(ByteBuffer.wrap(thirdMessageExpectedBytes)); assertTrue(onErrorCalled.get()); - assertEquals("First", result.timeout(1000, TimeUnit.MILLISECONDS).blockingFirst()); - Throwable exception = assertThrows(HubException.class, () -> result.timeout(1000, TimeUnit.MILLISECONDS).blockingLast()); + assertEquals("First", result.timeout(30, TimeUnit.SECONDS).blockingFirst()); + Throwable exception = assertThrows(HubException.class, () -> result.timeout(30, TimeUnit.SECONDS).blockingLast()); assertEquals("Error", exception.getMessage()); } @@ -1154,7 +1154,7 @@ public void checkStreamMultipleItems() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean completed = new AtomicBoolean(); Observable result = hubConnection.stream(String.class, "echo", "message"); @@ -1162,7 +1162,7 @@ public void checkStreamMultipleItems() { (error) -> {/*OnError*/}, () -> {/*OnCompleted*/completed.set(true);}); - assertEquals("{\"type\":4,\"invocationId\":\"1\",\"target\":\"echo\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, + assertEquals("{\"type\":4,\"invocationId\":\"1\",\"target\":\"echo\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, TestUtils.byteBufferToString(mockTransport.getSentMessages()[1])); assertFalse(completed.get()); @@ -1170,18 +1170,18 @@ public void checkStreamMultipleItems() { mockTransport.receiveMessage("{\"type\":2,\"invocationId\":\"1\",\"item\":\"Second\"}" + RECORD_SEPARATOR); mockTransport.receiveMessage("{\"type\":3,\"invocationId\":\"1\",\"result\":\"null\"}" + RECORD_SEPARATOR); - Iterator resultIterator = result.timeout(1000, TimeUnit.MILLISECONDS).blockingIterable().iterator(); + Iterator resultIterator = result.timeout(30, TimeUnit.SECONDS).blockingIterable().iterator(); assertEquals("First", resultIterator.next()); assertEquals("Second", resultIterator.next()); assertTrue(completed.get()); } - + @Test public void checkStreamMultipleItemsWithMessagePack() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport, true); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean completed = new AtomicBoolean(); Observable result = hubConnection.stream(stringType, "echo", "message"); @@ -1189,21 +1189,21 @@ public void checkStreamMultipleItemsWithMessagePack() { (error) -> {/*OnError*/}, () -> {/*OnCompleted*/completed.set(true);}); - byte[] firstMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x04, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA4, 0x65, 0x63, 0x68, 0x6F, + byte[] firstMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x04, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA4, 0x65, 0x63, 0x68, 0x6F, (byte) 0x91, (byte) 0xA7, 0x6D, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, (byte) 0x90 }; assertEquals(ByteString.of(firstMessageExpectedBytes), ByteString.of(mockTransport.getSentMessages()[1])); assertFalse(completed.get()); byte[] secondMessageExpectedBytes = new byte[] { 0x0B, (byte) 0x94, 0x02, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA5, 0x46, 0x69, 0x72, 0x73, 0x74 }; mockTransport.receiveMessage(ByteBuffer.wrap(secondMessageExpectedBytes)); - + byte[] thirdMessageExpectedBytes = new byte[] { 0x0C, (byte) 0x94, 0x02, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA6, 0x53, 0x65, 0x63, 0x6F, 0x6E, 0x64 }; mockTransport.receiveMessage(ByteBuffer.wrap(thirdMessageExpectedBytes)); - + byte[] fourthMessageExpectedBytes = new byte[] { 0x06, (byte) 0x94, 0x03, (byte) 0x80, (byte) 0xA1, 0x31, 0x02 }; mockTransport.receiveMessage(ByteBuffer.wrap(fourthMessageExpectedBytes)); - Iterator resultIterator = result.timeout(1000, TimeUnit.MILLISECONDS).blockingIterable().iterator(); + Iterator resultIterator = result.timeout(30, TimeUnit.SECONDS).blockingIterable().iterator(); assertEquals("First", resultIterator.next()); assertEquals("Second", resultIterator.next()); assertTrue(completed.get()); @@ -1214,7 +1214,7 @@ public void checkCancelIsSentAfterDispose() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean completed = new AtomicBoolean(); Observable result = hubConnection.stream(String.class, "echo", "message"); @@ -1222,20 +1222,20 @@ public void checkCancelIsSentAfterDispose() { (error) -> {/*OnError*/}, () -> {/*OnCompleted*/completed.set(true);}); - assertEquals("{\"type\":4,\"invocationId\":\"1\",\"target\":\"echo\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, + assertEquals("{\"type\":4,\"invocationId\":\"1\",\"target\":\"echo\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, TestUtils.byteBufferToString(mockTransport.getSentMessages()[1])); assertFalse(completed.get()); subscription.dispose(); assertEquals("{\"type\":5,\"invocationId\":\"1\"}" + RECORD_SEPARATOR, TestUtils.byteBufferToString(mockTransport.getSentMessages()[2])); } - + @Test public void checkCancelIsSentAfterDisposeWithMessagePack() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport, true); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean completed = new AtomicBoolean(); Observable result = hubConnection.stream(stringType, "echo", "message"); @@ -1243,7 +1243,7 @@ public void checkCancelIsSentAfterDisposeWithMessagePack() { (error) -> {/*OnError*/}, () -> {/*OnCompleted*/completed.set(true);}); - byte[] firstMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x04, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA4, 0x65, 0x63, 0x68, 0x6F, + byte[] firstMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x04, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA4, 0x65, 0x63, 0x68, 0x6F, (byte) 0x91, (byte) 0xA7, 0x6D, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, (byte) 0x90 }; assertEquals(ByteString.of(firstMessageExpectedBytes), ByteString.of(mockTransport.getSentMessages()[1])); assertFalse(completed.get()); @@ -1258,7 +1258,7 @@ public void checkCancelIsSentAfterAllSubscriptionsAreDisposed() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); Observable result = hubConnection.stream(String.class, "echo", "message"); Disposable subscription = result.subscribe((item) -> {/*OnNext*/ }, @@ -1279,13 +1279,13 @@ public void checkCancelIsSentAfterAllSubscriptionsAreDisposed() { assertEquals("{\"type\":5,\"invocationId\":\"1\"}" + RECORD_SEPARATOR, TestUtils.byteBufferToString(mockTransport.getSentMessages()[mockTransport.getSentMessages().length - 1])); } - + @Test public void checkCancelIsSentAfterAllSubscriptionsAreDisposedWithMessagePack() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport, true); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); Observable result = hubConnection.stream(stringType, "echo", "message"); Disposable subscription = result.subscribe((item) -> {/*OnNext*/ }, @@ -1298,8 +1298,8 @@ public void checkCancelIsSentAfterAllSubscriptionsAreDisposedWithMessagePack() { subscription.dispose(); assertEquals(2, mockTransport.getSentMessages().length); - - byte[] firstMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x04, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA4, 0x65, 0x63, 0x68, 0x6F, + + byte[] firstMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x04, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA4, 0x65, 0x63, 0x68, 0x6F, (byte) 0x91, (byte) 0xA7, 0x6D, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, (byte) 0x90 }; assertEquals(ByteString.of(firstMessageExpectedBytes), ByteString.of(mockTransport.getSentMessages()[mockTransport.getSentMessages().length - 1])); @@ -1314,14 +1314,14 @@ public void checkStreamWithDispose() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); Observable result = hubConnection.stream(String.class, "echo", "message"); Disposable subscription = result.subscribe((item) -> {/*OnNext*/}, (error) -> {/*OnError*/}, () -> {/*OnCompleted*/}); - assertEquals("{\"type\":4,\"invocationId\":\"1\",\"target\":\"echo\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, + assertEquals("{\"type\":4,\"invocationId\":\"1\",\"target\":\"echo\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, TestUtils.byteBufferToString(mockTransport.getSentMessages()[1])); mockTransport.receiveMessage("{\"type\":2,\"invocationId\":\"1\",\"item\":\"First\"}" + RECORD_SEPARATOR); @@ -1329,33 +1329,33 @@ public void checkStreamWithDispose() { subscription.dispose(); mockTransport.receiveMessage("{\"type\":2,\"invocationId\":\"1\",\"item\":\"Second\"}" + RECORD_SEPARATOR); - assertEquals("First", result.timeout(1000, TimeUnit.MILLISECONDS).blockingLast()); + assertEquals("First", result.timeout(30, TimeUnit.SECONDS).blockingLast()); } - + @Test public void checkStreamWithDisposeWithMessagePack() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport, true); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); Observable result = hubConnection.stream(stringType, "echo", "message"); Disposable subscription = result.subscribe((item) -> {/*OnNext*/}, (error) -> {/*OnError*/}, () -> {/*OnCompleted*/}); - byte[] firstMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x04, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA4, 0x65, 0x63, 0x68, 0x6F, + byte[] firstMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x04, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA4, 0x65, 0x63, 0x68, 0x6F, (byte) 0x91, (byte) 0xA7, 0x6D, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, (byte) 0x90 }; assertEquals(ByteString.of(firstMessageExpectedBytes), ByteString.of(mockTransport.getSentMessages()[1])); - + byte[] secondMessageExpectedBytes = new byte[] { 0x0B, (byte) 0x94, 0x02, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA5, 0x46, 0x69, 0x72, 0x73, 0x74 }; mockTransport.receiveMessage(ByteBuffer.wrap(secondMessageExpectedBytes)); - + subscription.dispose(); byte[] thirdMessageExpectedBytes = new byte[] { 0x0C, (byte) 0x94, 0x02, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA6, 0x53, 0x65, 0x63, 0x6F, 0x6E, 0x64 }; mockTransport.receiveMessage(ByteBuffer.wrap(thirdMessageExpectedBytes)); - assertEquals("First", result.timeout(1000, TimeUnit.MILLISECONDS).blockingLast()); + assertEquals("First", result.timeout(30, TimeUnit.SECONDS).blockingLast()); } @Test @@ -1363,7 +1363,7 @@ public void checkStreamWithDisposeWithMultipleSubscriptions() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean completed = new AtomicBoolean(); Observable result = hubConnection.stream(String.class, "echo", "message"); @@ -1375,7 +1375,7 @@ public void checkStreamWithDisposeWithMultipleSubscriptions() { (error) -> {/*OnError*/}, () -> {/*OnCompleted*/completed.set(true);}); - assertEquals("{\"type\":4,\"invocationId\":\"1\",\"target\":\"echo\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, + assertEquals("{\"type\":4,\"invocationId\":\"1\",\"target\":\"echo\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, TestUtils.byteBufferToString(mockTransport.getSentMessages()[1])); assertFalse(completed.get()); @@ -1386,18 +1386,18 @@ public void checkStreamWithDisposeWithMultipleSubscriptions() { mockTransport.receiveMessage("{\"type\":3,\"invocationId\":\"1\"}" + RECORD_SEPARATOR); assertTrue(completed.get()); - assertEquals("First", result.timeout(1000, TimeUnit.MILLISECONDS).blockingFirst()); + assertEquals("First", result.timeout(30, TimeUnit.SECONDS).blockingFirst()); subscription2.dispose(); - assertEquals("Second", result.timeout(1000, TimeUnit.MILLISECONDS).blockingLast()); + assertEquals("Second", result.timeout(30, TimeUnit.SECONDS).blockingLast()); } - + @Test public void checkStreamWithDisposeWithMultipleSubscriptionsWithMessagePack() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport, true); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean completed = new AtomicBoolean(); Observable result = hubConnection.stream(stringType, "echo", "message"); @@ -1409,26 +1409,26 @@ public void checkStreamWithDisposeWithMultipleSubscriptionsWithMessagePack() { (error) -> {/*OnError*/}, () -> {/*OnCompleted*/completed.set(true);}); - byte[] firstMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x04, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA4, 0x65, 0x63, 0x68, 0x6F, + byte[] firstMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x04, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA4, 0x65, 0x63, 0x68, 0x6F, (byte) 0x91, (byte) 0xA7, 0x6D, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, (byte) 0x90 }; assertEquals(ByteString.of(firstMessageExpectedBytes), ByteString.of(mockTransport.getSentMessages()[1])); assertFalse(completed.get()); - + byte[] secondMessageExpectedBytes = new byte[] { 0x0B, (byte) 0x94, 0x02, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA5, 0x46, 0x69, 0x72, 0x73, 0x74 }; mockTransport.receiveMessage(ByteBuffer.wrap(secondMessageExpectedBytes)); - + subscription.dispose(); byte[] thirdMessageExpectedBytes = new byte[] { 0x0C, (byte) 0x94, 0x02, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA6, 0x53, 0x65, 0x63, 0x6F, 0x6E, 0x64 }; mockTransport.receiveMessage(ByteBuffer.wrap(thirdMessageExpectedBytes)); - + byte[] fourthMessageExpectedBytes = new byte[] { 0x06, (byte) 0x94, 0x03, (byte) 0x80, (byte) 0xA1, 0x31, 0x02 }; mockTransport.receiveMessage(ByteBuffer.wrap(fourthMessageExpectedBytes)); assertTrue(completed.get()); - assertEquals("First", result.timeout(1000, TimeUnit.MILLISECONDS).blockingFirst()); + assertEquals("First", result.timeout(30, TimeUnit.SECONDS).blockingFirst()); subscription2.dispose(); - assertEquals("Second", result.timeout(1000, TimeUnit.MILLISECONDS).blockingLast()); + assertEquals("Second", result.timeout(30, TimeUnit.SECONDS).blockingLast()); } @Test @@ -1436,40 +1436,40 @@ public void invokeWaitsForCompletionMessage() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean done = new AtomicBoolean(); Single result = hubConnection.invoke(Integer.class, "echo", "message"); result.doOnSuccess(value -> done.set(true)).subscribe(); - assertEquals("{\"type\":1,\"invocationId\":\"1\",\"target\":\"echo\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, + assertEquals("{\"type\":1,\"invocationId\":\"1\",\"target\":\"echo\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, TestUtils.byteBufferToString(mockTransport.getSentMessages()[1])); assertFalse(done.get()); mockTransport.receiveMessage("{\"type\":3,\"invocationId\":\"1\",\"result\":42}" + RECORD_SEPARATOR); - assertEquals(Integer.valueOf(42), result.timeout(1000, TimeUnit.MILLISECONDS).blockingGet()); + assertEquals(Integer.valueOf(42), result.timeout(30, TimeUnit.SECONDS).blockingGet()); assertTrue(done.get()); } - + @Test public void invokeWaitsForCompletionMessageWithMessagePack() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport, true); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean done = new AtomicBoolean(); Single result = hubConnection.invoke(integerType, "echo", "message"); result.doOnSuccess(value -> done.set(true)).subscribe(); - - byte[] firstMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA4, 0x65, 0x63, 0x68, 0x6F, + + byte[] firstMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA4, 0x65, 0x63, 0x68, 0x6F, (byte) 0x91, (byte) 0xA7, 0x6D, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, (byte) 0x90 }; assertEquals(ByteString.of(firstMessageExpectedBytes), ByteString.of(mockTransport.getSentMessages()[1])); assertFalse(done.get()); mockTransport.receiveMessage(ByteBuffer.wrap(new byte[] { 0x07, (byte) 0x95, 0x03, (byte) 0x80, (byte) 0xA1, 0x31, 0x03, 0x2A })); - assertEquals(Integer.valueOf(42), result.timeout(1000, TimeUnit.MILLISECONDS).blockingGet()); + assertEquals(Integer.valueOf(42), result.timeout(30, TimeUnit.SECONDS).blockingGet()); assertTrue(done.get()); } @@ -1478,41 +1478,41 @@ public void invokeNoReturnValueWaitsForCompletion() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean done = new AtomicBoolean(); Completable result = hubConnection.invoke("test", "message"); result.doOnComplete(() -> done.set(true)).subscribe(); - assertEquals("{\"type\":1,\"invocationId\":\"1\",\"target\":\"test\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, + assertEquals("{\"type\":1,\"invocationId\":\"1\",\"target\":\"test\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, TestUtils.byteBufferToString(mockTransport.getSentMessages()[1])); assertFalse(done.get()); mockTransport.receiveMessage("{\"type\":3,\"invocationId\":\"1\"}" + RECORD_SEPARATOR); - assertNull(result.timeout(1000, TimeUnit.MILLISECONDS).blockingGet()); + assertNull(result.timeout(30, TimeUnit.SECONDS).blockingGet()); assertTrue(done.get()); } - + @Test public void invokeNoReturnValueWaitsForCompletionWithMessagePack() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport, true); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean done = new AtomicBoolean(); Completable result = hubConnection.invoke("test", "message"); result.doOnComplete(() -> done.set(true)).subscribe(); - byte[] firstMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA4, 0x74, 0x65, 0x73, 0x74, + byte[] firstMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA4, 0x74, 0x65, 0x73, 0x74, (byte) 0x91, (byte) 0xA7, 0x6D, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, (byte) 0x90 }; assertEquals(ByteString.of(firstMessageExpectedBytes), ByteString.of(mockTransport.getSentMessages()[1])); assertFalse(done.get()); mockTransport.receiveMessage(ByteBuffer.wrap(new byte[] { 0x06, (byte) 0x94, 0x03, (byte) 0x80, (byte) 0xA1, 0x31, 0x02 })); - assertNull(result.timeout(1000, TimeUnit.MILLISECONDS).blockingGet()); + assertNull(result.timeout(30, TimeUnit.SECONDS).blockingGet()); assertTrue(done.get()); } @@ -1521,19 +1521,19 @@ public void invokeCompletedByCompletionMessageWithResult() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean done = new AtomicBoolean(); Completable result = hubConnection.invoke("test", "message"); result.doOnComplete(() -> done.set(true)).subscribe(); - assertEquals("{\"type\":1,\"invocationId\":\"1\",\"target\":\"test\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, + assertEquals("{\"type\":1,\"invocationId\":\"1\",\"target\":\"test\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, TestUtils.byteBufferToString(mockTransport.getSentMessages()[1])); assertFalse(done.get()); mockTransport.receiveMessage("{\"type\":3,\"invocationId\":\"1\",\"result\":42}" + RECORD_SEPARATOR); - assertNull(result.timeout(1000, TimeUnit.MILLISECONDS).blockingGet()); + assertNull(result.timeout(30, TimeUnit.SECONDS).blockingGet()); assertTrue(done.get()); } @@ -1542,20 +1542,20 @@ public void invokeCompletedByCompletionMessageWithResultWithMessagePack() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport, true); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean done = new AtomicBoolean(); Completable result = hubConnection.invoke("test", "message"); result.doOnComplete(() -> done.set(true)).subscribe(); - byte[] firstMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA4, 0x74, 0x65, 0x73, 0x74, + byte[] firstMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA4, 0x74, 0x65, 0x73, 0x74, (byte) 0x91, (byte) 0xA7, 0x6D, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, (byte) 0x90 }; assertEquals(ByteString.of(firstMessageExpectedBytes), ByteString.of(mockTransport.getSentMessages()[1])); assertFalse(done.get()); mockTransport.receiveMessage(ByteBuffer.wrap(new byte[] { 0x07, (byte) 0x95, 0x03, (byte) 0x80, (byte) 0xA1, 0x31, 0x03, 0x2A })); - assertNull(result.timeout(1000, TimeUnit.MILLISECONDS).blockingGet()); + assertNull(result.timeout(30, TimeUnit.SECONDS).blockingGet()); assertTrue(done.get()); } @@ -1564,17 +1564,17 @@ public void completionWithResultAndErrorHandlesError() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean done = new AtomicBoolean(); Completable result = hubConnection.invoke("test", "message"); result.doOnComplete(() -> done.set(true)).subscribe(() -> {}, (error) -> {}); - assertEquals("{\"type\":1,\"invocationId\":\"1\",\"target\":\"test\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, + assertEquals("{\"type\":1,\"invocationId\":\"1\",\"target\":\"test\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, TestUtils.byteBufferToString(mockTransport.getSentMessages()[1])); assertFalse(done.get()); - Throwable exception = assertThrows(IllegalArgumentException.class, () -> + Throwable exception = assertThrows(IllegalArgumentException.class, () -> mockTransport.receiveMessage("{\"type\":3,\"invocationId\":\"1\",\"result\":42,\"error\":\"There was an error\"}" + RECORD_SEPARATOR)); assertEquals("Expected either 'error' or 'result' to be provided, but not both.", exception.getMessage()); } @@ -1584,19 +1584,19 @@ public void invokeNoReturnValueHandlesError() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean done = new AtomicBoolean(); Completable result = hubConnection.invoke("test", "message"); result.doOnComplete(() -> done.set(true)).subscribe(() -> {}, (error) -> {}); - assertEquals("{\"type\":1,\"invocationId\":\"1\",\"target\":\"test\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, + assertEquals("{\"type\":1,\"invocationId\":\"1\",\"target\":\"test\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, TestUtils.byteBufferToString(mockTransport.getSentMessages()[1])); assertFalse(done.get()); mockTransport.receiveMessage("{\"type\":3,\"invocationId\":\"1\",\"error\":\"There was an error\"}" + RECORD_SEPARATOR); - result.timeout(1000, TimeUnit.MILLISECONDS).blockingGet(); + result.timeout(30, TimeUnit.SECONDS).blockingGet(); AtomicReference errorMessage = new AtomicReference<>(); result.doOnError(error -> { @@ -1605,28 +1605,28 @@ public void invokeNoReturnValueHandlesError() { assertEquals("There was an error", errorMessage.get()); } - + @Test public void invokeNoReturnValueHandlesErrorWithMessagePack() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport, true); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean done = new AtomicBoolean(); Completable result = hubConnection.invoke("test", "message"); result.doOnComplete(() -> done.set(true)).subscribe(() -> {}, (error) -> {}); - byte[] firstMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA4, 0x74, 0x65, 0x73, 0x74, + byte[] firstMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA4, 0x74, 0x65, 0x73, 0x74, (byte) 0x91, (byte) 0xA7, 0x6D, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, (byte) 0x90 }; assertEquals(ByteString.of(firstMessageExpectedBytes), ByteString.of(mockTransport.getSentMessages()[1])); assertFalse(done.get()); - byte[] completionMessageErrorBytes = new byte[] { 0x19, (byte) 0x95, 0x03, (byte) 0x80, (byte) 0xA1, 0x31, 0x01, (byte) 0xB2, 0x54, 0x68, 0x65, + byte[] completionMessageErrorBytes = new byte[] { 0x19, (byte) 0x95, 0x03, (byte) 0x80, (byte) 0xA1, 0x31, 0x01, (byte) 0xB2, 0x54, 0x68, 0x65, 0x72, 0x65, 0x20, 0x77, 0x61, 0x73, 0x20, 0x61, 0x6E, 0x20, 0x65, 0x72, 0x72, 0x6F, 0x72 }; mockTransport.receiveMessage(ByteBuffer.wrap(completionMessageErrorBytes)); - result.timeout(1000, TimeUnit.MILLISECONDS).blockingGet(); + result.timeout(30, TimeUnit.SECONDS).blockingGet(); AtomicReference errorMessage = new AtomicReference<>(); result.doOnError(error -> { @@ -1641,42 +1641,42 @@ public void canSendNullArgInInvocation() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean done = new AtomicBoolean(); Single result = hubConnection.invoke(String.class, "fixedMessage", (Object)null); result.doOnSuccess(value -> done.set(true)).subscribe(); - assertEquals("{\"type\":1,\"invocationId\":\"1\",\"target\":\"fixedMessage\",\"arguments\":[null]}" + RECORD_SEPARATOR, + assertEquals("{\"type\":1,\"invocationId\":\"1\",\"target\":\"fixedMessage\",\"arguments\":[null]}" + RECORD_SEPARATOR, TestUtils.byteBufferToString(mockTransport.getSentMessages()[1])); assertFalse(done.get()); mockTransport.receiveMessage("{\"type\":3,\"invocationId\":\"1\",\"result\":\"Hello World\"}" + RECORD_SEPARATOR); - assertEquals("Hello World", result.timeout(1000, TimeUnit.MILLISECONDS).blockingGet()); + assertEquals("Hello World", result.timeout(30, TimeUnit.SECONDS).blockingGet()); assertTrue(done.get()); } - + @Test public void canSendNullArgInInvocationWithMessagePack() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport, true); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean done = new AtomicBoolean(); Single result = hubConnection.invoke(stringType, "fixedMessage", (Object)null); result.doOnSuccess(value -> done.set(true)).subscribe(); - - byte[] firstMessageExpectedBytes = new byte[] { 0x15, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xAC, 0x66, 0x69, 0x78, 0x65, 0x64, + + byte[] firstMessageExpectedBytes = new byte[] { 0x15, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xAC, 0x66, 0x69, 0x78, 0x65, 0x64, 0x4D, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, (byte) 0x91, (byte) 0xC0, (byte) 0x90 }; assertEquals(ByteString.of(firstMessageExpectedBytes), ByteString.of(mockTransport.getSentMessages()[1])); assertFalse(done.get()); - byte[] completionMessageBytes = new byte[] { 0x12, (byte) 0x95, 0x03, (byte) 0x80, (byte) 0xA1, 0x31, 0x03, (byte) 0xAB, 0x48, 0x65, 0x6C, 0x6C, + byte[] completionMessageBytes = new byte[] { 0x12, (byte) 0x95, 0x03, (byte) 0x80, (byte) 0xA1, 0x31, 0x03, (byte) 0xAB, 0x48, 0x65, 0x6C, 0x6C, 0x6F, 0x20, 0x57, 0x6F, 0x72, 0x6C, 0x64 }; mockTransport.receiveMessage(ByteBuffer.wrap(completionMessageBytes)); - assertEquals("Hello World", result.timeout(1000, TimeUnit.MILLISECONDS).blockingGet()); + assertEquals("Hello World", result.timeout(30, TimeUnit.SECONDS).blockingGet()); assertTrue(done.get()); } @@ -1685,42 +1685,42 @@ public void canSendMultipleNullArgsInInvocation() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean done = new AtomicBoolean(); Single result = hubConnection.invoke(String.class, "fixedMessage", null, null); result.doOnSuccess(value -> done.set(true)).subscribe(); - assertEquals("{\"type\":1,\"invocationId\":\"1\",\"target\":\"fixedMessage\",\"arguments\":[null,null]}"+ RECORD_SEPARATOR, + assertEquals("{\"type\":1,\"invocationId\":\"1\",\"target\":\"fixedMessage\",\"arguments\":[null,null]}"+ RECORD_SEPARATOR, TestUtils.byteBufferToString(mockTransport.getSentMessages()[1])); assertFalse(done.get()); mockTransport.receiveMessage("{\"type\":3,\"invocationId\":\"1\",\"result\":\"Hello World\"}" + RECORD_SEPARATOR); - assertEquals("Hello World", result.timeout(1000, TimeUnit.MILLISECONDS).blockingGet()); + assertEquals("Hello World", result.timeout(30, TimeUnit.SECONDS).blockingGet()); assertTrue(done.get()); } - + @Test public void canSendMultipleNullArgsInInvocationWithMessagePack() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport, true); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean done = new AtomicBoolean(); Single result = hubConnection.invoke(String.class, "fixedMessage", null, null); result.doOnSuccess(value -> done.set(true)).subscribe(); - - byte[] firstMessageExpectedBytes = new byte[] { 0x16, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xAC, 0x66, 0x69, 0x78, 0x65, 0x64, 0x4D, + + byte[] firstMessageExpectedBytes = new byte[] { 0x16, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xAC, 0x66, 0x69, 0x78, 0x65, 0x64, 0x4D, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, (byte) 0x92, (byte) 0xC0, (byte) 0xC0, (byte) 0x90 }; assertEquals(ByteString.of(firstMessageExpectedBytes), ByteString.of(mockTransport.getSentMessages()[1])); assertFalse(done.get()); - byte[] completionMessageBytes = new byte[] { 0x12, (byte) 0x95, 0x03, (byte) 0x80, (byte) 0xA1, 0x31, 0x03, (byte) 0xAB, 0x48, 0x65, 0x6C, 0x6C, + byte[] completionMessageBytes = new byte[] { 0x12, (byte) 0x95, 0x03, (byte) 0x80, (byte) 0xA1, 0x31, 0x03, (byte) 0xAB, 0x48, 0x65, 0x6C, 0x6C, 0x6F, 0x20, 0x57, 0x6F, 0x72, 0x6C, 0x64 }; mockTransport.receiveMessage(ByteBuffer.wrap(completionMessageBytes)); - assertEquals("Hello World", result.timeout(1000, TimeUnit.MILLISECONDS).blockingGet()); + assertEquals("Hello World", result.timeout(30, TimeUnit.SECONDS).blockingGet()); assertTrue(done.get()); } @@ -1729,7 +1729,7 @@ public void multipleInvokesWaitForOwnCompletionMessage() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean doneFirst = new AtomicBoolean(); AtomicBoolean doneSecond = new AtomicBoolean(); @@ -1737,29 +1737,29 @@ public void multipleInvokesWaitForOwnCompletionMessage() { Single result2 = hubConnection.invoke(String.class, "echo", "message"); result.doOnSuccess(value -> doneFirst.set(true)).subscribe(); result2.doOnSuccess(value -> doneSecond.set(true)).subscribe(); - assertEquals("{\"type\":1,\"invocationId\":\"1\",\"target\":\"echo\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, + assertEquals("{\"type\":1,\"invocationId\":\"1\",\"target\":\"echo\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, TestUtils.byteBufferToString(mockTransport.getSentMessages()[1])); - assertEquals("{\"type\":1,\"invocationId\":\"2\",\"target\":\"echo\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, + assertEquals("{\"type\":1,\"invocationId\":\"2\",\"target\":\"echo\",\"arguments\":[\"message\"]}" + RECORD_SEPARATOR, TestUtils.byteBufferToString(mockTransport.getSentMessages()[2])); assertFalse(doneFirst.get()); assertFalse(doneSecond.get()); mockTransport.receiveMessage("{\"type\":3,\"invocationId\":\"2\",\"result\":\"message\"}" + RECORD_SEPARATOR); - assertEquals("message", result2.timeout(1000, TimeUnit.MILLISECONDS).blockingGet()); + assertEquals("message", result2.timeout(30, TimeUnit.SECONDS).blockingGet()); assertFalse(doneFirst.get()); assertTrue(doneSecond.get()); mockTransport.receiveMessage("{\"type\":3,\"invocationId\":\"1\",\"result\":42}" + RECORD_SEPARATOR); - assertEquals(Integer.valueOf(42), result.timeout(1000, TimeUnit.MILLISECONDS).blockingGet()); + assertEquals(Integer.valueOf(42), result.timeout(30, TimeUnit.SECONDS).blockingGet()); assertTrue(doneFirst.get()); } - + @Test public void multipleInvokesWaitForOwnCompletionMessageWithMessagePack() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport, true); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean doneFirst = new AtomicBoolean(); AtomicBoolean doneSecond = new AtomicBoolean(); @@ -1767,27 +1767,27 @@ public void multipleInvokesWaitForOwnCompletionMessageWithMessagePack() { Single result2 = hubConnection.invoke(stringType, "echo", "message"); result.doOnSuccess(value -> doneFirst.set(true)).subscribe(); result2.doOnSuccess(value -> doneSecond.set(true)).subscribe(); - - byte[] firstMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA4, 0x65, 0x63, 0x68, 0x6F, + + byte[] firstMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xA1, 0x31, (byte) 0xA4, 0x65, 0x63, 0x68, 0x6F, (byte) 0x91, (byte) 0xA7, 0x6D, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, (byte) 0x90 }; assertEquals(ByteString.of(firstMessageExpectedBytes), ByteString.of(mockTransport.getSentMessages()[1])); - - byte[] secondMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xA1, 0x32, (byte) 0xA4, 0x65, 0x63, 0x68, 0x6F, + + byte[] secondMessageExpectedBytes = new byte[] { 0x14, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xA1, 0x32, (byte) 0xA4, 0x65, 0x63, 0x68, 0x6F, (byte) 0x91, (byte) 0xA7, 0x6D, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, (byte) 0x90 }; assertEquals(ByteString.of(secondMessageExpectedBytes), ByteString.of(mockTransport.getSentMessages()[2])); assertFalse(doneFirst.get()); assertFalse(doneSecond.get()); - byte[] firstCompletionMessageBytes = new byte[] { 0x0E, (byte) 0x95, 0x03, (byte) 0x80, (byte) 0xA1, 0x32, 0x03, (byte) 0xA7, 0x6D, 0x65, 0x73, + byte[] firstCompletionMessageBytes = new byte[] { 0x0E, (byte) 0x95, 0x03, (byte) 0x80, (byte) 0xA1, 0x32, 0x03, (byte) 0xA7, 0x6D, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65 }; mockTransport.receiveMessage(ByteBuffer.wrap(firstCompletionMessageBytes)); - assertEquals("message", result2.timeout(1000, TimeUnit.MILLISECONDS).blockingGet()); + assertEquals("message", result2.timeout(30, TimeUnit.SECONDS).blockingGet()); assertFalse(doneFirst.get()); assertTrue(doneSecond.get()); byte[] secondCompletionMessageBytes = new byte[] { 0x07, (byte) 0x95, 0x03, (byte) 0x80, (byte) 0xA1, 0x31, 0x03, 0x2A }; mockTransport.receiveMessage(ByteBuffer.wrap(secondCompletionMessageBytes)); - assertEquals(Integer.valueOf(42), result.timeout(1000, TimeUnit.MILLISECONDS).blockingGet()); + assertEquals(Integer.valueOf(42), result.timeout(30, TimeUnit.SECONDS).blockingGet()); assertTrue(doneFirst.get()); } @@ -1796,7 +1796,7 @@ public void invokeWorksForPrimitiveTypes() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean done = new AtomicBoolean(); // int.class is a primitive type and since we use Class.cast to cast an Object to the expected return type @@ -1807,16 +1807,16 @@ public void invokeWorksForPrimitiveTypes() { mockTransport.receiveMessage("{\"type\":3,\"invocationId\":\"1\",\"result\":42}" + RECORD_SEPARATOR); - assertEquals(Integer.valueOf(42), result.timeout(1000, TimeUnit.MILLISECONDS).blockingGet()); + assertEquals(Integer.valueOf(42), result.timeout(30, TimeUnit.SECONDS).blockingGet()); assertTrue(done.get()); } - + @Test public void invokeWorksForPrimitiveTypesWithMessagePack() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport, true); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean done = new AtomicBoolean(); // int.class is a primitive type and since we use Class.cast to cast an Object to the expected return type @@ -1827,7 +1827,7 @@ public void invokeWorksForPrimitiveTypesWithMessagePack() { mockTransport.receiveMessage(ByteBuffer.wrap(new byte[] { 0x07, (byte) 0x95, 0x03, (byte) 0x80, (byte) 0xA1, 0x31, 0x03, 0x2A })); - assertEquals(Integer.valueOf(42), result.timeout(1000, TimeUnit.MILLISECONDS).blockingGet()); + assertEquals(Integer.valueOf(42), result.timeout(30, TimeUnit.SECONDS).blockingGet()); assertTrue(done.get()); } @@ -1836,7 +1836,7 @@ public void completionMessageCanHaveError() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean done = new AtomicBoolean(); Single result = hubConnection.invoke(int.class, "echo", "message"); @@ -1847,7 +1847,7 @@ public void completionMessageCanHaveError() { String exceptionMessage = null; try { - result.timeout(1000, TimeUnit.MILLISECONDS).blockingGet(); + result.timeout(30, TimeUnit.SECONDS).blockingGet(); assertFalse(true); } catch (HubException ex) { exceptionMessage = ex.getMessage(); @@ -1855,26 +1855,26 @@ public void completionMessageCanHaveError() { assertEquals("There was an error", exceptionMessage); } - + @Test public void completionMessageCanHaveErrorWithMessagePack() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport, true); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean done = new AtomicBoolean(); Single result = hubConnection.invoke(int.class, "echo", "message"); result.doOnSuccess(value -> done.set(true)); assertFalse(done.get()); - byte[] completionMessageErrorBytes = new byte[] { 0x19, (byte) 0x95, 0x03, (byte) 0x80, (byte) 0xA1, 0x31, 0x01, (byte) 0xB2, 0x54, 0x68, 0x65, + byte[] completionMessageErrorBytes = new byte[] { 0x19, (byte) 0x95, 0x03, (byte) 0x80, (byte) 0xA1, 0x31, 0x01, (byte) 0xB2, 0x54, 0x68, 0x65, 0x72, 0x65, 0x20, 0x77, 0x61, 0x73, 0x20, 0x61, 0x6E, 0x20, 0x65, 0x72, 0x72, 0x6F, 0x72 }; mockTransport.receiveMessage(ByteBuffer.wrap(completionMessageErrorBytes)); String exceptionMessage = null; try { - result.timeout(1000, TimeUnit.MILLISECONDS).blockingGet(); + result.timeout(30, TimeUnit.SECONDS).blockingGet(); assertFalse(true); } catch (HubException ex) { exceptionMessage = ex.getMessage(); @@ -1888,7 +1888,7 @@ public void stopCancelsActiveInvokes() { MockTransport mockTransport = new MockTransport(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com", mockTransport); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); AtomicBoolean done = new AtomicBoolean(); Single result = hubConnection.invoke(int.class, "echo", "message"); @@ -1899,7 +1899,7 @@ public void stopCancelsActiveInvokes() { RuntimeException hasException = null; try { - result.timeout(1000, TimeUnit.MILLISECONDS).blockingGet(); + result.timeout(30, TimeUnit.SECONDS).blockingGet(); assertFalse(true); } catch (CancellationException ex) { hasException = ex; @@ -1919,7 +1919,7 @@ public void sendWithNoParamsTriggersOnHandler() { value.getAndUpdate((val) -> val + 1); }); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); mockTransport.receiveMessage("{\"type\":1,\"target\":\"inc\",\"arguments\":[]}" + RECORD_SEPARATOR); // Confirming that our handler was called and that the counter property was incremented. @@ -1937,7 +1937,7 @@ public void sendWithParamTriggersOnHandler() { value.set(param); }, String.class); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); mockTransport.receiveMessage("{\"type\":1,\"target\":\"inc\",\"arguments\":[\"Hello World\"]}" + RECORD_SEPARATOR); hubConnection.send("inc", "Hello World"); @@ -1961,7 +1961,7 @@ public void sendWithTwoParamsTriggersOnHandler() { value2.set(param2); }, String.class, Double.class); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); mockTransport.receiveMessage("{\"type\":1,\"target\":\"inc\",\"arguments\":[\"Hello World\", 12]}" + RECORD_SEPARATOR); hubConnection.send("inc", "Hello World", 12); @@ -1989,7 +1989,7 @@ public void sendWithThreeParamsTriggersOnHandler() { value3.set(param3); }, String.class, String.class, String.class); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); mockTransport.receiveMessage("{\"type\":1,\"target\":\"inc\",\"arguments\":[\"A\", \"B\", \"C\"]}" + RECORD_SEPARATOR); hubConnection.send("inc", "A", "B", "C"); @@ -2021,7 +2021,7 @@ public void sendWithFourParamsTriggersOnHandler() { value4.set(param4); }, String.class, String.class, String.class, String.class); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); mockTransport.receiveMessage("{\"type\":1,\"target\":\"inc\",\"arguments\":[\"A\", \"B\", \"C\", \"D\"]}" + RECORD_SEPARATOR); // Confirming that our handler was called and the correct message was passed in. @@ -2056,7 +2056,7 @@ public void sendWithFiveParamsTriggersOnHandler() { value5.set(param5); }, String.class, String.class, String.class, Boolean.class, Double.class); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); mockTransport.receiveMessage("{\"type\":1,\"target\":\"inc\",\"arguments\":[\"A\", \"B\", \"C\",true,12 ]}" + RECORD_SEPARATOR); // Confirming that our handler was called and the correct message was passed in. @@ -2095,7 +2095,7 @@ public void sendWithSixParamsTriggersOnHandler() { value6.set(param6); }, String.class, String.class, String.class, Boolean.class, Double.class, String.class); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); mockTransport.receiveMessage("{\"type\":1,\"target\":\"inc\",\"arguments\":[\"A\", \"B\", \"C\",true,12,\"D\"]}" + RECORD_SEPARATOR); // Confirming that our handler was called and the correct message was passed in. @@ -2138,7 +2138,7 @@ public void sendWithSevenParamsTriggersOnHandler() { value7.set(param7); }, String.class, String.class, String.class, Boolean.class, Double.class, String.class, String.class); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); mockTransport.receiveMessage("{\"type\":1,\"target\":\"inc\",\"arguments\":[\"A\", \"B\", \"C\",true,12,\"D\",\"E\"]}" + RECORD_SEPARATOR); // Confirming that our handler was called and the correct message was passed in. @@ -2185,7 +2185,7 @@ public void sendWithEightParamsTriggersOnHandler() { value8.set(param8); }, String.class, String.class, String.class, Boolean.class, Double.class, String.class, String.class, String.class); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); mockTransport.receiveMessage("{\"type\":1,\"target\":\"inc\",\"arguments\":[\"A\", \"B\", \"C\",true,12,\"D\",\"E\",\"F\"]}" + RECORD_SEPARATOR); // Confirming that our handler was called and the correct message was passed in. assertEquals("A", value1.get()); @@ -2197,7 +2197,7 @@ public void sendWithEightParamsTriggersOnHandler() { assertEquals("E", value7.get()); assertEquals("F", value8.get()); } - + @Test public void sendWithNoParamsTriggersOnHandlerWithMessagePack() { AtomicReference value = new AtomicReference<>(0); @@ -2209,7 +2209,7 @@ public void sendWithNoParamsTriggersOnHandlerWithMessagePack() { value.getAndUpdate((val) -> val + 1); }); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); byte[] messageBytes = new byte[] { 0x0A, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xC0, (byte) 0xA3, 0x69, 0x6E, 0x63, (byte) 0x90, (byte) 0x90 }; mockTransport.receiveMessage(ByteBuffer.wrap(messageBytes)); @@ -2228,8 +2228,8 @@ public void sendWithParamTriggersOnHandlerWithMessagePack() { value.set(param); }, stringType); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); - byte[] messageBytes = new byte[] { 0x0C, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xC0, (byte) 0xA3, 0x69, 0x6E, 0x63, (byte) 0x91, (byte) 0xA1, + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); + byte[] messageBytes = new byte[] { 0x0C, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xC0, (byte) 0xA3, 0x69, 0x6E, 0x63, (byte) 0x91, (byte) 0xA1, 0x41, (byte) 0x90 }; mockTransport.receiveMessage(ByteBuffer.wrap(messageBytes)); hubConnection.send("inc", "A"); @@ -2254,8 +2254,8 @@ public void sendWithTwoParamsTriggersOnHandlerWithMessagePack() { value2.set(param2); }, stringType, doubleType); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); - byte[] messageBytes = new byte[] { 0x15, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xC0, (byte) 0xA3, 0x69, 0x6E, 0x63, (byte) 0x92, (byte) 0xA1, 0x41, + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); + byte[] messageBytes = new byte[] { 0x15, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xC0, (byte) 0xA3, 0x69, 0x6E, 0x63, (byte) 0x92, (byte) 0xA1, 0x41, (byte) 0xCB, 0x40, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, (byte) 0x90 }; mockTransport.receiveMessage(ByteBuffer.wrap(messageBytes)); hubConnection.send("inc", "A", 12); @@ -2284,8 +2284,8 @@ public void sendWithThreeParamsTriggersOnHandlerWithMessagePack() { value3.set(param3); }, stringType, stringType, stringType); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); - byte[] messageBytes = new byte[] { 0x10, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xC0, (byte) 0xA3, 0x69, 0x6E, 0x63, (byte) 0x93, (byte) 0xA1, 0x41, + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); + byte[] messageBytes = new byte[] { 0x10, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xC0, (byte) 0xA3, 0x69, 0x6E, 0x63, (byte) 0x93, (byte) 0xA1, 0x41, (byte) 0xA1, 0x42, (byte) 0xA1, 0x43, (byte) 0x90 }; mockTransport.receiveMessage(ByteBuffer.wrap(messageBytes)); hubConnection.send("inc", "A", "B", "C"); @@ -2318,8 +2318,8 @@ public void sendWithFourParamsTriggersOnHandlerWithMessagePack() { value4.set(param4); }, stringType, stringType, stringType, stringType); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); - byte[] messageBytes = new byte[] { 0x12, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xC0, (byte) 0xA3, 0x69, 0x6E, 0x63, (byte) 0x94, (byte) 0xA1, 0x41, + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); + byte[] messageBytes = new byte[] { 0x12, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xC0, (byte) 0xA3, 0x69, 0x6E, 0x63, (byte) 0x94, (byte) 0xA1, 0x41, (byte) 0xA1, 0x42, (byte) 0xA1, 0x43, (byte) 0xA1, 0x44, (byte) 0x90 }; mockTransport.receiveMessage(ByteBuffer.wrap(messageBytes)); @@ -2355,8 +2355,8 @@ public void sendWithFiveParamsTriggersOnHandlerWithMessagePack() { value5.set(param5); }, stringType, stringType, stringType, booleanType, doubleType); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); - byte[] messageBytes = new byte[] { 0x1A, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xC0, (byte) 0xA3, 0x69, 0x6E, 0x63, (byte) 0x95, (byte) 0xA1, 0x41, + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); + byte[] messageBytes = new byte[] { 0x1A, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xC0, (byte) 0xA3, 0x69, 0x6E, 0x63, (byte) 0x95, (byte) 0xA1, 0x41, (byte) 0xA1, 0x42, (byte) 0xA1, 0x43, (byte) 0xC3, (byte) 0xCB, 0x40, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, (byte) 0x90 }; mockTransport.receiveMessage(ByteBuffer.wrap(messageBytes)); @@ -2396,8 +2396,8 @@ public void sendWithSixParamsTriggersOnHandlerWithMessagePack() { value6.set(param6); }, stringType, stringType, stringType, booleanType, doubleType, stringType); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); - byte[] messageBytes = new byte[] { 0x1C, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xC0, (byte) 0xA3, 0x69, 0x6E, 0x63, (byte) 0x96, (byte) 0xA1, 0x41, + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); + byte[] messageBytes = new byte[] { 0x1C, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xC0, (byte) 0xA3, 0x69, 0x6E, 0x63, (byte) 0x96, (byte) 0xA1, 0x41, (byte) 0xA1, 0x42, (byte) 0xA1, 0x43, (byte) 0xC3, (byte) 0xCB, 0x40, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, (byte) 0xA1, 0x44, (byte) 0x90 }; mockTransport.receiveMessage(ByteBuffer.wrap(messageBytes)); @@ -2441,9 +2441,9 @@ public void sendWithSevenParamsTriggersOnHandlerWithMessagePack() { value7.set(param7); }, stringType, stringType, stringType, booleanType, doubleType, stringType, stringType); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); - byte[] messageBytes = new byte[] { 0x1E, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xC0, (byte) 0xA3, 0x69, 0x6E, 0x63, (byte) 0x97, (byte) 0xA1, 0x41, - (byte) 0xA1, 0x42, (byte) 0xA1, 0x43, (byte) 0xC3, (byte) 0xCB, 0x40, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, (byte) 0xA1, 0x44, (byte) 0xA1, + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); + byte[] messageBytes = new byte[] { 0x1E, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xC0, (byte) 0xA3, 0x69, 0x6E, 0x63, (byte) 0x97, (byte) 0xA1, 0x41, + (byte) 0xA1, 0x42, (byte) 0xA1, 0x43, (byte) 0xC3, (byte) 0xCB, 0x40, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, (byte) 0xA1, 0x44, (byte) 0xA1, 0x45, (byte) 0x90 }; mockTransport.receiveMessage(ByteBuffer.wrap(messageBytes)); @@ -2491,9 +2491,9 @@ public void sendWithEightParamsTriggersOnHandlerWithMessagePack() { value8.set(param8); }, stringType, stringType, stringType, booleanType, doubleType, stringType, stringType, stringType); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); - byte[] messageBytes = new byte[] { 0x20, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xC0, (byte) 0xA3, 0x69, 0x6E, 0x63, (byte) 0x98, (byte) 0xA1, 0x41, - (byte) 0xA1, 0x42, (byte) 0xA1, 0x43, (byte) 0xC3, (byte) 0xCB, 0x40, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, (byte) 0xA1, 0x44, (byte) 0xA1, + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); + byte[] messageBytes = new byte[] { 0x20, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xC0, (byte) 0xA3, 0x69, 0x6E, 0x63, (byte) 0x98, (byte) 0xA1, 0x41, + (byte) 0xA1, 0x42, (byte) 0xA1, 0x43, (byte) 0xC3, (byte) 0xCB, 0x40, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, (byte) 0xA1, 0x44, (byte) 0xA1, 0x45, (byte) 0xA1, 0x46, (byte) 0x90 }; mockTransport.receiveMessage(ByteBuffer.wrap(messageBytes)); // Confirming that our handler was called and the correct message was passed in. @@ -2526,7 +2526,7 @@ public void sendWithCustomObjectTriggersOnHandler() { value1.set(param1); }, Custom.class); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); mockTransport.receiveMessage("{\"type\":1,\"target\":\"inc\",\"arguments\":[{\"number\":1,\"str\":\"A\",\"bools\":[true,false]}]}" + RECORD_SEPARATOR); // Confirming that our handler was called and the correct message was passed in. @@ -2537,7 +2537,7 @@ public void sendWithCustomObjectTriggersOnHandler() { assertEquals(true, custom.bools[0]); assertEquals(false, custom.bools[1]); } - + @Test public void sendWithCustomObjectTriggersOnHandlerWithMessagePack() { AtomicReference> value1 = new AtomicReference<>(); @@ -2551,9 +2551,9 @@ public void sendWithCustomObjectTriggersOnHandlerWithMessagePack() { value1.set(param1); }, (new TypeReference>() { }).getType()); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); - byte[] messageBytes = new byte[] { 0x2F, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xC0, (byte) 0xA3, 0x69, 0x6E, 0x63, (byte) 0x91, (byte) 0x84, - (byte) 0xA9, 0x66, 0x69, 0x72, 0x73, 0x74, 0x4E, 0x61, 0x6D, 0x65, (byte) 0xA4, 0x4A, 0x6F, 0x68, 0x6E, (byte) 0xA8, 0x6C, 0x61, 0x73, 0x74, + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); + byte[] messageBytes = new byte[] { 0x2F, (byte) 0x96, 0x01, (byte) 0x80, (byte) 0xC0, (byte) 0xA3, 0x69, 0x6E, 0x63, (byte) 0x91, (byte) 0x84, + (byte) 0xA9, 0x66, 0x69, 0x72, 0x73, 0x74, 0x4E, 0x61, 0x6D, 0x65, (byte) 0xA4, 0x4A, 0x6F, 0x68, 0x6E, (byte) 0xA8, 0x6C, 0x61, 0x73, 0x74, 0x4E, 0x61, 0x6D, 0x65, (byte) 0xA3, 0x44, 0x6F, 0x65, (byte) 0xA3, 0x61, 0x67, 0x65, 0x1E, (byte) 0xA1, 0x74, 0x05, (byte) 0x90 }; mockTransport.receiveMessage(ByteBuffer.wrap(messageBytes)); @@ -2579,7 +2579,7 @@ public void receiveHandshakeResponseAndMessage() { SingleSubject handshakeMessageTask = mockTransport.getNextSentMessage(); // On start we're going to receive the handshake response and also an invocation in the same payload. hubConnection.start(); - ByteBuffer sentMessage = handshakeMessageTask.timeout(1, TimeUnit.SECONDS).blockingGet(); + ByteBuffer sentMessage = handshakeMessageTask.timeout(30, TimeUnit.SECONDS).blockingGet(); String expectedSentMessage = "{\"protocol\":\"json\",\"version\":1}" + RECORD_SEPARATOR; assertEquals(expectedSentMessage, TestUtils.byteBufferToString(mockTransport.getSentMessages()[0])); @@ -2593,7 +2593,7 @@ public void receiveHandshakeResponseAndMessage() { public void onClosedCallbackRunsWhenStopIsCalled() { AtomicReference value1 = new AtomicReference<>(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com"); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); hubConnection.onClosed((ex) -> { assertNull(value1.get()); value1.set("Closed callback ran."); @@ -2609,7 +2609,7 @@ public void multipleOnClosedCallbacksRunWhenStopIsCalled() { AtomicReference value1 = new AtomicReference<>(); AtomicReference value2 = new AtomicReference<>(); HubConnection hubConnection = TestUtils.createHubConnection("http://example.com"); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); hubConnection.onClosed((ex) -> { assertNull(value1.get()); @@ -2637,7 +2637,7 @@ public void hubConnectionClosesAndRunsOnClosedCallbackAfterCloseMessageWithError hubConnection.onClosed((ex) -> { assertEquals(ex.getMessage(), "There was an error"); }); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); @@ -2649,13 +2649,13 @@ public void hubConnectionClosesAndRunsOnClosedCallbackAfterCloseMessageWithError @Test public void callingStartOnStartedHubConnectionNoops() { HubConnection hubConnection = TestUtils.createHubConnection("http://example.com"); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); - hubConnection.stop().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.stop().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.DISCONNECTED, hubConnection.getConnectionState()); } @@ -2668,22 +2668,22 @@ public void callingStartOnStartingHubConnectionWaitsForOriginalStart() { .withHttpClient(new TestHttpClient()) .withAccessTokenProvider(Single.defer(() -> { startedAccessToken.onComplete(); - continueAccessToken.timeout(1, TimeUnit.SECONDS).blockingAwait(); + continueAccessToken.timeout(30, TimeUnit.SECONDS).blockingAwait(); return Single.just("test"); }).subscribeOn(Schedulers.newThread())) .shouldSkipNegotiate(true) .build(); Completable start = hubConnection.start(); - startedAccessToken.timeout(1, TimeUnit.SECONDS).blockingAwait(); + startedAccessToken.timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTING, hubConnection.getConnectionState()); Completable start2 = hubConnection.start(); continueAccessToken.onComplete(); - start.timeout(1, TimeUnit.SECONDS).blockingAwait(); - start2.timeout(1, TimeUnit.SECONDS).blockingAwait(); + start.timeout(30, TimeUnit.SECONDS).blockingAwait(); + start2.timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); - hubConnection.stop().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.stop().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.DISCONNECTED, hubConnection.getConnectionState()); } @@ -2722,7 +2722,7 @@ public void doesNotErrorWhenReceivingInvokeWithIncorrectArgumentLength() { assertTrue(false); }, String.class); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); mockTransport.receiveMessage("{\"type\":1,\"target\":\"Send\",\"arguments\":[]}" + RECORD_SEPARATOR); hubConnection.stop(); @@ -2738,7 +2738,7 @@ public void negotiateSentOnStart() { .withHttpClient(client) .build(); - Exception exception = assertThrows(RuntimeException.class, () -> hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait()); + Exception exception = assertThrows(RuntimeException.class, () -> hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait()); assertEquals("Unexpected status code returned from negotiate: 404 .", exception.getMessage()); List sentRequests = client.getSentRequests(); @@ -2757,7 +2757,7 @@ public void negotiateThatRedirectsForeverFailsAfter100Tries() { .build(); RuntimeException exception = assertThrows(RuntimeException.class, - () -> hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait()); + () -> hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait()); assertEquals("Negotiate redirection limit exceeded.", exception.getMessage()); } @@ -2771,10 +2771,10 @@ public void noConnectionIdWhenSkippingNegotiate() { .build(); assertNull(hubConnection.getConnectionId()); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); assertNull(hubConnection.getConnectionId()); - hubConnection.stop().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.stop().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.DISCONNECTED, hubConnection.getConnectionState()); assertNull(hubConnection.getConnectionId()); } @@ -2795,11 +2795,11 @@ public void connectionIdIsAvailableAfterStart() { assertEquals(HubConnectionState.DISCONNECTED, hubConnection.getConnectionState()); assertNull(hubConnection.getConnectionId()); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); assertEquals("bVOiRPG8-6YiJ6d7ZcTOVQ", hubConnection.getConnectionId()); - hubConnection.stop().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.stop().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.DISCONNECTED, hubConnection.getConnectionState()); assertNull(hubConnection.getConnectionId()); } @@ -2822,11 +2822,11 @@ public void connectionTokenAppearsInQSConnectionIdIsOnConnectionInstance() { assertEquals(HubConnectionState.DISCONNECTED, hubConnection.getConnectionState()); assertNull(hubConnection.getConnectionId()); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); assertEquals("bVOiRPG8-6YiJ6d7ZcTOVQ", hubConnection.getConnectionId()); assertEquals("http://example.com?id=connection-token-value", transport.getUrl()); - hubConnection.stop().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.stop().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.DISCONNECTED, hubConnection.getConnectionState()); assertNull(hubConnection.getConnectionId()); } @@ -2848,11 +2848,11 @@ public void connectionTokenIsIgnoredIfNegotiateVersionIsNotPresentInNegotiateRes assertEquals(HubConnectionState.DISCONNECTED, hubConnection.getConnectionState()); assertNull(hubConnection.getConnectionId()); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); assertEquals("bVOiRPG8-6YiJ6d7ZcTOVQ", hubConnection.getConnectionId()); assertEquals("http://example.com?id=bVOiRPG8-6YiJ6d7ZcTOVQ", transport.getUrl()); - hubConnection.stop().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.stop().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.DISCONNECTED, hubConnection.getConnectionState()); assertNull(hubConnection.getConnectionId()); } @@ -2874,11 +2874,11 @@ public void negotiateVersionIsNotAddedIfAlreadyPresent() { assertEquals(HubConnectionState.DISCONNECTED, hubConnection.getConnectionState()); assertNull(hubConnection.getConnectionId()); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); assertEquals("bVOiRPG8-6YiJ6d7ZcTOVQ", hubConnection.getConnectionId()); assertEquals("http://example.com?negotiateVersion=42&id=bVOiRPG8-6YiJ6d7ZcTOVQ", transport.getUrl()); - hubConnection.stop().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.stop().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.DISCONNECTED, hubConnection.getConnectionState()); assertNull(hubConnection.getConnectionId()); } @@ -2897,7 +2897,7 @@ public void afterSuccessfulNegotiateConnectsWithWebsocketsTransport() { .withHttpClient(client) .build(); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); ByteBuffer[] sentMessages = transport.getSentMessages(); assertEquals(1, sentMessages.length); @@ -2918,7 +2918,7 @@ public void afterSuccessfulNegotiateConnectsWithLongPollingTransport() { .withHttpClient(client) .build(); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); ByteBuffer[] sentMessages = transport.getSentMessages(); assertEquals(1, sentMessages.length); @@ -2950,10 +2950,10 @@ public void TransportAllUsesLongPollingWhenServerOnlySupportLongPolling() { .withHttpClient(client) .build(); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertTrue(hubConnection.getTransport() instanceof LongPollingTransport); close.onComplete(); - hubConnection.stop().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.stop().timeout(30, TimeUnit.SECONDS).blockingAwait(); } @Test @@ -2974,7 +2974,7 @@ public void ClientThatSelectsWebsocketsThrowsWhenWebsocketsAreNotAvailable() { assertEquals(TransportEnum.WEBSOCKETS, hubConnection.getTransportEnum()); RuntimeException exception = assertThrows(RuntimeException.class, - () -> hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait()); + () -> hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait()); assertEquals(exception.getMessage(), "There were no compatible transports on the server."); } @@ -2993,7 +2993,7 @@ public void ClientThatSelectsLongPollingThrowsWhenLongPollingIsNotAvailable() { assertEquals(TransportEnum.LONG_POLLING, hubConnection.getTransportEnum()); RuntimeException exception = assertThrows(RuntimeException.class, - () -> hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait()); + () -> hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait()); assertEquals(exception.getMessage(), "There were no compatible transports on the server."); } @@ -3026,7 +3026,7 @@ public void LongPollingTransportAccessTokenProviderThrowsOnInitialPoll() { .build(); try { - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertTrue(false); } catch (RuntimeException ex) { assertEquals("Error from accessTokenProvider", ex.getMessage()); @@ -3070,10 +3070,10 @@ public void LongPollingTransportAccessTokenProviderThrowsAfterHandshakeClosesCon closed.onComplete(); }); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); blockGet.onComplete(); - - closed.timeout(1, TimeUnit.SECONDS).blockingAwait(); + + closed.timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.DISCONNECTED, hubConnection.getConnectionState()); } @@ -3114,16 +3114,16 @@ public void LongPollingTransportAccessTokenProviderThrowsDuringStop() { closed.onComplete(); }); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); try { - hubConnection.stop().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.stop().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertTrue(false); } catch (Exception ex) { assertEquals("Error from accessTokenProvider", ex.getMessage()); } blockGet.onComplete(); - closed.timeout(1, TimeUnit.SECONDS).blockingAwait(); + closed.timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.DISCONNECTED, hubConnection.getConnectionState()); } @@ -3220,7 +3220,7 @@ public void receivingServerSentEventsTransportFromNegotiateFails() { .build(); RuntimeException exception = assertThrows(RuntimeException.class, - () -> hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait()); + () -> hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait()); assertEquals(exception.getMessage(), "There were no compatible transports on the server."); } @@ -3238,7 +3238,7 @@ public void negotiateThatReturnsErrorThrowsFromStart() { .build(); RuntimeException exception = assertThrows(RuntimeException.class, - () -> hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait()); + () -> hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait()); assertEquals("Test error.", exception.getMessage()); } @@ -3263,7 +3263,7 @@ public void DetectWhenTryingToConnectToClassicSignalRServer() { .build(); RuntimeException exception = assertThrows(RuntimeException.class, - () -> hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait()); + () -> hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait()); assertEquals("Detected an ASP.NET SignalR Server. This client only supports connecting to an ASP.NET Core SignalR Server. See https://aka.ms/signalr-core-differences for details.", exception.getMessage()); } @@ -3283,7 +3283,7 @@ public void negotiateRedirectIsFollowed() { .withHttpClient(client) .build(); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); hubConnection.stop(); } @@ -3312,9 +3312,9 @@ public void accessTokenProviderReferenceIsKeptAfterNegotiateRedirect() { .withAccessTokenProvider(Single.just("User Registered Token")) .build(); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); - hubConnection.stop().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.stop().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals("Bearer User Registered Token", beforeRedirectToken.get()); assertEquals("Bearer newToken", token.get()); @@ -3323,7 +3323,7 @@ public void accessTokenProviderReferenceIsKeptAfterNegotiateRedirect() { token.set(""); // Restart the connection to make sure that the original accessTokenProvider that we registered is still registered before the redirect. - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); hubConnection.stop(); assertEquals("Bearer User Registered Token", beforeRedirectToken.get()); @@ -3349,7 +3349,7 @@ public void accessTokenProviderIsUsedForNegotiate() { .withAccessTokenProvider(Single.just("secretToken")) .build(); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); hubConnection.stop(); assertEquals("Bearer secretToken", token.get()); @@ -3375,14 +3375,14 @@ public void AccessTokenProviderCanProvideDifferentValues() { .withAccessTokenProvider(Single.defer(() -> Single.just("secret" + i.getAndIncrement()))) .build(); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); - hubConnection.stop().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.stop().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals("Bearer secret0", token.get()); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); - hubConnection.stop().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.stop().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals("Bearer secret1", token.get()); } @@ -3390,7 +3390,7 @@ public void AccessTokenProviderCanProvideDifferentValues() { public void accessTokenProviderIsOverriddenFromRedirectNegotiate() { AtomicReference token = new AtomicReference<>(); TestHttpClient client = new TestHttpClient() - .on("POST", "http://example.com/negotiate?negotiateVersion=1", (req) -> Single.just(new HttpResponse(200, "", + .on("POST", "http://example.com/negotiate?negotiateVersion=1", (req) -> Single.just(new HttpResponse(200, "", TestUtils.stringToByteBuffer("{\"url\":\"http://testexample.com/\",\"accessToken\":\"newToken\"}")))) .on("POST", "http://testexample.com/negotiate?negotiateVersion=1", (req) -> { token.set(req.getHeaders().get("Authorization")); @@ -3408,7 +3408,7 @@ public void accessTokenProviderIsOverriddenFromRedirectNegotiate() { .withAccessTokenProvider(Single.just("secretToken")) .build(); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); assertEquals("http://testexample.com/?id=connection-token-value", transport.getUrl()); hubConnection.stop(); @@ -3438,9 +3438,9 @@ public void authorizationHeaderFromNegotiateGetsClearedAfterStopping() { .withHttpClient(client) .build(); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); - hubConnection.stop().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.stop().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals("Bearer newToken", token.get()); // Clear the tokens to see if they get reset to the proper values @@ -3448,7 +3448,7 @@ public void authorizationHeaderFromNegotiateGetsClearedAfterStopping() { token.set(""); // Restart the connection to make sure that the original accessTokenProvider that we registered is still registered before the redirect. - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); hubConnection.stop(); assertNull(beforeRedirectToken.get()); @@ -3485,16 +3485,16 @@ public void authorizationHeaderFromNegotiateGetsSetToNewValue() { .withHttpClient(client) .build(); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); - hubConnection.stop().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.stop().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals("Bearer firstRedirectToken", token.get()); // Clear the tokens to see if they get reset to the proper values redirectToken.set(""); token.set(""); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); hubConnection.stop(); assertNull(redirectToken.get()); @@ -3509,7 +3509,7 @@ public void ErrorInAccessTokenProviderThrowsFromStart() { .build(); try { - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertTrue(false); } catch (RuntimeException ex) { assertEquals("Error from accessTokenProvider", ex.getMessage()); @@ -3526,9 +3526,9 @@ public void connectionTimesOutIfServerDoesNotSendMessage() { closedSubject.onSuccess(e); }); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); - assertEquals("Server timeout elapsed without receiving a message from the server.", closedSubject.timeout(1, TimeUnit.SECONDS).blockingGet().getMessage()); + assertEquals("Server timeout elapsed without receiving a message from the server.", closedSubject.timeout(30, TimeUnit.SECONDS).blockingGet().getMessage()); } @Test @@ -3538,14 +3538,14 @@ public void connectionSendsPingsRegularly() throws InterruptedException { hubConnection.setKeepAliveInterval(1); hubConnection.setTickRate(1); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); - String message = TestUtils.byteBufferToString(mockTransport.getNextSentMessage().timeout(1, TimeUnit.SECONDS).blockingGet()); + String message = TestUtils.byteBufferToString(mockTransport.getNextSentMessage().timeout(30, TimeUnit.SECONDS).blockingGet()); assertEquals("{\"type\":6}" + RECORD_SEPARATOR, message); - message = TestUtils.byteBufferToString(mockTransport.getNextSentMessage().timeout(1, TimeUnit.SECONDS).blockingGet()); + message = TestUtils.byteBufferToString(mockTransport.getNextSentMessage().timeout(30, TimeUnit.SECONDS).blockingGet()); assertEquals("{\"type\":6}" + RECORD_SEPARATOR, message); - hubConnection.stop().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.stop().timeout(30, TimeUnit.SECONDS).blockingAwait(); } @Test @@ -3565,7 +3565,7 @@ public void userAgentHeaderIsSet() { .withHttpClient(client) .build(); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); hubConnection.stop(); @@ -3590,7 +3590,7 @@ public void userAgentHeaderCanBeOverwritten() { .withHeader("User-Agent", "Updated Value") .build(); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); hubConnection.stop(); assertEquals("Updated Value", header.get()); @@ -3614,7 +3614,7 @@ public void userAgentCanBeCleared() { .withHeader("User-Agent", "") .build(); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); hubConnection.stop(); assertEquals("", header.get()); @@ -3638,7 +3638,7 @@ public void headersAreSetAndSentThroughBuilder() { .withHeader("ExampleHeader", "ExampleValue") .build(); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); hubConnection.stop(); assertEquals("ExampleValue", header.get()); @@ -3662,12 +3662,12 @@ public void headersAreNotClearedWhenConnectionIsRestarted() { .withHeader("Authorization", "ExampleValue") .build(); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); hubConnection.stop(); assertEquals("ExampleValue", header.get()); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); assertEquals("ExampleValue", header.get()); } @@ -3697,14 +3697,14 @@ public void userSetAuthHeaderIsNotClearedAfterRedirect() { .withHeader("Authorization", "ExampleValue") .build(); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); hubConnection.stop().blockingAwait(); assertEquals("ExampleValue", beforeRedirectHeader.get()); assertEquals("Bearer redirectToken", afterRedirectHeader.get()); // Making sure you can do this after restarting the HubConnection. - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); hubConnection.stop().blockingAwait(); assertEquals("ExampleValue", beforeRedirectHeader.get()); @@ -3731,7 +3731,7 @@ public void sameHeaderSetTwiceGetsOverwritten() { .withHeader("ExampleHeader", "New Value") .build(); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); hubConnection.stop(); assertEquals("New Value", header.get()); @@ -3746,13 +3746,13 @@ public void hubConnectionCanBeStartedAfterBeingStopped() { .shouldSkipNegotiate(true) .build(); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); - hubConnection.stop().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.stop().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.DISCONNECTED, hubConnection.getConnectionState()); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); - hubConnection.stop().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.stop().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.DISCONNECTED, hubConnection.getConnectionState()); } @@ -3761,7 +3761,7 @@ public void hubConnectionCanBeStartedAfterBeingStoppedAndRedirected() { MockTransport mockTransport = new MockTransport(); TestHttpClient client = new TestHttpClient() .on("POST", "http://example.com/negotiate?negotiateVersion=1", (req) -> Single.just(new HttpResponse(200, "", TestUtils.stringToByteBuffer("{\"url\":\"http://testexample.com/\"}")))) - .on("POST", "http://testexample.com/negotiate?negotiateVersion=1", (req) -> Single.just(new HttpResponse(200, "", + .on("POST", "http://testexample.com/negotiate?negotiateVersion=1", (req) -> Single.just(new HttpResponse(200, "", TestUtils.stringToByteBuffer("{\"connectionId\":\"bVOiRPG8-6YiJ6d7ZcTOVQ\",\"availableTransports\":[{\"transport\":\"WebSockets\",\"transferFormats\":[\"Text\",\"Binary\"]}]}")))); HubConnection hubConnection = HubConnectionBuilder @@ -3770,13 +3770,13 @@ public void hubConnectionCanBeStartedAfterBeingStoppedAndRedirected() { .withHttpClient(client) .build(); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); - hubConnection.stop().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.stop().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.DISCONNECTED, hubConnection.getConnectionState()); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); - hubConnection.stop().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.stop().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.DISCONNECTED, hubConnection.getConnectionState()); } @@ -3794,7 +3794,7 @@ public void non200FromNegotiateThrowsError() { .build(); RuntimeException exception = assertThrows(RuntimeException.class, - () -> hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait()); + () -> hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait()); assertEquals("Unexpected status code returned from negotiate: 500 Internal server error.", exception.getMessage()); } @@ -3803,7 +3803,7 @@ public void hubConnectionCloseCallsStop() { MockTransport mockTransport = new MockTransport(); TestHttpClient client = new TestHttpClient() .on("POST", "http://example.com/negotiate?negotiateVersion=1", (req) -> Single.just(new HttpResponse(200, "", TestUtils.stringToByteBuffer("{\"url\":\"http://testexample.com/\"}")))) - .on("POST", "http://testexample.com/negotiate?negotiateVersion=1", (req) -> Single.just(new HttpResponse(200, "", + .on("POST", "http://testexample.com/negotiate?negotiateVersion=1", (req) -> Single.just(new HttpResponse(200, "", TestUtils.stringToByteBuffer("{\"connectionId\":\"bVOiRPG8-6YiJ6d7ZcTOVQ\",\"availableTransports\":[{\"transport\":\"WebSockets\",\"transferFormats\":[\"Text\",\"Binary\"]}]}")))); CompletableSubject close = CompletableSubject.create(); @@ -3817,10 +3817,10 @@ public void hubConnectionCloseCallsStop() { hubConnection.onClosed(e -> { close.onComplete(); }); - hubConnection.start().timeout(1, TimeUnit.SECONDS).blockingAwait(); + hubConnection.start().timeout(30, TimeUnit.SECONDS).blockingAwait(); assertEquals(HubConnectionState.CONNECTED, hubConnection.getConnectionState()); } - close.timeout(1, TimeUnit.SECONDS).blockingGet(); + close.timeout(30, TimeUnit.SECONDS).blockingGet(); } } diff --git a/src/SignalR/clients/java/signalr/test/src/main/java/com/microsoft/signalr/LongPollingTransportTest.java b/src/SignalR/clients/java/signalr/test/src/main/java/com/microsoft/signalr/LongPollingTransportTest.java index 6ee518d41565..f4dda53cf346 100644 --- a/src/SignalR/clients/java/signalr/test/src/main/java/com/microsoft/signalr/LongPollingTransportTest.java +++ b/src/SignalR/clients/java/signalr/test/src/main/java/com/microsoft/signalr/LongPollingTransportTest.java @@ -27,7 +27,7 @@ public void LongPollingFailsToConnectWith404Response() { Map headers = new HashMap<>(); LongPollingTransport transport = new LongPollingTransport(headers, client, Single.just("")); - Throwable exception = assertThrows(RuntimeException.class, () -> transport.start("http://example.com").timeout(1, TimeUnit.SECONDS).blockingAwait()); + Throwable exception = assertThrows(RuntimeException.class, () -> transport.start("http://example.com").timeout(30, TimeUnit.SECONDS).blockingAwait()); assertEquals(Exception.class, exception.getCause().getClass()); assertEquals("Failed to connect.", exception.getCause().getMessage()); assertFalse(transport.isActive()); @@ -41,7 +41,7 @@ public void LongPollingTransportCantSendBeforeStart() { Map headers = new HashMap<>(); LongPollingTransport transport = new LongPollingTransport(headers, client, Single.just("")); ByteBuffer sendBuffer = TestUtils.stringToByteBuffer("First"); - Throwable exception = assertThrows(RuntimeException.class, () -> transport.send(sendBuffer).timeout(1, TimeUnit.SECONDS).blockingAwait()); + Throwable exception = assertThrows(RuntimeException.class, () -> transport.send(sendBuffer).timeout(30, TimeUnit.SECONDS).blockingAwait()); assertEquals(Exception.class, exception.getCause().getClass()); assertEquals("Cannot send unless the transport is active.", exception.getCause().getMessage()); assertFalse(transport.isActive()); @@ -69,7 +69,7 @@ public void StatusCode204StopsLongPollingTriggersOnClosed() { }); assertFalse(onClosedRan.get()); - transport.start("http://example.com").timeout(1, TimeUnit.SECONDS).blockingAwait(); + transport.start("http://example.com").timeout(30, TimeUnit.SECONDS).blockingAwait(); assertTrue(block.blockingAwait(1, TimeUnit.SECONDS)); assertTrue(onClosedRan.get()); assertFalse(transport.isActive()); @@ -98,7 +98,7 @@ public void LongPollingFailsWhenReceivingUnexpectedErrorCode() { blocker.onComplete(); }); - transport.start("http://example.com").timeout(1, TimeUnit.SECONDS).blockingAwait(); + transport.start("http://example.com").timeout(30, TimeUnit.SECONDS).blockingAwait(); assertTrue(blocker.blockingAwait(1, TimeUnit.SECONDS)); assertFalse(transport.isActive()); assertTrue(onClosedRan.get()); @@ -155,7 +155,7 @@ public void LongPollingTransportOnReceiveGetsCalled() { transport.setOnClose((error) -> {}); - transport.start("http://example.com").timeout(1, TimeUnit.SECONDS).blockingAwait(); + transport.start("http://example.com").timeout(30, TimeUnit.SECONDS).blockingAwait(); assertTrue(block.blockingAwait(1,TimeUnit.SECONDS)); assertTrue(onReceiveCalled.get()); assertEquals("TEST", message.get()); @@ -200,7 +200,7 @@ public void LongPollingTransportOnReceiveGetsCalledMultipleTimes() { transport.setOnClose((error) -> {}); - transport.start("http://example.com").timeout(1, TimeUnit.SECONDS).blockingAwait(); + transport.start("http://example.com").timeout(30, TimeUnit.SECONDS).blockingAwait(); assertTrue(blocker.blockingAwait(1, TimeUnit.SECONDS)); assertTrue(onReceiveCalled.get()); assertEquals("FIRSTSECONDTHIRD", message.get()); @@ -230,7 +230,7 @@ public void LongPollingTransportSendsHeaders() { LongPollingTransport transport = new LongPollingTransport(headers, client, Single.just("")); transport.setOnClose((error) -> {}); - transport.start("http://example.com").timeout(1, TimeUnit.SECONDS).blockingAwait(); + transport.start("http://example.com").timeout(30, TimeUnit.SECONDS).blockingAwait(); ByteBuffer sendBuffer = TestUtils.stringToByteBuffer("TEST"); assertTrue(transport.send(sendBuffer).blockingAwait(1, TimeUnit.SECONDS)); close.onComplete(); @@ -262,7 +262,7 @@ public void LongPollingTransportSetsAuthorizationHeader() { LongPollingTransport transport = new LongPollingTransport(headers, client, tokenProvider); transport.setOnClose((error) -> {}); - transport.start("http://example.com").timeout(1, TimeUnit.SECONDS).blockingAwait(); + transport.start("http://example.com").timeout(30, TimeUnit.SECONDS).blockingAwait(); ByteBuffer sendBuffer = TestUtils.stringToByteBuffer("TEST"); assertTrue(transport.send(sendBuffer).blockingAwait(1, TimeUnit.SECONDS)); assertEquals(headerValue.get(), "Bearer TOKEN"); @@ -298,7 +298,7 @@ public void LongPollingTransportRunsAccessTokenProviderEveryRequest() { LongPollingTransport transport = new LongPollingTransport(headers, client, tokenProvider); transport.setOnClose((error) -> {}); - transport.start("http://example.com").timeout(1, TimeUnit.SECONDS).blockingAwait(); + transport.start("http://example.com").timeout(30, TimeUnit.SECONDS).blockingAwait(); secondGet.blockingAwait(1, TimeUnit.SECONDS); ByteBuffer sendBuffer = TestUtils.stringToByteBuffer("TEST"); assertTrue(transport.send(sendBuffer).blockingAwait(1, TimeUnit.SECONDS)); @@ -333,7 +333,7 @@ public void After204StopDoesNotTriggerOnCloseAgain() { }); assertFalse(onClosedRan.get()); - transport.start("http://example.com").timeout(1, TimeUnit.SECONDS).blockingAwait(); + transport.start("http://example.com").timeout(30, TimeUnit.SECONDS).blockingAwait(); assertTrue(block.blockingAwait(1, TimeUnit.SECONDS)); assertEquals(1, onCloseCount.get()); assertTrue(onClosedRan.get()); @@ -371,7 +371,7 @@ public void StoppingTransportRunsCloseHandlersOnce() { }); assertEquals(0, onCloseCount.get()); - transport.start("http://example.com").timeout(1, TimeUnit.SECONDS).blockingAwait(); + transport.start("http://example.com").timeout(30, TimeUnit.SECONDS).blockingAwait(); assertTrue(transport.stop().blockingAwait(1, TimeUnit.SECONDS)); assertEquals(1, onCloseCount.get()); assertFalse(transport.isActive()); From 12f92dbc8ca7c5003b943f07e7727c5faea1bb7d Mon Sep 17 00:00:00 2001 From: Doug Bunting <6431421+dougbu@users.noreply.github.com> Date: Wed, 9 Sep 2020 11:58:05 -0700 Subject: [PATCH 39/45] Eliminate duplicates in Helix `TestRunner` (#25663) * Eliminate duplicates in Helix `TestRunner` - do not add source that's already in NuGet.config - configuration file now part of Helix content - do not re-set an env variable that's set in `runtests.*` nit: simplify `%Path% setting in runtests.cmd - always quote the value - but, keep the `SETLOCAL` command - don't pollute environment on Helix agents * Remove `--source` options we don't need anymore from `runtests.*` - nit: add `--no-restore` to `dotnet run` command after `dotnet restore` * Add `--arch arm64` to ARM64 `restore` build steps - #25397 - was restoring for the wrong architecture nit: add `--no-restore` to Helix project build steps - already restored --- .azure/pipelines/helix-matrix.yml | 6 +++--- .azure/pipelines/quarantined-tests.yml | 8 ++++---- eng/helix/content/RunTests/TestRunner.cs | 16 +++------------- eng/helix/content/runtests.cmd | 15 +++++++-------- eng/helix/content/runtests.sh | 10 ++++++---- 5 files changed, 23 insertions(+), 32 deletions(-) diff --git a/.azure/pipelines/helix-matrix.yml b/.azure/pipelines/helix-matrix.yml index 5210cce65c4b..6e491364008b 100644 --- a/.azure/pipelines/helix-matrix.yml +++ b/.azure/pipelines/helix-matrix.yml @@ -50,10 +50,10 @@ jobs: agentOs: Linux timeoutInMinutes: 480 steps: - - script: ./restore.sh -ci -nobl + - script: ./restore.sh --ci --nobl --arch arm64 displayName: Restore - - script: ./build.sh --ci --nobl --noBuildRepoTasks --arch arm64 -test --no-build-nodejs --all --projects - $(Build.SourcesDirectory)/eng/helix/helix.proj /p:IsHelixJob=true /p:IsHelixDaily=true + - script: ./build.sh --ci --nobl --arch arm64 --noBuildRepoTasks --no-build-nodejs --no-restore --test --all + --projects $(Build.SourcesDirectory)/eng/helix/helix.proj /p:IsHelixJob=true /p:IsHelixDaily=true /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log displayName: Run build.sh helix arm64 target env: diff --git a/.azure/pipelines/quarantined-tests.yml b/.azure/pipelines/quarantined-tests.yml index dec9d844d24d..86a21a3dd8b9 100644 --- a/.azure/pipelines/quarantined-tests.yml +++ b/.azure/pipelines/quarantined-tests.yml @@ -53,11 +53,11 @@ jobs: agentOs: Linux timeoutInMinutes: 480 steps: - - script: ./restore.sh -ci -nobl + - script: ./restore.sh --ci --nobl --arch arm64 displayName: Restore - - script: ./build.sh --ci --nobl --noBuildRepoTasks --arch arm64 -test --no-build-nodejs --all --projects - $(Build.SourcesDirectory)/eng/helix/helix.proj /p:IsHelixJob=true /p:IsHelixDaily=true /p:RunQuarantinedTests=true - /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log + - script: ./build.sh --ci --nobl --arch arm64 --noBuildRepoTasks --no-build-nodejs --no-restore --test --all + --projects $(Build.SourcesDirectory)/eng/helix/helix.proj /p:IsHelixJob=true /p:IsHelixDaily=true + /p:RunQuarantinedTests=true /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log displayName: Run build.sh helix arm64 target continueOnError: true env: diff --git a/eng/helix/content/RunTests/TestRunner.cs b/eng/helix/content/RunTests/TestRunner.cs index 4eb8c903e2c5..f99c2769f0e2 100644 --- a/eng/helix/content/RunTests/TestRunner.cs +++ b/eng/helix/content/RunTests/TestRunner.cs @@ -34,7 +34,6 @@ public bool SetupEnvironment() } EnvironmentVariables.Add("PATH", Options.Path); - EnvironmentVariables.Add("DOTNET_ROOT", Options.DotnetRoot); EnvironmentVariables.Add("helix", Options.HelixQueue); Console.WriteLine($"Current Directory: {Options.HELIX_WORKITEM_ROOT}"); @@ -126,14 +125,6 @@ await ProcessUtil.RunAsync($"{Options.DotnetRoot}/dotnet", throwOnError: false, cancellationToken: new CancellationTokenSource(TimeSpan.FromMinutes(2)).Token); - await ProcessUtil.RunAsync($"{Options.DotnetRoot}/dotnet", - "nuget add source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet5/nuget/v3/index.json --configfile NuGet.config", - environmentVariables: EnvironmentVariables, - outputDataReceived: Console.WriteLine, - errorDataReceived: Console.Error.WriteLine, - throwOnError: false, - cancellationToken: new CancellationTokenSource(TimeSpan.FromMinutes(2)).Token); - // Write nuget sources to console, useful for debugging purposes await ProcessUtil.RunAsync($"{Options.DotnetRoot}/dotnet", "nuget list source", @@ -199,8 +190,7 @@ public async Task InstallDotnetDump() try { await ProcessUtil.RunAsync($"{Options.DotnetRoot}/dotnet", - $"tool install dotnet-dump --tool-path {Options.HELIX_WORKITEM_ROOT} " + - "--version 5.0.0-* --add-source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet5/nuget/v3/index.json", + $"tool install dotnet-dump --tool-path {Options.HELIX_WORKITEM_ROOT} --version 5.0.0-*", environmentVariables: EnvironmentVariables, outputDataReceived: Console.WriteLine, errorDataReceived: Console.Error.WriteLine, @@ -247,7 +237,7 @@ public async Task RunTestsAsync() { // Timeout test run 5 minutes before the Helix job would timeout var cts = new CancellationTokenSource(Options.Timeout.Subtract(TimeSpan.FromMinutes(5))); - var commonTestArgs = $"test {Options.Target} --logger:xunit --logger:\"console;verbosity=normal\" --blame \"CollectHangDump;TestTimeout=5m\""; + var commonTestArgs = $"test {Options.Target} --logger:xunit --logger:\"console;verbosity=normal\" --blame \"CollectHangDump;TestTimeout=5m\""; if (Options.Quarantined) { Console.WriteLine("Running quarantined tests."); @@ -346,7 +336,7 @@ public void UploadResults() else { Console.WriteLine("No dmps found in TestResults"); - } + } } } } diff --git a/eng/helix/content/runtests.cmd b/eng/helix/content/runtests.cmd index 4dca87d067d3..1016d25aad8f 100644 --- a/eng/helix/content/runtests.cmd +++ b/eng/helix/content/runtests.cmd @@ -1,6 +1,5 @@ @echo off -REM Need delayed expansion !PATH! so parens in the path don't mess up the parens for the if statements that use parens for blocks -setlocal enabledelayedexpansion +SETLOCAL REM Use '$' as a variable name prefix to avoid MSBuild variable collisions with these variables set $target=%1 @@ -26,8 +25,8 @@ set DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 set DOTNET_MULTILEVEL_LOOKUP=0 set DOTNET_CLI_HOME=%HELIX_CORRELATION_PAYLOAD%\home -set PATH=%DOTNET_ROOT%;!PATH!;%HELIX_CORRELATION_PAYLOAD%\node\bin -echo Set path to: %PATH% +set "PATH=%DOTNET_ROOT%;%PATH%;%HELIX_CORRELATION_PAYLOAD%\node\bin" +echo Set path to: "%PATH%" powershell.exe -noLogo -NoProfile -ExecutionPolicy unrestricted -command ". eng\common\tools.ps1; InstallDotNet %DOTNET_ROOT% %$sdkVersion% %$arch% '' $true '' '' $true" IF [%$feedCred%] == [] ( @@ -38,11 +37,11 @@ IF [%$feedCred%] == [] ( set exit_code=0 -echo "Restore: dotnet restore RunTests\RunTests.csproj --source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet5/nuget/v3/index.json --source https://api.nuget.org/v3/index.json --ignore-failed-sources..." -dotnet restore RunTests\RunTests.csproj --source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet5/nuget/v3/index.json --source https://api.nuget.org/v3/index.json --ignore-failed-sources +echo "Restore: dotnet restore RunTests\RunTests.csproj --ignore-failed-sources" +dotnet restore RunTests\RunTests.csproj --ignore-failed-sources -echo "Running tests: dotnet run --project RunTests\RunTests.csproj -- --target %$target% --runtime %$aspRuntimeVersion% --queue %$queue% --arch %$arch% --quarantined %$quarantined% --ef %$ef% --aspnetruntime %$aspnetruntime% --aspnetref %$aspnetref% --helixTimeout %$helixTimeout%..." -dotnet run --project RunTests\RunTests.csproj -- --target %$target% --runtime %$aspRuntimeVersion% --queue %$queue% --arch %$arch% --quarantined %$quarantined% --ef %$ef% --aspnetruntime %$aspnetruntime% --aspnetref %$aspnetref% --helixTimeout %$helixTimeout% +echo "Running tests: dotnet run --no-restore --project RunTests\RunTests.csproj -- --target %$target% --runtime %$aspRuntimeVersion% --queue %$queue% --arch %$arch% --quarantined %$quarantined% --ef %$ef% --aspnetruntime %$aspnetruntime% --aspnetref %$aspnetref% --helixTimeout %$helixTimeout%" +dotnet run --no-restore --project RunTests\RunTests.csproj -- --target %$target% --runtime %$aspRuntimeVersion% --queue %$queue% --arch %$arch% --quarantined %$quarantined% --ef %$ef% --aspnetruntime %$aspnetruntime% --aspnetref %$aspnetref% --helixTimeout %$helixTimeout% if errorlevel neq 0 ( set exit_code=%errorlevel% ) diff --git a/eng/helix/content/runtests.sh b/eng/helix/content/runtests.sh index ecc58322fe5a..713f51cab90f 100644 --- a/eng/helix/content/runtests.sh +++ b/eng/helix/content/runtests.sh @@ -61,10 +61,12 @@ fi sync exit_code=0 -echo "Restore: $DOTNET_ROOT/dotnet restore RunTests/RunTests.csproj --source https://api.nuget.org/v3/index.json --ignore-failed-sources..." -$DOTNET_ROOT/dotnet restore RunTests/RunTests.csproj --source https://api.nuget.org/v3/index.json --ignore-failed-sources -echo "Running tests: $DOTNET_ROOT/dotnet run --project RunTests/RunTests.csproj -- --target $1 --runtime $4 --queue $5 --arch $6 --quarantined $7 --ef $8 --aspnetruntime $9 --aspnetref ${10} --helixTimeout ${11}" -$DOTNET_ROOT/dotnet run --project RunTests/RunTests.csproj -- --target $1 --runtime $4 --queue $5 --arch $6 --quarantined $7 --ef $8 --aspnetruntime $9 --aspnetref ${10} --helixTimeout ${11} + +echo "Restore: $DOTNET_ROOT/dotnet restore RunTests/RunTests.csproj --ignore-failed-sources" +$DOTNET_ROOT/dotnet restore RunTests/RunTests.csproj --ignore-failed-sources + +echo "Running tests: $DOTNET_ROOT/dotnet run --no-restore --project RunTests/RunTests.csproj -- --target $1 --runtime $4 --queue $5 --arch $6 --quarantined $7 --ef $8 --aspnetruntime $9 --aspnetref ${10} --helixTimeout ${11}" +$DOTNET_ROOT/dotnet run --no-restore --project RunTests/RunTests.csproj -- --target $1 --runtime $4 --queue $5 --arch $6 --quarantined $7 --ef $8 --aspnetruntime $9 --aspnetref ${10} --helixTimeout ${11} exit_code=$? echo "Finished tests...exit_code=$exit_code" From 43ef580773faad13601e032ded645db9f487599e Mon Sep 17 00:00:00 2001 From: Mackinnon Buck Date: Wed, 9 Sep 2020 13:30:13 -0700 Subject: [PATCH 40/45] Fixed content type issue (#25702) --- .../Web.JS/dist/Release/blazor.server.js | 2 +- .../Web.JS/dist/Release/blazor.webassembly.js | 2 +- src/Components/Web.JS/src/InputFile.ts | 6 ++--- .../test/E2ETest/Tests/InputFileTest.cs | 26 ++++++++++++++++--- .../FormsTest/InputFileComponent.razor | 8 +++--- 5 files changed, 32 insertions(+), 12 deletions(-) diff --git a/src/Components/Web.JS/dist/Release/blazor.server.js b/src/Components/Web.JS/dist/Release/blazor.server.js index 57c2416673ec..2884e50021ec 100644 --- a/src/Components/Web.JS/dist/Release/blazor.server.js +++ b/src/Components/Web.JS/dist/Release/blazor.server.js @@ -5,7 +5,7 @@ * @author Feross Aboukhadijeh * @license MIT */ -var r=n(54),o=n(55),i=n(56);function a(){return c.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function s(e,t){if(a()=a())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a().toString(16)+" bytes");return 0|e}function d(e,t){if(c.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var n=e.length;if(0===n)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return F(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return H(e).length;default:if(r)return F(e).length;t=(""+t).toLowerCase(),r=!0}}function g(e,t,n){var r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return O(this,t,n);case"utf8":case"utf-8":return k(this,t,n);case"ascii":return T(this,t,n);case"latin1":case"binary":return P(this,t,n);case"base64":return C(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return R(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function y(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function v(e,t,n,r,o){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=o?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(o)return-1;n=e.length-1}else if(n<0){if(!o)return-1;n=0}if("string"==typeof t&&(t=c.from(t,r)),c.isBuffer(t))return 0===t.length?-1:b(e,t,n,r,o);if("number"==typeof t)return t&=255,c.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?o?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):b(e,[t],n,r,o);throw new TypeError("val must be string, number or Buffer")}function b(e,t,n,r,o){var i,a=1,s=e.length,c=t.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;a=2,s/=2,c/=2,n/=2}function u(e,t){return 1===a?e[t]:e.readUInt16BE(t*a)}if(o){var l=-1;for(i=n;is&&(n=s-c),i=n;i>=0;i--){for(var f=!0,h=0;ho&&(r=o):r=o;var i=t.length;if(i%2!=0)throw new TypeError("Invalid hex string");r>i/2&&(r=i/2);for(var a=0;a>8,o=n%256,i.push(o),i.push(r);return i}(t,e.length-n),e,n,r)}function C(e,t,n){return 0===t&&n===e.length?r.fromByteArray(e):r.fromByteArray(e.slice(t,n))}function k(e,t,n){n=Math.min(e.length,n);for(var r=[],o=t;o239?4:u>223?3:u>191?2:1;if(o+f<=n)switch(f){case 1:u<128&&(l=u);break;case 2:128==(192&(i=e[o+1]))&&(c=(31&u)<<6|63&i)>127&&(l=c);break;case 3:i=e[o+1],a=e[o+2],128==(192&i)&&128==(192&a)&&(c=(15&u)<<12|(63&i)<<6|63&a)>2047&&(c<55296||c>57343)&&(l=c);break;case 4:i=e[o+1],a=e[o+2],s=e[o+3],128==(192&i)&&128==(192&a)&&128==(192&s)&&(c=(15&u)<<18|(63&i)<<12|(63&a)<<6|63&s)>65535&&c<1114112&&(l=c)}null===l?(l=65533,f=1):l>65535&&(l-=65536,r.push(l>>>10&1023|55296),l=56320|1023&l),r.push(l),o+=f}return function(e){var t=e.length;if(t<=4096)return String.fromCharCode.apply(String,e);var n="",r=0;for(;r0&&(e=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(e+=" ... ")),""},c.prototype.compare=function(e,t,n,r,o){if(!c.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===o&&(o=this.length),t<0||n>e.length||r<0||o>this.length)throw new RangeError("out of range index");if(r>=o&&t>=n)return 0;if(r>=o)return-1;if(t>=n)return 1;if(this===e)return 0;for(var i=(o>>>=0)-(r>>>=0),a=(n>>>=0)-(t>>>=0),s=Math.min(i,a),u=this.slice(r,o),l=e.slice(t,n),f=0;fo)&&(n=o),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var i=!1;;)switch(r){case"hex":return m(this,e,t,n);case"utf8":case"utf-8":return w(this,e,t,n);case"ascii":return E(this,e,t,n);case"latin1":case"binary":return S(this,e,t,n);case"base64":return _(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return I(this,e,t,n);default:if(i)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),i=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function T(e,t,n){var r="";n=Math.min(e.length,n);for(var o=t;or)&&(n=r);for(var o="",i=t;in)throw new RangeError("Trying to access beyond buffer length")}function D(e,t,n,r,o,i){if(!c.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>o||te.length)throw new RangeError("Index out of range")}function A(e,t,n,r){t<0&&(t=65535+t+1);for(var o=0,i=Math.min(e.length-n,2);o>>8*(r?o:1-o)}function M(e,t,n,r){t<0&&(t=4294967295+t+1);for(var o=0,i=Math.min(e.length-n,4);o>>8*(r?o:3-o)&255}function L(e,t,n,r,o,i){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function j(e,t,n,r,i){return i||L(e,0,n,4),o.write(e,t,n,r,23,4),n+4}function B(e,t,n,r,i){return i||L(e,0,n,8),o.write(e,t,n,r,52,8),n+8}c.prototype.slice=function(e,t){var n,r=this.length;if((e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t0&&(o*=256);)r+=this[e+--t]*o;return r},c.prototype.readUInt8=function(e,t){return t||x(e,1,this.length),this[e]},c.prototype.readUInt16LE=function(e,t){return t||x(e,2,this.length),this[e]|this[e+1]<<8},c.prototype.readUInt16BE=function(e,t){return t||x(e,2,this.length),this[e]<<8|this[e+1]},c.prototype.readUInt32LE=function(e,t){return t||x(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},c.prototype.readUInt32BE=function(e,t){return t||x(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},c.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||x(e,t,this.length);for(var r=this[e],o=1,i=0;++i=(o*=128)&&(r-=Math.pow(2,8*t)),r},c.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||x(e,t,this.length);for(var r=t,o=1,i=this[e+--r];r>0&&(o*=256);)i+=this[e+--r]*o;return i>=(o*=128)&&(i-=Math.pow(2,8*t)),i},c.prototype.readInt8=function(e,t){return t||x(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},c.prototype.readInt16LE=function(e,t){t||x(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},c.prototype.readInt16BE=function(e,t){t||x(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},c.prototype.readInt32LE=function(e,t){return t||x(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},c.prototype.readInt32BE=function(e,t){return t||x(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},c.prototype.readFloatLE=function(e,t){return t||x(e,4,this.length),o.read(this,e,!0,23,4)},c.prototype.readFloatBE=function(e,t){return t||x(e,4,this.length),o.read(this,e,!1,23,4)},c.prototype.readDoubleLE=function(e,t){return t||x(e,8,this.length),o.read(this,e,!0,52,8)},c.prototype.readDoubleBE=function(e,t){return t||x(e,8,this.length),o.read(this,e,!1,52,8)},c.prototype.writeUIntLE=function(e,t,n,r){(e=+e,t|=0,n|=0,r)||D(this,e,t,n,Math.pow(2,8*n)-1,0);var o=1,i=0;for(this[t]=255&e;++i=0&&(i*=256);)this[t+o]=e/i&255;return t+n},c.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||D(this,e,t,1,255,0),c.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},c.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||D(this,e,t,2,65535,0),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):A(this,e,t,!0),t+2},c.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||D(this,e,t,2,65535,0),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):A(this,e,t,!1),t+2},c.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||D(this,e,t,4,4294967295,0),c.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):M(this,e,t,!0),t+4},c.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||D(this,e,t,4,4294967295,0),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):M(this,e,t,!1),t+4},c.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t|=0,!r){var o=Math.pow(2,8*n-1);D(this,e,t,n,o-1,-o)}var i=0,a=1,s=0;for(this[t]=255&e;++i>0)-s&255;return t+n},c.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t|=0,!r){var o=Math.pow(2,8*n-1);D(this,e,t,n,o-1,-o)}var i=n-1,a=1,s=0;for(this[t+i]=255&e;--i>=0&&(a*=256);)e<0&&0===s&&0!==this[t+i+1]&&(s=1),this[t+i]=(e/a>>0)-s&255;return t+n},c.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||D(this,e,t,1,127,-128),c.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},c.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||D(this,e,t,2,32767,-32768),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):A(this,e,t,!0),t+2},c.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||D(this,e,t,2,32767,-32768),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):A(this,e,t,!1),t+2},c.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||D(this,e,t,4,2147483647,-2147483648),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):M(this,e,t,!0),t+4},c.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||D(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):M(this,e,t,!1),t+4},c.prototype.writeFloatLE=function(e,t,n){return j(this,e,t,!0,n)},c.prototype.writeFloatBE=function(e,t,n){return j(this,e,t,!1,n)},c.prototype.writeDoubleLE=function(e,t,n){return B(this,e,t,!0,n)},c.prototype.writeDoubleBE=function(e,t,n){return B(this,e,t,!1,n)},c.prototype.copy=function(e,t,n,r){if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t=0;--o)e[o+t]=this[o+n];else if(i<1e3||!c.TYPED_ARRAY_SUPPORT)for(o=0;o>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(i=t;i55295&&n<57344){if(!o){if(n>56319){(t-=3)>-1&&i.push(239,191,189);continue}if(a+1===r){(t-=3)>-1&&i.push(239,191,189);continue}o=n;continue}if(n<56320){(t-=3)>-1&&i.push(239,191,189),o=n;continue}n=65536+(o-55296<<10|n-56320)}else o&&(t-=3)>-1&&i.push(239,191,189);if(o=null,n<128){if((t-=1)<0)break;i.push(n)}else if(n<2048){if((t-=2)<0)break;i.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;i.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;i.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return i}function H(e){return r.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(N,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function W(e,t,n,r){for(var o=0;o=t.length||o>=e.length);++o)t[o+n]=e[o];return o}}).call(this,n(8))},function(e,t,n){"use strict";var r=n(14).Buffer,o=n(57),i=n(22),a=n(70),s=n(73),c=n(74);e.exports=function(e){var t=[],n=[];return{encode:c(t,(e=e||{forceFloat64:!1,compatibilityMode:!1,disableTimestampEncoding:!1}).forceFloat64,e.compatibilityMode,e.disableTimestampEncoding),decode:s(n),register:function(e,t,n,a){return o(t,"must have a constructor"),o(n,"must have an encode function"),o(e>=0,"must have a non-negative type"),o(a,"must have a decode function"),this.registerEncoder((function(e){return e instanceof t}),(function(t){var o=i(),a=r.allocUnsafe(1);return a.writeInt8(e,0),o.append(a),o.append(n(t)),o})),this.registerDecoder(e,a),this},registerEncoder:function(e,n){return o(e,"must have an encode function"),o(n,"must have an encode function"),t.push({check:e,encode:n}),this},registerDecoder:function(e,t){return o(e>=0,"must have a non-negative type"),o(t,"must have a decode function"),n.push({type:e,decode:t}),this},encoder:a.encoder,decoder:a.decoder,buffer:!0,type:"msgpack5",IncompleteBufferError:s.IncompleteBufferError}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n(25),n(17);var r=n(26),o=n(7),i={},a=!1;function s(e,t,n){var o=i[e];o||(o=i[e]=new r.BrowserRenderer(e)),o.attachRootComponentToLogicalElement(n,t)}t.attachRootComponentToLogicalElement=s,t.attachRootComponentToElement=function(e,t,n){var r=document.querySelector(e);if(!r)throw new Error("Could not find any element matching selector '"+e+"'.");s(n||0,o.toLogicalElement(r,!0),t)},t.getRendererer=function(e){return i[e]},t.renderBatch=function(e,t){var n=i[e];if(!n)throw new Error("There is no browser renderer with ID "+e+".");for(var r=t.arrayRangeReader,o=t.updatedComponents(),s=r.values(o),c=r.count(o),u=t.referenceFrames(),l=r.values(u),f=t.diffReader,h=0;h1)for(var n=1;n0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]>2]}t.monoPlatform={start:function(e){return new Promise((function(t,n){var u,l;s.attachDebuggerHotkey(e),window.Browser={init:function(){}},u=function(){window.Module=function(e,t,n){var u=this,l=e.bootConfig.resources,f=window.Module||{},h=["DEBUGGING ENABLED"];f.print=function(e){return h.indexOf(e)<0&&console.log(e)},f.printErr=function(e){console.error(e),c.showErrorNotification()},f.preRun=f.preRun||[],f.postRun=f.postRun||[],f.preloadPlugins=[];var d,b,m=e.loadResources(l.assembly,(function(e){return"_framework/"+e}),"assembly"),w=e.loadResources(l.pdb||{},(function(e){return"_framework/"+e}),"pdb"),E=e.loadResource("dotnet.wasm","_framework/dotnet.wasm",e.bootConfig.resources.runtime["dotnet.wasm"],"dotnetwasm");return e.bootConfig.resources.runtime.hasOwnProperty("dotnet.timezones.blat")&&(d=e.loadResource("dotnet.timezones.blat","_framework/dotnet.timezones.blat",e.bootConfig.resources.runtime["dotnet.timezones.blat"],"globalization")),e.bootConfig.resources.runtime.hasOwnProperty("icudt.dat")&&(b=e.loadResource("icudt.dat","_framework/icudt.dat",e.bootConfig.resources.runtime["icudt.dat"],"globalization")),f.instantiateWasm=function(e,t){return r(u,void 0,void 0,(function(){var n,r;return o(this,(function(o){switch(o.label){case 0:return o.trys.push([0,3,,4]),[4,E];case 1:return[4,y(o.sent(),e)];case 2:return n=o.sent(),[3,4];case 3:throw r=o.sent(),f.printErr(r),r;case 4:return t(n),[2]}}))})),[]},f.preRun.push((function(){i=cwrap("mono_wasm_add_assembly",null,["string","number","number"]),MONO.loaded_files=[],d&&function(e){r(this,void 0,void 0,(function(){var t,n;return o(this,(function(r){switch(r.label){case 0:return t="blazor:timezonedata",addRunDependency(t),[4,e.response];case 1:return[4,r.sent().arrayBuffer()];case 2:return n=r.sent(),Module.FS_createPath("/","usr",!0,!0),Module.FS_createPath("/usr/","share",!0,!0),Module.FS_createPath("/usr/share/","zoneinfo",!0,!0),MONO.mono_wasm_load_data_archive(new Uint8Array(n),"/usr/share/zoneinfo/"),removeRunDependency(t),[2]}}))}))}(d),b?function(e){r(this,void 0,void 0,(function(){var t,n,r,i,a;return o(this,(function(o){switch(o.label){case 0:return t="blazor:icudata",addRunDependency(t),[4,e.response];case 1:return n=o.sent(),i=Uint8Array.bind,[4,n.arrayBuffer()];case 2:if(r=new(i.apply(Uint8Array,[void 0,o.sent()])),a=MONO.mono_wasm_load_bytes_into_heap(r),!MONO.mono_wasm_load_icu_data(a))throw new Error("Error loading ICU asset.");return removeRunDependency(t),[2]}}))}))}(b):MONO.mono_wasm_setenv("DOTNET_SYSTEM_GLOBALIZATION_INVARIANT","1"),m.forEach((function(e){return S(e,function(e,t){var n=e.lastIndexOf(".");if(n<0)throw new Error("No extension to replace in '"+e+"'");return e.substr(0,n)+t}(e.name,".dll"))})),w.forEach((function(e){return S(e,e.name)})),window.Blazor._internal.dotNetCriticalError=function(e){f.printErr(BINDING.conv_string(e)||"(null)")},window.Blazor._internal.getSatelliteAssemblies=function(t){var n=BINDING.mono_array_to_js_array(t),i=e.bootConfig.resources.satelliteResources;if(i){var a=Promise.all(n.filter((function(e){return i.hasOwnProperty(e)})).map((function(t){return e.loadResources(i[t],(function(e){return"_framework/"+e}),"assembly")})).reduce((function(e,t){return e.concat(t)}),new Array).map((function(e){return r(u,void 0,void 0,(function(){return o(this,(function(t){switch(t.label){case 0:return[4,e.response];case 1:return[2,t.sent().arrayBuffer()]}}))}))})));return BINDING.js_to_mono_obj(a.then((function(e){return e.length&&(window.Blazor._internal.readSatelliteAssemblies=function(){for(var t=BINDING.mono_obj_array_new(e.length),n=0;n>1];var n},readInt32Field:function(e,t){return h(e+(t||0))},readUint64Field:function(e,t){return function(e){var t=e>>2,n=Module.HEAPU32[t+1];if(n>l)throw new Error("Cannot read uint64 with high order part "+n+", because the result would exceed Number.MAX_SAFE_INTEGER.");return n*u+Module.HEAPU32[t]}(e+(t||0))},readFloatField:function(e,t){return n=e+(t||0),Module.HEAPF32[n>>2];var n},readObjectField:function(e,t){return h(e+(t||0))},readStringField:function(e,t,n){var r,o=h(e+(t||0));if(0===o)return null;if(n){var i=BINDING.unbox_mono_obj(o);return"boolean"==typeof i?i?"":null:i}return f?void 0===(r=f.stringCache.get(o))&&(r=BINDING.conv_string(o),f.stringCache.set(o,r)):r=BINDING.conv_string(o),r},readStructField:function(e,t){return e+(t||0)},beginHeapLock:function(){return v(),f=new b},invokeWhenHeapUnlocked:function(e){f?f.enqueuePostReleaseAction(e):e()}};var p=document.createElement("a");function d(e){return e+12}function g(e,t,n){var r="["+e+"] "+t+":"+n;return BINDING.bind_static_method(r)}function y(e,t){return r(this,void 0,void 0,(function(){var n,r;return o(this,(function(o){switch(o.label){case 0:if("function"!=typeof WebAssembly.instantiateStreaming)return[3,4];o.label=1;case 1:return o.trys.push([1,3,,4]),[4,WebAssembly.instantiateStreaming(e.response,t)];case 2:return[2,o.sent().instance];case 3:return n=o.sent(),console.info("Streaming compilation failed. Falling back to ArrayBuffer instantiation. ",n),[3,4];case 4:return[4,e.response.then((function(e){return e.arrayBuffer()}))];case 5:return r=o.sent(),[4,WebAssembly.instantiate(r,t)];case 6:return[2,o.sent().instance]}}))}))}function v(){if(f)throw new Error("Assertion failed - heap is currently locked")}var b=function(){function e(){this.stringCache=new Map}return e.prototype.enqueuePostReleaseAction=function(e){this.postReleaseActions||(this.postReleaseActions=[]),this.postReleaseActions.push(e)},e.prototype.release=function(){var e;if(f!==this)throw new Error("Trying to release a lock which isn't current");for(f=null;null===(e=this.postReleaseActions)||void 0===e?void 0:e.length;){this.postReleaseActions.shift()(),v()}},e}()},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{c(r.next(e))}catch(e){i(e)}}function s(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}c((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]this.length)&&(r=this.length),n>=this.length)return e||i.alloc(0);if(r<=0)return e||i.alloc(0);var o,a,s=!!e,c=this._offset(n),u=r-n,l=u,f=s&&t||0,h=c[1];if(0===n&&r==this.length){if(!s)return 1===this._bufs.length?this._bufs[0]:i.concat(this._bufs,this.length);for(a=0;a(o=this._bufs[a].length-h))){this._bufs[a].copy(e,f,h,h+l);break}this._bufs[a].copy(e,f,h),f+=o,l-=o,h&&(h=0)}return e},a.prototype.shallowSlice=function(e,t){e=e||0,t=t||this.length,e<0&&(e+=this.length),t<0&&(t+=this.length);var n=this._offset(e),r=this._offset(t),o=this._bufs.slice(n[0],r[0]+1);return 0==r[1]?o.pop():o[o.length-1]=o[o.length-1].slice(0,r[1]),0!=n[1]&&(o[0]=o[0].slice(n[1])),new a(o)},a.prototype.toString=function(e,t,n){return this.slice(t,n).toString(e)},a.prototype.consume=function(e){for(;this._bufs.length;){if(!(e>=this._bufs[0].length)){this._bufs[0]=this._bufs[0].slice(e),this.length-=e;break}e-=this._bufs[0].length,this.length-=this._bufs[0].length,this._bufs.shift()}return this},a.prototype.duplicate=function(){for(var e=0,t=new a;e0&&e.invokeMethodAsync("OnSpacerAfterVisible",r.boundingClientRect.bottom-r.intersectionRect.bottom,a,s)}}))}),{root:i,rootMargin:o+"px"});a.observe(t),a.observe(n);var s=u(t),c=u(n);function u(e){var t=new MutationObserver((function(){a.unobserve(e),a.observe(e)}));return t.observe(e,{attributes:!0}),t}r[e._id]={intersectionObserver:a,mutationObserverBefore:s,mutationObserverAfter:c}},dispose:function(e){var t=r[e._id];t&&(t.intersectionObserver.disconnect(),t.mutationObserverBefore.disconnect(),t.mutationObserverAfter.disconnect(),e.dispose(),delete r[e._id])}};var r={}},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{c(r.next(e))}catch(e){i(e)}}function s(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}c((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1].*)$/;function i(e,t){var n=e.currentElement;if(n&&n.nodeType===Node.COMMENT_NODE&&n.textContent){var r=new RegExp(o).exec(n.textContent),i=r&&r.groups&&r.groups.descriptor;if(!i)return;try{var s=function(e){var t=JSON.parse(e),n=t.type;if("server"!==n&&"webassembly"!==n)throw new Error("Invalid component type '"+n+"'.");return t}(i);switch(t){case"webassembly":return function(e,t,n){var r=e.type,o=e.assembly,i=e.typeName,s=e.parameterDefinitions,c=e.parameterValues,u=e.prerenderId;if("webassembly"!==r)return;if(!o)throw new Error("assembly must be defined when using a descriptor.");if(!i)throw new Error("typeName must be defined when using a descriptor.");if(u){var l=a(u,n);if(!l)throw new Error("Could not find an end component comment for '"+t+"'");return{type:r,assembly:o,typeName:i,parameterDefinitions:s&&atob(s),parameterValues:c&&atob(c),start:t,prerenderId:u,end:l}}return{type:r,assembly:o,typeName:i,parameterDefinitions:s&&atob(s),parameterValues:c&&atob(c),start:t}}(s,n,e);case"server":return function(e,t,n){var r=e.type,o=e.descriptor,i=e.sequence,s=e.prerenderId;if("server"!==r)return;if(!o)throw new Error("descriptor must be defined when using a descriptor.");if(void 0===i)throw new Error("sequence must be defined when using a descriptor.");if(!Number.isInteger(i))throw new Error("Error parsing the sequence '"+i+"' for component '"+JSON.stringify(e)+"'");if(s){var c=a(s,n);if(!c)throw new Error("Could not find an end component comment for '"+t+"'");return{type:r,sequence:i,descriptor:o,start:t,prerenderId:s,end:c}}return{type:r,sequence:i,descriptor:o,start:t}}(s,n,e)}}catch(e){throw new Error("Found malformed component comment at "+n.textContent)}}}function a(e,t){for(;t.next()&&t.currentElement;){var n=t.currentElement;if(n.nodeType===Node.COMMENT_NODE&&n.textContent){var r=new RegExp(o).exec(n.textContent),i=r&&r[1];if(i)return s(i,e),n}}}function s(e,t){var n=JSON.parse(e);if(1!==Object.keys(n).length)throw new Error("Invalid end of component comment: '"+e+"'");var r=n.prerenderId;if(!r)throw new Error("End of component comment must have a value for the prerendered property: '"+e+"'");if(r!==t)throw new Error("End of component comment prerendered property must match the start comment prerender id: '"+t+"', '"+r+"'")}var c=function(){function e(e){this.childNodes=e,this.currentIndex=-1,this.length=e.length}return e.prototype.next=function(){return this.currentIndex++,this.currentIndex=i)return e;switch(e){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(e){return"[Circular]"}default:return e}})),c=r[n];n=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),d(n)?r.showHidden=n:n&&t._extend(r,n),b(r.showHidden)&&(r.showHidden=!1),b(r.depth)&&(r.depth=2),b(r.colors)&&(r.colors=!1),b(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=c),l(r,e,r.depth)}function c(e,t){var n=s.styles[t];return n?"["+s.colors[n][0]+"m"+e+"["+s.colors[n][1]+"m":e}function u(e,t){return e}function l(e,n,r){if(e.customInspect&&n&&_(n.inspect)&&n.inspect!==t.inspect&&(!n.constructor||n.constructor.prototype!==n)){var o=n.inspect(r,e);return v(o)||(o=l(e,o,r)),o}var i=function(e,t){if(b(t))return e.stylize("undefined","undefined");if(v(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}if(y(t))return e.stylize(""+t,"number");if(d(t))return e.stylize(""+t,"boolean");if(g(t))return e.stylize("null","null")}(e,n);if(i)return i;var a=Object.keys(n),s=function(e){var t={};return e.forEach((function(e,n){t[e]=!0})),t}(a);if(e.showHidden&&(a=Object.getOwnPropertyNames(n)),S(n)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return f(n);if(0===a.length){if(_(n)){var c=n.name?": "+n.name:"";return e.stylize("[Function"+c+"]","special")}if(m(n))return e.stylize(RegExp.prototype.toString.call(n),"regexp");if(E(n))return e.stylize(Date.prototype.toString.call(n),"date");if(S(n))return f(n)}var u,w="",I=!1,C=["{","}"];(p(n)&&(I=!0,C=["[","]"]),_(n))&&(w=" [Function"+(n.name?": "+n.name:"")+"]");return m(n)&&(w=" "+RegExp.prototype.toString.call(n)),E(n)&&(w=" "+Date.prototype.toUTCString.call(n)),S(n)&&(w=" "+f(n)),0!==a.length||I&&0!=n.length?r<0?m(n)?e.stylize(RegExp.prototype.toString.call(n),"regexp"):e.stylize("[Object]","special"):(e.seen.push(n),u=I?function(e,t,n,r,o){for(var i=[],a=0,s=t.length;a=0&&0,e+t.replace(/\u001b\[\d\d?m/g,"").length+1}),0)>60)return n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1];return n[0]+t+" "+e.join(", ")+" "+n[1]}(u,w,C)):C[0]+w+C[1]}function f(e){return"["+Error.prototype.toString.call(e)+"]"}function h(e,t,n,r,o,i){var a,s,c;if((c=Object.getOwnPropertyDescriptor(t,o)||{value:t[o]}).get?s=c.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):c.set&&(s=e.stylize("[Setter]","special")),P(r,o)||(a="["+o+"]"),s||(e.seen.indexOf(c.value)<0?(s=g(n)?l(e,c.value,null):l(e,c.value,n-1)).indexOf("\n")>-1&&(s=i?s.split("\n").map((function(e){return" "+e})).join("\n").substr(2):"\n"+s.split("\n").map((function(e){return" "+e})).join("\n")):s=e.stylize("[Circular]","special")),b(a)){if(i&&o.match(/^\d+$/))return s;(a=JSON.stringify(""+o)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(a=a.substr(1,a.length-2),a=e.stylize(a,"name")):(a=a.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),a=e.stylize(a,"string"))}return a+": "+s}function p(e){return Array.isArray(e)}function d(e){return"boolean"==typeof e}function g(e){return null===e}function y(e){return"number"==typeof e}function v(e){return"string"==typeof e}function b(e){return void 0===e}function m(e){return w(e)&&"[object RegExp]"===I(e)}function w(e){return"object"==typeof e&&null!==e}function E(e){return w(e)&&"[object Date]"===I(e)}function S(e){return w(e)&&("[object Error]"===I(e)||e instanceof Error)}function _(e){return"function"==typeof e}function I(e){return Object.prototype.toString.call(e)}function C(e){return e<10?"0"+e.toString(10):e.toString(10)}t.debuglog=function(n){if(b(i)&&(i=e.env.NODE_DEBUG||""),n=n.toUpperCase(),!a[n])if(new RegExp("\\b"+n+"\\b","i").test(i)){var r=e.pid;a[n]=function(){var e=t.format.apply(t,arguments);console.error("%s %d: %s",n,r,e)}}else a[n]=function(){};return a[n]},t.inspect=s,s.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},s.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},t.isArray=p,t.isBoolean=d,t.isNull=g,t.isNullOrUndefined=function(e){return null==e},t.isNumber=y,t.isString=v,t.isSymbol=function(e){return"symbol"==typeof e},t.isUndefined=b,t.isRegExp=m,t.isObject=w,t.isDate=E,t.isError=S,t.isFunction=_,t.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e},t.isBuffer=n(59);var k=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function T(){var e=new Date,t=[C(e.getHours()),C(e.getMinutes()),C(e.getSeconds())].join(":");return[e.getDate(),k[e.getMonth()],t].join(" ")}function P(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.log=function(){console.log("%s - %s",T(),t.format.apply(t,arguments))},t.inherits=n(60),t._extend=function(e,t){if(!t||!w(t))return e;for(var n=Object.keys(t),r=n.length;r--;)e[n[r]]=t[n[r]];return e};var O="undefined"!=typeof Symbol?Symbol("util.promisify.custom"):void 0;function R(e,t){if(!e){var n=new Error("Promise was rejected with a falsy value");n.reason=e,e=n}return t(e)}t.promisify=function(e){if("function"!=typeof e)throw new TypeError('The "original" argument must be of type Function');if(O&&e[O]){var t;if("function"!=typeof(t=e[O]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(t,O,{value:t,enumerable:!1,writable:!1,configurable:!0}),t}function t(){for(var t,n,r=new Promise((function(e,r){t=e,n=r})),o=[],i=0;i0?("string"==typeof t||a.objectMode||Object.getPrototypeOf(t)===u.prototype||(t=function(e){return u.from(e)}(t)),r?a.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):E(e,a,t,!0):a.ended?e.emit("error",new Error("stream.push() after EOF")):(a.reading=!1,a.decoder&&!n?(t=a.decoder.write(t),a.objectMode||0!==t.length?E(e,a,t,!1):C(e,a)):E(e,a,t,!1))):r||(a.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=8388608?e=8388608:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function _(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(p("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?o.nextTick(I,e):I(e))}function I(e){p("emit readable"),e.emit("readable"),O(e)}function C(e,t){t.readingMore||(t.readingMore=!0,o.nextTick(k,e,t))}function k(e,t){for(var n=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):n=function(e,t,n){var r;ei.length?i.length:e;if(a===i.length?o+=i:o+=i.slice(0,e),0===(e-=a)){a===i.length?(++r,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=i.slice(a));break}++r}return t.length-=r,o}(e,t):function(e,t){var n=u.allocUnsafe(e),r=t.head,o=1;r.data.copy(n),e-=r.data.length;for(;r=r.next;){var i=r.data,a=e>i.length?i.length:e;if(i.copy(n,n.length-e,0,a),0===(e-=a)){a===i.length?(++o,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=i.slice(a));break}++o}return t.length-=o,n}(e,t);return r}(e,t.buffer,t.decoder),n);var n}function x(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,o.nextTick(D,t,e))}function D(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function A(e,t){for(var n=0,r=e.length;n=t.highWaterMark||t.ended))return p("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?x(this):_(this),null;if(0===(e=S(e,t))&&t.ended)return 0===t.length&&x(this),null;var r,o=t.needReadable;return p("need readable",o),(0===t.length||t.length-e0?R(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&x(this)),null!==r&&this.emit("data",r),r},m.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},m.prototype.pipe=function(e,t){var n=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=e;break;case 1:i.pipes=[i.pipes,e];break;default:i.pipes.push(e)}i.pipesCount+=1,p("pipe count=%d opts=%j",i.pipesCount,t);var c=(!t||!1!==t.end)&&e!==r.stdout&&e!==r.stderr?l:m;function u(t,r){p("onunpipe"),t===n&&r&&!1===r.hasUnpiped&&(r.hasUnpiped=!0,p("cleanup"),e.removeListener("close",v),e.removeListener("finish",b),e.removeListener("drain",f),e.removeListener("error",y),e.removeListener("unpipe",u),n.removeListener("end",l),n.removeListener("end",m),n.removeListener("data",g),h=!0,!i.awaitDrain||e._writableState&&!e._writableState.needDrain||f())}function l(){p("onend"),e.end()}i.endEmitted?o.nextTick(c):n.once("end",c),e.on("unpipe",u);var f=function(e){return function(){var t=e._readableState;p("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&s(e,"data")&&(t.flowing=!0,O(e))}}(n);e.on("drain",f);var h=!1;var d=!1;function g(t){p("ondata"),d=!1,!1!==e.write(t)||d||((1===i.pipesCount&&i.pipes===e||i.pipesCount>1&&-1!==A(i.pipes,e))&&!h&&(p("false write response, pause",n._readableState.awaitDrain),n._readableState.awaitDrain++,d=!0),n.pause())}function y(t){p("onerror",t),m(),e.removeListener("error",y),0===s(e,"error")&&e.emit("error",t)}function v(){e.removeListener("finish",b),m()}function b(){p("onfinish"),e.removeListener("close",v),m()}function m(){p("unpipe"),n.unpipe(e)}return n.on("data",g),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?a(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",y),e.once("close",v),e.once("finish",b),e.emit("pipe",n),i.flowing||(p("pipe resume"),n.resume()),e},m.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,n)),this;if(!e){var r=t.pipes,o=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var i=0;i0&&a.length>o&&!a.warned){a.warned=!0;var c=new Error("Possible EventEmitter memory leak detected. "+a.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");c.name="MaxListenersExceededWarning",c.emitter=e,c.type=t,c.count=a.length,s=c,console&&console.warn&&console.warn(s)}return e}function h(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function p(e,t,n){var r={fired:!1,wrapFn:void 0,target:e,type:t,listener:n},o=h.bind(r);return o.listener=n,r.wrapFn=o,o}function d(e,t,n){var r=e._events;if(void 0===r)return[];var o=r[t];return void 0===o?[]:"function"==typeof o?n?[o.listener||o]:[o]:n?function(e){for(var t=new Array(e.length),n=0;n0&&(a=t[0]),a instanceof Error)throw a;var s=new Error("Unhandled error."+(a?" ("+a.message+")":""));throw s.context=a,s}var c=o[e];if(void 0===c)return!1;if("function"==typeof c)i(c,this,t);else{var u=c.length,l=y(c,u);for(n=0;n=0;i--)if(n[i]===t||n[i].listener===t){a=n[i].listener,o=i;break}if(o<0)return this;0===o?n.shift():function(e,t){for(;t+1=0;r--)this.removeListener(e,t[r]);return this},s.prototype.listeners=function(e){return d(this,e,!0)},s.prototype.rawListeners=function(e){return d(this,e,!1)},s.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):g.call(e,t)},s.prototype.listenerCount=g,s.prototype.eventNames=function(){return this._eventsCount>0?r(this._events):[]}},function(e,t,n){e.exports=n(40).EventEmitter},function(e,t,n){"use strict";var r=n(23);function o(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var n=this,i=this._readableState&&this._readableState.destroyed,a=this._writableState&&this._writableState.destroyed;return i||a?(t?t(e):!e||this._writableState&&this._writableState.errorEmitted||r.nextTick(o,this,e),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?(r.nextTick(o,n,e),n._writableState&&(n._writableState.errorEmitted=!0)):t&&t(e)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},function(e,t,n){"use strict";var r=n(66).Buffer,o=r.isEncoding||function(e){switch((e=""+e)&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function i(e){var t;switch(this.encoding=function(e){var t=function(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}(e);if("string"!=typeof t&&(r.isEncoding===o||!o(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=c,this.end=u,t=4;break;case"utf8":this.fillLast=s,t=4;break;case"base64":this.text=l,this.end=f,t=3;break;default:return this.write=h,void(this.end=p)}this.lastNeed=0,this.lastTotal=0,this.lastChar=r.allocUnsafe(t)}function a(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function s(e){var t=this.lastTotal-this.lastNeed,n=function(e,t,n){if(128!=(192&t[0]))return e.lastNeed=0,"�";if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"�";if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"�"}}(this,e);return void 0!==n?n:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function c(e,t){if((e.length-t)%2==0){var n=e.toString("utf16le",t);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function u(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,n)}return t}function l(e,t){var n=(e.length-t)%3;return 0===n?e.toString("base64",t):(this.lastNeed=3-n,this.lastTotal=3,1===n?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-n))}function f(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function h(e){return e.toString(this.encoding)}function p(e){return e&&e.length?this.write(e):""}t.StringDecoder=i,i.prototype.write=function(e){if(0===e.length)return"";var t,n;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0)return o>0&&(e.lastNeed=o-1),o;if(--r=0)return o>0&&(e.lastNeed=o-2),o;if(--r=0)return o>0&&(2===o?o=0:e.lastNeed=o-3),o;return 0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=n;var r=e.length-(n-this.lastNeed);return e.copy(this.lastChar,0,r),e.toString("utf8",t,r)},i.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},function(e,t,n){"use strict";(function(t,r,o){var i=n(23);function a(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,n){var r=e.entry;e.entry=null;for(;r;){var o=r.callback;t.pendingcb--,o(n),r=r.next}t.corkedRequestsFree?t.corkedRequestsFree.next=e:t.corkedRequestsFree=e}(t,e)}}e.exports=b;var s,c=!t.browser&&["v0.10","v0.9."].indexOf(t.version.slice(0,5))>-1?r:i.nextTick;b.WritableState=v;var u=n(19);u.inherits=n(15);var l={deprecate:n(69)},f=n(41),h=n(14).Buffer,p=o.Uint8Array||function(){};var d,g=n(42);function y(){}function v(e,t){s=s||n(9),e=e||{};var r=t instanceof s;this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var o=e.highWaterMark,u=e.writableHighWaterMark,l=this.objectMode?16:16384;this.highWaterMark=o||0===o?o:r&&(u||0===u)?u:l,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var f=!1===e.decodeStrings;this.decodeStrings=!f,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var n=e._writableState,r=n.sync,o=n.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(n),t)!function(e,t,n,r,o){--t.pendingcb,n?(i.nextTick(o,r),i.nextTick(I,e,t),e._writableState.errorEmitted=!0,e.emit("error",r)):(o(r),e._writableState.errorEmitted=!0,e.emit("error",r),I(e,t))}(e,n,r,t,o);else{var a=S(n);a||n.corked||n.bufferProcessing||!n.bufferedRequest||E(e,n),r?c(w,e,n,a,o):w(e,n,a,o)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new a(this)}function b(e){if(s=s||n(9),!(d.call(b,this)||this instanceof s))return new b(e);this._writableState=new v(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),f.call(this)}function m(e,t,n,r,o,i,a){t.writelen=r,t.writecb=a,t.writing=!0,t.sync=!0,n?e._writev(o,t.onwrite):e._write(o,i,t.onwrite),t.sync=!1}function w(e,t,n,r){n||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,r(),I(e,t)}function E(e,t){t.bufferProcessing=!0;var n=t.bufferedRequest;if(e._writev&&n&&n.next){var r=t.bufferedRequestCount,o=new Array(r),i=t.corkedRequestsFree;i.entry=n;for(var s=0,c=!0;n;)o[s]=n,n.isBuf||(c=!1),n=n.next,s+=1;o.allBuffers=c,m(e,t,!0,t.length,o,"",i.finish),t.pendingcb++,t.lastBufferedRequest=null,i.next?(t.corkedRequestsFree=i.next,i.next=null):t.corkedRequestsFree=new a(t),t.bufferedRequestCount=0}else{for(;n;){var u=n.chunk,l=n.encoding,f=n.callback;if(m(e,t,!1,t.objectMode?1:u.length,u,l,f),n=n.next,t.bufferedRequestCount--,t.writing)break}null===n&&(t.lastBufferedRequest=null)}t.bufferedRequest=n,t.bufferProcessing=!1}function S(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function _(e,t){e._final((function(n){t.pendingcb--,n&&e.emit("error",n),t.prefinished=!0,e.emit("prefinish"),I(e,t)}))}function I(e,t){var n=S(t);return n&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,i.nextTick(_,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),n}u.inherits(b,f),v.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(v.prototype,"buffer",{get:l.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(d=Function.prototype[Symbol.hasInstance],Object.defineProperty(b,Symbol.hasInstance,{value:function(e){return!!d.call(this,e)||this===b&&(e&&e._writableState instanceof v)}})):d=function(e){return e instanceof this},b.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},b.prototype.write=function(e,t,n){var r,o=this._writableState,a=!1,s=!o.objectMode&&(r=e,h.isBuffer(r)||r instanceof p);return s&&!h.isBuffer(e)&&(e=function(e){return h.from(e)}(e)),"function"==typeof t&&(n=t,t=null),s?t="buffer":t||(t=o.defaultEncoding),"function"!=typeof n&&(n=y),o.ended?function(e,t){var n=new Error("write after end");e.emit("error",n),i.nextTick(t,n)}(this,n):(s||function(e,t,n,r){var o=!0,a=!1;return null===n?a=new TypeError("May not write null values to stream"):"string"==typeof n||void 0===n||t.objectMode||(a=new TypeError("Invalid non-string/buffer chunk")),a&&(e.emit("error",a),i.nextTick(r,a),o=!1),o}(this,o,e,n))&&(o.pendingcb++,a=function(e,t,n,r,o,i){if(!n){var a=function(e,t,n){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=h.from(t,n));return t}(t,r,o);r!==a&&(n=!0,o="buffer",r=a)}var s=t.objectMode?1:r.length;t.length+=s;var c=t.length-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(b.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),b.prototype._write=function(e,t,n){n(new Error("_write() is not implemented"))},b.prototype._writev=null,b.prototype.end=function(e,t,n){var r=this._writableState;"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||r.finished||function(e,t,n){t.ending=!0,I(e,t),n&&(t.finished?i.nextTick(n):e.once("finish",n));t.ended=!0,e.writable=!1}(this,r,n)},Object.defineProperty(b.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),b.prototype.destroy=g.destroy,b.prototype._undestroy=g.undestroy,b.prototype._destroy=function(e,t){this.end(),t(e)}}).call(this,n(13),n(67).setImmediate,n(8))},function(e,t,n){"use strict";e.exports=a;var r=n(9),o=n(19);function i(e,t){var n=this._transformState;n.transforming=!1;var r=n.writecb;if(!r)return this.emit("error",new Error("write callback called multiple times"));n.writechunk=null,n.writecb=null,null!=t&&this.push(t),r(e);var o=this._readableState;o.reading=!1,(o.needReadable||o.lengths?a.slice(s).buffer:null}else{var c,u=t;if(-1===(c=u.indexOf(r.a.RecordSeparator)))throw new Error("Message is incomplete.");s=c+1;n=u.substring(0,s),i=u.length>s?u.substring(s):null}var l=r.a.parse(n),f=JSON.parse(l[0]);if(f.type)throw new Error("Expected a handshake response from the server.");return[i,f]},t}()}).call(this,n(10).Buffer)},,,,,,,function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{c(r.next(e))}catch(e){i(e)}}function s(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}c((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0)&&!(r=i.next()).done;)a.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return a},a=this&&this.__spread||function(){for(var e=[],t=0;t0?a-4:a;for(n=0;n>16&255,c[l++]=t>>8&255,c[l++]=255&t;2===s&&(t=o[e.charCodeAt(n)]<<2|o[e.charCodeAt(n+1)]>>4,c[l++]=255&t);1===s&&(t=o[e.charCodeAt(n)]<<10|o[e.charCodeAt(n+1)]<<4|o[e.charCodeAt(n+2)]>>2,c[l++]=t>>8&255,c[l++]=255&t);return c},t.fromByteArray=function(e){for(var t,n=e.length,o=n%3,i=[],a=0,s=n-o;as?s:a+16383));1===o?(t=e[n-1],i.push(r[t>>2]+r[t<<4&63]+"==")):2===o&&(t=(e[n-2]<<8)+e[n-1],i.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"="));return i.join("")};for(var r=[],o=[],i="undefined"!=typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,c=a.length;s0)throw new Error("Invalid string. Length must be a multiple of 4");var n=e.indexOf("=");return-1===n&&(n=t),[n,n===t?0:4-n%4]}function l(e,t,n){for(var o,i,a=[],s=t;s>18&63]+r[i>>12&63]+r[i>>6&63]+r[63&i]);return a.join("")}o["-".charCodeAt(0)]=62,o["_".charCodeAt(0)]=63},function(e,t){t.read=function(e,t,n,r,o){var i,a,s=8*o-r-1,c=(1<>1,l=-7,f=n?o-1:0,h=n?-1:1,p=e[t+f];for(f+=h,i=p&(1<<-l)-1,p>>=-l,l+=s;l>0;i=256*i+e[t+f],f+=h,l-=8);for(a=i&(1<<-l)-1,i>>=-l,l+=r;l>0;a=256*a+e[t+f],f+=h,l-=8);if(0===i)i=1-u;else{if(i===c)return a?NaN:1/0*(p?-1:1);a+=Math.pow(2,r),i-=u}return(p?-1:1)*a*Math.pow(2,i-r)},t.write=function(e,t,n,r,o,i){var a,s,c,u=8*i-o-1,l=(1<>1,h=23===o?Math.pow(2,-24)-Math.pow(2,-77):0,p=r?0:i-1,d=r?1:-1,g=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,a=l):(a=Math.floor(Math.log(t)/Math.LN2),t*(c=Math.pow(2,-a))<1&&(a--,c*=2),(t+=a+f>=1?h/c:h*Math.pow(2,1-f))*c>=2&&(a++,c/=2),a+f>=l?(s=0,a=l):a+f>=1?(s=(t*c-1)*Math.pow(2,o),a+=f):(s=t*Math.pow(2,f-1)*Math.pow(2,o),a=0));o>=8;e[n+p]=255&s,p+=d,s/=256,o-=8);for(a=a<0;e[n+p]=255&a,p+=d,a/=256,u-=8);e[n+p-d]|=128*g}},function(e,t){var n={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==n.call(e)}},function(e,t,n){"use strict";(function(t){var r=n(58); +var r=n(54),o=n(55),i=n(56);function a(){return c.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function s(e,t){if(a()=a())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a().toString(16)+" bytes");return 0|e}function d(e,t){if(c.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var n=e.length;if(0===n)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return F(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return H(e).length;default:if(r)return F(e).length;t=(""+t).toLowerCase(),r=!0}}function g(e,t,n){var r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return O(this,t,n);case"utf8":case"utf-8":return k(this,t,n);case"ascii":return T(this,t,n);case"latin1":case"binary":return P(this,t,n);case"base64":return C(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return R(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function y(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function v(e,t,n,r,o){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=o?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(o)return-1;n=e.length-1}else if(n<0){if(!o)return-1;n=0}if("string"==typeof t&&(t=c.from(t,r)),c.isBuffer(t))return 0===t.length?-1:b(e,t,n,r,o);if("number"==typeof t)return t&=255,c.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?o?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):b(e,[t],n,r,o);throw new TypeError("val must be string, number or Buffer")}function b(e,t,n,r,o){var i,a=1,s=e.length,c=t.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;a=2,s/=2,c/=2,n/=2}function u(e,t){return 1===a?e[t]:e.readUInt16BE(t*a)}if(o){var l=-1;for(i=n;is&&(n=s-c),i=n;i>=0;i--){for(var f=!0,h=0;ho&&(r=o):r=o;var i=t.length;if(i%2!=0)throw new TypeError("Invalid hex string");r>i/2&&(r=i/2);for(var a=0;a>8,o=n%256,i.push(o),i.push(r);return i}(t,e.length-n),e,n,r)}function C(e,t,n){return 0===t&&n===e.length?r.fromByteArray(e):r.fromByteArray(e.slice(t,n))}function k(e,t,n){n=Math.min(e.length,n);for(var r=[],o=t;o239?4:u>223?3:u>191?2:1;if(o+f<=n)switch(f){case 1:u<128&&(l=u);break;case 2:128==(192&(i=e[o+1]))&&(c=(31&u)<<6|63&i)>127&&(l=c);break;case 3:i=e[o+1],a=e[o+2],128==(192&i)&&128==(192&a)&&(c=(15&u)<<12|(63&i)<<6|63&a)>2047&&(c<55296||c>57343)&&(l=c);break;case 4:i=e[o+1],a=e[o+2],s=e[o+3],128==(192&i)&&128==(192&a)&&128==(192&s)&&(c=(15&u)<<18|(63&i)<<12|(63&a)<<6|63&s)>65535&&c<1114112&&(l=c)}null===l?(l=65533,f=1):l>65535&&(l-=65536,r.push(l>>>10&1023|55296),l=56320|1023&l),r.push(l),o+=f}return function(e){var t=e.length;if(t<=4096)return String.fromCharCode.apply(String,e);var n="",r=0;for(;r0&&(e=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(e+=" ... ")),""},c.prototype.compare=function(e,t,n,r,o){if(!c.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===o&&(o=this.length),t<0||n>e.length||r<0||o>this.length)throw new RangeError("out of range index");if(r>=o&&t>=n)return 0;if(r>=o)return-1;if(t>=n)return 1;if(this===e)return 0;for(var i=(o>>>=0)-(r>>>=0),a=(n>>>=0)-(t>>>=0),s=Math.min(i,a),u=this.slice(r,o),l=e.slice(t,n),f=0;fo)&&(n=o),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var i=!1;;)switch(r){case"hex":return m(this,e,t,n);case"utf8":case"utf-8":return w(this,e,t,n);case"ascii":return E(this,e,t,n);case"latin1":case"binary":return S(this,e,t,n);case"base64":return _(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return I(this,e,t,n);default:if(i)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),i=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function T(e,t,n){var r="";n=Math.min(e.length,n);for(var o=t;or)&&(n=r);for(var o="",i=t;in)throw new RangeError("Trying to access beyond buffer length")}function D(e,t,n,r,o,i){if(!c.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>o||te.length)throw new RangeError("Index out of range")}function A(e,t,n,r){t<0&&(t=65535+t+1);for(var o=0,i=Math.min(e.length-n,2);o>>8*(r?o:1-o)}function M(e,t,n,r){t<0&&(t=4294967295+t+1);for(var o=0,i=Math.min(e.length-n,4);o>>8*(r?o:3-o)&255}function L(e,t,n,r,o,i){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function j(e,t,n,r,i){return i||L(e,0,n,4),o.write(e,t,n,r,23,4),n+4}function B(e,t,n,r,i){return i||L(e,0,n,8),o.write(e,t,n,r,52,8),n+8}c.prototype.slice=function(e,t){var n,r=this.length;if((e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t0&&(o*=256);)r+=this[e+--t]*o;return r},c.prototype.readUInt8=function(e,t){return t||x(e,1,this.length),this[e]},c.prototype.readUInt16LE=function(e,t){return t||x(e,2,this.length),this[e]|this[e+1]<<8},c.prototype.readUInt16BE=function(e,t){return t||x(e,2,this.length),this[e]<<8|this[e+1]},c.prototype.readUInt32LE=function(e,t){return t||x(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},c.prototype.readUInt32BE=function(e,t){return t||x(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},c.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||x(e,t,this.length);for(var r=this[e],o=1,i=0;++i=(o*=128)&&(r-=Math.pow(2,8*t)),r},c.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||x(e,t,this.length);for(var r=t,o=1,i=this[e+--r];r>0&&(o*=256);)i+=this[e+--r]*o;return i>=(o*=128)&&(i-=Math.pow(2,8*t)),i},c.prototype.readInt8=function(e,t){return t||x(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},c.prototype.readInt16LE=function(e,t){t||x(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},c.prototype.readInt16BE=function(e,t){t||x(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},c.prototype.readInt32LE=function(e,t){return t||x(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},c.prototype.readInt32BE=function(e,t){return t||x(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},c.prototype.readFloatLE=function(e,t){return t||x(e,4,this.length),o.read(this,e,!0,23,4)},c.prototype.readFloatBE=function(e,t){return t||x(e,4,this.length),o.read(this,e,!1,23,4)},c.prototype.readDoubleLE=function(e,t){return t||x(e,8,this.length),o.read(this,e,!0,52,8)},c.prototype.readDoubleBE=function(e,t){return t||x(e,8,this.length),o.read(this,e,!1,52,8)},c.prototype.writeUIntLE=function(e,t,n,r){(e=+e,t|=0,n|=0,r)||D(this,e,t,n,Math.pow(2,8*n)-1,0);var o=1,i=0;for(this[t]=255&e;++i=0&&(i*=256);)this[t+o]=e/i&255;return t+n},c.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||D(this,e,t,1,255,0),c.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},c.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||D(this,e,t,2,65535,0),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):A(this,e,t,!0),t+2},c.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||D(this,e,t,2,65535,0),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):A(this,e,t,!1),t+2},c.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||D(this,e,t,4,4294967295,0),c.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):M(this,e,t,!0),t+4},c.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||D(this,e,t,4,4294967295,0),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):M(this,e,t,!1),t+4},c.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t|=0,!r){var o=Math.pow(2,8*n-1);D(this,e,t,n,o-1,-o)}var i=0,a=1,s=0;for(this[t]=255&e;++i>0)-s&255;return t+n},c.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t|=0,!r){var o=Math.pow(2,8*n-1);D(this,e,t,n,o-1,-o)}var i=n-1,a=1,s=0;for(this[t+i]=255&e;--i>=0&&(a*=256);)e<0&&0===s&&0!==this[t+i+1]&&(s=1),this[t+i]=(e/a>>0)-s&255;return t+n},c.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||D(this,e,t,1,127,-128),c.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},c.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||D(this,e,t,2,32767,-32768),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):A(this,e,t,!0),t+2},c.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||D(this,e,t,2,32767,-32768),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):A(this,e,t,!1),t+2},c.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||D(this,e,t,4,2147483647,-2147483648),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):M(this,e,t,!0),t+4},c.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||D(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):M(this,e,t,!1),t+4},c.prototype.writeFloatLE=function(e,t,n){return j(this,e,t,!0,n)},c.prototype.writeFloatBE=function(e,t,n){return j(this,e,t,!1,n)},c.prototype.writeDoubleLE=function(e,t,n){return B(this,e,t,!0,n)},c.prototype.writeDoubleBE=function(e,t,n){return B(this,e,t,!1,n)},c.prototype.copy=function(e,t,n,r){if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t=0;--o)e[o+t]=this[o+n];else if(i<1e3||!c.TYPED_ARRAY_SUPPORT)for(o=0;o>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(i=t;i55295&&n<57344){if(!o){if(n>56319){(t-=3)>-1&&i.push(239,191,189);continue}if(a+1===r){(t-=3)>-1&&i.push(239,191,189);continue}o=n;continue}if(n<56320){(t-=3)>-1&&i.push(239,191,189),o=n;continue}n=65536+(o-55296<<10|n-56320)}else o&&(t-=3)>-1&&i.push(239,191,189);if(o=null,n<128){if((t-=1)<0)break;i.push(n)}else if(n<2048){if((t-=2)<0)break;i.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;i.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;i.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return i}function H(e){return r.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(N,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function W(e,t,n,r){for(var o=0;o=t.length||o>=e.length);++o)t[o+n]=e[o];return o}}).call(this,n(8))},function(e,t,n){"use strict";var r=n(14).Buffer,o=n(57),i=n(22),a=n(70),s=n(73),c=n(74);e.exports=function(e){var t=[],n=[];return{encode:c(t,(e=e||{forceFloat64:!1,compatibilityMode:!1,disableTimestampEncoding:!1}).forceFloat64,e.compatibilityMode,e.disableTimestampEncoding),decode:s(n),register:function(e,t,n,a){return o(t,"must have a constructor"),o(n,"must have an encode function"),o(e>=0,"must have a non-negative type"),o(a,"must have a decode function"),this.registerEncoder((function(e){return e instanceof t}),(function(t){var o=i(),a=r.allocUnsafe(1);return a.writeInt8(e,0),o.append(a),o.append(n(t)),o})),this.registerDecoder(e,a),this},registerEncoder:function(e,n){return o(e,"must have an encode function"),o(n,"must have an encode function"),t.push({check:e,encode:n}),this},registerDecoder:function(e,t){return o(e>=0,"must have a non-negative type"),o(t,"must have a decode function"),n.push({type:e,decode:t}),this},encoder:a.encoder,decoder:a.decoder,buffer:!0,type:"msgpack5",IncompleteBufferError:s.IncompleteBufferError}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n(25),n(17);var r=n(26),o=n(7),i={},a=!1;function s(e,t,n){var o=i[e];o||(o=i[e]=new r.BrowserRenderer(e)),o.attachRootComponentToLogicalElement(n,t)}t.attachRootComponentToLogicalElement=s,t.attachRootComponentToElement=function(e,t,n){var r=document.querySelector(e);if(!r)throw new Error("Could not find any element matching selector '"+e+"'.");s(n||0,o.toLogicalElement(r,!0),t)},t.getRendererer=function(e){return i[e]},t.renderBatch=function(e,t){var n=i[e];if(!n)throw new Error("There is no browser renderer with ID "+e+".");for(var r=t.arrayRangeReader,o=t.updatedComponents(),s=r.values(o),c=r.count(o),u=t.referenceFrames(),l=r.values(u),f=t.diffReader,h=0;h1)for(var n=1;n0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]>2]}t.monoPlatform={start:function(e){return new Promise((function(t,n){var u,l;s.attachDebuggerHotkey(e),window.Browser={init:function(){}},u=function(){window.Module=function(e,t,n){var u=this,l=e.bootConfig.resources,f=window.Module||{},h=["DEBUGGING ENABLED"];f.print=function(e){return h.indexOf(e)<0&&console.log(e)},f.printErr=function(e){console.error(e),c.showErrorNotification()},f.preRun=f.preRun||[],f.postRun=f.postRun||[],f.preloadPlugins=[];var d,b,m=e.loadResources(l.assembly,(function(e){return"_framework/"+e}),"assembly"),w=e.loadResources(l.pdb||{},(function(e){return"_framework/"+e}),"pdb"),E=e.loadResource("dotnet.wasm","_framework/dotnet.wasm",e.bootConfig.resources.runtime["dotnet.wasm"],"dotnetwasm");return e.bootConfig.resources.runtime.hasOwnProperty("dotnet.timezones.blat")&&(d=e.loadResource("dotnet.timezones.blat","_framework/dotnet.timezones.blat",e.bootConfig.resources.runtime["dotnet.timezones.blat"],"globalization")),e.bootConfig.resources.runtime.hasOwnProperty("icudt.dat")&&(b=e.loadResource("icudt.dat","_framework/icudt.dat",e.bootConfig.resources.runtime["icudt.dat"],"globalization")),f.instantiateWasm=function(e,t){return r(u,void 0,void 0,(function(){var n,r;return o(this,(function(o){switch(o.label){case 0:return o.trys.push([0,3,,4]),[4,E];case 1:return[4,y(o.sent(),e)];case 2:return n=o.sent(),[3,4];case 3:throw r=o.sent(),f.printErr(r),r;case 4:return t(n),[2]}}))})),[]},f.preRun.push((function(){i=cwrap("mono_wasm_add_assembly",null,["string","number","number"]),MONO.loaded_files=[],d&&function(e){r(this,void 0,void 0,(function(){var t,n;return o(this,(function(r){switch(r.label){case 0:return t="blazor:timezonedata",addRunDependency(t),[4,e.response];case 1:return[4,r.sent().arrayBuffer()];case 2:return n=r.sent(),Module.FS_createPath("/","usr",!0,!0),Module.FS_createPath("/usr/","share",!0,!0),Module.FS_createPath("/usr/share/","zoneinfo",!0,!0),MONO.mono_wasm_load_data_archive(new Uint8Array(n),"/usr/share/zoneinfo/"),removeRunDependency(t),[2]}}))}))}(d),b?function(e){r(this,void 0,void 0,(function(){var t,n,r,i,a;return o(this,(function(o){switch(o.label){case 0:return t="blazor:icudata",addRunDependency(t),[4,e.response];case 1:return n=o.sent(),i=Uint8Array.bind,[4,n.arrayBuffer()];case 2:if(r=new(i.apply(Uint8Array,[void 0,o.sent()])),a=MONO.mono_wasm_load_bytes_into_heap(r),!MONO.mono_wasm_load_icu_data(a))throw new Error("Error loading ICU asset.");return removeRunDependency(t),[2]}}))}))}(b):MONO.mono_wasm_setenv("DOTNET_SYSTEM_GLOBALIZATION_INVARIANT","1"),m.forEach((function(e){return S(e,function(e,t){var n=e.lastIndexOf(".");if(n<0)throw new Error("No extension to replace in '"+e+"'");return e.substr(0,n)+t}(e.name,".dll"))})),w.forEach((function(e){return S(e,e.name)})),window.Blazor._internal.dotNetCriticalError=function(e){f.printErr(BINDING.conv_string(e)||"(null)")},window.Blazor._internal.getSatelliteAssemblies=function(t){var n=BINDING.mono_array_to_js_array(t),i=e.bootConfig.resources.satelliteResources;if(i){var a=Promise.all(n.filter((function(e){return i.hasOwnProperty(e)})).map((function(t){return e.loadResources(i[t],(function(e){return"_framework/"+e}),"assembly")})).reduce((function(e,t){return e.concat(t)}),new Array).map((function(e){return r(u,void 0,void 0,(function(){return o(this,(function(t){switch(t.label){case 0:return[4,e.response];case 1:return[2,t.sent().arrayBuffer()]}}))}))})));return BINDING.js_to_mono_obj(a.then((function(e){return e.length&&(window.Blazor._internal.readSatelliteAssemblies=function(){for(var t=BINDING.mono_obj_array_new(e.length),n=0;n>1];var n},readInt32Field:function(e,t){return h(e+(t||0))},readUint64Field:function(e,t){return function(e){var t=e>>2,n=Module.HEAPU32[t+1];if(n>l)throw new Error("Cannot read uint64 with high order part "+n+", because the result would exceed Number.MAX_SAFE_INTEGER.");return n*u+Module.HEAPU32[t]}(e+(t||0))},readFloatField:function(e,t){return n=e+(t||0),Module.HEAPF32[n>>2];var n},readObjectField:function(e,t){return h(e+(t||0))},readStringField:function(e,t,n){var r,o=h(e+(t||0));if(0===o)return null;if(n){var i=BINDING.unbox_mono_obj(o);return"boolean"==typeof i?i?"":null:i}return f?void 0===(r=f.stringCache.get(o))&&(r=BINDING.conv_string(o),f.stringCache.set(o,r)):r=BINDING.conv_string(o),r},readStructField:function(e,t){return e+(t||0)},beginHeapLock:function(){return v(),f=new b},invokeWhenHeapUnlocked:function(e){f?f.enqueuePostReleaseAction(e):e()}};var p=document.createElement("a");function d(e){return e+12}function g(e,t,n){var r="["+e+"] "+t+":"+n;return BINDING.bind_static_method(r)}function y(e,t){return r(this,void 0,void 0,(function(){var n,r;return o(this,(function(o){switch(o.label){case 0:if("function"!=typeof WebAssembly.instantiateStreaming)return[3,4];o.label=1;case 1:return o.trys.push([1,3,,4]),[4,WebAssembly.instantiateStreaming(e.response,t)];case 2:return[2,o.sent().instance];case 3:return n=o.sent(),console.info("Streaming compilation failed. Falling back to ArrayBuffer instantiation. ",n),[3,4];case 4:return[4,e.response.then((function(e){return e.arrayBuffer()}))];case 5:return r=o.sent(),[4,WebAssembly.instantiate(r,t)];case 6:return[2,o.sent().instance]}}))}))}function v(){if(f)throw new Error("Assertion failed - heap is currently locked")}var b=function(){function e(){this.stringCache=new Map}return e.prototype.enqueuePostReleaseAction=function(e){this.postReleaseActions||(this.postReleaseActions=[]),this.postReleaseActions.push(e)},e.prototype.release=function(){var e;if(f!==this)throw new Error("Trying to release a lock which isn't current");for(f=null;null===(e=this.postReleaseActions)||void 0===e?void 0:e.length;){this.postReleaseActions.shift()(),v()}},e}()},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{c(r.next(e))}catch(e){i(e)}}function s(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}c((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]this.length)&&(r=this.length),n>=this.length)return e||i.alloc(0);if(r<=0)return e||i.alloc(0);var o,a,s=!!e,c=this._offset(n),u=r-n,l=u,f=s&&t||0,h=c[1];if(0===n&&r==this.length){if(!s)return 1===this._bufs.length?this._bufs[0]:i.concat(this._bufs,this.length);for(a=0;a(o=this._bufs[a].length-h))){this._bufs[a].copy(e,f,h,h+l);break}this._bufs[a].copy(e,f,h),f+=o,l-=o,h&&(h=0)}return e},a.prototype.shallowSlice=function(e,t){e=e||0,t=t||this.length,e<0&&(e+=this.length),t<0&&(t+=this.length);var n=this._offset(e),r=this._offset(t),o=this._bufs.slice(n[0],r[0]+1);return 0==r[1]?o.pop():o[o.length-1]=o[o.length-1].slice(0,r[1]),0!=n[1]&&(o[0]=o[0].slice(n[1])),new a(o)},a.prototype.toString=function(e,t,n){return this.slice(t,n).toString(e)},a.prototype.consume=function(e){for(;this._bufs.length;){if(!(e>=this._bufs[0].length)){this._bufs[0]=this._bufs[0].slice(e),this.length-=e;break}e-=this._bufs[0].length,this.length-=this._bufs[0].length,this._bufs.shift()}return this},a.prototype.duplicate=function(){for(var e=0,t=new a;e0&&e.invokeMethodAsync("OnSpacerAfterVisible",r.boundingClientRect.bottom-r.intersectionRect.bottom,a,s)}}))}),{root:i,rootMargin:o+"px"});a.observe(t),a.observe(n);var s=u(t),c=u(n);function u(e){var t=new MutationObserver((function(){a.unobserve(e),a.observe(e)}));return t.observe(e,{attributes:!0}),t}r[e._id]={intersectionObserver:a,mutationObserverBefore:s,mutationObserverAfter:c}},dispose:function(e){var t=r[e._id];t&&(t.intersectionObserver.disconnect(),t.mutationObserverBefore.disconnect(),t.mutationObserverAfter.disconnect(),e.dispose(),delete r[e._id])}};var r={}},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{c(r.next(e))}catch(e){i(e)}}function s(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}c((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1].*)$/;function i(e,t){var n=e.currentElement;if(n&&n.nodeType===Node.COMMENT_NODE&&n.textContent){var r=new RegExp(o).exec(n.textContent),i=r&&r.groups&&r.groups.descriptor;if(!i)return;try{var s=function(e){var t=JSON.parse(e),n=t.type;if("server"!==n&&"webassembly"!==n)throw new Error("Invalid component type '"+n+"'.");return t}(i);switch(t){case"webassembly":return function(e,t,n){var r=e.type,o=e.assembly,i=e.typeName,s=e.parameterDefinitions,c=e.parameterValues,u=e.prerenderId;if("webassembly"!==r)return;if(!o)throw new Error("assembly must be defined when using a descriptor.");if(!i)throw new Error("typeName must be defined when using a descriptor.");if(u){var l=a(u,n);if(!l)throw new Error("Could not find an end component comment for '"+t+"'");return{type:r,assembly:o,typeName:i,parameterDefinitions:s&&atob(s),parameterValues:c&&atob(c),start:t,prerenderId:u,end:l}}return{type:r,assembly:o,typeName:i,parameterDefinitions:s&&atob(s),parameterValues:c&&atob(c),start:t}}(s,n,e);case"server":return function(e,t,n){var r=e.type,o=e.descriptor,i=e.sequence,s=e.prerenderId;if("server"!==r)return;if(!o)throw new Error("descriptor must be defined when using a descriptor.");if(void 0===i)throw new Error("sequence must be defined when using a descriptor.");if(!Number.isInteger(i))throw new Error("Error parsing the sequence '"+i+"' for component '"+JSON.stringify(e)+"'");if(s){var c=a(s,n);if(!c)throw new Error("Could not find an end component comment for '"+t+"'");return{type:r,sequence:i,descriptor:o,start:t,prerenderId:s,end:c}}return{type:r,sequence:i,descriptor:o,start:t}}(s,n,e)}}catch(e){throw new Error("Found malformed component comment at "+n.textContent)}}}function a(e,t){for(;t.next()&&t.currentElement;){var n=t.currentElement;if(n.nodeType===Node.COMMENT_NODE&&n.textContent){var r=new RegExp(o).exec(n.textContent),i=r&&r[1];if(i)return s(i,e),n}}}function s(e,t){var n=JSON.parse(e);if(1!==Object.keys(n).length)throw new Error("Invalid end of component comment: '"+e+"'");var r=n.prerenderId;if(!r)throw new Error("End of component comment must have a value for the prerendered property: '"+e+"'");if(r!==t)throw new Error("End of component comment prerendered property must match the start comment prerender id: '"+t+"', '"+r+"'")}var c=function(){function e(e){this.childNodes=e,this.currentIndex=-1,this.length=e.length}return e.prototype.next=function(){return this.currentIndex++,this.currentIndex=i)return e;switch(e){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(e){return"[Circular]"}default:return e}})),c=r[n];n=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),d(n)?r.showHidden=n:n&&t._extend(r,n),b(r.showHidden)&&(r.showHidden=!1),b(r.depth)&&(r.depth=2),b(r.colors)&&(r.colors=!1),b(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=c),l(r,e,r.depth)}function c(e,t){var n=s.styles[t];return n?"["+s.colors[n][0]+"m"+e+"["+s.colors[n][1]+"m":e}function u(e,t){return e}function l(e,n,r){if(e.customInspect&&n&&_(n.inspect)&&n.inspect!==t.inspect&&(!n.constructor||n.constructor.prototype!==n)){var o=n.inspect(r,e);return v(o)||(o=l(e,o,r)),o}var i=function(e,t){if(b(t))return e.stylize("undefined","undefined");if(v(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}if(y(t))return e.stylize(""+t,"number");if(d(t))return e.stylize(""+t,"boolean");if(g(t))return e.stylize("null","null")}(e,n);if(i)return i;var a=Object.keys(n),s=function(e){var t={};return e.forEach((function(e,n){t[e]=!0})),t}(a);if(e.showHidden&&(a=Object.getOwnPropertyNames(n)),S(n)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return f(n);if(0===a.length){if(_(n)){var c=n.name?": "+n.name:"";return e.stylize("[Function"+c+"]","special")}if(m(n))return e.stylize(RegExp.prototype.toString.call(n),"regexp");if(E(n))return e.stylize(Date.prototype.toString.call(n),"date");if(S(n))return f(n)}var u,w="",I=!1,C=["{","}"];(p(n)&&(I=!0,C=["[","]"]),_(n))&&(w=" [Function"+(n.name?": "+n.name:"")+"]");return m(n)&&(w=" "+RegExp.prototype.toString.call(n)),E(n)&&(w=" "+Date.prototype.toUTCString.call(n)),S(n)&&(w=" "+f(n)),0!==a.length||I&&0!=n.length?r<0?m(n)?e.stylize(RegExp.prototype.toString.call(n),"regexp"):e.stylize("[Object]","special"):(e.seen.push(n),u=I?function(e,t,n,r,o){for(var i=[],a=0,s=t.length;a=0&&0,e+t.replace(/\u001b\[\d\d?m/g,"").length+1}),0)>60)return n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1];return n[0]+t+" "+e.join(", ")+" "+n[1]}(u,w,C)):C[0]+w+C[1]}function f(e){return"["+Error.prototype.toString.call(e)+"]"}function h(e,t,n,r,o,i){var a,s,c;if((c=Object.getOwnPropertyDescriptor(t,o)||{value:t[o]}).get?s=c.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):c.set&&(s=e.stylize("[Setter]","special")),P(r,o)||(a="["+o+"]"),s||(e.seen.indexOf(c.value)<0?(s=g(n)?l(e,c.value,null):l(e,c.value,n-1)).indexOf("\n")>-1&&(s=i?s.split("\n").map((function(e){return" "+e})).join("\n").substr(2):"\n"+s.split("\n").map((function(e){return" "+e})).join("\n")):s=e.stylize("[Circular]","special")),b(a)){if(i&&o.match(/^\d+$/))return s;(a=JSON.stringify(""+o)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(a=a.substr(1,a.length-2),a=e.stylize(a,"name")):(a=a.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),a=e.stylize(a,"string"))}return a+": "+s}function p(e){return Array.isArray(e)}function d(e){return"boolean"==typeof e}function g(e){return null===e}function y(e){return"number"==typeof e}function v(e){return"string"==typeof e}function b(e){return void 0===e}function m(e){return w(e)&&"[object RegExp]"===I(e)}function w(e){return"object"==typeof e&&null!==e}function E(e){return w(e)&&"[object Date]"===I(e)}function S(e){return w(e)&&("[object Error]"===I(e)||e instanceof Error)}function _(e){return"function"==typeof e}function I(e){return Object.prototype.toString.call(e)}function C(e){return e<10?"0"+e.toString(10):e.toString(10)}t.debuglog=function(n){if(b(i)&&(i=e.env.NODE_DEBUG||""),n=n.toUpperCase(),!a[n])if(new RegExp("\\b"+n+"\\b","i").test(i)){var r=e.pid;a[n]=function(){var e=t.format.apply(t,arguments);console.error("%s %d: %s",n,r,e)}}else a[n]=function(){};return a[n]},t.inspect=s,s.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},s.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},t.isArray=p,t.isBoolean=d,t.isNull=g,t.isNullOrUndefined=function(e){return null==e},t.isNumber=y,t.isString=v,t.isSymbol=function(e){return"symbol"==typeof e},t.isUndefined=b,t.isRegExp=m,t.isObject=w,t.isDate=E,t.isError=S,t.isFunction=_,t.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e},t.isBuffer=n(59);var k=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function T(){var e=new Date,t=[C(e.getHours()),C(e.getMinutes()),C(e.getSeconds())].join(":");return[e.getDate(),k[e.getMonth()],t].join(" ")}function P(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.log=function(){console.log("%s - %s",T(),t.format.apply(t,arguments))},t.inherits=n(60),t._extend=function(e,t){if(!t||!w(t))return e;for(var n=Object.keys(t),r=n.length;r--;)e[n[r]]=t[n[r]];return e};var O="undefined"!=typeof Symbol?Symbol("util.promisify.custom"):void 0;function R(e,t){if(!e){var n=new Error("Promise was rejected with a falsy value");n.reason=e,e=n}return t(e)}t.promisify=function(e){if("function"!=typeof e)throw new TypeError('The "original" argument must be of type Function');if(O&&e[O]){var t;if("function"!=typeof(t=e[O]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(t,O,{value:t,enumerable:!1,writable:!1,configurable:!0}),t}function t(){for(var t,n,r=new Promise((function(e,r){t=e,n=r})),o=[],i=0;i0?("string"==typeof t||a.objectMode||Object.getPrototypeOf(t)===u.prototype||(t=function(e){return u.from(e)}(t)),r?a.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):E(e,a,t,!0):a.ended?e.emit("error",new Error("stream.push() after EOF")):(a.reading=!1,a.decoder&&!n?(t=a.decoder.write(t),a.objectMode||0!==t.length?E(e,a,t,!1):C(e,a)):E(e,a,t,!1))):r||(a.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=8388608?e=8388608:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function _(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(p("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?o.nextTick(I,e):I(e))}function I(e){p("emit readable"),e.emit("readable"),O(e)}function C(e,t){t.readingMore||(t.readingMore=!0,o.nextTick(k,e,t))}function k(e,t){for(var n=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):n=function(e,t,n){var r;ei.length?i.length:e;if(a===i.length?o+=i:o+=i.slice(0,e),0===(e-=a)){a===i.length?(++r,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=i.slice(a));break}++r}return t.length-=r,o}(e,t):function(e,t){var n=u.allocUnsafe(e),r=t.head,o=1;r.data.copy(n),e-=r.data.length;for(;r=r.next;){var i=r.data,a=e>i.length?i.length:e;if(i.copy(n,n.length-e,0,a),0===(e-=a)){a===i.length?(++o,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=i.slice(a));break}++o}return t.length-=o,n}(e,t);return r}(e,t.buffer,t.decoder),n);var n}function x(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,o.nextTick(D,t,e))}function D(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function A(e,t){for(var n=0,r=e.length;n=t.highWaterMark||t.ended))return p("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?x(this):_(this),null;if(0===(e=S(e,t))&&t.ended)return 0===t.length&&x(this),null;var r,o=t.needReadable;return p("need readable",o),(0===t.length||t.length-e0?R(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&x(this)),null!==r&&this.emit("data",r),r},m.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},m.prototype.pipe=function(e,t){var n=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=e;break;case 1:i.pipes=[i.pipes,e];break;default:i.pipes.push(e)}i.pipesCount+=1,p("pipe count=%d opts=%j",i.pipesCount,t);var c=(!t||!1!==t.end)&&e!==r.stdout&&e!==r.stderr?l:m;function u(t,r){p("onunpipe"),t===n&&r&&!1===r.hasUnpiped&&(r.hasUnpiped=!0,p("cleanup"),e.removeListener("close",v),e.removeListener("finish",b),e.removeListener("drain",f),e.removeListener("error",y),e.removeListener("unpipe",u),n.removeListener("end",l),n.removeListener("end",m),n.removeListener("data",g),h=!0,!i.awaitDrain||e._writableState&&!e._writableState.needDrain||f())}function l(){p("onend"),e.end()}i.endEmitted?o.nextTick(c):n.once("end",c),e.on("unpipe",u);var f=function(e){return function(){var t=e._readableState;p("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&s(e,"data")&&(t.flowing=!0,O(e))}}(n);e.on("drain",f);var h=!1;var d=!1;function g(t){p("ondata"),d=!1,!1!==e.write(t)||d||((1===i.pipesCount&&i.pipes===e||i.pipesCount>1&&-1!==A(i.pipes,e))&&!h&&(p("false write response, pause",n._readableState.awaitDrain),n._readableState.awaitDrain++,d=!0),n.pause())}function y(t){p("onerror",t),m(),e.removeListener("error",y),0===s(e,"error")&&e.emit("error",t)}function v(){e.removeListener("finish",b),m()}function b(){p("onfinish"),e.removeListener("close",v),m()}function m(){p("unpipe"),n.unpipe(e)}return n.on("data",g),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?a(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",y),e.once("close",v),e.once("finish",b),e.emit("pipe",n),i.flowing||(p("pipe resume"),n.resume()),e},m.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,n)),this;if(!e){var r=t.pipes,o=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var i=0;i0&&a.length>o&&!a.warned){a.warned=!0;var c=new Error("Possible EventEmitter memory leak detected. "+a.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");c.name="MaxListenersExceededWarning",c.emitter=e,c.type=t,c.count=a.length,s=c,console&&console.warn&&console.warn(s)}return e}function h(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function p(e,t,n){var r={fired:!1,wrapFn:void 0,target:e,type:t,listener:n},o=h.bind(r);return o.listener=n,r.wrapFn=o,o}function d(e,t,n){var r=e._events;if(void 0===r)return[];var o=r[t];return void 0===o?[]:"function"==typeof o?n?[o.listener||o]:[o]:n?function(e){for(var t=new Array(e.length),n=0;n0&&(a=t[0]),a instanceof Error)throw a;var s=new Error("Unhandled error."+(a?" ("+a.message+")":""));throw s.context=a,s}var c=o[e];if(void 0===c)return!1;if("function"==typeof c)i(c,this,t);else{var u=c.length,l=y(c,u);for(n=0;n=0;i--)if(n[i]===t||n[i].listener===t){a=n[i].listener,o=i;break}if(o<0)return this;0===o?n.shift():function(e,t){for(;t+1=0;r--)this.removeListener(e,t[r]);return this},s.prototype.listeners=function(e){return d(this,e,!0)},s.prototype.rawListeners=function(e){return d(this,e,!1)},s.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):g.call(e,t)},s.prototype.listenerCount=g,s.prototype.eventNames=function(){return this._eventsCount>0?r(this._events):[]}},function(e,t,n){e.exports=n(40).EventEmitter},function(e,t,n){"use strict";var r=n(23);function o(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var n=this,i=this._readableState&&this._readableState.destroyed,a=this._writableState&&this._writableState.destroyed;return i||a?(t?t(e):!e||this._writableState&&this._writableState.errorEmitted||r.nextTick(o,this,e),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?(r.nextTick(o,n,e),n._writableState&&(n._writableState.errorEmitted=!0)):t&&t(e)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},function(e,t,n){"use strict";var r=n(66).Buffer,o=r.isEncoding||function(e){switch((e=""+e)&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function i(e){var t;switch(this.encoding=function(e){var t=function(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}(e);if("string"!=typeof t&&(r.isEncoding===o||!o(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=c,this.end=u,t=4;break;case"utf8":this.fillLast=s,t=4;break;case"base64":this.text=l,this.end=f,t=3;break;default:return this.write=h,void(this.end=p)}this.lastNeed=0,this.lastTotal=0,this.lastChar=r.allocUnsafe(t)}function a(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function s(e){var t=this.lastTotal-this.lastNeed,n=function(e,t,n){if(128!=(192&t[0]))return e.lastNeed=0,"�";if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"�";if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"�"}}(this,e);return void 0!==n?n:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function c(e,t){if((e.length-t)%2==0){var n=e.toString("utf16le",t);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function u(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,n)}return t}function l(e,t){var n=(e.length-t)%3;return 0===n?e.toString("base64",t):(this.lastNeed=3-n,this.lastTotal=3,1===n?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-n))}function f(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function h(e){return e.toString(this.encoding)}function p(e){return e&&e.length?this.write(e):""}t.StringDecoder=i,i.prototype.write=function(e){if(0===e.length)return"";var t,n;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0)return o>0&&(e.lastNeed=o-1),o;if(--r=0)return o>0&&(e.lastNeed=o-2),o;if(--r=0)return o>0&&(2===o?o=0:e.lastNeed=o-3),o;return 0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=n;var r=e.length-(n-this.lastNeed);return e.copy(this.lastChar,0,r),e.toString("utf8",t,r)},i.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},function(e,t,n){"use strict";(function(t,r,o){var i=n(23);function a(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,n){var r=e.entry;e.entry=null;for(;r;){var o=r.callback;t.pendingcb--,o(n),r=r.next}t.corkedRequestsFree?t.corkedRequestsFree.next=e:t.corkedRequestsFree=e}(t,e)}}e.exports=b;var s,c=!t.browser&&["v0.10","v0.9."].indexOf(t.version.slice(0,5))>-1?r:i.nextTick;b.WritableState=v;var u=n(19);u.inherits=n(15);var l={deprecate:n(69)},f=n(41),h=n(14).Buffer,p=o.Uint8Array||function(){};var d,g=n(42);function y(){}function v(e,t){s=s||n(9),e=e||{};var r=t instanceof s;this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var o=e.highWaterMark,u=e.writableHighWaterMark,l=this.objectMode?16:16384;this.highWaterMark=o||0===o?o:r&&(u||0===u)?u:l,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var f=!1===e.decodeStrings;this.decodeStrings=!f,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var n=e._writableState,r=n.sync,o=n.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(n),t)!function(e,t,n,r,o){--t.pendingcb,n?(i.nextTick(o,r),i.nextTick(I,e,t),e._writableState.errorEmitted=!0,e.emit("error",r)):(o(r),e._writableState.errorEmitted=!0,e.emit("error",r),I(e,t))}(e,n,r,t,o);else{var a=S(n);a||n.corked||n.bufferProcessing||!n.bufferedRequest||E(e,n),r?c(w,e,n,a,o):w(e,n,a,o)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new a(this)}function b(e){if(s=s||n(9),!(d.call(b,this)||this instanceof s))return new b(e);this._writableState=new v(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),f.call(this)}function m(e,t,n,r,o,i,a){t.writelen=r,t.writecb=a,t.writing=!0,t.sync=!0,n?e._writev(o,t.onwrite):e._write(o,i,t.onwrite),t.sync=!1}function w(e,t,n,r){n||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,r(),I(e,t)}function E(e,t){t.bufferProcessing=!0;var n=t.bufferedRequest;if(e._writev&&n&&n.next){var r=t.bufferedRequestCount,o=new Array(r),i=t.corkedRequestsFree;i.entry=n;for(var s=0,c=!0;n;)o[s]=n,n.isBuf||(c=!1),n=n.next,s+=1;o.allBuffers=c,m(e,t,!0,t.length,o,"",i.finish),t.pendingcb++,t.lastBufferedRequest=null,i.next?(t.corkedRequestsFree=i.next,i.next=null):t.corkedRequestsFree=new a(t),t.bufferedRequestCount=0}else{for(;n;){var u=n.chunk,l=n.encoding,f=n.callback;if(m(e,t,!1,t.objectMode?1:u.length,u,l,f),n=n.next,t.bufferedRequestCount--,t.writing)break}null===n&&(t.lastBufferedRequest=null)}t.bufferedRequest=n,t.bufferProcessing=!1}function S(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function _(e,t){e._final((function(n){t.pendingcb--,n&&e.emit("error",n),t.prefinished=!0,e.emit("prefinish"),I(e,t)}))}function I(e,t){var n=S(t);return n&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,i.nextTick(_,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),n}u.inherits(b,f),v.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(v.prototype,"buffer",{get:l.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(d=Function.prototype[Symbol.hasInstance],Object.defineProperty(b,Symbol.hasInstance,{value:function(e){return!!d.call(this,e)||this===b&&(e&&e._writableState instanceof v)}})):d=function(e){return e instanceof this},b.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},b.prototype.write=function(e,t,n){var r,o=this._writableState,a=!1,s=!o.objectMode&&(r=e,h.isBuffer(r)||r instanceof p);return s&&!h.isBuffer(e)&&(e=function(e){return h.from(e)}(e)),"function"==typeof t&&(n=t,t=null),s?t="buffer":t||(t=o.defaultEncoding),"function"!=typeof n&&(n=y),o.ended?function(e,t){var n=new Error("write after end");e.emit("error",n),i.nextTick(t,n)}(this,n):(s||function(e,t,n,r){var o=!0,a=!1;return null===n?a=new TypeError("May not write null values to stream"):"string"==typeof n||void 0===n||t.objectMode||(a=new TypeError("Invalid non-string/buffer chunk")),a&&(e.emit("error",a),i.nextTick(r,a),o=!1),o}(this,o,e,n))&&(o.pendingcb++,a=function(e,t,n,r,o,i){if(!n){var a=function(e,t,n){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=h.from(t,n));return t}(t,r,o);r!==a&&(n=!0,o="buffer",r=a)}var s=t.objectMode?1:r.length;t.length+=s;var c=t.length-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(b.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),b.prototype._write=function(e,t,n){n(new Error("_write() is not implemented"))},b.prototype._writev=null,b.prototype.end=function(e,t,n){var r=this._writableState;"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||r.finished||function(e,t,n){t.ending=!0,I(e,t),n&&(t.finished?i.nextTick(n):e.once("finish",n));t.ended=!0,e.writable=!1}(this,r,n)},Object.defineProperty(b.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),b.prototype.destroy=g.destroy,b.prototype._undestroy=g.undestroy,b.prototype._destroy=function(e,t){this.end(),t(e)}}).call(this,n(13),n(67).setImmediate,n(8))},function(e,t,n){"use strict";e.exports=a;var r=n(9),o=n(19);function i(e,t){var n=this._transformState;n.transforming=!1;var r=n.writecb;if(!r)return this.emit("error",new Error("write callback called multiple times"));n.writechunk=null,n.writecb=null,null!=t&&this.push(t),r(e);var o=this._readableState;o.reading=!1,(o.needReadable||o.lengths?a.slice(s).buffer:null}else{var c,u=t;if(-1===(c=u.indexOf(r.a.RecordSeparator)))throw new Error("Message is incomplete.");s=c+1;n=u.substring(0,s),i=u.length>s?u.substring(s):null}var l=r.a.parse(n),f=JSON.parse(l[0]);if(f.type)throw new Error("Expected a handshake response from the server.");return[i,f]},t}()}).call(this,n(10).Buffer)},,,,,,,function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{c(r.next(e))}catch(e){i(e)}}function s(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}c((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0)&&!(r=i.next()).done;)a.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return a},a=this&&this.__spread||function(){for(var e=[],t=0;t0?a-4:a;for(n=0;n>16&255,c[l++]=t>>8&255,c[l++]=255&t;2===s&&(t=o[e.charCodeAt(n)]<<2|o[e.charCodeAt(n+1)]>>4,c[l++]=255&t);1===s&&(t=o[e.charCodeAt(n)]<<10|o[e.charCodeAt(n+1)]<<4|o[e.charCodeAt(n+2)]>>2,c[l++]=t>>8&255,c[l++]=255&t);return c},t.fromByteArray=function(e){for(var t,n=e.length,o=n%3,i=[],a=0,s=n-o;as?s:a+16383));1===o?(t=e[n-1],i.push(r[t>>2]+r[t<<4&63]+"==")):2===o&&(t=(e[n-2]<<8)+e[n-1],i.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"="));return i.join("")};for(var r=[],o=[],i="undefined"!=typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,c=a.length;s0)throw new Error("Invalid string. Length must be a multiple of 4");var n=e.indexOf("=");return-1===n&&(n=t),[n,n===t?0:4-n%4]}function l(e,t,n){for(var o,i,a=[],s=t;s>18&63]+r[i>>12&63]+r[i>>6&63]+r[63&i]);return a.join("")}o["-".charCodeAt(0)]=62,o["_".charCodeAt(0)]=63},function(e,t){t.read=function(e,t,n,r,o){var i,a,s=8*o-r-1,c=(1<>1,l=-7,f=n?o-1:0,h=n?-1:1,p=e[t+f];for(f+=h,i=p&(1<<-l)-1,p>>=-l,l+=s;l>0;i=256*i+e[t+f],f+=h,l-=8);for(a=i&(1<<-l)-1,i>>=-l,l+=r;l>0;a=256*a+e[t+f],f+=h,l-=8);if(0===i)i=1-u;else{if(i===c)return a?NaN:1/0*(p?-1:1);a+=Math.pow(2,r),i-=u}return(p?-1:1)*a*Math.pow(2,i-r)},t.write=function(e,t,n,r,o,i){var a,s,c,u=8*i-o-1,l=(1<>1,h=23===o?Math.pow(2,-24)-Math.pow(2,-77):0,p=r?0:i-1,d=r?1:-1,g=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,a=l):(a=Math.floor(Math.log(t)/Math.LN2),t*(c=Math.pow(2,-a))<1&&(a--,c*=2),(t+=a+f>=1?h/c:h*Math.pow(2,1-f))*c>=2&&(a++,c/=2),a+f>=l?(s=0,a=l):a+f>=1?(s=(t*c-1)*Math.pow(2,o),a+=f):(s=t*Math.pow(2,f-1)*Math.pow(2,o),a=0));o>=8;e[n+p]=255&s,p+=d,s/=256,o-=8);for(a=a<0;e[n+p]=255&a,p+=d,a/=256,u-=8);e[n+p-d]|=128*g}},function(e,t){var n={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==n.call(e)}},function(e,t,n){"use strict";(function(t){var r=n(58); /*! * The buffer module from node.js, for the browser. * diff --git a/src/Components/Web.JS/dist/Release/blazor.webassembly.js b/src/Components/Web.JS/dist/Release/blazor.webassembly.js index 59a481f9799b..a0b804d17cb5 100644 --- a/src/Components/Web.JS/dist/Release/blazor.webassembly.js +++ b/src/Components/Web.JS/dist/Release/blazor.webassembly.js @@ -1 +1 @@ -!function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=47)}([,,,function(e,t,n){"use strict";var r;n.r(t),n.d(t,"DotNet",(function(){return r})),function(e){var t;window.DotNet=e;var n=[],r=function(){function e(e){this._jsObject=e,this._cachedFunctions=new Map}return e.prototype.findFunction=function(e){var t=this._cachedFunctions.get(e);if(t)return t;var n,r=this._jsObject;if(e.split(".").forEach((function(t){if(!(t in r))throw new Error("Could not find '"+e+"' ('"+t+"' was undefined).");n=r,r=r[t]})),r instanceof Function)return r=r.bind(n),this._cachedFunctions.set(e,r),r;throw new Error("The value '"+e+"' is not a function.")},e.prototype.getWrappedObject=function(){return this._jsObject},e}(),o={},i=((t={})[0]=new r(window),t);i[0]._cachedFunctions.set("import",(function(e){return"string"==typeof e&&e.startsWith("./")&&(e=document.baseURI+e.substr(2)),import(e)}));var a,s=1,u=1,c=null;function l(e){n.push(e)}function f(e){var t;if(e&&"object"==typeof e){i[u]=new r(e);var n=((t={}).__jsObjectId=u,t);return u++,n}throw new Error("Cannot create a JSObjectReference from the value '"+e+"'.")}function d(e){return e?JSON.parse(e,(function(e,t){return n.reduce((function(t,n){return n(e,t)}),t)})):null}function p(e,t,n,r){var o=m();if(o.invokeDotNetFromJS){var i=JSON.stringify(r,_),a=o.invokeDotNetFromJS(e,t,n,i);return a?d(a):null}throw new Error("The current dispatcher does not support synchronous calls from JS to .NET. Use invokeMethodAsync instead.")}function h(e,t,n,r){if(e&&n)throw new Error("For instance method calls, assemblyName should be null. Received '"+e+"'.");var i=s++,a=new Promise((function(e,t){o[i]={resolve:e,reject:t}}));try{var u=JSON.stringify(r,_);m().beginInvokeDotNetFromJS(i,e,t,n,u)}catch(e){v(i,!1,e)}return a}function m(){if(null!==c)return c;throw new Error("No .NET call dispatcher has been set.")}function v(e,t,n){if(!o.hasOwnProperty(e))throw new Error("There is no pending async call with ID "+e+".");var r=o[e];delete o[e],t?r.resolve(n):r.reject(n)}function y(e){return e instanceof Error?e.message+"\n"+e.stack:e?e.toString():"null"}function b(e,t){var n=i[t];if(n)return n.findFunction(e);throw new Error("JS object instance with ID "+t+" does not exist (has it been disposed?).")}function g(e){delete i[e]}e.attachDispatcher=function(e){c=e},e.attachReviver=l,e.invokeMethod=function(e,t){for(var n=[],r=2;r0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&!t)throw new Error("New logical elements must start empty, or allowExistingContents must be true");return r in e||(e[r]=[]),e}function s(e,t,n){var i=e;if(e instanceof Comment&&(c(i)&&c(i).length>0))throw new Error("Not implemented: inserting non-empty logical container");if(u(i))throw new Error("Not implemented: moving existing logical children");var a=c(t);if(n0;)e(r,0)}var i=r;i.parentNode.removeChild(i)},t.getLogicalParent=u,t.getLogicalSiblingEnd=function(e){return e[i]||null},t.getLogicalChild=function(e,t){return c(e)[t]},t.isSvgElement=function(e){return"http://www.w3.org/2000/svg"===l(e).namespaceURI},t.getLogicalChildrenArray=c,t.permuteLogicalChildren=function(e,t){var n=c(e);t.forEach((function(e){e.moveRangeStart=n[e.fromSiblingIndex],e.moveRangeEnd=function e(t){if(t instanceof Element)return t;var n=f(t);if(n)return n.previousSibling;var r=u(t);return r instanceof Element?r.lastChild:e(r)}(e.moveRangeStart)})),t.forEach((function(t){var r=t.moveToBeforeMarker=document.createComment("marker"),o=n[t.toSiblingIndex+1];o?o.parentNode.insertBefore(r,o):d(r,e)})),t.forEach((function(e){for(var t=e.moveToBeforeMarker,n=t.parentNode,r=e.moveRangeStart,o=e.moveRangeEnd,i=r;i;){var a=i.nextSibling;if(n.insertBefore(i,t),i===o)break;i=a}n.removeChild(t)})),t.forEach((function(e){n[e.toSiblingIndex]=e.moveRangeStart}))},t.getClosestDomElement=l},,,,,function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n(25),n(17);var r=n(26),o=n(7),i={},a=!1;function s(e,t,n){var o=i[e];o||(o=i[e]=new r.BrowserRenderer(e)),o.attachRootComponentToLogicalElement(n,t)}t.attachRootComponentToLogicalElement=s,t.attachRootComponentToElement=function(e,t,n){var r=document.querySelector(e);if(!r)throw new Error("Could not find any element matching selector '"+e+"'.");s(n||0,o.toLogicalElement(r,!0),t)},t.getRendererer=function(e){return i[e]},t.renderBatch=function(e,t){var n=i[e];if(!n)throw new Error("There is no browser renderer with ID "+e+".");for(var r=t.arrayRangeReader,o=t.updatedComponents(),s=r.values(o),u=r.count(o),c=t.referenceFrames(),l=r.values(c),f=t.diffReader,d=0;d0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]>2]}t.monoPlatform={start:function(e){return new Promise((function(t,n){var c,l;s.attachDebuggerHotkey(e),window.Browser={init:function(){}},c=function(){window.Module=function(e,t,n){var c=this,l=e.bootConfig.resources,f=window.Module||{},d=["DEBUGGING ENABLED"];f.print=function(e){return d.indexOf(e)<0&&console.log(e)},f.printErr=function(e){console.error(e),u.showErrorNotification()},f.preRun=f.preRun||[],f.postRun=f.postRun||[],f.preloadPlugins=[];var h,b,g=e.loadResources(l.assembly,(function(e){return"_framework/"+e}),"assembly"),w=e.loadResources(l.pdb||{},(function(e){return"_framework/"+e}),"pdb"),E=e.loadResource("dotnet.wasm","_framework/dotnet.wasm",e.bootConfig.resources.runtime["dotnet.wasm"],"dotnetwasm");return e.bootConfig.resources.runtime.hasOwnProperty("dotnet.timezones.blat")&&(h=e.loadResource("dotnet.timezones.blat","_framework/dotnet.timezones.blat",e.bootConfig.resources.runtime["dotnet.timezones.blat"],"globalization")),e.bootConfig.resources.runtime.hasOwnProperty("icudt.dat")&&(b=e.loadResource("icudt.dat","_framework/icudt.dat",e.bootConfig.resources.runtime["icudt.dat"],"globalization")),f.instantiateWasm=function(e,t){return r(c,void 0,void 0,(function(){var n,r;return o(this,(function(o){switch(o.label){case 0:return o.trys.push([0,3,,4]),[4,E];case 1:return[4,v(o.sent(),e)];case 2:return n=o.sent(),[3,4];case 3:throw r=o.sent(),f.printErr(r),r;case 4:return t(n),[2]}}))})),[]},f.preRun.push((function(){i=cwrap("mono_wasm_add_assembly",null,["string","number","number"]),MONO.loaded_files=[],h&&function(e){r(this,void 0,void 0,(function(){var t,n;return o(this,(function(r){switch(r.label){case 0:return t="blazor:timezonedata",addRunDependency(t),[4,e.response];case 1:return[4,r.sent().arrayBuffer()];case 2:return n=r.sent(),Module.FS_createPath("/","usr",!0,!0),Module.FS_createPath("/usr/","share",!0,!0),Module.FS_createPath("/usr/share/","zoneinfo",!0,!0),MONO.mono_wasm_load_data_archive(new Uint8Array(n),"/usr/share/zoneinfo/"),removeRunDependency(t),[2]}}))}))}(h),b?function(e){r(this,void 0,void 0,(function(){var t,n,r,i,a;return o(this,(function(o){switch(o.label){case 0:return t="blazor:icudata",addRunDependency(t),[4,e.response];case 1:return n=o.sent(),i=Uint8Array.bind,[4,n.arrayBuffer()];case 2:if(r=new(i.apply(Uint8Array,[void 0,o.sent()])),a=MONO.mono_wasm_load_bytes_into_heap(r),!MONO.mono_wasm_load_icu_data(a))throw new Error("Error loading ICU asset.");return removeRunDependency(t),[2]}}))}))}(b):MONO.mono_wasm_setenv("DOTNET_SYSTEM_GLOBALIZATION_INVARIANT","1"),g.forEach((function(e){return _(e,function(e,t){var n=e.lastIndexOf(".");if(n<0)throw new Error("No extension to replace in '"+e+"'");return e.substr(0,n)+t}(e.name,".dll"))})),w.forEach((function(e){return _(e,e.name)})),window.Blazor._internal.dotNetCriticalError=function(e){f.printErr(BINDING.conv_string(e)||"(null)")},window.Blazor._internal.getSatelliteAssemblies=function(t){var n=BINDING.mono_array_to_js_array(t),i=e.bootConfig.resources.satelliteResources;if(i){var a=Promise.all(n.filter((function(e){return i.hasOwnProperty(e)})).map((function(t){return e.loadResources(i[t],(function(e){return"_framework/"+e}),"assembly")})).reduce((function(e,t){return e.concat(t)}),new Array).map((function(e){return r(c,void 0,void 0,(function(){return o(this,(function(t){switch(t.label){case 0:return[4,e.response];case 1:return[2,t.sent().arrayBuffer()]}}))}))})));return BINDING.js_to_mono_obj(a.then((function(e){return e.length&&(window.Blazor._internal.readSatelliteAssemblies=function(){for(var t=BINDING.mono_obj_array_new(e.length),n=0;n>1];var n},readInt32Field:function(e,t){return d(e+(t||0))},readUint64Field:function(e,t){return function(e){var t=e>>2,n=Module.HEAPU32[t+1];if(n>l)throw new Error("Cannot read uint64 with high order part "+n+", because the result would exceed Number.MAX_SAFE_INTEGER.");return n*c+Module.HEAPU32[t]}(e+(t||0))},readFloatField:function(e,t){return n=e+(t||0),Module.HEAPF32[n>>2];var n},readObjectField:function(e,t){return d(e+(t||0))},readStringField:function(e,t,n){var r,o=d(e+(t||0));if(0===o)return null;if(n){var i=BINDING.unbox_mono_obj(o);return"boolean"==typeof i?i?"":null:i}return f?void 0===(r=f.stringCache.get(o))&&(r=BINDING.conv_string(o),f.stringCache.set(o,r)):r=BINDING.conv_string(o),r},readStructField:function(e,t){return e+(t||0)},beginHeapLock:function(){return y(),f=new b},invokeWhenHeapUnlocked:function(e){f?f.enqueuePostReleaseAction(e):e()}};var p=document.createElement("a");function h(e){return e+12}function m(e,t,n){var r="["+e+"] "+t+":"+n;return BINDING.bind_static_method(r)}function v(e,t){return r(this,void 0,void 0,(function(){var n,r;return o(this,(function(o){switch(o.label){case 0:if("function"!=typeof WebAssembly.instantiateStreaming)return[3,4];o.label=1;case 1:return o.trys.push([1,3,,4]),[4,WebAssembly.instantiateStreaming(e.response,t)];case 2:return[2,o.sent().instance];case 3:return n=o.sent(),console.info("Streaming compilation failed. Falling back to ArrayBuffer instantiation. ",n),[3,4];case 4:return[4,e.response.then((function(e){return e.arrayBuffer()}))];case 5:return r=o.sent(),[4,WebAssembly.instantiate(r,t)];case 6:return[2,o.sent().instance]}}))}))}function y(){if(f)throw new Error("Assertion failed - heap is currently locked")}var b=function(){function e(){this.stringCache=new Map}return e.prototype.enqueuePostReleaseAction=function(e){this.postReleaseActions||(this.postReleaseActions=[]),this.postReleaseActions.push(e)},e.prototype.release=function(){var e;if(f!==this)throw new Error("Trying to release a lock which isn't current");for(f=null;null===(e=this.postReleaseActions)||void 0===e?void 0:e.length;){this.postReleaseActions.shift()(),y()}},e}()},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{u(r.next(e))}catch(e){i(e)}}function s(e){try{u(r.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}u((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&e.invokeMethodAsync("OnSpacerAfterVisible",r.boundingClientRect.bottom-r.intersectionRect.bottom,a,s)}}))}),{root:i,rootMargin:o+"px"});a.observe(t),a.observe(n);var s=c(t),u=c(n);function c(e){var t=new MutationObserver((function(){a.unobserve(e),a.observe(e)}));return t.observe(e,{attributes:!0}),t}r[e._id]={intersectionObserver:a,mutationObserverBefore:s,mutationObserverAfter:u}},dispose:function(e){var t=r[e._id];t&&(t.intersectionObserver.disconnect(),t.mutationObserverBefore.disconnect(),t.mutationObserverAfter.disconnect(),e.dispose(),delete r[e._id])}};var r={}},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{u(r.next(e))}catch(e){i(e)}}function s(e){try{u(r.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}u((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1].*)$/;function i(e,t){var n=e.currentElement;if(n&&n.nodeType===Node.COMMENT_NODE&&n.textContent){var r=new RegExp(o).exec(n.textContent),i=r&&r.groups&&r.groups.descriptor;if(!i)return;try{var s=function(e){var t=JSON.parse(e),n=t.type;if("server"!==n&&"webassembly"!==n)throw new Error("Invalid component type '"+n+"'.");return t}(i);switch(t){case"webassembly":return function(e,t,n){var r=e.type,o=e.assembly,i=e.typeName,s=e.parameterDefinitions,u=e.parameterValues,c=e.prerenderId;if("webassembly"!==r)return;if(!o)throw new Error("assembly must be defined when using a descriptor.");if(!i)throw new Error("typeName must be defined when using a descriptor.");if(c){var l=a(c,n);if(!l)throw new Error("Could not find an end component comment for '"+t+"'");return{type:r,assembly:o,typeName:i,parameterDefinitions:s&&atob(s),parameterValues:u&&atob(u),start:t,prerenderId:c,end:l}}return{type:r,assembly:o,typeName:i,parameterDefinitions:s&&atob(s),parameterValues:u&&atob(u),start:t}}(s,n,e);case"server":return function(e,t,n){var r=e.type,o=e.descriptor,i=e.sequence,s=e.prerenderId;if("server"!==r)return;if(!o)throw new Error("descriptor must be defined when using a descriptor.");if(void 0===i)throw new Error("sequence must be defined when using a descriptor.");if(!Number.isInteger(i))throw new Error("Error parsing the sequence '"+i+"' for component '"+JSON.stringify(e)+"'");if(s){var u=a(s,n);if(!u)throw new Error("Could not find an end component comment for '"+t+"'");return{type:r,sequence:i,descriptor:o,start:t,prerenderId:s,end:u}}return{type:r,sequence:i,descriptor:o,start:t}}(s,n,e)}}catch(e){throw new Error("Found malformed component comment at "+n.textContent)}}}function a(e,t){for(;t.next()&&t.currentElement;){var n=t.currentElement;if(n.nodeType===Node.COMMENT_NODE&&n.textContent){var r=new RegExp(o).exec(n.textContent),i=r&&r[1];if(i)return s(i,e),n}}}function s(e,t){var n=JSON.parse(e);if(1!==Object.keys(n).length)throw new Error("Invalid end of component comment: '"+e+"'");var r=n.prerenderId;if(!r)throw new Error("End of component comment must have a value for the prerendered property: '"+e+"'");if(r!==t)throw new Error("End of component comment prerendered property must match the start comment prerender id: '"+t+"', '"+r+"'")}var u=function(){function e(e){this.childNodes=e,this.currentIndex=-1,this.length=e.length}return e.prototype.next=function(){return this.currentIndex++,this.currentIndex0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0)&&!(r=i.next()).done;)a.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return a};Object.defineProperty(t,"__esModule",{value:!0});var a=n(3);n(24);var s=n(17),u=n(20),c=n(12),l=n(48),f=n(36),d=n(18),p=n(49),h=n(50),m=n(51),v=n(52),y=n(37),b=!1;function g(e){return r(this,void 0,void 0,(function(){var t,n,f,g,E,_,I,C,N,S,A,k=this;return o(this,(function(F){switch(F.label){case 0:if(b)throw new Error("Blazor has already started.");return b=!0,d.setEventDispatcher((function(e,t){c.getRendererer(e.browserRendererId).eventDelegator.getHandler(e.eventHandlerId)&&u.monoPlatform.invokeWhenHeapUnlocked((function(){return a.DotNet.invokeMethodAsync("Microsoft.AspNetCore.Components.WebAssembly","DispatchEvent",e,JSON.stringify(t))}))})),window.Blazor._internal.invokeJSFromDotNet=w,t=s.setPlatform(u.monoPlatform),window.Blazor.platform=t,window.Blazor._internal.renderBatch=function(e,t){var n=u.monoPlatform.beginHeapLock();try{c.renderBatch(e,new l.SharedMemoryRenderBatch(t))}finally{n.release()}},n=window.Blazor._internal.navigationManager.getBaseURI,f=window.Blazor._internal.navigationManager.getLocationHref,window.Blazor._internal.navigationManager.getUnmarshalledBaseURI=function(){return BINDING.js_string_to_mono_string(n())},window.Blazor._internal.navigationManager.getUnmarshalledLocationHref=function(){return BINDING.js_string_to_mono_string(f())},window.Blazor._internal.navigationManager.listenForNavigationEvents((function(e,t){return r(k,void 0,void 0,(function(){return o(this,(function(n){switch(n.label){case 0:return[4,a.DotNet.invokeMethodAsync("Microsoft.AspNetCore.Components.WebAssembly","NotifyLocationChanged",e,t)];case 1:return n.sent(),[2]}}))}))})),g=null==e?void 0:e.environment,E=m.BootConfigResult.initAsync(g),_=y.discoverComponents(document,"webassembly"),I=new v.WebAssemblyComponentAttacher(_),window.Blazor._internal.registeredComponents={getRegisteredComponentsCount:function(){return I.getCount()},getId:function(e){return I.getId(e)},getAssembly:function(e){return BINDING.js_string_to_mono_string(I.getAssembly(e))},getTypeName:function(e){return BINDING.js_string_to_mono_string(I.getTypeName(e))},getParameterDefinitions:function(e){return BINDING.js_string_to_mono_string(I.getParameterDefinitions(e)||"")},getParameterValues:function(e){return BINDING.js_string_to_mono_string(I.getParameterValues(e)||"")}},window.Blazor._internal.attachRootComponentToElement=function(e,t,n){var r=I.resolveRegisteredElement(e);r?c.attachRootComponentToLogicalElement(n,r,t):c.attachRootComponentToElement(e,t,n)},[4,E];case 1:return C=F.sent(),[4,Promise.all([p.WebAssemblyResourceLoader.initAsync(C.bootConfig,e||{}),h.WebAssemblyConfigLoader.initAsync(C)])];case 2:N=i.apply(void 0,[F.sent(),1]),S=N[0],F.label=3;case 3:return F.trys.push([3,5,,6]),[4,t.start(S)];case 4:return F.sent(),[3,6];case 5:throw A=F.sent(),new Error("Failed to start platform. Reason: "+A);case 6:return t.callEntryPoint(S.bootConfig.entryAssembly),[2]}}))}))}function w(e,t,n,r){var o=u.monoPlatform.readStringField(e,0),i=u.monoPlatform.readInt32Field(e,4),s=u.monoPlatform.readStringField(e,8),c=u.monoPlatform.readUint64Field(e,20);if(null!==s){var l=u.monoPlatform.readUint64Field(e,12);if(0!==l)return a.DotNet.jsCallDispatcher.beginInvokeJSFromDotNet(l,o,s,i,c),0;var f=a.DotNet.jsCallDispatcher.invokeJSFromDotNet(o,s,i,c);return null===f?0:BINDING.js_string_to_mono_string(f)}var d=a.DotNet.jsCallDispatcher.findJSFunction(o,c).call(null,t,n,r);switch(i){case a.DotNet.JSCallResultType.Default:return d;case a.DotNet.JSCallResultType.JSObjectReference:return a.DotNet.createJSObjectReference(d).__jsObjectId;default:throw new Error("Invalid JS call result type '"+i+"'.")}}window.Blazor.start=g,f.shouldAutoStart()&&g().catch((function(e){"undefined"!=typeof Module&&Module.printErr?Module.printErr(e):console.error(e)}))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(17),o=function(){function e(e){this.batchAddress=e,this.arrayRangeReader=i,this.arrayBuilderSegmentReader=a,this.diffReader=s,this.editReader=u,this.frameReader=c}return e.prototype.updatedComponents=function(){return r.platform.readStructField(this.batchAddress,0)},e.prototype.referenceFrames=function(){return r.platform.readStructField(this.batchAddress,i.structLength)},e.prototype.disposedComponentIds=function(){return r.platform.readStructField(this.batchAddress,2*i.structLength)},e.prototype.disposedEventHandlerIds=function(){return r.platform.readStructField(this.batchAddress,3*i.structLength)},e.prototype.updatedComponentsEntry=function(e,t){return l(e,t,s.structLength)},e.prototype.referenceFramesEntry=function(e,t){return l(e,t,c.structLength)},e.prototype.disposedComponentIdsEntry=function(e,t){var n=l(e,t,4);return r.platform.readInt32Field(n)},e.prototype.disposedEventHandlerIdsEntry=function(e,t){var n=l(e,t,8);return r.platform.readUint64Field(n)},e}();t.SharedMemoryRenderBatch=o;var i={structLength:8,values:function(e){return r.platform.readObjectField(e,0)},count:function(e){return r.platform.readInt32Field(e,4)}},a={structLength:12,values:function(e){var t=r.platform.readObjectField(e,0),n=r.platform.getObjectFieldsBaseAddress(t);return r.platform.readObjectField(n,0)},offset:function(e){return r.platform.readInt32Field(e,4)},count:function(e){return r.platform.readInt32Field(e,8)}},s={structLength:4+a.structLength,componentId:function(e){return r.platform.readInt32Field(e,0)},edits:function(e){return r.platform.readStructField(e,4)},editsEntry:function(e,t){return l(e,t,u.structLength)}},u={structLength:20,editType:function(e){return r.platform.readInt32Field(e,0)},siblingIndex:function(e){return r.platform.readInt32Field(e,4)},newTreeIndex:function(e){return r.platform.readInt32Field(e,8)},moveToSiblingIndex:function(e){return r.platform.readInt32Field(e,8)},removedAttributeName:function(e){return r.platform.readStringField(e,16)}},c={structLength:36,frameType:function(e){return r.platform.readInt16Field(e,4)},subtreeLength:function(e){return r.platform.readInt32Field(e,8)},elementReferenceCaptureId:function(e){return r.platform.readStringField(e,16)},componentId:function(e){return r.platform.readInt32Field(e,12)},elementName:function(e){return r.platform.readStringField(e,16)},textContent:function(e){return r.platform.readStringField(e,16)},markupContent:function(e){return r.platform.readStringField(e,16)},attributeName:function(e){return r.platform.readStringField(e,16)},attributeValue:function(e){return r.platform.readStringField(e,24,!0)},attributeEventHandlerId:function(e){return r.platform.readUint64Field(e,8)}};function l(e,t,n){return r.platform.getArrayEntryPtr(e,t,n)}},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{u(r.next(e))}catch(e){i(e)}}function s(e){try{u(r.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}u((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&!t)throw new Error("New logical elements must start empty, or allowExistingContents must be true");return r in e||(e[r]=[]),e}function s(e,t,n){var i=e;if(e instanceof Comment&&(c(i)&&c(i).length>0))throw new Error("Not implemented: inserting non-empty logical container");if(u(i))throw new Error("Not implemented: moving existing logical children");var a=c(t);if(n0;)e(r,0)}var i=r;i.parentNode.removeChild(i)},t.getLogicalParent=u,t.getLogicalSiblingEnd=function(e){return e[i]||null},t.getLogicalChild=function(e,t){return c(e)[t]},t.isSvgElement=function(e){return"http://www.w3.org/2000/svg"===l(e).namespaceURI},t.getLogicalChildrenArray=c,t.permuteLogicalChildren=function(e,t){var n=c(e);t.forEach((function(e){e.moveRangeStart=n[e.fromSiblingIndex],e.moveRangeEnd=function e(t){if(t instanceof Element)return t;var n=f(t);if(n)return n.previousSibling;var r=u(t);return r instanceof Element?r.lastChild:e(r)}(e.moveRangeStart)})),t.forEach((function(t){var r=t.moveToBeforeMarker=document.createComment("marker"),o=n[t.toSiblingIndex+1];o?o.parentNode.insertBefore(r,o):d(r,e)})),t.forEach((function(e){for(var t=e.moveToBeforeMarker,n=t.parentNode,r=e.moveRangeStart,o=e.moveRangeEnd,i=r;i;){var a=i.nextSibling;if(n.insertBefore(i,t),i===o)break;i=a}n.removeChild(t)})),t.forEach((function(e){n[e.toSiblingIndex]=e.moveRangeStart}))},t.getClosestDomElement=l},,,,,function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n(25),n(17);var r=n(26),o=n(7),i={},a=!1;function s(e,t,n){var o=i[e];o||(o=i[e]=new r.BrowserRenderer(e)),o.attachRootComponentToLogicalElement(n,t)}t.attachRootComponentToLogicalElement=s,t.attachRootComponentToElement=function(e,t,n){var r=document.querySelector(e);if(!r)throw new Error("Could not find any element matching selector '"+e+"'.");s(n||0,o.toLogicalElement(r,!0),t)},t.getRendererer=function(e){return i[e]},t.renderBatch=function(e,t){var n=i[e];if(!n)throw new Error("There is no browser renderer with ID "+e+".");for(var r=t.arrayRangeReader,o=t.updatedComponents(),s=r.values(o),u=r.count(o),c=t.referenceFrames(),l=r.values(c),f=t.diffReader,d=0;d0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]>2]}t.monoPlatform={start:function(e){return new Promise((function(t,n){var c,l;s.attachDebuggerHotkey(e),window.Browser={init:function(){}},c=function(){window.Module=function(e,t,n){var c=this,l=e.bootConfig.resources,f=window.Module||{},d=["DEBUGGING ENABLED"];f.print=function(e){return d.indexOf(e)<0&&console.log(e)},f.printErr=function(e){console.error(e),u.showErrorNotification()},f.preRun=f.preRun||[],f.postRun=f.postRun||[],f.preloadPlugins=[];var h,b,g=e.loadResources(l.assembly,(function(e){return"_framework/"+e}),"assembly"),w=e.loadResources(l.pdb||{},(function(e){return"_framework/"+e}),"pdb"),E=e.loadResource("dotnet.wasm","_framework/dotnet.wasm",e.bootConfig.resources.runtime["dotnet.wasm"],"dotnetwasm");return e.bootConfig.resources.runtime.hasOwnProperty("dotnet.timezones.blat")&&(h=e.loadResource("dotnet.timezones.blat","_framework/dotnet.timezones.blat",e.bootConfig.resources.runtime["dotnet.timezones.blat"],"globalization")),e.bootConfig.resources.runtime.hasOwnProperty("icudt.dat")&&(b=e.loadResource("icudt.dat","_framework/icudt.dat",e.bootConfig.resources.runtime["icudt.dat"],"globalization")),f.instantiateWasm=function(e,t){return r(c,void 0,void 0,(function(){var n,r;return o(this,(function(o){switch(o.label){case 0:return o.trys.push([0,3,,4]),[4,E];case 1:return[4,v(o.sent(),e)];case 2:return n=o.sent(),[3,4];case 3:throw r=o.sent(),f.printErr(r),r;case 4:return t(n),[2]}}))})),[]},f.preRun.push((function(){i=cwrap("mono_wasm_add_assembly",null,["string","number","number"]),MONO.loaded_files=[],h&&function(e){r(this,void 0,void 0,(function(){var t,n;return o(this,(function(r){switch(r.label){case 0:return t="blazor:timezonedata",addRunDependency(t),[4,e.response];case 1:return[4,r.sent().arrayBuffer()];case 2:return n=r.sent(),Module.FS_createPath("/","usr",!0,!0),Module.FS_createPath("/usr/","share",!0,!0),Module.FS_createPath("/usr/share/","zoneinfo",!0,!0),MONO.mono_wasm_load_data_archive(new Uint8Array(n),"/usr/share/zoneinfo/"),removeRunDependency(t),[2]}}))}))}(h),b?function(e){r(this,void 0,void 0,(function(){var t,n,r,i,a;return o(this,(function(o){switch(o.label){case 0:return t="blazor:icudata",addRunDependency(t),[4,e.response];case 1:return n=o.sent(),i=Uint8Array.bind,[4,n.arrayBuffer()];case 2:if(r=new(i.apply(Uint8Array,[void 0,o.sent()])),a=MONO.mono_wasm_load_bytes_into_heap(r),!MONO.mono_wasm_load_icu_data(a))throw new Error("Error loading ICU asset.");return removeRunDependency(t),[2]}}))}))}(b):MONO.mono_wasm_setenv("DOTNET_SYSTEM_GLOBALIZATION_INVARIANT","1"),g.forEach((function(e){return _(e,function(e,t){var n=e.lastIndexOf(".");if(n<0)throw new Error("No extension to replace in '"+e+"'");return e.substr(0,n)+t}(e.name,".dll"))})),w.forEach((function(e){return _(e,e.name)})),window.Blazor._internal.dotNetCriticalError=function(e){f.printErr(BINDING.conv_string(e)||"(null)")},window.Blazor._internal.getSatelliteAssemblies=function(t){var n=BINDING.mono_array_to_js_array(t),i=e.bootConfig.resources.satelliteResources;if(i){var a=Promise.all(n.filter((function(e){return i.hasOwnProperty(e)})).map((function(t){return e.loadResources(i[t],(function(e){return"_framework/"+e}),"assembly")})).reduce((function(e,t){return e.concat(t)}),new Array).map((function(e){return r(c,void 0,void 0,(function(){return o(this,(function(t){switch(t.label){case 0:return[4,e.response];case 1:return[2,t.sent().arrayBuffer()]}}))}))})));return BINDING.js_to_mono_obj(a.then((function(e){return e.length&&(window.Blazor._internal.readSatelliteAssemblies=function(){for(var t=BINDING.mono_obj_array_new(e.length),n=0;n>1];var n},readInt32Field:function(e,t){return d(e+(t||0))},readUint64Field:function(e,t){return function(e){var t=e>>2,n=Module.HEAPU32[t+1];if(n>l)throw new Error("Cannot read uint64 with high order part "+n+", because the result would exceed Number.MAX_SAFE_INTEGER.");return n*c+Module.HEAPU32[t]}(e+(t||0))},readFloatField:function(e,t){return n=e+(t||0),Module.HEAPF32[n>>2];var n},readObjectField:function(e,t){return d(e+(t||0))},readStringField:function(e,t,n){var r,o=d(e+(t||0));if(0===o)return null;if(n){var i=BINDING.unbox_mono_obj(o);return"boolean"==typeof i?i?"":null:i}return f?void 0===(r=f.stringCache.get(o))&&(r=BINDING.conv_string(o),f.stringCache.set(o,r)):r=BINDING.conv_string(o),r},readStructField:function(e,t){return e+(t||0)},beginHeapLock:function(){return y(),f=new b},invokeWhenHeapUnlocked:function(e){f?f.enqueuePostReleaseAction(e):e()}};var p=document.createElement("a");function h(e){return e+12}function m(e,t,n){var r="["+e+"] "+t+":"+n;return BINDING.bind_static_method(r)}function v(e,t){return r(this,void 0,void 0,(function(){var n,r;return o(this,(function(o){switch(o.label){case 0:if("function"!=typeof WebAssembly.instantiateStreaming)return[3,4];o.label=1;case 1:return o.trys.push([1,3,,4]),[4,WebAssembly.instantiateStreaming(e.response,t)];case 2:return[2,o.sent().instance];case 3:return n=o.sent(),console.info("Streaming compilation failed. Falling back to ArrayBuffer instantiation. ",n),[3,4];case 4:return[4,e.response.then((function(e){return e.arrayBuffer()}))];case 5:return r=o.sent(),[4,WebAssembly.instantiate(r,t)];case 6:return[2,o.sent().instance]}}))}))}function y(){if(f)throw new Error("Assertion failed - heap is currently locked")}var b=function(){function e(){this.stringCache=new Map}return e.prototype.enqueuePostReleaseAction=function(e){this.postReleaseActions||(this.postReleaseActions=[]),this.postReleaseActions.push(e)},e.prototype.release=function(){var e;if(f!==this)throw new Error("Trying to release a lock which isn't current");for(f=null;null===(e=this.postReleaseActions)||void 0===e?void 0:e.length;){this.postReleaseActions.shift()(),y()}},e}()},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{u(r.next(e))}catch(e){i(e)}}function s(e){try{u(r.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}u((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&e.invokeMethodAsync("OnSpacerAfterVisible",r.boundingClientRect.bottom-r.intersectionRect.bottom,a,s)}}))}),{root:i,rootMargin:o+"px"});a.observe(t),a.observe(n);var s=c(t),u=c(n);function c(e){var t=new MutationObserver((function(){a.unobserve(e),a.observe(e)}));return t.observe(e,{attributes:!0}),t}r[e._id]={intersectionObserver:a,mutationObserverBefore:s,mutationObserverAfter:u}},dispose:function(e){var t=r[e._id];t&&(t.intersectionObserver.disconnect(),t.mutationObserverBefore.disconnect(),t.mutationObserverAfter.disconnect(),e.dispose(),delete r[e._id])}};var r={}},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{u(r.next(e))}catch(e){i(e)}}function s(e){try{u(r.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}u((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1].*)$/;function i(e,t){var n=e.currentElement;if(n&&n.nodeType===Node.COMMENT_NODE&&n.textContent){var r=new RegExp(o).exec(n.textContent),i=r&&r.groups&&r.groups.descriptor;if(!i)return;try{var s=function(e){var t=JSON.parse(e),n=t.type;if("server"!==n&&"webassembly"!==n)throw new Error("Invalid component type '"+n+"'.");return t}(i);switch(t){case"webassembly":return function(e,t,n){var r=e.type,o=e.assembly,i=e.typeName,s=e.parameterDefinitions,u=e.parameterValues,c=e.prerenderId;if("webassembly"!==r)return;if(!o)throw new Error("assembly must be defined when using a descriptor.");if(!i)throw new Error("typeName must be defined when using a descriptor.");if(c){var l=a(c,n);if(!l)throw new Error("Could not find an end component comment for '"+t+"'");return{type:r,assembly:o,typeName:i,parameterDefinitions:s&&atob(s),parameterValues:u&&atob(u),start:t,prerenderId:c,end:l}}return{type:r,assembly:o,typeName:i,parameterDefinitions:s&&atob(s),parameterValues:u&&atob(u),start:t}}(s,n,e);case"server":return function(e,t,n){var r=e.type,o=e.descriptor,i=e.sequence,s=e.prerenderId;if("server"!==r)return;if(!o)throw new Error("descriptor must be defined when using a descriptor.");if(void 0===i)throw new Error("sequence must be defined when using a descriptor.");if(!Number.isInteger(i))throw new Error("Error parsing the sequence '"+i+"' for component '"+JSON.stringify(e)+"'");if(s){var u=a(s,n);if(!u)throw new Error("Could not find an end component comment for '"+t+"'");return{type:r,sequence:i,descriptor:o,start:t,prerenderId:s,end:u}}return{type:r,sequence:i,descriptor:o,start:t}}(s,n,e)}}catch(e){throw new Error("Found malformed component comment at "+n.textContent)}}}function a(e,t){for(;t.next()&&t.currentElement;){var n=t.currentElement;if(n.nodeType===Node.COMMENT_NODE&&n.textContent){var r=new RegExp(o).exec(n.textContent),i=r&&r[1];if(i)return s(i,e),n}}}function s(e,t){var n=JSON.parse(e);if(1!==Object.keys(n).length)throw new Error("Invalid end of component comment: '"+e+"'");var r=n.prerenderId;if(!r)throw new Error("End of component comment must have a value for the prerendered property: '"+e+"'");if(r!==t)throw new Error("End of component comment prerendered property must match the start comment prerender id: '"+t+"', '"+r+"'")}var u=function(){function e(e){this.childNodes=e,this.currentIndex=-1,this.length=e.length}return e.prototype.next=function(){return this.currentIndex++,this.currentIndex0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0)&&!(r=i.next()).done;)a.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return a};Object.defineProperty(t,"__esModule",{value:!0});var a=n(3);n(24);var s=n(17),u=n(20),c=n(12),l=n(48),f=n(36),d=n(18),p=n(49),h=n(50),m=n(51),v=n(52),y=n(37),b=!1;function g(e){return r(this,void 0,void 0,(function(){var t,n,f,g,E,_,I,C,N,S,A,k=this;return o(this,(function(F){switch(F.label){case 0:if(b)throw new Error("Blazor has already started.");return b=!0,d.setEventDispatcher((function(e,t){c.getRendererer(e.browserRendererId).eventDelegator.getHandler(e.eventHandlerId)&&u.monoPlatform.invokeWhenHeapUnlocked((function(){return a.DotNet.invokeMethodAsync("Microsoft.AspNetCore.Components.WebAssembly","DispatchEvent",e,JSON.stringify(t))}))})),window.Blazor._internal.invokeJSFromDotNet=w,t=s.setPlatform(u.monoPlatform),window.Blazor.platform=t,window.Blazor._internal.renderBatch=function(e,t){var n=u.monoPlatform.beginHeapLock();try{c.renderBatch(e,new l.SharedMemoryRenderBatch(t))}finally{n.release()}},n=window.Blazor._internal.navigationManager.getBaseURI,f=window.Blazor._internal.navigationManager.getLocationHref,window.Blazor._internal.navigationManager.getUnmarshalledBaseURI=function(){return BINDING.js_string_to_mono_string(n())},window.Blazor._internal.navigationManager.getUnmarshalledLocationHref=function(){return BINDING.js_string_to_mono_string(f())},window.Blazor._internal.navigationManager.listenForNavigationEvents((function(e,t){return r(k,void 0,void 0,(function(){return o(this,(function(n){switch(n.label){case 0:return[4,a.DotNet.invokeMethodAsync("Microsoft.AspNetCore.Components.WebAssembly","NotifyLocationChanged",e,t)];case 1:return n.sent(),[2]}}))}))})),g=null==e?void 0:e.environment,E=m.BootConfigResult.initAsync(g),_=y.discoverComponents(document,"webassembly"),I=new v.WebAssemblyComponentAttacher(_),window.Blazor._internal.registeredComponents={getRegisteredComponentsCount:function(){return I.getCount()},getId:function(e){return I.getId(e)},getAssembly:function(e){return BINDING.js_string_to_mono_string(I.getAssembly(e))},getTypeName:function(e){return BINDING.js_string_to_mono_string(I.getTypeName(e))},getParameterDefinitions:function(e){return BINDING.js_string_to_mono_string(I.getParameterDefinitions(e)||"")},getParameterValues:function(e){return BINDING.js_string_to_mono_string(I.getParameterValues(e)||"")}},window.Blazor._internal.attachRootComponentToElement=function(e,t,n){var r=I.resolveRegisteredElement(e);r?c.attachRootComponentToLogicalElement(n,r,t):c.attachRootComponentToElement(e,t,n)},[4,E];case 1:return C=F.sent(),[4,Promise.all([p.WebAssemblyResourceLoader.initAsync(C.bootConfig,e||{}),h.WebAssemblyConfigLoader.initAsync(C)])];case 2:N=i.apply(void 0,[F.sent(),1]),S=N[0],F.label=3;case 3:return F.trys.push([3,5,,6]),[4,t.start(S)];case 4:return F.sent(),[3,6];case 5:throw A=F.sent(),new Error("Failed to start platform. Reason: "+A);case 6:return t.callEntryPoint(S.bootConfig.entryAssembly),[2]}}))}))}function w(e,t,n,r){var o=u.monoPlatform.readStringField(e,0),i=u.monoPlatform.readInt32Field(e,4),s=u.monoPlatform.readStringField(e,8),c=u.monoPlatform.readUint64Field(e,20);if(null!==s){var l=u.monoPlatform.readUint64Field(e,12);if(0!==l)return a.DotNet.jsCallDispatcher.beginInvokeJSFromDotNet(l,o,s,i,c),0;var f=a.DotNet.jsCallDispatcher.invokeJSFromDotNet(o,s,i,c);return null===f?0:BINDING.js_string_to_mono_string(f)}var d=a.DotNet.jsCallDispatcher.findJSFunction(o,c).call(null,t,n,r);switch(i){case a.DotNet.JSCallResultType.Default:return d;case a.DotNet.JSCallResultType.JSObjectReference:return a.DotNet.createJSObjectReference(d).__jsObjectId;default:throw new Error("Invalid JS call result type '"+i+"'.")}}window.Blazor.start=g,f.shouldAutoStart()&&g().catch((function(e){"undefined"!=typeof Module&&Module.printErr?Module.printErr(e):console.error(e)}))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(17),o=function(){function e(e){this.batchAddress=e,this.arrayRangeReader=i,this.arrayBuilderSegmentReader=a,this.diffReader=s,this.editReader=u,this.frameReader=c}return e.prototype.updatedComponents=function(){return r.platform.readStructField(this.batchAddress,0)},e.prototype.referenceFrames=function(){return r.platform.readStructField(this.batchAddress,i.structLength)},e.prototype.disposedComponentIds=function(){return r.platform.readStructField(this.batchAddress,2*i.structLength)},e.prototype.disposedEventHandlerIds=function(){return r.platform.readStructField(this.batchAddress,3*i.structLength)},e.prototype.updatedComponentsEntry=function(e,t){return l(e,t,s.structLength)},e.prototype.referenceFramesEntry=function(e,t){return l(e,t,c.structLength)},e.prototype.disposedComponentIdsEntry=function(e,t){var n=l(e,t,4);return r.platform.readInt32Field(n)},e.prototype.disposedEventHandlerIdsEntry=function(e,t){var n=l(e,t,8);return r.platform.readUint64Field(n)},e}();t.SharedMemoryRenderBatch=o;var i={structLength:8,values:function(e){return r.platform.readObjectField(e,0)},count:function(e){return r.platform.readInt32Field(e,4)}},a={structLength:12,values:function(e){var t=r.platform.readObjectField(e,0),n=r.platform.getObjectFieldsBaseAddress(t);return r.platform.readObjectField(n,0)},offset:function(e){return r.platform.readInt32Field(e,4)},count:function(e){return r.platform.readInt32Field(e,8)}},s={structLength:4+a.structLength,componentId:function(e){return r.platform.readInt32Field(e,0)},edits:function(e){return r.platform.readStructField(e,4)},editsEntry:function(e,t){return l(e,t,u.structLength)}},u={structLength:20,editType:function(e){return r.platform.readInt32Field(e,0)},siblingIndex:function(e){return r.platform.readInt32Field(e,4)},newTreeIndex:function(e){return r.platform.readInt32Field(e,8)},moveToSiblingIndex:function(e){return r.platform.readInt32Field(e,8)},removedAttributeName:function(e){return r.platform.readStringField(e,16)}},c={structLength:36,frameType:function(e){return r.platform.readInt16Field(e,4)},subtreeLength:function(e){return r.platform.readInt32Field(e,8)},elementReferenceCaptureId:function(e){return r.platform.readStringField(e,16)},componentId:function(e){return r.platform.readInt32Field(e,12)},elementName:function(e){return r.platform.readStringField(e,16)},textContent:function(e){return r.platform.readStringField(e,16)},markupContent:function(e){return r.platform.readStringField(e,16)},attributeName:function(e){return r.platform.readStringField(e,16)},attributeValue:function(e){return r.platform.readStringField(e,24,!0)},attributeEventHandlerId:function(e){return r.platform.readUint64Field(e,8)}};function l(e,t,n){return r.platform.getArrayEntryPtr(e,t,n)}},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{u(r.next(e))}catch(e){i(e)}}function s(e){try{u(r.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}u((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1] | undefined; arrayBuffer: ArrayBuffer | undefined; } @@ -42,7 +42,7 @@ function init(callbackWrapper: any, elem: InputElement): void { lastModified: new Date(file.lastModified).toISOString(), name: file.name, size: file.size, - type: file.type, + contentType: file.type, readPromise: undefined, arrayBuffer: undefined, }; @@ -86,7 +86,7 @@ async function toImageFile(elem: InputElement, fileId: number, format: string, m lastModified: originalFile.lastModified, name: originalFile.name, size: resizedImageBlob?.size || 0, - type: format, + contentType: format, readPromise: undefined, arrayBuffer: undefined, }; diff --git a/src/Components/test/E2ETest/Tests/InputFileTest.cs b/src/Components/test/E2ETest/Tests/InputFileTest.cs index c140f996c6fa..5a8a940efd14 100644 --- a/src/Components/test/E2ETest/Tests/InputFileTest.cs +++ b/src/Components/test/E2ETest/Tests/InputFileTest.cs @@ -7,7 +7,6 @@ using System.Text; using BasicTestApp; using BasicTestApp.FormsTest; -using Microsoft.AspNetCore.Components.E2ETest; using Microsoft.AspNetCore.Components.E2ETest.Infrastructure; using Microsoft.AspNetCore.Components.E2ETest.Infrastructure.ServerFixtures; using Microsoft.AspNetCore.E2ETesting; @@ -50,11 +49,17 @@ public void CanUploadSingleSmallFile() inputFile.SendKeys(file.Path); var fileContainer = Browser.FindElement(By.Id($"file-{file.Name}")); + var fileNameElement = fileContainer.FindElement(By.Id("file-name")); + var fileLastModifiedElement = fileContainer.FindElement(By.Id("file-last-modified")); var fileSizeElement = fileContainer.FindElement(By.Id("file-size")); + var fileContentTypeElement = fileContainer.FindElement(By.Id("file-content-type")); var fileContentElement = fileContainer.FindElement(By.Id("file-content")); - // Validate that the file was uploaded correctly + // Validate that the file was uploaded correctly and all fields are present + Browser.False(() => string.IsNullOrWhiteSpace(fileNameElement.Text)); + Browser.NotEqual(default, () => DateTimeOffset.Parse(fileLastModifiedElement.Text)); Browser.Equal(file.Contents.Length.ToString(), () => fileSizeElement.Text); + Browser.Equal("text/plain", () => fileContentTypeElement.Text); Browser.Equal(file.Text, () => fileContentElement.Text); } @@ -77,11 +82,17 @@ public void CanUploadSingleLargeFile() inputFile.SendKeys(file.Path); var fileContainer = Browser.FindElement(By.Id($"file-{file.Name}")); + var fileNameElement = fileContainer.FindElement(By.Id("file-name")); + var fileLastModifiedElement = fileContainer.FindElement(By.Id("file-last-modified")); var fileSizeElement = fileContainer.FindElement(By.Id("file-size")); + var fileContentTypeElement = fileContainer.FindElement(By.Id("file-content-type")); var fileContentElement = fileContainer.FindElement(By.Id("file-content")); - // Validate that the file was uploaded correctly + // Validate that the file was uploaded correctly and all fields are present + Browser.False(() => string.IsNullOrWhiteSpace(fileNameElement.Text)); + Browser.NotEqual(default, () => DateTimeOffset.Parse(fileLastModifiedElement.Text)); Browser.Equal(file.Contents.Length.ToString(), () => fileSizeElement.Text); + Browser.Equal("text/plain", () => fileContentTypeElement.Text); Browser.Equal(file.Text, () => fileContentElement.Text); } @@ -97,14 +108,21 @@ public void CanUploadMultipleFiles() var inputFile = Browser.FindElement(By.Id("input-file")); inputFile.SendKeys(string.Join("\n", files.Select(f => f.Path))); - // VAlidate that each file was uploaded correctly + // Validate that each file was uploaded correctly Assert.All(files, file => { var fileContainer = Browser.FindElement(By.Id($"file-{file.Name}")); + var fileNameElement = fileContainer.FindElement(By.Id("file-name")); + var fileLastModifiedElement = fileContainer.FindElement(By.Id("file-last-modified")); var fileSizeElement = fileContainer.FindElement(By.Id("file-size")); + var fileContentTypeElement = fileContainer.FindElement(By.Id("file-content-type")); var fileContentElement = fileContainer.FindElement(By.Id("file-content")); + // Validate that the file was uploaded correctly and all fields are present + Browser.False(() => string.IsNullOrWhiteSpace(fileNameElement.Text)); + Browser.NotEqual(default, () => DateTimeOffset.Parse(fileLastModifiedElement.Text)); Browser.Equal(file.Contents.Length.ToString(), () => fileSizeElement.Text); + Browser.Equal("text/plain", () => fileContentTypeElement.Text); Browser.Equal(file.Text, () => fileContentElement.Text); }); } diff --git a/src/Components/test/testassets/BasicTestApp/FormsTest/InputFileComponent.razor b/src/Components/test/testassets/BasicTestApp/FormsTest/InputFileComponent.razor index 44a555fe4f9e..7e163e304787 100644 --- a/src/Components/test/testassets/BasicTestApp/FormsTest/InputFileComponent.razor +++ b/src/Components/test/testassets/BasicTestApp/FormsTest/InputFileComponent.razor @@ -27,9 +27,11 @@ Max allowed files: @foreach (var (file, content) in loadedFiles) {

- File name: @(file.Name)
- File size (bytes): @(file.Size)
- File content: @content
+ Name: @(file.Name)
+ Last modified: @(file.LastModified.ToString())
+ Size (bytes): @(file.Size)
+ Content type: @(file.ContentType)
+ Content: @content

} From 8f461884c967be466cbfa2457fd982835f66b730 Mon Sep 17 00:00:00 2001 From: Mackinnon Buck Date: Wed, 9 Sep 2020 13:33:47 -0700 Subject: [PATCH 41/45] Update JSCallResultTypeHelper.cs (#25628) * Update JSCallResultTypeHelper.cs and PublicAPI.Unshipped.txt * CR feedback. * Removed exception message --- .../JSInterop/JSCallResultTypeHelper.cs | 23 +++++++++++++++---- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/src/Shared/JSInterop/JSCallResultTypeHelper.cs b/src/Shared/JSInterop/JSCallResultTypeHelper.cs index 82c3920c7210..8bf1a547fc1b 100644 --- a/src/Shared/JSInterop/JSCallResultTypeHelper.cs +++ b/src/Shared/JSInterop/JSCallResultTypeHelper.cs @@ -1,15 +1,28 @@ // Copyright (c) .NET Foundation. All rights reserved. // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. +using System.Reflection; + namespace Microsoft.JSInterop { internal static class JSCallResultTypeHelper { + // We avoid using Assembly.GetExecutingAssembly() because this is shared code. + private static readonly Assembly _currentAssembly = typeof(JSCallResultType).Assembly; + public static JSCallResultType FromGeneric() - => typeof(TResult) == typeof(IJSObjectReference) - || typeof(TResult) == typeof(IJSInProcessObjectReference) - || typeof(TResult) == typeof(IJSUnmarshalledObjectReference) ? - JSCallResultType.JSObjectReference : - JSCallResultType.Default; + { + if (typeof(TResult).Assembly == _currentAssembly + && (typeof(TResult) == typeof(IJSObjectReference) + || typeof(TResult) == typeof(IJSInProcessObjectReference) + || typeof(TResult) == typeof(IJSUnmarshalledObjectReference))) + { + return JSCallResultType.JSObjectReference; + } + else + { + return JSCallResultType.Default; + } + } } } From 76fbd1a2831ae0d8c73afd2f3c7d8c531223a8b8 Mon Sep 17 00:00:00 2001 From: William Godbe Date: Wed, 9 Sep 2020 14:15:17 -0700 Subject: [PATCH 42/45] Strip duplicate files from SharedFx input to Nuget Pack (#25733) --- .../src/Microsoft.AspNetCore.App.Runtime.csproj | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.csproj b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.csproj index f642976df34c..096f7df9da01 100644 --- a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.csproj +++ b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.csproj @@ -288,7 +288,14 @@ This package is an internal implementation of the .NET Core SDK and is not meant - + + + %(BuiltProjectOutputGroupOutput.Identity) + + + + +
From 035221d73117bf9596138cf324d2049700c45002 Mon Sep 17 00:00:00 2001 From: John Luo Date: Wed, 9 Sep 2020 14:24:48 -0700 Subject: [PATCH 43/45] Add cache for retrieved RBAC claims (#25698) --- .../Negotiate/src/Internal/LdapAdapter.cs | 53 ++++++++++++++----- .../Negotiate/src/LdapSettings.cs | 20 +++++++ ...tCore.Authentication.Negotiate.Test.csproj | 1 + .../Negotiate.Test/NegotiateHandlerTests.cs | 48 ++++++++++++++++- 4 files changed, 109 insertions(+), 13 deletions(-) diff --git a/src/Security/Authentication/Negotiate/src/Internal/LdapAdapter.cs b/src/Security/Authentication/Negotiate/src/Internal/LdapAdapter.cs index 4ddad3c5e31b..ca47c0282280 100644 --- a/src/Security/Authentication/Negotiate/src/Internal/LdapAdapter.cs +++ b/src/Security/Authentication/Negotiate/src/Internal/LdapAdapter.cs @@ -1,11 +1,13 @@ // Copyright (c) .NET Foundation. All rights reserved. // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. +using System.Collections.Generic; using System.DirectoryServices.Protocols; using System.Linq; using System.Security.Claims; using System.Text; using System.Threading.Tasks; +using Microsoft.Extensions.Caching.Memory; using Microsoft.Extensions.Logging; namespace Microsoft.AspNetCore.Authentication.Negotiate @@ -15,8 +17,26 @@ internal static class LdapAdapter public static async Task RetrieveClaimsAsync(LdapSettings settings, ClaimsIdentity identity, ILogger logger) { var user = identity.Name; - var userAccountName = user.Substring(0, user.IndexOf('@')); + var userAccountNameIndex = user.IndexOf('@'); + var userAccountName = userAccountNameIndex == -1 ? user : user.Substring(0, userAccountNameIndex); + + if (settings.ClaimsCache == null) + { + settings.ClaimsCache = new MemoryCache(new MemoryCacheOptions { SizeLimit = settings.ClaimsCacheSize }); + } + + if (settings.ClaimsCache.TryGetValue>(user, out var cachedClaims)) + { + foreach (var claim in cachedClaims) + { + identity.AddClaim(new Claim(identity.RoleClaimType, claim)); + } + + return; + } + var distinguishedName = settings.Domain.Split('.').Select(name => $"dc={name}").Aggregate((a, b) => $"{a},{b}"); + var retrievedClaims = new List(); var filter = $"(&(objectClass=user)(sAMAccountName={userAccountName}))"; // This is using ldap search query language, it is looking on the server for someUser var searchRequest = new SearchRequest(distinguishedName, filter, SearchScope.Subtree, null); @@ -45,13 +65,27 @@ public static async Task RetrieveClaimsAsync(LdapSettings settings, ClaimsIdenti if (!settings.IgnoreNestedGroups) { - GetNestedGroups(settings.LdapConnection, identity, distinguishedName, groupCN, logger); + GetNestedGroups(settings.LdapConnection, identity, distinguishedName, groupCN, logger, retrievedClaims); } else { - AddRole(identity, groupCN); + retrievedClaims.Add(groupCN); } } + + var entrySize = user.Length * 2; //Approximate the size of stored key in memory cache. + foreach (var claim in retrievedClaims) + { + identity.AddClaim(new Claim(identity.RoleClaimType, claim)); + entrySize += claim.Length * 2; //Approximate the size of stored value in memory cache. + } + + settings.ClaimsCache.Set(user, + retrievedClaims, + new MemoryCacheEntryOptions() + .SetSize(entrySize) + .SetSlidingExpiration(settings.ClaimsCacheSlidingExpiration) + .SetAbsoluteExpiration(settings.ClaimsCacheAbsoluteExpiration)); } else { @@ -59,10 +93,10 @@ public static async Task RetrieveClaimsAsync(LdapSettings settings, ClaimsIdenti } } - private static void GetNestedGroups(LdapConnection connection, ClaimsIdentity principal, string distinguishedName, string groupCN, ILogger logger) + private static void GetNestedGroups(LdapConnection connection, ClaimsIdentity principal, string distinguishedName, string groupCN, ILogger logger, IList retrievedClaims) { var filter = $"(&(objectClass=group)(sAMAccountName={groupCN}))"; // This is using ldap search query language, it is looking on the server for someUser - var searchRequest = new SearchRequest(distinguishedName, filter, System.DirectoryServices.Protocols.SearchScope.Subtree, null); + var searchRequest = new SearchRequest(distinguishedName, filter, SearchScope.Subtree, null); var searchResponse = (SearchResponse)connection.SendRequest(searchRequest); if (searchResponse.Entries.Count > 0) @@ -74,7 +108,7 @@ private static void GetNestedGroups(LdapConnection connection, ClaimsIdentity pr var group = searchResponse.Entries[0]; //Get the object that was found on ldap string name = group.DistinguishedName; - AddRole(principal, name); + retrievedClaims.Add(name); var memberof = group.Attributes["memberof"]; // You can access ldap Attributes with Attributes property if (memberof != null) @@ -83,15 +117,10 @@ private static void GetNestedGroups(LdapConnection connection, ClaimsIdentity pr { var groupDN = $"{Encoding.UTF8.GetString((byte[])member)}"; var nestedGroupCN = groupDN.Split(',')[0].Substring("CN=".Length); - GetNestedGroups(connection, principal, distinguishedName, nestedGroupCN, logger); + GetNestedGroups(connection, principal, distinguishedName, nestedGroupCN, logger, retrievedClaims); } } } } - - private static void AddRole(ClaimsIdentity identity, string role) - { - identity.AddClaim(new Claim(identity.RoleClaimType, role)); - } } } diff --git a/src/Security/Authentication/Negotiate/src/LdapSettings.cs b/src/Security/Authentication/Negotiate/src/LdapSettings.cs index 1e26c26c14d4..cdefe6f676e1 100644 --- a/src/Security/Authentication/Negotiate/src/LdapSettings.cs +++ b/src/Security/Authentication/Negotiate/src/LdapSettings.cs @@ -3,6 +3,7 @@ using System; using System.DirectoryServices.Protocols; +using Microsoft.Extensions.Caching.Memory; namespace Microsoft.AspNetCore.Authentication.Negotiate { @@ -56,6 +57,25 @@ public class LdapSettings ///
public LdapConnection LdapConnection { get; set; } + /// + /// The sliding expiration that should be used for entries in the cache for user claims, defaults to 10 minutes. + /// This is a sliding expiration that will extend each time claims for a user is retrieved. + /// + public TimeSpan ClaimsCacheSlidingExpiration { get; set; } = TimeSpan.FromMinutes(10); + + /// + /// The absolute expiration that should be used for entries in the cache for user claims, defaults to 60 minutes. + /// This is an absolute expiration that starts when a claims for a user is retrieved for the first time. + /// + public TimeSpan ClaimsCacheAbsoluteExpiration { get; set; } = TimeSpan.FromMinutes(60); + + /// + /// The maximum size of the claim results cache, defaults to 100 MB. + /// + public int ClaimsCacheSize { get; set; } = 100 * 1024 * 1024; + + internal MemoryCache ClaimsCache { get; set; } + public void Validate() { if (EnableLdapClaimResolution) diff --git a/src/Security/Authentication/Negotiate/test/Negotiate.Test/Microsoft.AspNetCore.Authentication.Negotiate.Test.csproj b/src/Security/Authentication/Negotiate/test/Negotiate.Test/Microsoft.AspNetCore.Authentication.Negotiate.Test.csproj index 40c623bd117a..b14d633eabbf 100644 --- a/src/Security/Authentication/Negotiate/test/Negotiate.Test/Microsoft.AspNetCore.Authentication.Negotiate.Test.csproj +++ b/src/Security/Authentication/Negotiate/test/Negotiate.Test/Microsoft.AspNetCore.Authentication.Negotiate.Test.csproj @@ -10,6 +10,7 @@ + diff --git a/src/Security/Authentication/Negotiate/test/Negotiate.Test/NegotiateHandlerTests.cs b/src/Security/Authentication/Negotiate/test/Negotiate.Test/NegotiateHandlerTests.cs index 0b0b7b14cd2d..0d84e1f5d4a4 100644 --- a/src/Security/Authentication/Negotiate/test/Negotiate.Test/NegotiateHandlerTests.cs +++ b/src/Security/Authentication/Negotiate/test/Negotiate.Test/NegotiateHandlerTests.cs @@ -13,7 +13,7 @@ using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Routing; using Microsoft.AspNetCore.TestHost; -using Microsoft.AspNetCore.Testing; +using Microsoft.Extensions.Caching.Memory; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; using Microsoft.Net.Http.Headers; @@ -208,6 +208,28 @@ public async Task AuthHeaderAfterNtlmCompleted_ReAuthenticates(bool persist) await NtlmStage1And2Auth(server, testConnection); } + [Fact] + public async Task RBACClaimsRetrievedFromCacheAfterKerberosCompleted() + { + var claimsCache = new MemoryCache(new MemoryCacheOptions()); + claimsCache.Set("name", new string[] { "CN=Domain Admins,CN=Users,DC=domain,DC=net" }); + NegotiateOptions negotiateOptions = null; + using var host = await CreateHostAsync(options => + { + options.EnableLdap(ldapSettings => + { + ldapSettings.Domain = "domain.NET"; + ldapSettings.ClaimsCache = claimsCache; + ldapSettings.EnableLdapClaimResolution = false; // This disables binding to the LDAP connection on startup + }); + negotiateOptions = options; + }); + var server = host.GetTestServer(); + var testConnection = new TestConnection(); + negotiateOptions.EnableLdap(_ => { }); // Forcefully re-enable ldap claims resolution to trigger RBAC claims retrieval from cache + await AuthenticateAndRetrieveRBACClaims(server, testConnection); + } + [Theory] [InlineData(false)] [InlineData(true)] @@ -304,6 +326,12 @@ public async Task OtherError_Throws() var ex = await Assert.ThrowsAsync(() => SendAsync(server, "/404", testConnection, "Negotiate OtherError")); Assert.Equal("A test other error occurred", ex.Message); } + private static async Task AuthenticateAndRetrieveRBACClaims(TestServer server, TestConnection testConnection) + { + var result = await SendAsync(server, "/AuthenticateAndRetrieveRBACClaims", testConnection, "Negotiate ClientKerberosBlob"); + Assert.Equal(StatusCodes.Status200OK, result.Response.StatusCode); + Assert.Equal("Negotiate ServerKerberosBlob", result.Response.Headers[HeaderNames.WWWAuthenticate]); + } // Single Stage private static async Task KerberosAuth(TestServer server, TestConnection testConnection) @@ -408,6 +436,24 @@ private static void ConfigureEndpoints(IEndpointRouteBuilder builder) await context.Response.WriteAsync(name); }); + builder.Map("/AuthenticateAndRetrieveRBACClaims", async context => + { + if (!context.User.Identity.IsAuthenticated) + { + await context.ChallengeAsync(); + return; + } + + Assert.Equal("HTTP/1.1", context.Request.Protocol); // Not HTTP/2 + var name = context.User.Identity.Name; + Assert.False(string.IsNullOrEmpty(name), "name"); + Assert.Contains( + context.User.Claims, + claim => claim.Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/role" + && claim.Value == "CN=Domain Admins,CN=Users,DC=domain,DC=net"); + await context.Response.WriteAsync(name); + }); + builder.Map("/AlreadyAuthenticated", async context => { Assert.Equal("HTTP/1.1", context.Request.Protocol); // Not HTTP/2 From e0ad8412c2e944285622ab9530890e914f3333a6 Mon Sep 17 00:00:00 2001 From: Safia Abdalla Date: Wed, 9 Sep 2020 15:05:44 -0700 Subject: [PATCH 44/45] Remove stray merge conflict markers from AspNetCore.sln --- AspNetCore.sln | 1 - 1 file changed, 1 deletion(-) diff --git a/AspNetCore.sln b/AspNetCore.sln index 958e9a61b7fa..c334ef68d95b 100644 --- a/AspNetCore.sln +++ b/AspNetCore.sln @@ -7205,7 +7205,6 @@ Global {010A9638-F20E-4FE6-A186-85732BFC9CB0}.Release|x64.Build.0 = Release|Any CPU {010A9638-F20E-4FE6-A186-85732BFC9CB0}.Release|x86.ActiveCfg = Release|Any CPU {010A9638-F20E-4FE6-A186-85732BFC9CB0}.Release|x86.Build.0 = Release|Any CPU -======= {FEF97646-9BC9-4D1B-A939-784D915C18A4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {FEF97646-9BC9-4D1B-A939-784D915C18A4}.Debug|Any CPU.Build.0 = Debug|Any CPU {FEF97646-9BC9-4D1B-A939-784D915C18A4}.Debug|x64.ActiveCfg = Debug|Any CPU From 3a7fb768b809492aab4edcb680a05b9c54b332c6 Mon Sep 17 00:00:00 2001 From: Tanay Parikh Date: Wed, 2 Sep 2020 13:29:50 -0700 Subject: [PATCH 45/45] Revert "System.IO.Pipelines Fix" This reverts commit 520b9e23f027d7cca49d33f1dc6b2a0e57c893b3. --- eng/SharedFramework.External.props | 1 - .../Web/src/Microsoft.AspNetCore.Components.Web.csproj | 1 - src/Framework/test/TestData.cs | 2 -- .../TestHost/src/Microsoft.AspNetCore.TestHost.csproj | 6 +++++- .../src/Microsoft.AspNetCore.Http.Features.csproj | 8 ++++++++ .../src/Microsoft.AspNetCore.WebUtilities.csproj | 1 - .../Microsoft.AspNetCore.Connections.Abstractions.csproj | 2 +- .../IIS/IIS/src/Microsoft.AspNetCore.Server.IIS.csproj | 1 - .../src/Microsoft.AspNetCore.Server.IISIntegration.csproj | 1 - .../Shared.Tests/Microsoft.AspNetCore.Shared.Tests.csproj | 1 - 10 files changed, 14 insertions(+), 10 deletions(-) diff --git a/eng/SharedFramework.External.props b/eng/SharedFramework.External.props index a43f82e80353..d9914be2e486 100644 --- a/eng/SharedFramework.External.props +++ b/eng/SharedFramework.External.props @@ -40,7 +40,6 @@ - + + + diff --git a/src/Http/Http.Features/src/Microsoft.AspNetCore.Http.Features.csproj b/src/Http/Http.Features/src/Microsoft.AspNetCore.Http.Features.csproj index dda22adeabb8..d6e93d7b0212 100644 --- a/src/Http/Http.Features/src/Microsoft.AspNetCore.Http.Features.csproj +++ b/src/Http/Http.Features/src/Microsoft.AspNetCore.Http.Features.csproj @@ -14,7 +14,15 @@ + + + + + + + + diff --git a/src/Http/WebUtilities/src/Microsoft.AspNetCore.WebUtilities.csproj b/src/Http/WebUtilities/src/Microsoft.AspNetCore.WebUtilities.csproj index d165fe972721..ac568dc32fba 100644 --- a/src/Http/WebUtilities/src/Microsoft.AspNetCore.WebUtilities.csproj +++ b/src/Http/WebUtilities/src/Microsoft.AspNetCore.WebUtilities.csproj @@ -19,7 +19,6 @@ - diff --git a/src/Servers/Connections.Abstractions/src/Microsoft.AspNetCore.Connections.Abstractions.csproj b/src/Servers/Connections.Abstractions/src/Microsoft.AspNetCore.Connections.Abstractions.csproj index dda00cbf9235..b9614fcb0221 100644 --- a/src/Servers/Connections.Abstractions/src/Microsoft.AspNetCore.Connections.Abstractions.csproj +++ b/src/Servers/Connections.Abstractions/src/Microsoft.AspNetCore.Connections.Abstractions.csproj @@ -25,7 +25,7 @@ diff --git a/src/Servers/IIS/IIS/src/Microsoft.AspNetCore.Server.IIS.csproj b/src/Servers/IIS/IIS/src/Microsoft.AspNetCore.Server.IIS.csproj index d262f5cd0b44..de559faf6d26 100644 --- a/src/Servers/IIS/IIS/src/Microsoft.AspNetCore.Server.IIS.csproj +++ b/src/Servers/IIS/IIS/src/Microsoft.AspNetCore.Server.IIS.csproj @@ -41,7 +41,6 @@ - diff --git a/src/Servers/IIS/IISIntegration/src/Microsoft.AspNetCore.Server.IISIntegration.csproj b/src/Servers/IIS/IISIntegration/src/Microsoft.AspNetCore.Server.IISIntegration.csproj index addaf56ff283..b76aa029d628 100644 --- a/src/Servers/IIS/IISIntegration/src/Microsoft.AspNetCore.Server.IISIntegration.csproj +++ b/src/Servers/IIS/IISIntegration/src/Microsoft.AspNetCore.Server.IISIntegration.csproj @@ -20,7 +20,6 @@ - diff --git a/src/Shared/test/Shared.Tests/Microsoft.AspNetCore.Shared.Tests.csproj b/src/Shared/test/Shared.Tests/Microsoft.AspNetCore.Shared.Tests.csproj index c3956a4c1946..d3bba11e6d5b 100644 --- a/src/Shared/test/Shared.Tests/Microsoft.AspNetCore.Shared.Tests.csproj +++ b/src/Shared/test/Shared.Tests/Microsoft.AspNetCore.Shared.Tests.csproj @@ -35,7 +35,6 @@ -