From 9aa421698d5242996a91461ba0a7a54533eb3a78 Mon Sep 17 00:00:00 2001 From: Jacob Marks Date: Tue, 7 May 2024 19:03:43 +1000 Subject: [PATCH] Add share link snackbar message --- Client/Pages/Home.razor.cs | 17 +++++++++++++++++ Client/Program.cs | 7 ++++++- 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/Client/Pages/Home.razor.cs b/Client/Pages/Home.razor.cs index a690750..af3e33d 100644 --- a/Client/Pages/Home.razor.cs +++ b/Client/Pages/Home.razor.cs @@ -13,6 +13,9 @@ public sealed partial class Home : IDisposable [Inject] private NavigationManager NavigationManager { get; set; } = null!; + [Inject] + private ISnackbar Snackbar { get; set; } = null!; + [Inject] private AppConfig AppConfig { get; set; } = null!; @@ -191,6 +194,20 @@ private async Task GetSharableLink() { var shareLink = NavigationManager.BaseUri + "?qs=" + Uri.EscapeDataString(_input.Value ?? ""); await ClipboardService.CopyToClipboardAsync(shareLink); + + Snackbar.Add( + message: "Link copied to clipboard", + severity: Severity.Normal, + configure: o => + { + o.DuplicatesBehavior = SnackbarDuplicatesBehavior.Allow; + o.Icon = Icons.Material.Filled.ContentCopy; + o.IconSize = Size.Small; + o.ShowCloseIcon = false; + o.ShowTransitionDuration = 150; + o.VisibleStateDuration = 1500; + o.HideTransitionDuration = 150; + }); } private async Task Clear() diff --git a/Client/Program.cs b/Client/Program.cs index c2244c0..0ee8509 100644 --- a/Client/Program.cs +++ b/Client/Program.cs @@ -3,12 +3,17 @@ using Microsoft.Extensions.Options; using MudBlazor.Services; using Client; +using MudBlazor; var builder = WebAssemblyHostBuilder.CreateDefault(args); builder.RootComponents.Add("#app"); builder.RootComponents.Add("head::after"); -builder.Services.AddMudServices(); +builder.Services.AddMudServices(config => +{ + config.SnackbarConfiguration.PositionClass = Defaults.Classes.Position.TopCenter; + config.SnackbarConfiguration.NewestOnTop = true; +}); builder.Services.Configure(builder.Configuration.Bind); builder.Services.AddScoped(services => services.GetRequiredService>().Value);