Files
bogazici-api/app/Actions/Comment/CreateCommentAction.php
2026-03-27 10:41:54 +03:00

23 lines
514 B
PHP

<?php
namespace App\Actions\Comment;
use App\DTOs\CommentData;
use App\Events\ModelChanged;
use App\Models\Comment;
use App\Repositories\Contracts\CommentRepositoryInterface;
final class CreateCommentAction
{
public function __construct(private CommentRepositoryInterface $repository) {}
public function execute(CommentData $data): Comment
{
$result = $this->repository->create($data->toArray());
ModelChanged::dispatch(Comment::class, 'created');
return $result;
}
}