From 9864d380a325847e84cc7527f8e1c54292dd907d Mon Sep 17 00:00:00 2001 From: Andras Bacsai Date: Thu, 15 Aug 2024 11:23:44 +0200 Subject: [PATCH] fix: sync fqdn change on the UI --- app/Livewire/Project/Service/Configuration.php | 1 + app/Livewire/Project/Service/EditCompose.php | 6 +++++- app/Livewire/Project/Service/StackForm.php | 6 +++--- .../Project/Shared/EnvironmentVariable/All.php | 18 +++++++++++++----- 4 files changed, 22 insertions(+), 9 deletions(-) diff --git a/app/Livewire/Project/Service/Configuration.php b/app/Livewire/Project/Service/Configuration.php index c82012aaa..8ad6750a3 100644 --- a/app/Livewire/Project/Service/Configuration.php +++ b/app/Livewire/Project/Service/Configuration.php @@ -25,6 +25,7 @@ class Configuration extends Component return [ "echo-private:user.{$userId},ServiceStatusChanged" => 'check_status', 'check_status', + 'refresh' => '$refresh', ]; } diff --git a/app/Livewire/Project/Service/EditCompose.php b/app/Livewire/Project/Service/EditCompose.php index f67b95a8a..3d0ad4e0b 100644 --- a/app/Livewire/Project/Service/EditCompose.php +++ b/app/Livewire/Project/Service/EditCompose.php @@ -11,7 +11,11 @@ class EditCompose extends Component public $serviceId; - protected $listeners = ['refreshEnvs', 'envsUpdated']; + protected $listeners = [ + 'refreshEnvs', + 'envsUpdated', + 'refresh' => 'envsUpdated', + ]; protected $rules = [ 'service.docker_compose_raw' => 'required', diff --git a/app/Livewire/Project/Service/StackForm.php b/app/Livewire/Project/Service/StackForm.php index 3f62202c8..04bb136db 100644 --- a/app/Livewire/Project/Service/StackForm.php +++ b/app/Livewire/Project/Service/StackForm.php @@ -53,7 +53,7 @@ class StackForm extends Component public function saveCompose($raw) { $this->service->docker_compose_raw = $raw; - $this->submit(); + $this->submit(notify: false); } public function instantSave() @@ -62,7 +62,7 @@ class StackForm extends Component $this->dispatch('success', 'Service settings saved.'); } - public function submit() + public function submit($notify = true) { try { $this->validate(); @@ -76,7 +76,7 @@ class StackForm extends Component $this->service->refresh(); $this->service->saveComposeConfigs(); $this->dispatch('refreshEnvs'); - $this->dispatch('success', 'Service saved.'); + $notify && $this->dispatch('success', 'Service saved.'); } catch (\Throwable $e) { return handleError($e, $this); } finally { diff --git a/app/Livewire/Project/Shared/EnvironmentVariable/All.php b/app/Livewire/Project/Shared/EnvironmentVariable/All.php index 95e2bfbbd..5aba5bd09 100644 --- a/app/Livewire/Project/Shared/EnvironmentVariable/All.php +++ b/app/Livewire/Project/Shared/EnvironmentVariable/All.php @@ -9,11 +9,17 @@ use Visus\Cuid2\Cuid2; class All extends Component { public $resource; + public string $resourceClass; + public bool $showPreview = false; + public ?string $modalId = null; + public ?string $variables = null; + public ?string $variablesPreview = null; + public string $view = 'normal'; protected $listeners = [ @@ -29,8 +35,8 @@ class All extends Component { $this->resourceClass = get_class($this->resource); $resourceWithPreviews = ['App\Models\Application']; - $simpleDockerfile = !is_null(data_get($this->resource, 'dockerfile')); - if (str($this->resourceClass)->contains($resourceWithPreviews) && !$simpleDockerfile) { + $simpleDockerfile = ! is_null(data_get($this->resource, 'dockerfile')); + if (str($this->resourceClass)->contains($resourceWithPreviews) && ! $simpleDockerfile) { $this->showPreview = true; } $this->modalId = new Cuid2; @@ -48,7 +54,7 @@ class All extends Component { $this->resource->load(['environment_variables', 'environment_variables_preview']); - $sortBy = $this->resource->settings->is_env_sorting_enabled ? 'key' : 'order'; + $sortBy = data_get($this->resource, 'settings.is_env_sorting_enabled') ? 'key' : 'order'; $sortFunction = function ($variables) use ($sortBy) { if ($sortBy === 'key') { @@ -83,6 +89,7 @@ class All extends Component if ($item->is_multiline) { return "$item->key=(Multiline environment variable, edit in normal view)"; } + return "$item->key=$item->value"; })->join("\n"); } @@ -156,6 +163,7 @@ class All extends Component $found = $this->resource->environment_variables()->where('key', $data['key'])->first(); if ($found) { $this->dispatch('error', 'Environment variable already exists.'); + return; } @@ -216,7 +224,7 @@ class All extends Component $found = $this->resource->$method()->where('key', $key)->first(); if ($found) { - if (!$found->is_shown_once && !$found->is_multiline) { + if (! $found->is_shown_once && ! $found->is_multiline) { $found->value = $value; $found->save(); } @@ -261,4 +269,4 @@ class All extends Component $this->sortEnvironmentVariables(); $this->getDevView(); } -} \ No newline at end of file +}