@363045841yyt/klinechart 0.1.4 → 0.2.0

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.
Files changed (69) hide show
  1. package/README.md +142 -243
  2. package/dist/components/IndicatorParams.vue.d.ts +28 -0
  3. package/dist/components/IndicatorSelector.vue.d.ts +10 -0
  4. package/dist/components/KLineChart.vue.d.ts +14 -17
  5. package/dist/components/MarkerTooltip.vue.d.ts +10 -0
  6. package/dist/core/chart.d.ts +84 -47
  7. package/dist/core/controller/interaction.d.ts +56 -18
  8. package/dist/core/layout/pane.d.ts +2 -0
  9. package/dist/core/marker/registry.d.ts +174 -0
  10. package/dist/core/paneRenderer.d.ts +7 -40
  11. package/dist/core/renderers/Indicator/boll.d.ts +28 -0
  12. package/dist/core/renderers/Indicator/bollLegend.d.ts +16 -0
  13. package/dist/core/renderers/Indicator/cci.d.ts +34 -0
  14. package/dist/core/renderers/Indicator/fastk.d.ts +34 -0
  15. package/dist/core/renderers/Indicator/index.d.ts +31 -0
  16. package/dist/core/renderers/Indicator/kst.d.ts +49 -0
  17. package/dist/core/renderers/Indicator/ma.d.ts +12 -0
  18. package/dist/core/renderers/Indicator/maLegend.d.ts +9 -0
  19. package/dist/core/renderers/Indicator/macd.d.ts +46 -0
  20. package/dist/core/renderers/Indicator/macdLegend.d.ts +10 -0
  21. package/dist/core/renderers/Indicator/mom.d.ts +34 -0
  22. package/dist/core/renderers/Indicator/rsi.d.ts +42 -0
  23. package/dist/core/renderers/Indicator/stoch.d.ts +43 -0
  24. package/dist/core/renderers/Indicator/wmsr.d.ts +34 -0
  25. package/dist/core/renderers/candle.d.ts +17 -4
  26. package/dist/core/renderers/crosshair.d.ts +13 -20
  27. package/dist/core/renderers/customMarkers.d.ts +6 -0
  28. package/dist/core/renderers/extremaMarkers.d.ts +3 -4
  29. package/dist/core/renderers/globalBorders.d.ts +8 -13
  30. package/dist/core/renderers/gridLines.d.ts +4 -3
  31. package/dist/core/renderers/lastPrice.d.ts +3 -3
  32. package/dist/core/renderers/paneTitle.d.ts +37 -10
  33. package/dist/core/renderers/subVolume.d.ts +7 -3
  34. package/dist/core/renderers/timeAxis.d.ts +9 -22
  35. package/dist/core/renderers/yAxis.d.ts +5 -12
  36. package/dist/core/scale/priceScale.d.ts +1 -0
  37. package/dist/core/theme/colors.d.ts +80 -0
  38. package/dist/core/utils/klineConfig.d.ts +28 -0
  39. package/dist/core/utils/tickCount.d.ts +7 -0
  40. package/dist/core/viewport/viewport.d.ts +5 -5
  41. package/dist/index.cjs +16 -1
  42. package/dist/index.d.ts +1 -0
  43. package/dist/index.js +10540 -1064
  44. package/dist/klinechart.css +1 -1
  45. package/dist/plugin/ConfigManager.d.ts +31 -0
  46. package/dist/plugin/EventBus.d.ts +34 -0
  47. package/dist/plugin/HookSystem.d.ts +28 -0
  48. package/dist/plugin/PluginHost.d.ts +47 -0
  49. package/dist/plugin/PluginRegistry.d.ts +40 -0
  50. package/dist/plugin/index.d.ts +11 -0
  51. package/dist/plugin/rendererPluginManager.d.ts +73 -0
  52. package/dist/plugin/types.d.ts +185 -0
  53. package/dist/semantic/controller.d.ts +29 -0
  54. package/dist/semantic/drawShape.d.ts +14 -0
  55. package/dist/semantic/index.d.ts +8 -0
  56. package/dist/semantic/schema.json.d.ts +259 -0
  57. package/dist/semantic/types.d.ts +185 -0
  58. package/dist/semantic/validator.d.ts +42 -0
  59. package/dist/types/volumePrice.d.ts +26 -0
  60. package/dist/utils/kLineDraw/MA.d.ts +5 -5
  61. package/dist/utils/logger.d.ts +1 -0
  62. package/dist/utils/volumePrice.d.ts +54 -0
  63. package/package.json +11 -10
  64. package/dist/core/renderers/crosshairLabels.d.ts +0 -36
  65. package/dist/core/renderers/grid.d.ts +0 -6
  66. package/dist/core/renderers/ma.d.ts +0 -15
  67. package/dist/core/renderers/maLegend.d.ts +0 -19
  68. package/dist/core/renderers/paneBorder.d.ts +0 -26
  69. package/dist/core/renderers/paneSeparator.d.ts +0 -18
