UI: обновить экраны входа

This commit is contained in:
AidarKC 2026-06-20 20:15:40 +04:00
parent fec5e49304
commit d0e7998650
3 changed files with 19 additions and 16 deletions

View File

@ -1,2 +1,2 @@
client.version=1.2.225
server.version=1.2.211
client.version=1.2.226
server.version=1.2.212

View File

@ -60,7 +60,7 @@ function resetCodeCard(resultWrap, shortCodeEl, statusHintEl, onlineHintEl, expi
export function render({ navigate }) {
const screen = document.createElement('section');
screen.className = 'stack';
screen.className = 'stack auth-screen auth-screen--lower';
let pollTimer = 0;
let countdownTimer = 0;
let activePairingId = '';
@ -77,6 +77,10 @@ export function render({ navigate }) {
}),
);
const panel = document.createElement('section');
panel.className = 'login-panel login-panel--wide stack';
panel.innerHTML = '<h1 class="login-panel-title">Войти через другое устройство</h1>';
const formCard = document.createElement('div');
formCard.className = 'card stack';
formCard.innerHTML = `
@ -387,6 +391,7 @@ export function render({ navigate }) {
resultActions.append(cancelBtn);
resultWrap.append(resultActions);
screen.append(formCard, status, resultWrap);
panel.append(formCard, status, resultWrap);
screen.append(panel);
return screen;
}

View File

@ -4,29 +4,23 @@ export const pageMeta = { id: 'login-view', title: 'Войти', showAppChrome:
export function render({ navigate }) {
const screen = document.createElement('section');
screen.className = 'stack';
const cameraButton = document.createElement('button');
cameraButton.className = 'primary-btn';
cameraButton.type = 'button';
cameraButton.textContent = 'Отсканировать QR-код';
cameraButton.addEventListener('click', () => navigate('login-camera-view'));
screen.className = 'stack auth-screen auth-screen--lower';
const loginButton = document.createElement('button');
loginButton.className = 'ghost-btn';
loginButton.type = 'button';
loginButton.textContent = 'Войти по логину';
loginButton.textContent = 'Войти по паролю';
loginButton.addEventListener('click', () => navigate('login-password-view'));
const otherDeviceButton = document.createElement('button');
otherDeviceButton.className = 'text-btn';
otherDeviceButton.className = 'ghost-btn';
otherDeviceButton.type = 'button';
otherDeviceButton.textContent = 'Войти через другое устройство';
otherDeviceButton.addEventListener('click', () => navigate('login-other-device-view'));
const actions = document.createElement('div');
actions.className = 'auth-actions login-actions-wide';
actions.append(cameraButton, loginButton, otherDeviceButton);
actions.append(loginButton, otherDeviceButton);
const backButton = document.createElement('button');
backButton.className = 'ghost-btn';
@ -34,13 +28,17 @@ export function render({ navigate }) {
backButton.textContent = 'Назад';
backButton.addEventListener('click', () => navigate('start-view'));
const panel = document.createElement('section');
panel.className = 'login-panel stack';
panel.innerHTML = '<h1 class="login-panel-title">Войти</h1>';
panel.append(actions, backButton);
screen.append(
renderHeader({
title: 'Войти',
leftAction: { label: '←', onClick: () => navigate('start-view') },
}),
actions,
backButton,
panel,
);
return screen;