dsh-xueqiu 1.22.4 → 1.22.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.en.md +2 -0
- package/README.md +5 -0
- package/dynamic/client.js +20 -3
- package/package.json +1 -1
- package/src/client/index.js +20 -3
package/README.en.md
CHANGED
|
@@ -135,6 +135,8 @@ The data layer is defended in depth — safe to leave open for hours:
|
|
|
135
135
|
|
|
136
136
|
## Changelog
|
|
137
137
|
|
|
138
|
+
- **1.22.6** (2026-08-26) — **Fix: duplicate hover info on the minute tab** (found while auditing 1.22.5). For the minute area chart open=high=low=close are identical, so the canvas OHLC legend was pure redundancy, and the xq-minute indicator legend (prev-close/avg) duplicated the custom .xq-tip. Minute mode now disables canvas legends entirely (candle + indicator); hover keeps only .xq-tip. Also: **K-line hover now shows MA values** (catching up on a gap since 1.22.0 where MA numbers were visible nowhere) — indicator legend set to `follow_cross`: on hover a second colored line below the candle row shows MA5/10/30/60 values (measured on Maotai: single line, 70% width, no wrap), matching Xueqiu.
|
|
139
|
+
- **1.22.5** (2026-08-26) — **Fix: hover OHLC legend wrapped to two lines over the candles** (leftover from 1.22.3). After `follow_cross`, the default English time/open/high/low/close/volume titles were too long for the narrow panel and the legend folded onto two lines covering candles on hover. Now a compact single-line Chinese legend (`开 高 低 收 量`, size 10) with the ticker title hidden — measured on hover: one 10px line at 45% width, no wrapping.
|
|
138
140
|
- **1.22.4** (2026-08-26) — **Fix: switching to the minute tab crashed the whole panel** (1.22.3 regression). The double-click-to-latest cleanup used `boxRef.current.removeEventListener`, but React clears refs before running effect cleanup on unmount, so `boxRef.current` was null → TypeError → the `conversation.input.dock` slot crashed entirely, leaving only the mini badge with no way back in. Now the node is captured in a closure inside the effect. Regression-tested: K-line↔minute 4 toggle rounds + collapse/badge-reopen/re-enter detail, 0 errors.
|
|
139
141
|
- **1.22.3** (2026-08-26) — **Fix: K-line OHLC legend permanently drawn over the candles**. KLineChart v10 defaults `candle.tooltip.showRule` to `'always'`, painting time/OHLC/volume in the candle pane's top-left corner at all times (pixel-scan measured 1394 text pixels covering candles from y=23). Changed to `'follow_cross'` (shown on crosshair hover, like Xueqiu) — the indicator tooltip had been disabled but the candle's own legend was missed. Also: the chart footer promised "double-click to return to latest" but no dblclick handler existed (verified: after left-drag loaded 999 bars, double-click did nothing) — now wired to `chart.scrollToRealTime()` (verified: visible range 132→430-500). Minor: K-line date label now includes the year (a 500-bar daily range showed "08-26 ~ 08-24", reading like time travel across two years); the detail-page hero price/change now follows the quote's actual decimal digits (HK 00700 previously 440.40 → 440.4).
|
|
140
142
|
- **1.22.2** (2026-08-24) — **Fix: MA / avg-price lines landed in sub-panes instead of overlaying the main chart**. KLineChart v10's `createIndicator('MA')` opens a new pane by default — MAs were not on the candle pane (squeezed to 72px) and the minute chart's avg/prev-close lived in their own sub-pane. The fix passes `{ name, paneId: 'candle_pane' }` to explicitly overlay the main pane (pane id confirmed from engine source). Result: candlestick pane at 173px with MA5/10/30/60 overlaid (volume remains the only sub-pane); minute chart is a single pane with price + avg + prev-close overlaid, matching Xueqiu's layout. Also a Xueqiu-inspired detail-page restyle: hero quote header (large red/green price + change + pct), lighter 16-stat grid (tinted cards, tabular numerals), accent bar on card titles, theme-tinted active states for mode/period buttons, chart height 264→300px, harmonized 4-color MA palette, and high/low duplicate price marks disabled.
|
package/README.md
CHANGED
|
@@ -190,6 +190,11 @@ dsh-xueqiu/
|
|
|
190
190
|
|
|
191
191
|
## 📋 更新日志
|
|
192
192
|
|
|
193
|
+
- **1.22.6**(2026-08-26)
|
|
194
|
+
- 修复:**分时悬停信息双份叠加**(1.22.5 排查发现)。分时面积图"开=高=低=收"同值,canvas OHLC 图例纯冗余,且 xq-minute 指标图例(昨收/均价)与自定义 .xq-tip 重复显示两遍。分时模式现在彻底关闭 canvas 图例(蜡烛+指标),悬停只保留 .xq-tip。
|
|
195
|
+
- 新增:**K线悬停显示 MA 数值**(1.22.0 以来 MA 值无处可看的补课)。指标图例改 `follow_cross`:悬停时蜡烛行(开高低收量)下方第二行彩色显示 MA5/10/30/60 数值(实测茅台 MA 行单行占宽 70%,不折行),与雪球一致。
|
|
196
|
+
- **1.22.5**(2026-08-26)
|
|
197
|
+
- 修复:**悬停 OHLC 图例折成两行压图**(1.22.3 遗留)。`follow_cross` 后默认英文 time/open/high/low/close/volume 标题过长,悬停时图例在窄面板折两行盖住蜡烛。改为紧凑中文单行(`开 高 低 收 量`,字号 10)+ 隐藏 ticker 标题——实测悬停图例单行 10px 高、占宽 45%,不再折行。
|
|
193
198
|
- **1.22.4**(2026-08-26)
|
|
194
199
|
- 修复:**切分时整个面板崩溃消失**(1.22.3 回归)。双击回最新的清理函数里用了 `boxRef.current.removeEventListener`,但 React 卸载组件时先清 ref 再跑 effect 清理,此时 `boxRef.current` 已是 null → 抛 TypeError → `conversation.input.dock` 槽位整体崩溃,只剩自选股小徽章且无法重开。改为 effect 内闭包捕获节点。回归:K线↔分时来回 4 轮 + 收起/徽章重开/再进详情,0 报错。
|
|
195
200
|
- **1.22.3**(2026-08-26)
|
package/dynamic/client.js
CHANGED
|
@@ -355,8 +355,20 @@ return {
|
|
|
355
355
|
upBorderColor: pal.up, downBorderColor: pal.down, noChangeBorderColor: pal.text,
|
|
356
356
|
upWickColor: pal.up, downWickColor: pal.down, noChangeWickColor: pal.text
|
|
357
357
|
},
|
|
358
|
-
// OHLC 图例:十字光标悬停才显示(v10 默认 always
|
|
359
|
-
|
|
358
|
+
// OHLC 图例:十字光标悬停才显示(v10 默认 always 常驻左上角,压蜡烛且与坐标轴数值重复)。
|
|
359
|
+
// 默认英文 time/open/... 标题太长会折成两行压图——换紧凑中文单行(开 高 低 收 量)+ 隐藏标题
|
|
360
|
+
tooltip: {
|
|
361
|
+
showRule: 'follow_cross',
|
|
362
|
+
title: { show: false },
|
|
363
|
+
legend: {
|
|
364
|
+
size: 10, color: pal.text,
|
|
365
|
+
template: [
|
|
366
|
+
{ title: '开', value: '{open}' }, { title: '高', value: '{high}' },
|
|
367
|
+
{ title: '低', value: '{low}' }, { title: '收', value: '{close}' },
|
|
368
|
+
{ title: '量', value: '{volume}' }
|
|
369
|
+
]
|
|
370
|
+
}
|
|
371
|
+
},
|
|
360
372
|
priceMark: {
|
|
361
373
|
// 关闭最高/最低点重复标注(窄图时易与坐标轴重叠成杂乱数字),保留最新价标
|
|
362
374
|
high: { show: false }, low: { show: false },
|
|
@@ -367,7 +379,8 @@ return {
|
|
|
367
379
|
bars: [{ upColor: pal.up, downColor: pal.down, noChangeColor: pal.text }],
|
|
368
380
|
// 和谐 MA 配色:蓝/橙/紫/青,多均线更易区分(对齐雪球观感)
|
|
369
381
|
lines: [{ color: '#3b82f6' }, { color: '#f59e0b' }, { color: '#8b5cf6' }, { color: '#06b6d4' }],
|
|
370
|
-
|
|
382
|
+
// MA 数值悬停显示(蜡烛图例一行 + MA 图例一行,同雪球);常驻关闭避免压图
|
|
383
|
+
tooltip: { showRule: 'follow_cross' }
|
|
371
384
|
},
|
|
372
385
|
xAxis: { axisLine: { color: pal.grid }, tickLine: { color: pal.grid }, tickText: { color: pal.text } },
|
|
373
386
|
yAxis: { axisLine: { color: pal.grid }, tickLine: { color: pal.grid }, tickText: { color: pal.text } },
|
|
@@ -382,6 +395,10 @@ return {
|
|
|
382
395
|
s.candle.type = 'area'
|
|
383
396
|
s.candle.area = { lineSize: 1.4, lineColor: pal.up, backgroundColor: 'rgba(239,68,68,0.10)', value: 'close', smooth: false }
|
|
384
397
|
s.candle.priceMark = { high: { color: pal.text }, low: { color: pal.text }, last: { upColor: pal.up, downColor: pal.down, noChangeColor: pal.text, text: { color: pal.text } } }
|
|
398
|
+
// 分时悬停信息已由自定义 .xq-tip(价/均价/涨跌)承担;面积图开=高=低=收同值,
|
|
399
|
+
// canvas OHLC 图例纯冗余且与 .xq-tip 双份叠加 → 蜡烛与指标图例整体关闭
|
|
400
|
+
s.candle.tooltip = { showRule: 'none' }
|
|
401
|
+
s.indicator = { tooltip: { showRule: 'none' } }
|
|
385
402
|
}
|
|
386
403
|
return s
|
|
387
404
|
}
|
package/package.json
CHANGED
package/src/client/index.js
CHANGED
|
@@ -386,8 +386,20 @@ exports.default = {
|
|
|
386
386
|
upBorderColor: pal.up, downBorderColor: pal.down, noChangeBorderColor: pal.text,
|
|
387
387
|
upWickColor: pal.up, downWickColor: pal.down, noChangeWickColor: pal.text
|
|
388
388
|
},
|
|
389
|
-
// OHLC 图例:十字光标悬停才显示(v10 默认 always
|
|
390
|
-
|
|
389
|
+
// OHLC 图例:十字光标悬停才显示(v10 默认 always 常驻左上角,压蜡烛且与坐标轴数值重复)。
|
|
390
|
+
// 默认英文 time/open/... 标题太长会折成两行压图——换紧凑中文单行(开 高 低 收 量)+ 隐藏标题
|
|
391
|
+
tooltip: {
|
|
392
|
+
showRule: 'follow_cross',
|
|
393
|
+
title: { show: false },
|
|
394
|
+
legend: {
|
|
395
|
+
size: 10, color: pal.text,
|
|
396
|
+
template: [
|
|
397
|
+
{ title: '开', value: '{open}' }, { title: '高', value: '{high}' },
|
|
398
|
+
{ title: '低', value: '{low}' }, { title: '收', value: '{close}' },
|
|
399
|
+
{ title: '量', value: '{volume}' }
|
|
400
|
+
]
|
|
401
|
+
}
|
|
402
|
+
},
|
|
391
403
|
priceMark: {
|
|
392
404
|
// 关闭最高/最低点重复标注(窄图时易与坐标轴重叠成杂乱数字),保留最新价标
|
|
393
405
|
high: { show: false }, low: { show: false },
|
|
@@ -398,7 +410,8 @@ exports.default = {
|
|
|
398
410
|
bars: [{ upColor: pal.up, downColor: pal.down, noChangeColor: pal.text }],
|
|
399
411
|
// 和谐 MA 配色:蓝/橙/紫/青,多均线更易区分(对齐雪球观感)
|
|
400
412
|
lines: [{ color: '#3b82f6' }, { color: '#f59e0b' }, { color: '#8b5cf6' }, { color: '#06b6d4' }],
|
|
401
|
-
|
|
413
|
+
// MA 数值悬停显示(蜡烛图例一行 + MA 图例一行,同雪球);常驻关闭避免压图
|
|
414
|
+
tooltip: { showRule: 'follow_cross' }
|
|
402
415
|
},
|
|
403
416
|
xAxis: { axisLine: { color: pal.grid }, tickLine: { color: pal.grid }, tickText: { color: pal.text } },
|
|
404
417
|
yAxis: { axisLine: { color: pal.grid }, tickLine: { color: pal.grid }, tickText: { color: pal.text } },
|
|
@@ -413,6 +426,10 @@ exports.default = {
|
|
|
413
426
|
s.candle.type = 'area'
|
|
414
427
|
s.candle.area = { lineSize: 1.4, lineColor: pal.up, backgroundColor: 'rgba(239,68,68,0.10)', value: 'close', smooth: false }
|
|
415
428
|
s.candle.priceMark = { high: { color: pal.text }, low: { color: pal.text }, last: { upColor: pal.up, downColor: pal.down, noChangeColor: pal.text, text: { color: pal.text } } }
|
|
429
|
+
// 分时悬停信息已由自定义 .xq-tip(价/均价/涨跌)承担;面积图开=高=低=收同值,
|
|
430
|
+
// canvas OHLC 图例纯冗余且与 .xq-tip 双份叠加 → 蜡烛与指标图例整体关闭
|
|
431
|
+
s.candle.tooltip = { showRule: 'none' }
|
|
432
|
+
s.indicator = { tooltip: { showRule: 'none' } }
|
|
416
433
|
}
|
|
417
434
|
return s
|
|
418
435
|
}
|