From 4e3cc6e900f20a9ff2d5edb2b70bb65ac4c11655 Mon Sep 17 00:00:00 2001 From: Andrey Date: Fri, 17 Jul 2026 10:49:40 +0300 Subject: [PATCH] :lipstick: feat(auth): add glass panel and update email hint --- apps/internal-ui/src/features/auth/AuthLogin.tsx | 2 +- .../src/features/auth/AuthPasswordRecovery.tsx | 2 +- apps/internal-ui/src/features/auth/styles.css | 8 +++++--- tests/e2e/internal-ui.spec.ts | 2 +- 4 files changed, 8 insertions(+), 6 deletions(-) diff --git a/apps/internal-ui/src/features/auth/AuthLogin.tsx b/apps/internal-ui/src/features/auth/AuthLogin.tsx index e7703b2..af52af5 100644 --- a/apps/internal-ui/src/features/auth/AuthLogin.tsx +++ b/apps/internal-ui/src/features/auth/AuthLogin.tsx @@ -40,7 +40,7 @@ export function AuthLogin({ onLogin, onTotpChallenge, onRecover }: { onLogin: (u
{error &&
!Неверный email или пароль. Проверьте данные и попробуйте снова.
} - { setEmail(nextEmail); setError(false); }} placeholder="you@edevs.tech" error={error} /> + { setEmail(nextEmail); setError(false); }} placeholder="you@domain.ru" error={error} />
{ event.preventDefault(); onRecover(); }}>Восстановить доступ diff --git a/apps/internal-ui/src/features/auth/AuthPasswordRecovery.tsx b/apps/internal-ui/src/features/auth/AuthPasswordRecovery.tsx index 5a80358..1b689d1 100644 --- a/apps/internal-ui/src/features/auth/AuthPasswordRecovery.tsx +++ b/apps/internal-ui/src/features/auth/AuthPasswordRecovery.tsx @@ -101,7 +101,7 @@ export function AuthPasswordRecovery({ onBackToLogin }: { onBackToLogin: () => v - +

Если адрес зарегистрирован, отправим ссылку для сброса пароля. Ссылка действует 30 минут.

diff --git a/apps/internal-ui/src/features/auth/styles.css b/apps/internal-ui/src/features/auth/styles.css index b47ea17..4400677 100644 --- a/apps/internal-ui/src/features/auth/styles.css +++ b/apps/internal-ui/src/features/auth/styles.css @@ -11,7 +11,9 @@ width: 400px; max-width: 100%; padding: 26px 26px 24px; - background: #ffffff; + background: rgba(255, 255, 255, 0.9); + -webkit-backdrop-filter: blur(16px); + backdrop-filter: blur(16px); border: 1px solid #f0f0f0; border-radius: 14px; box-shadow: 0 6px 32px rgba(0, 0, 0, 0.18); @@ -62,8 +64,8 @@ } .auth-card { - /* Белая плашка, рамка и тень живут на .auth-box, чтобы бренд-блок, форма - и подпись составляли единый белый блок поверх фона auth-screen. */ + /* Плашка, рамка и тень живут на .auth-box, чтобы бренд-блок, форма + и подпись составляли единый матовый блок поверх фона auth-screen. */ } .auth-error { diff --git a/tests/e2e/internal-ui.spec.ts b/tests/e2e/internal-ui.spec.ts index 54b6504..b5066c4 100644 --- a/tests/e2e/internal-ui.spec.ts +++ b/tests/e2e/internal-ui.spec.ts @@ -140,7 +140,7 @@ async function login(page: Page, user: object) { await mockData(page); await page.route("**/api/v1/auth/login/", (route) => route.fulfill({ json: { authenticated: true, user } })); await page.goto("/"); - await page.getByPlaceholder("you@edevs.tech").fill("user@edevs.tech"); + await page.getByPlaceholder("you@domain.ru").fill("user@edevs.tech"); await page.getByPlaceholder("Пароль").fill("Password-123"); await page.getByRole("button", { name: "Войти" }).click(); }