<script setup>
import { computed } from 'vue';
import { Head, Link, useForm } from '@inertiajs/vue3';

import AuthenticationCard from '@/Components/Dashboard/AuthenticationCard.vue';
import PrimaryButton      from '@/Components/Dashboard/Button/Primary.vue';
import AppLogoIcon        from '@/Components/Shared/Logo/Icon.vue';

const props = defineProps({
    status: String,
});

const form = useForm();

const submit = () => {
    form.post(route('verification.send'));
};

const verificationLinkSent = computed(() => props.status === 'verification-link-sent');
</script>

<template>
    <Head
        :title="$t('email.verification')"
    />
    <AuthenticationCard>
        <template #logo>
            <AppLogoIcon />
        </template>

        <div class="mb-4 text-sm">
            Before continuing, could you verify your email address by clicking on the link we just emailed to you? If you didn't receive the email, we will gladly send you another.
        </div>

        <div v-if="verificationLinkSent" class="mb-4 font-medium text-sm text-success">
            A new verification link has been sent to the email address you provided in your profile settings.
        </div>

        <form @submit.prevent="submit">
            <div class="mt-4 flex items-center justify-between">
                <PrimaryButton
                    :class="{ 'opacity-25': form.processing }"
                    :disabled="form.processing"
                >
                    Resend Verification Email
                </PrimaryButton>

                <div>
                    <Link
                        :href="route('profile.show')"
                        class="underline text-sm"
                    >
                        Edit Profile
                    </Link>
                    <Link
                        :href="route('logout')"
                        class="underline text-sm ml-2"
                        method="post"
                    >
                        {{ $t('auth.logout') }}
                    </Link>
                </div>
            </div>
        </form>
    </AuthenticationCard>
</template>
