diff --git a/eng/ProjectReferences.props b/eng/ProjectReferences.props
index 3d97902626..932cec9dce 100644
--- a/eng/ProjectReferences.props
+++ b/eng/ProjectReferences.props
@@ -133,9 +133,10 @@
+
-
+
diff --git a/eng/SharedFramework.Local.props b/eng/SharedFramework.Local.props
index 798e1469f2..a86f138f9f 100644
--- a/eng/SharedFramework.Local.props
+++ b/eng/SharedFramework.Local.props
@@ -22,8 +22,8 @@
-
+
diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml
index 660de1d35c..7c38381e3b 100644
--- a/eng/Version.Details.xml
+++ b/eng/Version.Details.xml
@@ -9,9 +9,9 @@
-->
-
+
https://github.com/aspnet/Blazor
- 10ac2538243650ab287ba9fafe6d05e30c40f9ae
+ cce6ca292fc3cb1dbbf02e149756318ad40628dc
https://github.com/aspnet/AspNetCore-Tooling
@@ -29,33 +29,33 @@
https://github.com/aspnet/AspNetCore-Tooling
7c5826c2abfe90e20acc3715cf9e939db1b1a442
-
+
https://github.com/aspnet/EntityFrameworkCore
- 9e3b10d68188c9518cfc5bb3cb0050968adadd99
+ b3f48c9f95aadabc141ab144ee368eacca814215
-
+
https://github.com/aspnet/EntityFrameworkCore
- 9e3b10d68188c9518cfc5bb3cb0050968adadd99
+ b3f48c9f95aadabc141ab144ee368eacca814215
-
+
https://github.com/aspnet/EntityFrameworkCore
- 9e3b10d68188c9518cfc5bb3cb0050968adadd99
+ b3f48c9f95aadabc141ab144ee368eacca814215
-
+
https://github.com/aspnet/EntityFrameworkCore
- 9e3b10d68188c9518cfc5bb3cb0050968adadd99
+ b3f48c9f95aadabc141ab144ee368eacca814215
-
+
https://github.com/aspnet/EntityFrameworkCore
- 9e3b10d68188c9518cfc5bb3cb0050968adadd99
+ b3f48c9f95aadabc141ab144ee368eacca814215
-
+
https://github.com/aspnet/EntityFrameworkCore
- 9e3b10d68188c9518cfc5bb3cb0050968adadd99
+ b3f48c9f95aadabc141ab144ee368eacca814215
-
+
https://github.com/aspnet/EntityFrameworkCore
- 9e3b10d68188c9518cfc5bb3cb0050968adadd99
+ b3f48c9f95aadabc141ab144ee368eacca814215
https://github.com/aspnet/Extensions
diff --git a/eng/Versions.props b/eng/Versions.props
index c0182e8f95..fbd1030d64 100644
--- a/eng/Versions.props
+++ b/eng/Versions.props
@@ -9,7 +9,7 @@
3
0
0
- 7
+ 8
preview$(PreReleasePreviewNumber)
Preview $(PreReleasePreviewNumber)
$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion)
@@ -82,7 +82,7 @@
3.0.0-preview7.19326.13
- 0.10.0-preview7.19351.1
+ 0.10.0-preview8.19351.2
3.0.0-preview7.19328.2
3.0.0-preview7.19328.2
@@ -146,13 +146,13 @@
3.0.0-preview7.19328.2
3.0.0-preview7.19328.2
- 3.0.0-preview7.19330.4
- 3.0.0-preview7.19330.4
- 3.0.0-preview7.19330.4
- 3.0.0-preview7.19330.4
- 3.0.0-preview7.19330.4
- 3.0.0-preview7.19330.4
- 3.0.0-preview7.19330.4
+ 3.0.0-preview8.19351.2
+ 3.0.0-preview8.19351.2
+ 3.0.0-preview8.19351.2
+ 3.0.0-preview8.19351.2
+ 3.0.0-preview8.19351.2
+ 3.0.0-preview8.19351.2
+ 3.0.0-preview8.19351.2
3.0.0-preview7.19351.2
3.0.0-preview7.19351.2
diff --git a/eng/scripts/CodeCheck.ps1 b/eng/scripts/CodeCheck.ps1
index 12029d6cda..25c2d4e756 100644
--- a/eng/scripts/CodeCheck.ps1
+++ b/eng/scripts/CodeCheck.ps1
@@ -166,9 +166,9 @@ try {
& dotnet run -p "$repoRoot/eng/tools/BaselineGenerator/"
}
- Write-Host "Re-generating Browser.JS files"
+ Write-Host "Re-generating Web.JS files"
Invoke-Block {
- & dotnet build "$repoRoot\src\Components\Browser.JS\Microsoft.AspNetCore.Components.Browser.JS.npmproj"
+ & dotnet build "$repoRoot\src\Components\Web.JS\Microsoft.AspNetCore.Components.Web.JS.npmproj"
}
Write-Host "Run git diff to check for pending changes"
diff --git a/src/Analyzers/Analyzers.sln b/src/Analyzers/Analyzers.sln
index e247944f6a..7176d127d0 100644
--- a/src/Analyzers/Analyzers.sln
+++ b/src/Analyzers/Analyzers.sln
@@ -23,7 +23,7 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Author
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Components", "..\Components\Components\src\Microsoft.AspNetCore.Components.csproj", "{34522BFF-D1D8-44A3-891E-77C6BE7C81F1}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Components.Browser", "..\Components\Browser\src\Microsoft.AspNetCore.Components.Browser.csproj", "{9C20C5AB-E609-4167-922D-0E7C7C6ED1EC}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Components.Web", "..\Components\Web\src\Microsoft.AspNetCore.Components.Web.csproj", "{9C20C5AB-E609-4167-922D-0E7C7C6ED1EC}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Connections.Abstractions", "..\Servers\Connections.Abstractions\src\Microsoft.AspNetCore.Connections.Abstractions.csproj", "{A21D03D7-5D69-47E7-B32C-4D7067D71B0E}"
EndProject
diff --git a/src/Components/Blazor/Blazor/ref/Microsoft.AspNetCore.Blazor.csproj b/src/Components/Blazor/Blazor/ref/Microsoft.AspNetCore.Blazor.csproj
index 75e3227927..4b7d80d90a 100644
--- a/src/Components/Blazor/Blazor/ref/Microsoft.AspNetCore.Blazor.csproj
+++ b/src/Components/Blazor/Blazor/ref/Microsoft.AspNetCore.Blazor.csproj
@@ -6,6 +6,6 @@
-
+
diff --git a/src/Components/Blazor/Blazor/src/Microsoft.AspNetCore.Blazor.csproj b/src/Components/Blazor/Blazor/src/Microsoft.AspNetCore.Blazor.csproj
index 9dc8358ff5..1a0e49e112 100644
--- a/src/Components/Blazor/Blazor/src/Microsoft.AspNetCore.Blazor.csproj
+++ b/src/Components/Blazor/Blazor/src/Microsoft.AspNetCore.Blazor.csproj
@@ -8,7 +8,7 @@
-
+
diff --git a/src/Components/Blazor/Blazor/src/Rendering/WebAssemblyRenderer.cs b/src/Components/Blazor/Blazor/src/Rendering/WebAssemblyRenderer.cs
index 4098bb5e41..efc20a7348 100644
--- a/src/Components/Blazor/Blazor/src/Rendering/WebAssemblyRenderer.cs
+++ b/src/Components/Blazor/Blazor/src/Rendering/WebAssemblyRenderer.cs
@@ -6,7 +6,7 @@ using System.Collections.Generic;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Blazor.Services;
using Microsoft.AspNetCore.Components;
-using Microsoft.AspNetCore.Components.Browser;
+using Microsoft.AspNetCore.Components.Web;
using Microsoft.AspNetCore.Components.Rendering;
namespace Microsoft.AspNetCore.Blazor.Rendering
diff --git a/src/Components/Blazor/Blazor/src/Services/WebAssemblyNavigationInterception.cs b/src/Components/Blazor/Blazor/src/Services/WebAssemblyNavigationInterception.cs
index 392491bc5c..f7aac51137 100644
--- a/src/Components/Blazor/Blazor/src/Services/WebAssemblyNavigationInterception.cs
+++ b/src/Components/Blazor/Blazor/src/Services/WebAssemblyNavigationInterception.cs
@@ -3,7 +3,7 @@
using System.Threading.Tasks;
using Microsoft.AspNetCore.Components.Routing;
-using Interop = Microsoft.AspNetCore.Components.Browser.BrowserUriHelperInterop;
+using Interop = Microsoft.AspNetCore.Components.Web.BrowserUriHelperInterop;
namespace Microsoft.AspNetCore.Blazor.Services
{
diff --git a/src/Components/Blazor/Blazor/src/Services/WebAssemblyUriHelper.cs b/src/Components/Blazor/Blazor/src/Services/WebAssemblyUriHelper.cs
index acf7c37ff8..957a2e760c 100644
--- a/src/Components/Blazor/Blazor/src/Services/WebAssemblyUriHelper.cs
+++ b/src/Components/Blazor/Blazor/src/Services/WebAssemblyUriHelper.cs
@@ -4,7 +4,7 @@
using System;
using Microsoft.AspNetCore.Components;
using Microsoft.JSInterop;
-using Interop = Microsoft.AspNetCore.Components.Browser.BrowserUriHelperInterop;
+using Interop = Microsoft.AspNetCore.Components.Web.BrowserUriHelperInterop;
namespace Microsoft.AspNetCore.Blazor.Services
{
diff --git a/src/Components/Blazor/BlazorExtension/src/Microsoft.VisualStudio.BlazorExtension.csproj b/src/Components/Blazor/BlazorExtension/src/Microsoft.VisualStudio.BlazorExtension.csproj
index 5639616fed..b803dd969f 100644
--- a/src/Components/Blazor/BlazorExtension/src/Microsoft.VisualStudio.BlazorExtension.csproj
+++ b/src/Components/Blazor/BlazorExtension/src/Microsoft.VisualStudio.BlazorExtension.csproj
@@ -52,7 +52,7 @@
true
-
+
<_TemplatePackage Include="$(ArtifactsShippingPackagesDir)Microsoft.AspNetCore.Blazor.Templates.*.nupkg" />
diff --git a/src/Components/Blazor/Build/src/Microsoft.AspNetCore.Blazor.Build.csproj b/src/Components/Blazor/Build/src/Microsoft.AspNetCore.Blazor.Build.csproj
index 3549878daf..ab757d5c82 100644
--- a/src/Components/Blazor/Build/src/Microsoft.AspNetCore.Blazor.Build.csproj
+++ b/src/Components/Blazor/Build/src/Microsoft.AspNetCore.Blazor.Build.csproj
@@ -26,7 +26,7 @@
-
+
@@ -36,6 +36,6 @@
-
+
diff --git a/src/Components/Blazor/Build/src/Microsoft.AspNetCore.Blazor.Build.nuspec b/src/Components/Blazor/Build/src/Microsoft.AspNetCore.Blazor.Build.nuspec
index d52a9d631e..ab73599f0b 100644
--- a/src/Components/Blazor/Build/src/Microsoft.AspNetCore.Blazor.Build.nuspec
+++ b/src/Components/Blazor/Build/src/Microsoft.AspNetCore.Blazor.Build.nuspec
@@ -11,6 +11,6 @@
-
+
diff --git a/src/Components/Blazor/Build/src/ReferenceFromSource.props b/src/Components/Blazor/Build/src/ReferenceFromSource.props
index 4fef2ec2ce..6c708e4cab 100644
--- a/src/Components/Blazor/Build/src/ReferenceFromSource.props
+++ b/src/Components/Blazor/Build/src/ReferenceFromSource.props
@@ -11,7 +11,7 @@
true
- $(RepoRoot)src\Components\Browser.JS\dist\$(Configuration)\blazor.*.js.*
+ $(RepoRoot)src\Components\Web.JS\dist\$(Configuration)\blazor.*.js.*
diff --git a/src/Components/Blazor/Build/test/RuntimeDependenciesResolverTest.cs b/src/Components/Blazor/Build/test/RuntimeDependenciesResolverTest.cs
index c9417d2109..87b1349844 100644
--- a/src/Components/Blazor/Build/test/RuntimeDependenciesResolverTest.cs
+++ b/src/Components/Blazor/Build/test/RuntimeDependenciesResolverTest.cs
@@ -30,7 +30,7 @@ namespace Microsoft.AspNetCore.Blazor.Build.Test
var references = new[]
{
"Microsoft.AspNetCore.Blazor.dll",
- "Microsoft.AspNetCore.Components.Browser.dll",
+ "Microsoft.AspNetCore.Components.Web.dll",
"Microsoft.AspNetCore.Components.dll",
"Microsoft.Extensions.DependencyInjection.Abstractions.dll",
"Microsoft.Extensions.DependencyInjection.dll",
@@ -59,8 +59,8 @@ namespace Microsoft.AspNetCore.Blazor.Build.Test
*/
"Microsoft.AspNetCore.Blazor.dll",
"Microsoft.AspNetCore.Blazor.pdb",
- "Microsoft.AspNetCore.Components.Browser.dll",
- "Microsoft.AspNetCore.Components.Browser.pdb",
+ "Microsoft.AspNetCore.Components.Web.dll",
+ "Microsoft.AspNetCore.Components.Web.pdb",
"Microsoft.AspNetCore.Components.dll",
"Microsoft.AspNetCore.Components.pdb",
"Microsoft.Extensions.DependencyInjection.Abstractions.dll",
diff --git a/src/Components/Blazor/Http/ref/Microsoft.AspNetCore.Blazor.HttpClient.csproj b/src/Components/Blazor/Http/ref/Microsoft.AspNetCore.Blazor.HttpClient.csproj
new file mode 100644
index 0000000000..8c5f6d9e13
--- /dev/null
+++ b/src/Components/Blazor/Http/ref/Microsoft.AspNetCore.Blazor.HttpClient.csproj
@@ -0,0 +1,10 @@
+
+
+
+ netstandard2.0
+
+
+
+
+
+
diff --git a/src/Components/Blazor/Http/ref/Microsoft.AspNetCore.Blazor.HttpClient.netstandard2.0.cs b/src/Components/Blazor/Http/ref/Microsoft.AspNetCore.Blazor.HttpClient.netstandard2.0.cs
new file mode 100644
index 0000000000..f6caefbe3e
--- /dev/null
+++ b/src/Components/Blazor/Http/ref/Microsoft.AspNetCore.Blazor.HttpClient.netstandard2.0.cs
@@ -0,0 +1,18 @@
+// 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.
+
+namespace Microsoft.AspNetCore.Components
+{
+ public static partial class HttpClientJsonExtensions
+ {
+ [System.Diagnostics.DebuggerStepThroughAttribute]
+ public static System.Threading.Tasks.Task GetJsonAsync(this System.Net.Http.HttpClient httpClient, string requestUri) { throw null; }
+ public static System.Threading.Tasks.Task PostJsonAsync(this System.Net.Http.HttpClient httpClient, string requestUri, object content) { throw null; }
+ public static System.Threading.Tasks.Task PostJsonAsync(this System.Net.Http.HttpClient httpClient, string requestUri, object content) { throw null; }
+ public static System.Threading.Tasks.Task PutJsonAsync(this System.Net.Http.HttpClient httpClient, string requestUri, object content) { throw null; }
+ public static System.Threading.Tasks.Task PutJsonAsync(this System.Net.Http.HttpClient httpClient, string requestUri, object content) { throw null; }
+ public static System.Threading.Tasks.Task SendJsonAsync(this System.Net.Http.HttpClient httpClient, System.Net.Http.HttpMethod method, string requestUri, object content) { throw null; }
+ [System.Diagnostics.DebuggerStepThroughAttribute]
+ public static System.Threading.Tasks.Task SendJsonAsync(this System.Net.Http.HttpClient httpClient, System.Net.Http.HttpMethod method, string requestUri, object content) { throw null; }
+ }
+}
diff --git a/src/Components/Components/src/HttpClientJsonExtensions.cs b/src/Components/Blazor/Http/src/HttpClientJsonExtensions.cs
similarity index 100%
rename from src/Components/Components/src/HttpClientJsonExtensions.cs
rename to src/Components/Blazor/Http/src/HttpClientJsonExtensions.cs
diff --git a/src/Components/Blazor/Http/src/Microsoft.AspNetCore.Blazor.HttpClient.csproj b/src/Components/Blazor/Http/src/Microsoft.AspNetCore.Blazor.HttpClient.csproj
new file mode 100644
index 0000000000..18bdc5e1fe
--- /dev/null
+++ b/src/Components/Blazor/Http/src/Microsoft.AspNetCore.Blazor.HttpClient.csproj
@@ -0,0 +1,17 @@
+
+
+
+ netstandard2.0
+ Provides experimental support for using System.Text.Json with HttpClient. Intended for use with Blazor running under WebAssembly.
+ true
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Components/Components/test/HttpClientJsonExtensionsTest.cs b/src/Components/Blazor/Http/test/HttpClientJsonExtensionsTest.cs
similarity index 100%
rename from src/Components/Components/test/HttpClientJsonExtensionsTest.cs
rename to src/Components/Blazor/Http/test/HttpClientJsonExtensionsTest.cs
diff --git a/src/Components/Blazor/Http/test/Microsoft.AspNetCore.Blazor.HttpClient.Tests.csproj b/src/Components/Blazor/Http/test/Microsoft.AspNetCore.Blazor.HttpClient.Tests.csproj
new file mode 100644
index 0000000000..375cc47dde
--- /dev/null
+++ b/src/Components/Blazor/Http/test/Microsoft.AspNetCore.Blazor.HttpClient.Tests.csproj
@@ -0,0 +1,11 @@
+
+
+
+ netcoreapp3.0
+
+
+
+
+
+
+
diff --git a/src/Components/Blazor/Templates/src/content/BlazorHosted-CSharp/BlazorHosted-CSharp.Client/BlazorHosted-CSharp.Client.csproj b/src/Components/Blazor/Templates/src/content/BlazorHosted-CSharp/BlazorHosted-CSharp.Client/BlazorHosted-CSharp.Client.csproj
index 8a62cd5262..9aa80d5333 100644
--- a/src/Components/Blazor/Templates/src/content/BlazorHosted-CSharp/BlazorHosted-CSharp.Client/BlazorHosted-CSharp.Client.csproj
+++ b/src/Components/Blazor/Templates/src/content/BlazorHosted-CSharp/BlazorHosted-CSharp.Client/BlazorHosted-CSharp.Client.csproj
@@ -10,6 +10,7 @@
+
diff --git a/src/Components/Blazor/Templates/src/content/BlazorLibrary-CSharp/BlazorLibrary-CSharp.csproj b/src/Components/Blazor/Templates/src/content/BlazorLibrary-CSharp/BlazorLibrary-CSharp.csproj
index 7029d8a240..c32547d5ef 100644
--- a/src/Components/Blazor/Templates/src/content/BlazorLibrary-CSharp/BlazorLibrary-CSharp.csproj
+++ b/src/Components/Blazor/Templates/src/content/BlazorLibrary-CSharp/BlazorLibrary-CSharp.csproj
@@ -16,7 +16,7 @@
-
+
diff --git a/src/Components/Blazor/Templates/src/content/BlazorStandalone-CSharp/BlazorStandalone-CSharp.csproj b/src/Components/Blazor/Templates/src/content/BlazorStandalone-CSharp/BlazorStandalone-CSharp.csproj
index a04cb61258..e6ba9e2f59 100644
--- a/src/Components/Blazor/Templates/src/content/BlazorStandalone-CSharp/BlazorStandalone-CSharp.csproj
+++ b/src/Components/Blazor/Templates/src/content/BlazorStandalone-CSharp/BlazorStandalone-CSharp.csproj
@@ -10,6 +10,7 @@
+
diff --git a/src/Components/Blazor/testassets/StandaloneApp/StandaloneApp.csproj b/src/Components/Blazor/testassets/StandaloneApp/StandaloneApp.csproj
index 9f796fdbcf..cddd429b6a 100644
--- a/src/Components/Blazor/testassets/StandaloneApp/StandaloneApp.csproj
+++ b/src/Components/Blazor/testassets/StandaloneApp/StandaloneApp.csproj
@@ -8,5 +8,6 @@
+
diff --git a/src/Components/Browser.JS/dist/Release/blazor.webassembly.js b/src/Components/Browser.JS/dist/Release/blazor.webassembly.js
deleted file mode 100644
index fc8808741e..0000000000
--- a/src/Components/Browser.JS/dist/Release/blazor.webassembly.js
+++ /dev/null
@@ -1 +0,0 @@
-!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=44)}([,,,,,,,,,,,function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(25),o=n(12),a={};function i(e,t,n){var o=a[e];o||(o=a[e]=new r.BrowserRenderer(e)),o.attachRootComponentToLogicalElement(n,t)}t.attachRootComponentToLogicalElement=i,t.attachRootComponentToElement=function(e,t,n){var r=document.querySelector(t);if(!r)throw new Error("Could not find any element matching selector '"+t+"'.");i(e,o.toLogicalElement(r,!0),n)},t.renderBatch=function(e,t){var n=a[e];if(!n)throw new Error("There is no browser renderer with ID "+e+".");for(var r=t.arrayRangeReader,o=t.updatedComponents(),i=r.values(o),u=r.count(o),l=t.referenceFrames(),s=r.values(l),c=t.diffReader,f=0;f0&&!t)throw new Error("New logical elements must start empty, or allowExistingContents must be true");return e[r]=[],e}function u(e,t,n){var a=e;if(e instanceof Comment&&(s(a)&&s(a).length>0))throw new Error("Not implemented: inserting non-empty logical container");if(l(a))throw new Error("Not implemented: moving existing logical children");var i=s(t);if(n0;)e(r,0);var a=r;a.parentNode.removeChild(a)},t.getLogicalParent=l,t.getLogicalSiblingEnd=function(e){return e[a]||null},t.getLogicalChild=function(e,t){return s(e)[t]},t.isSvgElement=function(e){return"http://www.w3.org/2000/svg"===c(e).namespaceURI},t.getLogicalChildrenArray=s,t.permuteLogicalChildren=function(e,t){var n=s(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=l(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=c},,,function(e,t,n){"use strict";var r;!function(e){window.DotNet=e;var t=[],n={},r={},o=1,a=null;function i(e){t.push(e)}function u(e,t){for(var n=[],r=2;r0&&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]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]-1?a.substring(0,u):"",s=u>-1?a.substring(u+1):a,c=t.monoPlatform.findMethod(e,l,s,i);t.monoPlatform.callMethod(c,null,r)},callMethod:function(e,n,r){if(r.length>4)throw new Error("Currently, MonoPlatform supports passing a maximum of 4 arguments from JS to .NET. You tried to pass "+r.length+".");var o=Module.stackSave();try{for(var a=Module.stackAlloc(r.length),u=Module.stackAlloc(4),l=0;l CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, bool existingValue) { throw null; }
- public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, System.DateTime existingValue) { throw null; }
- public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, System.DateTime existingValue, string format) { throw null; }
- public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, decimal existingValue) { throw null; }
- public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, double existingValue) { throw null; }
- public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, int existingValue) { throw null; }
- public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, long existingValue) { throw null; }
- public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, bool? existingValue) { throw null; }
- public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, System.DateTime? existingValue) { throw null; }
- public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, decimal? existingValue) { throw null; }
- public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, double? existingValue) { throw null; }
- public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, int? existingValue) { throw null; }
- public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, long? existingValue) { throw null; }
- public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, float? existingValue) { throw null; }
- public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, float existingValue) { throw null; }
- public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, string existingValue) { throw null; }
- public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, T existingValue) { throw null; }
+ public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, bool existingValue, System.Globalization.CultureInfo culture = null) { throw null; }
+ public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, System.DateTime existingValue, System.Globalization.CultureInfo culture = null) { throw null; }
+ public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, System.DateTime existingValue, string format, System.Globalization.CultureInfo culture = null) { throw null; }
+ public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, decimal existingValue, System.Globalization.CultureInfo culture = null) { throw null; }
+ public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, double existingValue, System.Globalization.CultureInfo culture = null) { throw null; }
+ public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, int existingValue, System.Globalization.CultureInfo culture = null) { throw null; }
+ public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, long existingValue, System.Globalization.CultureInfo culture = null) { throw null; }
+ public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, bool? existingValue, System.Globalization.CultureInfo culture = null) { throw null; }
+ public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, System.DateTime? existingValue, System.Globalization.CultureInfo culture = null) { throw null; }
+ public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, decimal? existingValue, System.Globalization.CultureInfo culture = null) { throw null; }
+ public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, double? existingValue, System.Globalization.CultureInfo culture = null) { throw null; }
+ public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, int? existingValue, System.Globalization.CultureInfo culture = null) { throw null; }
+ public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, long? existingValue, System.Globalization.CultureInfo culture = null) { throw null; }
+ public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, float? existingValue, System.Globalization.CultureInfo culture = null) { throw null; }
+ public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, float existingValue, System.Globalization.CultureInfo culture = null) { throw null; }
+ public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, string existingValue, System.Globalization.CultureInfo culture = null) { throw null; }
+ public static Microsoft.AspNetCore.Components.EventCallback CreateBinder(this Microsoft.AspNetCore.Components.EventCallbackFactory factory, object receiver, System.Action setter, T existingValue, System.Globalization.CultureInfo culture = null) { throw null; }
}
public static partial class EventCallbackFactoryUIEventArgsExtensions
{
@@ -310,18 +310,6 @@ namespace Microsoft.AspNetCore.Components
public static partial class EventHandlers
{
}
- public static partial class HttpClientJsonExtensions
- {
- [System.Diagnostics.DebuggerStepThroughAttribute]
- public static System.Threading.Tasks.Task GetJsonAsync(this System.Net.Http.HttpClient httpClient, string requestUri) { throw null; }
- public static System.Threading.Tasks.Task PostJsonAsync(this System.Net.Http.HttpClient httpClient, string requestUri, object content) { throw null; }
- public static System.Threading.Tasks.Task PostJsonAsync(this System.Net.Http.HttpClient httpClient, string requestUri, object content) { throw null; }
- public static System.Threading.Tasks.Task PutJsonAsync(this System.Net.Http.HttpClient httpClient, string requestUri, object content) { throw null; }
- public static System.Threading.Tasks.Task PutJsonAsync(this System.Net.Http.HttpClient httpClient, string requestUri, object content) { throw null; }
- public static System.Threading.Tasks.Task SendJsonAsync(this System.Net.Http.HttpClient httpClient, System.Net.Http.HttpMethod method, string requestUri, object content) { throw null; }
- [System.Diagnostics.DebuggerStepThroughAttribute]
- public static System.Threading.Tasks.Task SendJsonAsync(this System.Net.Http.HttpClient httpClient, System.Net.Http.HttpMethod method, string requestUri, object content) { throw null; }
- }
public partial interface IComponent
{
void Configure(Microsoft.AspNetCore.Components.RenderHandle renderHandle);
diff --git a/src/Components/Components/src/EventCallbackFactoryBinderExtensions.cs b/src/Components/Components/src/EventCallbackFactoryBinderExtensions.cs
index 9e5458780f..c8c8d9a0ec 100644
--- a/src/Components/Components/src/EventCallbackFactoryBinderExtensions.cs
+++ b/src/Components/Components/src/EventCallbackFactoryBinderExtensions.cs
@@ -25,13 +25,13 @@ namespace Microsoft.AspNetCore.Components
// For now we're not necessarily handling this correctly since we parse the same way for number and text.
public static class EventCallbackFactoryBinderExtensions
{
- private delegate bool BindConverter(object obj, out T value);
+ private delegate bool BindConverter(object obj, CultureInfo culture, out T value);
// Perf: conversion delegates are written as static funcs so we can prevent
// allocations for these simple cases.
private readonly static BindConverter ConvertToString = ConvertToStringCore;
- private static bool ConvertToStringCore(object obj, out string value)
+ private static bool ConvertToStringCore(object obj, CultureInfo culture, out string value)
{
// We expect the input to already be a string.
value = (string)obj;
@@ -41,14 +41,14 @@ namespace Microsoft.AspNetCore.Components
private static BindConverter ConvertToBool = ConvertToBoolCore;
private static BindConverter ConvertToNullableBool = ConvertToNullableBoolCore;
- private static bool ConvertToBoolCore(object obj, out bool value)
+ private static bool ConvertToBoolCore(object obj, CultureInfo culture, out bool value)
{
// We expect the input to already be a bool.
value = (bool)obj;
return true;
}
- private static bool ConvertToNullableBoolCore(object obj, out bool? value)
+ private static bool ConvertToNullableBoolCore(object obj, CultureInfo culture, out bool? value)
{
// We expect the input to already be a bool.
value = (bool?)obj;
@@ -58,7 +58,7 @@ namespace Microsoft.AspNetCore.Components
private static BindConverter ConvertToInt = ConvertToIntCore;
private static BindConverter ConvertToNullableInt = ConvertToNullableIntCore;
- private static bool ConvertToIntCore(object obj, out int value)
+ private static bool ConvertToIntCore(object obj, CultureInfo culture, out int value)
{
var text = (string)obj;
if (string.IsNullOrEmpty(text))
@@ -67,7 +67,7 @@ namespace Microsoft.AspNetCore.Components
return false;
}
- if (!int.TryParse(text, NumberStyles.Integer, CultureInfo.CurrentCulture, out var converted))
+ if (!int.TryParse(text, NumberStyles.Number, culture ?? CultureInfo.CurrentCulture, out var converted))
{
value = default;
return false;
@@ -77,7 +77,7 @@ namespace Microsoft.AspNetCore.Components
return true;
}
- private static bool ConvertToNullableIntCore(object obj, out int? value)
+ private static bool ConvertToNullableIntCore(object obj, CultureInfo culture, out int? value)
{
var text = (string)obj;
if (string.IsNullOrEmpty(text))
@@ -86,7 +86,7 @@ namespace Microsoft.AspNetCore.Components
return true;
}
- if (!int.TryParse(text, NumberStyles.Integer, CultureInfo.CurrentCulture, out var converted))
+ if (!int.TryParse(text, NumberStyles.Number, culture ?? CultureInfo.CurrentCulture, out var converted))
{
value = default;
return false;
@@ -99,7 +99,7 @@ namespace Microsoft.AspNetCore.Components
private static BindConverter ConvertToLong = ConvertToLongCore;
private static BindConverter ConvertToNullableLong = ConvertToNullableLongCore;
- private static bool ConvertToLongCore(object obj, out long value)
+ private static bool ConvertToLongCore(object obj, CultureInfo culture, out long value)
{
var text = (string)obj;
if (string.IsNullOrEmpty(text))
@@ -108,7 +108,7 @@ namespace Microsoft.AspNetCore.Components
return false;
}
- if (!long.TryParse(text, NumberStyles.Integer, CultureInfo.CurrentCulture, out var converted))
+ if (!long.TryParse(text, NumberStyles.Number, culture ?? CultureInfo.CurrentCulture, out var converted))
{
value = default;
return false;
@@ -118,7 +118,7 @@ namespace Microsoft.AspNetCore.Components
return true;
}
- private static bool ConvertToNullableLongCore(object obj, out long? value)
+ private static bool ConvertToNullableLongCore(object obj, CultureInfo culture, out long? value)
{
var text = (string)obj;
if (string.IsNullOrEmpty(text))
@@ -127,7 +127,7 @@ namespace Microsoft.AspNetCore.Components
return true;
}
- if (!long.TryParse(text, NumberStyles.Integer, CultureInfo.CurrentCulture, out var converted))
+ if (!long.TryParse(text, NumberStyles.Number, culture ?? CultureInfo.CurrentCulture, out var converted))
{
value = default;
return false;
@@ -140,7 +140,7 @@ namespace Microsoft.AspNetCore.Components
private static BindConverter ConvertToFloat = ConvertToFloatCore;
private static BindConverter ConvertToNullableFloat = ConvertToNullableFloatCore;
- private static bool ConvertToFloatCore(object obj, out float value)
+ private static bool ConvertToFloatCore(object obj, CultureInfo culture, out float value)
{
var text = (string)obj;
if (string.IsNullOrEmpty(text))
@@ -149,7 +149,7 @@ namespace Microsoft.AspNetCore.Components
return false;
}
- if (!float.TryParse(text, NumberStyles.Number, CultureInfo.CurrentCulture, out var converted))
+ if (!float.TryParse(text, NumberStyles.Number, culture ?? CultureInfo.CurrentCulture, out var converted))
{
value = default;
return false;
@@ -159,7 +159,7 @@ namespace Microsoft.AspNetCore.Components
return true;
}
- private static bool ConvertToNullableFloatCore(object obj, out float? value)
+ private static bool ConvertToNullableFloatCore(object obj, CultureInfo culture, out float? value)
{
var text = (string)obj;
if (string.IsNullOrEmpty(text))
@@ -168,7 +168,7 @@ namespace Microsoft.AspNetCore.Components
return true;
}
- if (!float.TryParse(text, NumberStyles.Number, CultureInfo.CurrentCulture, out var converted))
+ if (!float.TryParse(text, NumberStyles.Number, culture ?? CultureInfo.CurrentCulture, out var converted))
{
value = default;
return false;
@@ -181,7 +181,7 @@ namespace Microsoft.AspNetCore.Components
private static BindConverter ConvertToDouble = ConvertToDoubleCore;
private static BindConverter ConvertToNullableDouble = ConvertToNullableDoubleCore;
- private static bool ConvertToDoubleCore(object obj, out double value)
+ private static bool ConvertToDoubleCore(object obj, CultureInfo culture, out double value)
{
var text = (string)obj;
if (string.IsNullOrEmpty(text))
@@ -190,7 +190,7 @@ namespace Microsoft.AspNetCore.Components
return false;
}
- if (!double.TryParse(text, NumberStyles.Number, CultureInfo.CurrentCulture, out var converted))
+ if (!double.TryParse(text, NumberStyles.Number, culture ?? CultureInfo.CurrentCulture, out var converted))
{
value = default;
return false;
@@ -200,7 +200,7 @@ namespace Microsoft.AspNetCore.Components
return true;
}
- private static bool ConvertToNullableDoubleCore(object obj, out double? value)
+ private static bool ConvertToNullableDoubleCore(object obj, CultureInfo culture, out double? value)
{
var text = (string)obj;
if (string.IsNullOrEmpty(text))
@@ -209,7 +209,7 @@ namespace Microsoft.AspNetCore.Components
return true;
}
- if (!double.TryParse(text, NumberStyles.Number, CultureInfo.CurrentCulture, out var converted))
+ if (!double.TryParse(text, NumberStyles.Number, culture ?? CultureInfo.CurrentCulture, out var converted))
{
value = default;
return false;
@@ -222,7 +222,7 @@ namespace Microsoft.AspNetCore.Components
private static BindConverter ConvertToDecimal = ConvertToDecimalCore;
private static BindConverter ConvertToNullableDecimal = ConvertToNullableDecimalCore;
- private static bool ConvertToDecimalCore(object obj, out decimal value)
+ private static bool ConvertToDecimalCore(object obj, CultureInfo culture, out decimal value)
{
var text = (string)obj;
if (string.IsNullOrEmpty(text))
@@ -231,7 +231,7 @@ namespace Microsoft.AspNetCore.Components
return false;
}
- if (!decimal.TryParse(text, NumberStyles.Number, CultureInfo.CurrentCulture, out var converted))
+ if (!decimal.TryParse(text, NumberStyles.Number, culture ?? CultureInfo.CurrentCulture, out var converted))
{
value = default;
return false;
@@ -241,7 +241,7 @@ namespace Microsoft.AspNetCore.Components
return true;
}
- private static bool ConvertToNullableDecimalCore(object obj, out decimal? value)
+ private static bool ConvertToNullableDecimalCore(object obj, CultureInfo culture, out decimal? value)
{
var text = (string)obj;
if (string.IsNullOrEmpty(text))
@@ -250,7 +250,7 @@ namespace Microsoft.AspNetCore.Components
return true;
}
- if (!decimal.TryParse(text, NumberStyles.Number, CultureInfo.CurrentCulture, out var converted))
+ if (!decimal.TryParse(text, NumberStyles.Number, culture ?? CultureInfo.CurrentCulture, out var converted))
{
value = default;
return false;
@@ -263,7 +263,7 @@ namespace Microsoft.AspNetCore.Components
private static BindConverter ConvertToDateTime = ConvertToDateTimeCore;
private static BindConverter ConvertToNullableDateTime = ConvertToNullableDateTimeCore;
- private static bool ConvertToDateTimeCore(object obj, out DateTime value)
+ private static bool ConvertToDateTimeCore(object obj, CultureInfo culture, out DateTime value)
{
var text = (string)obj;
if (string.IsNullOrEmpty(text))
@@ -272,7 +272,7 @@ namespace Microsoft.AspNetCore.Components
return false;
}
- if (!DateTime.TryParse(text, CultureInfo.CurrentCulture, DateTimeStyles.None, out var converted))
+ if (!DateTime.TryParse(text, culture ?? CultureInfo.CurrentCulture, DateTimeStyles.None, out var converted))
{
value = default;
return false;
@@ -282,7 +282,7 @@ namespace Microsoft.AspNetCore.Components
return true;
}
- private static bool ConvertToNullableDateTimeCore(object obj, out DateTime? value)
+ private static bool ConvertToNullableDateTimeCore(object obj, CultureInfo culture, out DateTime? value)
{
var text = (string)obj;
if (string.IsNullOrEmpty(text))
@@ -291,7 +291,7 @@ namespace Microsoft.AspNetCore.Components
return true;
}
- if (!DateTime.TryParse(text, CultureInfo.CurrentCulture, DateTimeStyles.None, out var converted))
+ if (!DateTime.TryParse(text, culture ?? CultureInfo.CurrentCulture, DateTimeStyles.None, out var converted))
{
value = default;
return false;
@@ -301,7 +301,7 @@ namespace Microsoft.AspNetCore.Components
return true;
}
- private static bool ConvertToEnum(object obj, out T value) where T : struct, Enum
+ private static bool ConvertToEnum(object obj, CultureInfo culture, out T value) where T : struct, Enum
{
var text = (string)obj;
if (string.IsNullOrEmpty(text))
@@ -320,7 +320,7 @@ namespace Microsoft.AspNetCore.Components
return true;
}
- private static bool ConvertToNullableEnum(object obj, out Nullable value) where T : struct, Enum
+ private static bool ConvertToNullableEnum(object obj, CultureInfo culture, out T? value) where T : struct, Enum
{
var text = (string)obj;
if (string.IsNullOrEmpty(text))
@@ -346,14 +346,16 @@ namespace Microsoft.AspNetCore.Components
///
///
///
+ ///
///
public static EventCallback CreateBinder(
this EventCallbackFactory factory,
object receiver,
Action setter,
- string existingValue)
+ string existingValue,
+ CultureInfo culture = null)
{
- return CreateBinderCore(factory, receiver, setter, ConvertToString);
+ return CreateBinderCore(factory, receiver, setter, culture, ConvertToString);
}
///
@@ -363,14 +365,16 @@ namespace Microsoft.AspNetCore.Components
///
///
///
+ ///
///
public static EventCallback CreateBinder(
this EventCallbackFactory factory,
object receiver,
Action setter,
- bool existingValue)
+ bool existingValue,
+ CultureInfo culture = null)
{
- return CreateBinderCore(factory, receiver, setter, ConvertToBool);
+ return CreateBinderCore(factory, receiver, setter, culture, ConvertToBool);
}
///
@@ -380,14 +384,16 @@ namespace Microsoft.AspNetCore.Components
///
///
///
+ ///
///
public static EventCallback CreateBinder(
this EventCallbackFactory factory,
object receiver,
Action setter,
- bool? existingValue)
+ bool? existingValue,
+ CultureInfo culture = null)
{
- return CreateBinderCore(factory, receiver, setter, ConvertToNullableBool);
+ return CreateBinderCore(factory, receiver, setter, culture, ConvertToNullableBool);
}
///
@@ -397,14 +403,16 @@ namespace Microsoft.AspNetCore.Components
///
///
///
+ ///
///
public static EventCallback CreateBinder(
this EventCallbackFactory factory,
object receiver,
Action setter,
- int existingValue)
+ int existingValue,
+ CultureInfo culture = null)
{
- return CreateBinderCore(factory, receiver, setter, ConvertToInt);
+ return CreateBinderCore(factory, receiver, setter, culture, ConvertToInt);
}
///
@@ -414,14 +422,16 @@ namespace Microsoft.AspNetCore.Components
///
///
///
+ ///
///
public static EventCallback CreateBinder(
this EventCallbackFactory factory,
object receiver,
Action setter,
- int? existingValue)
+ int? existingValue,
+ CultureInfo culture = null)
{
- return CreateBinderCore(factory, receiver, setter, ConvertToNullableInt);
+ return CreateBinderCore(factory, receiver, setter, culture, ConvertToNullableInt);
}
///
@@ -431,14 +441,16 @@ namespace Microsoft.AspNetCore.Components
///
///
///
+ ///
///
public static EventCallback CreateBinder(
this EventCallbackFactory factory,
object receiver,
Action setter,
- long existingValue)
+ long existingValue,
+ CultureInfo culture = null)
{
- return CreateBinderCore(factory, receiver, setter, ConvertToLong);
+ return CreateBinderCore(factory, receiver, setter, culture, ConvertToLong);
}
///
@@ -448,14 +460,16 @@ namespace Microsoft.AspNetCore.Components
///
///
///
+ ///
///
public static EventCallback CreateBinder(
this EventCallbackFactory factory,
object receiver,
Action setter,
- long? existingValue)
+ long? existingValue,
+ CultureInfo culture = null)
{
- return CreateBinderCore(factory, receiver, setter, ConvertToNullableLong);
+ return CreateBinderCore(factory, receiver, setter, culture, ConvertToNullableLong);
}
///
@@ -465,14 +479,16 @@ namespace Microsoft.AspNetCore.Components
///
///
///
+ ///
///
public static EventCallback CreateBinder(
this EventCallbackFactory factory,
object receiver,
Action setter,
- float existingValue)
+ float existingValue,
+ CultureInfo culture = null)
{
- return CreateBinderCore(factory, receiver, setter, ConvertToFloat);
+ return CreateBinderCore(factory, receiver, setter, culture, ConvertToFloat);
}
///
@@ -482,14 +498,16 @@ namespace Microsoft.AspNetCore.Components
///
///
///
+ ///
///
public static EventCallback CreateBinder(
this EventCallbackFactory factory,
object receiver,
Action setter,
- float? existingValue)
+ float? existingValue,
+ CultureInfo culture = null)
{
- return CreateBinderCore(factory, receiver, setter, ConvertToNullableFloat);
+ return CreateBinderCore(factory, receiver, setter, culture, ConvertToNullableFloat);
}
///
@@ -499,14 +517,16 @@ namespace Microsoft.AspNetCore.Components
///
///
///
+ ///
///
public static EventCallback CreateBinder(
this EventCallbackFactory factory,
object receiver,
Action setter,
- double existingValue)
+ double existingValue,
+ CultureInfo culture = null)
{
- return CreateBinderCore(factory, receiver, setter, ConvertToDouble);
+ return CreateBinderCore(factory, receiver, setter, culture, ConvertToDouble);
}
///
@@ -516,14 +536,16 @@ namespace Microsoft.AspNetCore.Components
///
///
///
+ ///
///
public static EventCallback CreateBinder(
this EventCallbackFactory factory,
object receiver,
Action setter,
- double? existingValue)
+ double? existingValue,
+ CultureInfo culture = null)
{
- return CreateBinderCore(factory, receiver, setter, ConvertToNullableDouble);
+ return CreateBinderCore(factory, receiver, setter, culture, ConvertToNullableDouble);
}
///
@@ -533,14 +555,16 @@ namespace Microsoft.AspNetCore.Components
///
///
///
+ ///
///
public static EventCallback CreateBinder(
this EventCallbackFactory factory,
object receiver,
Action setter,
- decimal existingValue)
+ decimal existingValue,
+ CultureInfo culture = null)
{
- return CreateBinderCore(factory, receiver, setter, ConvertToDecimal);
+ return CreateBinderCore(factory, receiver, setter, culture, ConvertToDecimal);
}
///
@@ -550,14 +574,16 @@ namespace Microsoft.AspNetCore.Components
///
///
///
+ ///
///
public static EventCallback CreateBinder(
this EventCallbackFactory factory,
object receiver,
Action setter,
- decimal? existingValue)
+ decimal? existingValue,
+ CultureInfo culture = null)
{
- return CreateBinderCore(factory, receiver, setter, ConvertToNullableDecimal);
+ return CreateBinderCore(factory, receiver, setter, culture, ConvertToNullableDecimal);
}
///
@@ -567,14 +593,16 @@ namespace Microsoft.AspNetCore.Components
///
///
///
+ ///
///
public static EventCallback CreateBinder(
this EventCallbackFactory factory,
object receiver,
Action setter,
- DateTime existingValue)
+ DateTime existingValue,
+ CultureInfo culture = null)
{
- return CreateBinderCore(factory, receiver, setter, ConvertToDateTime);
+ return CreateBinderCore(factory, receiver, setter, culture, ConvertToDateTime);
}
///
@@ -584,14 +612,16 @@ namespace Microsoft.AspNetCore.Components
///
///
///
+ ///
///
public static EventCallback CreateBinder(
this EventCallbackFactory factory,
object receiver,
Action setter,
- DateTime? existingValue)
+ DateTime? existingValue,
+ CultureInfo culture = null)
{
- return CreateBinderCore(factory, receiver, setter, ConvertToNullableDateTime);
+ return CreateBinderCore(factory, receiver, setter, culture, ConvertToNullableDateTime);
}
///
@@ -602,13 +632,15 @@ namespace Microsoft.AspNetCore.Components
///
///
///
+ ///
///
public static EventCallback CreateBinder(
this EventCallbackFactory factory,
object receiver,
Action setter,
DateTime existingValue,
- string format)
+ string format,
+ CultureInfo culture = null)
{
// Avoiding CreateBinderCore so we can avoid an extra allocating lambda
// when a format is used.
@@ -618,7 +650,7 @@ namespace Microsoft.AspNetCore.Components
var converted = false;
try
{
- value = ConvertDateTime(e.Value, format);
+ value = ConvertDateTime(e.Value, culture, format);
converted = true;
}
catch
@@ -633,20 +665,20 @@ namespace Microsoft.AspNetCore.Components
};
return factory.Create(receiver, callback);
- static DateTime ConvertDateTime(object obj, string format)
+ static DateTime ConvertDateTime(object obj, CultureInfo culture, string format)
{
var text = (string)obj;
if (string.IsNullOrEmpty(text))
{
return default;
}
- else if (format != null && DateTime.TryParseExact(text, format, CultureInfo.InvariantCulture, DateTimeStyles.RoundtripKind, out var value))
+ else if (format != null && DateTime.TryParseExact(text, format, culture ?? CultureInfo.CurrentCulture, DateTimeStyles.RoundtripKind, out var value))
{
return value;
}
else
{
- return DateTime.Parse(text);
+ return DateTime.Parse(text, culture ?? CultureInfo.CurrentCulture, DateTimeStyles.RoundtripKind);
}
}
}
@@ -659,20 +691,23 @@ namespace Microsoft.AspNetCore.Components
///
///
///
+ ///
///
public static EventCallback CreateBinder(
this EventCallbackFactory factory,
object receiver,
Action setter,
- T existingValue)
+ T existingValue,
+ CultureInfo culture = null)
{
- return CreateBinderCore(factory, receiver, setter, BinderConverterCache.Get());
+ return CreateBinderCore(factory, receiver, setter, culture, BinderConverterCache.Get());
}
private static EventCallback CreateBinderCore(
this EventCallbackFactory factory,
object receiver,
Action setter,
+ CultureInfo culture,
BindConverter converter)
{
Action callback = e =>
@@ -681,7 +716,7 @@ namespace Microsoft.AspNetCore.Components
var converted = false;
try
{
- converted = converter(e.Value, out value);
+ converted = converter(e.Value, culture, out value);
}
catch
{
@@ -822,7 +857,7 @@ namespace Microsoft.AspNetCore.Components
return ConvertWithTypeConverter;
- bool ConvertWithTypeConverter(object obj, out T value)
+ bool ConvertWithTypeConverter(object obj, CultureInfo culture, out T value)
{
var text = (string)obj;
if (string.IsNullOrEmpty(text))
@@ -832,7 +867,7 @@ namespace Microsoft.AspNetCore.Components
}
// We intentionally close-over the TypeConverter to cache it. The TypeDescriptor infrastructure is slow.
- var converted = typeConverter.ConvertFromString(context: null, CultureInfo.CurrentCulture, text);
+ var converted = typeConverter.ConvertFromString(context: null, culture ?? CultureInfo.CurrentCulture, text);
if (converted == null)
{
value = default;
diff --git a/src/Components/Components/src/Microsoft.AspNetCore.Components.csproj b/src/Components/Components/src/Microsoft.AspNetCore.Components.csproj
index da740506b5..104048d5c0 100644
--- a/src/Components/Components/src/Microsoft.AspNetCore.Components.csproj
+++ b/src/Components/Components/src/Microsoft.AspNetCore.Components.csproj
@@ -9,6 +9,10 @@
3.0
+
+
+
+
diff --git a/src/Components/Components/src/Properties/AssemblyInfo.cs b/src/Components/Components/src/Properties/AssemblyInfo.cs
index 47201f1bda..3c73dd9beb 100644
--- a/src/Components/Components/src/Properties/AssemblyInfo.cs
+++ b/src/Components/Components/src/Properties/AssemblyInfo.cs
@@ -2,7 +2,7 @@ using System.Runtime.CompilerServices;
[assembly: InternalsVisibleTo("Microsoft.AspNetCore.Blazor.Build.Tests, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")]
[assembly: InternalsVisibleTo("Microsoft.AspNetCore.Components.Tests, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")]
-[assembly: InternalsVisibleTo("Microsoft.AspNetCore.Components.Browser.Tests, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")]
+[assembly: InternalsVisibleTo("Microsoft.AspNetCore.Components.Web.Tests, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")]
[assembly: InternalsVisibleTo("Microsoft.AspNetCore.Components.Performance, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")]
[assembly: InternalsVisibleTo("Microsoft.AspNetCore.Components.Server.Tests, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")]
[assembly: InternalsVisibleTo("Ignitor, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")]
diff --git a/src/Components/Components/test/EventCallbackFactoryBinderExtensionsTest.cs b/src/Components/Components/test/EventCallbackFactoryBinderExtensionsTest.cs
index 831734f460..6136b5b439 100644
--- a/src/Components/Components/test/EventCallbackFactoryBinderExtensionsTest.cs
+++ b/src/Components/Components/test/EventCallbackFactoryBinderExtensionsTest.cs
@@ -5,6 +5,7 @@ using System;
using System.ComponentModel;
using System.Globalization;
using System.Threading.Tasks;
+using Microsoft.AspNetCore.Testing;
using Xunit;
namespace Microsoft.AspNetCore.Components
@@ -515,6 +516,45 @@ namespace Microsoft.AspNetCore.Components
ex.Message);
}
+ [Fact]
+ [ReplaceCulture("fr-FR", "fr-FR")]
+ public async Task CreateBinder_NumericType_WithCurrentCulture()
+ {
+ // Arrange
+ var value = 17_000;
+ var component = new EventCountingComponent();
+ Action setter = (_) => value = _;
+
+ var binder = EventCallback.Factory.CreateBinder(component, setter, value, culture: null);
+
+ var expectedValue = 42_000;
+
+ // Act
+ await binder.InvokeAsync(new UIChangeEventArgs() { Value = "42 000,00", });
+
+ Assert.Equal(expectedValue, value);
+ Assert.Equal(1, component.Count);
+ }
+
+ [Fact]
+ public async Task CreateBinder_NumericType_WithInvariantCulture()
+ {
+ // Arrange
+ var value = 17_000;
+ var component = new EventCountingComponent();
+ Action setter = (_) => value = _;
+
+ var binder = EventCallback.Factory.CreateBinder(component, setter, value, CultureInfo.InvariantCulture);
+
+ var expectedValue = 42_000;
+
+ // Act
+ await binder.InvokeAsync(new UIChangeEventArgs() { Value = "42,000.00", });
+
+ Assert.Equal(expectedValue, value);
+ Assert.Equal(1, component.Count);
+ }
+
private class EventCountingComponent : IComponent, IHandleEvent
{
public int Count;
diff --git a/src/Components/ComponentsNoDeps.slnf b/src/Components/ComponentsNoDeps.slnf
index 6098dc29e8..709df54396 100644
--- a/src/Components/ComponentsNoDeps.slnf
+++ b/src/Components/ComponentsNoDeps.slnf
@@ -17,7 +17,7 @@
"Blazor\\testassets\\MonoSanityClient\\MonoSanityClient.csproj",
"Blazor\\testassets\\MonoSanity\\MonoSanity.csproj",
"Blazor\\testassets\\StandaloneApp\\StandaloneApp.csproj",
- "Browser\\src\\Microsoft.AspNetCore.Components.Browser.csproj",
+ "Web\\src\\Microsoft.AspNetCore.Components.Web.csproj",
"Components\\perf\\Microsoft.AspNetCore.Components.Performance.csproj",
"Components\\src\\Microsoft.AspNetCore.Components.csproj",
"Components\\test\\Microsoft.AspNetCore.Components.Tests.csproj",
diff --git a/src/Components/Server/ref/Microsoft.AspNetCore.Components.Server.csproj b/src/Components/Server/ref/Microsoft.AspNetCore.Components.Server.csproj
index 856e59f6ca..e27f07cc33 100644
--- a/src/Components/Server/ref/Microsoft.AspNetCore.Components.Server.csproj
+++ b/src/Components/Server/ref/Microsoft.AspNetCore.Components.Server.csproj
@@ -5,7 +5,7 @@
-
+
diff --git a/src/Components/Server/ref/Microsoft.AspNetCore.Components.Server.netcoreapp3.0.cs b/src/Components/Server/ref/Microsoft.AspNetCore.Components.Server.netcoreapp3.0.cs
index 37c0af00e2..8e590622a6 100644
--- a/src/Components/Server/ref/Microsoft.AspNetCore.Components.Server.netcoreapp3.0.cs
+++ b/src/Components/Server/ref/Microsoft.AspNetCore.Components.Server.netcoreapp3.0.cs
@@ -21,13 +21,6 @@ namespace Microsoft.AspNetCore.Builder
public static Microsoft.AspNetCore.Components.Server.ComponentEndpointConventionBuilder MapBlazorHub(this Microsoft.AspNetCore.Routing.IEndpointRouteBuilder endpoints, string selector, string path, System.Action configureOptions) where TComponent : Microsoft.AspNetCore.Components.IComponent { throw null; }
}
}
-namespace Microsoft.AspNetCore.Components.Browser.Rendering
-{
- public partial class RemoteRendererException : System.Exception
- {
- public RemoteRendererException(string message) { }
- }
-}
namespace Microsoft.AspNetCore.Components.Server
{
public partial class CircuitOptions
@@ -91,6 +84,13 @@ namespace Microsoft.AspNetCore.Components.Server.Circuits
public static void NotifyLocationChanged(string uriAbsolute, bool isInterceptedLink) { }
}
}
+namespace Microsoft.AspNetCore.Components.Web.Rendering
+{
+ public partial class RemoteRendererException : System.Exception
+ {
+ public RemoteRendererException(string message) { }
+ }
+}
namespace Microsoft.Extensions.DependencyInjection
{
public static partial class ComponentServiceCollectionExtensions
diff --git a/src/Components/Server/src/Circuits/CircuitHost.cs b/src/Components/Server/src/Circuits/CircuitHost.cs
index a53d61b247..1dc1d04c78 100644
--- a/src/Components/Server/src/Circuits/CircuitHost.cs
+++ b/src/Components/Server/src/Circuits/CircuitHost.cs
@@ -5,8 +5,8 @@ using System;
using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
-using Microsoft.AspNetCore.Components.Browser;
-using Microsoft.AspNetCore.Components.Browser.Rendering;
+using Microsoft.AspNetCore.Components.Web;
+using Microsoft.AspNetCore.Components.Web.Rendering;
using Microsoft.AspNetCore.Components.Rendering;
using Microsoft.AspNetCore.Components.Routing;
using Microsoft.Extensions.DependencyInjection;
diff --git a/src/Components/Server/src/Circuits/DefaultCircuitFactory.cs b/src/Components/Server/src/Circuits/DefaultCircuitFactory.cs
index 913faa3c86..0bb5d5f111 100644
--- a/src/Components/Server/src/Circuits/DefaultCircuitFactory.cs
+++ b/src/Components/Server/src/Circuits/DefaultCircuitFactory.cs
@@ -5,8 +5,8 @@ using System;
using System.Collections.Generic;
using System.Linq;
using System.Text.Encodings.Web;
-using Microsoft.AspNetCore.Components.Browser;
-using Microsoft.AspNetCore.Components.Browser.Rendering;
+using Microsoft.AspNetCore.Components.Web;
+using Microsoft.AspNetCore.Components.Web.Rendering;
using Microsoft.AspNetCore.Components.Rendering;
using Microsoft.AspNetCore.Components.Routing;
using Microsoft.AspNetCore.Http;
diff --git a/src/Components/Server/src/Circuits/RemoteNavigationInterception.cs b/src/Components/Server/src/Circuits/RemoteNavigationInterception.cs
index 8b94e03eba..3609adf95d 100644
--- a/src/Components/Server/src/Circuits/RemoteNavigationInterception.cs
+++ b/src/Components/Server/src/Circuits/RemoteNavigationInterception.cs
@@ -5,7 +5,7 @@ using System;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Components.Routing;
using Microsoft.JSInterop;
-using Interop = Microsoft.AspNetCore.Components.Browser.BrowserUriHelperInterop;
+using Interop = Microsoft.AspNetCore.Components.Web.BrowserUriHelperInterop;
namespace Microsoft.AspNetCore.Components.Server.Circuits
{
diff --git a/src/Components/Server/src/Circuits/RemoteRenderer.cs b/src/Components/Server/src/Circuits/RemoteRenderer.cs
index 761c5953bc..0d3225d0f2 100644
--- a/src/Components/Server/src/Circuits/RemoteRenderer.cs
+++ b/src/Components/Server/src/Circuits/RemoteRenderer.cs
@@ -14,7 +14,7 @@ using Microsoft.AspNetCore.SignalR;
using Microsoft.Extensions.Logging;
using Microsoft.JSInterop;
-namespace Microsoft.AspNetCore.Components.Browser.Rendering
+namespace Microsoft.AspNetCore.Components.Web.Rendering
{
internal class RemoteRenderer : HtmlRenderer
{
diff --git a/src/Components/Server/src/Circuits/RemoteRendererException.cs b/src/Components/Server/src/Circuits/RemoteRendererException.cs
index 3305daf583..462c446751 100644
--- a/src/Components/Server/src/Circuits/RemoteRendererException.cs
+++ b/src/Components/Server/src/Circuits/RemoteRendererException.cs
@@ -3,7 +3,7 @@
using System;
-namespace Microsoft.AspNetCore.Components.Browser.Rendering
+namespace Microsoft.AspNetCore.Components.Web.Rendering
{
///
/// Represents an exception related to remote rendering.
diff --git a/src/Components/Server/src/Circuits/RemoteUriHelper.cs b/src/Components/Server/src/Circuits/RemoteUriHelper.cs
index 03b492a1e0..62f8877735 100644
--- a/src/Components/Server/src/Circuits/RemoteUriHelper.cs
+++ b/src/Components/Server/src/Circuits/RemoteUriHelper.cs
@@ -5,7 +5,7 @@ using System;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
using Microsoft.JSInterop;
-using Interop = Microsoft.AspNetCore.Components.Browser.BrowserUriHelperInterop;
+using Interop = Microsoft.AspNetCore.Components.Web.BrowserUriHelperInterop;
namespace Microsoft.AspNetCore.Components.Server.Circuits
{
diff --git a/src/Components/Server/src/Microsoft.AspNetCore.Components.Server.csproj b/src/Components/Server/src/Microsoft.AspNetCore.Components.Server.csproj
index 685d1edf97..9b42d39b56 100644
--- a/src/Components/Server/src/Microsoft.AspNetCore.Components.Server.csproj
+++ b/src/Components/Server/src/Microsoft.AspNetCore.Components.Server.csproj
@@ -12,7 +12,7 @@
-
+
@@ -53,10 +53,10 @@
- ..\..\Browser.JS\dist\Release\blazor.server.js
- ..\..\Browser.JS\dist\Debug\blazor.server.js
+ ..\..\Web.JS\dist\Release\blazor.server.js
+ ..\..\Web.JS\dist\Debug\blazor.server.js
diff --git a/src/Components/Server/test/Circuits/CircuitHostTest.cs b/src/Components/Server/test/Circuits/CircuitHostTest.cs
index 73c9681903..78d413c298 100644
--- a/src/Components/Server/test/Circuits/CircuitHostTest.cs
+++ b/src/Components/Server/test/Circuits/CircuitHostTest.cs
@@ -7,8 +7,8 @@ using System.Linq;
using System.Text.Encodings.Web;
using System.Threading;
using System.Threading.Tasks;
-using Microsoft.AspNetCore.Components.Browser;
-using Microsoft.AspNetCore.Components.Browser.Rendering;
+using Microsoft.AspNetCore.Components.Web;
+using Microsoft.AspNetCore.Components.Web.Rendering;
using Microsoft.AspNetCore.Components.Rendering;
using Microsoft.AspNetCore.SignalR;
using Microsoft.Extensions.DependencyInjection;
diff --git a/src/Components/Server/test/Circuits/RemoteComponentContextTest.cs b/src/Components/Server/test/Circuits/RemoteComponentContextTest.cs
index 0cdd6167ec..ad97100b57 100644
--- a/src/Components/Server/test/Circuits/RemoteComponentContextTest.cs
+++ b/src/Components/Server/test/Circuits/RemoteComponentContextTest.cs
@@ -8,7 +8,7 @@ using Microsoft.AspNetCore.Components.Server.Circuits;
using Microsoft.AspNetCore.SignalR;
using Xunit;
-namespace Microsoft.AspNetCore.Components.Browser.Rendering
+namespace Microsoft.AspNetCore.Components.Web.Rendering
{
public class RemoteComponentContextTest
{
@@ -38,7 +38,7 @@ namespace Microsoft.AspNetCore.Components.Browser.Rendering
private class FakeClientProxy : IClientProxy
{
public Task SendCoreAsync(string method, object[] args, CancellationToken cancellationToken = default)
- {
+ {
throw new NotImplementedException();
}
}
diff --git a/src/Components/Server/test/Circuits/RemoteRendererTest.cs b/src/Components/Server/test/Circuits/RemoteRendererTest.cs
index 630fd75c7e..4e33c4cf28 100644
--- a/src/Components/Server/test/Circuits/RemoteRendererTest.cs
+++ b/src/Components/Server/test/Circuits/RemoteRendererTest.cs
@@ -16,7 +16,7 @@ using Microsoft.JSInterop;
using Moq;
using Xunit;
-namespace Microsoft.AspNetCore.Components.Browser.Rendering
+namespace Microsoft.AspNetCore.Components.Web.Rendering
{
public class RemoteRendererTest : HtmlRendererTestBase
{
diff --git a/src/Components/Server/test/Circuits/TestCircuitHost.cs b/src/Components/Server/test/Circuits/TestCircuitHost.cs
index 26ca1f224d..f82ec5287e 100644
--- a/src/Components/Server/test/Circuits/TestCircuitHost.cs
+++ b/src/Components/Server/test/Circuits/TestCircuitHost.cs
@@ -5,8 +5,8 @@ using System;
using System.Collections.Generic;
using System.Runtime.ExceptionServices;
using System.Text.Encodings.Web;
-using Microsoft.AspNetCore.Components.Browser;
-using Microsoft.AspNetCore.Components.Browser.Rendering;
+using Microsoft.AspNetCore.Components.Web;
+using Microsoft.AspNetCore.Components.Web.Rendering;
using Microsoft.AspNetCore.Components.Rendering;
using Microsoft.AspNetCore.SignalR;
using Microsoft.Extensions.DependencyInjection;
diff --git a/src/Components/Components/src/JsonSerializerOptionsProvider.cs b/src/Components/Shared/src/JsonSerializerOptionsProvider.cs
similarity index 100%
rename from src/Components/Components/src/JsonSerializerOptionsProvider.cs
rename to src/Components/Shared/src/JsonSerializerOptionsProvider.cs
diff --git a/src/Components/Browser.JS/.gitignore b/src/Components/Web.JS/.gitignore
similarity index 100%
rename from src/Components/Browser.JS/.gitignore
rename to src/Components/Web.JS/.gitignore
diff --git a/src/Components/Browser.JS/.npmrc b/src/Components/Web.JS/.npmrc
similarity index 100%
rename from src/Components/Browser.JS/.npmrc
rename to src/Components/Web.JS/.npmrc
diff --git a/src/Components/Browser.JS/Microsoft.AspNetCore.Components.Browser.JS.npmproj b/src/Components/Web.JS/Microsoft.AspNetCore.Components.Web.JS.npmproj
similarity index 100%
rename from src/Components/Browser.JS/Microsoft.AspNetCore.Components.Browser.JS.npmproj
rename to src/Components/Web.JS/Microsoft.AspNetCore.Components.Web.JS.npmproj
diff --git a/src/Components/Browser.JS/dist/.gitattributes b/src/Components/Web.JS/dist/.gitattributes
similarity index 100%
rename from src/Components/Browser.JS/dist/.gitattributes
rename to src/Components/Web.JS/dist/.gitattributes
diff --git a/src/Components/Browser.JS/dist/Release/blazor.server.js b/src/Components/Web.JS/dist/Release/blazor.server.js
similarity index 68%
rename from src/Components/Browser.JS/dist/Release/blazor.server.js
rename to src/Components/Web.JS/dist/Release/blazor.server.js
index e84abe0f91..1e1dbc6807 100644
--- a/src/Components/Browser.JS/dist/Release/blazor.server.js
+++ b/src/Components/Web.JS/dist/Release/blazor.server.js
@@ -1,11 +1,11 @@
-!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=48)}([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";n.d(t,"a",function(){return s}),n.d(t,"c",function(){return c}),n.d(t,"f",function(){return u}),n.d(t,"g",function(){return l}),n.d(t,"h",function(){return f}),n.d(t,"e",function(){return h}),n.d(t,"d",function(){return p}),n.d(t,"b",function(){return d});var r=n(0),o=n(6),i=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){e.done?o(e.value):new n(function(t){t(e.value)}).then(a,s)}c((r=r.apply(e,t||[])).next())})},a=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=(o=a.trys).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]-1&&this.subject.observers.splice(e,1),0===this.subject.observers.length&&this.subject.cancelCallback&&this.subject.cancelCallback().catch(function(e){})},e}(),d=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(e,t,n){"use strict";n.r(t);var r,o,i=n(3),a=n(4),s=n(42),c=n(0),u=(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)}),l=function(e){function t(t){var n=e.call(this)||this;return n.logger=t,n}return u(t,e),t.prototype.send=function(e){var t=this;return e.abortSignal&&e.abortSignal.aborted?Promise.reject(new i.a):e.method?e.url?new Promise(function(n,r){var o=new XMLHttpRequest;o.open(e.method,e.url,!0),o.withCredentials=!0,o.setRequestHeader("X-Requested-With","XMLHttpRequest"),o.setRequestHeader("Content-Type","text/plain;charset=UTF-8");var s=e.headers;s&&Object.keys(s).forEach(function(e){o.setRequestHeader(e,s[e])}),e.responseType&&(o.responseType=e.responseType),e.abortSignal&&(e.abortSignal.onabort=function(){o.abort(),r(new i.a)}),e.timeout&&(o.timeout=e.timeout),o.onload=function(){e.abortSignal&&(e.abortSignal.onabort=null),o.status>=200&&o.status<300?n(new a.b(o.status,o.statusText,o.response||o.responseText)):r(new i.b(o.statusText,o.status))},o.onerror=function(){t.logger.log(c.a.Warning,"Error from HTTP request. "+o.status+": "+o.statusText+"."),r(new i.b(o.statusText,o.status))},o.ontimeout=function(){t.logger.log(c.a.Warning,"Timeout from HTTP request."),r(new i.c)},o.send(e.content||"")}):Promise.reject(new Error("No url defined.")):Promise.reject(new Error("No method defined."))},t}(a.a),f=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)}}(),h=function(e){function t(t){var n=e.call(this)||this;return"undefined"!=typeof XMLHttpRequest?n.httpClient=new l(t):n.httpClient=new s.a(t),n}return f(t,e),t.prototype.send=function(e){return e.abortSignal&&e.abortSignal.aborted?Promise.reject(new i.a):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}(a.a),p=n(43);!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"}(o||(o={}));var d,g=n(1),y=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 E.WebSockets:if(!this.options.WebSocket)throw new Error("'WebSocket' is not supported in your environment.");return new A(this.httpClient,this.accessTokenFactory,this.logger,this.options.logMessageContent||!1,this.options.WebSocket);case E.ServerSentEvents:if(!this.options.EventSource)throw new Error("'EventSource' is not supported in your environment.");return new O(this.httpClient,this.accessTokenFactory,this.logger,this.options.logMessageContent||!1,this.options.EventSource);case E.LongPolling:return new P(this.httpClient,this.accessTokenFactory,this.logger,this.options.logMessageContent||!1);default:throw new Error("Unknown transport: "+e+".")}},e.prototype.resolveTransportOrError=function(e,t,n){var r=E[e.transport];if(null==r)return this.logger.log(c.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(c.a.Debug,"Skipping transport '"+E[r]+"' because it was disabled by the client."),new Error("'"+E[r]+"' is disabled by the client.");if(!(e.transferFormats.map(function(e){return S[e]}).indexOf(n)>=0))return this.logger.log(c.a.Debug,"Skipping transport '"+E[r]+"' because it does not support the requested transfer format '"+S[n]+"'."),new Error("'"+E[r]+"' does not support "+S[n]+".");if(r===E.WebSockets&&!this.options.WebSocket||r===E.ServerSentEvents&&!this.options.EventSource)return this.logger.log(c.a.Debug,"Skipping transport '"+E[r]+"' because it is not supported in your environment.'"),new Error("'"+E[r]+"' is not supported in your environment.");this.logger.log(c.a.Debug,"Selecting transport '"+E[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){if(this.logger.log(c.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){if("Disconnecting"===this.connectionState&&this.stopPromiseResolver(),e?this.logger.log(c.a.Error,"Connection disconnected with error '"+e+"'."):this.logger.log(c.a.Information,"Connection disconnected."),this.connectionId=void 0,this.connectionState="Disconnected",this.onclose&&this.connectionStarted){this.connectionStarted=!1;try{this.onclose(e)}catch(t){this.logger.log(c.a.Error,"HttpConnection.onclose("+e+") threw error '"+t+"'.")}}}else this.logger.log(c.a.Warning,"Call to HttpConnection.stopConnection("+e+") was ignored because the connection hasn't yet left the in the connecting state.");else this.logger.log(c.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(!g.c.isBrowser||!window.document)throw new Error("Cannot resolve '"+e+"'.");var t=window.document.createElement("a");return t.href=e,this.logger.log(c.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",n+=-1===t?"":e.substring(t)},e}();var q=function(){function e(e){this.transport=e,this.buffer=[],this.executing=!0,this.sendBufferedData=new W,this.transportResult=new W,this.sendLoopPromise=this.sendLoop()}return e.prototype.send=function(e){return this.bufferData(e),this.transportResult||(this.transportResult=new W),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 B(this,void 0,void 0,function(){var t,n,r;return j(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 W,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]-1&&this.subject.observers.splice(e,1),0===this.subject.observers.length&&this.subject.cancelCallback&&this.subject.cancelCallback().catch(function(e){})},e}(),d=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(e,t,n){"use strict";n.r(t);var r,o,i=n(3),a=n(4),s=n(42),c=n(0),u=(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)}),l=function(e){function t(t){var n=e.call(this)||this;return n.logger=t,n}return u(t,e),t.prototype.send=function(e){var t=this;return e.abortSignal&&e.abortSignal.aborted?Promise.reject(new i.a):e.method?e.url?new Promise(function(n,r){var o=new XMLHttpRequest;o.open(e.method,e.url,!0),o.withCredentials=!0,o.setRequestHeader("X-Requested-With","XMLHttpRequest"),o.setRequestHeader("Content-Type","text/plain;charset=UTF-8");var s=e.headers;s&&Object.keys(s).forEach(function(e){o.setRequestHeader(e,s[e])}),e.responseType&&(o.responseType=e.responseType),e.abortSignal&&(e.abortSignal.onabort=function(){o.abort(),r(new i.a)}),e.timeout&&(o.timeout=e.timeout),o.onload=function(){e.abortSignal&&(e.abortSignal.onabort=null),o.status>=200&&o.status<300?n(new a.b(o.status,o.statusText,o.response||o.responseText)):r(new i.b(o.statusText,o.status))},o.onerror=function(){t.logger.log(c.a.Warning,"Error from HTTP request. "+o.status+": "+o.statusText+"."),r(new i.b(o.statusText,o.status))},o.ontimeout=function(){t.logger.log(c.a.Warning,"Timeout from HTTP request."),r(new i.c)},o.send(e.content||"")}):Promise.reject(new Error("No url defined.")):Promise.reject(new Error("No method defined."))},t}(a.a),f=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)}}(),h=function(e){function t(t){var n=e.call(this)||this;return"undefined"!=typeof XMLHttpRequest?n.httpClient=new l(t):n.httpClient=new s.a(t),n}return f(t,e),t.prototype.send=function(e){return e.abortSignal&&e.abortSignal.aborted?Promise.reject(new i.a):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}(a.a),p=n(43);!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"}(o||(o={}));var d,g=n(1),y=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 E.WebSockets:if(!this.options.WebSocket)throw new Error("'WebSocket' is not supported in your environment.");return new A(this.httpClient,this.accessTokenFactory,this.logger,this.options.logMessageContent||!1,this.options.WebSocket);case E.ServerSentEvents:if(!this.options.EventSource)throw new Error("'EventSource' is not supported in your environment.");return new O(this.httpClient,this.accessTokenFactory,this.logger,this.options.logMessageContent||!1,this.options.EventSource);case E.LongPolling:return new P(this.httpClient,this.accessTokenFactory,this.logger,this.options.logMessageContent||!1);default:throw new Error("Unknown transport: "+e+".")}},e.prototype.resolveTransportOrError=function(e,t,n){var r=E[e.transport];if(null==r)return this.logger.log(c.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(c.a.Debug,"Skipping transport '"+E[r]+"' because it was disabled by the client."),new Error("'"+E[r]+"' is disabled by the client.");if(!(e.transferFormats.map(function(e){return S[e]}).indexOf(n)>=0))return this.logger.log(c.a.Debug,"Skipping transport '"+E[r]+"' because it does not support the requested transfer format '"+S[n]+"'."),new Error("'"+E[r]+"' does not support "+S[n]+".");if(r===E.WebSockets&&!this.options.WebSocket||r===E.ServerSentEvents&&!this.options.EventSource)return this.logger.log(c.a.Debug,"Skipping transport '"+E[r]+"' because it is not supported in your environment.'"),new Error("'"+E[r]+"' is not supported in your environment.");this.logger.log(c.a.Debug,"Selecting transport '"+E[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){if(this.logger.log(c.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){if("Disconnecting"===this.connectionState&&this.stopPromiseResolver(),e?this.logger.log(c.a.Error,"Connection disconnected with error '"+e+"'."):this.logger.log(c.a.Information,"Connection disconnected."),this.connectionId=void 0,this.connectionState="Disconnected",this.onclose&&this.connectionStarted){this.connectionStarted=!1;try{this.onclose(e)}catch(t){this.logger.log(c.a.Error,"HttpConnection.onclose("+e+") threw error '"+t+"'.")}}}else this.logger.log(c.a.Warning,"Call to HttpConnection.stopConnection("+e+") was ignored because the connection hasn't yet left the in the connecting state.");else this.logger.log(c.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(!g.c.isBrowser||!window.document)throw new Error("Cannot resolve '"+e+"'.");var t=window.document.createElement("a");return t.href=e,this.logger.log(c.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",n+=-1===t?"":e.substring(t)},e}();var W=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 B(this,void 0,void 0,function(){var t,n,r;return j(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;o
* @license MIT
*/
-var r=n(49),o=n(50),i=n(51);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=e[t];e[t]=e[n],e[n]=r}function y(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:v(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):v(e,[t],n,r,o);throw new TypeError("val must be string, number or Buffer")}function v(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 I(e,t,n){return 0===t&&n===e.length?r.fromByteArray(e):r.fromByteArray(e.slice(t,n))}function _(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<=T)return String.fromCharCode.apply(String,e);var n="",r=0;for(;rthis.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 P(this,t,n);case"utf8":case"utf-8":return _(this,t,n);case"ascii":return k(this,t,n);case"latin1":case"binary":return x(this,t,n);case"base64":return I(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}}.apply(this,arguments)},c.prototype.equals=function(e){if(!c.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e||0===c.compare(this,e)},c.prototype.inspect=function(){var e="",n=t.INSPECT_MAX_BYTES;return this.length>0&&(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 b(this,e,t,n);case"utf8":case"utf-8":return m(this,e,t,n);case"ascii":return w(this,e,t,n);case"latin1":case"binary":return E(this,e,t,n);case"base64":return S(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return C(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)}};var T=4096;function k(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 O(e,t,n,r,o,i){if(!c.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>o||t