diff --git a/services/frontend/src/pages/CompetitionSession/modules/TaskSolution/index.tsx b/services/frontend/src/pages/CompetitionSession/modules/TaskSolution/index.tsx index afe22d4..ea0c35c 100644 --- a/services/frontend/src/pages/CompetitionSession/modules/TaskSolution/index.tsx +++ b/services/frontend/src/pages/CompetitionSession/modules/TaskSolution/index.tsx @@ -43,7 +43,7 @@ const TaskSolution: React.FC = ({ setIsHistoryOpen(true); }; - const latestSolution = solutionHistory && solutionHistory.length > 0 ? solutionHistory[0] : null; + const latestSolution = solutionHistory && solutionHistory.length > 0 ? solutionHistory[solutionHistory.length - 1] : null; return (
diff --git a/services/frontend/src/shared/api/session.ts b/services/frontend/src/shared/api/session.ts index 6cfe8f2..4a04dc4 100644 --- a/services/frontend/src/shared/api/session.ts +++ b/services/frontend/src/shared/api/session.ts @@ -20,18 +20,18 @@ export const submitTaskSolution = async ( solution: string | File ) => { const endpoint = `/competitions/${competitionId}/tasks/${taskId}/submit`; + const formData = new FormData(); + + // туповатый костыль но для мвп сойдет if (typeof solution === 'string') { - return await userFetch(endpoint, { - method: 'POST', - body: { content: solution } - }); + const textFile = new File([solution], 'solution.txt', { type: 'text/plain' }); + formData.append('content', textFile); } else { - const formData = new FormData(); - formData.append('content', solution); - - return await userFetch(endpoint, { - method: 'POST', - body: formData - }); + formData.append('content', solution); } + + return await userFetch(endpoint, { + method: 'POST', + body: formData + }); }; \ No newline at end of file