Commit Graph

14 Commits

Author SHA1 Message Date
farion1231
5be45e269c 简化界面:删除导入当前配置功能
- 移除 ImportConfigModal 组件及相关文件
- 删除头部的导入当前配置按钮
- 移除 importCurrentConfig 相关的 API 和 IPC 处理器
- 保留 importCurrentConfigAsDefault 功能用于首次启动
- 界面更简洁,专注核心功能:添加、编辑、切换、删除供应商
- 减少用户困惑,因为自动创建的默认供应商已经满足大部分需求
2025-08-07 21:37:34 +08:00
farion1231
0cfd65cb90 优化首次启动体验:自动创建默认供应商且设为选中状态
- 新增 importCurrentConfigAsDefault 函数,创建 ID 为 'default' 的特殊供应商
- 默认供应商不生成独立配置文件,直接使用现有 settings.json
- 首次启动时自动导入现有配置为默认供应商,并设为选中状态
- 切换到默认供应商时无需文件操作,直接使用原配置
- 删除默认供应商时保护原配置文件不被误删
- 简化 ImportConfigModal 组件,移除 isEmpty 相关逻辑
- 提升用户体验:无需手动操作,开箱即用
2025-08-07 21:28:45 +08:00
farion1231
bbb1868899 修复编辑供应商名称后配置文件名不同步问题
- 修改 getProviderConfigPath 函数,支持基于供应商名称生成配置文件名
- 在 updateProvider 中添加文件重命名逻辑,当供应商名称改变时自动重命名配置文件
- 更新所有相关函数调用,传递供应商名称参数确保文件命名一致
- 完善 switchProvider 备份逻辑,使用正确的供应商名称生成备份文件名
- 添加必要的导入声明修复编译错误

现在编辑供应商名称后,对应的配置文件名会自动更新反映新名称
2025-08-07 20:51:13 +08:00
farion1231
c268f962af 重大重构:从字段替换切换到完整配置文件切换系统
- 实现基于文件重命名的供应商切换机制,支持完整settings.json配置切换
- 移除所有向后兼容代码,简化为纯JSON配置模式
- 添加导入当前配置功能,解决首次使用时配置丢失问题
- 移除描述字段,简化用户界面
- 完整的错误处理和回滚机制确保配置安全
- 清理所有调试代码,优化代码质量
2025-08-07 15:48:30 +08:00
farion1231
edc203a10b 重大改进:用原生 JSON 存储替换 electron-store
- 实现 SimpleStore 类,使用原生 fs 操作 JSON 文件
- 解决 "Cannot find module 'conf'" 的依赖问题
- 移除 electron-store 依赖,减少包体积
- 配置文件存储在 ~/.cc-switch/config.json
- 数据格式透明,便于备份和调试
- 修复 TypeScript 类型问题
- 测试通过:构建、打包、运行正常
2025-08-07 10:09:17 +08:00
farion1231
588883ffc4 代码优化:清理冗余功能并修复关键问题
- 删除未使用的 axios 依赖
- 移除 Provider 接口中未使用的 model 字段
- 删除未使用的供应商连通性检查功能
- 修复 preload.ts 中缺失的 IPC 方法暴露
- 简化 UI:移除重复的单选按钮,仅保留启用按钮
- 修复 TypeScript 接口定义不完整的问题
2025-08-06 20:48:03 +08:00
farion1231
41a6bda4ab 修复编辑供应商配置同步问题
- 修复当编辑当前激活供应商时,Claude Code配置文件未同步更新的问题
- 在updateProvider中增加逻辑检测是否为当前激活供应商
- 如果是当前激活供应商,同时调用switchProvider更新~/.claude/settings.json
- 确保编辑后的配置能立即生效,无需重新切换供应商
2025-08-06 11:50:13 +08:00
farion1231
4540ad613f 添加供应商URL可点击功能:支持在默认浏览器中打开链接 2025-08-06 09:56:27 +08:00
farion1231
b83652a162 修复fetch API超时实现:使用AbortController替换不支持的timeout参数
- 替换fetch中的timeout选项为AbortController + setTimeout实现
- 修复TypeScript编译错误:timeout不存在于RequestInit类型中
- 添加proper超时清理逻辑避免内存泄漏
- 更新CLAUDE.md文档:统一使用pnpm命令,补充IPC接口说明
2025-08-06 08:08:27 +08:00
farion1231
ea2a86fe30 修复缺失的 checkStatus IPC处理器
- 添加 checkStatus IPC handler 到主进程
- 实现基础的 API 连通性检查
- 修复 preload API 与主进程不匹配的问题
2025-08-06 07:41:43 +08:00
farion1231
ca5035696f 移除状态检测功能,专注核心切换功能
- 删除 checkProviderStatus 函数和相关 IPC 处理
- 移除 App.tsx 中所有状态检测相关的状态和函数
- 简化 ProviderList.tsx,去除状态显示和检查按钮
- 清理 types.ts 中的 ProviderStatus 类型定义
- 界面更简洁,专注于供应商切换这一核心功能
2025-08-05 23:28:47 +08:00
farion1231
3df40def1e 添加配置文件浏览选择功能
- 在主进程添加文件选择对话框,支持选择 settings.json 配置文件
- 更新类型定义和预加载脚本,添加 selectConfigFile API
- 在界面底部配置路径区域添加"浏览"按钮
- 优化样式布局,使配置路径和浏览按钮水平排列
- 修复 React 导入警告,移除未使用的 React 导入
2025-08-05 20:30:18 +08:00
farion1231
35cb750d19 修复 Electron 应用窗口不显示的问题
- 修正 Electron 依赖版本为 28.0.0(解决安装问题)
- 更新 package.json 中的启动脚本,改进并发命令执行
- 修正主进程入口文件路径配置
- 调整 TypeScript 编译配置的根目录设置
- 添加 Windows 开发环境启动脚本 start-dev.bat
- 更新 .gitignore 排除编译产物和锁文件

问题原因:pnpm 默认阻止了 Electron 安装脚本执行,导致应用无法正常启动
2025-08-05 09:51:21 +08:00
farion1231
e0a9c1ab4c initial commit 2025-08-04 22:16:26 +08:00