1
Frontend-State
s.zotov edited this page 2026-04-12 20:46:46 +00:00
This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Frontend State

Все переменные состояния App.svelte

Авторизация

Переменная Тип Описание
currentUser object {id, login, name, role, projects, theme, activePage, previewZoom}
authChecked bool Проверка авторизации завершена
loginForm object {login, password}
loginError string Ошибка логина
loginLoading bool
loginBg string Случайный фон из 5 изображений

Блоки

Переменная Тип Описание
availableBlocks array Блоки из Block.pug
assembledBlocks array Текущие блоки в конструкторе. Каждый: {id, name, content, collapsed, schema, addSpacing, spacing, segment, swapCenter}
customBlocksList array Кастомные блоки из settings
allBlocks array Merged available + custom

Гендер

Переменная Тип Описание
currentGenderVersion string 'female' / 'male'
segmentFlipped bool Состояние toggle flip
partsFiles array Список pug-файлов header/footer

Превью

Переменная Тип Описание
previewHtml string HTML с подстановкой Mindbox
rawPreviewHtml string HTML без Mindbox
previewLoading bool
previewError string
previewGeneratedAt string ISO timestamp
previewStale bool Есть несохранённые изменения
previewSourcePug string PUG при последнем рендере
previewZoom number 40-100
outputPanelMode string 'pug' / 'preview' / 'html'
previewContentWidth/Height number Размеры контента
previewScale number Масштаб для viewport

Фид / Mindbox

Переменная Тип Описание
unavailableProducts array Товары не в наличии
feedSyncedAt number Timestamp последней синхронизации
suggestForProduct object Товар для замены
suggestResults array Рекомендации замены

FTP

Переменная Тип Описание
showFtpGalleryModal bool
ftpGalleryImages array Файлы в галерее
ftpGalleryFolder string Текущая папка
ftpGalleryCache object {folder: files[]}
ftpUploading bool
ftpUploadProgress string Текст прогресса

План / Yonote

Переменная Тип Описание
planRows array Строки из Yonote
planCalMonth Date Текущий месяц календаря
planCalSelectedDate string Выбранная дата
planShowDone bool Показывать отправленные
planPollingTimer number ID интервала (3 мин)
assemblyInfo object Данные карточки сборки
Переменная Тип Описание
spellCheckActive bool
spellErrors array Найденные ошибки
spellerHtml string HTML с метками ошибок
linkCheckActive bool
linkCheckResults array Результаты проверки

Письма

Переменная Тип Описание
letters array Все письма юзера
currentLetterId string Текущее письмо
currentLetterName/Title/Date string Поля письма
history array Undo stack (макс 50)
isDirty bool Есть несохранённые изменения

UI

Переменная Тип Описание
theme string 'light' / 'dark'
activePage string 'builder' / 'settings' / 'presets' / 'notes' / 'plan' / 'stats' / 'admin'
settingsTab string Активная вкладка настроек
toasts array Уведомления

localStorage

Ключ Описание
va-theme 'light' / 'dark'
va-active-page Последняя страница
va-previewZoom Масштаб превью
va-plan-cache Кэш плана {rows, ts}

Cookies

Cookie Описание
va_token Сессия (HttpOnly, Secure, SameSite=Strict, 7 дней)

Keyboard Shortcuts

Комбинация Действие
Ctrl/Cmd + S Сохранить
Ctrl/Cmd + G Рендер превью
Ctrl/Cmd + Z Undo (только вне input/textarea)
Shift + Enter Вставить <br> в поле блока

CSS Темы

Light (:root)

--bg: #ffffff
--text: #130F33
--accent: #130F33
--accent-secondary: #AAC8C8
--panel: #ffffff
--pill: #f4f4f6

Dark (body.theme-dark)

--bg: #130F33
--text: #e4e7ec
--accent: #AAC8C8
--accent-contrast: #130F33
--panel: #1a1545
--pill: #221c52

Акцентный цвет проекта настраивается в settings → accentColor и устанавливается через CSS custom properties --project-accent.