build: initialize RetroHub with Laravel, Inertia, Vue, and Horizon

This commit is contained in:
2026-08-10 13:45:18 +02:00
commit 717db65139
218 changed files with 28356 additions and 0 deletions
+37
View File
@@ -0,0 +1,37 @@
<?php
namespace App\Features\Games\Data;
use App\Features\Games\Models\RomFile;
use Spatie\LaravelData\Attributes\MapInputName;
use Spatie\LaravelData\Data;
use Spatie\LaravelData\Mappers\SnakeCaseMapper;
#[MapInputName(SnakeCaseMapper::class)]
class RomFileData extends Data
{
public function __construct(
public int $id,
public int $gameId,
public string $filePath,
public string $fileName,
public int $fileSize,
public string $fileHash,
public ?string $region,
public ?string $language,
) {}
public static function fromModel(RomFile $romFile): self
{
return new self(
id: $romFile->id,
gameId: $romFile->game_id,
filePath: $romFile->file_path,
fileName: $romFile->file_name,
fileSize: $romFile->file_size,
fileHash: $romFile->file_hash,
region: $romFile->region,
language: $romFile->language,
);
}
}