diff --git a/sample/DemoAPI/Program.cs b/sample/DemoAPI/Program.cs
index b2c364c..59c4da9 100644
--- a/sample/DemoAPI/Program.cs
+++ b/sample/DemoAPI/Program.cs
@@ -1,7 +1,8 @@
+using System.Diagnostics;
using AvantiPoint.MobileAuth;
-using AvantiPoint.MobileAuth.Authentication;
using DemoAPI.Data;
using Microsoft.EntityFrameworkCore;
+using Microsoft.OpenApi.Models;
var builder = WebApplication.CreateBuilder(args);
@@ -18,7 +19,23 @@
// Add services to the container.
// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
builder.Services.AddEndpointsApiExplorer();
-builder.Services.AddSwaggerGen();
+var versionInfo = FileVersionInfo.GetVersionInfo(typeof(MobileAuth).Assembly.Location);
+var version = $"{versionInfo.FileMajorPart}.{versionInfo.ProductMinorPart}.{versionInfo.ProductBuildPart}";
+builder.Services.AddSwaggerGen(c =>
+{
+ c.SwaggerDoc($"v1", new OpenApiInfo
+ {
+ Title = "Mobile Auth - Demo",
+ Contact = new OpenApiContact
+ {
+ Name = "AvantiPoint",
+ Email = "hello@avantipoint.com",
+ Url = new Uri("https://avantipoint.com")
+ },
+ Description = "This is a demo api for the AvantiPoint Mobile Auth library. Do not use this API for production. For more information please visit https://github.com/avantipoint/mobileauth-lib",
+ Version = version
+ });
+});
var app = builder.Build();
@@ -26,7 +43,10 @@
app.UseHttpsRedirection();
app.UseSwagger();
-app.UseSwaggerUI();
+app.UseSwaggerUI(o =>
+{
+ o.InjectStylesheet("https://cdn.avantipoint.com/theme/swagger/style.css");
+});
app.UseAuthentication();
app.UseAuthorization();
diff --git a/sample/DemoMobileApp/DemoMobileApp.csproj b/sample/DemoMobileApp/DemoMobileApp.csproj
index 0246ebd..bcbf8c5 100644
--- a/sample/DemoMobileApp/DemoMobileApp.csproj
+++ b/sample/DemoMobileApp/DemoMobileApp.csproj
@@ -50,6 +50,7 @@
+
diff --git a/sample/DemoMobileApp/MainPage.xaml b/sample/DemoMobileApp/MainPage.xaml
index 1de6454..3252d94 100644
--- a/sample/DemoMobileApp/MainPage.xaml
+++ b/sample/DemoMobileApp/MainPage.xaml
@@ -3,6 +3,7 @@
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:vm="clr-namespace:DemoMobileApp.ViewModels"
xmlns:converter="clr-namespace:DemoMobileApp.Converters"
+ xmlns:toolkit="http://schemas.microsoft.com/dotnet/2022/maui/toolkit"
x:DataType="vm:MainPageViewModel"
x:Class="DemoMobileApp.MainPage">
@@ -35,10 +36,14 @@
-
+ Margin="0,15,0,20">
+
+
+
+
diff --git a/sample/DemoMobileApp/MauiProgram.cs b/sample/DemoMobileApp/MauiProgram.cs
index 1f22cf7..d2ac26a 100644
--- a/sample/DemoMobileApp/MauiProgram.cs
+++ b/sample/DemoMobileApp/MauiProgram.cs
@@ -1,3 +1,4 @@
+using CommunityToolkit.Maui;
using DemoMobileApp.Services;
using DemoMobileApp.ViewModels;
using Refit;
@@ -19,6 +20,7 @@ public static MauiApp CreateMauiApp()
.UseMauiMicroMvvm(
"Resources/Styles/Colors.xaml",
"Resources/Styles/Styles.xaml")
+ .UseMauiCommunityToolkit()
.ConfigureFonts(fonts =>
{
fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular");
diff --git a/sample/DemoMobileApp/ViewModels/MainPageViewModel.cs b/sample/DemoMobileApp/ViewModels/MainPageViewModel.cs
index 5e4b11a..11e1bea 100644
--- a/sample/DemoMobileApp/ViewModels/MainPageViewModel.cs
+++ b/sample/DemoMobileApp/ViewModels/MainPageViewModel.cs
@@ -23,6 +23,12 @@ public MainPageViewModel(ViewModelContext context, ISecureStorage storage, IWebA
public ObservableCollection Claims { get; }
+ public string Email
+ {
+ get => Get();
+ set => Set(value);
+ }
+
public Command LoginCommand { get; }
private async void OnLoginCommandExecuted(string scheme)
@@ -44,6 +50,9 @@ private async void OnLoginCommandExecuted(string scheme)
var claims = response.Content.Select(x => $"{x.Key}: {x.Value}");
foreach (var claim in claims)
Claims.Add(claim);
+
+ if (response.Content.TryGetValue("email", out var email))
+ Email = email;
}
}
catch (Exception ex)