21 lines
428 B
PHP
21 lines
428 B
PHP
|
|
<?php
|
||
|
|
|
||
|
|
declare(strict_types=1);
|
||
|
|
|
||
|
|
namespace Domain\Models\ValueObjects\Entities;
|
||
|
|
|
||
|
|
use Ramsey\Uuid\UuidInterface;
|
||
|
|
use Shared\DDD\EntityId;
|
||
|
|
use Shared\Helpers\UuidHelper;
|
||
|
|
|
||
|
|
final readonly class RecipeId extends EntityId
|
||
|
|
{
|
||
|
|
public function __construct(
|
||
|
|
public UuidInterface $value
|
||
|
|
) {
|
||
|
|
if (! UuidHelper::isV7($value)) {
|
||
|
|
throw new \DomainException('value must be a valid UUID v7');
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|