{
"event": "PreToolUse",
"tool_name": "Write",
"tool_input": {
"file_path": "\/var\/www\/dev.campus.systemische-tools.de\/src\/UseCases\/Config\/ConfigDTO.php",
"content": "<?php\n\nnamespace UseCases\\Config;\n\nfinal class ConfigDTO\n{\n public function __construct(\n public readonly ?int $id,\n public readonly string $type,\n public readonly string $name,\n public readonly string $slug,\n public readonly ?string $description,\n public readonly string $content,\n public readonly string $version,\n public readonly string $status,\n public readonly ?int $parentId,\n public readonly ?string $createdAt = null,\n public readonly ?string $updatedAt = null,\n ) {\n }\n\n public static function fromArray(array $data): self\n {\n return new self(\n id: isset($data['id']) ? (int) $data['id'] : null,\n type: $data['type'] ?? '',\n name: $data['name'] ?? '',\n slug: $data['slug'] ?? '',\n description: $data['description'] ?? null,\n content: $data['content'] ?? '{}',\n version: $data['version'] ?? '1.0',\n status: $data['status'] ?? 'draft',\n parentId: isset($data['parent_id']) ? (int) $data['parent_id'] : null,\n createdAt: $data['created_at'] ?? null,\n updatedAt: $data['updated_at'] ?? null,\n );\n }\n\n public function getContentDecoded(): ?array\n {\n $decoded = json_decode($this->content, true);\n return is_array($decoded) ? $decoded : null;\n }\n}\n"
}
}
{
"tool_response": {
"type": "create",
"filePath": "\/var\/www\/dev.campus.systemische-tools.de\/src\/UseCases\/Config\/ConfigDTO.php",
"content": "<?php\n\nnamespace UseCases\\Config;\n\nfinal class ConfigDTO\n{\n public function __construct(\n public readonly ?int $id,\n public readonly string $type,\n public readonly string $name,\n public readonly string $slug,\n public readonly ?string $description,\n public readonly string $content,\n public readonly string $version,\n public readonly string $status,\n public readonly ?int $parentId,\n public readonly ?string $createdAt = null,\n public readonly ?string $updatedAt = null,\n ) {\n }\n\n public static function fromArray(array $data): self\n {\n return new self(\n id: isset($data['id']) ? (int) $data['id'] : null,\n type: $data['type'] ?? '',\n name: $data['name'] ?? '',\n slug: $data['slug'] ?? '',\n description: $data['description'] ?? null,\n content: $data['content'] ?? '{}',\n version: $data['version'] ?? '1.0',\n status: $data['status'] ?? 'draft',\n parentId: isset($data['parent_id']) ? (int) $data['parent_id'] : null,\n createdAt: $data['created_at'] ?? null,\n updatedAt: $data['updated_at'] ?? null,\n );\n }\n\n public function getContentDecoded(): ?array\n {\n $decoded = json_decode($this->content, true);\n return is_array($decoded) ? $decoded : null;\n }\n}\n",
"structuredPatch": [],
"originalFile": null
}
}