diff --git a/src/oj/problem/components/Editor.vue b/src/oj/problem/components/Editor.vue index 2525851..2656c7a 100644 --- a/src/oj/problem/components/Editor.vue +++ b/src/oj/problem/components/Editor.vue @@ -2,115 +2,40 @@ import { SOURCES } from "utils/constants" import { Problem } from "utils/types" import Monaco from "~/shared/Monaco.vue" -import Submit from "./Submit.vue" import { code } from "oj/composables/code" -import { isDesktop, isMobile } from "~/shared/composables/breakpoints" -import { DropdownOption } from "naive-ui" +import { isDesktop } from "~/shared/composables/breakpoints" +import Form from "./Form.vue" interface Props { problem: Problem } const props = defineProps() -const route = useRoute() -const router = useRouter() code.language = props.problem.languages[0] || "C" code.value = props.problem.template[code.language] || SOURCES[code.language] -watch(() => code.language, reset) - -function reset() { - code.value = props.problem.template[code.language] || SOURCES[code.language] -} - function change(value: string) { code.value = value } -function goSubmissions() { - const name = !!route.params.contestID ? "contest submissions" : "submissions" - router.push({ name, query: { problem: props.problem._id } }) -} -const options: DropdownOption[] = props.problem.languages.map((it) => ({ - label: () => [ - h("img", { - src: `/${it}.svg`, - style: { - width: "16px", - height: "16px", - marginRight: "8px", - transform: "translateY(3px)", - }, - }), - it, - ], - value: it, -})) - -const menu: DropdownOption[] = [ - { label: "重置", key: "reset" }, - { label: "提交信息", key: "submissions" }, -] - -function select(key: string) { - switch (key) { - case "reset": - reset() - break - case "submissions": - goSubmissions() - break - } -} +const editorHeight = computed(() => + isDesktop.value ? "calc(100vh - 150px)" : "calc(100vh - 200px)" +) diff --git a/src/oj/problem/detail.vue b/src/oj/problem/detail.vue index 0206e7f..059e184 100644 --- a/src/oj/problem/detail.vue +++ b/src/oj/problem/detail.vue @@ -32,14 +32,21 @@ provide("problem", readonly(problem))