Files
RenewCMS/internal/infrastructure/useCases/ListVariants.go
T
2026-10-08 02:33:32 +02:00

29 lines
726 B
Go

package useCases
import "RenewCMS/internal/domain/image"
type ListVariantsUseCase struct {
variants image.VariantRepository
files image.VariantFileRepository
}
func NewListVariantsUseCase(variants image.VariantRepository, files image.VariantFileRepository) *ListVariantsUseCase {
return &ListVariantsUseCase{variants, files}
}
func (u *ListVariantsUseCase) List() ([]VariantSummary, error) {
variants, err := u.variants.List()
if err != nil {
return nil, err
}
totals, err := u.files.Totals()
if err != nil {
return nil, err
}
summaries := make([]VariantSummary, 0, len(variants))
for _, variant := range variants {
summaries = append(summaries, summarize(variant, totals))
}
return summaries, nil
}