public async Task <TemplateList> GetTemplatesList() { if (await TemplateListFile.Exists(true, true)) { await TemplateListFile.Download(true); var templateList = TemplateList.FromFile(TemplateListFile.LocalPath); var actualTemplateFiles = (await TemplatesFolder.GetRemoteFiles()).ToList(); templateList.Items.RemoveAll( item => !actualTemplateFiles.Any(template => template.NameOnly.Equals(item.Name, StringComparison.OrdinalIgnoreCase))); return(templateList); } return(TemplateList.Empty()); }