Files
prompt-optimizer/package.json
linshen 8b55f0e574 feat: 修复Monorepo构建与依赖解析问题,优化开发命令,更新依赖,完善文档,简化项目结构,统一异步调用,优化错误处理
本次提交主要完成了以下变更:

- 在`package.json`中新增`dev:desktop:parallel:fixed`命令,解决并行进程导致的样式丢失问题。
- 更新`experience.md`文档,记录Monorepo中构建与依赖管理的最佳实践和遇到的问题。
- 在`scratchpad.md`中详细记录了修复过程和解决方案,确保后续开发者能够参考。
- 更新pnpm锁定文件,添加dotenv和@prompt-optimizer/core依赖。
- 更新Electron版本至^37.1.0,修复桌面端IndexedDB问题。
- 简化项目结构,删除 `pnpm-lock.yaml` 文件和冗余文档。
- 将多个同步方法改为异步方法,确保模板管理器的操作能够正确处理异步逻辑。
- 优化模板获取和列表加载的逻辑,统一使用 `await` 关键字,避免潜在的时序问题。

这些更新旨在提升项目的稳定性和开发效率,确保最佳实践得到贯彻。
2025-06-29 15:00:27 +08:00

93 lines
4.0 KiB
JSON

{
"name": "prompt-optimizer",
"version": "1.2.0",
"private": true,
"packageManager": "pnpm@10.6.1",
"engines": {
"node": "^18.0.0 || ^20.0.0 || ^22.0.0",
"npm": "请使用pnpm代替npm",
"yarn": "请使用pnpm代替yarn"
},
"scripts": {
"build:core": "pnpm -F @prompt-optimizer/core build",
"build:ui": "pnpm -F @prompt-optimizer/ui build",
"build:web": "pnpm -F @prompt-optimizer/web build",
"build:ext": "pnpm -F @prompt-optimizer/extension build",
"build:desktop": "pnpm build:core && pnpm build:ui && pnpm build:web && pnpm -F @prompt-optimizer/desktop build",
"build:desktop-standalone": "cd packages/desktop-standalone && npm run build",
"build": "pnpm -r build",
"watch:ui": "pnpm -F @prompt-optimizer/ui build --watch",
"dev": "npm-run-all dev:setup dev:parallel",
"dev:setup": "npm-run-all clean:dist build:core build:ui",
"dev:parallel": "concurrently -k -p \"[{name}]\" -n \"UI,WEB\" \"pnpm run watch:ui\" \"pnpm run dev:web\"",
"dev:web": "pnpm -F @prompt-optimizer/web dev",
"dev:ext": "pnpm -F @prompt-optimizer/extension dev",
"dev:desktop": "npm-run-all dev:setup dev:desktop:parallel:fixed",
"dev:desktop:parallel": "concurrently -k -p \"[{name}]\" -n \"UI,WEB,DESKTOP\" \"pnpm run watch:ui\" \"pnpm run dev:web\" \"pnpm -F @prompt-optimizer/desktop dev\"",
"dev:desktop:parallel:fixed": "concurrently -k -p \"[{name}]\" -n \"WEB,DESKTOP\" \"pnpm run dev:web\" \"pnpm -F @prompt-optimizer/desktop dev\"",
"dev:desktop:fresh": "npm-run-all clean setup:install dev:desktop",
"test:core": "pnpm -F @prompt-optimizer/core test --run --passWithNoTests",
"test:ui": "pnpm -F @prompt-optimizer/ui test --run --passWithNoTests",
"test:web": "pnpm -F @prompt-optimizer/web test --run --passWithNoTests",
"test:ext": "pnpm -F @prompt-optimizer/extension test --run --passWithNoTests",
"test": "pnpm -r test --run --passWithNoTests",
"test:watch": "pnpm -r test --watch --passWithNoTests",
"clean:core": "rimraf packages/core/dist",
"clean:ui": "rimraf packages/ui/dist",
"clean:web": "rimraf packages/web/dist",
"clean:ext": "rimraf packages/extension/dist",
"clean:desktop": "rimraf packages/desktop/dist packages/desktop/web-dist",
"clean:vite:core": "rimraf packages/core/node_modules/.vite",
"clean:vite:ui": "rimraf packages/ui/node_modules/.vite",
"clean:vite:web": "rimraf packages/web/node_modules/.vite",
"clean:vite:ext": "rimraf packages/extension/node_modules/.vite",
"clean:vite": "npm-run-all clean:vite:core clean:vite:ui clean:vite:web clean:vite:ext",
"clean:dist": "npm-run-all clean:core clean:ui clean:web clean:ext clean:desktop",
"clean": "npm-run-all clean:dist clean:vite",
"setup:install": "pnpm install",
"dev:fresh": "npm-run-all clean setup:install dev",
"version:sync": "node scripts/sync-versions.js",
"version": "pnpm run version:sync && git add -A"
},
"devDependencies": {
"@intlify/unplugin-vue-i18n": "^6.0.3",
"concurrently": "^8.2.2",
"cross-env": "^7.0.3",
"electron": "^37.1.0",
"i18next": "^24.2.2",
"i18next-browser-languagedetector": "^8.0.4",
"lodash-unified": "^1.0.3",
"npm-run-all": "^4.1.5",
"rimraf": "^4.4.1",
"typescript": "^5.8.2"
},
"dependencies": {
"@element-plus/icons-vue": "^2.3.1",
"@floating-ui/core": "^1.6.9",
"@floating-ui/dom": "^1.6.13",
"@floating-ui/utils": "^0.2.9",
"@popperjs/core": "^2.11.8",
"@vue/reactivity": "^3.5.13",
"@vue/runtime-core": "^3.5.13",
"@vue/runtime-dom": "^3.5.13",
"@vue/shared": "^3.5.13",
"@vueuse/core": "^12.7.0",
"@vueuse/shared": "^12.7.0",
"async-validator": "^4.2.5",
"dayjs": "^1.11.13",
"electron-to-chromium": "^1.5.177",
"lodash-es": "^4.17.21",
"memoize-one": "^6.0.0",
"normalize-wheel-es": "^1.2.0",
"vue-i18n": "^10.0.6"
},
"keywords": [],
"author": "",
"license": "ISC",
"pnpm": {
"onlyBuiltDependencies": [
"electron"
]
}
}