56 lines
2.0 KiB
Vue
56 lines
2.0 KiB
Vue
<script setup lang="ts">
|
|
import { useForm } from '@inertiajs/vue3';
|
|
import Button from '@/components/ui/Button.vue';
|
|
import Input from '@/components/ui/Input.vue';
|
|
import { useTranslations } from '@/composables/useVanguard';
|
|
import AuthLayout from '@/layouts/AuthLayout.vue';
|
|
|
|
const { __ } = useTranslations();
|
|
|
|
const form = useForm({ email: '' });
|
|
|
|
function submit() {
|
|
form.post(route('password.email'));
|
|
}
|
|
</script>
|
|
|
|
<template>
|
|
<AuthLayout :title="__('Reset Password')">
|
|
<div class="rounded-lg border border-slate-200 bg-white shadow-sm">
|
|
<div class="p-6">
|
|
<h5 class="mt-2 mb-2 text-center text-sm font-semibold tracking-wider text-slate-600 uppercase">
|
|
{{ __('Forgot Your Password?') }}
|
|
</h5>
|
|
|
|
<form class="space-y-4 p-2" autocomplete="off" @submit.prevent="submit">
|
|
<p class="mb-4 text-center font-light text-slate-500">
|
|
{{ __('Please provide your email below and we will send you a password reset link.') }}
|
|
</p>
|
|
|
|
<div>
|
|
<label for="email" class="sr-only">{{ __('Email') }}</label>
|
|
<Input
|
|
id="email"
|
|
v-model="form.email"
|
|
type="email"
|
|
class="w-full"
|
|
:placeholder="__('Your E-Mail')"
|
|
:invalid="Boolean(form.errors.email)"
|
|
autocomplete="email"
|
|
/>
|
|
<small v-if="form.errors.email" class="text-red-600">{{ form.errors.email }}</small>
|
|
</div>
|
|
|
|
<Button
|
|
type="submit"
|
|
:label="__('Reset Password')"
|
|
class="w-full"
|
|
size="large"
|
|
:loading="form.processing"
|
|
/>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</AuthLayout>
|
|
</template>
|