Loading CHANGELOG.md +11 −0 Original line number Diff line number Diff line 2024-06-15 - add persistent storage to docker deployment 2024-06-13 - extend cache 2024-06-12 - remove html and htm support from file viewer 2024-06-03 - add user deletion and credentials reset 2024-05-30 - change default font to inter 2024-05-28 - fix responsive page title 2024-05-28 - move export-import to exercise panel, hide it from non-admin users 2024-05-28 - fix user edit (only send the fields that change) 2024-05-26 - improve user UI 2024-05-23 - add BCC to emails 2024-05-21 - improve PDF filed viewer UI, set continuous scroll as the default view 2024-05-21 - make unread channel buttons more noticeable 2024-05-21 - add User management UI 2024-05-16 - add emails forwarding 2024-05-15 - add role and exercise info into team selectors Loading frontend/src/actionlog/ActionLog/index.tsx +9 −0 Original line number Diff line number Diff line Loading @@ -16,12 +16,17 @@ import { const view = css` height: 100%; <<<<<<< HEAD ======= overflow-y: auto; >>>>>>> 8dfb294da9e318f92144f8a54f9c97ce9982a5ea display: flex; flex-direction: column; justify-content: space-between; ` const bottom = css` <<<<<<< HEAD position: sticky; bottom: 1rem; right: 1rem; Loading @@ -39,6 +44,10 @@ const bottom = css` const full = css` height: 100vh; ======= display: flex; justify-content: flex-end; >>>>>>> 8dfb294da9e318f92144f8a54f9c97ce9982a5ea ` interface ActionLogProps { Loading frontend/src/components/ExerciseList/ExerciseCard.tsx +7 −9 Original line number Diff line number Diff line Loading @@ -74,7 +74,6 @@ const ExerciseCard: FC<ExerciseCardProps> = ({ Participants </Button> )} {(exercise.running || exercise.finished) && ( <a href={downloadLogUrl(host || '', exercise.id)} target='_blank' Loading @@ -82,7 +81,6 @@ const ExerciseCard: FC<ExerciseCardProps> = ({ > <Button icon='download'>Download logs</Button> </a> )} </> ), [ Loading frontend/src/instructor/InstructorInject/InjectForm.tsx +10 −8 Original line number Diff line number Diff line Loading @@ -17,6 +17,13 @@ const header = css` margin-bottom: 1rem; ` const footer = css` display: flex; justify-content: space-between; flex-wrap: wrap; gap: 0.5rem; ` interface InjectComposerProps { teamId: string exerciseId: string Loading Loading @@ -90,12 +97,7 @@ const InjectForm = ({ teamId, exerciseId, setIsOpen }: InjectComposerProps) => { <Divider style={{ margin: '0.5rem 0' }} /> <div style={{ display: 'flex', justifyContent: 'space-between', }} > <div className={footer}> <FileArea fileInfo={fileInfo} setFileInfo={setFileInfo} Loading @@ -111,9 +113,9 @@ const InjectForm = ({ teamId, exerciseId, setIsOpen }: InjectComposerProps) => { type='submit' rightIcon='send-message' onClick={onSend} disabled={loading} loading={loading} > {loading ? 'Sending...' : 'Send'} Send </Button> </ButtonGroup> </FormGroup> Loading graphql/utils/useActionLogSubscription.tsx +1 −1 Original line number Diff line number Diff line Loading @@ -150,7 +150,7 @@ const useActionLogSubscription = ({ // TODO: don't notify if the EMAIL, CUSTOM_INJECT, or TOOL actionLog was created by the user const newMessageText = `New message in ${newActionLog.channel.name}` if (newActionLog.team.id !== teamId) { if (newActionLog.team.id === teamId) { notify( isInstructor ? `${newActionLog.team.name}: ${newMessageText}` Loading Loading
CHANGELOG.md +11 −0 Original line number Diff line number Diff line 2024-06-15 - add persistent storage to docker deployment 2024-06-13 - extend cache 2024-06-12 - remove html and htm support from file viewer 2024-06-03 - add user deletion and credentials reset 2024-05-30 - change default font to inter 2024-05-28 - fix responsive page title 2024-05-28 - move export-import to exercise panel, hide it from non-admin users 2024-05-28 - fix user edit (only send the fields that change) 2024-05-26 - improve user UI 2024-05-23 - add BCC to emails 2024-05-21 - improve PDF filed viewer UI, set continuous scroll as the default view 2024-05-21 - make unread channel buttons more noticeable 2024-05-21 - add User management UI 2024-05-16 - add emails forwarding 2024-05-15 - add role and exercise info into team selectors Loading
frontend/src/actionlog/ActionLog/index.tsx +9 −0 Original line number Diff line number Diff line Loading @@ -16,12 +16,17 @@ import { const view = css` height: 100%; <<<<<<< HEAD ======= overflow-y: auto; >>>>>>> 8dfb294da9e318f92144f8a54f9c97ce9982a5ea display: flex; flex-direction: column; justify-content: space-between; ` const bottom = css` <<<<<<< HEAD position: sticky; bottom: 1rem; right: 1rem; Loading @@ -39,6 +44,10 @@ const bottom = css` const full = css` height: 100vh; ======= display: flex; justify-content: flex-end; >>>>>>> 8dfb294da9e318f92144f8a54f9c97ce9982a5ea ` interface ActionLogProps { Loading
frontend/src/components/ExerciseList/ExerciseCard.tsx +7 −9 Original line number Diff line number Diff line Loading @@ -74,7 +74,6 @@ const ExerciseCard: FC<ExerciseCardProps> = ({ Participants </Button> )} {(exercise.running || exercise.finished) && ( <a href={downloadLogUrl(host || '', exercise.id)} target='_blank' Loading @@ -82,7 +81,6 @@ const ExerciseCard: FC<ExerciseCardProps> = ({ > <Button icon='download'>Download logs</Button> </a> )} </> ), [ Loading
frontend/src/instructor/InstructorInject/InjectForm.tsx +10 −8 Original line number Diff line number Diff line Loading @@ -17,6 +17,13 @@ const header = css` margin-bottom: 1rem; ` const footer = css` display: flex; justify-content: space-between; flex-wrap: wrap; gap: 0.5rem; ` interface InjectComposerProps { teamId: string exerciseId: string Loading Loading @@ -90,12 +97,7 @@ const InjectForm = ({ teamId, exerciseId, setIsOpen }: InjectComposerProps) => { <Divider style={{ margin: '0.5rem 0' }} /> <div style={{ display: 'flex', justifyContent: 'space-between', }} > <div className={footer}> <FileArea fileInfo={fileInfo} setFileInfo={setFileInfo} Loading @@ -111,9 +113,9 @@ const InjectForm = ({ teamId, exerciseId, setIsOpen }: InjectComposerProps) => { type='submit' rightIcon='send-message' onClick={onSend} disabled={loading} loading={loading} > {loading ? 'Sending...' : 'Send'} Send </Button> </ButtonGroup> </FormGroup> Loading
graphql/utils/useActionLogSubscription.tsx +1 −1 Original line number Diff line number Diff line Loading @@ -150,7 +150,7 @@ const useActionLogSubscription = ({ // TODO: don't notify if the EMAIL, CUSTOM_INJECT, or TOOL actionLog was created by the user const newMessageText = `New message in ${newActionLog.channel.name}` if (newActionLog.team.id !== teamId) { if (newActionLog.team.id === teamId) { notify( isInstructor ? `${newActionLog.team.name}: ${newMessageText}` Loading