mirror of
https://ghfast.top/https://github.com/aeroxw/tick-stock-panel.git
synced 2026-09-12 14:24:15 +08:00
feat(watchlist): 分组卡片/统计条完善 + 分组排序 + 监控自选导入 + 前端插槽
分组卡片视图 (WatchlistGroupCards): - 新增整页卡片总览: 组内按涨跌幅降序, 默认前 N 条可展开 - 头部重排: 名称+指标数值居左, 总数+N涨/N跌居右 (红涨绿跌着色) - 成员行: 创/科/北板块标识移至名称后; 序号列可开关 - 卡片设置 (GroupStatsSettings): 指标/排序/前N条/头部颜色/序号, 与统计条共享持久化 分组统计条 (WatchlistGroupStatsBar): - 中轴分叉条形图概览, 指标与排序可配置 - 行尾 N涨/N跌 红绿着色 分组管理: - 后端分组重排端点 + service + 测试 (9 passed) - 管理弹窗上移/下移 + 拖拽排序, 顺序贯通标签栏/统计条/卡片/侧栏 自选交互: - 修复 WatchlistAddMenu 内部滚动误关闭 (capture 目标包含判断) - 监控规则编辑器: 指定标的支持从自选/自选分组批量导入 (去重合并) 前端扩展插槽: - 新增 stock-preview.footer / watchlist.toolbar 插槽及 context 契约, 更新二开文档
This commit is contained in:
@@ -20,7 +20,7 @@
|
||||
- 扩展数据与声明式分析页面:适合不需要自定义 React 交互的页面。
|
||||
- 前端源码扩展注册:`frontend/src/custom/<namespace>/extension.tsx`,支持静态页面、导航和已开放插槽。
|
||||
- 后端源码扩展注册:`backend/app/custom/<module>.py`,支持 FastAPI 路由、启动钩子和通知格式化器。
|
||||
- 当前前端插槽:`layout.navigation.extra`。
|
||||
- 当前前端插槽:`layout.navigation.extra`、`stock-preview.footer`、`watchlist.toolbar`。
|
||||
- 当前后端继承点:`NotificationFormatter`。
|
||||
|
||||
尚未实现、只能在真实需求出现后增加的能力:
|
||||
@@ -111,12 +111,20 @@ export default extension
|
||||
- 注册顺序确定,使用 `order` 后再按 `id` 排序,避免加载顺序导致界面漂移。
|
||||
- 插槽内容必须遵守项目现有设计系统、响应式和可访问性要求。
|
||||
|
||||
当前只开放:
|
||||
当前开放:
|
||||
|
||||
```text
|
||||
layout.navigation.extra
|
||||
stock-preview.footer
|
||||
watchlist.toolbar
|
||||
```
|
||||
|
||||
各插槽 context 契约(均要求 `apiVersion: 1`,定义见 `frontend/src/extensions/types.ts` 的 `FrontendSlotContextMap`):
|
||||
|
||||
- `layout.navigation.extra`:`{ collapsed, pathname }`,侧边栏导航底部。
|
||||
- `stock-preview.footer`:`{ symbol, name, view }`,个股详情对话框底部(日K/分时图表下方);`view` 为 `'daily' | 'intraday'`。适合个股附加面板:龙虎榜、资金流、外部研究链接等。
|
||||
- `watchlist.toolbar`:`{ symbols, viewMode, selectedGroup, refresh }`,自选页工具栏末尾;`symbols` 为当前筛选视图中的标的,`refresh` 在扩展修改数据后调用以刷新自选增强数据。适合批量操作入口:自定义分析、导出、组合计算等。
|
||||
|
||||
新增插槽前必须有真实用例,并同时定义 context 类型、异常隔离和测试;不能只在类型表中预留名字。
|
||||
|
||||
### 3.3 当前路由与导航契约
|
||||
|
||||
Reference in New Issue
Block a user