@363045841yyt/klinechart-core 0.7.6 → 0.7.8
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/dist/config/chartSettings.d.ts +27 -2
- package/dist/config/chartSettings.d.ts.map +1 -1
- package/dist/config/chartSettings.js +6 -0
- package/dist/config/chartSettings.js.map +1 -1
- package/dist/engine/chart.d.ts.map +1 -1
- package/dist/engine/chart.js +4 -0
- package/dist/engine/chart.js.map +1 -1
- package/dist/engine/draw/pixelAlign.d.ts.map +1 -1
- package/dist/engine/draw/pixelAlign.js.map +1 -1
- package/dist/engine/drawing/plugin.js +1 -1
- package/dist/engine/drawing/plugin.js.map +1 -1
- package/dist/engine/renderers/Indicator/atr.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/atr.js +7 -4
- package/dist/engine/renderers/Indicator/atr.js.map +1 -1
- package/dist/engine/renderers/Indicator/boll.js +12 -12
- package/dist/engine/renderers/Indicator/boll.js.map +1 -1
- package/dist/engine/renderers/Indicator/cci.d.ts +1 -2
- package/dist/engine/renderers/Indicator/cci.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/cci.js +9 -9
- package/dist/engine/renderers/Indicator/cci.js.map +1 -1
- package/dist/engine/renderers/Indicator/ene.js +12 -12
- package/dist/engine/renderers/Indicator/ene.js.map +1 -1
- package/dist/engine/renderers/Indicator/expma.js +6 -6
- package/dist/engine/renderers/Indicator/expma.js.map +1 -1
- package/dist/engine/renderers/Indicator/fastk.d.ts +1 -2
- package/dist/engine/renderers/Indicator/fastk.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/fastk.js +7 -7
- package/dist/engine/renderers/Indicator/fastk.js.map +1 -1
- package/dist/engine/renderers/Indicator/kst.d.ts +1 -2
- package/dist/engine/renderers/Indicator/kst.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/kst.js +10 -10
- package/dist/engine/renderers/Indicator/kst.js.map +1 -1
- package/dist/engine/renderers/Indicator/ma.js +5 -5
- package/dist/engine/renderers/Indicator/ma.js.map +1 -1
- package/dist/engine/renderers/Indicator/macd.d.ts +1 -2
- package/dist/engine/renderers/Indicator/macd.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/macd.js +24 -24
- package/dist/engine/renderers/Indicator/macd.js.map +1 -1
- package/dist/engine/renderers/Indicator/macdLegend.js +6 -6
- package/dist/engine/renderers/Indicator/macdLegend.js.map +1 -1
- package/dist/engine/renderers/Indicator/mainIndicatorLegend.js +16 -16
- package/dist/engine/renderers/Indicator/mainIndicatorLegend.js.map +1 -1
- package/dist/engine/renderers/Indicator/mom.d.ts +1 -2
- package/dist/engine/renderers/Indicator/mom.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/mom.js +8 -8
- package/dist/engine/renderers/Indicator/mom.js.map +1 -1
- package/dist/engine/renderers/Indicator/rsi.d.ts +2 -3
- package/dist/engine/renderers/Indicator/rsi.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/rsi.js +19 -15
- package/dist/engine/renderers/Indicator/rsi.js.map +1 -1
- package/dist/engine/renderers/Indicator/scale/indicator_scale.d.ts +1 -2
- package/dist/engine/renderers/Indicator/scale/indicator_scale.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/scale/indicator_scale.js +5 -5
- package/dist/engine/renderers/Indicator/scale/indicator_scale.js.map +1 -1
- package/dist/engine/renderers/Indicator/stoch.d.ts +1 -2
- package/dist/engine/renderers/Indicator/stoch.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/stoch.js +10 -10
- package/dist/engine/renderers/Indicator/stoch.js.map +1 -1
- package/dist/engine/renderers/Indicator/structure.js +5 -5
- package/dist/engine/renderers/Indicator/structure.js.map +1 -1
- package/dist/engine/renderers/Indicator/wmsr.d.ts +1 -2
- package/dist/engine/renderers/Indicator/wmsr.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/wmsr.js +10 -10
- package/dist/engine/renderers/Indicator/wmsr.js.map +1 -1
- package/dist/engine/renderers/Indicator/zones.js +6 -6
- package/dist/engine/renderers/Indicator/zones.js.map +1 -1
- package/dist/engine/renderers/candle.d.ts +1 -1
- package/dist/engine/renderers/candle.d.ts.map +1 -1
- package/dist/engine/renderers/candle.js +21 -21
- package/dist/engine/renderers/candle.js.map +1 -1
- package/dist/engine/renderers/crosshair.js +3 -3
- package/dist/engine/renderers/crosshair.js.map +1 -1
- package/dist/engine/renderers/extremaMarkers.d.ts.map +1 -1
- package/dist/engine/renderers/extremaMarkers.js +12 -12
- package/dist/engine/renderers/extremaMarkers.js.map +1 -1
- package/dist/engine/renderers/gridLines.js +3 -3
- package/dist/engine/renderers/gridLines.js.map +1 -1
- package/dist/engine/renderers/lastPrice.js +7 -7
- package/dist/engine/renderers/lastPrice.js.map +1 -1
- package/dist/engine/renderers/paneTitle.js +6 -6
- package/dist/engine/renderers/paneTitle.js.map +1 -1
- package/dist/engine/renderers/subVolume.d.ts.map +1 -1
- package/dist/engine/renderers/subVolume.js +23 -20
- package/dist/engine/renderers/subVolume.js.map +1 -1
- package/dist/engine/renderers/timeAxis.js +9 -9
- package/dist/engine/renderers/timeAxis.js.map +1 -1
- package/dist/engine/renderers/webgl/candleSurface.d.ts.map +1 -1
- package/dist/engine/renderers/webgl/candleSurface.js +39 -7
- package/dist/engine/renderers/webgl/candleSurface.js.map +1 -1
- package/dist/engine/renderers/yAxis.d.ts.map +1 -1
- package/dist/engine/renderers/yAxis.js +5 -5
- package/dist/engine/renderers/yAxis.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/plugin/types.d.ts +5 -1
- package/dist/plugin/types.d.ts.map +1 -1
- package/dist/plugin/types.js.map +1 -1
- package/dist/tokens/colorPresetSettings.d.ts +15 -0
- package/dist/tokens/colorPresetSettings.d.ts.map +1 -0
- package/dist/tokens/colorPresetSettings.js +65 -0
- package/dist/tokens/colorPresetSettings.js.map +1 -0
- package/dist/tokens/index.d.ts +17 -0
- package/dist/tokens/index.d.ts.map +1 -0
- package/dist/tokens/index.js +16 -0
- package/dist/tokens/index.js.map +1 -0
- package/dist/tokens/mergeTheme.d.ts +17 -0
- package/dist/tokens/mergeTheme.d.ts.map +1 -0
- package/dist/tokens/mergeTheme.js +43 -0
- package/dist/tokens/mergeTheme.js.map +1 -0
- package/dist/tokens/theme-china.d.ts +45 -0
- package/dist/tokens/theme-china.d.ts.map +1 -0
- package/dist/tokens/theme-china.js +116 -0
- package/dist/tokens/theme-china.js.map +1 -0
- package/dist/tokens/theme-dark.d.ts +21 -0
- package/dist/tokens/theme-dark.d.ts.map +1 -0
- package/dist/tokens/theme-dark.js +228 -0
- package/dist/tokens/theme-dark.js.map +1 -0
- package/dist/tokens/theme-light.d.ts +23 -0
- package/dist/tokens/theme-light.d.ts.map +1 -0
- package/dist/tokens/theme-light.js +234 -0
- package/dist/tokens/theme-light.js.map +1 -0
- package/dist/tokens/themeToCssVars.d.ts +74 -0
- package/dist/tokens/themeToCssVars.d.ts.map +1 -0
- package/dist/tokens/themeToCssVars.js +108 -0
- package/dist/tokens/themeToCssVars.js.map +1 -0
- package/dist/tokens/types.d.ts +335 -0
- package/dist/tokens/types.d.ts.map +1 -0
- package/dist/tokens/types.js +20 -0
- package/dist/tokens/types.js.map +1 -0
- package/dist/utils/kLineDraw/axis.d.ts +8 -7
- package/dist/utils/kLineDraw/axis.d.ts.map +1 -1
- package/dist/utils/kLineDraw/axis.js +24 -24
- package/dist/utils/kLineDraw/axis.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +1 -1
- package/src/config/chartSettings.ts +11 -2
- package/src/engine/chart.ts +4 -0
- package/src/engine/draw/pixelAlign.ts +0 -2
- package/src/engine/drawing/plugin.ts +1 -1
- package/src/engine/renderers/Indicator/atr.ts +7 -3
- package/src/engine/renderers/Indicator/boll.ts +12 -12
- package/src/engine/renderers/Indicator/cci.ts +11 -10
- package/src/engine/renderers/Indicator/ene.ts +12 -12
- package/src/engine/renderers/Indicator/expma.ts +6 -6
- package/src/engine/renderers/Indicator/fastk.ts +9 -8
- package/src/engine/renderers/Indicator/kst.ts +12 -11
- package/src/engine/renderers/Indicator/ma.ts +5 -5
- package/src/engine/renderers/Indicator/macd.ts +27 -25
- package/src/engine/renderers/Indicator/macdLegend.ts +6 -6
- package/src/engine/renderers/Indicator/mainIndicatorLegend.ts +16 -16
- package/src/engine/renderers/Indicator/mom.ts +11 -10
- package/src/engine/renderers/Indicator/rsi.ts +22 -15
- package/src/engine/renderers/Indicator/scale/indicator_scale.ts +6 -6
- package/src/engine/renderers/Indicator/stoch.ts +12 -11
- package/src/engine/renderers/Indicator/structure.ts +5 -5
- package/src/engine/renderers/Indicator/wmsr.ts +13 -12
- package/src/engine/renderers/Indicator/zones.ts +7 -7
- package/src/engine/renderers/candle.ts +21 -21
- package/src/engine/renderers/crosshair.ts +3 -3
- package/src/engine/renderers/extremaMarkers.ts +13 -12
- package/src/engine/renderers/gridLines.ts +3 -3
- package/src/engine/renderers/lastPrice.ts +7 -7
- package/src/engine/renderers/paneTitle.ts +6 -6
- package/src/engine/renderers/subVolume.ts +23 -20
- package/src/engine/renderers/timeAxis.ts +9 -9
- package/src/engine/renderers/webgl/candleSurface.ts +43 -7
- package/src/engine/renderers/yAxis.ts +6 -5
- package/src/index.ts +1 -0
- package/src/plugin/types.ts +5 -1
- package/src/tokens/__tests__/__snapshots__/baseline.test.ts.snap +393 -0
- package/src/tokens/__tests__/baseline.test.ts +183 -0
- package/src/tokens/__tests__/themeToCssVars.test.ts +175 -0
- package/src/tokens/__tests__/tokens.test.ts +215 -0
- package/src/tokens/colorPresetSettings.ts +128 -0
- package/src/tokens/index.ts +65 -0
- package/src/tokens/mergeTheme.ts +48 -0
- package/src/tokens/theme-china.ts +132 -0
- package/src/tokens/theme-dark.ts +244 -0
- package/src/tokens/theme-light.ts +250 -0
- package/src/tokens/themeToCssVars.ts +138 -0
- package/src/tokens/types.ts +394 -0
- package/src/utils/kLineDraw/axis.ts +31 -30
- package/src/version.ts +1 -1
- package/dist/engine/theme/colors.d.ts +0 -223
- package/dist/engine/theme/colors.d.ts.map +0 -1
- package/dist/engine/theme/colors.js +0 -375
- package/dist/engine/theme/colors.js.map +0 -1
- package/src/engine/theme/colors.ts +0 -642
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { priceToY, yToPrice } from '../priceToY';
|
|
2
2
|
import { alignToPhysicalPixelCenter, roundToPhysicalPixel } from '../../engine/draw/pixelAlign';
|
|
3
3
|
import { formatYMDShanghai, formatMonthOrYear, findMonthBoundaries } from '../../utils/dateFormat';
|
|
4
|
-
import {
|
|
4
|
+
import { resolveThemeColors } from '../../tokens';
|
|
5
5
|
import { getFont, setCanvasFont } from '../../engine/theme/fonts';
|
|
6
6
|
const textWidthCache = new Map();
|
|
7
7
|
const TEXT_WIDTH_CACHE_LIMIT = 512;
|
|
@@ -19,9 +19,9 @@ function measureTextWidth(ctx, text) {
|
|
|
19
19
|
return width;
|
|
20
20
|
}
|
|
21
21
|
/** 右侧价格轴(固定,不随 translate/scroll 变化) */
|
|
22
|
-
export function drawPriceAxis(ctx, opts, theme = 'light') {
|
|
23
|
-
const colors =
|
|
24
|
-
const { x, y, width, height, priceRange, yPaddingPx = 0, dpr, ticks = 10, bgColor = colors.
|
|
22
|
+
export function drawPriceAxis(ctx, opts, theme = 'light', isAsiaMarket, colorPresetSettings) {
|
|
23
|
+
const colors = resolveThemeColors(theme, isAsiaMarket, colorPresetSettings);
|
|
24
|
+
const { x, y, width, height, priceRange, yPaddingPx = 0, dpr, ticks = 10, bgColor = colors.tagBg.transparent, textColor = colors.text.secondary, lineColor = colors.border.dark, fontSize = 16, drawLeftBorder = true, drawTickLines = true, priceOffset = 0, } = opts;
|
|
25
25
|
const wantPad = yPaddingPx;
|
|
26
26
|
const pad = Math.max(0, Math.min(wantPad, Math.floor(height / 2) - 1));
|
|
27
27
|
const { maxPrice, minPrice } = priceRange;
|
|
@@ -57,8 +57,8 @@ export function drawPriceAxis(ctx, opts, theme = 'light') {
|
|
|
57
57
|
ctx.fillText(displayPrice.toFixed(2), roundToPhysicalPixel(centerX, dpr), alignToPhysicalPixelCenter(yy, dpr));
|
|
58
58
|
}
|
|
59
59
|
}
|
|
60
|
-
export function drawCrosshairTimeLabel(ctx, opts, theme = 'light') {
|
|
61
|
-
const colors =
|
|
60
|
+
export function drawCrosshairTimeLabel(ctx, opts, theme = 'light', isAsiaMarket, colorPresetSettings) {
|
|
61
|
+
const colors = resolveThemeColors(theme, isAsiaMarket, colorPresetSettings);
|
|
62
62
|
const { x, y, width, height, crosshairX, timestamp, dpr, fontSize = 16, paddingX = 8, } = opts;
|
|
63
63
|
const text = formatYMDShanghai(timestamp);
|
|
64
64
|
ctx.save();
|
|
@@ -72,15 +72,15 @@ export function drawCrosshairTimeLabel(ctx, opts, theme = 'light') {
|
|
|
72
72
|
const centerY = y + height / 2;
|
|
73
73
|
const rectX = centerX - rectW / 2;
|
|
74
74
|
const rectY = y;
|
|
75
|
-
ctx.fillStyle = colors.
|
|
75
|
+
ctx.fillStyle = colors.label.bg;
|
|
76
76
|
ctx.fillRect(roundToPhysicalPixel(rectX, dpr), roundToPhysicalPixel(rectY, dpr), roundToPhysicalPixel(rectW, dpr), roundToPhysicalPixel(rectH, dpr));
|
|
77
|
-
ctx.fillStyle = colors.
|
|
77
|
+
ctx.fillStyle = colors.label.text;
|
|
78
78
|
ctx.fillText(text, roundToPhysicalPixel(centerX, dpr), alignToPhysicalPixelCenter(centerY, dpr));
|
|
79
79
|
ctx.restore();
|
|
80
80
|
}
|
|
81
|
-
export function drawCrosshairPriceLabel(ctx, opts, theme = 'light') {
|
|
82
|
-
const colors =
|
|
83
|
-
const { x, y, width, height, crosshairY, priceRange, yPaddingPx = 0, dpr, bgColor = colors.
|
|
81
|
+
export function drawCrosshairPriceLabel(ctx, opts, theme = 'light', isAsiaMarket, colorPresetSettings) {
|
|
82
|
+
const colors = resolveThemeColors(theme, isAsiaMarket, colorPresetSettings);
|
|
83
|
+
const { x, y, width, height, crosshairY, priceRange, yPaddingPx = 0, dpr, bgColor = colors.label.bg, borderColor, textColor = colors.label.text, fontSize = 16, priceOffset = 0, price, formatPrice, } = opts;
|
|
84
84
|
const pad = Math.max(0, Math.min(yPaddingPx, Math.floor(height / 2) - 1));
|
|
85
85
|
const { maxPrice, minPrice } = priceRange;
|
|
86
86
|
const displayPrice = price ?? (yToPrice(crosshairY - y, maxPrice, minPrice, height, pad, pad) + priceOffset);
|
|
@@ -110,9 +110,9 @@ export function drawCrosshairPriceLabel(ctx, opts, theme = 'light') {
|
|
|
110
110
|
ctx.restore();
|
|
111
111
|
}
|
|
112
112
|
/** 绘制"最新价水平虚线"(画在 plotCanvas 的 world 坐标系:需在 translate(-scrollLeft,0) 之后调用) */
|
|
113
|
-
export function drawLastPriceDashedLine(ctx, opts, theme = 'light') {
|
|
114
|
-
const colors =
|
|
115
|
-
const { plotWidth, plotHeight, scrollLeft, startIndex, endIndex, kWidth, kGap, priceRange, lastPrice, yPaddingPx = 0, dpr, color = colors.
|
|
113
|
+
export function drawLastPriceDashedLine(ctx, opts, theme = 'light', isAsiaMarket, colorPresetSettings) {
|
|
114
|
+
const colors = resolveThemeColors(theme, isAsiaMarket, colorPresetSettings);
|
|
115
|
+
const { plotWidth, plotHeight, scrollLeft, startIndex, endIndex, kWidth, kGap, priceRange, lastPrice, yPaddingPx = 0, dpr, color = colors.crosshairLine, } = opts;
|
|
116
116
|
const { maxPrice, minPrice } = priceRange;
|
|
117
117
|
if (!(lastPrice >= minPrice && lastPrice <= maxPrice))
|
|
118
118
|
return;
|
|
@@ -134,9 +134,9 @@ export function drawLastPriceDashedLine(ctx, opts, theme = 'light') {
|
|
|
134
134
|
ctx.restore();
|
|
135
135
|
}
|
|
136
136
|
/** 底部时间轴(X方向随 scrollLeft 变化) */
|
|
137
|
-
export function drawTimeAxis(ctx, opts, theme = 'light') {
|
|
138
|
-
const colors =
|
|
139
|
-
const { x, y, width, height, data, scrollLeft, kWidth, kGap, startIndex, endIndex, dpr, bgColor = colors.
|
|
137
|
+
export function drawTimeAxis(ctx, opts, theme = 'light', isAsiaMarket, colorPresetSettings) {
|
|
138
|
+
const colors = resolveThemeColors(theme, isAsiaMarket, colorPresetSettings);
|
|
139
|
+
const { x, y, width, height, data, scrollLeft, kWidth, kGap, startIndex, endIndex, dpr, bgColor = colors.tagBg.transparent, textColor = colors.text.secondary, lineColor = colors.border.dark, fontSize = 12, paddingX = 8, drawTopBorder = true, drawBottomBorder = true, } = opts;
|
|
140
140
|
const physKWidth = Math.round(kWidth * dpr);
|
|
141
141
|
const alignedPhysKWidth = physKWidth % 2 === 0 ? physKWidth + 1 : physKWidth;
|
|
142
142
|
const physKGap = Math.round(kGap * dpr);
|
|
@@ -191,9 +191,9 @@ export function drawTimeAxis(ctx, opts, theme = 'light') {
|
|
|
191
191
|
}
|
|
192
192
|
}
|
|
193
193
|
}
|
|
194
|
-
export function drawAxisPriceLabel(ctx, opts, theme = 'light') {
|
|
195
|
-
const colors =
|
|
196
|
-
const { x, y, width, height, priceY, price, dpr, bgColor = colors.
|
|
194
|
+
export function drawAxisPriceLabel(ctx, opts, theme = 'light', isAsiaMarket, colorPresetSettings) {
|
|
195
|
+
const colors = resolveThemeColors(theme, isAsiaMarket, colorPresetSettings);
|
|
196
|
+
const { x, y, width, height, priceY, price, dpr, bgColor = colors.label.bg, borderColor, textColor = colors.label.text, fontSize = 12, } = opts;
|
|
197
197
|
const priceText = price.toFixed(2);
|
|
198
198
|
ctx.save();
|
|
199
199
|
setCanvasFont(ctx, getFont(fontSize));
|
|
@@ -219,8 +219,8 @@ export function drawAxisPriceLabel(ctx, opts, theme = 'light') {
|
|
|
219
219
|
ctx.fillText(priceText, roundToPhysicalPixel(centerX, dpr), alignToPhysicalPixelCenter(yy, dpr));
|
|
220
220
|
ctx.restore();
|
|
221
221
|
}
|
|
222
|
-
export function drawAxisTimeLabel(ctx, opts, theme = 'light') {
|
|
223
|
-
const colors =
|
|
222
|
+
export function drawAxisTimeLabel(ctx, opts, theme = 'light', isAsiaMarket, colorPresetSettings) {
|
|
223
|
+
const colors = resolveThemeColors(theme, isAsiaMarket, colorPresetSettings);
|
|
224
224
|
const { x, y, width, height, labelX, timestamp, dpr, fontSize = 12, paddingX = 8, } = opts;
|
|
225
225
|
const text = formatYMDShanghai(timestamp);
|
|
226
226
|
ctx.save();
|
|
@@ -234,9 +234,9 @@ export function drawAxisTimeLabel(ctx, opts, theme = 'light') {
|
|
|
234
234
|
const centerY = y + height / 2;
|
|
235
235
|
const rectX = centerX - rectW / 2;
|
|
236
236
|
const rectY = y;
|
|
237
|
-
ctx.fillStyle = opts.bgColor ?? colors.
|
|
237
|
+
ctx.fillStyle = opts.bgColor ?? colors.label.bg;
|
|
238
238
|
ctx.fillRect(roundToPhysicalPixel(rectX, dpr), roundToPhysicalPixel(rectY, dpr), roundToPhysicalPixel(rectW, dpr), roundToPhysicalPixel(rectH, dpr));
|
|
239
|
-
ctx.fillStyle = opts.textColor ?? colors.
|
|
239
|
+
ctx.fillStyle = opts.textColor ?? colors.label.text;
|
|
240
240
|
ctx.fillText(text, roundToPhysicalPixel(centerX, dpr), alignToPhysicalPixelCenter(centerY, dpr));
|
|
241
241
|
ctx.restore();
|
|
242
242
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"axis.js","sourceRoot":"","sources":["../../../src/utils/kLineDraw/axis.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"axis.js","sourceRoot":"","sources":["../../../src/utils/kLineDraw/axis.ts"],"names":[],"mappings":"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"}
|
package/dist/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const VERSION = "0.7.
|
|
1
|
+
export declare const VERSION = "0.7.8";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/version.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const VERSION = "0.7.
|
|
1
|
+
export const VERSION = "0.7.8";
|
|
2
2
|
//# sourceMappingURL=version.js.map
|
package/package.json
CHANGED
|
@@ -52,15 +52,24 @@ export const DEFAULT_SETTINGS = [
|
|
|
52
52
|
{ key: 'showVolumePriceMarkers', label: '显示量价关系标记', type: 'boolean', default: false, group: 'main' },
|
|
53
53
|
{ key: 'logarithmicScale', label: '对数价格轴', type: 'boolean', default: false, group: 'main' },
|
|
54
54
|
{ key: 'disableMainPaneVerticalScroll', label: '主图纵轴刻度自适应调整', type: 'boolean', default: true, group: 'main' },
|
|
55
|
+
{ key: 'isAsiaMarket', label: '亚洲市场颜色(红涨绿跌)', type: 'boolean', default: false, group: 'main' },
|
|
55
56
|
{ key: 'enableWebGLRendering', label: '启用 WebGL 硬件加速渲染', type: 'boolean', default: ENABLE_WEBGL_DEFAULT, group: 'main' },
|
|
57
|
+
{ key: 'theme', label: '主题', type: 'select', default: 'light', group: 'main', options: [
|
|
58
|
+
{ value: 'light', label: '浅色' },
|
|
59
|
+
{ value: 'dark', label: '深色' },
|
|
60
|
+
{ value: 'auto', label: '跟随系统' },
|
|
61
|
+
] },
|
|
56
62
|
{ key: 'performanceTest10kKlines', label: '万条K线性能测试', type: 'boolean', default: false, group: 'experimental' },
|
|
57
63
|
{ key: 'enableCanvasProfiler', label: 'Canvas 性能分析插桩', type: 'boolean', default: false, group: 'experimental' },
|
|
58
64
|
] as const
|
|
59
65
|
|
|
60
66
|
/** 图表设置类型(从 DEFAULT_SETTINGS 自动推导,同时兼容扩展) */
|
|
61
67
|
export type ChartSettings = {
|
|
62
|
-
[K in (typeof DEFAULT_SETTINGS)[number]['key']]?: boolean
|
|
63
|
-
} & Record<string, boolean | string>
|
|
68
|
+
[K in (typeof DEFAULT_SETTINGS)[number]['key']]?: boolean | string
|
|
69
|
+
} & Record<string, boolean | string | ColorPresetSettings | undefined> & {
|
|
70
|
+
colorPresetSettings?: ColorPresetSettings
|
|
71
|
+
}
|
|
64
72
|
|
|
65
73
|
/** localStorage 存储键名 */
|
|
66
74
|
export const SETTINGS_STORAGE_KEY = 'kline-chart-settings'
|
|
75
|
+
import type { ColorPresetSettings } from '../tokens/colorPresetSettings'
|
package/src/engine/chart.ts
CHANGED
|
@@ -1116,6 +1116,8 @@ export class Chart {
|
|
|
1116
1116
|
yAxisRanges: sharedYAxisRanges,
|
|
1117
1117
|
xAxisRanges: sharedXAxisRanges,
|
|
1118
1118
|
theme: this._themeSignal.peek(),
|
|
1119
|
+
isAsiaMarket: this.settings.isAsiaMarket as boolean,
|
|
1120
|
+
colorPresetSettings: this.settings.colorPresetSettings,
|
|
1119
1121
|
}
|
|
1120
1122
|
|
|
1121
1123
|
if (shouldUpdateMain || shouldUpdateOverlay) {
|
|
@@ -1193,6 +1195,8 @@ export class Chart {
|
|
|
1193
1195
|
xAxisLabels: sharedXAxisLabels,
|
|
1194
1196
|
xAxisRanges: sharedXAxisRanges,
|
|
1195
1197
|
theme: this._themeSignal.peek(),
|
|
1198
|
+
isAsiaMarket: this.settings.isAsiaMarket as boolean,
|
|
1199
|
+
colorPresetSettings: this.settings.colorPresetSettings,
|
|
1196
1200
|
}
|
|
1197
1201
|
const errors = this.rendererPluginManager.renderPlugin('timeAxis', timeAxisContext)
|
|
1198
1202
|
if (errors.length > 0) {
|
|
@@ -190,7 +190,7 @@ export function createDrawingRendererPlugin(options: {
|
|
|
190
190
|
description: '绘图渲染器(仅负责绘制形状)',
|
|
191
191
|
debugName: '绘图层',
|
|
192
192
|
paneId: options.paneId ?? 'main',
|
|
193
|
-
priority:
|
|
193
|
+
priority: 55,
|
|
194
194
|
draw(context: RenderContext) {
|
|
195
195
|
const { ctx, pane, data, range, dpr, paneWidth, kLinePositions, kLineCenters, kBarRects, kWidth, kGap } = context
|
|
196
196
|
const viewport = context.viewport ?? {
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { RendererPluginWithHost, RenderContext, PluginHost } from '../../../plugin'
|
|
2
2
|
import { RENDERER_PRIORITY } from '../../../plugin'
|
|
3
|
+
import { resolveThemeColors } from '../../../tokens'
|
|
3
4
|
import type { ATRRenderState } from '../../indicators/atrState'
|
|
4
5
|
import { createATRStateKey } from '../../indicators/atrState'
|
|
5
6
|
import { Indicator } from '../../indicators/indicatorDefinitionRegistry'
|
|
@@ -88,6 +89,8 @@ export function createATRRendererPlugin(options: ATRRendererOptions = {}): Rende
|
|
|
88
89
|
|
|
89
90
|
draw(context: RenderContext) {
|
|
90
91
|
const { ctx, pane, range, scrollLeft, kLineCenters, lineWebGLSurface } = context
|
|
92
|
+
const colors = resolveThemeColors(context.theme, context.isAsiaMarket, context.colorPresetSettings)
|
|
93
|
+
const atrColor = colors.palette?.indicatorAtr ?? ATR_COLOR
|
|
91
94
|
|
|
92
95
|
const stateKey = resolveKey()
|
|
93
96
|
if (!stateKey) return
|
|
@@ -147,7 +150,7 @@ export function createATRRendererPlugin(options: ATRRendererOptions = {}): Rende
|
|
|
147
150
|
if (enableWebGL && lineWebGLSurface?.isAvailable()) {
|
|
148
151
|
if (cachedPoints.length >= 2) {
|
|
149
152
|
const ok = lineWebGLSurface.drawLineStrips(
|
|
150
|
-
[{ points: cachedPoints, width: 1, color:
|
|
153
|
+
[{ points: cachedPoints, width: 1, color: atrColor }],
|
|
151
154
|
scrollLeft,
|
|
152
155
|
)
|
|
153
156
|
if (ok) {
|
|
@@ -158,7 +161,7 @@ export function createATRRendererPlugin(options: ATRRendererOptions = {}): Rende
|
|
|
158
161
|
}
|
|
159
162
|
|
|
160
163
|
if (!usedWebGL) {
|
|
161
|
-
drawWithCanvas2D(ctx, scrollLeft, cachedPoints)
|
|
164
|
+
drawWithCanvas2D(ctx, scrollLeft, cachedPoints, atrColor)
|
|
162
165
|
}
|
|
163
166
|
},
|
|
164
167
|
|
|
@@ -179,11 +182,12 @@ function drawWithCanvas2D(
|
|
|
179
182
|
ctx: CanvasRenderingContext2D,
|
|
180
183
|
scrollLeft: number,
|
|
181
184
|
points: LinePoint[],
|
|
185
|
+
atrColor: string,
|
|
182
186
|
): void {
|
|
183
187
|
if (points.length < 2) return
|
|
184
188
|
ctx.save()
|
|
185
189
|
ctx.translate(-scrollLeft, 0)
|
|
186
|
-
ctx.strokeStyle =
|
|
190
|
+
ctx.strokeStyle = atrColor
|
|
187
191
|
ctx.lineWidth = 1
|
|
188
192
|
ctx.lineJoin = 'round'
|
|
189
193
|
ctx.lineCap = 'round'
|
|
@@ -2,7 +2,7 @@ import type { RendererPluginWithHost, PluginHost, RenderContext } from '../../..
|
|
|
2
2
|
import { RENDERER_PRIORITY } from '../../../plugin'
|
|
3
3
|
import type { KLineData } from '../../../types/price'
|
|
4
4
|
import { alignToPhysicalPixelCenter } from '../../draw/pixelAlign'
|
|
5
|
-
import {
|
|
5
|
+
import { resolveThemeColors } from '../../../tokens'
|
|
6
6
|
import { BOLL_STATE_KEY, type BOLLRenderState } from '../../indicators/bollState'
|
|
7
7
|
import { Indicator } from '../../indicators/indicatorDefinitionRegistry'
|
|
8
8
|
import { resolveStateKey } from '../../indicators/indicatorMetadata'
|
|
@@ -54,7 +54,7 @@ function drawBOLLWithWebGL(
|
|
|
54
54
|
bandLowerPoints: LinePoint[]
|
|
55
55
|
}
|
|
56
56
|
): boolean {
|
|
57
|
-
const colors =
|
|
57
|
+
const colors = resolveThemeColors(context.theme, context.isAsiaMarket, context.colorPresetSettings)
|
|
58
58
|
if (context.settings?.enableWebGLRendering === false) return false
|
|
59
59
|
const surface = context.lineWebGLSurface
|
|
60
60
|
if (!surface || !surface.isAvailable()) return false
|
|
@@ -66,24 +66,24 @@ function drawBOLLWithWebGL(
|
|
|
66
66
|
surface.clear()
|
|
67
67
|
allOk = surface.drawFilledBand(
|
|
68
68
|
{ upperPoints: data.bandUpperPoints, lowerPoints: data.bandLowerPoints },
|
|
69
|
-
toOpaqueRgba(colors.
|
|
69
|
+
toOpaqueRgba(colors.boll.bandFill),
|
|
70
70
|
context.scrollLeft
|
|
71
71
|
)
|
|
72
72
|
if (allOk) {
|
|
73
|
-
compositeLineSurface(context, surface, getRgbaAlpha(colors.
|
|
73
|
+
compositeLineSurface(context, surface, getRgbaAlpha(colors.boll.bandFill))
|
|
74
74
|
}
|
|
75
75
|
}
|
|
76
76
|
surface.clear()
|
|
77
77
|
|
|
78
78
|
const lineStrips: Array<{ points: LinePoint[]; width: number; color: string }> = []
|
|
79
79
|
if (data.showUpper && data.upperPoints.length >= 2) {
|
|
80
|
-
lineStrips.push({ points: data.upperPoints, width: BOLL_LINE_WIDTH, color: colors.
|
|
80
|
+
lineStrips.push({ points: data.upperPoints, width: BOLL_LINE_WIDTH, color: colors.boll.upper })
|
|
81
81
|
}
|
|
82
82
|
if (data.showMiddle && data.middlePoints.length >= 2) {
|
|
83
|
-
lineStrips.push({ points: data.middlePoints, width: BOLL_LINE_WIDTH, color: colors.
|
|
83
|
+
lineStrips.push({ points: data.middlePoints, width: BOLL_LINE_WIDTH, color: colors.boll.middle })
|
|
84
84
|
}
|
|
85
85
|
if (data.showLower && data.lowerPoints.length >= 2) {
|
|
86
|
-
lineStrips.push({ points: data.lowerPoints, width: BOLL_LINE_WIDTH, color: colors.
|
|
86
|
+
lineStrips.push({ points: data.lowerPoints, width: BOLL_LINE_WIDTH, color: colors.boll.lower })
|
|
87
87
|
}
|
|
88
88
|
|
|
89
89
|
if (lineStrips.length > 0) {
|
|
@@ -183,7 +183,7 @@ export function createBOLLRendererPlugin(): RendererPluginWithHost {
|
|
|
183
183
|
draw(context: RenderContext) {
|
|
184
184
|
const { ctx, pane, data, range, scrollLeft, dpr, kLineCenters } = context
|
|
185
185
|
const klineData = data as KLineData[]
|
|
186
|
-
const colors =
|
|
186
|
+
const colors = resolveThemeColors(context.theme, context.isAsiaMarket, context.colorPresetSettings)
|
|
187
187
|
|
|
188
188
|
const stateKey = resolveKey()
|
|
189
189
|
if (!stateKey) return
|
|
@@ -281,7 +281,7 @@ export function createBOLLRendererPlugin(): RendererPluginWithHost {
|
|
|
281
281
|
bandPath.lineTo(bandLowerPoints[i].x, bandLowerPoints[i].y)
|
|
282
282
|
}
|
|
283
283
|
bandPath.closePath()
|
|
284
|
-
ctx.fillStyle = colors.
|
|
284
|
+
ctx.fillStyle = colors.boll.bandFill
|
|
285
285
|
ctx.fill(bandPath)
|
|
286
286
|
}
|
|
287
287
|
|
|
@@ -296,9 +296,9 @@ export function createBOLLRendererPlugin(): RendererPluginWithHost {
|
|
|
296
296
|
ctx.stroke()
|
|
297
297
|
}
|
|
298
298
|
|
|
299
|
-
if (showUpper) drawLine(upperPoints, colors.
|
|
300
|
-
if (showMiddle) drawLine(middlePoints, colors.
|
|
301
|
-
if (showLower) drawLine(lowerPoints, colors.
|
|
299
|
+
if (showUpper) drawLine(upperPoints, colors.boll.upper)
|
|
300
|
+
if (showMiddle) drawLine(middlePoints, colors.boll.middle)
|
|
301
|
+
if (showLower) drawLine(lowerPoints, colors.boll.lower)
|
|
302
302
|
|
|
303
303
|
ctx.restore()
|
|
304
304
|
},
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { RendererPluginWithHost, RenderContext, PluginHost } from '../../../plugin'
|
|
2
2
|
import { RENDERER_PRIORITY } from '../../../plugin'
|
|
3
|
-
import {
|
|
3
|
+
import { resolveThemeColors } from '../../../tokens'
|
|
4
4
|
import type { CCIRenderState } from '../../indicators/cciState'
|
|
5
5
|
import { createCCIStateKey } from '../../indicators/cciState'
|
|
6
6
|
import { Indicator } from '../../indicators/indicatorDefinitionRegistry'
|
|
@@ -92,7 +92,7 @@ export function createCCIRendererPlugin(options: CCIRendererOptions = {}): Rende
|
|
|
92
92
|
|
|
93
93
|
draw(context: RenderContext) {
|
|
94
94
|
const { ctx, pane, range, scrollLeft, dpr, kLineCenters, lineWebGLSurface } = context
|
|
95
|
-
const colors =
|
|
95
|
+
const colors = resolveThemeColors(context.theme, context.isAsiaMarket, context.colorPresetSettings)
|
|
96
96
|
|
|
97
97
|
const stateKey = resolveKey()
|
|
98
98
|
if (!stateKey) return
|
|
@@ -123,7 +123,7 @@ const { ctx, pane, range, scrollLeft, dpr, kLineCenters, lineWebGLSurface } = co
|
|
|
123
123
|
const lineStartX = scrollLeft
|
|
124
124
|
const lineEndX = scrollLeft + context.paneWidth
|
|
125
125
|
|
|
126
|
-
ctx.strokeStyle = colors.
|
|
126
|
+
ctx.strokeStyle = colors.cci.overbought
|
|
127
127
|
ctx.lineWidth = 1
|
|
128
128
|
ctx.setLineDash([4, 4])
|
|
129
129
|
ctx.beginPath()
|
|
@@ -131,7 +131,7 @@ const { ctx, pane, range, scrollLeft, dpr, kLineCenters, lineWebGLSurface } = co
|
|
|
131
131
|
ctx.lineTo(lineEndX, y100)
|
|
132
132
|
ctx.stroke()
|
|
133
133
|
|
|
134
|
-
ctx.strokeStyle = colors.
|
|
134
|
+
ctx.strokeStyle = colors.cci.oversold
|
|
135
135
|
ctx.beginPath()
|
|
136
136
|
ctx.moveTo(lineStartX, yNeg100)
|
|
137
137
|
ctx.lineTo(lineEndX, yNeg100)
|
|
@@ -177,7 +177,7 @@ const { ctx, pane, range, scrollLeft, dpr, kLineCenters, lineWebGLSurface } = co
|
|
|
177
177
|
if (enableWebGL && lineWebGLSurface?.isAvailable()) {
|
|
178
178
|
if (params.showCCI && cachedCCIPoints.length >= 2) {
|
|
179
179
|
const ok = lineWebGLSurface.drawLineStrips(
|
|
180
|
-
[{ points: cachedCCIPoints, width: 1, color: colors.
|
|
180
|
+
[{ points: cachedCCIPoints, width: 1, color: colors.cci.cci }],
|
|
181
181
|
scrollLeft
|
|
182
182
|
)
|
|
183
183
|
if (ok) {
|
|
@@ -213,13 +213,13 @@ function drawCCILineWithCanvas2D(
|
|
|
213
213
|
scrollLeft: number,
|
|
214
214
|
cciPoints: LinePoint[],
|
|
215
215
|
params: { showCCI: boolean },
|
|
216
|
-
colors: {
|
|
216
|
+
colors: { cci: { cci: string; overbought: string; oversold: string } }
|
|
217
217
|
): void {
|
|
218
218
|
if (!params.showCCI || cciPoints.length < 2) return
|
|
219
219
|
|
|
220
220
|
ctx.save()
|
|
221
221
|
ctx.translate(-scrollLeft, 0)
|
|
222
|
-
ctx.strokeStyle = colors.
|
|
222
|
+
ctx.strokeStyle = colors.cci.cci
|
|
223
223
|
ctx.lineWidth = 1
|
|
224
224
|
ctx.lineJoin = 'round'
|
|
225
225
|
ctx.lineCap = 'round'
|
|
@@ -241,9 +241,10 @@ export function getCCITitleInfo(
|
|
|
241
241
|
period: number,
|
|
242
242
|
pluginHost: PluginHost,
|
|
243
243
|
paneId: string = 'sub_CCI',
|
|
244
|
-
theme:
|
|
244
|
+
theme: 'light' | 'dark' = 'light',
|
|
245
|
+
isAsiaMarket?: boolean
|
|
245
246
|
): { name: string; params: number[]; values: Array<{ label: string; value: number; color: string }> } | null {
|
|
246
|
-
const colors =
|
|
247
|
+
const colors = resolveThemeColors(theme, isAsiaMarket)
|
|
247
248
|
const state = pluginHost.getSharedState<CCIRenderState>(createCCIStateKey(paneId))
|
|
248
249
|
if (!state) return null
|
|
249
250
|
|
|
@@ -254,7 +255,7 @@ export function getCCITitleInfo(
|
|
|
254
255
|
name: 'CCI',
|
|
255
256
|
params: [period],
|
|
256
257
|
values: [
|
|
257
|
-
{ label: 'CCI', value: cci, color: colors.
|
|
258
|
+
{ label: 'CCI', value: cci, color: colors.cci.cci },
|
|
258
259
|
],
|
|
259
260
|
}
|
|
260
261
|
}
|
|
@@ -2,7 +2,7 @@ import type { RendererPluginWithHost, PluginHost, RenderContext } from '../../..
|
|
|
2
2
|
import { RENDERER_PRIORITY } from '../../../plugin'
|
|
3
3
|
import type { KLineData } from '../../../types/price'
|
|
4
4
|
import { alignToPhysicalPixelCenter } from '../../draw/pixelAlign'
|
|
5
|
-
import {
|
|
5
|
+
import { resolveThemeColors } from '../../../tokens'
|
|
6
6
|
import { ENE_STATE_KEY, type ENERenderState } from '../../indicators/eneState'
|
|
7
7
|
import { Indicator } from '../../indicators/indicatorDefinitionRegistry'
|
|
8
8
|
import { resolveStateKey } from '../../indicators/indicatorMetadata'
|
|
@@ -40,7 +40,7 @@ function drawENEWithWebGL(
|
|
|
40
40
|
lowerPoints: LinePoint[]
|
|
41
41
|
}
|
|
42
42
|
): boolean {
|
|
43
|
-
const colors =
|
|
43
|
+
const colors = resolveThemeColors(context.theme, context.isAsiaMarket, context.colorPresetSettings)
|
|
44
44
|
if (context.settings?.enableWebGLRendering === false) return false
|
|
45
45
|
const surface = context.lineWebGLSurface
|
|
46
46
|
if (!surface || !surface.isAvailable()) return false
|
|
@@ -52,24 +52,24 @@ function drawENEWithWebGL(
|
|
|
52
52
|
surface.clear()
|
|
53
53
|
allOk = surface.drawFilledBand(
|
|
54
54
|
{ upperPoints: data.upperPoints, lowerPoints: data.lowerPoints },
|
|
55
|
-
toOpaqueRgba(colors.
|
|
55
|
+
toOpaqueRgba(colors.ene.bandFill),
|
|
56
56
|
context.scrollLeft
|
|
57
57
|
)
|
|
58
58
|
if (allOk) {
|
|
59
|
-
compositeLineSurface(context, surface, getRgbaAlpha(colors.
|
|
59
|
+
compositeLineSurface(context, surface, getRgbaAlpha(colors.ene.bandFill))
|
|
60
60
|
}
|
|
61
61
|
}
|
|
62
62
|
surface.clear()
|
|
63
63
|
|
|
64
64
|
const lineStrips: Array<{ points: LinePoint[]; width: number; color: string }> = []
|
|
65
65
|
if (data.upperPoints.length >= 2) {
|
|
66
|
-
lineStrips.push({ points: data.upperPoints, width: 1, color: colors.
|
|
66
|
+
lineStrips.push({ points: data.upperPoints, width: 1, color: colors.ene.upper })
|
|
67
67
|
}
|
|
68
68
|
if (data.middlePoints.length >= 2) {
|
|
69
|
-
lineStrips.push({ points: data.middlePoints, width: 1, color: colors.
|
|
69
|
+
lineStrips.push({ points: data.middlePoints, width: 1, color: colors.ene.middle })
|
|
70
70
|
}
|
|
71
71
|
if (data.lowerPoints.length >= 2) {
|
|
72
|
-
lineStrips.push({ points: data.lowerPoints, width: 1, color: colors.
|
|
72
|
+
lineStrips.push({ points: data.lowerPoints, width: 1, color: colors.ene.lower })
|
|
73
73
|
}
|
|
74
74
|
if (lineStrips.length > 0) {
|
|
75
75
|
allOk = surface.drawLineStrips(lineStrips, context.scrollLeft)
|
|
@@ -143,7 +143,7 @@ export function createENERendererPlugin(): RendererPluginWithHost {
|
|
|
143
143
|
draw(context: RenderContext) {
|
|
144
144
|
const { ctx, pane, data, range, scrollLeft, dpr, kLineCenters } = context
|
|
145
145
|
const klineData = data as KLineData[]
|
|
146
|
-
const colors =
|
|
146
|
+
const colors = resolveThemeColors(context.theme, context.isAsiaMarket, context.colorPresetSettings)
|
|
147
147
|
|
|
148
148
|
const stateKey = resolveKey()
|
|
149
149
|
if (!stateKey) return
|
|
@@ -193,7 +193,7 @@ export function createENERendererPlugin(): RendererPluginWithHost {
|
|
|
193
193
|
ctx.save()
|
|
194
194
|
ctx.translate(-scrollLeft, 0)
|
|
195
195
|
|
|
196
|
-
ctx.fillStyle = colors.
|
|
196
|
+
ctx.fillStyle = colors.ene.bandFill
|
|
197
197
|
ctx.beginPath()
|
|
198
198
|
if (upperPoints.length > 0) {
|
|
199
199
|
ctx.moveTo(upperPoints[0]!.x, upperPoints[0]!.y)
|
|
@@ -225,9 +225,9 @@ export function createENERendererPlugin(): RendererPluginWithHost {
|
|
|
225
225
|
ctx.stroke()
|
|
226
226
|
}
|
|
227
227
|
|
|
228
|
-
drawLine(upperPoints, colors.
|
|
229
|
-
drawLine(middlePoints, colors.
|
|
230
|
-
drawLine(lowerPoints, colors.
|
|
228
|
+
drawLine(upperPoints, colors.ene.upper)
|
|
229
|
+
drawLine(middlePoints, colors.ene.middle)
|
|
230
|
+
drawLine(lowerPoints, colors.ene.lower)
|
|
231
231
|
|
|
232
232
|
ctx.restore()
|
|
233
233
|
},
|
|
@@ -2,7 +2,7 @@ import type { RendererPluginWithHost, PluginHost, RenderContext } from '../../..
|
|
|
2
2
|
import { RENDERER_PRIORITY } from '../../../plugin'
|
|
3
3
|
import type { KLineData } from '../../../types/price'
|
|
4
4
|
import { alignToPhysicalPixelCenter } from '../../draw/pixelAlign'
|
|
5
|
-
import {
|
|
5
|
+
import { resolveThemeColors } from '../../../tokens'
|
|
6
6
|
import { EXPMA_STATE_KEY, type EXPMARenderState } from '../../indicators/expmaState'
|
|
7
7
|
import { Indicator } from '../../indicators/indicatorDefinitionRegistry'
|
|
8
8
|
import { resolveStateKey } from '../../indicators/indicatorMetadata'
|
|
@@ -82,7 +82,7 @@ export function createEXPMARendererPlugin(): RendererPluginWithHost {
|
|
|
82
82
|
draw(context: RenderContext) {
|
|
83
83
|
const { ctx, pane, data, range, scrollLeft, dpr, kLineCenters, lineWebGLSurface } = context
|
|
84
84
|
const klineData = data as KLineData[]
|
|
85
|
-
const colors =
|
|
85
|
+
const colors = resolveThemeColors(context.theme, context.isAsiaMarket, context.colorPresetSettings)
|
|
86
86
|
const stateKey = resolveKey()
|
|
87
87
|
if (!stateKey) return
|
|
88
88
|
const state = pluginHost?.getSharedState<EXPMARenderState>(stateKey)
|
|
@@ -123,10 +123,10 @@ export function createEXPMARendererPlugin(): RendererPluginWithHost {
|
|
|
123
123
|
if (enableWebGL && lineWebGLSurface?.isAvailable()) {
|
|
124
124
|
const lines: Array<{ points: LinePoint[]; width: number; color: string }> = []
|
|
125
125
|
if (cachedFastPoints.length >= 2) {
|
|
126
|
-
lines.push({ points: cachedFastPoints, width: 1, color: colors.
|
|
126
|
+
lines.push({ points: cachedFastPoints, width: 1, color: colors.expma.fast })
|
|
127
127
|
}
|
|
128
128
|
if (cachedSlowPoints.length >= 2) {
|
|
129
|
-
lines.push({ points: cachedSlowPoints, width: 1, color: colors.
|
|
129
|
+
lines.push({ points: cachedSlowPoints, width: 1, color: colors.expma.slow })
|
|
130
130
|
}
|
|
131
131
|
|
|
132
132
|
const allOk = lines.length > 0 && lineWebGLSurface.drawLineStrips(lines, scrollLeft)
|
|
@@ -146,7 +146,7 @@ export function createEXPMARendererPlugin(): RendererPluginWithHost {
|
|
|
146
146
|
ctx.lineCap = 'round'
|
|
147
147
|
|
|
148
148
|
if (cachedFastPoints.length >= 2) {
|
|
149
|
-
ctx.strokeStyle = colors.
|
|
149
|
+
ctx.strokeStyle = colors.expma.fast
|
|
150
150
|
ctx.beginPath()
|
|
151
151
|
ctx.moveTo(cachedFastPoints[0]!.x, cachedFastPoints[0]!.y)
|
|
152
152
|
for (let i = 1; i < cachedFastPoints.length; i++) {
|
|
@@ -157,7 +157,7 @@ export function createEXPMARendererPlugin(): RendererPluginWithHost {
|
|
|
157
157
|
}
|
|
158
158
|
|
|
159
159
|
if (cachedSlowPoints.length >= 2) {
|
|
160
|
-
ctx.strokeStyle = colors.
|
|
160
|
+
ctx.strokeStyle = colors.expma.slow
|
|
161
161
|
ctx.beginPath()
|
|
162
162
|
ctx.moveTo(cachedSlowPoints[0]!.x, cachedSlowPoints[0]!.y)
|
|
163
163
|
for (let i = 1; i < cachedSlowPoints.length; i++) {
|