Deploy / deploy (build, debian, 22) (push) Canceled after 0s
- 挑战列表改成独立页面(ChallengeHome):每题一行,完成状态、分值、出题人,可按未做 / 已交筛选; 教程面板只放教程 - 教程每一节的代码各存一份(和挑战同一个按任务的 key),切回来时还在,第一次才放示例代码; 提交列表“复制到编辑器”对教程也写入该任务的代码 - 教程 / 挑战出题页合并为 TaskEditor:“提交”改为“保存”,保存后停在当前项,删除前说明会连带删除学生提交; admin 也能在列表里切换挑战是否公开(保存时本来就能设) - 用户管理:初始密码默认隐藏,封号前确认,批量新建说明用户名规则 - 整站暗色:顶栏切换跟随系统 / 亮色 / 暗色;Naive 暗色主题、markdown 和代码高亮的暗色覆盖 (styles/dark-content.css 由 GitHub 暗色样式生成)、CodeMirror One Dark 配色、md-editor 暗色; 组件里剩下的硬编码颜色全部换成配色变量 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
49 lines
1.4 KiB
JSON
49 lines
1.4 KiB
JSON
{
|
|
"name": "webpreview-client",
|
|
"private": true,
|
|
"version": "0.3.0",
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "bun --bun vite",
|
|
"build": "bun --bun vite build",
|
|
"build:staging": "bun --bun vite build --mode staging",
|
|
"fmt": "bun fmt src/",
|
|
"typecheck": "vue-tsc --noEmit -p tsconfig.app.json"
|
|
},
|
|
"dependencies": {
|
|
"@codemirror/lang-css": "^6.3.1",
|
|
"@codemirror/lang-html": "^6.4.12",
|
|
"@codemirror/lang-javascript": "^6.2.5",
|
|
"@codemirror/language": "6.12.3",
|
|
"@codemirror/theme-one-dark": "^6.1.3",
|
|
"@codemirror/view": "^6.41.1",
|
|
"@fontsource/jetbrains-mono": "^5.3.0",
|
|
"@vueuse/core": "^15.0.0",
|
|
"axios": "^1.20.0",
|
|
"codemirror": "^6.0.2",
|
|
"copy-text-to-clipboard": "^3.2.2",
|
|
"github-markdown-css": "^5.9.0",
|
|
"highlight.js": "^11.12.0",
|
|
"lucide-vue-next": "^1.0.0",
|
|
"marked": "^18.1.1",
|
|
"marked-alert": "^2.1.2",
|
|
"marked-code-preview": "^1.3.7",
|
|
"marked-highlight": "^2.2.4",
|
|
"md-editor-v3": "^7.1.0",
|
|
"naive-ui": "^2.45.3",
|
|
"vue": "^3.5.44",
|
|
"vue-codemirror": "^6.1.1",
|
|
"vue-router": "^5.4.0"
|
|
},
|
|
"devDependencies": {
|
|
"@vitejs/plugin-legacy": "^8.2.3",
|
|
"@vitejs/plugin-vue": "^6.0.10",
|
|
"@vue/tsconfig": "^0.9.1",
|
|
"prettier": "^3.9.10",
|
|
"typescript": "~5.9.3",
|
|
"unplugin-vue-components": "^32.1.0",
|
|
"vite": "^8.3.5",
|
|
"vue-tsc": "^3.3.13"
|
|
}
|
|
}
|