Chrome and Firefox uploads were done by hand. Submit Web Clipper now packages the extension and sends it for review without joining the product release.
217 lines
14 KiB
JSON
217 lines
14 KiB
JSON
{
|
|
"name": "edgeever",
|
|
"version": "1.96.0",
|
|
"packageManager": "bun@1.3.14",
|
|
"private": true,
|
|
"type": "module",
|
|
"workspaces": [
|
|
"apps/*",
|
|
"packages/*"
|
|
],
|
|
"scripts": {
|
|
"test": "bun run test:bulk && bun run test:integration",
|
|
"test:bulk": "bun test --path-ignore-patterns='tests/e2e/**' --path-ignore-patterns='apps/api/src/companion-learning.test.mjs' --path-ignore-patterns='apps/api/src/resource-upload-integration.test.mjs'",
|
|
"test:integration": "bun test apps/api/src/companion-learning.test.mjs apps/api/src/resource-upload-integration.test.mjs",
|
|
"dev": "bun run dev:local",
|
|
"dev:api": "bun run dev:api:local",
|
|
"dev:local": "bun scripts/local-dev.mjs start local",
|
|
"dev:prepare": "bun scripts/local-dev.mjs prepare local",
|
|
"dev:ready": "bun scripts/local-dev.mjs ready local",
|
|
"dev:doctor": "bun scripts/local-dev.mjs doctor",
|
|
"test:local-dev": "bun test scripts/local-dev.test.mjs",
|
|
"dev:api:local": "bun scripts/local-dev.mjs api local",
|
|
"dev:demo": "bun scripts/local-dev.mjs start demo",
|
|
"dev:demo:reset": "bun scripts/local-dev.mjs reset demo",
|
|
"dev:api:demo": "bun scripts/local-dev.mjs api demo",
|
|
"dev:self-hosted": "bun --watch scripts/self-hosted-server.mjs",
|
|
"start:self-hosted": "bun scripts/self-hosted-server.mjs",
|
|
"test:docker-release": "bun test scripts/docker-release.test.mjs scripts/prune-tcr-sha-tags.test.mjs scripts/docker-installer.test.mjs scripts/build-cloudflare-worker.test.mjs tests/storage-adapter.test.ts",
|
|
"dev:remote": "concurrently -k -n api,web -c cyan,magenta \"bun run dev:api:remote\" \"bun run dev:web\"",
|
|
"dev:api:remote": "bun scripts/run-wrangler.mjs dev --remote --port 8787",
|
|
"dev:web": "vite --config apps/web/vite.config.ts --host 127.0.0.1 --port 5173",
|
|
"dev:desktop": "concurrently -k -n web,desktop -c magenta,cyan \"bun run dev:web\" \"bun run --cwd apps/desktop dev\"",
|
|
"dev:mobile": "bun scripts/mobile-dev.mjs",
|
|
"dev:mobile:android": "bun scripts/mobile-dev.mjs run:android",
|
|
"prepare:brand:icons": "bun scripts/trace-brand-icon.mjs && bun scripts/prepare-brand-icons.mjs",
|
|
"prepare:mobile:icons": "bun scripts/prepare-mobile-icons.mjs",
|
|
"prepare:desktop:icons": "bun scripts/prepare-desktop-icons.mjs",
|
|
"preview:desktop:icon": "bun scripts/preview-macos-dock-icon.mjs",
|
|
"build:android:fast": "bash scripts/build-android-local.sh fast",
|
|
"build:android:fast:local": "bun --env-file=${EDGE_EVER_ANDROID_ENV_FILE:-$HOME/.config/edgeever/android/signing.env} run build:android:fast",
|
|
"build:android:apk": "bash scripts/build-android-local.sh apk",
|
|
"build:android:apk:local": "bun --env-file=${EDGE_EVER_ANDROID_ENV_FILE:-$HOME/.config/edgeever/android/signing.env} run build:android:apk",
|
|
"build:android:play": "bash scripts/build-android-local.sh play",
|
|
"build:android:play:local": "bun --env-file=${EDGE_EVER_ANDROID_ENV_FILE:-$HOME/.config/edgeever/android/signing.env} run build:android:play",
|
|
"dev:site": "bun --cwd apps/site dev",
|
|
"build": "bun run build:web",
|
|
"build:self-hosted": "bun build scripts/self-hosted-server.mjs --target=bun --format=esm --outdir=dist/self-hosted --sourcemap=none",
|
|
"build:plugin-api": "bun run --cwd packages/plugin-api build",
|
|
"build:extension": "vite build --config apps/extension/vite.config.ts",
|
|
"build:extension:firefox": "bun run --cwd apps/extension build:firefox",
|
|
"lint:extension:firefox": "bun run --cwd apps/extension lint:firefox",
|
|
"package:extension:firefox": "bun run --cwd apps/extension package:firefox",
|
|
"test:extension": "bun run --cwd apps/extension test",
|
|
"test:e2e": "playwright test",
|
|
"test:e2e:install": "playwright install chromium",
|
|
"dev:extension": "vite --config apps/extension/vite.config.ts",
|
|
"build:web": "vite build --config apps/web/vite.config.ts",
|
|
"build:desktop:sidecar": "cargo build --manifest-path crates/desktop-sidecar/Cargo.toml --release",
|
|
"build:desktop": "EDGE_EVER_DESKTOP_BUILD=1 bun run prepare:desktop:icons && bun run build:web && bun run build:desktop:sidecar && bun run --cwd apps/desktop dist",
|
|
"benchmark:desktop:sidecar": "bun scripts/benchmark-desktop-sidecar.mjs",
|
|
"verify:web-performance": "bun scripts/verify-web-performance.mjs",
|
|
"test:release-planning": "bun test scripts/plan-native-release.test.mjs scripts/check-native-release-assets.test.mjs scripts/create-mac-update-metadata.test.mjs scripts/windows-update-metadata.test.mjs scripts/linux-update-release.test.mjs scripts/desktop-build-workflow.test.mjs scripts/pe-imports.test.mjs scripts/report-native-build-timings.test.mjs scripts/release.test.mjs scripts/validate-store-delivery.test.mjs scripts/store-delivery.test.mjs scripts/xcode-cloud-control.test.mjs scripts/download-play-universal-apk.test.mjs scripts/verify-android-apk-signature.test.mjs scripts/desktop-icns.test.mjs scripts/verify-desktop-cross-version-startup.test.mjs scripts/preview-macos-dock-icon.test.mjs apps/web/src/lib/version-check.test.mjs apps/mobile/src/lib/mobile-release.test.ts",
|
|
"release": "bun scripts/release.mjs",
|
|
"publish:stores": "bun scripts/store-delivery.mjs",
|
|
"publish:extension": "bun scripts/publish-web-clipper.mjs",
|
|
"test:desktop:sidecar": "bun scripts/test-desktop-sidecar.mjs",
|
|
"test:desktop": "bun test apps/desktop/src/main/account-scope.test.mjs apps/desktop/src/main/app-protocol.test.mjs apps/desktop/src/main/child-process-start.test.mjs apps/desktop/src/main/clipboard-write.test.mjs apps/desktop/src/main/desktop-diagnostics.test.mjs apps/desktop/src/main/desktop-menu.test.mjs apps/desktop/src/main/desktop-update-flow.test.mjs apps/desktop/src/main/diagnostic-log.test.mjs apps/desktop/src/main/file-association.test.mjs apps/desktop/src/main/wechat-chat-archive.test.mjs apps/desktop/src/main/wechat-share-import.test.mjs apps/desktop/src/main/share-extension-registration.test.mjs apps/desktop/src/main/windows-share-menu.test.mjs apps/desktop/src/main/file-permissions.test.mjs apps/desktop/src/main/installation-location.test.mjs apps/desktop/src/main/local-data-reset.test.mjs apps/desktop/src/main/ai-direct.test.mjs apps/desktop/src/main/plugin-public-network.test.mjs apps/desktop/src/main/renderer-recovery.test.mjs apps/desktop/src/main/renderer-hibernate.test.mjs apps/desktop/src/main/renderer-startup-guard.test.mjs apps/desktop/src/main/renderer-storage-migration.test.mjs apps/desktop/src/main/resource-request.test.mjs apps/desktop/src/main/resource-url.test.mjs apps/desktop/src/main/scheduled-task-scheduler.test.mjs apps/desktop/src/main/screenshot-capture.test.mjs apps/desktop/src/main/staged-resource.test.mjs apps/desktop/src/main/staged-resource-alias.test.mjs apps/desktop/src/main/tray-icon.test.mjs apps/desktop/src/main/user-data-directory.test.mjs apps/desktop/src/main/window-open-policy.test.mjs apps/desktop/src/main/window-visibility.test.mjs apps/desktop/src/main/windows-update-trust.test.mjs apps/web/src/lib/api.test.mjs apps/web/src/lib/app-page-path.test.mjs apps/web/src/lib/clipboard.test.mjs apps/web/src/lib/desktop-renderer-ready.test.mjs apps/web/src/lib/desktop-workspace-restore.test.mjs apps/web/src/lib/desktop-repository.test.mjs apps/web/src/lib/desktop-resources.test.mjs apps/web/src/lib/desktop-acp.test.mjs apps/web/src/lib/desktop-sync.test.mjs apps/web/src/lib/local-mirror.test.mjs apps/web/src/lib/repository.test.mjs apps/web/src/lib/runtime.test.mjs apps/web/src/lib/screenshot-import.test.mjs apps/web/src/lib/wechat-chat-import.test.mjs apps/web/src/lib/shared-file-import.test.mjs apps/web/src/lib/sync-queue.test.mjs && bun test --cwd apps/desktop src/main/acp-adapter-manager.test.mjs src/main/acp-host.test.mjs src/main/antigravity-proxy.test.mjs src/main/acp-mcp-bridge.test.mjs && bun run test:desktop:sidecar",
|
|
"verify:desktop-renderer": "bun scripts/verify-desktop-renderer.mjs",
|
|
"verify:renderer-origin-migration": "bun run --cwd apps/desktop verify-origin-migration",
|
|
"verify:desktop-cross-version-startup": "bun scripts/verify-desktop-cross-version-startup.mjs",
|
|
"verify:desktop-protocol-e2e": "bun scripts/verify-desktop-protocol-e2e.mjs",
|
|
"verify:packaged-desktop-startup": "bun scripts/verify-packaged-desktop-startup.mjs",
|
|
"verify:desktop-package": "bun scripts/verify-desktop-package.mjs",
|
|
"build:worker": "bun scripts/build-cloudflare-worker.mjs",
|
|
"build:cloudflare": "bun run typecheck && bun run build && bun run build:worker",
|
|
"build:site": "bun --cwd apps/site build",
|
|
"preview:web": "vite preview --config apps/web/vite.config.ts --host 127.0.0.1 --port 4173",
|
|
"preview:site": "bun --cwd apps/site preview",
|
|
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
"typecheck:mobile": "bun run --cwd apps/mobile typecheck",
|
|
"typecheck:ios-editor": "bun run --cwd apps/ios/EditorSource typecheck",
|
|
"test:restore-deleted-notebook": "bun scripts/test-restore-deleted-notebook.mjs",
|
|
"test:mcp": "bun scripts/test-mcp.mjs",
|
|
"db:migrate:local": "bun scripts/local-dev.mjs prepare local",
|
|
"db:migrate:demo": "bun scripts/local-dev.mjs prepare demo",
|
|
"db:migrate:remote": "bun scripts/run-wrangler.mjs d1 migrations apply DB --remote",
|
|
"auth:hash": "bun scripts/hash-password.mjs",
|
|
"auth:reset-password": "bun scripts/reset-password.mjs",
|
|
"cli": "bun scripts/edgeever.mjs",
|
|
"import:evernote": "bun scripts/import-evernote-enex-via-mcp.mjs",
|
|
"mcp:stdio": "bun scripts/edgeever-mcp-stdio.mjs",
|
|
"deploy:doctor": "bun scripts/cloudflare-deploy.mjs doctor",
|
|
"deploy:setup": "bun scripts/cloudflare-deploy.mjs setup",
|
|
"deploy": "bun run build:cloudflare && EDGE_EVER_USE_EXISTING_AUTH_SECRET=true bun run deploy:ci",
|
|
"deploy:manual": "export EDGE_EVER_DEPLOYMENT_TRIGGER=manual EDGE_EVER_DEPLOYMENT_METHOD=local_cli && bun run deploy:doctor && bun run build:cloudflare && bun run deploy:ci",
|
|
"deploy:ci": "bun run db:migrate:remote && bun run deploy:worker && bun run deploy:verify",
|
|
"deploy:worker": "bun scripts/run-wrangler.mjs deploy",
|
|
"deploy:cloudflare-builds": "EDGE_EVER_USE_EXISTING_AUTH_SECRET=true bun run deploy:ci",
|
|
"deploy:verify": "bun scripts/verify-deployment.mjs",
|
|
"demo:sync": "bun scripts/sync-demo.mjs",
|
|
"deploy:builds:setup": "bun scripts/cloudflare-workers-builds.mjs setup",
|
|
"deploy:site": "bun run build:site && wrangler pages deploy apps/site/dist --project-name=edgeever-official"
|
|
},
|
|
"cloudflare": {
|
|
"bindings": {
|
|
"DB": {
|
|
"description": "EdgeEver 的 D1 数据库。用于存储 notebooks、memos、memo_contents、resources 元数据、全文搜索索引、修订记录和审计事件。"
|
|
},
|
|
"RESOURCES": {
|
|
"description": "EdgeEver 的 R2 对象存储桶。用于存储笔记内图片、附件和未来导入导出文件;D1 只保存资源元数据和 memo 关联。"
|
|
},
|
|
"EDGE_EVER_AUTH_PASSWORD": {
|
|
"description": "首次登录密码,必填。请设置一个仅用于此实例的强密码;部署后可在个人设置中修改。"
|
|
},
|
|
"EDGE_EVER_CREDENTIALS_ENCRYPTION_KEY": {
|
|
"description": "可选的高级配置。覆盖从实例认证 Secret 自动派生的 AI 凭据加密密钥,用于独立密钥轮换。"
|
|
}
|
|
}
|
|
},
|
|
"dependencies": {
|
|
"@ai-sdk/anthropic": "^4.0.36",
|
|
"@ai-sdk/google": "^4.0.39",
|
|
"@ai-sdk/openai-compatible": "^3.0.27",
|
|
"@aws-sdk/client-s3": "^3.1095.0",
|
|
"@edgeever/plugin-api": "workspace:*",
|
|
"@edgeever/shared": "workspace:*",
|
|
"@hono/zod-validator": "latest",
|
|
"@radix-ui/react-checkbox": "^1.3.11",
|
|
"@radix-ui/react-collapsible": "^1.1.20",
|
|
"@radix-ui/react-context-menu": "^2.3.7",
|
|
"@radix-ui/react-dialog": "^1.1.23",
|
|
"@radix-ui/react-dropdown-menu": "^2.1.24",
|
|
"@radix-ui/react-select": "^2.3.7",
|
|
"@radix-ui/react-slot": "^1.3.3",
|
|
"@radix-ui/react-switch": "^1.3.7",
|
|
"@radix-ui/react-toggle-group": "^1.1.19",
|
|
"@radix-ui/react-tooltip": "^1.2.16",
|
|
"@tanstack/react-query": "latest",
|
|
"@tanstack/react-table": "^8.21.3",
|
|
"@tanstack/react-virtual": "^3.14.13",
|
|
"@tiptap/core": "3.31.0",
|
|
"@tiptap/extension-collaboration": "3.31.0",
|
|
"@tiptap/extension-details": "3.31.0",
|
|
"@tiptap/extension-drag-handle": "3.31.0",
|
|
"@tiptap/extension-drag-handle-react": "3.31.0",
|
|
"@tiptap/extension-image": "3.31.0",
|
|
"@tiptap/extension-list": "3.31.0",
|
|
"@tiptap/extension-node-range": "3.31.0",
|
|
"@tiptap/extension-placeholder": "3.31.0",
|
|
"@tiptap/extension-table": "3.31.0",
|
|
"@tiptap/pm": "3.31.0",
|
|
"@tiptap/react": "3.31.0",
|
|
"@tiptap/starter-kit": "3.31.0",
|
|
"@tiptap/suggestion": "3.31.0",
|
|
"@tiptap/y-tiptap": "3.0.7",
|
|
"ai": "^7.0.58",
|
|
"aws4fetch": "^1.0.20",
|
|
"class-variance-authority": "latest",
|
|
"clsx": "latest",
|
|
"cmdk": "^1.1.1",
|
|
"croner": "^10.0.1",
|
|
"dexie": "latest",
|
|
"fast-xml-parser": "^5.9.3",
|
|
"fflate": "^0.8.3",
|
|
"hono": "latest",
|
|
"i18next": "^26.3.4",
|
|
"katex": "0.16.22",
|
|
"lucide-react": "latest",
|
|
"marked": "^18.0.5",
|
|
"p-limit": "^6.2.0",
|
|
"pdfjs-dist": "^6.2.108",
|
|
"react": "latest",
|
|
"react-dom": "latest",
|
|
"react-dropzone": "^15.0.0",
|
|
"react-i18next": "^17.0.8",
|
|
"react-router": "^8.1.0",
|
|
"sharp": "^0.35.2",
|
|
"tailwind-merge": "latest",
|
|
"turndown": "^7.2.4",
|
|
"vaul": "^1.1.2",
|
|
"webdav": "^5.10.0",
|
|
"workbox-window": "^7.4.1",
|
|
"yet-another-react-lightbox": "^3.32.0",
|
|
"zod": "latest"
|
|
},
|
|
"devDependencies": {
|
|
"@cloudflare/workers-types": "latest",
|
|
"@electron/asar": "3.4.1",
|
|
"@playwright/test": "^1.62.1",
|
|
"@types/marked": "^6.0.0",
|
|
"@types/node": "latest",
|
|
"@types/react": "latest",
|
|
"@types/react-dom": "latest",
|
|
"@types/turndown": "^5.0.6",
|
|
"@vitejs/plugin-react": "latest",
|
|
"@tailwindcss/vite": "^4.3.2",
|
|
"concurrently": "latest",
|
|
"esbuild": "0.28.1",
|
|
"fake-indexeddb": "^6.2.5",
|
|
"google-auth-library": "^11.0.2",
|
|
"tailwindcss": "^4.3.2",
|
|
"tw-animate-css": "^1.4.0",
|
|
"typescript": "latest",
|
|
"vite": "latest",
|
|
"vite-plugin-pwa": "^1.3.0",
|
|
"wrangler": "workspace:*"
|
|
},
|
|
"overrides": {
|
|
"prosemirror-model": "1.25.11",
|
|
"react-native": "0.86.3"
|
|
},
|
|
"patchedDependencies": {
|
|
"expo-sharing@57.0.16": "patches/expo-sharing@57.0.16.patch",
|
|
"mermaid@11.16.0": "patches/mermaid@11.16.0.patch"
|
|
}
|
|
}
|