Skip to content

Commit b53d774

Browse files
committed
Rework toasts
1 parent f91727e commit b53d774

9 files changed

Lines changed: 122 additions & 42 deletions

File tree

frontend/viewer/src/lib/auth/LoginButton.svelte

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
import {useAuthService} from '$lib/services/service-provider';
2121
import {Button} from '$lib/components/ui/button';
2222
import {AppNotification} from '$lib/notifications/notifications';
23+
import {openUrl} from '$lib/services/url-opener';
2324
2425
const authService = useAuthService();
2526
const shouldUseSystemWebView = useSystemWebView(authService);
@@ -43,12 +44,24 @@
4344
loading = true;
4445
try {
4546
const result = await authService.signInWebView(server);
47+
4648
if (result === LoginResult.Success) {
4749
statusChange('logged-in');
4850
} else if (result === LoginResult.Offline) {
49-
AppNotification.display($t`You're offline. Connect to the internet to log in.`, {type: 'warning', timeout: 'short'});
51+
AppNotification.displayAction(
52+
$t`You appear to be offline. Can you reach ${server.displayName}?`,
53+
{
54+
label: $t`Open in browser`,
55+
callback: () => {
56+
void openUrl(server.authority);
57+
return {dismiss: true};
58+
},
59+
},
60+
{type: 'warning'},
61+
);
62+
} else {
63+
AppNotification.display($t`Login cancelled.`, {type: 'warning', timeout: 'short'});
5064
}
51-
// LoginResult.Cancelled: the user backed out, so stay quiet
5265
} finally {
5366
loading = false;
5467
}
@@ -63,6 +76,7 @@
6376
loading = false;
6477
}
6578
}
79+
6680
</script>
6781

