@363045841yyt/klinechart-core 0.8.3 → 0.8.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.
Files changed (63) hide show
  1. package/dist/config/chartSettings.d.ts +1 -1
  2. package/dist/config/chartSettings.d.ts.map +1 -1
  3. package/dist/config/chartSettings.js +8 -4
  4. package/dist/config/chartSettings.js.map +1 -1
  5. package/dist/controllers/createChartController.d.ts +1 -1
  6. package/dist/controllers/createChartController.d.ts.map +1 -1
  7. package/dist/controllers/createChartController.js +13 -1
  8. package/dist/controllers/createChartController.js.map +1 -1
  9. package/dist/controllers/index.d.ts +1 -0
  10. package/dist/controllers/index.d.ts.map +1 -1
  11. package/dist/controllers/index.js +1 -0
  12. package/dist/controllers/index.js.map +1 -1
  13. package/dist/controllers/types.d.ts +3 -1
  14. package/dist/controllers/types.d.ts.map +1 -1
  15. package/dist/data-fetchers/dataBuffer.d.ts.map +1 -1
  16. package/dist/data-fetchers/dataBuffer.js +1 -4
  17. package/dist/data-fetchers/dataBuffer.js.map +1 -1
  18. package/dist/data-fetchers/gotdx.d.ts.map +1 -1
  19. package/dist/data-fetchers/gotdx.js +1 -0
  20. package/dist/data-fetchers/gotdx.js.map +1 -1
  21. package/dist/engine/data/chartDataManager.js +1 -1
  22. package/dist/engine/data/chartDataManager.js.map +1 -1
  23. package/dist/engine/indicators/registerBuiltins.d.ts +2 -40
  24. package/dist/engine/indicators/registerBuiltins.d.ts.map +1 -1
  25. package/dist/engine/indicators/registerBuiltins.js +55 -42
  26. package/dist/engine/indicators/registerBuiltins.js.map +1 -1
  27. package/dist/engine/renderers/Indicator/index.d.ts +0 -39
  28. package/dist/engine/renderers/Indicator/index.d.ts.map +1 -1
  29. package/dist/engine/renderers/Indicator/index.js +0 -78
  30. package/dist/engine/renderers/Indicator/index.js.map +1 -1
  31. package/dist/engine/renderers/Indicator/indicatorCatalog.d.ts +1 -3
  32. package/dist/engine/renderers/Indicator/indicatorCatalog.d.ts.map +1 -1
  33. package/dist/engine/renderers/Indicator/indicatorCatalog.js +27 -17
  34. package/dist/engine/renderers/Indicator/indicatorCatalog.js.map +1 -1
  35. package/dist/mcp/chartBridge.d.ts +3 -0
  36. package/dist/mcp/chartBridge.d.ts.map +1 -1
  37. package/dist/mcp/chartBridge.js +13 -1
  38. package/dist/mcp/chartBridge.js.map +1 -1
  39. package/dist/utils/kLineDraw/axis.js +1 -1
  40. package/dist/utils/kLineDraw/axis.js.map +1 -1
  41. package/dist/version.d.ts +1 -1
  42. package/dist/version.js +1 -1
  43. package/package.json +3 -2
  44. package/src/config/chartSettings.ts +14 -10
  45. package/src/controllers/createChartController.ts +13 -1
  46. package/src/controllers/index.ts +1 -0
  47. package/src/controllers/types.ts +3 -1
  48. package/src/data-fetchers/__tests__/dataBuffer.test.ts +1 -1
  49. package/src/data-fetchers/dataBuffer.ts +1 -4
  50. package/src/data-fetchers/gotdx.ts +2 -0
  51. package/src/engine/__tests__/chart.dpr.test.ts +6 -1
  52. package/src/engine/data/chartDataManager.ts +1 -1
  53. package/src/engine/indicators/__tests__/chartIndicatorManager.test.ts +6 -1
  54. package/src/engine/indicators/__tests__/registerBuiltins.test.ts +6 -2
  55. package/src/engine/indicators/__tests__/scheduler.test.ts +8 -3
  56. package/src/engine/indicators/__tests__/stateComposer.test.ts +6 -2
  57. package/src/engine/indicators/registerBuiltins.ts +58 -42
  58. package/src/engine/renderers/Indicator/__tests__/createSubIndicatorRenderer.test.ts +6 -2
  59. package/src/engine/renderers/Indicator/index.ts +0 -92
  60. package/src/engine/renderers/Indicator/indicatorCatalog.ts +28 -19
  61. package/src/mcp/chartBridge.ts +18 -1
  62. package/src/utils/kLineDraw/axis.ts +1 -1
  63. package/src/version.ts +1 -1
