-
-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
43 changed files
with
1,063 additions
and
109 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
<?xml version="1.0" encoding="utf-8"?> | ||
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui" | ||
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" | ||
xmlns:local="clr-namespace:Sample.Components" | ||
x:Class="Sample.BlazorPage" | ||
Title="Blazor"> | ||
<ContentPage.Content> | ||
<BlazorWebView x:Name="blazorWebView" | ||
HostPage="wwwroot/index.html"> | ||
<BlazorWebView.RootComponents> | ||
<RootComponent Selector="#app" | ||
ComponentType="{x:Type local:Routes}" /> | ||
</BlazorWebView.RootComponents> | ||
</BlazorWebView> | ||
</ContentPage.Content> | ||
</ContentPage> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
namespace Sample; | ||
|
||
public partial class BlazorPage : ContentPage | ||
{ | ||
public BlazorPage() | ||
{ | ||
this.InitializeComponent(); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
namespace Sample; | ||
|
||
public class BlazorViewModel : ViewModel | ||
{ | ||
public BlazorViewModel(BaseServices services) : base(services) | ||
{ | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
@inherits LayoutComponentBase | ||
|
||
<div class="page"> | ||
<div class="sidebar"> | ||
<NavMenu /> | ||
</div> | ||
|
||
<main> | ||
<div class="top-row px-4"> | ||
<a href="https://learn.microsoft.com/aspnet/core/" target="_blank">About</a> | ||
</div> | ||
|
||
<article class="content px-4"> | ||
@Body | ||
</article> | ||
</main> | ||
</div> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,77 @@ | ||
.page { | ||
position: relative; | ||
display: flex; | ||
flex-direction: column; | ||
} | ||
|
||
main { | ||
flex: 1; | ||
} | ||
|
||
.sidebar { | ||
background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%); | ||
} | ||
|
||
.top-row { | ||
background-color: #f7f7f7; | ||
border-bottom: 1px solid #d6d5d5; | ||
justify-content: flex-end; | ||
height: 3.5rem; | ||
display: flex; | ||
align-items: center; | ||
} | ||
|
||
.top-row ::deep a, .top-row ::deep .btn-link { | ||
white-space: nowrap; | ||
margin-left: 1.5rem; | ||
text-decoration: none; | ||
} | ||
|
||
.top-row ::deep a:hover, .top-row ::deep .btn-link:hover { | ||
text-decoration: underline; | ||
} | ||
|
||
.top-row ::deep a:first-child { | ||
overflow: hidden; | ||
text-overflow: ellipsis; | ||
} | ||
|
||
@media (max-width: 640.98px) { | ||
.top-row { | ||
justify-content: space-between; | ||
} | ||
|
||
.top-row ::deep a, .top-row ::deep .btn-link { | ||
margin-left: 0; | ||
} | ||
} | ||
|
||
@media (min-width: 641px) { | ||
.page { | ||
flex-direction: row; | ||
} | ||
|
||
.sidebar { | ||
width: 250px; | ||
height: 100vh; | ||
position: sticky; | ||
top: 0; | ||
} | ||
|
||
.top-row { | ||
position: sticky; | ||
top: 0; | ||
z-index: 1; | ||
} | ||
|
||
.top-row.auth ::deep a:first-child { | ||
flex: 1; | ||
text-align: right; | ||
width: 0; | ||
} | ||
|
||
.top-row, article { | ||
padding-left: 2rem !important; | ||
padding-right: 1.5rem !important; | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
<div class="top-row ps-3 navbar navbar-dark"> | ||
<div class="container-fluid"> | ||
<a class="navbar-brand" href="">MauiApp1</a> | ||
</div> | ||
</div> | ||
|
||
<input type="checkbox" title="Navigation menu" class="navbar-toggler" /> | ||
|
||
<div class="nav-scrollable" onclick="document.querySelector('.navbar-toggler').click()"> | ||
<nav class="flex-column"> | ||
<div class="nav-item px-3"> | ||
<NavLink class="nav-link" href="" Match="NavLinkMatch.All"> | ||
<span class="bi bi-house-door-fill-nav-menu" aria-hidden="true"></span> Home | ||
</NavLink> | ||
</div> | ||
</nav> | ||
</div> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,101 @@ | ||
.navbar-toggler { | ||
appearance: none; | ||
cursor: pointer; | ||
width: 3.5rem; | ||
height: 2.5rem; | ||
color: white; | ||
position: absolute; | ||
top: 0.5rem; | ||
right: 1rem; | ||
border: 1px solid rgba(255, 255, 255, 0.1); | ||
background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center/1.75rem rgba(255, 255, 255, 0.1); | ||
} | ||
|
||
.navbar-toggler:checked { | ||
background-color: rgba(255, 255, 255, 0.5); | ||
} | ||
|
||
.top-row { | ||
height: 3.5rem; | ||
background-color: rgba(0,0,0,0.4); | ||
} | ||
|
||
.navbar-brand { | ||
font-size: 1.1rem; | ||
} | ||
|
||
.bi { | ||
display: inline-block; | ||
position: relative; | ||
width: 1.25rem; | ||
height: 1.25rem; | ||
margin-right: 0.75rem; | ||
top: -1px; | ||
background-size: cover; | ||
} | ||
|
||
.bi-house-door-fill-nav-menu { | ||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-house-door-fill' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5Z'/%3E%3C/svg%3E"); | ||
} | ||
|
||
.bi-plus-square-fill-nav-menu { | ||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-plus-square-fill' viewBox='0 0 16 16'%3E%3Cpath d='M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm6.5 4.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3a.5.5 0 0 1 1 0z'/%3E%3C/svg%3E"); | ||
} | ||
|
||
.bi-list-nested-nav-menu { | ||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-list-nested' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M4.5 11.5A.5.5 0 0 1 5 11h10a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 3 7h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 1 3h10a.5.5 0 0 1 0 1H1a.5.5 0 0 1-.5-.5z'/%3E%3C/svg%3E"); | ||
} | ||
|
||
.nav-item { | ||
font-size: 0.9rem; | ||
padding-bottom: 0.5rem; | ||
} | ||
|
||
.nav-item:first-of-type { | ||
padding-top: 1rem; | ||
} | ||
|
||
.nav-item:last-of-type { | ||
padding-bottom: 1rem; | ||
} | ||
|
||
.nav-item ::deep a { | ||
color: #d7d7d7; | ||
border-radius: 4px; | ||
height: 3rem; | ||
display: flex; | ||
align-items: center; | ||
line-height: 3rem; | ||
} | ||
|
||
.nav-item ::deep a.active { | ||
background-color: rgba(255,255,255,0.37); | ||
color: white; | ||
} | ||
|
||
.nav-item ::deep a:hover { | ||
background-color: rgba(255,255,255,0.1); | ||
color: white; | ||
} | ||
|
||
.nav-scrollable { | ||
display: none; | ||
} | ||
|
||
.navbar-toggler:checked ~ .nav-scrollable { | ||
display: block; | ||
} | ||
|
||
@media (min-width: 641px) { | ||
.navbar-toggler { | ||
display: none; | ||
} | ||
|
||
.nav-scrollable { | ||
/* Never collapse the sidebar for wide screens */ | ||
display: block; | ||
/* Allow sidebar to scroll for tall menus */ | ||
height: calc(100vh - 3.5rem); | ||
overflow-y: auto; | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
@page "/" | ||
@inject AppSqliteConnection conn | ||
@implements IEventHandler<MyMessageEvent> | ||
|
||
|
||
<h1>Hello, world!</h1> | ||
|
||
Welcome to your new app. | ||
|
||
@code { | ||
// TODO: should nav to another page to test that this disconnects | ||
public async Task Handle(MyMessageEvent @event, CancellationToken cancellationToken) | ||
{ | ||
await conn.Log("BlazorPage-Home.razor", @event); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
<Router AppAssembly="@typeof(MauiProgram).Assembly"> | ||
<Found Context="routeData"> | ||
<RouteView RouteData="@routeData" DefaultLayout="@typeof(Layout.MainLayout)" /> | ||
<FocusOnNavigate RouteData="@routeData" Selector="h1" /> | ||
</Found> | ||
</Router> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
@using System.Net.Http | ||
@using System.Net.Http.Json | ||
@using Microsoft.AspNetCore.Components.Forms | ||
@using Microsoft.AspNetCore.Components.Routing | ||
@using Microsoft.AspNetCore.Components.Web | ||
@using Microsoft.AspNetCore.Components.Web.Virtualization | ||
@using Microsoft.JSInterop | ||
@using Sample | ||
@using Sample.Components | ||
@using Sample.Services |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,67 @@ | ||
<?xml version="1.0" encoding="utf-8"?> | ||
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui" | ||
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" | ||
xmlns:sample="clr-namespace:Sample" | ||
x:DataType="sample:EventViewModel" | ||
x:Class="Sample.EventPage" | ||
Title="Events"> | ||
|
||
<ContentPage.ToolbarItems> | ||
<ToolbarItem Text="Clear" | ||
Command="{Binding Clear}" /> | ||
</ContentPage.ToolbarItems> | ||
|
||
<ContentPage.Content> | ||
<RefreshView IsRefreshing="{Binding IsBusy}" | ||
Command="{Binding Load}"> | ||
<CollectionView ItemsSource="{Binding List}"> | ||
<CollectionView.EmptyView> | ||
<Label Text="No Records Found" | ||
FontSize="Title" | ||
HorizontalOptions="Fill" | ||
HorizontalTextAlignment="Center" | ||
VerticalOptions="Fill" | ||
VerticalTextAlignment="Center" /> | ||
</CollectionView.EmptyView> | ||
|
||
<CollectionView.ItemTemplate> | ||
<DataTemplate x:DataType="sample:EventItemViewModel"> | ||
<Grid ColumnDefinitions="Auto, Auto" | ||
RowDefinitions="Auto, Auto, Auto" | ||
Padding="5" | ||
Margin="5"> | ||
|
||
<Label Text="{Binding Area}" | ||
Grid.Row="0" | ||
Grid.Column="0" /> | ||
|
||
<Label Text="{Binding Timestamp}" | ||
Grid.Row="0" | ||
Grid.Column="1" /> | ||
|
||
<Label Grid.Row="1" | ||
Grid.ColumnSpan="2"> | ||
<Label.FormattedText> | ||
<FormattedString> | ||
<Span Text="{Binding Arg, StringFormat='Arg: {0}'}" /> | ||
<Span Text=" - " /> | ||
<Span Text="{Binding FireAndForget, StringFormat='Fire and Forget: {0}'}" /> | ||
<Span Text=" - " /> | ||
<Span Text="{Binding ParallelEvents, StringFormat='Parallel Events: {0}'}" /> | ||
</FormattedString> | ||
</Label.FormattedText> | ||
</Label> | ||
|
||
<BoxView BackgroundColor="Black" | ||
Height="1" | ||
HorizontalOptions="Fill" | ||
VerticalOptions="Center" | ||
Grid.Row="2" | ||
Grid.ColumnSpan="2" /> | ||
</Grid> | ||
</DataTemplate> | ||
</CollectionView.ItemTemplate> | ||
</CollectionView> | ||
</RefreshView> | ||
</ContentPage.Content> | ||
</ContentPage> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
using System; | ||
using System.Collections.Generic; | ||
using System.Linq; | ||
using System.Text; | ||
using System.Threading.Tasks; | ||
|
||
namespace Sample; | ||
|
||
public partial class EventPage : ContentPage | ||
{ | ||
public EventPage() | ||
{ | ||
InitializeComponent(); | ||
} | ||
} |
Oops, something went wrong.