file uploads

This commit is contained in:
2026-05-06 18:11:42 +03:00
parent 16e50e2d49
commit 5587e8b4b6
41 changed files with 685 additions and 1067 deletions
+6
View File
@@ -2,6 +2,7 @@
namespace Lucent\File;
use Illuminate\Database\Query\Builder;
use Lucent\Data\File as DataFile;
use Lucent\Database\Database;
use Lucent\Data\File;
@@ -15,6 +16,11 @@ class FileRepo
Database::make()->table("lucent_files")->insert($file->toDB());
}
public static function query(): Builder
{
return Database::make()->table("lucent_files");
}
/**
* @return File[]
*/
+2 -25
View File
@@ -14,7 +14,6 @@ use Lucent\Id\Id;
use Lucent\LucentException;
use Lucent\Data\File as DataFile;
use Lucent\Record\QueryRecord;
use Lucent\Schema\FilesSchema;
use Spatie\ImageOptimizer\OptimizerChainFactory;
class FileService
@@ -25,15 +24,8 @@ class FileService
public Logger $logger,
) {}
public function getPath(QueryRecord $file): string
{
return $this->channelService->channel->filesUrl .
"/" .
$file->_file->path;
}
public function createFromUrl(
FilesSchema $schema,
string $recordId,
string $url,
): FileUploadResult {
$pathinfo = pathinfo($url);
@@ -44,7 +36,7 @@ class FileService
$file = "/tmp/" . $pathinfo["basename"];
file_put_contents($file, $contents);
$uploadedFile = new UploadedFile($file, $pathinfo["basename"]);
return $this->upload($schema, $uploadedFile);
return $this->upload($recordId, $uploadedFile);
}
public function upload(string $recordId, UploadedFile $file): DataFile
@@ -130,21 +122,6 @@ class FileService
return Storage::disk(config("lucent.disk"));
}
private function checkDuplicate(
string $schemaName,
string $checksum,
int $filesize,
): string {
$record = Database::make()
->table("lucent_records")
->where("schema", $schemaName)
->where("_file->checksum", $checksum)
->where("_file->size", $filesize)
->first();
return $record->id ?? "";
}
public function createTemplates(Filesystem $disk, string $path): void
{
$originalImage = $this->imageManager->make($disk->get($path));