Files
lucent-laravel/src/Record/FileData.php
T
2024-09-20 13:39:45 +03:00

41 lines
1020 B
PHP

<?php
namespace Lucent\Record;
class FileData
{
function __construct(
public readonly string $originalName,
public readonly string $mime,
public readonly string $path,
public readonly string $disk,
public readonly int $size,
public readonly int $width,
public readonly int $height,
public readonly string $checksum,
)
{
}
public static function fromArray(array $data): FileData
{
return new FileData(
originalName: data_get($data, "originalName"),
mime: data_get($data, "mime"),
path: data_get($data, "path"),
disk: data_get($data, "disk", "lucent"),
size: data_get($data, "size"),
width: data_get($data, "width"),
height: data_get($data, "height"),
checksum: data_get($data, "checksum"),
);
}
public function toArray(): array
{
return \json_decode(\json_encode($this), true);
}
}