@@ -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.8.3";
1
+ export declare const VERSION = "0.8.5";
2
2
  //# sourceMappingURL=version.d.ts.map
package/dist/version.js CHANGED
@@ -1,2 +1,2 @@
1
- export const VERSION = "0.8.3";
1
+ export const VERSION = "0.8.5";
2
2
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@363045841yyt/klinechart-core",
3
- "version": "0.8.3",
3
+ "version": "0.8.5",
4
4
  "description": "Headless K-line chart engine + reactive controllers. Zero framework dependencies.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -13,7 +13,8 @@
13
13
  "sideEffects": [
14
14
  "./src/engine/indicators/registerBuiltins.ts",
15
15
  "./src/engine/renderers/Indicator/*.ts",
16
- "./src/engine/renderers/subVolume.ts"
16
+ "./src/engine/renderers/subVolume.ts",
17
+ "./src/data-fetchers/*.ts"
17
18
  ],
18
19
  "main": "./dist/index.js",
19
20
  "module": "./dist/index.js",
@@ -50,19 +50,23 @@ const ENABLE_WEBGL_DEFAULT = getDeviceType() === 'desktop'
50
50
  export const DEFAULT_SETTINGS = [
51
51
  { key: 'showGridLines', label: '显示网格', type: 'boolean', default: true, group: 'main' },
52
52
  { key: 'showVolumePriceMarkers', label: '显示量价关系标记', type: 'boolean', default: false, group: 'main' },
53
- { key: 'axisType', label: '轴类型', type: 'select', default: 'linear', group: 'main', options: [
54
- { value: 'linear', label: '常规轴' },
55
- { value: 'log', label: '对数轴' },
56
- { value: 'percent', label: '百分比轴' },
57
- ] },
53
+ {
54
+ key: 'axisType', label: '轴类型', type: 'select', default: 'linear', group: 'main', options: [
55
+ { value: 'linear', label: '常规轴' },
56
+ { value: 'log', label: '对数轴' },
57
+ { value: 'percent', label: '百分比轴' },
58
+ ]
59
+ },
58
60
  { key: 'disableMainPaneVerticalScroll', label: '主图纵轴刻度自适应调整', type: 'boolean', default: true, group: 'main' },
59
61
  { key: 'isAsiaMarket', label: '亚洲市场颜色(红涨绿跌)', type: 'boolean', default: false, group: 'style' },
60
62
  { key: 'enableWebGLRendering', label: '启用 WebGL 硬件加速渲染', type: 'boolean', default: ENABLE_WEBGL_DEFAULT, group: 'main' },
61
- { key: 'theme', label: '主题', type: 'select', default: 'light', group: 'main', options: [
62
- { value: 'light', label: '浅色' },
63
- { value: 'dark', label: '深色' },
64
- { value: 'auto', label: '跟随系统' },
65
- ] },
63
+ {
64
+ key: 'theme', label: '主题', type: 'select', default: 'dark', group: 'main', options: [
65
+ { value: 'light', label: '浅色' },
66
+ { value: 'dark', label: '深色' },
67
+ { value: 'auto', label: '跟随系统' },
68
+ ]
69
+ },
66
70
  { key: 'enableCanvasProfiler', label: 'Canvas 性能分析插桩', type: 'boolean', default: false, group: 'experimental' },
67
71
  ] as const
68
72
 
@@ -41,6 +41,7 @@ import type {
41
41
  DrawingToolType as LegacyDrawingToolType,
42
42
  } from '../engine/chartTypes'
43
43
  import { zoomLevelToKWidth, kGapFromKWidth } from '../engine/utils/zoom'
44
+ import { loadBuiltinIndicators } from '../engine/indicators/registerBuiltins'
44
45
  import { ChartBridge } from '../mcp/chartBridge'
45
46
 
46
47
  // Plugin-backed drawings expose `kind` instead of legacy `type`.
