build / build (push) Successful in 1m31s
在 c93313c 之上增量落地原型与前端规范,保留既有流程图入口/失败提示/指派预览/线级停发:
- 审批/抄送抽屉按原型重构(422→1026 / 239→742 行):科室树+成员多选、SYSTEM/CUSTOM 分支、
CUSTOM 分类导航自动定位、跨节点导航重置、保存后重开回显
- 新增授权管理页 /admin/usage-grants(UsageGrants.vue,417 行):校域清单、按流程线筛选、
授予/撤销后回读,失败不宣称成功
- 路由与 API:新增 usage-grant(schoolList/summary/grant/revoke)、department(groups/options/resolve/members)、
instance/resubmit;TaskHandle 增加「退回待修改」入口(仅 status=50 显示)
- 错误处理沿用 flowError 统一出口,不透出后端原文
- 组件/契约测试:flow-error、flow2-contract、department-roundtrip、task-result
不含构建产物(dist-verify)与依赖目录
61 lines
2.4 KiB
JSON
61 lines
2.4 KiB
JSON
{
|
|
"name": "flow-center",
|
|
"private": true,
|
|
"version": "0.0.0",
|
|
"nodeversion": "20.19.4",
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "vite --mode dev",
|
|
"dev:mock": "vite --mode mock",
|
|
"build": "vite build --mode base",
|
|
"build:base": "vite build --mode base",
|
|
"build:ld": "vite build --mode ld",
|
|
"build:prod": "vite build --mode prod",
|
|
"preview": "vite preview",
|
|
"api:gen": "alova gen -f",
|
|
"typecheck": "vue-tsc --noEmit",
|
|
"test:line-offline": "esbuild tests/line-offline.test.ts --bundle --platform=node --format=esm --target=node20 --external:node:* --outfile=node_modules/.cache/line-offline.test.mjs && node node_modules/.cache/line-offline.test.mjs",
|
|
"test:unit": "esbuild tests/line-offline.test.ts tests/app-url.test.ts tests/flow-error.test.ts tests/assign-preview.test.ts tests/convert-roundtrip.test.ts tests/flow2-contract.test.ts --bundle --platform=node --format=esm --target=node20 --external:node:* --outbase=tests --outdir=node_modules/.cache/unit && node --test node_modules/.cache/unit",
|
|
"test:component": "vitest run",
|
|
"test": "npm run test:unit && npm run test:component"
|
|
},
|
|
"dependencies": {
|
|
"@open-file-viewer/core": "^0.1.43",
|
|
"@open-file-viewer/vue": "^0.1.43",
|
|
"@types/lodash": "^4.14.196",
|
|
"@wangeditor/editor": "^5.1.23",
|
|
"@wangeditor/editor-for-vue": "^5.1.12",
|
|
"alova": "^3.4.0",
|
|
"axios": "^0.24.0",
|
|
"lodash": "^4.17.21",
|
|
"mitt": "^3.0.1",
|
|
"mockjs": "^1.1.0",
|
|
"pdfjs-dist": "^4.10.38",
|
|
"pinia": "^2.1.4",
|
|
"sass": "^1.64.1",
|
|
"view-ui-plus": "1.3.24",
|
|
"vite-plugin-mock": "2.9.6",
|
|
"vue": "^3.4.19",
|
|
"vue-router": "4",
|
|
"vuedraggable": "^4.1.0"
|
|
},
|
|
"devDependencies": {
|
|
"@alova/wormhole": "^1.5.0",
|
|
"@types/node": "^20.4.4",
|
|
"@unocss/preset-rem-to-px": "^66.6.0",
|
|
"@unocss/preset-uno": "^66.6.0",
|
|
"@vitejs/plugin-vue": "^5.0.4",
|
|
"@vue/test-utils": "2.4.6",
|
|
"fast-glob": "^3.3.2",
|
|
"jsdom": "25.0.1",
|
|
"typescript": "^5.2.2",
|
|
"unocss": "^66.6.0",
|
|
"unplugin-auto-import": "0.18.3",
|
|
"vite": "^5.1.4",
|
|
"vite-plugin-html": "^3.2.2",
|
|
"vite-plugin-svg-icons": "^2.0.1",
|
|
"vitest": "2.1.9",
|
|
"vue-tsc": "3.3.13"
|
|
}
|
|
}
|