From ada3ea354a8d06f25c9aed092b411e34649cc7fa Mon Sep 17 00:00:00 2001 From: Andras Bacsai <5845193+andrasbacsai@users.noreply.github.com> Date: Fri, 7 Aug 2026 16:22:11 +0200 Subject: [PATCH] feat(ui): add collapsible advanced settings and enlarge compose modal Extract a shared forms collapsible for advanced SSH/build settings across boarding, server creation, and application general. Support larger modals with header actions, close the compose editor after save via compose-save-finished, and cover the layout in tests. --- app/Livewire/Project/Service/EditCompose.php | 1 - app/Livewire/Project/Service/StackForm.php | 1 + .../components/forms/collapsible.blade.php | 22 ++++++ .../views/components/modal-input.blade.php | 12 ++- .../views/livewire/boarding/index.blade.php | 46 ++++------- .../project/application/general.blade.php | 57 +++++++------- .../project/service/edit-compose.blade.php | 76 ++++++------------- .../project/service/stack-form.blade.php | 21 ++++- .../views/livewire/server/new/by-ip.blade.php | 30 +++----- .../Feature/ApplicationGeneralLayoutTest.php | 16 +++- tests/Feature/ComposeEditorLayoutTest.php | 64 ++++++++++++++++ .../ServerCreationBuildRoleLayoutTest.php | 5 +- 12 files changed, 207 insertions(+), 144 deletions(-) create mode 100644 resources/views/components/forms/collapsible.blade.php create mode 100644 tests/Feature/ComposeEditorLayoutTest.php diff --git a/app/Livewire/Project/Service/EditCompose.php b/app/Livewire/Project/Service/EditCompose.php index 0f5c739b1..46a8ecdc8 100644 --- a/app/Livewire/Project/Service/EditCompose.php +++ b/app/Livewire/Project/Service/EditCompose.php @@ -77,7 +77,6 @@ class EditCompose extends Component { try { $this->authorize('update', $this->service); - $this->dispatch('info', 'Saving new docker compose...'); $this->dispatch('saveCompose', $this->dockerComposeRaw); $this->dispatch('refreshStorages'); } catch (\Throwable $e) { diff --git a/app/Livewire/Project/Service/StackForm.php b/app/Livewire/Project/Service/StackForm.php index 86d5a57c1..92829edd6 100644 --- a/app/Livewire/Project/Service/StackForm.php +++ b/app/Livewire/Project/Service/StackForm.php @@ -140,6 +140,7 @@ class StackForm extends Component { $this->dockerComposeRaw = $raw; $this->submit(notify: true); + $this->dispatch('compose-save-finished'); } public function instantSave() diff --git a/resources/views/components/forms/collapsible.blade.php b/resources/views/components/forms/collapsible.blade.php new file mode 100644 index 000000000..3c4c7a134 --- /dev/null +++ b/resources/views/components/forms/collapsible.blade.php @@ -0,0 +1,22 @@ +@props([ + 'title' => 'Advanced settings', + 'contentClass' => '', +]) + +
- Non-root user support is experimental. - Learn - more -
+ Non-root user support is experimental. + Learn + more +