- NotificationInterface: add sendInfo() and sendWarning() levels - SymfonyNotification: implement new levels (publishes to 'notifications' topic) - ChapterScrapingStarted: carry mangaTitle + chapterNumber, now dispatched - ScrapeChapterHandler: dispatch ChapterScrapingStarted before scraping loop - ScrapingEventSubscriber: wire NotificationInterface for started/scraped/failed events - useMercureNotifications: new global Vue composable subscribing to 'notifications' topic - App.vue: mount useMercureNotifications() at app root - SendTestNotificationCommand: `app:notify:test --type --message` for dev/prod testing Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
19 lines
389 B
PHP
19 lines
389 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace App\Domain\Shared\Domain\Contract;
|
|
|
|
interface NotificationInterface
|
|
{
|
|
public function sendSuccess(string $message): void;
|
|
|
|
public function sendError(string $message): void;
|
|
|
|
public function sendInfo(string $message): void;
|
|
|
|
public function sendWarning(string $message): void;
|
|
|
|
public function sendUpdate(array $data): void;
|
|
}
|