style: apply php-cs-fixer formatting (PSR-12)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
dae215dd3d
commit
7506a7a3c1
@@ -15,7 +15,7 @@ class SecurityController extends AbstractController
|
||||
#[Route('/login', name: 'app_login', methods: ['GET', 'POST'])]
|
||||
public function login(IriConverterInterface $iriConverter, #[CurrentUser] User $user = null): Response
|
||||
{
|
||||
if(!$user) {
|
||||
if (!$user) {
|
||||
return $this->json([
|
||||
'error' => 'Invalid credentials'
|
||||
], 401);
|
||||
|
||||
@@ -8,7 +8,6 @@ use App\Form\ContentSourceType;
|
||||
use App\Manager\AppSettingsManager;
|
||||
use App\Manager\Toolbar\Factory\ToolbarFactory;
|
||||
use App\Repository\ContentSourceRepository;
|
||||
|
||||
use App\Service\NotificationService;
|
||||
use App\Service\Scraper\MangaScraperService;
|
||||
use Doctrine\ORM\EntityManagerInterface;
|
||||
|
||||
@@ -46,7 +46,7 @@ class TestController extends AbstractController
|
||||
$changed = 0;
|
||||
foreach ($mangas as $manga) {
|
||||
//si getImageUrl() retourne un lien sous la forme d'une URL (https ou http)
|
||||
if($manga->getImageUrl()) {
|
||||
if ($manga->getImageUrl()) {
|
||||
$imageUrls = $this->processAndSaveImage($manga->getImageUrl());
|
||||
$manga->setThumbnailUrl($imageUrls['thumbnail']);
|
||||
$this->mangaRepository->save($manga, true);
|
||||
|
||||
@@ -8,5 +8,6 @@ final readonly class ConvertFileCommand
|
||||
public string $filePath,
|
||||
public string $originalFilename,
|
||||
public int $fileSize
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -14,7 +14,8 @@ final readonly class ConvertFileCommandHandler
|
||||
|
||||
public function __construct(
|
||||
private ConversionServiceInterface $conversionService
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function handle(ConvertFileCommand $command): ConversionResponse
|
||||
{
|
||||
|
||||
@@ -11,7 +11,8 @@ final readonly class ConversionResponse
|
||||
public string $outputFilename,
|
||||
public int $originalFileSize,
|
||||
public int $convertedFileSize
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public static function fromConversionResult(ConversionResult $result): self
|
||||
{
|
||||
|
||||
@@ -8,7 +8,8 @@ final readonly class ConversionRequest
|
||||
private string $filePath,
|
||||
private string $originalFilename,
|
||||
private int $fileSize
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function getFilePath(): string
|
||||
{
|
||||
|
||||
@@ -9,7 +9,8 @@ final readonly class ConversionResult
|
||||
private string $outputFilename,
|
||||
private int $originalFileSize,
|
||||
private int $convertedFileSize
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function getConvertedFilePath(): string
|
||||
{
|
||||
|
||||
@@ -17,7 +17,8 @@ final class ConvertFileController extends AbstractController
|
||||
{
|
||||
public function __construct(
|
||||
private readonly ConvertFileCommandHandler $commandHandler
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function __invoke(Request $request): Response
|
||||
{
|
||||
|
||||
@@ -8,5 +8,6 @@ readonly class ChapterEditData
|
||||
public string $id,
|
||||
public ?string $title = null,
|
||||
public ?int $volume = null
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,5 +8,6 @@ readonly class CheckMonitoredMangas
|
||||
{
|
||||
public function __construct(
|
||||
public ?DateTimeImmutable $since = null
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,5 +15,6 @@ readonly class CreateManga
|
||||
public ?string $externalId,
|
||||
public ?string $imageUrl,
|
||||
public ?float $rating
|
||||
) {}
|
||||
}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,5 +6,6 @@ readonly class CreateMangaFromMangadex
|
||||
{
|
||||
public function __construct(
|
||||
public string $externalId
|
||||
) {}
|
||||
}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,5 +8,6 @@ readonly class DeleteCbz implements CommandInterface
|
||||
{
|
||||
public function __construct(
|
||||
public string $chapterId
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,5 +8,6 @@ readonly class DeleteChapter implements CommandInterface
|
||||
{
|
||||
public function __construct(
|
||||
public string $chapterId
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,5 +8,6 @@ readonly class DeleteManga implements CommandInterface
|
||||
{
|
||||
public function __construct(
|
||||
public string $mangaId
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -14,5 +14,6 @@ readonly class EditManga
|
||||
public ?string $status = null,
|
||||
public ?float $rating = null,
|
||||
public ?array $alternativeSlugs = null
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,5 +9,6 @@ readonly class EditMultipleChapters
|
||||
*/
|
||||
public function __construct(
|
||||
public array $chapters
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,5 +8,6 @@ readonly class FetchMangaChapters
|
||||
{
|
||||
public function __construct(
|
||||
public MangaId $mangaId
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,5 +8,6 @@ readonly class ImportChapter
|
||||
public string $mangaId,
|
||||
public float $chapterNumber,
|
||||
public string $fileBinary
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,9 +8,6 @@ readonly class ImportVolume
|
||||
public string $mangaId,
|
||||
public int $volumeNumber,
|
||||
public string $fileBinary
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -8,5 +8,6 @@ readonly class RefreshMangaChapters
|
||||
{
|
||||
public function __construct(
|
||||
public MangaId $mangaId
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,5 +9,6 @@ readonly class ToggleMangaMonitoring
|
||||
public function __construct(
|
||||
public MangaId $mangaId,
|
||||
public bool $enabled
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -14,7 +14,8 @@ readonly class CheckMonitoredMangasHandler
|
||||
public function __construct(
|
||||
private MangaRepositoryInterface $mangaRepository,
|
||||
private MessageBusInterface $commandBus
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function handle(CheckMonitoredMangas $command): void
|
||||
{
|
||||
|
||||
@@ -20,7 +20,8 @@ readonly class CreateMangaFromMangadexHandler
|
||||
private MangaRepositoryInterface $mangaRepository,
|
||||
private ImageProcessorInterface $imageProcessor,
|
||||
private EventDispatcherInterface $eventDispatcher
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function handle(CreateMangaFromMangadex $command): void
|
||||
{
|
||||
|
||||
@@ -21,7 +21,8 @@ readonly class CreateMangaHandler
|
||||
private MangaRepositoryInterface $mangaRepository,
|
||||
private ImageProcessorInterface $imageProcessor,
|
||||
private MessageBusInterface $messageBus
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function handle(CreateManga $command): void
|
||||
{
|
||||
|
||||
@@ -17,7 +17,8 @@ readonly class DeleteCbzHandler implements CommandHandlerInterface
|
||||
public function __construct(
|
||||
private ChapterRepositoryInterface $chapterRepository,
|
||||
private FileServiceInterface $fileService
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function handle(CommandInterface $command): void
|
||||
{
|
||||
|
||||
@@ -14,7 +14,8 @@ readonly class DeleteChapterHandler implements CommandHandlerInterface
|
||||
{
|
||||
public function __construct(
|
||||
private ChapterRepositoryInterface $chapterRepository
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function handle(CommandInterface $command): void
|
||||
{
|
||||
|
||||
@@ -12,7 +12,8 @@ readonly class DeleteMangaHandler implements CommandHandlerInterface
|
||||
{
|
||||
public function __construct(
|
||||
private MangaRepositoryInterface $mangaRepository
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function handle(CommandInterface $command): void
|
||||
{
|
||||
|
||||
@@ -11,7 +11,8 @@ readonly class EditMangaHandler
|
||||
{
|
||||
public function __construct(
|
||||
private MangaRepositoryInterface $mangaRepository
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function handle(EditManga $command): void
|
||||
{
|
||||
|
||||
@@ -10,7 +10,8 @@ readonly class EditMultipleChaptersHandler
|
||||
{
|
||||
public function __construct(
|
||||
private ChapterRepositoryInterface $chapterRepository
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function handle(EditMultipleChapters $command): void
|
||||
{
|
||||
|
||||
@@ -13,7 +13,8 @@ readonly class FetchMangaChaptersHandler
|
||||
public function __construct(
|
||||
private MangaRepositoryInterface $mangaRepository,
|
||||
private ChapterSynchronizationServiceInterface $chapterSynchronizationService
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function handle(FetchMangaChapters $command): void
|
||||
{
|
||||
@@ -23,7 +24,7 @@ readonly class FetchMangaChaptersHandler
|
||||
throw new MangaNotFoundException();
|
||||
}
|
||||
|
||||
if($manga->getExternalId() === null){
|
||||
if ($manga->getExternalId() === null) {
|
||||
throw new MangadexApiException("Manga has no external_id");
|
||||
}
|
||||
|
||||
|
||||
@@ -18,7 +18,8 @@ readonly class ImportChapterHandler
|
||||
private MangaRepositoryInterface $mangaRepository,
|
||||
private ChapterRepositoryInterface $chapterRepository,
|
||||
private MangaPathManagerInterface $pathManager
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function handle(ImportChapter $command): void
|
||||
{
|
||||
|
||||
@@ -16,7 +16,8 @@ readonly class ImportVolumeHandler
|
||||
private MangaRepositoryInterface $mangaRepository,
|
||||
private ChapterRepositoryInterface $chapterRepository,
|
||||
private MangaPathManagerInterface $pathManager
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function handle(ImportVolume $command): void
|
||||
{
|
||||
@@ -93,7 +94,3 @@ readonly class ImportVolumeHandler
|
||||
return $cbzPath;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -16,7 +16,8 @@ readonly class RefreshMangaChaptersHandler
|
||||
private MangaRepositoryInterface $mangaRepository,
|
||||
private ChapterSynchronizationServiceInterface $chapterSynchronizationService,
|
||||
private MessageBusInterface $eventBus
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function handle(RefreshMangaChapters $command): void
|
||||
{
|
||||
|
||||
@@ -10,7 +10,8 @@ readonly class ToggleMangaMonitoringHandler
|
||||
{
|
||||
public function __construct(
|
||||
private MangaRepositoryInterface $mangaRepository
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function handle(ToggleMangaMonitoring $command): void
|
||||
{
|
||||
|
||||
@@ -16,7 +16,8 @@ readonly class ChapterImportedEventListener
|
||||
public function __construct(
|
||||
private MangaRepositoryInterface $mangaRepository,
|
||||
private ChapterRepositoryInterface $chapterRepository,
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function __invoke(ChapterImported $event): void
|
||||
{
|
||||
@@ -44,5 +45,3 @@ readonly class ChapterImportedEventListener
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -11,7 +11,8 @@ readonly class MangaCreatedEventListener
|
||||
{
|
||||
public function __construct(
|
||||
private FetchMangaChaptersHandler $fetchMangaChaptersHandler
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function __invoke(MangaCreated $event): void
|
||||
{
|
||||
|
||||
@@ -16,7 +16,8 @@ readonly class VolumeImportedEventListener
|
||||
public function __construct(
|
||||
private MangaRepositoryInterface $mangaRepository,
|
||||
private ChapterRepositoryInterface $chapterRepository,
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function __invoke(VolumeImported $event): void
|
||||
{
|
||||
@@ -45,5 +46,3 @@ readonly class VolumeImportedEventListener
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -8,5 +8,6 @@ readonly class DownloadCbz implements QueryInterface
|
||||
{
|
||||
public function __construct(
|
||||
public string $chapterId
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,5 +9,6 @@ readonly class DownloadVolume implements QueryInterface
|
||||
public function __construct(
|
||||
public string $mangaId,
|
||||
public int $volume
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -11,4 +11,3 @@ readonly class FindMangaMatchByFilename
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -6,5 +6,6 @@ readonly class GetMangaById
|
||||
{
|
||||
public function __construct(
|
||||
public string $id
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,5 +6,6 @@ readonly class GetMangaBySlug
|
||||
{
|
||||
public function __construct(
|
||||
public string $slug
|
||||
) {}
|
||||
}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,5 +9,6 @@ readonly class GetMangaChapters
|
||||
public ?int $page = 1,
|
||||
public ?int $limit = 20,
|
||||
public ?string $sortOrder = 'desc'
|
||||
) {}
|
||||
}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,5 +9,6 @@ readonly class GetMangaList
|
||||
public ?int $limit = 20,
|
||||
public ?string $sortBy = 'title',
|
||||
public ?string $sortOrder = 'asc'
|
||||
) {}
|
||||
}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,5 +9,6 @@ readonly class MonitoringCriteria
|
||||
public function __construct(
|
||||
public bool $enabled,
|
||||
public ?DateTimeImmutable $lastCheckBefore = null
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,4 +10,4 @@ readonly class SearchLocalManga
|
||||
public int $limit = 20
|
||||
) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,5 +6,6 @@ readonly class SearchManga
|
||||
{
|
||||
public function __construct(
|
||||
public string $title
|
||||
) {}
|
||||
}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,7 +18,8 @@ readonly class DownloadCbzHandler implements QueryHandlerInterface
|
||||
public function __construct(
|
||||
private ChapterRepositoryInterface $chapterRepository,
|
||||
private FileServiceInterface $fileService
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function handle(QueryInterface $query): ResponseInterface
|
||||
{
|
||||
|
||||
@@ -19,7 +19,8 @@ readonly class DownloadVolumeHandler implements QueryHandlerInterface
|
||||
private ChapterRepositoryInterface $chapterRepository,
|
||||
private MangaRepositoryInterface $mangaRepository,
|
||||
private FileServiceInterface $fileService
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function handle(QueryInterface $query): ResponseInterface
|
||||
{
|
||||
@@ -46,7 +47,8 @@ readonly class DownloadVolumeHandler implements QueryHandlerInterface
|
||||
$cbzPaths[] = $chapter->getCbzPath();
|
||||
}
|
||||
|
||||
$volumeName = sprintf('%s_vol%d',
|
||||
$volumeName = sprintf(
|
||||
'%s_vol%d',
|
||||
$manga->getSlug()->getValue(),
|
||||
$query->volume
|
||||
);
|
||||
|
||||
@@ -58,7 +58,7 @@ readonly class FindMangaMatchByFilenameHandler
|
||||
}
|
||||
|
||||
// Trier les résultats par score de correspondance (du plus élevé au plus faible)
|
||||
usort($matches, fn($a, $b) => $b->matchScore <=> $a->matchScore);
|
||||
usort($matches, fn ($a, $b) => $b->matchScore <=> $a->matchScore);
|
||||
|
||||
return new MangaMatchResponse(
|
||||
matches: $matches,
|
||||
@@ -119,4 +119,3 @@ readonly class FindMangaMatchByFilenameHandler
|
||||
return $score;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -11,7 +11,8 @@ readonly class GetMangaByIdHandler
|
||||
{
|
||||
public function __construct(
|
||||
private MangaRepositoryInterface $mangaRepository
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function handle(GetMangaById $query): MangaResponse
|
||||
{
|
||||
|
||||
@@ -12,7 +12,8 @@ readonly class GetMangaBySlugHandler
|
||||
{
|
||||
public function __construct(
|
||||
private MangaRepositoryInterface $mangaRepository
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function handle(GetMangaBySlug $query): MangaResponse
|
||||
{
|
||||
|
||||
@@ -8,11 +8,13 @@ use App\Domain\Manga\Application\Response\ChapterResponse;
|
||||
use App\Domain\Manga\Domain\Contract\Repository\MangaRepositoryInterface;
|
||||
use App\Domain\Manga\Domain\Exception\MangaNotFoundException;
|
||||
use App\Domain\Manga\Domain\Model\Chapter;
|
||||
|
||||
readonly class GetMangaChaptersHandler
|
||||
{
|
||||
public function __construct(
|
||||
private MangaRepositoryInterface $mangaRepository
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function handle(GetMangaChapters $query): ChapterListResponse
|
||||
{
|
||||
@@ -48,4 +50,4 @@ readonly class GetMangaChaptersHandler
|
||||
limit: $query->limit
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,7 +10,8 @@ readonly class GetMangaListHandler
|
||||
{
|
||||
public function __construct(
|
||||
private MangaRepositoryInterface $mangaRepository
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function handle(GetMangaList $query): MangaListResponse
|
||||
{
|
||||
@@ -30,4 +31,4 @@ readonly class GetMangaListHandler
|
||||
limit: $query->limit
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,7 +12,8 @@ readonly class SearchLocalMangaHandler
|
||||
{
|
||||
public function __construct(
|
||||
private MangaRepositoryInterface $repository
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function handle(SearchLocalManga $query): MangaListResponse
|
||||
{
|
||||
|
||||
@@ -12,7 +12,8 @@ readonly class SearchMangaHandler
|
||||
{
|
||||
public function __construct(
|
||||
private MangaProviderInterface $mangaProvider
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function handle(SearchManga $query): MangaSearchResponse
|
||||
{
|
||||
@@ -40,4 +41,4 @@ readonly class SearchMangaHandler
|
||||
)
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,7 +9,8 @@ readonly class ChapterListResponse
|
||||
public int $total,
|
||||
public int $page,
|
||||
public int $limit
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function getTotalPages(): int
|
||||
{
|
||||
@@ -25,4 +26,4 @@ readonly class ChapterListResponse
|
||||
{
|
||||
return $this->page > 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,5 +12,6 @@ readonly class ChapterResponse
|
||||
public bool $isVisible,
|
||||
public ?string $cbzPath,
|
||||
public \DateTimeImmutable $createdAt
|
||||
) {}
|
||||
}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,5 +9,6 @@ readonly class DownloadResponse implements ResponseInterface
|
||||
{
|
||||
public function __construct(
|
||||
public Response $httpResponse
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,7 +9,8 @@ readonly class MangaListResponse
|
||||
public int $total,
|
||||
public int $page,
|
||||
public int $limit
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function getTotalPages(): int
|
||||
{
|
||||
@@ -25,4 +26,4 @@ readonly class MangaListResponse
|
||||
{
|
||||
return $this->page > 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,4 +18,3 @@ readonly class MangaMatchItem
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -27,4 +27,3 @@ readonly class MangaMatchResponse
|
||||
return $this->matches[0] ?? null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -19,5 +19,6 @@ readonly class MangaResponse
|
||||
public ?string $thumbnailUrl,
|
||||
public ?float $rating,
|
||||
public bool $monitored
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,5 +17,6 @@ readonly class MangaSearchItem
|
||||
public ?string $imageUrl,
|
||||
public ?string $thumbnailUrl,
|
||||
public ?float $rating
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -14,4 +14,4 @@ readonly class MangaSearchResponse
|
||||
{
|
||||
$this->items = $items;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,7 +12,8 @@ readonly class SearchLocalMangaResponse
|
||||
public int $total,
|
||||
public int $page,
|
||||
public int $limit
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function hasNextPage(): bool
|
||||
{
|
||||
@@ -23,4 +24,4 @@ readonly class SearchLocalMangaResponse
|
||||
{
|
||||
return $this->page > 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -93,4 +93,4 @@ interface MangadexClientInterface
|
||||
* }
|
||||
*/
|
||||
public function getManga(string $mangaId): array;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,6 +9,6 @@ use App\Domain\Manga\Domain\Model\ValueObject\ExternalId;
|
||||
interface MangaProviderInterface
|
||||
{
|
||||
public function search(string $title): MangaCollection;
|
||||
|
||||
|
||||
public function findByExternalId(ExternalId $externalId): ?Manga;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -13,4 +13,4 @@ interface ImageProcessorInterface
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function createThumbnail(string $originalImagePath): string;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,5 +8,6 @@ readonly class ChapterReadyForScraping
|
||||
{
|
||||
public function __construct(
|
||||
public ChapterId $chapterId
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,5 +7,6 @@ readonly class MangaCreated
|
||||
public function __construct(
|
||||
public string $mangaId,
|
||||
public string $externalId
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,4 +4,4 @@ namespace App\Domain\Manga\Domain\Exception;
|
||||
|
||||
class InvalidExternalIdException extends MangaDomainException
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,4 +4,4 @@ namespace App\Domain\Manga\Domain\Exception;
|
||||
|
||||
class InvalidMangaIdException extends MangaDomainException
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,4 +4,4 @@ namespace App\Domain\Manga\Domain\Exception;
|
||||
|
||||
class InvalidMangaSlugException extends MangaDomainException
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,4 +4,4 @@ namespace App\Domain\Manga\Domain\Exception;
|
||||
|
||||
class InvalidMangaTitleException extends MangaDomainException
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,4 +8,4 @@ class MangadexApiException extends MangaDomainException
|
||||
{
|
||||
parent::__construct($message, 0, $previous);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,4 +8,4 @@ class MangadexAuthenticationException extends MangaDomainException
|
||||
{
|
||||
parent::__construct($message, 0, $previous);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -42,4 +42,3 @@ readonly class AnalyzedFilename
|
||||
return $this->volumeNumber !== null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -15,7 +15,8 @@ readonly class Chapter
|
||||
private bool $isVisible,
|
||||
private ?string $cbzPath = null,
|
||||
private \DateTimeImmutable $createdAt = new \DateTimeImmutable()
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function getId(): string
|
||||
{
|
||||
|
||||
@@ -24,4 +24,4 @@ readonly class MangaCollection
|
||||
{
|
||||
return count($this->items);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,7 +6,8 @@ readonly class ChapterId
|
||||
{
|
||||
public function __construct(
|
||||
private string $value
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function getValue(): string
|
||||
{
|
||||
|
||||
@@ -21,4 +21,3 @@ readonly class ChapterNumber
|
||||
return $this->value;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -18,4 +18,4 @@ readonly class ExternalId
|
||||
{
|
||||
return $this->value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,7 +7,8 @@ readonly class ImageUrls
|
||||
public function __construct(
|
||||
private string $full,
|
||||
private string $thumbnail
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function getFull(): string
|
||||
{
|
||||
@@ -18,4 +19,4 @@ readonly class ImageUrls
|
||||
{
|
||||
return $this->thumbnail;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,4 +23,4 @@ readonly class MangaId
|
||||
{
|
||||
return $this->value === $other->value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -22,4 +22,4 @@ readonly class MangaSlug
|
||||
{
|
||||
return $this->value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,4 +18,4 @@ readonly class MangaTitle
|
||||
{
|
||||
return $this->value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,7 +6,8 @@ readonly class MonitoringStatus
|
||||
{
|
||||
public function __construct(
|
||||
private bool $enabled
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public static function enabled(): self
|
||||
{
|
||||
|
||||
@@ -21,4 +21,3 @@ readonly class VolumeNumber
|
||||
return $this->value;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -18,7 +18,8 @@ final class ImportChapterController extends AbstractController
|
||||
{
|
||||
public function __construct(
|
||||
private readonly ImportChapterHandler $commandHandler
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function __invoke(Request $request): Response
|
||||
{
|
||||
@@ -139,7 +140,3 @@ final class ImportChapterController extends AbstractController
|
||||
return $errors;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -16,7 +16,8 @@ final class ImportVolumeController extends AbstractController
|
||||
{
|
||||
public function __construct(
|
||||
private readonly ImportVolumeHandler $commandHandler
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
|
||||
public function __invoke(Request $request): Response
|
||||
{
|
||||
@@ -132,7 +133,3 @@ final class ImportVolumeController extends AbstractController
|
||||
return $errors;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -12,5 +12,6 @@ readonly class ChapterCollection
|
||||
public int $limit,
|
||||
public bool $hasNextPage,
|
||||
public bool $hasPreviousPage
|
||||
) {}
|
||||
}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,5 +15,6 @@ readonly class ChapterListItem
|
||||
public bool $isVisible,
|
||||
public bool $isAvailable,
|
||||
public string $createdAt
|
||||
) {}
|
||||
}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,4 +18,3 @@ readonly class FilenameMatchCollection
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -18,4 +18,3 @@ readonly class FilenameMatchItem
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -14,5 +14,6 @@ readonly class MangaCollection
|
||||
public int $limit,
|
||||
public bool $hasNextPage,
|
||||
public bool $hasPreviousPage
|
||||
) {}
|
||||
}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -22,5 +22,6 @@ readonly class MangaDetail
|
||||
public ?string $thumbnailUrl,
|
||||
public ?float $rating,
|
||||
public bool $monitored
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -21,5 +21,6 @@ readonly class MangaListItem
|
||||
public string $status,
|
||||
public ?float $rating,
|
||||
public DateTimeImmutable $createdAt,
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user