Add FlagType and updateFlag API method to frontend

Add FlagType to type definitions and flag field to SubmissionOut/SubmissionAll
interfaces. Add updateFlag method to Submission API client.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-09 17:25:37 +08:00
parent f7e9d39bc2
commit b4bfc7706c
2 changed files with 10 additions and 1 deletions

View File

@@ -1,6 +1,6 @@
import axios from "axios"
import { router } from "./router"
import type { TutorialIn, ChallengeIn } from "./utils/type"
import type { TutorialIn, ChallengeIn, FlagType } from "./utils/type"
import { BASE_URL, STORAGE_KEY } from "./utils/const"
const http = axios.create({
@@ -167,6 +167,11 @@ export const Submission = {
const res = await http.put(`/submission/${id}/score`, { score })
return res.data
},
async updateFlag(id: string, flag: FlagType) {
const res = await http.put(`/submission/${id}/flag`, { flag })
return res.data
},
}
export const Prompt = {

View File

@@ -14,6 +14,8 @@ export function getRole(role: Role) {
}[role]
}
export type FlagType = "red" | "blue" | "green" | "yellow" | null
export interface TutorialSlim {
display: number
title: string
@@ -64,6 +66,7 @@ export interface SubmissionOut {
score: number
my_score: number
conversation_id?: string
flag?: FlagType
created: Date
modified: Date
}
@@ -78,6 +81,7 @@ export interface SubmissionAll {
task_title: string
score: number
my_score: number
flag?: FlagType
html: ""
css: ""
js: ""