@363045841yyt/klinechart-core 0.7.5-alpha.2 → 0.7.5
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/controllers/index.d.ts +1 -0
- package/dist/controllers/index.d.ts.map +1 -1
- package/dist/controllers/index.js +1 -0
- package/dist/controllers/index.js.map +1 -1
- package/dist/engine/chart.d.ts +11 -19
- package/dist/engine/chart.d.ts.map +1 -1
- package/dist/engine/chart.js +92 -109
- package/dist/engine/chart.js.map +1 -1
- package/dist/engine/renderers/Indicator/indicatorData.d.ts +1 -0
- package/dist/engine/renderers/Indicator/indicatorData.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/indicatorData.js +1 -1
- package/dist/engine/renderers/Indicator/indicatorData.js.map +1 -1
- package/dist/engine/subPaneManager.d.ts +4 -0
- package/dist/engine/subPaneManager.d.ts.map +1 -1
- package/dist/engine/subPaneManager.js +13 -0
- package/dist/engine/subPaneManager.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/package.json +1 -1
- package/src/controllers/index.ts +1 -0
- package/src/engine/chart.ts +105 -117
- package/src/engine/renderers/Indicator/indicatorData.ts +1 -1
- package/src/engine/subPaneManager.ts +15 -0
- package/src/version.ts +1 -1
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
export type { KLineData, IndicatorPaneRole, IndicatorRole, IndicatorParamDef, IndicatorDefinition, IndicatorInstance, SubPaneInfo, DrawingToolType, DrawingObject, InteractionSnapshot, DrawingControllerCallbacks, ChartMountOptions, ChartViewport, ChartController, ChartControllerFactory, } from './types';
|
|
2
2
|
export { createChartController } from './createChartController';
|
|
3
|
+
export { createIndicatorSelectorController } from './createIndicatorSelectorController';
|
|
3
4
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/controllers/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACR,SAAS,EACT,iBAAiB,EACjB,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,WAAW,EACX,eAAe,EACf,aAAa,EACb,mBAAmB,EACnB,0BAA0B,EAC1B,iBAAiB,EACjB,aAAa,EACb,eAAe,EACf,sBAAsB,GACzB,MAAM,SAAS,CAAA;AAEhB,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/controllers/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACR,SAAS,EACT,iBAAiB,EACjB,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,WAAW,EACX,eAAe,EACf,aAAa,EACb,mBAAmB,EACnB,0BAA0B,EAC1B,iBAAiB,EACjB,aAAa,EACb,eAAe,EACf,sBAAsB,GACzB,MAAM,SAAS,CAAA;AAEhB,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,EAAE,iCAAiC,EAAE,MAAM,qCAAqC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/controllers/index.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/controllers/index.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,EAAE,iCAAiC,EAAE,MAAM,qCAAqC,CAAA"}
|
package/dist/engine/chart.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { KLineData } from '../types/price';
|
|
2
2
|
import type { ChartSettings } from '../config/chartSettings';
|
|
3
|
-
import { type Signal } from '../reactivity/signal';
|
|
3
|
+
import { type Signal, type Computed } from '../reactivity/signal';
|
|
4
4
|
import { type VisibleRange, UpdateLevel } from './layout/pane';
|
|
5
5
|
import { InteractionController, type InteractionSnapshot } from './controller/interaction';
|
|
6
6
|
export type { InteractionSnapshot };
|
|
@@ -146,10 +146,10 @@ export declare class Chart {
|
|
|
146
146
|
private cachedDrawFrame;
|
|
147
147
|
/** 副图管理器 */
|
|
148
148
|
private subPaneManager;
|
|
149
|
-
/**
|
|
150
|
-
private
|
|
151
|
-
/**
|
|
152
|
-
private
|
|
149
|
+
/** 主图指标激活状态与参数(存在即激活,默认参数在 enable 时初始化) */
|
|
150
|
+
private _mainIndicatorsSignal;
|
|
151
|
+
/** 主图指标默认参数 */
|
|
152
|
+
private static DEFAULT_MAIN_PARAMS;
|
|
153
153
|
/**
|
|
154
154
|
* 启用主图指标
|
|
155
155
|
* @param indicatorId 指标ID
|
|
@@ -427,22 +427,22 @@ export declare class Chart {
|
|
|
427
427
|
private _viewportSignal;
|
|
428
428
|
private _dataSignal;
|
|
429
429
|
private _themeSignal;
|
|
430
|
-
private _indicatorsSignal;
|
|
431
|
-
private _subPanesSignal;
|
|
432
430
|
private _drawingToolSignal;
|
|
433
431
|
private _drawingsSignal;
|
|
434
432
|
private _paneRatiosSignal;
|
|
435
433
|
private _interactionSignal;
|
|
434
|
+
private _indicatorsComputed;
|
|
435
|
+
private _subPanesComputed;
|
|
436
436
|
/** 视口状态信号 */
|
|
437
437
|
get viewport(): Signal<ViewportState>;
|
|
438
438
|
/** 数据信号 */
|
|
439
439
|
get data(): Signal<ReadonlyArray<KLineData>>;
|
|
440
440
|
/** 主题信号 */
|
|
441
441
|
get theme(): Signal<'light' | 'dark'>;
|
|
442
|
-
/**
|
|
443
|
-
get indicators():
|
|
444
|
-
/**
|
|
445
|
-
get subPanes():
|
|
442
|
+
/** 指标实例列表信号(派生信号,自动随主/副图状态更新) */
|
|
443
|
+
get indicators(): Computed<ReadonlyArray<IndicatorInstance>>;
|
|
444
|
+
/** 子图信息信号(派生信号,自动随副图条目/比例更新) */
|
|
445
|
+
get subPanes(): Computed<ReadonlyArray<SubPaneInfo>>;
|
|
446
446
|
/** 当前绘图工具信号 */
|
|
447
447
|
get drawingTool(): Signal<DrawingToolType | null>;
|
|
448
448
|
/** 绘图对象列表信号 */
|
|
@@ -543,14 +543,6 @@ export declare class Chart {
|
|
|
543
543
|
* @returns 是否成功
|
|
544
544
|
*/
|
|
545
545
|
reorderIndicators(orderedInstanceIds: string[]): boolean;
|
|
546
|
-
/**
|
|
547
|
-
* 同步 indicators signal
|
|
548
|
-
*/
|
|
549
|
-
private syncIndicatorsSignal;
|
|
550
|
-
/**
|
|
551
|
-
* 同步 sub panes signal
|
|
552
|
-
*/
|
|
553
|
-
private syncSubPanesSignal;
|
|
554
546
|
/**
|
|
555
547
|
* 调整子图大小(高层 API)
|
|
556
548
|
* @param paneId 面板 ID
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chart.d.ts","sourceRoot":"","sources":["../../src/engine/chart.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,EAAgB,KAAK,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAEhE,OAAO,EAAQ,KAAK,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AACpE,OAAO,EAAE,qBAAqB,EAAE,KAAK,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAC1F,YAAY,EAAE,mBAAmB,EAAE,CAAA;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAE7C,OAAO,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAC1E,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAG1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAE3D,OAAO,EAAkB,KAAK,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAEpE,OAAO,EAEH,KAAK,cAAc,EAEnB,KAAK,cAAc,EACnB,KAAK,sBAAsB,EAG3B,KAAK,QAAQ,EACb,KAAK,gBAAgB,EAKxB,MAAM,WAAW,CAAA;AAClB,OAAO,EAA8B,KAAK,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAgCzF,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,CAAA;AAE/C;;;;GAIG;AACH;;;;;GAKG;AACH,MAAM,MAAM,QAAQ,GAAG;IACnB,SAAS,EAAE,cAAc,CAAA;IACzB,WAAW,EAAE,cAAc,CAAA;IAC3B,cAAc,EAAE,cAAc,CAAA;IAC9B,WAAW,EAAE,iBAAiB,CAAA;CACjC,CAAA;AAED;;;;;GAKG;AACH,MAAM,MAAM,QAAQ,GAAG;IACnB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,QAAQ,CAAA;IACf,YAAY,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAA;CAC3C,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC1B,UAAU,EAAE,iBAAiB,CAAA;IAC7B,aAAa,EAAE,iBAAiB,CAAA;IAChC,WAAW,EAAE,iBAAiB,CAAA;CACjC,CAAA;AAED,MAAM,MAAM,YAAY,GAAG;IACvB,+BAA+B;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,yBAAyB;IACzB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,EAAE,MAAM,CAAA;IAClB,cAAc,EAAE,MAAM,CAAA;IACtB,gBAAgB,EAAE,MAAM,CAAA;IACxB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,QAAQ,EAAE,CAAA;IAEjB,2BAA2B;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAA;IAEhB,gCAAgC;IAChC,eAAe,CAAC,EAAE,MAAM,CAAA;IAExB,4BAA4B;IAC5B,sBAAsB,CAAC,EAAE,MAAM,CAAA;IAE/B;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC5B,CAAA;AAED,0DAA0D;AAC1D,MAAM,MAAM,cAAc,GAAG,MAAM,EAAE,CAAA;AAErC,MAAM,MAAM,QAAQ,GAAG;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,GAAG,EAAE,MAAM,CAAA;CACd,CAAA;AAED,KAAK,oBAAoB,GAAG,IAAI,CAAC,YAAY,EAAE,QAAQ,GAAG,MAAM,CAAC,GAAG;IAChE,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;CACf,CAAA;AAYD,qBAAa,KAAK;IACd,OAAO,CAAC,GAAG,CAAU;IACrB,OAAO,CAAC,GAAG,CAAsB;IACjC,OAAO,CAAC,aAAa,CAAkB;IAEvC,OAAO,CAAC,GAAG,CAAsB;IACjC,OAAO,CAAC,kBAAkB,CAA+B;IACzD,OAAO,CAAC,iBAAiB,CAAwB;IAEjD,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,aAAa,CAAe;IACpC,OAAO,CAAC,YAAY,CAAqB;IACzC,QAAQ,CAAC,WAAW,EAAE,qBAAqB,CAAA;IAE3C,WAAW;IACX,OAAO,CAAC,UAAU,CAAgB;IAElC,eAAe;IACf,OAAO,CAAC,qBAAqB,CAAuB;IAEpD,4DAA4D;IAC5D,OAAO,CAAC,UAAU,CAAI;IAEtB,uBAAuB;IACvB,OAAO,CAAC,cAAc,CAAC,CAAgB;IAEvC,iCAAiC;IACjC,OAAO,CAAC,QAAQ,CAAC,CAAY;IAE7B,mBAAmB;IACnB,OAAO,CAAC,YAAY,CAA0B;IAE9C,uDAAuD;IACvD,OAAO,CAAC,gBAAgB,CAAI;IAE5B,oCAAoC;IACpC,OAAO,CAAC,mBAAmB,CAAQ;IAEnC,qBAAqB;IACrB,OAAO,CAAC,QAAQ,CAAoB;IAEpC,iDAAiD;IACjD,OAAO,CAAC,mBAAmB,CAAiC;IAE5D,2BAA2B;IAC3B,OAAO,CAAC,gBAAgB,CAAC,CAA8B;IAEvD,kBAAkB;IAClB,OAAO,CAAC,QAAQ,CAAwC;IAExD,qCAAqC;IACrC,OAAO,CAAC,kBAAkB,CAAoB;IAE9C,kCAAkC;IAClC,OAAO,CAAC,kBAAkB,CAAC,CAA6B;IAExD,+BAA+B;IAC/B,OAAO,CAAC,YAAY,CAAC,CAA6B;IAElD,iCAAiC;IACjC,OAAO,CAAC,gBAAgB,CAAY;IAEpC,aAAa;IACb,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAQ;IAEvC;;OAEG;IACH,OAAO,CAAC,kBAAkB,CAAoB;IAE9C,uBAAuB;IACvB,OAAO,CAAC,gBAAgB,CAAqC;IAE7D,0BAA0B;IAC1B,OAAO,CAAC,eAAe,CAOR;IAEf,YAAY;IACZ,OAAO,CAAC,cAAc,CAAgB;IAEtC,oCAAoC;IACpC,OAAO,CAAC,oBAAoB,CAAyB;IAErD,eAAe;IACf,OAAO,CAAC,mBAAmB,CAmB1B;IAED;;;;;OAKG;IACH,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC,GAAG,OAAO;IAmCrG;;;;OAIG;IACH,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;IAiBlD;;;;OAIG;IACH,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAQhE;;;OAGG;IACH,uBAAuB,IAAI,MAAM,EAAE;IAInC;;;OAGG;IACH,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;IAInD;;;;OAIG;IACH,yBAAyB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC,GAAG,IAAI;IAoBvG;;;OAGG;IACH,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC,GAAG,IAAI;IAI7F;;OAEG;IACH,mBAAmB,IAAI,IAAI;IAS3B;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAyHnC;;OAEG;IACH,OAAO,CAAC,4BAA4B;IA4BpC;;OAEG;IACH,OAAO,CAAC,8BAA8B;IA4EtC;;OAEG;IACH,uBAAuB,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI;IAoBnD;;;;OAIG;gBACS,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,YAAY;IAoD5C,OAAO,CAAC,iBAAiB;IA8CzB,OAAO,CAAC,kBAAkB;IA8C1B,OAAO,CAAC,qBAAqB;IAiB7B,OAAO,CAAC,eAAe;IAQvB,WAAW,IAAI,QAAQ,GAAG,IAAI;IAI9B,aAAa,IAAI,MAAM;IAIvB,wCAAwC;IACxC,mBAAmB,IAAI,MAAM;IAI7B,aAAa;IACb,IAAI,MAAM,IAAI,cAAc,CAE3B;IAID,cAAc;IACd,WAAW,CAAC,MAAM,EAAE,cAAc,GAAG,sBAAsB,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAOpG,cAAc;IACd,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAIlC,cAAc;IACd,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;IAInF,oBAAoB;IACpB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAIzE,eAAe;IACf,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAIxD,cAAc;IACd,eAAe,IAAI,cAAc,EAAE;IAInC,mBAAmB;IACnB,cAAc,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI;IAa7C;;;OAGG;IACH,IAAI,CAAC,KAAK,GAAE,WAA6B;IA+BzC,OAAO,CAAC,gBAAgB;IAuExB,OAAO,CAAC,WAAW;IAsGnB,OAAO,CAAC,WAAW;IAqEnB;;;;OAIG;IACH,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAoBxE,eAAe;IACf,iBAAiB,IAAI,MAAM;IAI3B,eAAe;IACf,mBAAmB,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI;IAIpD,qBAAqB;IACrB,qBAAqB,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,IAAI;IAIrD,eAAe;IACf,eAAe,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,IAAI;IAI/C,wBAAwB;IACxB,gBAAgB,IAAI,YAAY,EAAE;IAIlC,mDAAmD;IACnD,gBAAgB,IAAI,aAAa;IAIjC,cAAc;IACd,mBAAmB,CAAC,OAAO,EAAE,kBAAkB,EAAE,GAAG,IAAI;IAKxD,cAAc;IACd,kBAAkB,IAAI,IAAI;IAK1B,8CAA8C;IAC9C,MAAM;IAIN,kCAAkC;IAClC,SAAS;IAIT;;;;OAIG;IACH,kBAAkB,CAAC,KAAK,EAAE,YAAY,GAAG,cAAc;IAyBvD;;;OAGG;IACH,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC;IAqB5C;;;;;;OAMG;IACH,gBAAgB,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,IAAI;IAKzC,kBAAkB,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,IAAI;IAI1C,UAAU,CAAC,GAAG,EAAE,QAAQ,GAAG,IAAI;IAY/B,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAM1C,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC,GAAG,IAAI;IAiB5H,aAAa;IACb,WAAW,CAAC,QAAQ,EAAE,OAAO,WAAW,EAAE,aAAa,EAAE,GAAG,IAAI;IAMhE,iBAAiB;IACjB,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAM7C,8BAA8B;IAC9B,kBAAkB,IAAI,QAAQ,EAAE;IAiBhC,OAAO,CAAC,oBAAoB;IAY5B,OAAO,CAAC,oBAAoB;IAS5B;;;;OAIG;IACH,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO;IAsFhE,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAc7B;;;OAGG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAQhC;;;OAGG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAMhC;;;;;;OAMG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC,GAAG,OAAO;IA2BzH;;;OAGG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAOnC;;;;;OAKG;IACH,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC,GAAG,IAAI;IAMnI;;;;OAIG;IACH,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAK1E;;OAEG;IACH,aAAa,IAAI,IAAI;IAoBrB;;;OAGG;IACH,oBAAoB,IAAI,gBAAgB,EAAE;IAI1C;;OAEG;IACH,iBAAiB,IAAI,YAAY,EAAE;IAInC;;;OAGG;IACH,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAIzD,OAAO,CAAC,uBAAuB;IA2C/B,wBAAwB;IACxB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAS;IAEhD;;;;OAIG;IACH,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAapD;;;OAGG;IACH,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAOtC;;;;OAIG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAUhD;;;OAGG;IACH,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE;IAyB5B,4CAA4C;IAC5C,OAAO,IAAI,SAAS,EAAE;IAItB,4BAA4B;IAC5B,qBAAqB,IAAI,kBAAkB;IAI3C,OAAO,CAAC,oBAAoB;IAI5B,mBAAmB,IAAI,MAAM;IAI7B,0BAA0B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAKxD,qCAAqC;IACrC,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAWjD,+BAA+B;IAC/B,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAO9C,kDAAkD;IAClD,eAAe,IAAI,MAAM;IAWzB,gBAAgB;IAChB,MAAM;IAaN;;;OAGG;IACH,YAAY,CAAC,KAAK,GAAE,WAA6B,GAAG,IAAI;IA+BxD,aAAa;IACP,OAAO;IAkCb,iBAAiB;IACjB,OAAO,CAAC,SAAS;IAuEjB,OAAO,CAAC,uBAAuB;IAa/B,OAAO,CAAC,qBAAqB;IAc7B,OAAO,CAAC,0BAA0B;IA0BlC,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,yBAAyB;IA6CjC,kCAAkC;IAClC,OAAO,CAAC,WAAW;IA0DnB,OAAO,CAAC,eAAe;IAsFvB,OAAO,CAAC,eAAe,CAUrB;IAEF,OAAO,CAAC,WAAW,CAA6C;IAChE,OAAO,CAAC,YAAY,CAA0C;IAC9D,OAAO,CAAC,iBAAiB,CAAqD;IAC9E,OAAO,CAAC,eAAe,CAA+C;IACtE,OAAO,CAAC,kBAAkB,CAA6C;IACvE,OAAO,CAAC,eAAe,CAAqE;IAC5F,OAAO,CAAC,iBAAiB,CAAqD;IAC9E,OAAO,CAAC,kBAAkB,CAexB;IAEF,aAAa;IACb,IAAI,QAAQ,IAAI,MAAM,CAAC,aAAa,CAAC,CAEpC;IAED,WAAW;IACX,IAAI,IAAI,IAAI,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAE3C;IAED,WAAW;IACX,IAAI,KAAK,IAAI,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,CAEpC;IAED,eAAe;IACf,IAAI,UAAU,IAAI,MAAM,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAEzD;IAED,aAAa;IACb,IAAI,QAAQ,IAAI,MAAM,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,CAEjD;IAED,eAAe;IACf,IAAI,WAAW,IAAI,MAAM,CAAC,eAAe,GAAG,IAAI,CAAC,CAEhD;IAED,eAAe;IACf,IAAI,QAAQ,IAAI,MAAM,CAAC,aAAa,CAAC,OAAO,WAAW,EAAE,aAAa,CAAC,CAAC,CAEvE;IAED,aAAa;IACb,IAAI,UAAU,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAEzD;IAED,aAAa;IACb,IAAI,gBAAgB,IAAI,MAAM,CAAC,mBAAmB,CAAC,CAElD;IAID;;;OAGG;IACH,OAAO,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,IAAI;IAIhC;;;OAGG;IACH,UAAU,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,IAAI;IAOtC;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI;IAOvC;;;OAGG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI;IAKlD;;OAEG;IACH,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI;IAI9B;;OAEG;IACH,OAAO,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI;IAI/B;;;OAGG;IACH,OAAO,CAAC,SAAS;IA4CjB;;;;;;;OAOG;IACH,kBAAkB,CAAC,CAAC,EAAE,YAAY,EAAE,iBAAiB,CAAC,EAAE;QACpD,aAAa,CAAC,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,KAAK,OAAO,CAAA;QACpE,aAAa,CAAC,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,KAAK,OAAO,CAAA;QACpE,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,KAAK,OAAO,CAAA;KACrE,GAAG,OAAO;IAsDX;;;OAGG;IACH,gBAAgB,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI;IAarC;;;OAGG;IACH,iBAAiB,IAAI,IAAI;IAMzB;;;;OAIG;IACH,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI;IAQ3D;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAoB5B;;;;;;OAMG;IACH,YAAY,CACR,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,MAAM,GAAG,KAAK,EACpB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACjC,MAAM,GAAG,IAAI;IAyBhB;;;;OAIG;IACH,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAyB5C;;;;;OAKG;IACH,qBAAqB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO;IAsBnF;;;;OAIG;IACH,iBAAiB,CAAC,kBAAkB,EAAE,MAAM,EAAE,GAAG,OAAO;IAOxD;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAuB5B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAc1B;;;;;OAKG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO;IAMtD;;;OAGG;IACH,cAAc,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI,GAAG,IAAI;IAKlD;;;OAGG;IACH,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAKtC;;OAEG;IACH,aAAa,IAAI,IAAI;IAMrB;;;OAGG;IACH,oBAAoB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAI7D;;;OAGG;IACH,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI;CAS5D;AAID,MAAM,MAAM,aAAa,GAAG;IACxB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,GAAG,EAAE,MAAM,CAAA;IACX,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,iBAAiB,EAAE,MAAM,GAAG,SAAS,CAAA;IACrC,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;CACf,CAAA;AAED,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,KAAK,CAAA;AAE1C,MAAM,WAAW,iBAAiB;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,aAAa,CAAA;IACnB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAClC;AAED,MAAM,WAAW,WAAW;IACxB,MAAM,EAAE,MAAM,CAAA;IACd,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC/B,KAAK,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,MAAM,eAAe,GAAG,WAAW,GAAG,YAAY,GAAG,KAAK,GAAG,WAAW,GAAG,OAAO,CAAA;AAExF,MAAM,WAAW,aAAa;IAC1B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,eAAe,CAAA;CACxB"}
|
|
1
|
+
{"version":3,"file":"chart.d.ts","sourceRoot":"","sources":["../../src/engine/chart.ts"],"names":[],"mappings":"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"}
|
package/dist/engine/chart.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createSignal } from '../reactivity/signal';
|
|
1
|
+
import { createSignal, computed } from '../reactivity/signal';
|
|
2
2
|
import { getVisibleRange } from './viewport/viewport';
|
|
3
3
|
import { Pane, UpdateLevel } from './layout/pane';
|
|
4
4
|
import { InteractionController } from './controller/interaction';
|
|
@@ -97,11 +97,11 @@ export class Chart {
|
|
|
97
97
|
/** Overlay 帧复用的最近主渲染结果 */
|
|
98
98
|
cachedDrawFrame = null;
|
|
99
99
|
/** 副图管理器 */
|
|
100
|
-
subPaneManager;
|
|
101
|
-
/**
|
|
102
|
-
|
|
103
|
-
/**
|
|
104
|
-
|
|
100
|
+
subPaneManager = new SubPaneManager();
|
|
101
|
+
/** 主图指标激活状态与参数(存在即激活,默认参数在 enable 时初始化) */
|
|
102
|
+
_mainIndicatorsSignal = createSignal(new Map());
|
|
103
|
+
/** 主图指标默认参数 */
|
|
104
|
+
static DEFAULT_MAIN_PARAMS = {
|
|
105
105
|
MA: { ma5: true, ma10: true, ma20: true, ma30: true, ma60: true },
|
|
106
106
|
BOLL: { period: 20, multiplier: 2, showUpper: true, showMiddle: true, showLower: true, showBand: true },
|
|
107
107
|
EXPMA: { fastPeriod: 12, slowPeriod: 50 },
|
|
@@ -133,26 +133,29 @@ export class Chart {
|
|
|
133
133
|
console.warn(`[Chart] 未知的主图指标: ${indicatorId}`);
|
|
134
134
|
return false;
|
|
135
135
|
}
|
|
136
|
-
|
|
136
|
+
const map = this._mainIndicatorsSignal.peek();
|
|
137
|
+
const existing = map.get(id);
|
|
138
|
+
if (existing) {
|
|
137
139
|
// 已启用,更新参数
|
|
138
140
|
if (params) {
|
|
139
|
-
|
|
141
|
+
const next = new Map(map);
|
|
142
|
+
next.set(id, { params: { ...existing.params, ...params } });
|
|
143
|
+
this._mainIndicatorsSignal.set(next);
|
|
140
144
|
this.updateIndicatorSchedulerConfig(id);
|
|
141
|
-
this.syncIndicatorsSignal();
|
|
142
145
|
}
|
|
143
146
|
return true;
|
|
144
147
|
}
|
|
145
|
-
this.activeMainIndicators.add(id);
|
|
146
148
|
// 合并默认参数和传入参数
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
149
|
+
const defaults = Chart.DEFAULT_MAIN_PARAMS[id] ?? {};
|
|
150
|
+
const merged = params ? { ...defaults, ...params } : defaults;
|
|
151
|
+
const next = new Map(map);
|
|
152
|
+
next.set(id, { params: merged });
|
|
153
|
+
this._mainIndicatorsSignal.set(next);
|
|
150
154
|
// 启用对应的渲染器
|
|
151
155
|
this.enableMainIndicatorRenderer(id);
|
|
152
156
|
// 更新调度器配置
|
|
153
157
|
this.updateIndicatorSchedulerConfig(id);
|
|
154
158
|
this.scheduleDraw();
|
|
155
|
-
this.syncIndicatorsSignal();
|
|
156
159
|
return true;
|
|
157
160
|
}
|
|
158
161
|
/**
|
|
@@ -162,15 +165,17 @@ export class Chart {
|
|
|
162
165
|
*/
|
|
163
166
|
disableMainIndicator(indicatorId) {
|
|
164
167
|
const id = indicatorId.toUpperCase();
|
|
165
|
-
|
|
168
|
+
const map = this._mainIndicatorsSignal.peek();
|
|
169
|
+
if (!map.has(id))
|
|
166
170
|
return false;
|
|
167
|
-
|
|
171
|
+
const next = new Map(map);
|
|
172
|
+
next.delete(id);
|
|
173
|
+
this._mainIndicatorsSignal.set(next);
|
|
168
174
|
// 禁用对应的渲染器
|
|
169
175
|
this.disableMainIndicatorRenderer(id);
|
|
170
176
|
// 更新调度器配置
|
|
171
177
|
this.updateIndicatorSchedulerConfig(id);
|
|
172
178
|
this.scheduleDraw();
|
|
173
|
-
this.syncIndicatorsSignal();
|
|
174
179
|
return true;
|
|
175
180
|
}
|
|
176
181
|
/**
|
|
@@ -191,14 +196,14 @@ export class Chart {
|
|
|
191
196
|
* @returns 激活的指标ID数组
|
|
192
197
|
*/
|
|
193
198
|
getActiveMainIndicators() {
|
|
194
|
-
return
|
|
199
|
+
return [...this._mainIndicatorsSignal.peek().keys()];
|
|
195
200
|
}
|
|
196
201
|
/**
|
|
197
202
|
* 检查主图指标是否激活
|
|
198
203
|
* @param indicatorId 指标ID
|
|
199
204
|
*/
|
|
200
205
|
isMainIndicatorActive(indicatorId) {
|
|
201
|
-
return this.
|
|
206
|
+
return this._mainIndicatorsSignal.peek().has(indicatorId.toUpperCase());
|
|
202
207
|
}
|
|
203
208
|
/**
|
|
204
209
|
* 更新主图指标参数
|
|
@@ -207,38 +212,41 @@ export class Chart {
|
|
|
207
212
|
*/
|
|
208
213
|
updateMainIndicatorParams(indicatorId, params) {
|
|
209
214
|
const id = indicatorId.toUpperCase();
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
215
|
+
const map = this._mainIndicatorsSignal.peek();
|
|
216
|
+
const entry = map.get(id);
|
|
217
|
+
if (!entry)
|
|
218
|
+
return;
|
|
219
|
+
const merged = { ...entry.params, ...params };
|
|
220
|
+
const next = new Map(map);
|
|
221
|
+
next.set(id, { params: merged });
|
|
222
|
+
this._mainIndicatorsSignal.set(next);
|
|
214
223
|
// 同步更新渲染器配置
|
|
215
224
|
const rendererName = id.toLowerCase();
|
|
216
225
|
const renderer = this.getRenderer(rendererName);
|
|
217
226
|
if (renderer && renderer.setConfig) {
|
|
218
|
-
renderer.setConfig(
|
|
227
|
+
renderer.setConfig(merged);
|
|
219
228
|
}
|
|
220
229
|
// 更新调度器
|
|
221
230
|
this.updateIndicatorSchedulerConfig(id);
|
|
222
231
|
this.scheduleDraw();
|
|
223
|
-
this.syncIndicatorsSignal();
|
|
224
232
|
}
|
|
225
233
|
/**
|
|
226
234
|
* 获取主图指标参数
|
|
227
235
|
* @param indicatorId 指标ID
|
|
228
236
|
*/
|
|
229
237
|
getMainIndicatorParams(indicatorId) {
|
|
230
|
-
return this.
|
|
238
|
+
return this._mainIndicatorsSignal.peek().get(indicatorId.toUpperCase())?.params ?? null;
|
|
231
239
|
}
|
|
232
240
|
/**
|
|
233
241
|
* 清除所有主图指标
|
|
234
242
|
*/
|
|
235
243
|
clearMainIndicators() {
|
|
236
|
-
|
|
244
|
+
const map = this._mainIndicatorsSignal.peek();
|
|
245
|
+
for (const id of map.keys()) {
|
|
237
246
|
this.disableMainIndicatorRenderer(id);
|
|
238
247
|
}
|
|
239
|
-
this.
|
|
248
|
+
this._mainIndicatorsSignal.set(new Map());
|
|
240
249
|
this.scheduleDraw();
|
|
241
|
-
this.syncIndicatorsSignal();
|
|
242
250
|
}
|
|
243
251
|
/**
|
|
244
252
|
* 启用主图指标渲染器(内部方法)
|
|
@@ -395,8 +403,9 @@ export class Chart {
|
|
|
395
403
|
* 更新调度器配置(内部方法)
|
|
396
404
|
*/
|
|
397
405
|
updateIndicatorSchedulerConfig(indicatorId) {
|
|
398
|
-
const
|
|
399
|
-
const
|
|
406
|
+
const entry = this._mainIndicatorsSignal.peek().get(indicatorId);
|
|
407
|
+
const isActive = entry !== undefined;
|
|
408
|
+
const params = entry?.params ?? {};
|
|
400
409
|
switch (indicatorId) {
|
|
401
410
|
case 'MA':
|
|
402
411
|
this.indicatorScheduler.updateMAConfig({
|
|
@@ -475,7 +484,7 @@ export class Chart {
|
|
|
475
484
|
setActiveMainIndicators(indicators) {
|
|
476
485
|
// 计算需要启用和禁用的指标
|
|
477
486
|
const newSet = new Set(indicators.map(i => i.toUpperCase()));
|
|
478
|
-
const currentSet = new Set(this.
|
|
487
|
+
const currentSet = new Set(this._mainIndicatorsSignal.peek().keys());
|
|
479
488
|
// 禁用不再激活的
|
|
480
489
|
for (const id of currentSet) {
|
|
481
490
|
if (!newSet.has(id)) {
|
|
@@ -523,11 +532,20 @@ export class Chart {
|
|
|
523
532
|
this.indicatorScheduler.registerIndicator(definition);
|
|
524
533
|
}
|
|
525
534
|
this.indicatorScheduler.setInvalidateCallback(() => this.scheduleDraw());
|
|
526
|
-
// 初始化副图管理器
|
|
527
|
-
this.subPaneManager = new SubPaneManager();
|
|
528
535
|
// 注册副图活跃列表提供者,调度器据此只计算启用的副图
|
|
529
536
|
this.indicatorScheduler.setActiveSubPaneProvider(() => this.subPaneManager.getPaneIds());
|
|
530
537
|
this.initPanes();
|
|
538
|
+
// dev: 主副图状态变更日志
|
|
539
|
+
if (import.meta.env?.MODE !== 'production') {
|
|
540
|
+
this._indicatorsComputed.subscribe(() => {
|
|
541
|
+
const instances = this._indicatorsComputed.peek();
|
|
542
|
+
console.log('[Chart] indicators signal changed:', instances);
|
|
543
|
+
});
|
|
544
|
+
this._subPanesComputed.subscribe(() => {
|
|
545
|
+
const subPanes = this._subPanesComputed.peek();
|
|
546
|
+
console.log('[Chart] subPanes signal changed:', subPanes);
|
|
547
|
+
});
|
|
548
|
+
}
|
|
531
549
|
// 注册绘图主插件(负责绘制 shape,layer: 'main')
|
|
532
550
|
this.useRenderer(createDrawingRendererPlugin({ store: this.drawingStore }));
|
|
533
551
|
// 注册绘图标签插件(负责推送选中绘图的轴标签,layer: 'overlay')
|
|
@@ -707,7 +725,7 @@ export class Chart {
|
|
|
707
725
|
// 3. 更新交互控制器坐标映射
|
|
708
726
|
this.interaction.setKLinePositions(kLinePositions, range, kWidthPx);
|
|
709
727
|
// 4. 通知调度器当前活跃主图指标 + 获取价格范围
|
|
710
|
-
this.indicatorScheduler.setActiveMainIndicators(
|
|
728
|
+
this.indicatorScheduler.setActiveMainIndicators([...this._mainIndicatorsSignal.peek().keys()]);
|
|
711
729
|
const mainIndicatorRange = useCachedFrame ? null : this.indicatorScheduler.getMainIndicatorPriceRange();
|
|
712
730
|
const hasCrosshair = this.interaction.getCrosshairIndex() !== null;
|
|
713
731
|
// 5. 遍历所有 Pane 渲染主层 / overlay / Y 轴
|
|
@@ -1101,7 +1119,6 @@ export class Chart {
|
|
|
1101
1119
|
ratios[id] = ratio;
|
|
1102
1120
|
});
|
|
1103
1121
|
this._paneRatiosSignal.set(ratios);
|
|
1104
|
-
this.syncSubPanesSignal();
|
|
1105
1122
|
this.onPaneLayoutChange?.(this.getPaneLayoutSpecs());
|
|
1106
1123
|
}
|
|
1107
1124
|
applyPaneLayoutSpecs(panes) {
|
|
@@ -1257,8 +1274,6 @@ export class Chart {
|
|
|
1257
1274
|
}
|
|
1258
1275
|
this.upsertPane({ id: paneId, ratio: this._internalPaneRatios.get(paneId) ?? 1, visible: true, role: 'indicator' });
|
|
1259
1276
|
const success = this.subPaneManager.create(this, paneId, indicatorId, params ?? this.getDefaultSubPaneParams(indicatorId));
|
|
1260
|
-
this.syncIndicatorsSignal();
|
|
1261
|
-
this.syncSubPanesSignal();
|
|
1262
1277
|
return success;
|
|
1263
1278
|
}
|
|
1264
1279
|
/**
|
|
@@ -1267,9 +1282,6 @@ export class Chart {
|
|
|
1267
1282
|
*/
|
|
1268
1283
|
removeSubPane(paneId) {
|
|
1269
1284
|
this.subPaneManager.remove(this, paneId);
|
|
1270
|
-
this._internalPaneRatios.delete(paneId);
|
|
1271
|
-
this.syncIndicatorsSignal();
|
|
1272
|
-
this.syncSubPanesSignal();
|
|
1273
1285
|
}
|
|
1274
1286
|
/**
|
|
1275
1287
|
* 替换副图的指标类型
|
|
@@ -1279,8 +1291,6 @@ export class Chart {
|
|
|
1279
1291
|
*/
|
|
1280
1292
|
replaceSubPaneIndicator(paneId, newIndicatorId, params) {
|
|
1281
1293
|
this.subPaneManager.replaceIndicator(this, paneId, newIndicatorId, params ?? this.getDefaultSubPaneParams(newIndicatorId));
|
|
1282
|
-
this.syncIndicatorsSignal();
|
|
1283
|
-
this.syncSubPanesSignal();
|
|
1284
1294
|
}
|
|
1285
1295
|
/**
|
|
1286
1296
|
* 更新副图指标参数
|
|
@@ -1289,7 +1299,6 @@ export class Chart {
|
|
|
1289
1299
|
*/
|
|
1290
1300
|
updateSubPaneParams(paneId, params) {
|
|
1291
1301
|
this.subPaneManager.updateParams(this, paneId, params);
|
|
1292
|
-
this.syncIndicatorsSignal();
|
|
1293
1302
|
}
|
|
1294
1303
|
/**
|
|
1295
1304
|
* 清除所有副图面板
|
|
@@ -1307,8 +1316,6 @@ export class Chart {
|
|
|
1307
1316
|
}
|
|
1308
1317
|
// 更新布局,移除所有副图 pane
|
|
1309
1318
|
this.applyPaneLayoutSpecs(this.opt.panes.filter((spec) => !subPaneIds.includes(spec.id)));
|
|
1310
|
-
this.syncIndicatorsSignal();
|
|
1311
|
-
this.syncSubPanesSignal();
|
|
1312
1319
|
}
|
|
1313
1320
|
/**
|
|
1314
1321
|
* 获取当前所有副图指标类型
|
|
@@ -1848,8 +1855,6 @@ export class Chart {
|
|
|
1848
1855
|
});
|
|
1849
1856
|
_dataSignal = createSignal([]);
|
|
1850
1857
|
_themeSignal = createSignal('light');
|
|
1851
|
-
_indicatorsSignal = createSignal([]);
|
|
1852
|
-
_subPanesSignal = createSignal([]);
|
|
1853
1858
|
_drawingToolSignal = createSignal(null);
|
|
1854
1859
|
_drawingsSignal = createSignal([]);
|
|
1855
1860
|
_paneRatiosSignal = createSignal({});
|
|
@@ -1869,6 +1874,35 @@ export class Chart {
|
|
|
1869
1874
|
hoveredPaneBoundaryId: null,
|
|
1870
1875
|
isHoveringRightAxis: false,
|
|
1871
1876
|
});
|
|
1877
|
+
_indicatorsComputed = computed(() => {
|
|
1878
|
+
const mainIndicators = [...this._mainIndicatorsSignal().entries()].map(([id, entry]) => ({
|
|
1879
|
+
id,
|
|
1880
|
+
definitionId: id,
|
|
1881
|
+
label: id,
|
|
1882
|
+
name: id,
|
|
1883
|
+
role: 'main',
|
|
1884
|
+
params: { ...entry.params },
|
|
1885
|
+
}));
|
|
1886
|
+
const subIndicators = this.subPaneManager.entriesSignal().map(entry => ({
|
|
1887
|
+
id: entry.paneId,
|
|
1888
|
+
definitionId: entry.indicatorId,
|
|
1889
|
+
label: entry.indicatorId,
|
|
1890
|
+
name: entry.indicatorId,
|
|
1891
|
+
role: 'sub',
|
|
1892
|
+
paneId: entry.paneId,
|
|
1893
|
+
params: { ...entry.params },
|
|
1894
|
+
}));
|
|
1895
|
+
return [...mainIndicators, ...subIndicators];
|
|
1896
|
+
});
|
|
1897
|
+
_subPanesComputed = computed(() => {
|
|
1898
|
+
const ratios = this._paneRatiosSignal();
|
|
1899
|
+
return this.subPaneManager.entriesSignal().map(entry => ({
|
|
1900
|
+
paneId: entry.paneId,
|
|
1901
|
+
indicatorId: entry.indicatorId,
|
|
1902
|
+
params: { ...entry.params },
|
|
1903
|
+
ratio: ratios[entry.paneId] ?? 1,
|
|
1904
|
+
}));
|
|
1905
|
+
});
|
|
1872
1906
|
/** 视口状态信号 */
|
|
1873
1907
|
get viewport() {
|
|
1874
1908
|
return this._viewportSignal;
|
|
@@ -1881,13 +1915,13 @@ export class Chart {
|
|
|
1881
1915
|
get theme() {
|
|
1882
1916
|
return this._themeSignal;
|
|
1883
1917
|
}
|
|
1884
|
-
/**
|
|
1918
|
+
/** 指标实例列表信号(派生信号,自动随主/副图状态更新) */
|
|
1885
1919
|
get indicators() {
|
|
1886
|
-
return this.
|
|
1920
|
+
return this._indicatorsComputed;
|
|
1887
1921
|
}
|
|
1888
|
-
/**
|
|
1922
|
+
/** 子图信息信号(派生信号,自动随副图条目/比例更新) */
|
|
1889
1923
|
get subPanes() {
|
|
1890
|
-
return this.
|
|
1924
|
+
return this._subPanesComputed;
|
|
1891
1925
|
}
|
|
1892
1926
|
/** 当前绘图工具信号 */
|
|
1893
1927
|
get drawingTool() {
|
|
@@ -2120,8 +2154,6 @@ export class Chart {
|
|
|
2120
2154
|
const success = this.enableMainIndicator(definitionId, params);
|
|
2121
2155
|
if (!success)
|
|
2122
2156
|
return null;
|
|
2123
|
-
// 更新 indicators signal
|
|
2124
|
-
this.syncIndicatorsSignal();
|
|
2125
2157
|
return definitionId.toUpperCase();
|
|
2126
2158
|
}
|
|
2127
2159
|
else {
|
|
@@ -2130,9 +2162,6 @@ export class Chart {
|
|
|
2130
2162
|
const success = this.createSubPane(paneId, definitionId, params);
|
|
2131
2163
|
if (!success)
|
|
2132
2164
|
return null;
|
|
2133
|
-
// 更新 signals
|
|
2134
|
-
this.syncIndicatorsSignal();
|
|
2135
|
-
this.syncSubPanesSignal();
|
|
2136
2165
|
return paneId;
|
|
2137
2166
|
}
|
|
2138
2167
|
}
|
|
@@ -2143,23 +2172,16 @@ export class Chart {
|
|
|
2143
2172
|
*/
|
|
2144
2173
|
removeIndicator(instanceId) {
|
|
2145
2174
|
const id = instanceId.toUpperCase();
|
|
2146
|
-
//
|
|
2147
|
-
if (this.
|
|
2148
|
-
|
|
2149
|
-
if (success) {
|
|
2150
|
-
this.syncIndicatorsSignal();
|
|
2151
|
-
}
|
|
2152
|
-
return success;
|
|
2175
|
+
// 先尝试作为主图指标移除
|
|
2176
|
+
if (this._mainIndicatorsSignal.peek().has(id)) {
|
|
2177
|
+
return this.disableMainIndicator(instanceId);
|
|
2153
2178
|
}
|
|
2154
|
-
//
|
|
2179
|
+
// 再尝试作为副图指标移除
|
|
2155
2180
|
const subPaneEntry = this.getSubPaneEntry(instanceId);
|
|
2156
2181
|
if (subPaneEntry) {
|
|
2157
2182
|
this.removeSubPane(instanceId);
|
|
2158
|
-
this.syncIndicatorsSignal();
|
|
2159
|
-
this.syncSubPanesSignal();
|
|
2160
2183
|
return true;
|
|
2161
2184
|
}
|
|
2162
|
-
// 都没找到,返回 false
|
|
2163
2185
|
return false;
|
|
2164
2186
|
}
|
|
2165
2187
|
/**
|
|
@@ -2170,20 +2192,17 @@ export class Chart {
|
|
|
2170
2192
|
*/
|
|
2171
2193
|
updateIndicatorParams(instanceId, params) {
|
|
2172
2194
|
const id = instanceId.toUpperCase();
|
|
2173
|
-
//
|
|
2174
|
-
if (this.
|
|
2195
|
+
// 先尝试作为主图指标更新
|
|
2196
|
+
if (this._mainIndicatorsSignal.peek().has(id)) {
|
|
2175
2197
|
this.updateMainIndicatorParams(instanceId, params);
|
|
2176
|
-
this.syncIndicatorsSignal();
|
|
2177
2198
|
return true;
|
|
2178
2199
|
}
|
|
2179
2200
|
// 再尝试作为副图指标更新
|
|
2180
2201
|
const subPaneEntry = this.getSubPaneEntry(instanceId);
|
|
2181
2202
|
if (subPaneEntry) {
|
|
2182
2203
|
this.updateSubPaneParams(instanceId, params);
|
|
2183
|
-
this.syncIndicatorsSignal();
|
|
2184
2204
|
return true;
|
|
2185
2205
|
}
|
|
2186
|
-
// 都没找到
|
|
2187
2206
|
return false;
|
|
2188
2207
|
}
|
|
2189
2208
|
/**
|
|
@@ -2197,42 +2216,6 @@ export class Chart {
|
|
|
2197
2216
|
console.warn('[Chart] reorderIndicators not fully implemented yet');
|
|
2198
2217
|
return false;
|
|
2199
2218
|
}
|
|
2200
|
-
/**
|
|
2201
|
-
* 同步 indicators signal
|
|
2202
|
-
*/
|
|
2203
|
-
syncIndicatorsSignal() {
|
|
2204
|
-
const mainIndicators = this.getActiveMainIndicators().map(id => ({
|
|
2205
|
-
id,
|
|
2206
|
-
definitionId: id,
|
|
2207
|
-
label: id,
|
|
2208
|
-
name: id,
|
|
2209
|
-
role: 'main',
|
|
2210
|
-
params: this.getMainIndicatorParams(id) ?? {},
|
|
2211
|
-
}));
|
|
2212
|
-
const subIndicators = this.getSubPaneEntries().map(entry => ({
|
|
2213
|
-
id: entry.paneId,
|
|
2214
|
-
definitionId: entry.indicatorId,
|
|
2215
|
-
label: entry.indicatorId,
|
|
2216
|
-
name: entry.indicatorId,
|
|
2217
|
-
role: 'sub',
|
|
2218
|
-
paneId: entry.paneId,
|
|
2219
|
-
params: entry.params,
|
|
2220
|
-
}));
|
|
2221
|
-
this._indicatorsSignal.set([...mainIndicators, ...subIndicators]);
|
|
2222
|
-
}
|
|
2223
|
-
/**
|
|
2224
|
-
* 同步 sub panes signal
|
|
2225
|
-
*/
|
|
2226
|
-
syncSubPanesSignal() {
|
|
2227
|
-
const entries = this.getSubPaneEntries();
|
|
2228
|
-
const subPanes = entries.map(entry => ({
|
|
2229
|
-
paneId: entry.paneId,
|
|
2230
|
-
indicatorId: entry.indicatorId,
|
|
2231
|
-
params: entry.params,
|
|
2232
|
-
ratio: this._internalPaneRatios.get(entry.paneId) ?? 1,
|
|
2233
|
-
}));
|
|
2234
|
-
this._subPanesSignal.set(subPanes);
|
|
2235
|
-
}
|
|
2236
2219
|
// ---------- Sub Panes ----------
|
|
2237
2220
|
/**
|
|
2238
2221
|
* 调整子图大小(高层 API)
|