public Task InitializeResourcesAsync() { var path = _pathProvider.GetResourceFolderPath(); return(Task.Run(() => Directory.CreateDirectory(path))); // TODO: extract needed resources here }
// TODO: clean this up private async Task CopyImageAsync(Image image) { var basePath = _pathProvider.GetResourceFolderPath(); var extension = Path.GetExtension(image.Data); var name = $"{Guid.NewGuid():D}{extension}"; var path = Path.Combine(basePath, name); await using var sourceStream = File.Open(image.Data !, FileMode.Open, FileAccess.Read); await using var destinationStream = File.Open(path, FileMode.CreateNew, FileAccess.Write); await sourceStream.CopyToAsync(destinationStream); image.Type = ImageType.LocalResource; image.Data = name; }