6882
{#if status.loggedIn}

frontend/viewer/src/locales/en.po

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1117,6 +1117,11 @@ msgstr "Local only"
11171117
msgid "Login"
11181118
msgstr "Login"
11191119

1120+
#. Toast shown when the user closes or cancels the login dialog before signing in.
1121+
#: src/lib/auth/LoginButton.svelte
1122+
msgid "Login cancelled."
1123+
msgstr "Login cancelled."
1124+
11201125
#. Default button label on the login button when not yet authenticated. Clicking opens the login flow for a server.
11211126
#: src/lib/auth/LoginButton.svelte
11221127
#: src/lib/auth/LoginButton.svelte
@@ -1404,6 +1409,11 @@ msgstr "Open"
14041409
msgid "Open Data Directory"
14051410
msgstr "Open Data Directory"
14061411

1412+
#. Action button on the offline-login warning toast; opens the server's site in a browser so the user can check the connection.
1413+
#: src/lib/auth/LoginButton.svelte
1414+
msgid "Open in browser"
1415+
msgstr "Open in browser"
1416+
14071417
#. Button label
14081418
#: src/lib/components/OpenInFieldWorksButton.svelte
14091419
msgid "Open in FieldWorks"
@@ -2161,6 +2171,11 @@ msgstr "Writing systems"
21612171
msgid "Writing Systems"
21622172
msgstr "Writing Systems"
21632173

2174+
#. Warning toast shown when a login attempt can't reach the server. {0} is the server name (e.g. "Lexbox").
2175+
#: src/lib/auth/LoginButton.svelte
2176+
msgid "You appear to be offline. Can you reach {0}?"
2177+
msgstr "You appear to be offline. Can you reach {0}?"
2178+
21642179
#. Status message when no updates are available
21652180
#: src/lib/updates/UpdateDialogContent.svelte
21662181
msgid "You are running the latest version."
@@ -2181,8 +2196,3 @@ msgstr "You don't have permission to download project {0} from {1}"
21812196
#: src/home/Server.svelte
21822197
msgid "You have already downloaded the {0} project"
21832198
msgstr "You have already downloaded the {0} project"
2184-
2185-
#. Transient warning toast shown when the user taps Log in while offline
2186-
#: src/lib/auth/LoginButton.svelte
2187-
msgid "You're offline. Connect to the internet to log in."
2188-
msgstr "You're offline. Connect to the internet to log in."

frontend/viewer/src/locales/es.po

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1122,6 +1122,11 @@ msgstr "Sólo local"
11221122
msgid "Login"
11231123
msgstr "Inicio de sesión"
11241124

1125+
#. Toast shown when the user closes or cancels the login dialog before signing in.
1126+
#: src/lib/auth/LoginButton.svelte
1127+
msgid "Login cancelled."
1128+
msgstr ""
1129+
11251130
#. Default button label on the login button when not yet authenticated. Clicking opens the login flow for a server.
11261131
#: src/lib/auth/LoginButton.svelte
11271132
#: src/lib/auth/LoginButton.svelte
@@ -1409,6 +1414,10 @@ msgstr "Abrir"
14091414
msgid "Open Data Directory"
14101415
msgstr "Directorio de datos abiertos"
14111416

1417+
#: src/lib/auth/LoginButton.svelte
1418+
msgid "Open in browser"
1419+
msgstr ""
1420+
14121421
#. Button label
14131422
#: src/lib/components/OpenInFieldWorksButton.svelte
14141423
msgid "Open in FieldWorks"
@@ -2166,6 +2175,10 @@ msgstr "Sistemas de escritura"
21662175
msgid "Writing Systems"
21672176
msgstr "Sistemas de escritura"
21682177

2178+
#: src/lib/auth/LoginButton.svelte
2179+
msgid "You appear to be offline. Can you reach {0}?"
2180+
msgstr ""
2181+
21692182
#. Status message when no updates are available
21702183
#: src/lib/updates/UpdateDialogContent.svelte
21712184
msgid "You are running the latest version."
@@ -2186,8 +2199,3 @@ msgstr "No tiene permiso para descargar el proyecto {0} desde {1}"
21862199
#: src/home/Server.svelte
21872200
msgid "You have already downloaded the {0} project"
21882201
msgstr "Ya has descargado el proyecto {0}"
2189-
2190-
#. Transient warning toast shown when the user taps Log in while offline
2191-
#: src/lib/auth/LoginButton.svelte
2192-
msgid "You're offline. Connect to the internet to log in."
2193-
msgstr ""

frontend/viewer/src/locales/fr.po

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1122,6 +1122,11 @@ msgstr "Uniquement au niveau local"
11221122
msgid "Login"
11231123
msgstr "Connexion"
11241124

1125+
#. Toast shown when the user closes or cancels the login dialog before signing in.
1126+
#: src/lib/auth/LoginButton.svelte
1127+
msgid "Login cancelled."
1128+
msgstr ""
1129+
11251130
#. Default button label on the login button when not yet authenticated. Clicking opens the login flow for a server.
11261131
#: src/lib/auth/LoginButton.svelte
11271132
#: src/lib/auth/LoginButton.svelte
@@ -1409,6 +1414,10 @@ msgstr "Ouvert"
14091414
msgid "Open Data Directory"
14101415
msgstr "Répertoire des données ouvertes"
14111416

1417+
#: src/lib/auth/LoginButton.svelte
1418+
msgid "Open in browser"
1419+
msgstr ""
1420+
14121421
#. Button label
14131422
#: src/lib/components/OpenInFieldWorksButton.svelte
14141423
msgid "Open in FieldWorks"
@@ -2166,6 +2175,10 @@ msgstr "Systèmes d'écriture"
21662175
msgid "Writing Systems"
21672176
msgstr "Systèmes d'écriture"
21682177

2178+
#: src/lib/auth/LoginButton.svelte
2179+
msgid "You appear to be offline. Can you reach {0}?"
2180+
msgstr ""
2181+
21692182
#. Status message when no updates are available
21702183
#: src/lib/updates/UpdateDialogContent.svelte
21712184
msgid "You are running the latest version."
@@ -2186,8 +2199,3 @@ msgstr "Vous n'êtes pas autorisé(e) de télécharger le projet {0} depuis {1}"
21862199
#: src/home/Server.svelte
21872200
msgid "You have already downloaded the {0} project"
21882201
msgstr "Vous avez déjà téléchargé le projet {0}"
2189-
2190-
#. Transient warning toast shown when the user taps Log in while offline
2191-
#: src/lib/auth/LoginButton.svelte
2192-
msgid "You're offline. Connect to the internet to log in."
2193-
msgstr ""

frontend/viewer/src/locales/id.po

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1122,6 +1122,11 @@ msgstr "Hanya lokal"
11221122
msgid "Login"
11231123
msgstr "Masuk"
11241124

1125+
#. Toast shown when the user closes or cancels the login dialog before signing in.
1126+
#: src/lib/auth/LoginButton.svelte
1127+
msgid "Login cancelled."
1128+
msgstr ""
1129+
11251130
#. Default button label on the login button when not yet authenticated. Clicking opens the login flow for a server.
11261131
#: src/lib/auth/LoginButton.svelte
11271132
#: src/lib/auth/LoginButton.svelte
@@ -1409,6 +1414,10 @@ msgstr "Buka"
14091414
msgid "Open Data Directory"
14101415
msgstr "Direktori Data Terbuka"
14111416

1417+
#: src/lib/auth/LoginButton.svelte
1418+
msgid "Open in browser"
1419+
msgstr ""
1420+
14121421
#. Button label
14131422
#: src/lib/components/OpenInFieldWorksButton.svelte
14141423
msgid "Open in FieldWorks"
@@ -2166,6 +2175,10 @@ msgstr "Sistem penulisan"
21662175
msgid "Writing Systems"
21672176
msgstr "Sistem Penulisan"
21682177

2178+
#: src/lib/auth/LoginButton.svelte
2179+
msgid "You appear to be offline. Can you reach {0}?"
2180+
msgstr ""
2181+
21692182
#. Status message when no updates are available
21702183
#: src/lib/updates/UpdateDialogContent.svelte
21712184
msgid "You are running the latest version."
@@ -2186,8 +2199,3 @@ msgstr "Anda tidak memiliki izin untuk mengunduh proyek {0} dari {1}"
21862199
#: src/home/Server.svelte
21872200
msgid "You have already downloaded the {0} project"
21882201
msgstr "Anda telah mengunduh proyek {0}"
2189-
2190-
#. Transient warning toast shown when the user taps Log in while offline
2191-
#: src/lib/auth/LoginButton.svelte
2192-
msgid "You're offline. Connect to the internet to log in."
2193-
msgstr ""

frontend/viewer/src/locales/ko.po

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1122,6 +1122,11 @@ msgstr "로컬 전용"
11221122
msgid "Login"
11231123
msgstr "로그인"
11241124

1125+
#. Toast shown when the user closes or cancels the login dialog before signing in.
1126+
#: src/lib/auth/LoginButton.svelte
1127+
msgid "Login cancelled."
1128+
msgstr ""
1129+
11251130
#. Default button label on the login button when not yet authenticated. Clicking opens the login flow for a server.
11261131
#: src/lib/auth/LoginButton.svelte
11271132
#: src/lib/auth/LoginButton.svelte
@@ -1409,6 +1414,10 @@ msgstr "열기"
14091414
msgid "Open Data Directory"
14101415
msgstr "오픈 데이터 디렉터리"
14111416

1417+
#: src/lib/auth/LoginButton.svelte
1418+
msgid "Open in browser"
1419+
msgstr ""
1420+
14121421
#. Button label
14131422
#: src/lib/components/OpenInFieldWorksButton.svelte
14141423
msgid "Open in FieldWorks"
@@ -2166,6 +2175,10 @@ msgstr "쓰기 시스템"
21662175
msgid "Writing Systems"
21672176
msgstr "쓰기 시스템"
21682177

2178+
#: src/lib/auth/LoginButton.svelte
2179+
msgid "You appear to be offline. Can you reach {0}?"
2180+
msgstr ""
2181+
21692182
#. Status message when no updates are available
21702183
#: src/lib/updates/UpdateDialogContent.svelte
21712184
msgid "You are running the latest version."
@@ -2186,8 +2199,3 @@ msgstr "{1}에서 {0} 프로젝트를 다운로드할 수 있는 권한이 없
21862199
#: src/home/Server.svelte
21872200
msgid "You have already downloaded the {0} project"
21882201
msgstr "이미 {0} 프로젝트를 다운로드하셨습니다."
2189-
2190-
#. Transient warning toast shown when the user taps Log in while offline
2191-
#: src/lib/auth/LoginButton.svelte
2192-
msgid "You're offline. Connect to the internet to log in."
2193-
msgstr ""

frontend/viewer/src/locales/ms.po

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1122,6 +1122,11 @@ msgstr "Tempatan sahaja"
11221122
msgid "Login"
11231123
msgstr "Log masuk"
11241124

1125+
#. Toast shown when the user closes or cancels the login dialog before signing in.
1126+
#: src/lib/auth/LoginButton.svelte
1127+
msgid "Login cancelled."
1128+
msgstr ""
1129+
11251130
#. Default button label on the login button when not yet authenticated. Clicking opens the login flow for a server.
11261131
#: src/lib/auth/LoginButton.svelte
11271132
#: src/lib/auth/LoginButton.svelte
@@ -1409,6 +1414,10 @@ msgstr "Buka"
14091414
msgid "Open Data Directory"
14101415
msgstr "Buka Direktori Data"
14111416

1417+
#: src/lib/auth/LoginButton.svelte
1418+
msgid "Open in browser"
1419+
msgstr ""
1420+
14121421
#. Button label
14131422
#: src/lib/components/OpenInFieldWorksButton.svelte
14141423
msgid "Open in FieldWorks"
@@ -2166,6 +2175,10 @@ msgstr "Sistem tulisan"
21662175
msgid "Writing Systems"
21672176
msgstr "Sistem Penulisan"
21682177

2178+
#: src/lib/auth/LoginButton.svelte
2179+
msgid "You appear to be offline. Can you reach {0}?"
2180+
msgstr ""
2181+
21692182
#. Status message when no updates are available
21702183
#: src/lib/updates/UpdateDialogContent.svelte
21712184
msgid "You are running the latest version."
@@ -2186,8 +2199,3 @@ msgstr "Anda tidak mempunyai kebenaran untuk memuat turun projek {0} daripada {1
21862199
#: src/home/Server.svelte
21872200
msgid "You have already downloaded the {0} project"
21882201
msgstr "Anda telah pun memuat turun projek {0}"
2189-
2190-
#. Transient warning toast shown when the user taps Log in while offline
2191-
#: src/lib/auth/LoginButton.svelte
2192-
msgid "You're offline. Connect to the internet to log in."
2193-
msgstr ""

frontend/viewer/src/locales/sw.po

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1122,6 +1122,11 @@ msgstr "Mitaa tu"
11221122
msgid "Login"
11231123
msgstr "Ingia"
11241124

1125+
#. Toast shown when the user closes or cancels the login dialog before signing in.
1126+
#: src/lib/auth/LoginButton.svelte
1127+
msgid "Login cancelled."
1128+
msgstr ""
1129+
11251130
#. Default button label on the login button when not yet authenticated. Clicking opens the login flow for a server.
11261131
#: src/lib/auth/LoginButton.svelte
11271132
#: src/lib/auth/LoginButton.svelte
@@ -1409,6 +1414,10 @@ msgstr "Fungua"
14091414
msgid "Open Data Directory"
14101415
msgstr "Fungua Faharasa ya Data"
14111416

1417+
#: src/lib/auth/LoginButton.svelte
1418+
msgid "Open in browser"
1419+
msgstr ""
1420+
14121421
#. Button label
14131422
#: src/lib/components/OpenInFieldWorksButton.svelte
14141423
msgid "Open in FieldWorks"
@@ -2166,6 +2175,10 @@ msgstr "Mifumo ya uandishi"
21662175
msgid "Writing Systems"
21672176
msgstr "Mifumo ya Kuandika"
21682177

2178+
#: src/lib/auth/LoginButton.svelte
2179+
msgid "You appear to be offline. Can you reach {0}?"
2180+
msgstr ""
2181+
21692182
#. Status message when no updates are available
21702183
#: src/lib/updates/UpdateDialogContent.svelte
21712184
msgid "You are running the latest version."
@@ -2186,8 +2199,3 @@ msgstr "Huna ruhusa ya kupakua mradi {0} kutoka {1}"
21862199
#: src/home/Server.svelte
21872200
msgid "You have already downloaded the {0} project"
21882201
msgstr "Umeshapakua mradi wa {0}"
2189-
2190-
#. Transient warning toast shown when the user taps Log in while offline
2191-
#: src/lib/auth/LoginButton.svelte
2192-
msgid "You're offline. Connect to the internet to log in."
2193-
msgstr ""

frontend/viewer/src/locales/vi.po

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1122,6 +1122,11 @@ msgstr "Chỉ cục bộ"
11221122
msgid "Login"
11231123
msgstr "Đăng nhập"
11241124

1125+
#. Toast shown when the user closes or cancels the login dialog before signing in.
1126+
#: src/lib/auth/LoginButton.svelte
1127+
msgid "Login cancelled."
1128+
msgstr ""
1129+
11251130
#. Default button label on the login button when not yet authenticated. Clicking opens the login flow for a server.
11261131
#: src/lib/auth/LoginButton.svelte
11271132
#: src/lib/auth/LoginButton.svelte
@@ -1409,6 +1414,10 @@ msgstr "Mở"
14091414
msgid "Open Data Directory"
14101415
msgstr "Mở Thư mục Dữ liệu"
14111416

1417+
#: src/lib/auth/LoginButton.svelte
1418+
msgid "Open in browser"
1419+
msgstr ""
1420+
14121421
#. Button label
14131422
#: src/lib/components/OpenInFieldWorksButton.svelte
14141423
msgid "Open in FieldWorks"
@@ -2166,6 +2175,10 @@ msgstr "Hệ thống chữ viết"
21662175
msgid "Writing Systems"
21672176
msgstr "Các hệ chữ"
21682177

2178+
#: src/lib/auth/LoginButton.svelte
2179+
msgid "You appear to be offline. Can you reach {0}?"
2180+
msgstr ""
2181+
21692182
#. Status message when no updates are available
21702183
#: src/lib/updates/UpdateDialogContent.svelte
21712184
msgid "You are running the latest version."
@@ -2186,8 +2199,3 @@ msgstr "Bạn không có quyền tải dự án {0} từ {1}"
21862199
#: src/home/Server.svelte
21872200
msgid "You have already downloaded the {0} project"
21882201
msgstr "Bạn đã tải xuống dự án {0}"
2189-
2190-
#. Transient warning toast shown when the user taps Log in while offline
2191-
#: src/lib/auth/LoginButton.svelte
2192-
msgid "You're offline. Connect to the internet to log in."
2193-
msgstr ""

0 commit comments

Comments
 (0)