@@ -97,6 +97,86 @@ export declare const MA_COLORS: {
97
97
  readonly MA30: "rgba(76, 175, 80, 1)";
98
98
  readonly MA60: "rgba(156, 39, 176, 1)";
99
99
  };
100
+ /**
101
+ * 布林带颜色
102
+ */
103
+ export declare const BOLL_COLORS: {
104
+ /** 上轨颜色 */
105
+ readonly UPPER: "rgba(178, 34, 34, 1)";
106
+ /** 中轨颜色(与 MA20 相同) */
107
+ readonly MIDDLE: "rgba(69, 112, 249, 1)";
108
+ /** 下轨颜色 */
109
+ readonly LOWER: "rgba(34, 139, 34, 1)";
110
+ /** 带状区域填充 */
111
+ readonly BAND_FILL: "rgba(100, 149, 237, 0.1)";
112
+ };
113
+ /**
114
+ * MACD 颜色
115
+ */
116
+ export declare const MACD_COLORS: {
117
+ /** DIF 线颜色(快线)- 与 MA20 相同 */
118
+ readonly DIF: "rgba(69, 112, 249, 1)";
119
+ /** DEA 线颜色(慢线)- 橙色 */
120
+ readonly DEA: "rgba(255, 152, 0, 1)";
121
+ /** MACD 柱红色(正值上升) */
122
+ readonly BAR_UP: "#ff5252";
123
+ /** MACD 柱淡红色(正值下降) */
124
+ readonly BAR_UP_LIGHT: "#fccbcd";
125
+ /** MACD 柱绿色(负值下降) */
126
+ readonly BAR_DOWN: "#22ab94";
127
+ /** MACD 柱淡绿色(负值上升) */
128
+ readonly BAR_DOWN_LIGHT: "#ace5dc";
129
+ };
130
+ /**
131
+ * RSI 颜色
132
+ */
133
+ export declare const RSI_COLORS: {
134
+ readonly RSI1: "rgba(69, 112, 249, 1)";
135
+ readonly RSI2: "rgba(255, 152, 0, 1)";
136
+ readonly RSI3: "rgba(156, 39, 176, 1)";
137
+ };
138
+ /**
139
+ * CCI 颜色
140
+ */
141
+ export declare const CCI_COLORS: {
142
+ readonly CCI: "rgba(69, 112, 249, 1)";
143
+ /** 超买线 +100 */
144
+ readonly OVERBOUGHT: "rgba(214, 10, 34, 0.5)";
145
+ /** 超卖线 -100 */
146
+ readonly OVERSOLD: "rgba(3, 123, 102, 0.5)";
147
+ };
148
+ /**
149
+ * KDJ/STOCH 颜色
150
+ */
151
+ export declare const KDJ_COLORS: {
152
+ readonly K: "rgba(69, 112, 249, 1)";
153
+ readonly D: "rgba(255, 152, 0, 1)";
154
+ readonly J: "rgba(156, 39, 176, 1)";
155
+ };
156
+ /**
157
+ * MOM 颜色
158
+ */
159
+ export declare const MOM_COLORS: {
160
+ readonly MOM: "rgba(69, 112, 249, 1)";
161
+ readonly ZERO: "rgba(0, 0, 0, 0.2)";
162
+ };
163
+ /**
164
+ * WMSR 颜色
165
+ */
166
+ export declare const WMSR_COLORS: {
167
+ readonly WMSR: "rgba(69, 112, 249, 1)";
168
+ /** 超买线 -20 */
169
+ readonly OVERBOUGHT: "rgba(214, 10, 34, 0.5)";
170
+ /** 超卖线 -80 */
171
+ readonly OVERSOLD: "rgba(3, 123, 102, 0.5)";
172
+ };
173
+ /**
174
+ * KST 颜色
175
+ */
176
+ export declare const KST_COLORS: {
177
+ readonly KST: "rgba(69, 112, 249, 1)";
178
+ readonly SIGNAL: "rgba(255, 152, 0, 1)";
179
+ };
100
180
  /**
101
181
  * 十字线颜色
102
182
  */
