* Stop referencing BlazorBuildToolsExe in .Browser.JS
* Have Components projects always reference .Blazor.Mono as a package, not from source
* Finish decoupling of .Browser.JS from Blazor.BuildTools
* Fix reference resolver unit test to find Mono BCL in .Blazor.Mono package
* Remove typo
* Have .Browser.JS consume jsinterop only via an NPM package reference
* Reference JSInterop .NET libraries only via NuGet package references, not directly from source
* Update dependency resolver unit test
* Update package name in package-lock.json
* When bundling jsinterop DLL into Build package, don't re-sign it (treat it as external)
* Rename "mono" project to Microsoft.AspNetCore.Blazor.Mono
* Include binary content in Microsoft.AspNetCore.Blazor.Mono
* Reference Mono binaries in Blazor.Mono project instead of Components.Build
* Rename Microsoft.AspNetCore.Blazor dir to .Components
* Rename Microsoft.AspNetCore.Blazor.Browser dir to .Components.Browser
* Rename Microsoft.AspNetCore.Blazor.Browser.JS dir to .Components.Browser.JS
* Rename Microsoft.AspNetCore.Blazor.TagHelperWorkaround dir to .Components.TagHelperWorkaround
* Unbreak signing
* Rename Microsoft.AspNetCore.Blazor.Analyzers dir to .Components.Analyzers
* Rename Microsoft.AspNetCore.Blazor.Server dir to .Components.Server
* Rename Microsoft.AspNetCore.Blazor.Razor.Extensions dir to .Components.Razor.Extensions
* Rename Microsoft.AspNetCore.Blazor.Build dir to .Components.Build
* Rename Microsoft.AspNetCore.Blazor.Test dir to .Components.test
* Rename Microsoft.AspNetCore.Blazor.Server.Test dir to .Components.Server.Test
* Rename Microsoft.AspNetCore.Blazor.Razor.Extensions.Test dir to .Components.Razor.Extensions.Test
* Rename Microsoft.AspNetCore.Blazor.Analyzers.Test dir to .Components.Analyzers.Test
* Rename Microsoft.AspNetCore.Blazor.Browser.Test dir to .Components.Browser.Test
* Rename Microsoft.AspNetCore.Blazor.Build.Test dir to .Components.Build.Test
* Rename Microsoft.AspNetCore.Blazor.E2ETest dir to .Components.E2ETest
* Fix typo
* Unbreak VSIX build
* Fix .Build unit tests
* Move Blazor benchmarks into blazor subdir
* Rename .Blazor.Performance dir to .Components.Performance
* Move some samples within .sln
* Move StandaloneApp sample to blazor subdir
* Move MonoSanity sample to blazor subdir
* Move HostedInAspNet sample to blazor subdir
* Update paths to samples
* Move .BuildTools and .Cli sources to blazor subdir
* Move tooling to blazor subdir
* Move templates to blazor subdir
* Restore Directory.Build.props behaviors in blazor\src
* Move mono to blazor subdir
* Update folder structure in .sln
* Fix VSIX
* Empty commit to reawaken CI
* Fix manual standalone app startup
* Marshal oninput events as UIChangeEventArgs
- Blazor does handle the oninput event, but it is marshalled as a regular UIEventArgs
- This means that we cannot access the new value of the input element from inside our oninput handler
Addresses #821
There are legitimate use cases for referencing BCL assemblies that *aren't* in the Mono WebAssembly BCL, particularly for Blazor-on-the-server which runs on CoreCLR (and hence supports a broader BCL) anyway.
* Add Provider component
* Implement discovery and matching rules for tree parameters
* Remove artificial component hierarchy unit tests now they are redundant
* Refactor: Have RenderTreeFrame point to the ComponentState instead of IComponent
... so we can more quickly find associated tree param state without having to do lookups based on the componentId.
Also rename AssignComponentId to AttachAndInitComponent to be more descriptive.
* Refactor: Add shared code path for updating parameters so there's only one place to attach tree parameters
Now framework code should no longer call IComponent.SetParameters directly, except if it knows it's definitely dealing with a root component.
* Refactor: Simplify Parameter by making it hold the name/value directly
This will be necessary for tree parameters, which don't correspond to any RenderTreeFrame
* Refactor: Wrap ParameterEnumerator logic in extra level of iterator so we can also add one for iterating tree params
* Extend ParameterEnumerator to list tree parameters too
* Include tree parameters in SetParameters calls
* Refactor: Move parameter change detection logic into separate utility class
... so we include https://github.com/dotnet/jsinterop/pull/3
* Refactor: Move tree parameter tests from RendererTest.cs their own file
* Have Provider re-render consumers when value changes. Unit tests in next
commit.
* Components that accept tree parameters need to snapshot their direct params for later replay
* Empty commit to reawaken CI
* CR: Make name matching case-insensitive
* Refactor: Rename Provider/TreeParameter to
CascadingValue/CascadingParameter
* Add dedicated [CascadingParameter] attribute. Remove FromTree flag.
* CR: CascadingParameterState cleanups
* CR: Extra unit test
* CR: arguments/parameters
* CR: Enumerator improvements
* Fix test
* remove sources.props and use NuGet.config. Source.props is only necessary for products that bulid in ProdCon, which Blazor does not
* Remove code signing glue code. This is part of KoreBuild now
* Update SDK to 2.1.400
* Update certificate names used for code-signing to use SHA2