12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- <?php
- use App\Livewire\Actions\Logout;
- use Illuminate\Support\Facades\Auth;
- use Livewire\Volt\Component;
- new class extends Component
- {
- public string $password = '';
- /**
- * Delete the currently authenticated user.
- */
- public function deleteUser(Logout $logout): void
- {
- $this->validate([
- 'password' => ['required', 'string', 'current_password'],
- ]);
- tap(Auth::user(), $logout(...))->delete();
- $this->redirect('/', navigate: true);
- }
- }; ?>
- <section class="space-y-6">
- <header>
- <h2 class="text-lg font-medium text-gray-900 dark:text-gray-100">
- {{ __('Delete Account') }}
- </h2>
- <p class="mt-1 text-sm text-gray-600 dark:text-gray-400">
- {{ __('Once your account is deleted, all of its resources and data will be permanently deleted. Before deleting your account, please download any data or information that you wish to retain.') }}
- </p>
- </header>
- <x-danger-button
- x-data=""
- x-on:click.prevent="$dispatch('open-modal', 'confirm-user-deletion')"
- >{{ __('Delete Account') }}</x-danger-button>
- <x-modal name="confirm-user-deletion" :show="$errors->isNotEmpty()" focusable>
- <form wire:submit="deleteUser" class="p-6">
- <h2 class="text-lg font-medium text-gray-900 dark:text-gray-100">
- {{ __('Are you sure you want to delete your account?') }}
- </h2>
- <p class="mt-1 text-sm text-gray-600 dark:text-gray-400">
- {{ __('Once your account is deleted, all of its resources and data will be permanently deleted. Please enter your password to confirm you would like to permanently delete your account.') }}
- </p>
- <div class="mt-6">
- <x-input-label for="password" value="{{ __('Password') }}" class="sr-only" />
- <x-text-input
- wire:model="password"
- id="password"
- name="password"
- type="password"
- class="mt-1 block w-3/4"
- placeholder="{{ __('Password') }}"
- />
- <x-input-error :messages="$errors->get('password')" class="mt-2" />
- </div>
- <div class="mt-6 flex justify-end">
- <x-secondary-button x-on:click="$dispatch('close')">
- {{ __('Cancel') }}
- </x-secondary-button>
- <x-danger-button class="ms-3">
- {{ __('Delete Account') }}
- </x-danger-button>
- </div>
- </form>
- </x-modal>
- </section>
|