@@ -0,0 +1,28 @@
1
+ /**
2
+ * K 线物理像素配置工具函数
3
+ * 用于统一渲染、交互、视口计算的坐标系统
4
+ */
5
+ /**
6
+ * 计算奇数化后的 K 线宽度(物理像素),确保影线能完美居中显示
7
+ * @param kWidth K 线宽度(逻辑像素)
8
+ * @param dpr 设备像素比
9
+ * @returns 奇数化后的物理像素宽度
10
+ */
11
+ export declare function calcKWidthPx(kWidth: number, dpr: number): number;
12
+ /**
13
+ * 获取图表渲染使用的物理像素配置
14
+ * @param kWidth K 线宽度(逻辑像素)
15
+ * @param kGap K 线间隙(逻辑像素)
16
+ * @param dpr 设备像素比
17
+ * @returns 物理像素和逻辑像素的配置对象
18
+ */
19
+ export declare function getPhysicalKLineConfig(kWidth: number, kGap: number, dpr: number): {
20
+ kWidthPx: number;
21
+ kGapPx: number;
22
+ unitPx: number;
23
+ startXPx: number;
24
+ kWidthLogical: number;
25
+ kGapLogical: number;
26
+ unitLogical: number;
27
+ startXLogical: number;
28
+ };
@@ -0,0 +1,7 @@
1
+ /**
2
+ * 根据面板高度计算网格线/价格标签数量
3
+ * @param height 面板高度(逻辑像素)
4
+ * @param isMain 是否为主图面板
5
+ * @returns tick 数量
6
+ */
7
+ export declare function calculateTickCount(height: number, isMain: boolean): number;
@@ -1,19 +1,19 @@
1
1
  import { KLineData } from '../../types/price';
2
2
  import { PriceRange } from '../scale/price';
3
3
  /**
4
- * 计算当前视口可见的 K 线索引范围。
4
+ * 计算当前视口可见的 K 线索引范围(使用物理像素对齐)。
5
5
  *
6
- * - 基于 `scrollLeft` 与 `viewWidth` 推导可见的 worldX 区间。
7
- * - 再用 `unit = kWidth + kGap` 映射到索引区间。
8
- * - 会额外在左右各扩展 1 根(start-1/end+1),用于避免边缘裁剪带来的“断线/缺一根”观感。
6
+ * - 所有计算在物理像素空间进行,确保与 calcKLinePositions 一致
7
+ * - 会额外在左右各扩展 1 根(start-1/end+1),用于避免边缘裁剪带来的”断线/缺一根”观感
9
8
  *
10
9
  * @param scrollLeft 容器当前横向滚动量(逻辑像素)
11
10
  * @param viewWidth 绘图区域宽度(plotWidth,逻辑像素,不含右侧 yAxis)
12
11
  * @param kWidth 单根 K 线宽度(逻辑像素)
13
12
  * @param kGap K 线间距(逻辑像素)
14
13
  * @param totalDataCount 数据总条数
14
+ * @param dpr 设备像素比
15
15
  */
16
- export declare function getVisibleRange(scrollLeft: number, viewWidth: number, kWidth: number, kGap: number, totalDataCount: number): {
16
+ export declare function getVisibleRange(scrollLeft: number, viewWidth: number, kWidth: number, kGap: number, totalDataCount: number, dpr?: number): {
17
17
  start: number;
18
18
  end: number;
19
19
  };