import { renderHeader } from '../components/header.js'; import { state } from '../state.js'; export const pageMeta = { id: 'connect-device-view', title: 'Подключить устройство' }; export function render({ navigate }) { const screen = document.createElement('section'); screen.className = 'stack'; screen.append( renderHeader({ title: 'Подключить устройство', leftAction: { label: '←', onClick: () => navigate('device-view') }, }), ); const card = document.createElement('div'); card.className = 'card stack'; card.innerHTML = `

Выберите, какие ключи передать на подключаемое устройство

`; const rootToggle = card.querySelector('#connect-root'); const blockchainToggle = card.querySelector('#connect-blockchain'); const deviceToggle = card.querySelector('#connect-device'); deviceToggle.checked = true; rootToggle.addEventListener('change', () => { state.deviceConnect.root = rootToggle.checked; }); blockchainToggle.addEventListener('change', () => { state.deviceConnect.blockchain = blockchainToggle.checked; }); deviceToggle.addEventListener('change', () => { state.deviceConnect.device = true; deviceToggle.checked = true; }); const helpModal = document.createElement('div'); helpModal.className = 'modal-shell'; helpModal.hidden = true; helpModal.innerHTML = ` `; const openHelp = () => { helpModal.hidden = false; helpModal.querySelector('.modal-dialog').focus(); }; const closeHelp = () => { helpModal.hidden = true; }; card.querySelector('#tech-help').addEventListener('click', openHelp); card.querySelector('#open-qr').addEventListener('click', () => navigate('device-qr-view')); card.querySelector('#open-camera').addEventListener('click', () => navigate('device-camera-view')); helpModal.addEventListener('click', (event) => { const target = event.target; if (target instanceof HTMLElement && target.dataset.close === 'true') { closeHelp(); } }); helpModal.addEventListener('keydown', (event) => { if (event.key === 'Escape') { closeHelp(); } }); screen.append(card, helpModal); return screen; }