Added VKBot

This commit is contained in:
amikhaylov
2026-05-28 02:16:26 +03:00
parent 20450c4ede
commit e90314f18b
16 changed files with 464 additions and 5 deletions
+28
View File
@@ -0,0 +1,28 @@
<?php
declare(strict_types=1);
namespace App\Library\VK\Mapper;
use App\Library\VK\Entity\VkPost;
use App\Library\VK\Mapper\Strategy\Interfaces\MappingStrategyInterface;
use App\Library\VK\Mapper\Strategy\MappingStrategyFactory;
class PostMapper
{
public function __construct(
private MappingStrategyFactory $mappingStrategyFactory,
) {
}
public function map(array $item): VkPost
{
$isRepost = isset($item['copy_history']);
/** @var MappingStrategyInterface $strategy */
$strategy = $this->mappingStrategyFactory->getStrategy($isRepost);
return $strategy->map($item);
}
}