吸收上游 26 个新 commit: - feat: Airwallex 支付 + 多币种支持 (b23055af) - feat: Antigravity user agent 版本可配置 (a07a0dac) - fix(mimic): 同步 messages 里 tool_use 名称 (f97b8534) - fix: cache_control 改写默认关闭 (9377c967) - fix(openai): 多 tool_use 上下文延续 (87d73236) - fix(openai): 未定价模型零成本记录 (6d69ae87) - fix(openai): WS replay tool 输出延续 (16a31557) - fix(openai): 429 plan type 同步 (c3a14717) - fix(gemini): Vertex token 走 account proxy (2a17c0b2) - fix(ccswitch): codex 模型 import deeplink (65493df9) - fix: 订单详情/支付页 NaN 修复 (ba1c6fa5, 6884b03e) - 系统设置标签导航优化 (18cc4691) 本地解决: - config.go CSP: 合并 Firebase Auth (Windsurf) + Airwallex 域名 - KeysView.vue: 删除死代码(已被 buildCcSwitchImportDeeplink 取代) - ccswitchImport.ts: 补充 windsurf 平台 case - 修复 NewOpsHandler/RegisterGatewayRoutes/SelectAccountWithScheduler 测试签名 保留: - Antigravity newapi 兼容 (ForwardUpstream /v1/messages 透传) - Antigravity 核心(gateway_service, oauth, client, credits_overages 等) - Windsurf 全套 - Claude 网关 + TLS 指纹路由 - 其他本地 feat: P2C 调度 / viewer / context 压缩 / RPM / fallback / health
62 lines
1.7 KiB
JSON
62 lines
1.7 KiB
JSON
{
|
|
"name": "sub2api-frontend",
|
|
"private": true,
|
|
"version": "1.0.0",
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "vite",
|
|
"build": "vue-tsc -b && vite build",
|
|
"preview": "vite preview",
|
|
"lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix",
|
|
"lint:check": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts",
|
|
"typecheck": "vue-tsc --noEmit",
|
|
"test": "vitest",
|
|
"test:run": "vitest run",
|
|
"test:coverage": "vitest run --coverage"
|
|
},
|
|
"dependencies": {
|
|
"@airwallex/components-sdk": "^1.30.2",
|
|
"@lobehub/icons": "^4.0.2",
|
|
"@tanstack/vue-virtual": "^3.13.23",
|
|
"@vueuse/core": "^10.7.0",
|
|
"axios": "^1.16.0",
|
|
"chart.js": "^4.4.1",
|
|
"dompurify": "^3.3.1",
|
|
"driver.js": "^1.4.0",
|
|
"file-saver": "^2.0.5",
|
|
"marked": "^17.0.1",
|
|
"pinia": "^2.1.7",
|
|
"qrcode": "^1.5.4",
|
|
"vue": "^3.4.0",
|
|
"vue-chartjs": "^5.3.0",
|
|
"vue-draggable-plus": "^0.6.1",
|
|
"vue-i18n": "^9.14.5",
|
|
"vue-router": "^4.2.5",
|
|
"xlsx": "^0.18.5"
|
|
},
|
|
"devDependencies": {
|
|
"@stripe/stripe-js": "^9.0.1",
|
|
"@types/dompurify": "^3.0.5",
|
|
"@types/file-saver": "^2.0.7",
|
|
"@types/mdx": "^2.0.13",
|
|
"@types/node": "^20.10.5",
|
|
"@types/qrcode": "^1.5.6",
|
|
"@typescript-eslint/eslint-plugin": "^7.18.0",
|
|
"@typescript-eslint/parser": "^7.18.0",
|
|
"@vitejs/plugin-vue": "^5.2.3",
|
|
"@vitest/coverage-v8": "^2.1.9",
|
|
"@vue/test-utils": "^2.4.6",
|
|
"autoprefixer": "^10.4.16",
|
|
"eslint": "^8.57.0",
|
|
"eslint-plugin-vue": "^9.25.0",
|
|
"jsdom": "^24.1.3",
|
|
"postcss": "^8.4.32",
|
|
"tailwindcss": "^3.4.0",
|
|
"typescript": "~5.6.0",
|
|
"vite": "^5.0.10",
|
|
"vite-plugin-checker": "^0.9.1",
|
|
"vitest": "^2.1.9",
|
|
"vue-tsc": "^2.2.0"
|
|
}
|
|
}
|