diff --git a/eng/ProjectReferences.props b/eng/ProjectReferences.props
index d1d79ea73f..ce14f22333 100644
--- a/eng/ProjectReferences.props
+++ b/eng/ProjectReferences.props
@@ -15,6 +15,7 @@
+
diff --git a/src/Components/Components.sln b/src/Components/Components.sln
index f00b28bd36..e6aa7ab8d1 100644
--- a/src/Components/Components.sln
+++ b/src/Components/Components.sln
@@ -214,9 +214,9 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Signal
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Http.Connections.Client", "..\SignalR\clients\csharp\Http.Connections.Client\src\Microsoft.AspNetCore.Http.Connections.Client.csproj", "{F88118E1-6F4A-4F89-B047-5FFD2889B9F0}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Ignitor", "test\testassets\Ignitor\Ignitor.csproj", "{A78CE874-76B7-46FE-8009-1ED5258BA0AA}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Ignitor", "Ignitor\src\Ignitor.csproj", "{A78CE874-76B7-46FE-8009-1ED5258BA0AA}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Ignitor.Test", "test\Ignitor.Test\Ignitor.Test.csproj", "{FC2A1EB0-A116-4689-92B7-239B1DCCF4CA}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Ignitor.Test", "Ignitor\test\Ignitor.Test.csproj", "{FC2A1EB0-A116-4689-92B7-239B1DCCF4CA}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Blazor.HttpClient", "Blazor\Http\src\Microsoft.AspNetCore.Blazor.HttpClient.csproj", "{74D21785-2FAB-4266-B7C4-E311EC8EE0DF}"
EndProject
@@ -236,6 +236,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Compon
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Components.Forms.Tests", "Forms\test\Microsoft.AspNetCore.Components.Forms.Tests.csproj", "{173D84A3-0F37-480F-AC0F-7E2DBBE32B28}"
EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Ignitor", "Ignitor", "{D6712550-0DA2-49C8-88E1-F04CAB982BF4}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -1583,8 +1585,8 @@ Global
{DA137BD4-F7F1-4D53-855F-5EC40CEA36B0} = {2FC10057-7A0A-4E34-8302-879925BC0102}
{0CDAB70B-71DC-43BE-ACB7-AD2EE3541FFB} = {2FC10057-7A0A-4E34-8302-879925BC0102}
{F88118E1-6F4A-4F89-B047-5FFD2889B9F0} = {2FC10057-7A0A-4E34-8302-879925BC0102}
- {A78CE874-76B7-46FE-8009-1ED5258BA0AA} = {44E0D4F3-4430-4175-B482-0D1AEE4BB699}
- {FC2A1EB0-A116-4689-92B7-239B1DCCF4CA} = {E9E9CF3C-CE9B-4282-B2BB-97EFC3872798}
+ {A78CE874-76B7-46FE-8009-1ED5258BA0AA} = {D6712550-0DA2-49C8-88E1-F04CAB982BF4}
+ {FC2A1EB0-A116-4689-92B7-239B1DCCF4CA} = {D6712550-0DA2-49C8-88E1-F04CAB982BF4}
{74D21785-2FAB-4266-B7C4-E311EC8EE0DF} = {7260DED9-22A9-4E9D-92F4-5E8A4404DEAF}
{E4C01A3F-D3C1-4639-A6A9-930E918843DD} = {7260DED9-22A9-4E9D-92F4-5E8A4404DEAF}
{DE297C91-B3E9-4C6F-B74D-0AF9EFEBF684} = {A27FF193-195B-4474-8E6C-840B2E339373}
diff --git a/src/Components/Components/src/Properties/AssemblyInfo.cs b/src/Components/Components/src/Properties/AssemblyInfo.cs
index ef782190ea..d5aa38e01d 100644
--- a/src/Components/Components/src/Properties/AssemblyInfo.cs
+++ b/src/Components/Components/src/Properties/AssemblyInfo.cs
@@ -7,5 +7,3 @@ using System.Runtime.CompilerServices;
[assembly: InternalsVisibleTo("Microsoft.AspNetCore.Components.Server.Tests, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")]
[assembly: InternalsVisibleTo("Microsoft.AspNetCore.Components.Tests, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")]
[assembly: InternalsVisibleTo("Microsoft.AspNetCore.Components.Web.Tests, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")]
-[assembly: InternalsVisibleTo("Ignitor, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")]
-[assembly: InternalsVisibleTo("Ignitor.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")]
diff --git a/src/Components/Components/src/RenderTree/ArrayBuilderExtensions.cs b/src/Components/Components/src/RenderTree/ArrayBuilderExtensions.cs
index 3fb698d3ee..2252000716 100644
--- a/src/Components/Components/src/RenderTree/ArrayBuilderExtensions.cs
+++ b/src/Components/Components/src/RenderTree/ArrayBuilderExtensions.cs
@@ -3,7 +3,11 @@
using System;
+#if IGNITOR
+namespace Ignitor
+#else
namespace Microsoft.AspNetCore.Components.RenderTree
+#endif
{
internal static class ArrayBuilderExtensions
{
diff --git a/src/Components/Components/src/RenderTree/ArrayBuilderSegment.cs b/src/Components/Components/src/RenderTree/ArrayBuilderSegment.cs
index 3377e18163..4820e2f5fd 100644
--- a/src/Components/Components/src/RenderTree/ArrayBuilderSegment.cs
+++ b/src/Components/Components/src/RenderTree/ArrayBuilderSegment.cs
@@ -5,7 +5,11 @@ using System;
using System.Collections;
using System.Collections.Generic;
+#if IGNITOR
+namespace Ignitor
+#else
namespace Microsoft.AspNetCore.Components.RenderTree
+#endif
{
///
/// Types in the Microsoft.AspNetCore.Components.RenderTree are not recommended for use outside
diff --git a/src/Components/Components/src/RenderTree/ArrayRange.cs b/src/Components/Components/src/RenderTree/ArrayRange.cs
index b27a8d5310..a980a92246 100644
--- a/src/Components/Components/src/RenderTree/ArrayRange.cs
+++ b/src/Components/Components/src/RenderTree/ArrayRange.cs
@@ -1,7 +1,11 @@
// 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.
+#if IGNITOR
+namespace Ignitor
+#else
namespace Microsoft.AspNetCore.Components.RenderTree
+#endif
{
///
/// Types in the Microsoft.AspNetCore.Components.RenderTree are not recommended for use outside
diff --git a/src/Components/Components/src/RenderTree/RenderBatch.cs b/src/Components/Components/src/RenderTree/RenderBatch.cs
index 092c6ec378..55f3c02629 100644
--- a/src/Components/Components/src/RenderTree/RenderBatch.cs
+++ b/src/Components/Components/src/RenderTree/RenderBatch.cs
@@ -1,7 +1,11 @@
// 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.
+#if IGNITOR
+namespace Ignitor
+#else
namespace Microsoft.AspNetCore.Components.RenderTree
+#endif
{
///
/// Types in the Microsoft.AspNetCore.Components.RenderTree are not recommended for use outside
diff --git a/src/Components/Components/src/RenderTree/RenderTreeDiff.cs b/src/Components/Components/src/RenderTree/RenderTreeDiff.cs
index da5b3ed3f7..4947029ab2 100644
--- a/src/Components/Components/src/RenderTree/RenderTreeDiff.cs
+++ b/src/Components/Components/src/RenderTree/RenderTreeDiff.cs
@@ -1,7 +1,11 @@
// 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.
+#if IGNITOR
+namespace Ignitor
+#else
namespace Microsoft.AspNetCore.Components.RenderTree
+#endif
{
///
/// Types in the Microsoft.AspNetCore.Components.RenderTree are not recommended for use outside
diff --git a/src/Components/Components/src/RenderTree/RenderTreeEdit.cs b/src/Components/Components/src/RenderTree/RenderTreeEdit.cs
index 68437a7471..93b1dd9da6 100644
--- a/src/Components/Components/src/RenderTree/RenderTreeEdit.cs
+++ b/src/Components/Components/src/RenderTree/RenderTreeEdit.cs
@@ -3,7 +3,11 @@
using System.Runtime.InteropServices;
+#if IGNITOR
+namespace Ignitor
+#else
namespace Microsoft.AspNetCore.Components.RenderTree
+#endif
{
///
/// Types in the Microsoft.AspNetCore.Components.RenderTree are not recommended for use outside
diff --git a/src/Components/Components/src/RenderTree/RenderTreeEditType.cs b/src/Components/Components/src/RenderTree/RenderTreeEditType.cs
index f508760135..f3d48172fb 100644
--- a/src/Components/Components/src/RenderTree/RenderTreeEditType.cs
+++ b/src/Components/Components/src/RenderTree/RenderTreeEditType.cs
@@ -1,7 +1,11 @@
// 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.
+#if IGNITOR
+namespace Ignitor
+#else
namespace Microsoft.AspNetCore.Components.RenderTree
+#endif
{
///
/// Types in the Microsoft.AspNetCore.Components.RenderTree are not recommended for use outside
diff --git a/src/Components/Components/src/RenderTree/RenderTreeFrame.cs b/src/Components/Components/src/RenderTree/RenderTreeFrame.cs
index 39dd7de74a..c9a358c698 100644
--- a/src/Components/Components/src/RenderTree/RenderTreeFrame.cs
+++ b/src/Components/Components/src/RenderTree/RenderTreeFrame.cs
@@ -3,9 +3,15 @@
using System;
using System.Runtime.InteropServices;
+#if !IGNITOR
using Microsoft.AspNetCore.Components.Rendering;
+#endif
+#if IGNITOR
+namespace Ignitor
+#else
namespace Microsoft.AspNetCore.Components.RenderTree
+#endif
{
///
/// Types in the Microsoft.AspNetCore.Components.RenderTree are not recommended for use outside
diff --git a/src/Components/Components/src/RenderTree/RenderTreeFrameType.cs b/src/Components/Components/src/RenderTree/RenderTreeFrameType.cs
index 339a7b6795..e73119e038 100644
--- a/src/Components/Components/src/RenderTree/RenderTreeFrameType.cs
+++ b/src/Components/Components/src/RenderTree/RenderTreeFrameType.cs
@@ -1,7 +1,11 @@
// 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.
+#if IGNITOR
+namespace Ignitor
+#else
namespace Microsoft.AspNetCore.Components.RenderTree
+#endif
{
///
/// Types in the Microsoft.AspNetCore.Components.RenderTree are not recommended for use outside
diff --git a/src/Components/ComponentsNoDeps.slnf b/src/Components/ComponentsNoDeps.slnf
index f41ac99b30..7502dc1eaf 100644
--- a/src/Components/ComponentsNoDeps.slnf
+++ b/src/Components/ComponentsNoDeps.slnf
@@ -36,8 +36,8 @@
"test\\testassets\\ComponentsApp.Server\\ComponentsApp.Server.csproj",
"test\\testassets\\TestContentPackage\\TestContentPackage.csproj",
"test\\testassets\\TestServer\\Components.TestServer.csproj",
- "test\\testassets\\Ignitor\\Ignitor.csproj",
- "test\\Ignitor.Test\\Ignitor.Test.csproj"
+ "Ignitor\\src\\Ignitor.csproj",
+ "Ignitor\\test\\Ignitor.Test.csproj"
]
}
}
\ No newline at end of file
diff --git a/src/Components/test/testassets/Ignitor/BlazorClient.cs b/src/Components/Ignitor/src/BlazorClient.cs
similarity index 94%
rename from src/Components/test/testassets/Ignitor/BlazorClient.cs
rename to src/Components/Ignitor/src/BlazorClient.cs
index 3f96604574..861e2ad0f2 100644
--- a/src/Components/test/testassets/Ignitor/BlazorClient.cs
+++ b/src/Components/Ignitor/src/BlazorClient.cs
@@ -16,7 +16,7 @@ using Microsoft.Extensions.Logging;
namespace Ignitor
{
- public class BlazorClient
+ public class BlazorClient : IAsyncDisposable
{
private const string MarkerPattern = ".*?.*?";
@@ -54,6 +54,8 @@ namespace Ignitor
private TaskCompletionSource