diff --git a/resources/views/clients/index.blade.php b/resources/views/clients/index.blade.php
index 6d87d13..6292d9e 100644
--- a/resources/views/clients/index.blade.php
+++ b/resources/views/clients/index.blade.php
@@ -4,5 +4,6 @@
+
diff --git a/resources/views/components/⚡client-list.blade.php b/resources/views/components/⚡client-list.blade.php
index 981dece..c29ee17 100644
--- a/resources/views/components/⚡client-list.blade.php
+++ b/resources/views/components/⚡client-list.blade.php
@@ -24,6 +24,7 @@ new class extends Component {
}
#[On('client-created')]
+ #[On('client-updated')]
public function refresh(): void {}
#[Computed]
@@ -80,8 +81,8 @@ new class extends Component {
-
- Edit
+
+ Edit
diff --git a/resources/views/components/⚡edit-client.blade.php b/resources/views/components/⚡edit-client.blade.php
new file mode 100644
index 0000000..7539c5d
--- /dev/null
+++ b/resources/views/components/⚡edit-client.blade.php
@@ -0,0 +1,72 @@
+clientId = $clientId;
+ $client = Client::findOrFail($clientId);
+
+ $this->name = $client->name;
+ $this->abbreviation = $client->abbreviation;
+ $this->audition_date = $client->audition_date?->format('Y-m-d');
+
+ $this->resetValidation();
+ Flux::modal('edit-client')->show();
+ }
+
+ public function save(): void
+ {
+ $this->validate([
+ 'name' => 'required|string|max:255|unique:clients,name,' . $this->clientId,
+ 'abbreviation' => 'required|string|max:10|unique:clients,abbreviation,' . $this->clientId,
+ 'audition_date' => 'nullable|date|after_or_equal:today',
+ ]);
+
+ $client = Client::findOrFail($this->clientId);
+ $client->update([
+ 'name' => $this->name,
+ 'abbreviation' => $this->abbreviation,
+ 'audition_date' => $this->audition_date ?: null,
+ ]);
+
+ $this->reset();
+ Flux::modal('edit-client')->close();
+ $this->dispatch('client-updated');
+ }
+};
+?>
+
+
\ No newline at end of file