Files
web/client/package.json
T
xuyueandClaude Opus 5.5 ff1eb2982e
Deploy / deploy (build, debian, 22) (push) Canceled after 0s
feat: 改版阶段 1:统一顶栏和教学侧栏、配色和图标规范、路由角色守卫
- 所有页面共用顶栏(教程 / 挑战 / 自由创作 / 作品展,右边“教学”和用户菜单);
  没登录时顶栏有“登录”按钮,关掉登录框不再白屏;/submission/:id 全屏页不带顶栏
- 后台改成“教学”侧栏,分出题 / 班级 / 管理三组;“全部提交”留在侧栏里打开;
  admin 也能进作品展管理(后端本来就允许)
- 路由按角色守卫:meta.role 为 staff / super,学生和 admin 进不了无权页面
- 配色只在 theme.ts 定义,同时生成 --wp-* CSS 变量和 Naive UI 主题,暗色值先定好
- 图标改用打包进来的 lucide(断网也能显示),去掉 @iconify/vue 和 PUBLIC_ICONIFY_URL;
  代码字体换成打包的 JetBrains Mono,编辑器默认字号 24 → 16
- 教程面板去掉和顶栏重复的切换和图标按钮,图标按钮都补上文字或提示

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-26 23:39:55 +08:00

47 lines
1.3 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/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"
}
}