Настройки
Шесть разделов: приоритеты, модули, цена клика, показать другу, данные, сброс. Всё, что меняет приложение целиком, — здесь.
Зачем этот экран
Настроек мало и они разные по опасности: от «включить вкладку» до «стереть всё без возможности вернуть». Поэтому раздел «Сброс» стоит последним, а обе его кнопки — красные и с подтверждением.
Что на экране
Приоритеты
Одна строка — «Готовые наборы» с названием текущего. Ведёт на экран наборов.
Модули

Три переключателя: «Навыки», «Достижения», «Наблюдения». Под ними — строка «Достижения» со счётчиком открытых, ведущая на экран достижений; она появляется, только когда модуль включён.
Выключенный модуль исчезает из приложения, но своих данных не теряет. Тумблер — про внимание, а не про удаление. Подробнее — «Модули».
Цена одного клика

Шесть значений: 15, 20, 25, 30, 45, 60 минут. Приписка под кнопками показывает, во что превратится вся накопленная история при выбранной цене.
Смена цены пересчитывает прошлое. Хранятся клики, а не часы, поэтому 100 блоков — это 50 часов при цене 30 и 100 часов при цене 60. Это осознанное поведение: единица учёта одна на всю историю.
Показать другу

Одна строка — «Демо-аккаунты». Открывает витрину чужих жизней, которые можно дать поклацать кому угодно, не показывая свои приоритеты.
Раздел стоит перед «Данными», а не рядом со сбросом, намеренно: действие безопасное и обратимое, а соседство с красной зоной читалось бы как угроза.
Данные

Четыре факта: где хранятся, с какого дня история, глубина хранения, клиент и его версия. Ниже — две кнопки: «Скачать копию данных» и «Восстановить из копии» (см. «Копия данных»).
Если синхронизация не работает, здесь стоит жёлтое предупреждение и строка «Только это устройство». Молчаливый откат на локальное хранилище выглядит как пропажа данных — на телефоне всё есть, на компьютере пусто, — поэтому он назван вслух.

В настоящем клиенте вместо этого стоит «Аккаунт Telegram» и предупреждения нет.

Кнопка «Добавить ярлык на главный экран» видна только в клиентах, которые это умеют (Bot API 8.0+). После добавления она пропадает, а вместо неё остаётся строка «Ярлык уже на главном экране».
Сброс

Две кнопки с разной глубиной: «Стереть историю» и «Сбросить кабинет». Что именно исчезает в каждом случае — на странице «Сброс».
Приписка внизу честно говорит про охват: в Telegram сброс удаляет данные из облака, то есть на всех устройствах сразу; в браузере — только здесь.
Как этим пользоваться
Понять, синхронизируются ли данные
Смотрите строку «Где хранятся». «Аккаунт Telegram» — да. «Только это устройство» — нет, и под фактами будет объяснение, почему.
Перенести данные на другое устройство вручную
Когда синхронизации нет, это единственный путь: «Скачать копию данных» здесь → «Восстановить из копии» там. Механика и подводные камни — в «Копии данных».
Убрать лишние вкладки
Выключите ненужный модуль. Если вы стояли на вкладке «Навыки» в этот момент, приложение само перебросит вас на главную.
Пределы и предупреждения
- Кнопки экспорта, импорта и сброса заблокированы, пока идёт другая операция: две одновременно — верный способ получить полуприменённое состояние.
- Строка «Клиент» — диагностическая: её содержимое пригодится, если что-то не работает именно в конкретном клиенте Telegram.
- Глубина хранения (13 месяцев) не настраивается.
- В демо-режиме приписка под сбросом дополняется предупреждением, что данные ненастоящие и никуда не пишутся.
- Внутри демо экран урезан: нет ни входа в аккаунт, ни копии, ни импорта, ни сброса. Всё это в демо и так мертво, но живая с виду кнопка «Стереть историю» в чужих руках объясняется дольше, чем прячется.
Чего здесь нельзя
- Сменить язык. Локаль берётся из Telegram; сейчас есть только русский.
- Сменить тему. Приложение только тёмное — это часть дизайна, а не недоделка.
- Настроить уведомления. Их нет вовсе, см. «Только в Telegram».
- Отключить хранение в облаке. Оно определяется клиентом, а не настройкой.
- Задать свою цену блока. Только шесть значений: произвольное число превратило бы клик в ручной ввод времени.
Рядом
Модули · Копия данных · Сброс · Данные и синхронизация · Наборы
Как это работает внутри
- Экран —
src/screens/SettingsScreen.tsx. - «Где хранятся» — это
store.kind === 'cloud' && !store.isDegraded()(src/telegram/cloudStorage.ts). Защёлкаbrokenпереводит сессию на localStorage навсегда при первой же ошибке облака: тихий откат туда-сюда был бы хуже честной деградации. - Флаг занятости
busyсериализует экспорт, импорт и сброс. homeScreen.status()имеет собственный таймаут 2500 мс (src/telegram/sdk.ts): некоторые клиенты объявляют метод и никогда не зовут колбэк. После нажатия статус перепроверяется через 3 секунды, и только успех выдаёт достижениеr4.- Значения цены —
BLOCK_OPTIONSвsrc/domain/types.ts; смена выдаётr9. - Экспорт выдаёт
r2, импорт —r3. - Экспорт использует ту же лестницу сохранения, что и обои (
src/wallpaper/save.ts), но с дополнительной ступенью: если клиент не даёт сохранять файлы, JSON уходит в буфер обмена — долгое нажатие спасает картинку, но не текст.