public async Task DeleteSavedTemplateAsync()

in code/src/UI/ViewModels/NewProject/UserSelectionViewModel.cs [193:223]


        public async Task DeleteSavedTemplateAsync(SavedTemplateViewModel template)
        {
            var group = GetGroup(template.TemplateType);
            if (template.IsReadOnly)
            {
                await ShowReadOnlyNotificationAsync(template.Name);
                return;
            }

            int newIndex = group.Items.IndexOf(template) - 1;
            newIndex = newIndex >= 0 ? newIndex : 0;

            var requirements = AllTemplates.Where(t => t.Template.Requirements.Select(r => r.TemplateId).Contains(template.Identity));
            if (requirements != null && requirements.Any())
            {
                await ShowRemoveRequirementNotificationAsync(template.Name, requirements.Select(t => t.Name));
                return;
            }

            var dependencies = await RemoveAsync(template);
            if (dependencies != null && dependencies.Any())
            {
                await ShowDependencyNotificationAsync(template.Name, dependencies.Select(t => t.Name));
            }
            else if (group.Items.Any())
            {
                newIndex = newIndex < group.Items.Count ? newIndex : group.Items.Count - 1;
                group.SelectedItem = group.Items.ElementAt(newIndex);
                group.SelectedItem.IsFocused = true;
            }
        }