<?php
declare(strict_types=1);

namespace ROITheme\Admin\CustomCSSManager\Application\UseCases;

use ROITheme\Shared\Domain\Contracts\CSSSnippetRepositoryInterface;

/**
 * Caso de uso: Obtener todos los snippets (para Admin UI)
 *
 * SRP: Solo responsable de obtener lista completa
 */
final class GetAllSnippetsUseCase
{
    public function __construct(
        private readonly CSSSnippetRepositoryInterface $repository
    ) {}

    /**
     * Ejecuta la obtención de todos los snippets
     *
     * @return array<array> Lista de snippets ordenados por 'order'
     */
    public function execute(): array
    {
        return $this->repository->getAll();
    }
}
