Trim login UI to simple email and bot buttons
This commit is contained in:
@@ -124,26 +124,23 @@ onMounted(async () => {
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<section class="mx-auto flex min-h-[calc(100vh-4rem)] w-full max-w-3xl items-center py-8">
|
<section class="mx-auto flex min-h-[calc(100vh-4rem)] w-full max-w-3xl items-center py-8">
|
||||||
<div class="card w-full border border-base-300 bg-base-100 shadow-xl">
|
<div class="card w-full bg-base-100 shadow-xl">
|
||||||
<div class="card-body p-5 md:p-8">
|
<div class="card-body p-5 md:p-8">
|
||||||
<div class="mb-4 text-center">
|
<div class="mb-4 text-center">
|
||||||
<h1 class="text-3xl font-extrabold">Вход в личный кабинет</h1>
|
<h1 class="text-3xl font-extrabold">Вход в личный кабинет</h1>
|
||||||
<p class="mt-1 text-sm text-base-content/70">
|
<p class="mt-1 text-sm text-base-content/70">Вход через e-mail</p>
|
||||||
Введите email и выберите способ входа.
|
|
||||||
</p>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div v-if="step === 'request'" class="space-y-4">
|
<div v-if="step === 'request'" class="space-y-4">
|
||||||
<fieldset class="fieldset rounded-box border border-base-300 bg-base-200/40 p-4">
|
<label class="label">
|
||||||
<legend class="fieldset-legend text-sm font-semibold">Email адрес</legend>
|
<span class="label-text font-semibold">E-mail</span>
|
||||||
<label class="label pb-1">На этот email придет код и он же пойдет в deep-link бота</label>
|
</label>
|
||||||
<input
|
<input
|
||||||
v-model="email"
|
v-model="email"
|
||||||
type="email"
|
type="email"
|
||||||
class="input input-bordered w-full"
|
class="input input-bordered input-primary w-full"
|
||||||
placeholder="name@company.com"
|
placeholder="name@company.com"
|
||||||
>
|
>
|
||||||
</fieldset>
|
|
||||||
|
|
||||||
<div class="grid gap-2 sm:grid-cols-2">
|
<div class="grid gap-2 sm:grid-cols-2">
|
||||||
<a
|
<a
|
||||||
@@ -174,29 +171,21 @@ onMounted(async () => {
|
|||||||
>
|
>
|
||||||
{{ requestCodeMutation.loading.value ? 'Отправляем…' : 'Получить код' }}
|
{{ requestCodeMutation.loading.value ? 'Отправляем…' : 'Получить код' }}
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
<p v-if="!telegramBotUrl || !maxBotUrl" class="text-xs text-warning">
|
|
||||||
Для кнопок бота нужно задать `NUXT_PUBLIC_TELEGRAM_BOT_URL` и `NUXT_PUBLIC_MAX_BOT_URL`.
|
|
||||||
</p>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div v-else class="space-y-4">
|
<div v-else class="space-y-4">
|
||||||
<div class="alert alert-info">
|
<h2 class="text-xl font-semibold">E-mail</h2>
|
||||||
Код отправлен на <span class="font-bold">{{ maskedEmail }}</span>.
|
<p class="text-sm text-base-content/70">{{ maskedEmail }}</p>
|
||||||
Действителен до: <span class="font-bold">{{ expiresAt }}</span>.
|
<label class="label">
|
||||||
</div>
|
<span class="label-text font-semibold">Код</span>
|
||||||
|
</label>
|
||||||
<fieldset class="fieldset rounded-box border border-base-300 bg-base-200/40 p-4">
|
<input
|
||||||
<legend class="fieldset-legend text-sm font-semibold">Код подтверждения</legend>
|
v-model="code"
|
||||||
<label class="label pb-1">Введите 6-значный код</label>
|
type="text"
|
||||||
<input
|
maxlength="6"
|
||||||
v-model="code"
|
class="input input-bordered input-primary w-full"
|
||||||
type="text"
|
placeholder="123456"
|
||||||
maxlength="6"
|
>
|
||||||
class="input input-bordered w-full"
|
|
||||||
placeholder="123456"
|
|
||||||
>
|
|
||||||
</fieldset>
|
|
||||||
|
|
||||||
<button
|
<button
|
||||||
class="btn btn-primary w-full"
|
class="btn btn-primary w-full"
|
||||||
@@ -209,6 +198,8 @@ onMounted(async () => {
|
|||||||
<button class="btn btn-ghost w-full" @click="step = 'request'">
|
<button class="btn btn-ghost w-full" @click="step = 'request'">
|
||||||
Вернуться
|
Вернуться
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
|
<p class="text-xs text-base-content/60">Код действует до {{ expiresAt }}</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div
|
<div
|
||||||
|
|||||||
Reference in New Issue
Block a user