using System.Collections.Generic; using System.Threading.Tasks; using RackPeek.Domain.Resources; using RackPeek.Domain.Persistence; namespace RackPeek.Domain.UseCases.Mermaid { public class MermaidDiagramExportUseCase : IUseCase { private readonly IResourceCollection _repository; public MermaidDiagramExportUseCase(IResourceCollection repository) { _repository = repository; } public async Task ExecuteAsync(MermaidExportOptions options) { IReadOnlyList resources = await _repository.GetAllOfTypeAsync(); return resources.ToMermaidDiagram(options); } } }