diff --git a/apps/web/public/noto--dog-face.ico b/apps/web/public/noto--dog-face.ico index a49602a..2bfde1d 100644 Binary files a/apps/web/public/noto--dog-face.ico and b/apps/web/public/noto--dog-face.ico differ diff --git a/apps/web/src/admin/ai/list.vue b/apps/web/src/admin/ai/list.vue index d374ef8..42bfb09 100644 --- a/apps/web/src/admin/ai/list.vue +++ b/apps/web/src/admin/ai/list.vue @@ -3,7 +3,6 @@ import { Icon } from "@iconify/vue" import PageHeader from "admin/components/PageHeader.vue" import { useThemeVars } from "naive-ui" import { classLabel } from "oj/submission/utils" -import Markdown from "shared/components/Markdown.vue" import { useBackClose } from "shared/composables/backClose" import { useBreakpoints } from "shared/composables/breakpoints" import Pagination from "shared/components/Pagination.vue" @@ -12,6 +11,9 @@ import { parseTime } from "utils/functions" import type { AdminAiReport, AdminAiReportListItem } from "utils/types" import { getAIReportDetail, getAIReportList, pinAIReport } from "../api" +// Markdown 连着整套代码高亮(两百多 KB),这里要等点开 / AI 写完才用得上,别让它拖慢页面 +const Markdown = defineAsyncComponent(() => import("shared/components/Markdown.vue")) + /** * 后台 AI 报告(设计稿「智能分析重设计」AiAdmin):左边一份一行(用户名、班级、时间、 * 两行摘要),点哪份右边就是全文。原来是表格 + 弹框,看一份要点「查看」、关框、再点下一份。 diff --git a/apps/web/src/oj/ai/components/AiSummary.vue b/apps/web/src/oj/ai/components/AiSummary.vue index 32b6bb6..f37cdc5 100644 --- a/apps/web/src/oj/ai/components/AiSummary.vue +++ b/apps/web/src/oj/ai/components/AiSummary.vue @@ -2,11 +2,13 @@ import type { LearningPeriod } from "@oj2/contract" import { Icon } from "@iconify/vue" import { useThemeVars } from "naive-ui" -import Markdown from "shared/components/Markdown.vue" import { parseTime } from "utils/functions" import { streamAI } from "utils/stream" import { getLatestAnalysis } from "../../api" +// Markdown 连着整套代码高亮(两百多 KB),这里要等点开 / AI 写完才用得上,别让它拖慢页面 +const Markdown = defineAsyncComponent(() => import("shared/components/Markdown.vue")) + /** * AI 小结。进来先拿这个时间段上次生成的那份(老师钉住的优先),没有才出按钮 —— * 一份小结要等十几秒、也要花钱,不在进页面时自动生成。 diff --git a/apps/web/src/oj/class/pk.vue b/apps/web/src/oj/class/pk.vue index c46e430..7172064 100644 --- a/apps/web/src/oj/class/pk.vue +++ b/apps/web/src/oj/class/pk.vue @@ -1,6 +1,5 @@