Skip to content

Commit c74d362

Browse files
committed
feature(FR-1688): Auto-launch primary app in Session Notification
1 parent 5e23245 commit c74d362

File tree

22 files changed

+72
-13
lines changed

22 files changed

+72
-13
lines changed

react/src/components/BAIComputeSessionNodeNotificationItem.tsx

Lines changed: 30 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@ import SessionActionButtons, {
22
PrimaryAppOption,
33
} from './ComputeSessionNodeItems/SessionActionButtons';
44
import SessionStatusTag from './ComputeSessionNodeItems/SessionStatusTag';
5+
import QuestionIconWithTooltip from './QuestionIconWithTooltip';
56
import { useUpdateEffect } from 'ahooks';
7+
import { Switch, theme } from 'antd';
68
import { BAIFlex, BAILink, BAINotificationItem, BAIText } from 'backend.ai-ui';
79
import dayjs from 'dayjs';
810
import React, { useEffect, useState } from 'react';
@@ -35,6 +37,7 @@ const BAIComputeSessionNodeNotificationItem: React.FC<
3537
const { closeNotification } = useSetBAINotification();
3638
const { t } = useTranslation();
3739
const navigate = useNavigate();
40+
const { token } = theme.useToken();
3841
const node = useFragment(
3942
graphql`
4043
fragment BAIComputeSessionNodeNotificationItemFragment on ComputeSessionNode {
@@ -98,19 +101,33 @@ const BAIComputeSessionNodeNotificationItem: React.FC<
98101
</BAIText>
99102
}
100103
description={
101-
<BAIFlex justify="between">
102-
<SessionStatusTag
103-
sessionFrgmt={node || null}
104-
showQueuePosition={false}
105-
showTooltip={false}
106-
/>
107-
<SessionActionButtons
108-
compact
109-
size="small"
110-
sessionFrgmt={node || null}
111-
hiddenButtonKeys={['containerCommit']}
112-
primaryAppOption={primaryAppOption}
113-
/>
104+
<BAIFlex direction="column" align="stretch" gap="xs">
105+
<BAIFlex justify="between">
106+
<SessionStatusTag
107+
sessionFrgmt={node || null}
108+
showQueuePosition={false}
109+
showTooltip={false}
110+
/>
111+
<SessionActionButtons
112+
compact
113+
size="small"
114+
sessionFrgmt={node || null}
115+
hiddenButtonKeys={['containerCommit']}
116+
primaryAppOption={primaryAppOption}
117+
/>
118+
</BAIFlex>
119+
<BAIFlex
120+
style={{
121+
alignSelf: 'stretch',
122+
}}
123+
gap={'xs'}
124+
>
125+
<Switch size="small" /> {t('notification.RunAppOnSessionStart')}
126+
<QuestionIconWithTooltip
127+
title={t('notification.RunAppOnSessionStartTooltip')}
128+
zIndex={(token.Notification?.zIndexPopup || 2050) + 1}
129+
/>
130+
</BAIFlex>
114131
</BAIFlex>
115132
}
116133
footer={

resources/i18n/de.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1069,6 +1069,8 @@
10691069
"Initializing": "Initialisieren...",
10701070
"NoNotification": "Keine Benachrichtigung.",
10711071
"Notifications": "Benachrichtigungen",
1072+
"RunAppOnSessionStart": "App automatisch starten",
1073+
"RunAppOnSessionStartTooltip": "Startet die App in einer laufenden Sitzung",
10721074
"SeeDetail": "Siehe Detail",
10731075
"SuccessfullyUpdated": "Erfolgreich aktualisiert",
10741076
"Visit": "Besuch"

resources/i18n/el.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1066,6 +1066,8 @@
10661066
"Initializing": "Αρχικοποίηση ...",
10671067
"NoNotification": "Καμία ειδοποίηση.",
10681068
"Notifications": "Ειδοποιήσεις",
1069+
"RunAppOnSessionStart": "Αυτόματη εκκίνηση εφαρμογής",
1070+
"RunAppOnSessionStartTooltip": "Εκκινεί την εφαρμογή όταν η συνεδρία είναι ενεργή",
10691071
"SeeDetail": "Δείτε Λεπτομέρεια",
10701072
"SuccessfullyUpdated": "Ενημερώθηκε με επιτυχία",
10711073
"Visit": "Επίσκεψη"

resources/i18n/en.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1075,6 +1075,8 @@
10751075
"Initializing": "Initializing...",
10761076
"NoNotification": "No Notification.",
10771077
"Notifications": "Notifications",
1078+
"RunAppOnSessionStart": "Auto-launch app",
1079+
"RunAppOnSessionStartTooltip": "Launches app on session running",
10781080
"SeeDetail": "See Detail",
10791081
"SuccessfullyUpdated": "Successfully Updated",
10801082
"Visit": "Visit"

resources/i18n/es.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1069,6 +1069,8 @@
10691069
"Initializing": "Inicializando...",
10701070
"NoNotification": "Sin notificación.",
10711071
"Notifications": "Notificaciones",
1072+
"RunAppOnSessionStart": "Iniciar la aplicación automáticamente",
1073+
"RunAppOnSessionStartTooltip": "Inicia la aplicación cuando la sesión esté en ejecución.",
10721074
"SeeDetail": "Ver detalle",
10731075
"SuccessfullyUpdated": "Actualizado con éxito",
10741076
"Visit": "Visite"

resources/i18n/fi.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1068,6 +1068,8 @@
10681068
"Initializing": "Aloitetaan...",
10691069
"NoNotification": "Ei ilmoitusta.",
10701070
"Notifications": "Ilmoitukset",
1071+
"RunAppOnSessionStart": "Käynnistä sovellus automaattisesti",
1072+
"RunAppOnSessionStartTooltip": "Käynnistää sovelluksen käynnissä olevassa istunnossa.",
10711073
"SeeDetail": "Katso lisätietoja",
10721074
"SuccessfullyUpdated": "Päivitetty onnistuneesti",
10731075
"Visit": "Käy osoitteessa"

resources/i18n/fr.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1069,6 +1069,8 @@
10691069
"Initializing": "Initialisation...",
10701070
"NoNotification": "Aucune notification.",
10711071
"Notifications": "Notifications",
1072+
"RunAppOnSessionStart": "Lancer automatiquement l'application",
1073+
"RunAppOnSessionStartTooltip": "Lance l'application dans la session en cours",
10721074
"SeeDetail": "Voir le détail",
10731075
"SuccessfullyUpdated": "Mise à jour réussie",
10741076
"Visit": "Visite"

resources/i18n/id.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1067,6 +1067,8 @@
10671067
"Initializing": "Inisialisasi...",
10681068
"NoNotification": "Tidak Ada Pemberitahuan.",
10691069
"Notifications": "Pemberitahuan",
1070+
"RunAppOnSessionStart": "Mulai aplikasi secara otomatis",
1071+
"RunAppOnSessionStartTooltip": "Meluncurkan aplikasi pada sesi yang sedang berjalan",
10701072
"SeeDetail": "Lihat Detail",
10711073
"SuccessfullyUpdated": "Berhasil Diperbarui",
10721074
"Visit": "Kunjungi"

resources/i18n/it.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1067,6 +1067,8 @@
10671067
"Initializing": "Inizializzazione in corso...",
10681068
"NoNotification": "Nessuna notifica.",
10691069
"Notifications": "Notifiche",
1070+
"RunAppOnSessionStart": "Avvia automaticamente l'app",
1071+
"RunAppOnSessionStartTooltip": "Avvia l'app nella sessione in esecuzione",
10701072
"SeeDetail": "Vedi dettaglio",
10711073
"SuccessfullyUpdated": "Aggiornato con successo",
10721074
"Visit": "Visitare"

resources/i18n/ja.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1068,6 +1068,8 @@
10681068
"Initializing": "初期化中...",
10691069
"NoNotification": "通知はありません。",
10701070
"Notifications": "通知",
1071+
"RunAppOnSessionStart": "アプリの自動起動",
1072+
"RunAppOnSessionStartTooltip": "セッション実行時にアプリを起動する",
10711073
"SeeDetail": "詳細を見る",
10721074
"SuccessfullyUpdated": "正常に更新されました",
10731075
"Visit": "訪問"

0 commit comments

Comments
 (0)