From 5d98847e49a41f8a517ff6015fb1a5c3e4b29778 Mon Sep 17 00:00:00 2001 From: Andras Bacsai <5845193+andrasbacsai@users.noreply.github.com> Date: Fri, 26 Dec 2025 13:22:18 +0100 Subject: [PATCH] feat(redirect): add redirectRoute helper for SPA navigation support --- app/Livewire/Project/Shared/Danger.php | 2 +- bootstrap/helpers/shared.php | 17 +++++++++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/app/Livewire/Project/Shared/Danger.php b/app/Livewire/Project/Shared/Danger.php index 8bf3c7438..1b15c6367 100644 --- a/app/Livewire/Project/Shared/Danger.php +++ b/app/Livewire/Project/Shared/Danger.php @@ -111,7 +111,7 @@ public function delete($password) $this->docker_cleanup ); - return redirect()->route('project.resource.index', [ + return redirectRoute($this, 'project.resource.index', [ 'project_uuid' => $this->projectUuid, 'environment_uuid' => $this->environmentUuid, ]); diff --git a/bootstrap/helpers/shared.php b/bootstrap/helpers/shared.php index e73328474..9fc1e6f1c 100644 --- a/bootstrap/helpers/shared.php +++ b/bootstrap/helpers/shared.php @@ -2934,6 +2934,23 @@ function wireNavigate(): string } } +/** + * Redirect to a named route with SPA navigation support. + * Automatically uses wire:navigate when is_wire_navigate_enabled is true. + */ +function redirectRoute(Livewire\Component $component, string $name, array $parameters = []): mixed +{ + $navigate = true; + + try { + $navigate = instanceSettings()->is_wire_navigate_enabled ?? true; + } catch (\Exception $e) { + $navigate = true; + } + + return $component->redirectRoute($name, $parameters, navigate: $navigate); +} + function getHelperVersion(): string { $settings = instanceSettings();