id = Uuid::v4(); $this->createdAt = new \DateTimeImmutable(); $this->slug = $slug; $this->label = $label; $this->description = $description; } public function getId(): Uuid { return $this->id; } public function getSlug(): string { return $this->slug; } public function setSlug(string $slug): static { $this->slug = $slug; return $this; } public function getLabel(): string { return $this->label; } public function setLabel(string $label): static { $this->label = $label; return $this; } public function getDescription(): ?string { return $this->description; } public function setDescription(?string $description): static { $this->description = $description; return $this; } public function getType(): string { return $this->type; } public function setType(string $type): static { $type = trim($type); $this->type = $type !== '' ? $type : 'generic'; return $this; } public function getCreatedAt(): \DateTimeImmutable { return $this->createdAt; } }