# 仓库级前端配置。根目录刻意不放 package.json —— 前端可交付物只有 web/ 一个包。 # # 本文件承担两件事(都必须在 workspace 根生效): # 1. overrides —— 把 @g3soft/ui、@g3soft/tokens 指向 g3soft-libs 的本地包 # 2. allowBuilds —— pnpm 11 的构建脚本白名单 # 所以本文件不能删。但它不是「monorepo 壳」,只是 pnpm 认可的配置位置。 packages: - 'web' # 开发期 link 到本地包(改组件库后需重新 build,详见 README)。 # 路径相对本文件所在目录(仓库根);g3soft-libs 必须与 g3soft-erp 平级。 # 注意:pnpm 的 overrides 只在 workspace 根生效,写在 web/package.json 里无效。 overrides: '@g3soft/tokens': link:../g3soft-libs/packages/tokens '@g3soft/ui': link:../g3soft-libs/packages/ui # pnpm 11 的构建脚本白名单(map 形式;v10 的 onlyBuiltDependencies 数组写法在 v11 已失效)。 # 未放行的构建脚本会被 pnpm 11 当作错误,导致后续命令失败。 # esbuild —— Vite 底层打包器 # vue-demi —— Vue 2/3 兼容 shim,安装时要跑脚本切换 # '@parcel/watcher' —— sass 的原生文件监听依赖 allowBuilds: esbuild: true vue-demi: true '@parcel/watcher': true # 依赖严格隔离(不开 shamefully-hoist / nodeLinker: hoisted)。