From 9c81c0ce181927bb8690e944f08dd5a89af9144d Mon Sep 17 00:00:00 2001 From: Lance Pioch Date: Sun, 2 Jun 2024 01:25:48 -0400 Subject: [PATCH] Use public member --- .../ServerResource/Pages/CreateServer.php | 26 +++++++++---------- 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/app/Filament/Resources/ServerResource/Pages/CreateServer.php b/app/Filament/Resources/ServerResource/Pages/CreateServer.php index d7fc95a9d..ec8ff4114 100644 --- a/app/Filament/Resources/ServerResource/Pages/CreateServer.php +++ b/app/Filament/Resources/ServerResource/Pages/CreateServer.php @@ -22,6 +22,7 @@ class CreateServer extends CreateRecord { protected static string $resource = ServerResource::class; protected static bool $canCreateAnother = false; + public ?Egg $egg = null; public function form(Form $form): Form { @@ -47,11 +48,11 @@ class CreateServer extends CreateRecord ->preload() ->live() ->afterStateUpdated(function ($state, Forms\Set $set, Forms\Get $get, $old) { - $egg = Egg::query()->find($state); - $set('startup', $egg->startup); + $this->egg = Egg::query()->find($state); + $set('startup', $this->egg->startup); $set('image', ''); - $variables = $egg->variables ?? []; + $variables = $this->egg->variables ?? []; $serverVariables = collect(); foreach ($variables as $variable) { $serverVariables->add($variable->toArray()); @@ -69,7 +70,7 @@ class CreateServer extends CreateRecord $previousEgg = Egg::query()->find($old); if (!$get('name') || $previousEgg?->getKebabName() === $get('name')) { - $set('name', $egg->getKebabName()); + $set('name', $this->egg->getKebabName()); } }) ->required(), @@ -81,8 +82,7 @@ class CreateServer extends CreateRecord ->suffixAction(Forms\Components\Actions\Action::make('random') ->icon('tabler-dice-' . random_int(1, 6)) ->action(function (Forms\Set $set, Forms\Get $get) { - $egg = Egg::find($get('egg_id')); - $prefix = $egg ? str($egg->name)->lower()->kebab() . '-' : ''; + $prefix = $this->egg ? str($this->egg->name)->lower()->kebab() . '-' : ''; $word = (new RandomWordService())->word(); @@ -177,7 +177,7 @@ class CreateServer extends CreateRecord ->default(null) ->datalist([ $get('name'), - Egg::find($get('egg_id'))?->name, + $this->egg?->name, ]) ->helperText('Optional display name to help you remember what these are.') ->required(false), @@ -317,11 +317,11 @@ class CreateServer extends CreateRecord ])) ->schema([ Forms\Components\Placeholder::make('Select an egg first to show its variables!') - ->hidden(fn (Forms\Get $get) => $get('egg_id')), + ->hidden(fn (Forms\Get $get) => $this->egg), Forms\Components\Placeholder::make('The selected egg has no variables!') - ->hidden(fn (Forms\Get $get) => !$get('egg_id') || - Egg::query()->find($get('egg_id'))?->variables()?->count() + ->hidden(fn (Forms\Get $get) => !$this->egg || + $this->egg->variables()?->count() ), Forms\Components\Repeater::make('server_variables') @@ -625,8 +625,7 @@ class CreateServer extends CreateRecord ->label('Image Name') ->afterStateUpdated(fn (Forms\Set $set, $state) => $set('image', $state)) ->options(function ($state, Forms\Get $get, Forms\Set $set) { - $egg = Egg::query()->find($get('egg_id')); - $images = $egg->docker_images ?? []; + $images = $this->egg->docker_images ?? []; $currentImage = $get('image'); if (!$currentImage && $images) { @@ -644,8 +643,7 @@ class CreateServer extends CreateRecord ->label('Image') ->debounce(500) ->afterStateUpdated(function ($state, Forms\Get $get, Forms\Set $set) { - $egg = Egg::query()->find($get('egg_id')); - $images = $egg->docker_images ?? []; + $images = $this->egg->docker_images ?? []; if (in_array($state, $images)) { $set('select_image', $state);