@@ -282,7 +283,7 @@ function buildDom(container: HTMLElement): MountedDom {
282
283
  // Factory
283
284
  // ---------------------------------------------------------------------------
284
285
 
285
- export function createChartController(opts: ChartMountOptions): ChartController {
286
+ export async function createChartController(opts: ChartMountOptions): Promise<ChartController> {
286
287
  if (!opts) {
287
288
  throw new Error('[createChartController] opts is required')
288
289
  }
@@ -290,6 +291,8 @@ export function createChartController(opts: ChartMountOptions): ChartController
290
291
  throw new Error('[createChartController] opts.container must be a non-null HTMLElement')
291
292
  }
292
293
 
294
+ await loadBuiltinIndicators()
295
+
293
296
  const hasExistingDom = !!(opts.canvasLayer && opts.rightAxisLayer && opts.xAxisCanvas)
294
297
  const mounted = hasExistingDom
295
298
  ? {
@@ -532,6 +535,14 @@ export function createChartController(opts: ChartMountOptions): ChartController
532
535
  chart.setDataFetcher(fetcher)
533
536
  }
534
537
 
538
+ function ensureDataRange(startTs: number): void {
539
+ if (disposed) return
540
+ const buf = chart.dataBuffer
541
+ const win = buf.loadedWindow
542
+ if (!win || startTs >= win.earliestTs) return
543
+ buf.ensureRange(startTs, win.earliestTs)
544
+ }
545
+
535
546
  function appendData(next: ReadonlyArray<KLineData>): void {
536
547
  if (disposed) return
537
548
  const current = data.peek()
@@ -849,6 +860,7 @@ export function createChartController(opts: ChartMountOptions): ChartController
849
860
  addComparisonSymbol,
850
861
  removeComparisonSymbol,
851
862
  setDataFetcher,
863
+ ensureDataRange,
852
864
  setData,
853
865
  appendData,
854
866
  updateData: setData,
@@ -52,6 +52,7 @@ export {
52
52
  isSubIndicatorId,
53
53
  } from '../engine/renderers/Indicator/indicatorCatalog'
54
54
  export type { Indicator } from '../engine/renderers/Indicator/indicatorCatalog'
55
+ export { loadBuiltinIndicators, isBuiltinIndicatorsLoaded } from '../engine/indicators/registerBuiltins'
55
56
 
56
57
  // Data fetcher adapters
57
58
  export { thousandMockDataFetcher, hundredMockDataFetcher, baostockDataFetcher, routerDataFetcher, DataBuffer } from '../data-fetchers'
@@ -268,6 +268,8 @@ export interface ChartController extends DrawingChartAdapter {
268
268
  updateData(next: ReadonlyArray<KLineData>): void
269
269
  getData(): ReadonlyArray<KLineData>
270
270
  getZoomLevelCount(): number
271
+ /** Request data for dates earlier than the currently loaded window */
272
+ ensureDataRange(startTs: number): void
271
273
 
272
274
  // ---- Theme ----
273
275
  setTheme(theme: 'light' | 'dark'): void
@@ -334,7 +336,7 @@ export interface ChartController extends DrawingChartAdapter {
334
336
  * Implementation lives in packages/core/src/controllers/createChartController.ts
335
337
  * (Phase 1 deliverable). It wires the existing Chart engine in src/core/chart.ts.
336
338
  */
337
- export type ChartControllerFactory = (opts: ChartMountOptions) => ChartController
339
+ export type ChartControllerFactory = (opts: ChartMountOptions) => Promise<ChartController>
338
340
 
339
341
  // ---------------------------------------------------------------------------
340
342
  // Legacy type aliases (deprecated — kept for internal sub-controller tests)
@@ -190,7 +190,7 @@ describe('DataBuffer', () => {
190
190
  })
191
191
 
192
192
  buffer.ensureRange(oneYearAgo - 30 * MS_PER_DAY, oneYearAgo)
193
- buffer.ensureRange(oneYearAgo - 60 * MS_PER_DAY, oneYearAgo)
193
+ buffer.ensureRange(oneYearAgo - 120 * MS_PER_DAY, oneYearAgo)
194
194
 
195
195
  await vi.waitFor(() => {
196
196
  expect(buffer.loading()).toBe(false)
@@ -97,15 +97,12 @@ export class DataBuffer {
97
97
 
98
98
  if (requestStartTs >= this._loadedWindow.earliestTs) return
99
99
 
100
- const incrementalStart = requestStartTs - INCREMENTAL_LOAD_DAYS * MS_PER_DAY
101
100
  const incrementalEnd = this._loadedWindow.earliestTs
102
101
 
103
- if (incrementalEnd <= incrementalStart) return
104
-
105
102
  if (this._attemptedBoundaries.has(incrementalEnd)) return
106
103
 
107
104
  this._attemptedBoundaries.add(incrementalEnd)
108
- this.fetchRange(incrementalStart, incrementalEnd)
105
+ this.fetchRange(requestStartTs, incrementalEnd)
109
106
  }
110
107
 
111
108
  private loadInitial(): void {
@@ -42,6 +42,7 @@ interface SecurityBar {
42
42
  Turnover: number
43
43
  RisePrice: number
44
44
  RiseRate: number
45
+ Amplitude: number
45
46
  Year: number
46
47
  Month: number
47
48
  Day: number
@@ -76,6 +77,7 @@ function mapBar(item: SecurityBar, code: string): KLineData {
76
77
  turnoverRate: item.Turnover,
77
78
  changeAmount: item.RisePrice,
78
79
  changePercent: item.RiseRate,
80
+ amplitude: item.Amplitude,
79
81
  stockCode: code,
80
82
  }
81
83
  }
@@ -1,6 +1,7 @@
1
1
  // @vitest-environment jsdom
2
- import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'
2
+ import { afterEach, beforeEach, beforeAll, describe, expect, it, vi } from 'vitest'
3
3
  import { Chart, type ChartDom, type ChartOptions } from '@/core/chart'
4
+ import { loadBuiltinIndicators } from '../indicators/registerBuiltins'
4
5
 
5
6
  class ResizeObserverMock {
6
7
  static instances: ResizeObserverMock[] = []
@@ -106,6 +107,10 @@ describe('Chart DPR pipeline', () => {
106
107
  const originalDevicePixelRatio = window.devicePixelRatio
107
108
  const originalGetContext = HTMLCanvasElement.prototype.getContext
108
109
 
110
+ beforeAll(async () => {
111
+ await loadBuiltinIndicators()
112
+ })
113
+
109
114
  beforeEach(() => {
110
115
  ResizeObserverMock.reset()
111
116
  globalThis.ResizeObserver = ResizeObserverMock as unknown as typeof ResizeObserver
@@ -348,7 +348,7 @@ export class ChartDataManager {
348
348
  let firstVisibleTs: number | undefined
349
349
 
350
350
  if (range.start < 0 && this._dataFetcher) {
351
- const earlierThanEarliest = window.earliestTs - 90 * MS_PER_DAY
351
+ const earlierThanEarliest = window.earliestTs - 365 * MS_PER_DAY
352
352
  this._dataBuffer.ensureRange(earlierThanEarliest, window.earliestTs)
353
353
  firstVisibleTs = this._internalData[0]?.timestamp
354
354
  } else if (range.start < this._internalData.length) {
@@ -1,9 +1,14 @@
1
- import { describe, it, expect, vi, beforeEach } from 'vitest'
1
+ import { describe, it, expect, vi, beforeAll, beforeEach } from 'vitest'
2
2
  import { ChartIndicatorManager, type IndicatorDependencies } from '../chartIndicatorManager'
3
3
  import { createPluginHost } from '../../../plugin/PluginHost'
4
4
  import { createSignal } from '../../../reactivity/signal'
5
5
  import type { VisibleRange } from '../../layout/pane'
6
6
  import { UpdateLevel } from '../../layout/pane'
7
+ import { loadBuiltinIndicators } from '../registerBuiltins'
8
+
9
+ beforeAll(async () => {
10
+ await loadBuiltinIndicators()
11
+ })
7
12
 
8
13
  function createMockDeps() {
9
14
  const rendererMap = new Map<string, any>()
@@ -1,6 +1,10 @@
1
- import { describe, expect, it, vi } from 'vitest'
1
+ import { describe, expect, it, vi, beforeAll } from 'vitest'
2
2
  import { getRegisteredIndicatorDefinition } from '../indicatorDefinitionRegistry'
3
- import { getBuiltinIndicatorDefinitions } from '../registerBuiltins'
3
+ import { getBuiltinIndicatorDefinitions, loadBuiltinIndicators } from '../registerBuiltins'
4
+
5
+ beforeAll(async () => {
6
+ await loadBuiltinIndicators()
7
+ })
4
8
 
5
9
  describe('builtin indicator registration', () => {
6
10
  it('loads all builtin indicator definitions through decorators', () => {
@@ -1,6 +1,6 @@
1
- import { describe, it, expect, vi, beforeEach } from 'vitest'
1
+ import { describe, it, expect, vi, beforeEach, beforeAll } from 'vitest'
2
2
  import { IndicatorScheduler } from '../scheduler'
3
- import { getBuiltinIndicatorDefinitions } from '../registerBuiltins'
3
+ import { getBuiltinIndicatorDefinitions, loadBuiltinIndicators } from '../registerBuiltins'
4
4
  import { MA_STATE_KEY, EMPTY_MA_STATE, type MARenderState } from '../maState'
5
5
  import { BOLL_STATE_KEY, EMPTY_BOLL_STATE, type BOLLRenderState } from '../bollState'
6
6
  import { EXPMA_STATE_KEY, EMPTY_EXPMA_STATE, type EXPMARenderState } from '../expmaState'
@@ -16,7 +16,12 @@ function applyMainResult(key: string): NonNullable<IndicatorMetadata['applyResul
16
16
  }
17
17
  }
18
18
 
19
- const builtinDefinitionsByName = new Map(getBuiltinIndicatorDefinitions().map((definition) => [definition.name, definition]))
19
+ let builtinDefinitionsByName: Map<string, IndicatorMetadata>
20
+
21
+ beforeAll(async () => {
22
+ await loadBuiltinIndicators()
23
+ builtinDefinitionsByName = new Map(getBuiltinIndicatorDefinitions().map((definition) => [definition.name, definition]))
24
+ })
20
25
 
21
26
  function getBuiltinTestIndicator(name: string): IndicatorMetadata {
22
27
  const definition = builtinDefinitionsByName.get(name)
@@ -1,9 +1,13 @@
1
- import { describe, expect, it, vi } from 'vitest'
1
+ import { describe, expect, it, vi, beforeAll } from 'vitest'
2
2
  import type { IndicatorMetadata } from '../indicatorMetadata'
3
3
  import { composeRenderStates, composeVisibleSubIndicatorStates, computeMainIndicatorPriceRange } from '../stateComposer'
4
4
  import type { IndicatorSeriesBundle } from '../workerProtocol'
5
- import '../registerBuiltins'
6
5
  import { getRegisteredIndicatorDefinition } from '../indicatorDefinitionRegistry'
6
+ import { loadBuiltinIndicators } from '../registerBuiltins'
7
+
8
+ beforeAll(async () => {
9
+ await loadBuiltinIndicators()
10
+ })
7
11
 
8
12
  function createBundle(): IndicatorSeriesBundle {
9
13
  return {
@@ -1,47 +1,63 @@
1
- import '../renderers/subVolume'
2
- import '../renderers/Indicator/atr'
3
- import '../renderers/Indicator/boll'
4
- import '../renderers/Indicator/cci'
5
- import '../renderers/Indicator/chaikinVol'
6
- import '../renderers/Indicator/cmf'
7
- import '../renderers/Indicator/dema'
8
- import '../renderers/Indicator/donchian'
9
- import '../renderers/Indicator/ene'
10
- import '../renderers/Indicator/expma'
11
- import '../renderers/Indicator/fastk'
12
- import '../renderers/Indicator/fib'
13
- import '../renderers/Indicator/hma'
14
- import '../renderers/Indicator/hv'
15
- import '../renderers/Indicator/ichimoku'
16
- import '../renderers/Indicator/kama'
17
- import '../renderers/Indicator/keltner'
18
- import '../renderers/Indicator/kst'
19
- import '../renderers/Indicator/ma'
20
- import '../renderers/Indicator/macd'
21
- import '../renderers/Indicator/mfi'
22
- import '../renderers/Indicator/mom'
23
- import '../renderers/Indicator/obv'
24
- import '../renderers/Indicator/parkinson'
25
- import '../renderers/Indicator/pivot'
26
- import '../renderers/Indicator/pvt'
27
- import '../renderers/Indicator/roc'
28
- import '../renderers/Indicator/rsi'
29
- import '../renderers/Indicator/sar'
30
- import '../renderers/Indicator/stoch'
31
- import '../renderers/Indicator/structure'
32
- import '../renderers/Indicator/supertrend'
33
- import '../renderers/Indicator/tema'
34
- import '../renderers/Indicator/trix'
35
- import '../renderers/Indicator/vma'
36
- import '../renderers/Indicator/volumeProfile'
37
- import '../renderers/Indicator/vwap'
38
- import '../renderers/Indicator/wma'
39
- import '../renderers/Indicator/wmsr'
40
- import '../renderers/Indicator/zones'
41
1
  import { getRegisteredIndicatorDefinitions } from './indicatorDefinitionRegistry'
42
2
 
43
- const builtinIndicatorDefinitions = getRegisteredIndicatorDefinitions()
3
+ let loaded = false
4
+
5
+ export async function loadBuiltinIndicators(): Promise<void> {
6
+ if (loaded) return
7
+ await Promise.all([
8
+ import('../renderers/subVolume'),
9
+ import('../renderers/Indicator/atr'),
10
+ import('../renderers/Indicator/boll'),
11
+ import('../renderers/Indicator/cci'),
12
+ import('../renderers/Indicator/chaikinVol'),
13
+ import('../renderers/Indicator/cmf'),
14
+ import('../renderers/Indicator/dema'),
15
+ import('../renderers/Indicator/donchian'),
16
+ import('../renderers/Indicator/ene'),
17
+ import('../renderers/Indicator/expma'),
18
+ import('../renderers/Indicator/fastk'),
19
+ import('../renderers/Indicator/fib'),
20
+ import('../renderers/Indicator/hma'),
21
+ import('../renderers/Indicator/hv'),
22
+ import('../renderers/Indicator/ichimoku'),
23
+ import('../renderers/Indicator/kama'),
24
+ import('../renderers/Indicator/keltner'),
25
+ import('../renderers/Indicator/kst'),
26
+ import('../renderers/Indicator/ma'),
27
+ import('../renderers/Indicator/macd'),
28
+ import('../renderers/Indicator/mfi'),
29
+ import('../renderers/Indicator/mom'),
30
+ import('../renderers/Indicator/obv'),
31
+ import('../renderers/Indicator/parkinson'),
32
+ import('../renderers/Indicator/pivot'),
33
+ import('../renderers/Indicator/pvt'),
34
+ import('../renderers/Indicator/roc'),
35
+ import('../renderers/Indicator/rsi'),
36
+ import('../renderers/Indicator/sar'),
37
+ import('../renderers/Indicator/stoch'),
38
+ import('../renderers/Indicator/structure'),
39
+ import('../renderers/Indicator/supertrend'),
40
+ import('../renderers/Indicator/tema'),
41
+ import('../renderers/Indicator/trix'),
42
+ import('../renderers/Indicator/vma'),
43
+ import('../renderers/Indicator/volumeProfile'),
44
+ import('../renderers/Indicator/vwap'),
45
+ import('../renderers/Indicator/wma'),
46
+ import('../renderers/Indicator/wmsr'),
47
+ import('../renderers/Indicator/zones'),
48
+ ])
49
+ loaded = true
50
+ }
44
51
 
45
52
  export function getBuiltinIndicatorDefinitions() {
46
- return builtinIndicatorDefinitions
53
+ if (!loaded) {
54
+ throw new Error(
55
+ 'Builtin indicators not loaded yet. Call await loadBuiltinIndicators() first.',
56
+ )
57
+ }
58
+ return getRegisteredIndicatorDefinitions()
59
+ }
60
+
61
+ export function isBuiltinIndicatorsLoaded(): boolean {
62
+ return loaded
47
63
  }
@@ -1,10 +1,14 @@
1
- import { describe, expect, it, vi } from 'vitest'
1
+ import { describe, expect, it, vi, beforeAll } from 'vitest'
2
2
  import type { RendererPluginWithHost } from '../../../../plugin'
3
3
  import { IndicatorRegistry } from '../../../indicators/indicatorRegistry'
4
- import { getBuiltinIndicatorDefinitions } from '../../../indicators/registerBuiltins'
4
+ import { getBuiltinIndicatorDefinitions, loadBuiltinIndicators } from '../../../indicators/registerBuiltins'
5
5
  import type { IndicatorMetadata } from '../../../indicators/indicatorMetadata'
6
6
  import { createSubIndicatorRenderer } from '../index'
7
7
 
8
+ beforeAll(async () => {
9
+ await loadBuiltinIndicators()
10
+ })
11
+
8
12
  function createRenderer(name: string): RendererPluginWithHost {
9
13
  return {
10
14
  name,
@@ -5,101 +5,9 @@
5
5
  import type { RendererPlugin } from '../../../plugin'
6
6
  import type { IndicatorMetadata } from '../../indicators/indicatorMetadata'
7
7
 
8
- // MA 均线
9
- export { createMARendererPlugin, type MAFlags, getMATitleInfo } from './ma'
10
-
11
- // BOLL 布林带
12
- export { createBOLLRendererPlugin } from './boll'
13
-
14
- // EXPMA 指数平滑移动平均线
15
- export { createEXPMARendererPlugin } from './expma'
16
-
17
- // ENE 轨道线
18
- export { createENERendererPlugin } from './ene'
19
-
20
8
  // 主图指标图例(统一管理 MA、BOLL 等)
21
9
  export { createMainIndicatorLegendRendererPlugin } from './mainIndicatorLegend'
22
10
 
23
- // MACD
24
- export { createMACDRendererPlugin, calcMACDAtIndex, type MACDConfig, type MACDRendererOptions, getMACDTitleInfo } from './macd'
25
-
26
- // RSI 相对强弱指标
27
- export { createRSIRendererPlugin, type RSIRendererOptions, getRSITitleInfo } from './rsi'
28
-
29
- // CCI 顺势指标
30
- export { createCCIRendererPlugin, type CCIRendererOptions, getCCITitleInfo } from './cci'
31
-
32
- // STOCH 随机指标
33
- export { createSTOCHRendererPlugin, type STOCHRendererOptions, getSTOCHTitleInfo } from './stoch'
34
-
35
- // MOM 动量指标
36
- export { createMOMRendererPlugin, type MOMRendererOptions, getMOMTitleInfo } from './mom'
37
-
38
- // WMSR 威廉指标
39
- export { createWMSRRendererPlugin, type WMSRRendererOptions, getWMSRTitleInfo } from './wmsr'
40
-
41
- // KST 确知指标
42
- export { createKSTRendererPlugin, type KSTRendererOptions, getKSTTitleInfo } from './kst'
43
-
44
- // FASTK 快速随机指标
45
- export { createFASTKRendererPlugin, type FASTKRendererOptions, getFASTKTitleInfo } from './fastk'
46
-
47
- // ATR 平均真实波幅
48
- export { createATRRendererPlugin, type ATRRendererOptions, getATRTitleInfo } from './atr'
49
-
50
- // WMA 加权移动平均
51
- export { createWMARendererPlugin, getWMATitleInfo } from './wma'
52
- // DEMA 双指数移动平均
53
- export { createDEMARendererPlugin, getDEMATitleInfo } from './dema'
54
- // TEMA 三指数移动平均
55
- export { createTEMARendererPlugin, getTEMATitleInfo } from './tema'
56
- // HMA 赫尔移动平均
57
- export { createHMARendererPlugin, getHMATitleInfo } from './hma'
58
- // KAMA 考夫曼自适应移动平均
59
- export { createKAMARendererPlugin, getKAMATitleInfo } from './kama'
60
- // SAR 抛物线转向
61
- export { createSARRendererPlugin, getSARTitleInfo } from './sar'
62
- // SuperTrend 超级趋势
63
- export { createSuperTrendRendererPlugin, getSuperTrendTitleInfo } from './supertrend'
64
- // Keltner 肯特纳通道
65
- export { createKeltnerRendererPlugin, getKeltnerTitleInfo } from './keltner'
66
- // Donchian 唐奇安通道
67
- export { createDonchianRendererPlugin, getDonchianTitleInfo } from './donchian'
68
- // Ichimoku 一目均衡表
69
- export { createIchimokuRendererPlugin, getIchimokuTitleInfo } from './ichimoku'
70
- // ROC 变化率
71
- export { createROCRendererPlugin, getROCTitleInfo } from './roc'
72
- // TRIX 三重指数平滑平均
73
- export { createTRIXRendererPlugin, getTRIXTitleInfo } from './trix'
74
- // HV 历史波动率
75
- export { createHVRendererPlugin, getHVTitleInfo } from './hv'
76
- // Parkinson 帕金森波动率
77
- export { createParkinsonRendererPlugin, getParkinsonTitleInfo } from './parkinson'
78
- // Chaikin Vol 蔡金波动率
79
- export { createChaikinVolRendererPlugin, getChaikinVolTitleInfo } from './chaikinVol'
80
- // VMA 成交量移动平均
81
- export { createVMARendererPlugin, getVMATitleInfo } from './vma'
82
- // OBV 能量潮
83
- export { createOBVRendererPlugin, getOBVTitleInfo } from './obv'
84
- // PVT 价量趋势
85
- export { createPVTRendererPlugin, getPVTTitleInfo } from './pvt'
86
- // VWAP 成交量加权均价
87
- export { createVWAPRendererPlugin, getVWAPTitleInfo } from './vwap'
88
- // CMF 蔡金资金流
89
- export { createCMFRendererPlugin, getCMFTitleInfo } from './cmf'
90
- // MFI 资金流量指数
91
- export { createMFIRendererPlugin, getMFITitleInfo } from './mfi'
92
- // Pivot Points 枢轴点
93
- export { createPivotRendererPlugin, getPivotTitleInfo } from './pivot'
94
- // Fibonacci 斐波那契
95
- export { createFibRendererPlugin, getFibTitleInfo } from './fib'
96
- // SMC Structure 结构
97
- export { createStructureRendererPlugin, getStructureTitleInfo } from './structure'
98
- // SMC Zones 区域
99
- export { createZonesRendererPlugin, getZonesTitleInfo } from './zones'
100
- // Volume Profile 成交量分布
101
- export { createVolumeProfileRendererPlugin, getVolumeProfileTitleInfo } from './volumeProfile'
102
-
103
11
  /**
104
12
  * 副图指标类型
105
13
  */
@@ -315,29 +315,38 @@ const uiMeta: Record<string, {
315
315
  },
316
316
  }
317
317
 
318
- function buildAllIndicators(): Indicator[] {
319
- return getRegisteredIndicatorDefinitions().map((def) => {
320
- const key = normalizeId(def.name)
321
- const ui = uiMeta[key]
322
- return {
323
- id: def.displayName.toUpperCase(),
324
- label: def.displayName,
325
- name: ui?.name ?? def.displayName,
326
- pane: def.category === 'main' || def.allowMainPane ? 'main' : 'sub',
327
- description: ui?.description,
328
- params: ui?.params,
329
- }
330
- })
331
- }
332
-
333
- export const allIndicators: Indicator[] = buildAllIndicators()
318
+ let _allIndicators: Indicator[] | null = null
334
319
 
335
- export const mainIndicators = allIndicators.filter((i) => i.pane === 'main')
336
- export const subIndicators = allIndicators.filter((i) => i.pane === 'sub')
320
+ function rebuildIfStale(): Indicator[] {
321
+ if (_allIndicators === null || getRegisteredIndicatorDefinitions().length !== _allIndicators.length) {
322
+ _allIndicators = getRegisteredIndicatorDefinitions()
323
+ .map((def) => {
324
+ const key = normalizeId(def.name)
325
+ const ui = uiMeta[key]
326
+ return {
327
+ id: def.displayName.toUpperCase(),
328
+ label: def.displayName,
329
+ name: ui?.name ?? def.displayName,
330
+ pane: (def.category === 'main' || def.allowMainPane ? 'main' : 'sub') as Indicator['pane'],
331
+ description: ui?.description,
332
+ params: ui?.params,
333
+ }
334
+ })
335
+ .sort((a, b) => {
336
+ const paneOrder = a.pane === 'main' ? 0 : 1
337
+ const paneOrderB = b.pane === 'main' ? 0 : 1
338
+ return paneOrder - paneOrderB || a.label.localeCompare(b.label)
339
+ })
340
+ }
341
+ return _allIndicators ?? []
342
+ }
343
+ export function allIndicators(): Indicator[] {
344
+ return rebuildIfStale()
345
+ }
337
346
 
338
347
  export function findIndicator(id: string): Indicator | undefined {
339
348
  const norm = normalizeId(id)
340
- return allIndicators.find((i) => normalizeId(i.id) === norm || normalizeId(i.label) === norm)
349
+ return rebuildIfStale().find((i) => normalizeId(i.id) === norm || normalizeId(i.label) === norm)
341
350
  }
342
351
 
343
352
  export function isSubIndicatorId(id: string): boolean {