diff --git a/app/Filament/Resources/NodeResource/Pages/CreateNode.php b/app/Filament/Resources/NodeResource/Pages/CreateNode.php index e1b4ee559d..c00a8b963a 100644 --- a/app/Filament/Resources/NodeResource/Pages/CreateNode.php +++ b/app/Filament/Resources/NodeResource/Pages/CreateNode.php @@ -148,6 +148,7 @@ public function form(Forms\Form $form): Forms\Form ->hidden() ->columnSpanFull() ->rows(5), + Forms\Components\Hidden::make('skipValidation')->default(true), ]); } @@ -155,7 +156,7 @@ public function form(Forms\Form $form): Forms\Form protected function getRedirectUrlParameters(): array { return [ - 'step' => 'configuration', + 'tab' => '-configuration-tab', ]; } } diff --git a/app/Filament/Resources/NodeResource/Pages/EditNode.php b/app/Filament/Resources/NodeResource/Pages/EditNode.php index e508f7c303..e56024978f 100644 --- a/app/Filament/Resources/NodeResource/Pages/EditNode.php +++ b/app/Filament/Resources/NodeResource/Pages/EditNode.php @@ -6,6 +6,7 @@ use App\Models\Node; use Filament\Actions; use Filament\Forms; +use Filament\Forms\Components\Tabs; use Filament\Forms\Components\Wizard; use Filament\Resources\Pages\EditRecord; use Illuminate\Support\HtmlString; @@ -17,19 +18,25 @@ class EditNode extends EditRecord public function form(Forms\Form $form): Forms\Form { - return $form - ->schema([ - Wizard::make([ - Forms\Components\Wizard\Step::make('Basic') - ->description('') + return $form->schema([ + Tabs::make('Tabs') + ->columns(4) + ->persistTabInQueryString() + ->columnSpanFull() + ->tabs([ + Tabs\Tab::make('Basic Settings') + ->icon('tabler-server') ->schema((new CreateNode())->form($form)->getComponents()), - Forms\Components\Wizard\Step::make('Configuration') - ->description('') + Tabs\Tab::make('Advanced Settings') + ->icon('tabler-server-cog'), + Tabs\Tab::make('Configuration') + ->icon('tabler-code') ->schema([ Forms\Components\Placeholder::make('instructions') ->columnSpanFull() ->content(new HtmlString(' - This file should be placed in your daemon\'s root directory (usually /etc/pelican) in a file called config.yml. + This file should be placed in your daemon\'s root directory + (usually /etc/pelican) in a file called config.yml. ')), Forms\Components\Textarea::make('config') ->label('Configuration File') @@ -38,15 +45,13 @@ public function form(Forms\Form $form): Forms\Form ->hintAction(CopyAction::make()) ->columnSpanFull(), ]), + Tabs\Tab::make('Allocations') + ->icon('tabler-plug-connected') + ->schema([ + // ... + ]), ]) - ->columns(4) - ->persistStepInQueryString() - ->columnSpanFull() - // ->startOnStep($this->getStartStep()) - // ->cancelAction($this->getCancelFormAction()) - // ->submitAction($this->getSubmitFormAction()) - // ->skippable($this->hasSkippableSteps()), - ]); + ]); } protected function mutateFormDataBeforeFill(array $data): array