/// <summary> /// Async. Uses the download service to initiate a download of selected /// basket images, given a particular config - e.g., whether the images /// should be resized, watermarked, etc. /// </summary> /// <param name="config">Download configuration with size and watermark settings</param> /// <param name="keepPaths">True to keep folder structure, false for a flat zip of images.</param> /// <param name="OnProgress">Callback to give progress information to the UI</param> /// <returns>String path to the generated file, which is passed back to the doanload request</returns> /// TODO: Maybe move this elsewhere. public async Task <string> DownloadSelection(ExportConfig config) { var virtualZipPath = await _downloadService.CreateDownloadZipAsync(BasketImages, config); if (!string.IsNullOrEmpty(virtualZipPath)) { _statusService.StatusText = $"Basket selection downloaded to {virtualZipPath}."; Logging.Log($"Basket selection downloaded to {virtualZipPath}."); return(virtualZipPath); } return(string.Empty); }