Fix egg export (#380)

This commit is contained in:
Boy132 2024-06-12 18:18:24 +02:00 committed by GitHub
parent 61f3e965ba
commit 7c829fb9cf
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 9 additions and 5 deletions

View File

@ -202,11 +202,13 @@ class EditEgg extends EditRecord
Actions\DeleteAction::make()
->disabled(fn (Egg $egg): bool => $egg->servers()->count() > 0)
->label(fn (Egg $egg): string => $egg->servers()->count() <= 0 ? 'Delete Egg' : 'Egg In Use'),
Actions\ExportAction::make()
Actions\Action::make('export')
->icon('tabler-download')
->label('Export Egg')
->color('primary')
->url(fn (EggExporterService $service, Egg $egg) => $service->handle($egg->id)),
->action(fn (EggExporterService $service, Egg $egg) => response()->streamDownload(function () use ($service, $egg) {
echo $service->handle($egg->id);
}, 'egg-' . $egg->getKebabName() . '.json')),
$this->getSaveFormAction()->formId('form'),
];
}

View File

@ -4,6 +4,7 @@ namespace App\Filament\Resources\EggResource\Pages;
use App\Filament\Resources\EggResource;
use App\Models\Egg;
use App\Services\Eggs\Sharing\EggExporterService;
use App\Services\Eggs\Sharing\EggImporterService;
use Exception;
use Filament\Actions;
@ -43,12 +44,13 @@ class ListEggs extends ListRecords
])
->actions([
Tables\Actions\EditAction::make(),
Tables\Actions\ExportAction::make()
Tables\Actions\Action::make('export')
->icon('tabler-download')
->label('Export')
->color('primary')
// TODO uses old admin panel export service
->url(fn (Egg $egg): string => route('admin.eggs.export', ['egg' => $egg])),
->action(fn (EggExporterService $service, Egg $egg) => response()->streamDownload(function () use ($service, $egg) {
echo $service->handle($egg->id);
}, 'egg-' . $egg->getKebabName() . '.json')),
])
->bulkActions([
Tables\Actions\BulkActionGroup::make([