Commit Graph

303 Commits

Author SHA1 Message Date
Steve Sanderson 314b5c339c Add public JSON APIs to Microsoft.AspNetCore.Blazor. Swap implementation from MiniJSON to SimpleJson
MiniJSON is very small but doesn't deal with strongly-typed
deserialization by default (we can add it, but that's less
battle-tested). Also it has to allocate extra IDictionary versions of
everything before we map it to specific .NET types.

Also tried LitJSON, but has some correctness issues, e.g.,
https://github.com/LitJSON/litjson/issues/43

Also tried Json.NET but it's > 600KB
2018-02-26 11:35:27 +00:00
Steve Sanderson 69c39937b3 Update StandaloneApp's Program.cs to make it more obvious how to configure DI services 2018-02-26 10:15:42 +00:00
Steve Sanderson c0bf73234c Tweak (to force rebuild, since Travis just tried to build a branch that was already deleted) 2018-02-23 22:42:10 +00:00
Steve Sanderson 8590f6e7a5 Remainder of initial HttpClient features plus E2E tests 2018-02-23 22:31:26 +00:00
Steve Sanderson ea3a18af25 Add basic support for onchange 2018-02-23 14:02:55 +00:00
Steve Sanderson 88cc2caf45 Infrastructure for E2E tests where the app makes requests to an API server 2018-02-23 13:28:58 +00:00
Steve Sanderson ea6b6bcd19 Add an example API server project that can be used in E2E tests 2018-02-23 13:07:49 +00:00
Steve Sanderson 423ad85a04 Implement OnInit/OnInitAsync and use it in sample HTTP request 2018-02-23 12:47:02 +00:00
Steve Sanderson 891f2a14d0 Basic implementation of temporary HttpClient. Currently only supports GET requests and doesn't return HTTP headers. 2018-02-23 12:29:53 +00:00
Steve Sanderson 8e57261167 In BrowserUriHelper, change URI caching logic to be more defensive in case OnLocationChanged isn't being used 2018-02-23 11:05:29 +00:00
Steve Sanderson f684203721 Rename DefaultBrowserServiceProvider->BrowserServiceProvider for consistency 2018-02-23 10:50:35 +00:00
Steve Sanderson 0bb32ad628 Move BrowserRouter -> Router in Microsoft.AspNetCore.Blazor now it has no browser-specific aspects 2018-02-23 10:49:03 +00:00
Steve Sanderson eab10dcf83 Move NavLink component into Microsoft.AspNetCore.Blazor 2018-02-23 10:43:16 +00:00
Steve Sanderson bbe00753f4 Workaround AppVeyor failing to install Chrome 2018-02-23 10:38:52 +00:00
Steve Sanderson 82bcf9172a Convert the static UriHelper into a service, IUriHelper, and inject where needed 2018-02-23 10:35:28 +00:00
Steve Sanderson 68f6ede3a7 Simplify UriHelper by making EnableNavigationInteception automatic 2018-02-23 09:59:56 +00:00
Steve Sanderson e1aab02228 Add name/description values for InjectDirective 2018-02-23 09:32:26 +00:00
Steve Sanderson 8ff4cee323 Make ComponentFactory thread-safe 2018-02-23 09:32:26 +00:00
Steve Sanderson c408045e31 In RazorCompiler, support @inject directive 2018-02-23 09:32:26 +00:00
Steve Sanderson 3f9d358004 Make ComponentFactory throw if you try to use [Inject] with a property that has no setter (otherwise it could be confusing) 2018-02-23 09:32:26 +00:00
Steve Sanderson b4a3c852c5 Implement DefaultBrowserServiceProvider using Microsoft.Extensions.DependencyInjection.ServiceCollection 2018-02-23 09:32:26 +00:00
Steve Sanderson e524994734 Make ComponentFactory do all the reflection up-front and cache the resulting delegates 2018-02-23 09:32:26 +00:00
Steve Sanderson ceacd489aa Simplistic implementation of property injection 2018-02-23 09:32:26 +00:00
Steve Sanderson ce10e6fa19 In preparation for DI, give every Renderer an IServiceProvider 2018-02-23 09:32:26 +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 f4e0d663fa Tiny simplification to NavLink 2018-02-22 15:03:49 +00:00
Steve Sanderson d388cb6510 Add E2E test covering nav menu and NavLink usage in StandaloneApp 2018-02-22 15:03:49 +00:00
Steve Sanderson b705ac2c0a Switch to slightly higher-level implementation of NavLink (sacrificing some perf for better representation of current idioms) 2018-02-22 15:03:49 +00:00
Steve Sanderson 58ae5dea9a Additional methods on ParameterCollection to simplify usage 2018-02-22 15:03:49 +00:00
Steve Sanderson 3e30655ea4 Low-level NavLink implementation 2018-02-22 15:03:49 +00:00
Steve Sanderson 25b76bc6dc Skip rerendering child components if their params are definitely unchanged 2018-02-22 13:23:52 +00:00
Steve Sanderson 08d7b77d38 Avoid component syntax confusion by making it a compile-time error. Fixes #145 2018-02-22 11:07:03 +00:00
Steve Sanderson 1a31634b70 Capture component child content as a RenderFragment parameter. 2018-02-22 11:07:03 +00:00
Steve Sanderson bd455453d6 Report line/column when reporting mismatching tags 2018-02-22 11:07:03 +00:00
Steve Sanderson 0665d30e19 In RazorCompiler, reject malformed documents with mismatching tags 2018-02-22 11:07:03 +00:00
Steve Sanderson 95023c0300 In RazorCompiler, support components with children 2018-02-22 11:07:03 +00:00
Steve Sanderson d67bf63864 Update to SpaServices.Extensions 2.0.0 2018-02-22 11:07:03 +00:00
Steve Sanderson 6f25663a32 In UriHelper, cache current absolute URL 2018-02-21 10:22:03 +00:00
Steve Sanderson b764029ce0 Fix comment 2018-02-21 10:22:03 +00:00
Steve Sanderson fc9cb1af65 Add E2E tests for BrowserRouter, plus implement querystring/hash support 2018-02-21 10:22:03 +00:00
Steve Sanderson 8bc7c92683 Support hosting at non-root URL. Prove it by updating BasicTestApp to serve from non-root location. 2018-02-21 10:22:03 +00:00
Steve Sanderson 7073429cd5 Clean up and include routing unit tests 2018-02-21 10:22:03 +00:00
Steve Sanderson 87fc15cc23 Add test to demonstrate current component attribute parsing inconsistencies 2018-02-21 10:22:03 +00:00
Steve Sanderson 78a19c07e9 In RazorCompiler, allow HTML comments 2018-02-21 10:22:03 +00:00
Steve Sanderson fd5875c5e7 Replace "About" with "Counter". Move navigation links into NavMenu. Doesn't highlight active page yet though. 2018-02-21 10:22:03 +00:00
Steve Sanderson 7370d748c6 Initial, minimal BrowserRouter implementation. No config besides subclassing yet. 2018-02-21 10:22:03 +00:00
Steve Sanderson 0b5294a8f5 Enable SPA fallback routing on server 2018-02-21 10:22: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 796d915526 Make spelling one step closer to correctness 2018-02-20 09:47:19 +00:00
Eugene Bekker ea2019ac39 Update a reference to the new API style 2018-02-20 09:40:09 +00:00