PromptDTO.php
- Pfad:
src/UseCases/Prompts/PromptDTO.php - Namespace: UseCases\Prompts
- Zeilen: 51 | Größe: 1,473 Bytes
- Geändert: 2025-12-23 07:57:09 | Gescannt: 2025-12-31 10:22:15
Code Hygiene Score: 100
- Dependencies: 100 (25%)
- LOC: 100 (20%)
- Methods: 100 (20%)
- Secrets: 100 (15%)
- Classes: 100 (10%)
- Magic Numbers: 100 (10%)
Keine Issues gefunden.
Klassen 1
-
PromptDTOclass Zeile 9
Funktionen 3
-
__construct()public Zeile 11 -
fromArray()public Zeile 23 -
toArray()public Zeile 37
Versionen 3
-
v3
2025-12-23 07:57 | claude-code-hook | modified
Claude Code Pre-Hook Backup vor Edit-Operation -
v2
2025-12-22 10:30 | claude-code-hook | modified
Claude Code Pre-Hook Backup vor Edit-Operation -
v1
2025-12-22 10:29 | claude-code-hook | modified
Claude Code Pre-Hook Backup vor Edit-Operation
Code
<?php
declare(strict_types=1);
namespace UseCases\Prompts;
// @responsibility: Datenübertragungsobjekt für Prompts
final class PromptDTO
{
public function __construct(
public readonly ?int $id,
public readonly string $name,
public readonly string $version,
public readonly string $content,
public readonly bool $isActive,
public readonly int $criticCount = 0,
public readonly ?string $createdAt = null,
public readonly ?string $updatedAt = null,
) {
}
public static function fromArray(array $data): self
{
return new self(
id: isset($data['id']) ? (int) $data['id'] : null,
name: $data['name'] ?? '',
version: $data['version'] ?? '1.0',
content: $data['content'] ?? '',
isActive: (bool) ($data['is_active'] ?? false),
criticCount: (int) ($data['critic_count'] ?? 0),
createdAt: $data['created_at'] ?? null,
updatedAt: $data['updated_at'] ?? null,
);
}
public function toArray(): array
{
return [
'id' => $this->id,
'name' => $this->name,
'version' => $this->version,
'content' => $this->content,
'is_active' => $this->isActive,
'critic_count' => $this->criticCount,
'created_at' => $this->createdAt,
'updated_at' => $this->updatedAt,
];
}
}