|
|
6c4d9affae
|
fix(settings): Radio.Group 按钮模式,help 说明,移除多余底边距
|
2026-06-06 23:28:59 +08:00 |
|
|
|
c0384f9a07
|
fix(settings): Radio.Group 添加 optionType="button" 启用按钮渲染
|
2026-06-06 23:12:57 +08:00 |
|
|
|
dd2835bb94
|
feat(settings): 设置页改造为 Form + Radio.Group + Switch,紧凑模式开关
|
2026-06-06 22:55:33 +08:00 |
|
|
|
3f88e33bd1
|
feat: 全局设置系统 — settings 表、CRUD 路由、主题偏好持久化
|
2026-06-05 23:10:32 +08:00 |
|
|
|
98712cf047
|
fix: 消除 code-block-body 背景色与 shiki 主题背景色视觉割裂
|
2026-06-05 16:44:13 +08:00 |
|
|
|
85abc2a515
|
feat: antd 主题改造 — 启用 cssVar、纯黑白 colorPrimary、统一 sidebar/滚动条/按钮样式
|
2026-06-05 16:01:54 +08:00 |
|
|
|
db40d04dc5
|
refactor(db): 统一数据库 schema — 软删除、命名规范、约束标准化
- 全表新增 deleted_at 列,统一软删除替代硬删除+archived_at
- models.model_id 重命名为 external_id,消除语义混淆
- conversations.model_id 改为可空(模型为建议而非绑定)
- messages 新增 updated_at,移除 CASCADE 改为 DAO 层级联
- 移除 DB 层 UNIQUE 约束,改为应用层检查(配合软删除)
- 新增 helpers.ts(baseColumns + 构造层防御)、ESLint 规则、契约测试
- 迁移 0004 补全 CHECK 约束(providers.type/materials.status/messages.role)
- DAO 层全面重写:级联软删除、应用层唯一、provider 删除保护
- 路由/前端/测试全量适配 externalId 重命名及类型变更
|
2026-06-05 01:02:23 +08:00 |
|
|
|
6f547560d1
|
refactor: 统一管理页面布局 — FilterToolbar + usePageSearchParams + parseListParams
|
2026-06-04 17:25:36 +08:00 |
|
|
|
61b479e2be
|
feat: 拆分模型/供应商为独立路由页面,侧边栏支持 SubMenu 分组
|
2026-06-04 11:11:32 +08:00 |
|
|
|
f67cfa84ef
|
feat: 用自定义侧边栏替换聊天室 Conversations 组件,提取公共 SidebarGroup 和 date-group
|
2026-06-04 00:46:57 +08:00 |
|
|
|
dc7d9e83b8
|
feat: 收集箱侧边栏UI美化 — 自定义滚动条、隐藏空分组、优化列表项间距
|
2026-06-03 22:31:49 +08:00 |
|
|
|
525278870f
|
style: 收集箱侧边栏对齐聊天室布局模式,按钮筛选栏区域独立padding,列表贴边
|
2026-06-03 21:46:44 +08:00 |
|
|
|
eb93de52d8
|
fix: 修正 markdown-to-jsx 导入方式 + 新增 formatDateLabel 日期工具函数
- TextPart: default import → named import
- MaterialCard: 使用 formatDateLabel 显示今天/昨天/日期
- 清理旧测试文件,新增 ResourceTable 测试
|
2026-06-03 21:08:00 +08:00 |
|
|
|
ad10134c20
|
chore: merge dev-chat into master
# Conflicts:
# src/web/styles.css
|
2026-06-03 17:56:02 +08:00 |
|
|
|
a896091d27
|
feat: 增强 Markdown 代码块高亮和表格样式
|
2026-06-03 17:23:43 +08:00 |
|
|
|
1a7fd58553
|
feat(inbox): 侧边栏状态筛选与日期分组 — Segmented 图标筛选 + Skeleton 加载态 + 五级日期分组可折叠 + 卡片显示关联日期
|
2026-06-03 17:22:14 +08:00 |
|
|
|
abe30ead6a
|
refactor(inbox): 侧边栏素材列表改为轻量 Flex 布局 — Card→Flex, 新增状态 Tag, hover 切换删除按钮, 左侧竖线选中态
|
2026-06-03 16:21:56 +08:00 |
|
|
|
714da2d633
|
feat: 聊天侧边栏新对话按钮统一为 antd Button 样式
|
2026-06-03 15:17:05 +08:00 |
|
|
|
21b557c255
|
feat(inbox): 素材持久化 CRUD — 数据库表 + API + 前端接入
- 新增 materials 表(id/projectId/description/associatedDate/status/createdAt/updatedAt)
- 新增 4 个后端 API 路由(list/create/get/delete)+ 13 个测试
- 新增 use-materials hooks(TanStack Query)
- 收集箱页面重构为三层架构(InboxPage + MaterialSidebar + MaterialDetailPanel)
- MaterialCard: Popconfirm 删除确认 + 粗粒度时间格式
- MaterialContent: 展示状态标签 + createdAt
- 更新开发文档 backend.md / frontend.md
|
2026-06-03 14:53:23 +08:00 |
|
|
|
02a202290f
|
refactor: 替换 Markdown 渲染组件为 markdown-to-jsx
|
2026-06-03 13:13:04 +08:00 |
|
|
|
5b09a16bc3
|
refactor(web): React 最佳实践优化 — memo/callback + 目录边界 + 路由增强
- useLogger: useMemo + JSON.stringify 替代 useState 派生
- useIsDark: effectiveTheme 替代 token 色值比较
- useCurrentProject: layouts/ 提升到 shared/hooks/
- ConsoleShell: locale useMemo 缓存
- ConsoleOutlet: 添加 Suspense 边界
- routes: 添加 layout 级 errorElement
- Table 组件: operationColumn useMemo + useCallback
- ChatPanel: footer 合并为 useCallback, props 传入模型数据
- ChatPage: textModels/conversations useMemo 缓存
|
2026-06-03 11:32:28 +08:00 |
|
|
|
2cdbe474ce
|
feat(workbench): 新增收集箱页面 — 素材列表/详情分栏布局 + 新增/选中/删除 mock 交互
|
2026-06-03 08:36:38 +08:00 |
|
|
|
b1dec691e9
|
refactor(web): 前端目录重构 — consoles/pages → layouts/features + shared
- consoles/admin/ → layouts/admin-layout/
- consoles/workbench/ → layouts/workbench-layout/ + features/chat/
- pages/ → features/ (dashboard, models, projects, not-found)
- components/ → shared/components/
- hooks/ → shared/hooks/
- utils/ → shared/utils/
- 更新所有 import 路径 (src/web/ + tests/web/)
- 更新开发文档 (README.md, frontend.md, architecture.md)
|
2026-06-02 23:17:28 +08:00 |
|