feat: support mobile update checks

This commit is contained in:
Bohdan Triapitsyn
2026-07-07 13:39:50 +03:00
parent d45cae485c
commit 4a62a2aeab
14 changed files with 78 additions and 16 deletions
+2
View File
@@ -17,6 +17,8 @@ export type UpdateInfo = {
currentVersion: string;
body?: string;
date?: string;
releaseUrl?: string;
downloadUrl?: string;
nextSuggestedCheckInSec?: number;
// Web-specific fields
packageManager?: string;
+1
View File
@@ -2594,6 +2594,7 @@ export const dict = {
'updateDialog.status.downloading': 'Downloading...',
'updateDialog.actions.restartToUpdate': 'Restart to Update',
'updateDialog.actions.updateNow': 'Update Now',
'updateDialog.actions.openMobileUpdate': 'Open update',
'updateDialog.status.updating': 'Updating...',
'updateDialog.error.updateFailed': 'Update failed',
'updateDialog.error.takingLonger': 'Update is taking longer than expected. Wait a bit and refresh, or run: openchamber update',
+1
View File
@@ -2560,6 +2560,7 @@ export const dict: Record<I18nKey, string> = {
"updateDialog.status.downloading": "Descargando...",
"updateDialog.actions.restartToUpdate": "Reiniciar para actualizar",
"updateDialog.actions.updateNow": "Actualizar ahora",
"updateDialog.actions.openMobileUpdate": "Abrir actualización",
"updateDialog.status.updating": "Actualizando...",
"updateDialog.error.updateFailed": "No se pudo actualizar",
"updateDialog.error.takingLonger": "La actualización está tardando más de lo esperado. Espera un poco y refresca, o ejecuta: openchamber update",
+1
View File
@@ -2364,6 +2364,7 @@ export const dict = {
'updateDialog.status.downloading': 'Téléchargement...',
'updateDialog.actions.restartToUpdate': 'Redémarrer pour mettre à jour',
'updateDialog.actions.updateNow': 'Mettre à jour maintenant',
'updateDialog.actions.openMobileUpdate': 'Ouvrir la mise à jour',
'updateDialog.changelog.title': 'Nouveautés',
'updateDialog.status.updating': 'Mise à jour...',
'updateDialog.error.updateFailed': 'La mise à jour a échoué',
+1
View File
@@ -2590,6 +2590,7 @@ export const dict: Record<I18nKey, string> = {
'updateDialog.status.downloading': 'ダウンロード中...',
'updateDialog.actions.restartToUpdate': '再起動して更新',
'updateDialog.actions.updateNow': '今すぐ更新',
'updateDialog.actions.openMobileUpdate': '更新を開く',
'updateDialog.status.updating': '更新中...',
'updateDialog.error.updateFailed': '更新に失敗しました',
'updateDialog.error.takingLonger': '更新に予想以上に時間がかかっています。しばらく待ってから更新するか、次を実行: openchamber update',
+1
View File
@@ -2594,6 +2594,7 @@ export const dict: Record<I18nKey, string> = {
'updateDialog.status.downloading': '다운로드 중…',
'updateDialog.actions.restartToUpdate': '업데이트를 위해 재시작',
'updateDialog.actions.updateNow': '지금 업데이트',
'updateDialog.actions.openMobileUpdate': '업데이트 열기',
'updateDialog.status.updating': '업데이트 중…',
'updateDialog.error.updateFailed': '업데이트 실패',
'updateDialog.error.takingLonger': '업데이트가 예상보다 오래 걸립니다. 잠시 기다린 뒤 새로고침하거나 `openchamber update`를 실행하세요.',
+1
View File
@@ -2562,6 +2562,7 @@ export const dict: Record<I18nKey, string> = {
'updateDialog.actions.copied': 'Skopiowano!',
'updateDialog.actions.copyCommand': 'Kopiuj polecenie',
'updateDialog.actions.downloadUpdate': 'Pobierz aktualizację',
'updateDialog.actions.openMobileUpdate': 'Otwórz aktualizację',
'updateDialog.actions.restartToUpdate': 'Uruchom ponownie, aby zaktualizować',
'updateDialog.actions.updateNow': 'Aktualizuj teraz',
'updateDialog.error.takingLonger': 'Aktualizacja trwa dłużej niż oczekiwano. Poczekaj chwilę i odśwież albo uruchom: openchamber update',
@@ -2560,6 +2560,7 @@ export const dict: Record<I18nKey, string> = {
"updateDialog.status.downloading": "Baixando...",
"updateDialog.actions.restartToUpdate": "Reiniciar para atualizar",
"updateDialog.actions.updateNow": "Atualizar agora",
"updateDialog.actions.openMobileUpdate": "Abrir atualização",
"updateDialog.status.updating": "Atualizando...",
"updateDialog.error.updateFailed": "Não foi possível atualizar",
"updateDialog.error.takingLonger": "A atualização está demorando mais do que o esperado. Aguarde um pouco e atualize, ou execute: openchamber update",
+1
View File
@@ -2560,6 +2560,7 @@ export const dict: Record<I18nKey, string> = {
"updateDialog.status.downloading": "Завантаження...",
"updateDialog.actions.restartToUpdate": "Перезапустити, щоб оновити",
"updateDialog.actions.updateNow": "Оновити зараз",
"updateDialog.actions.openMobileUpdate": "Відкрити оновлення",
"updateDialog.status.updating": "Оновлення...",
"updateDialog.error.updateFailed": "Помилка оновлення",
"updateDialog.error.takingLonger": "Оновлення триває довше, ніж очікувалося. Зачекайте трохи та оновіть або запустіть: openchamber update",
@@ -2560,6 +2560,7 @@ export const dict: Record<I18nKey, string> = {
'updateDialog.status.downloading': '下载中...',
'updateDialog.actions.restartToUpdate': '重启以更新',
'updateDialog.actions.updateNow': '立即更新',
'updateDialog.actions.openMobileUpdate': '打开更新',
'updateDialog.status.updating': '更新中...',
'updateDialog.error.updateFailed': '更新失败',
'updateDialog.error.takingLonger': '更新耗时超出预期。请稍等后刷新,或运行:openchamber update',
@@ -2557,6 +2557,7 @@ export const dict: Record<I18nKey, string> = {
'updateDialog.status.downloading': '下載中...',
'updateDialog.actions.restartToUpdate': '重新啟動以更新',
'updateDialog.actions.updateNow': '立即更新',
'updateDialog.actions.openMobileUpdate': '開啟更新',
'updateDialog.status.updating': '更新中...',
'updateDialog.error.updateFailed': '更新失敗',
'updateDialog.error.takingLonger': '更新耗時超出預期。請稍等後重新整理,或執行:openchamber update',