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
@@ -77,5 +77,6 @@ class GetMangaPreferredSourcesResource
|
||||
{
|
||||
public function __construct(
|
||||
public string $id
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -50,5 +50,6 @@ class SetMangaPreferredSourcesResource
|
||||
new Assert\Type('string')
|
||||
])]
|
||||
public array $sourceIds = []
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -305,7 +305,6 @@ readonly class TestScraperConfigurationRequest
|
||||
#[Assert\NotBlank(message: 'L\'URL de base est obligatoire')]
|
||||
#[Assert\Url(message: 'L\'URL de base doit être une URL valide')]
|
||||
public string $baseUrl,
|
||||
|
||||
#[ApiProperty(
|
||||
description: 'Format d\'URL pour accéder aux chapitres. Utilisez {slug} pour le nom du manga et {chapter} pour le numéro de chapitre',
|
||||
example: 'https://mangasite.example.com/manga/{slug}/chapter/{chapter}',
|
||||
@@ -313,7 +312,6 @@ readonly class TestScraperConfigurationRequest
|
||||
)]
|
||||
#[Assert\NotBlank(message: 'Le format d\'URL de chapitre est obligatoire')]
|
||||
public string $chapterUrlFormat,
|
||||
|
||||
#[ApiProperty(
|
||||
description: 'Type de scraping à utiliser. "html" pour les sites statiques, "javascript" pour les sites avec contenu dynamique',
|
||||
example: 'html',
|
||||
@@ -322,7 +320,6 @@ readonly class TestScraperConfigurationRequest
|
||||
#[Assert\NotBlank(message: 'Le type de scraping est obligatoire')]
|
||||
#[Assert\Choice(choices: ['html', 'javascript'], message: 'Le type de scraping doit être html ou javascript')]
|
||||
public string $scrapingType,
|
||||
|
||||
#[ApiProperty(
|
||||
description: 'URL complète d\'un chapitre existant à utiliser pour tester la configuration. Cette URL doit être accessible et contenir des images',
|
||||
example: 'https://mangasite.example.com/manga/one-piece/chapter/1',
|
||||
@@ -331,7 +328,6 @@ readonly class TestScraperConfigurationRequest
|
||||
#[Assert\NotBlank(message: 'L\'URL de test est obligatoire')]
|
||||
#[Assert\Url(message: 'L\'URL de test doit être une URL valide')]
|
||||
public string $testUrl,
|
||||
|
||||
#[ApiProperty(
|
||||
description: 'Identifiant du manga utilisé dans les URLs (slug). Sera utilisé pour remplacer {slug} dans le format d\'URL',
|
||||
example: 'one-piece',
|
||||
@@ -339,7 +335,6 @@ readonly class TestScraperConfigurationRequest
|
||||
)]
|
||||
#[Assert\NotBlank(message: 'Le slug du manga est obligatoire')]
|
||||
public string $mangaSlug,
|
||||
|
||||
#[ApiProperty(
|
||||
description: 'Numéro du chapitre à tester. Peut être décimal pour les chapitres spéciaux (ex: 1.5)',
|
||||
example: 1.0,
|
||||
@@ -349,7 +344,6 @@ readonly class TestScraperConfigurationRequest
|
||||
#[Assert\Type(type: 'numeric', message: 'Le numéro de chapitre doit être numérique')]
|
||||
#[Assert\Positive(message: 'Le numéro de chapitre doit être positif')]
|
||||
public float $chapterNumber,
|
||||
|
||||
#[ApiProperty(
|
||||
description: 'Sélecteur CSS pour identifier les images du manga sur la page. Exemples: "img.manga-page", ".chapter img", "#reader img"',
|
||||
example: 'img.manga-page, .chapter-image img',
|
||||
@@ -357,7 +351,6 @@ readonly class TestScraperConfigurationRequest
|
||||
)]
|
||||
#[Assert\Length(min: 1, max: 500, minMessage: 'Le sélecteur d\'image ne peut pas être vide', maxMessage: 'Le sélecteur d\'image est trop long')]
|
||||
public ?string $imageSelector = null,
|
||||
|
||||
#[ApiProperty(
|
||||
description: 'Sélecteur CSS pour le lien vers la page suivante (requis pour les lecteurs horizontaux). Exemples: "a.next", ".navigation .next-page"',
|
||||
example: 'a.next-page, .navigation .next',
|
||||
@@ -365,7 +358,6 @@ readonly class TestScraperConfigurationRequest
|
||||
)]
|
||||
#[Assert\Length(max: 500, maxMessage: 'Le sélecteur de page suivante est trop long')]
|
||||
public ?string $nextPageSelector = null,
|
||||
|
||||
#[ApiProperty(
|
||||
description: 'Sélecteur CSS pour délimiter la zone contenant le chapitre (optionnel). Utile pour cibler une zone spécifique de la page',
|
||||
example: '.chapter-content, #manga-reader',
|
||||
@@ -373,5 +365,6 @@ readonly class TestScraperConfigurationRequest
|
||||
)]
|
||||
#[Assert\Length(max: 500, maxMessage: 'Le sélecteur de chapitre est trop long')]
|
||||
public ?string $chapterSelector = null,
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -13,7 +13,6 @@ readonly class TestScraperConfigurationResource
|
||||
schema: ['type' => 'boolean']
|
||||
)]
|
||||
public bool $success,
|
||||
|
||||
#[ApiProperty(
|
||||
description: 'Liste des URLs d\'images trouvées lors du scraping. Vide en cas d\'échec.',
|
||||
example: [
|
||||
@@ -29,28 +28,24 @@ readonly class TestScraperConfigurationResource
|
||||
]
|
||||
)]
|
||||
public array $imageUrls,
|
||||
|
||||
#[ApiProperty(
|
||||
description: 'Nombre total d\'images trouvées',
|
||||
example: 2,
|
||||
schema: ['type' => 'integer', 'minimum' => 0]
|
||||
)]
|
||||
public int $totalImages,
|
||||
|
||||
#[ApiProperty(
|
||||
description: 'URL qui a été testée',
|
||||
example: 'https://mangasite.example.com/manga/one-piece/chapter/1',
|
||||
schema: ['type' => 'string', 'format' => 'uri']
|
||||
)]
|
||||
public string $testedUrl,
|
||||
|
||||
#[ApiProperty(
|
||||
description: 'Type de scraping qui a été utilisé pour le test',
|
||||
example: 'html',
|
||||
schema: ['type' => 'string', 'enum' => ['html', 'javascript']]
|
||||
)]
|
||||
public string $scrapingType,
|
||||
|
||||
#[ApiProperty(
|
||||
description: 'Liste des erreurs détaillées en cas d\'échec. Vide en cas de succès. Chaque erreur contient un type, le champ concerné, un message et une suggestion.',
|
||||
example: [
|
||||
@@ -89,5 +84,6 @@ readonly class TestScraperConfigurationResource
|
||||
]
|
||||
)]
|
||||
public array $errors = [],
|
||||
) {}
|
||||
) {
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user