diff --git a/resources/views/components/modal-input.blade.php b/resources/views/components/modal-input.blade.php index b80e3d649b..588032e039 100644 --- a/resources/views/components/modal-input.blade.php +++ b/resources/views/components/modal-input.blade.php @@ -47,7 +47,7 @@ x-transition:enter-end="opacity-100" x-transition:leave="ease-in duration-100" x-transition:leave-start="opacity-100" x-transition:leave-end="opacity-0" class="absolute inset-0 w-full h-full bg-black/50 backdrop-blur-[2px]"> -
+
! $isLarge, ]) style="box-shadow: 0 0 0 1px var(--coollabs-hairline), var(--shadow-modal)"> -
+

{{ $title }}

@isset($headerActions) -
+
{{ $headerActions }}
@endisset
-
isset($headerActions), + ]) style="-webkit-overflow-scrolling: touch;"> {{ $slot }}
diff --git a/resources/views/livewire/project/service/edit-compose.blade.php b/resources/views/livewire/project/service/edit-compose.blade.php index 78400cb76e..47b3e732f2 100644 --- a/resources/views/livewire/project/service/edit-compose.blade.php +++ b/resources/views/livewire/project/service/edit-compose.blade.php @@ -25,7 +25,7 @@
+ class="flex flex-col items-stretch gap-2 rounded-lg border border-neutral-200 bg-neutral-50 p-1 sm:flex-row sm:flex-wrap sm:items-center dark:border-white/[0.08] dark:bg-white/[0.025]"> diff --git a/resources/views/livewire/project/service/stack-form.blade.php b/resources/views/livewire/project/service/stack-form.blade.php index 423ea0aaf8..d42c2a575d 100644 --- a/resources/views/livewire/project/service/stack-form.blade.php +++ b/resources/views/livewire/project/service/stack-form.blade.php @@ -14,7 +14,7 @@
+ @compose-save-finished.window="saving = false" class="flex w-full items-center gap-2 overflow-x-auto sm:w-auto"> diff --git a/tests/Feature/ComposeEditorLayoutTest.php b/tests/Feature/ComposeEditorLayoutTest.php index d8538e82d7..d3fe92e45d 100644 --- a/tests/Feature/ComposeEditorLayoutTest.php +++ b/tests/Feature/ComposeEditorLayoutTest.php @@ -48,6 +48,27 @@ it('renders the compose editor with clear guidance settings and actions', functi ->not->toContain('Show Deployable Compose'); }); +it('keeps the compose modal usable on mobile screens', function () { + $stackForm = file_get_contents(resource_path('views/livewire/project/service/stack-form.blade.php')); + $editor = file_get_contents(resource_path('views/livewire/project/service/edit-compose.blade.php')); + $modal = file_get_contents(resource_path('views/components/modal-input.blade.php')); + + expect($modal) + ->toContain('justify-center p-2') + ->toContain('sm:p-4') + ->toContain('flex-wrap! sm:flex-nowrap!') + ->toContain('order-3 w-full sm:order-none sm:w-auto') + ->toContain('order-2 sm:order-none') + ->toContain("'mt-2 sm:mt-0' => isset(\$headerActions)"); + + expect($stackForm) + ->toContain('w-full items-center gap-2 overflow-x-auto sm:w-auto'); + + expect($editor) + ->toContain('flex-col items-stretch') + ->toContain('sm:flex-row sm:flex-wrap sm:items-center'); +}); + it('keeps the save button loading until the parent compose save finishes', function () { $component = file_get_contents(app_path('Livewire/Project/Service/StackForm.php'));