add debug update chat list

This commit is contained in:
cheykrym 2025-10-06 05:51:32 +03:00
parent 851f5f2f3f
commit c2647fa22e
3 changed files with 335 additions and 492 deletions

View File

@ -94,6 +94,14 @@ struct TopBarView: View {
.imageScale(.large)
.foregroundColor(.primary)
}
// Кнопка поиска
Button(action: {
NotificationCenter.default.post(name: .debugRefreshChats, object: nil)
}) {
Text(NSLocalizedString("DEBUG UPDATE", comment: ""))
.foregroundColor(.primary)
}
} else if isProfileTab {
NavigationLink(destination: SettingsView(viewModel: viewModel)) {
Image(systemName: "wrench")

View File

@ -1,6 +1,7 @@
{
"sourceLanguage": "ru",
"strings": {
"%lld": {},
"@%@": {
"localizations": {
"en": {
@ -11,24 +12,23 @@
}
}
},
"%lld" : {
},
"🌍" : {
"Chat ID:": {},
"Companion ID:": {},
"DEBUG UPDATE": {
"localizations": {
"en": {
"stringUnit": {
"state": "translated",
"value" : "🌍"
}
}
"value": "DEBUG UPDATE"
}
},
"Chat ID:" : {
},
"Companion ID:" : {
"ru": {
"stringUnit": {
"state": "translated",
"value": "DEBUG UPDATE"
}
}
}
},
"Fun Fest": {
"comment": "Fun Fest",
@ -61,18 +61,7 @@
}
}
},
"profile_down_text_1" : {
},
"profile_down_text_2" : {
},
"profile_down_text_3" : {
},
"Push-уведомления" : {
},
"Push-уведомления": {},
"Yobble": {
"localizations": {
"en": {
@ -83,21 +72,14 @@
}
}
},
"Активные сессии" : {
},
"Без звука (скоро)" : {
},
"Безопасность" : {
},
"Ваше предложение" : {
},
"Вложение" : {
},
"profile_down_text_1": {},
"profile_down_text_2": {},
"profile_down_text_3": {},
"Активные сессии": {},
"Без звука (скоро)": {},
"Безопасность": {},
"Ваше предложение": {},
"Вложение": {},
"Войти": {
"localizations": {
"en": {
@ -108,24 +90,14 @@
}
}
},
"Вы" : {
},
"Вы предложили: %@" : {
},
"Выйти из аккаунта" : {
},
"Вы": {},
"Вы предложили: %@": {},
"Выйти из аккаунта": {},
"Где найти сохранённые черновики?": {
"comment": "FAQ question: drafts"
},
"Данные" : {
},
"Двухфакторная аутентификация" : {
},
"Данные": {},
"Двухфакторная аутентификация": {},
"Добавить друзей": {
"comment": "Add friends",
"localizations": {
@ -137,33 +109,15 @@
}
}
},
"Другое" : {
},
"Заглушка: Push-уведомления" : {
},
"Заглушка: Активные сессии" : {
},
"Заглушка: Двухфакторная аутентификация" : {
},
"Заглушка: Другие настройки" : {
},
"Заглушка: Обратная связь" : {
},
"Заглушка: Сменить пароль" : {
},
"Заглушка: Хранилище данных" : {
},
"Загружаем чаты…" : {
},
"Другое": {},
"Заглушка: Push-уведомления": {},
"Заглушка: Активные сессии": {},
"Заглушка: Двухфакторная аутентификация": {},
"Заглушка: Другие настройки": {},
"Заглушка: Обратная связь": {},
"Заглушка: Сменить пароль": {},
"Заглушка: Хранилище данных": {},
"Загружаем чаты…": {},
"Загрузка...": {
"localizations": {
"en": {
@ -185,9 +139,7 @@
}
}
},
"Закрепить (скоро)" : {
},
"Закрепить (скоро)": {},
"Закрыть": {
"comment": "Закрыть",
"localizations": {
@ -210,15 +162,9 @@
}
}
},
"Здесь не будут чаты" : {
},
"Идеи" : {
},
"Избранные сообщения" : {
},
"Здесь не будут чаты": {},
"Идеи": {},
"Избранные сообщения": {},
"Инвайт-код (необязательно)": {
"comment": "Инвайт-код",
"localizations": {
@ -247,9 +193,7 @@
"Как связаться с поддержкой?": {
"comment": "FAQ question: support"
},
"Какая вкладка вам нужна?" : {
},
"Какая вкладка вам нужна?": {},
"Корзина": {
"comment": "Cart",
"localizations": {
@ -272,12 +216,8 @@
}
}
},
"Лента" : {
},
"Лицо" : {
},
"Лента": {},
"Лицо": {},
"Логин": {
"comment": "Логин",
"localizations": {
@ -300,9 +240,7 @@
}
}
},
"Логин уже занят." : {
},
"Логин уже занят.": {},
"Мини-приложения": {
"comment": "Applets",
"localizations": {
@ -336,18 +274,12 @@
}
}
},
"Мой профиль" : {
},
"Мы планируем заменить вкладку. Поделитесь, что бы вы хотели видеть здесь чаще всего." : {
},
"Мой профиль": {},
"Мы планируем заменить вкладку. Поделитесь, что бы вы хотели видеть здесь чаще всего.": {},
"Напишите нам через форму обратной связи в разделе \"Поддержка\".": {
"comment": "FAQ answer: support"
},
"Например: закладки, друзья, активность..." : {
},
"Например: закладки, друзья, активность...": {},
"Настройки": {
"comment": "Settings",
"localizations": {
@ -359,102 +291,46 @@
}
}
},
"Не удалось загрузить список чатов." : {
},
"Не удалось загрузить чаты." : {
},
"Не удалось обработать данные чатов." : {
},
"Не удалось обработать ответ сервера." : {
},
"Не удалось сериализовать данные запроса." : {
},
"Неверный запрос (400)." : {
},
"Неверный код приглашения." : {
},
"Не удалось загрузить список чатов.": {},
"Не удалось загрузить чаты.": {},
"Не удалось обработать данные чатов.": {},
"Не удалось обработать ответ сервера.": {},
"Не удалось сериализовать данные запроса.": {},
"Неверный запрос (400).": {},
"Неверный код приглашения.": {},
"Неверный логин": {
"comment": "Неверный логин"
},
"Неверный логин или пароль." : {
},
"Неверный логин или пароль.": {},
"Неверный пароль": {
"comment": "Неверный пароль"
},
"Неизвестная ошибка" : {
},
"Неизвестная ошибка." : {
},
"Неизвестная ошибка. Попробуйте позже." : {
},
"Неизвестный" : {
},
"Неизвестный пользователь" : {
},
"Некорректный ответ от сервера." : {
},
"Неизвестная ошибка": {},
"Неизвестная ошибка.": {},
"Неизвестная ошибка. Попробуйте позже.": {},
"Неизвестный": {},
"Неизвестный пользователь": {},
"Некорректный ответ от сервера.": {},
"Нет аккаунта? Регистрация": {
"comment": "Регистрация"
},
"Нет сообщений" : {
},
"О приложении" : {
},
"Обновить" : {
},
"Обратная связь" : {
},
"Описание" : {
},
"Отображаемое имя" : {
},
"Отправить предложение" : {
},
"Отправляем..." : {
},
"Ошибка авторизации" : {
},
"Ошибка при деавторизации." : {
},
"Нет сообщений": {},
"О приложении": {},
"Обновить": {},
"Обратная связь": {},
"Описание": {},
"Отображаемое имя": {},
"Отправить предложение": {},
"Отправляем...": {},
"Ошибка авторизации": {},
"Ошибка при деавторизации.": {},
"Ошибка регистрация": {
"comment": "Ошибка"
},
"Ошибка сервера (%@)." : {
},
"Ошибка сервера: %@" : {
},
"Ошибка сети: %@" : {
},
"Ошибка соединения с сервером." : {
},
"Ошибка сервера (%@).": {},
"Ошибка сервера: %@": {},
"Ошибка сети: %@": {},
"Ошибка соединения с сервером.": {},
"Пароли не совпадают": {
"comment": "Пароли не совпадают"
},
@ -467,18 +343,12 @@
"Перейдите в раздел \"Настройки > Сменить пароль\" и следуйте инструкциям.": {
"comment": "FAQ answer: reset password"
},
"Повторить" : {
},
"Поддержка" : {
},
"Повторить": {},
"Поддержка": {},
"Подтверждение пароля": {
"comment": "Подтверждение пароля"
},
"Пока что у вас нет чатов" : {
},
"Пока что у вас нет чатов": {},
"Помощь": {
"comment": "Help Center",
"localizations": {
@ -490,54 +360,24 @@
}
}
},
"Приглашение достигло лимита использования." : {
},
"Приглашение истекло." : {
},
"Приглашение не активно." : {
},
"Приложение" : {
},
"Применить" : {
},
"Произошла ошибка." : {
},
"Профиль" : {
},
"Публичная информация" : {
},
"Приглашение достигло лимита использования.": {},
"Приглашение истекло.": {},
"Приглашение не активно.": {},
"Приложение": {},
"Применить": {},
"Произошла ошибка.": {},
"Профиль": {},
"Публичная информация": {},
"Регистрация": {
"comment": "Регистрация"
},
"Регистрация временно недоступна." : {
},
"Регистрация выполнена, но вход не удался." : {
},
"Регистрация запрещена." : {
},
"Регистрация и вход выполнены успешно." : {
},
"Редактировать профиль" : {
},
"Сервер не отвечает. Попробуйте позже." : {
},
"Сессия истекла. Войдите снова." : {
},
"Регистрация временно недоступна.": {},
"Регистрация выполнена, но вход не удался.": {},
"Регистрация запрещена.": {},
"Регистрация и вход выполнены успешно.": {},
"Редактировать профиль": {},
"Сервер не отвечает. Попробуйте позже.": {},
"Сессия истекла. Войдите снова.": {},
"Скан": {
"comment": "Scan",
"localizations": {
@ -549,27 +389,13 @@
}
}
},
"Слишком много запросов." : {
},
"Сменить пароль" : {
},
"Сообщение" : {
},
"Спасибо!" : {
},
"Тёмная тема" : {
},
"Уведомления" : {
},
"Удалить чат (скоро)" : {
},
"Слишком много запросов.": {},
"Сменить пароль": {},
"Сообщение": {},
"Спасибо!": {},
"Тёмная тема": {},
"Уведомления": {},
"Удалить чат (скоро)": {},
"Центр авторов": {
"comment": "Creator Center",
"localizations": {
@ -584,12 +410,8 @@
"Частые вопросы": {
"comment": "FAQ navigation title"
},
"Чат" : {
},
"Чаты" : {
},
"Чат": {},
"Чаты": {},
"Черновики": {
"comment": "Drafts",
"localizations": {
@ -604,11 +426,17 @@
"Черновики доступны в боковом меню в разделе Drafts.": {
"comment": "FAQ answer: drafts"
},
"Экран чата в разработке" : {
},
"Язык" : {
"Экран чата в разработке": {},
"Язык": {},
"🌍": {
"localizations": {
"en": {
"stringUnit": {
"state": "translated",
"value": "🌍"
}
}
}
}
},
"version": "1.0"

View File

@ -18,6 +18,9 @@ struct ChatsTab: View {
.onAppear {
viewModel.loadInitialChats()
}
.onReceive(NotificationCenter.default.publisher(for: .debugRefreshChats)) { _ in
viewModel.refresh()
}
}
@ViewBuilder
@ -526,3 +529,7 @@ private struct ChatPlaceholderView: View {
return NSLocalizedString("Чат", comment: "")
}
}
extension Notification.Name {
static let debugRefreshChats = Notification.Name("debugRefreshChats")
}