using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Avalonia.Input; using Avalonia.Input.Platform; using Microsoft.JSInterop; namespace Avalonia.Web.Blazor { internal class ClipboardImpl : IClipboard { public async Task GetTextAsync() { return await AvaloniaLocator.Current.GetRequiredService(). InvokeAsync("navigator.clipboard.readText"); } public async Task SetTextAsync(string text) { await AvaloniaLocator.Current.GetRequiredService(). InvokeAsync("navigator.clipboard.writeText",text); } public async Task ClearAsync() => await SetTextAsync(""); public Task SetDataObjectAsync(IDataObject data) => Task.CompletedTask; public Task GetFormatsAsync() => Task.FromResult(Array.Empty()); public Task GetDataAsync(string format) => Task.FromResult(new()); } }