Ryan Nowak
601e7914f7
Implement components as tag helpers
...
Implements Component code generation and tooling support end to end
udditionally adds some default `@addTagHelper` directives to make
programming in Blazor a little nicer.
Components are discovered as Tag Helpers using Razor's extensibility
during the build/IDE process. This drives the code generation during
build and lights up a bunch of editor features.
Add
2018-03-14 11:23:41 +00:00
Ryan Nowak
adf4674955
Fix clean builds
...
This got out of date with my other changes
2018-03-14 11:23:40 +00:00
Ryan Nowak
211561a6a6
Implement 2-phase compilation
...
This is a working (all tests passing) implementation of the two-phase
compilation system we will need for component discovery.
This builds on top of work we've doing in Razor, including the Razor
SDK, MSBuild tasks, and CLI/server.
This currently *does* discovery components during the build process, but
it doesn't use that data for anything yet.
It works like this:
1. Generate class declarations (structure only, no method bodies)
2. Compile a 'temp' assembly using the .cs files and output of 1.
3. Do component discovery using the 'temp' assembly
4. Generate class definitions (including method bodies)
5. Compile the 'real' assembly using the .cs files and output of 4.
2018-03-14 11:23:40 +00:00
Ryan Nowak
6182e8448d
Get rid of RazorCompiler
...
Adds a little more use of Razor extensibility.
Razor is a plugin model, so we can't be the 'first mover' for initiating
compilation in the build tools and IDE.
Reorganizes tests and fills out more reusable test infrastructure for
Razor-driven testing.
Adds tests for declaration-only configuration.
2018-03-14 11:23:40 +00:00
Ryan Nowak
57a04fb178
Adopt more of Razor Exensibility
...
Removes some workarounds and uses Razor extensibility in a few more
places.
_ViewImports now works in VS
2018-03-14 11:23:40 +00:00
Steve Sanderson
9a17a343cc
Ensure Microsoft.AspNetCore.Blazor.Build is packed in a post-publish form so it's cross-plat compatible
2018-02-27 20:22:19 +00:00
Steve Sanderson
2fc2a23d41
Include *.html in UpToDateCheckInput
2018-02-27 14:28:20 +00:00
Steve Sanderson
3e5381c17e
Rename .DevHost project to .Cli, and make it work as a DotNetCliTool
2018-02-27 12:17:35 +00:00
Steve Sanderson
9d21eda9c4
Include "serve" command in dotnet-blazor tool
2018-02-26 17:37:00 +00:00
Steve Sanderson
c255e77ab5
Remove redundant entry in NuSpec file
2018-02-26 17:05:45 +00:00
Steve Sanderson
44a2603720
Have the Build package include all its own dependencies (otherwise the DotNetCliTool won't work)
2018-02-26 16:34:57 +00:00
Steve Sanderson
2f9515785e
Fixes for Microsoft.AspNetCore.Blazor.Build package layout
2018-02-26 16:22:06 +00:00
Ryan Nowak
dfe576f4fa
Add new Razor bits
...
- Adds the aspnetcore-dev feed as a package source
- Updates Razor to a relatively new build
- Fixes a few issues encountered with new bits
2018-02-22 08:48:32 -08:00
Steve Sanderson
0665d30e19
In RazorCompiler, reject malformed documents with mismatching tags
2018-02-22 11:07:03 +00:00
Steve Sanderson
58af3e1638
Allow blazor-boot script to be served from apps not hosted at domain root
2018-02-21 10:22:03 +00:00
Steve Sanderson
608da4c78b
Specifying entrypoint: Add tests and other stylistic tweaks
2018-02-19 14:22:03 +00:00
Eugene Bekker
1653e56b98
Adding ability to qualify the entry point of the main assembly
2018-02-19 14:11:25 +00:00
Steve Sanderson
f649de2976
Support _ViewImports.cshtml files hierarchically
2018-02-18 23:57:20 +00:00
Steve Sanderson
69498f68f9
Add LayoutDisplay component and use it in StandaloneApp
2018-02-16 15:04:57 +00:00
Steve Sanderson
b529f2b913
Avoid confusion with client apps not rebuilding after changing Blazor library code
2018-02-15 16:45:30 +00:00
Steve Sanderson
af0085f550
Add *.cshtml for UpToDateCheckInput for VS
2018-02-15 16:14:48 +00:00
Steve Sanderson
dcbd7a27eb
Workaround file locked issue during build
2018-02-15 15:59:00 +00:00
Steve Sanderson
2ebfddc237
Switch client apps to netstandard2.0 to fix type load errors
...
Do a "git clean -xdf" on your local copy if you get runtime errors after
updating to this.
2018-02-15 10:20:31 +00:00
Ryan Nowak
043e623d5b
Split Razor extensibility into its own assembly
...
This functionality will need to cross-compile to desktop framework
(net461) so that we can use it in VS. VS doesn't yet have netstandard2.0
support.
2018-02-14 14:08:14 -08:00
Steve Sanderson
0eb0555303
Eliminate IComponent.BuildRenderTree to guarantee that components are only rendered by themselves
2018-02-13 19:47:37 +00:00
Steve Sanderson
d98a6153f7
In RazorCompiler, have BuildRenderTree overrides call base implementation
2018-02-13 15:53:59 +00:00
Steve Sanderson
7bb4bbbe5c
In IndexHtmlFileProvider, preserve original source formatting
2018-02-12 23:05:47 +00:00
Eugene Bekker
b38718d77f
Require <script type="blazor-boot"> to define script injection location
2018-02-12 21:49:27 +00:00
Steve Sanderson
5a9c41af0e
Make AngleSharp not strong-named. Change assembly name to Microsoft.AspNetCore.Blazor.AngleSharp to ensure no conflicts with other usages.
2018-02-09 17:37:21 +00:00
Mark Gaze
5a4bc2e6d6
Added quotes to paths in build that cause the build to fail when directory has a space in the path #44
2018-02-07 16:30:26 +00:00
Brian Allred
5da3c172b5
Make build target path platform agnostic
2018-02-07 10:27:33 +00:00
Steve Sanderson
93f17219ea
Rename OpenComponentElement -> OpenComponent for consistency
2018-02-05 00:19:44 +00:00
Steve Sanderson
1fda744770
Make RenderTreeFrame properly readonly to allow more pass-by-ref cases
2018-02-05 00:16:08 +00:00
Steve Sanderson
f1332919bc
Rename RenderTreeNode -> RenderTreeFrame (and correspondingly, "node" ->
...
"frame" everywhere)
2018-02-04 22:21:29 +00:00
Steve Sanderson
1c9c74c801
In RazorCompiler, fix bug about attribute nodes having wrong sequence
...
numbers. Make tests explicit about sequence numbers.
2018-01-31 10:23:56 +00:00
Steve Sanderson
cc053ddbbf
Better validation of C# class names in RazorCompiler
2018-01-31 10:23:49 +00:00
Steve Sanderson
0aa164073d
Rename Microsoft.Blazor.* -> Microsoft.AspNetCore.Blazor.* everywhere
2018-01-24 15:48:38 -08:00