@tradecanvas/chart 1.3.0 → 1.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (205) hide show
  1. package/README.md +131 -49
  2. package/dist/Chart.d.ts +724 -18
  3. package/dist/Chart.d.ts.map +1 -1
  4. package/dist/DataManager.d.ts +5 -0
  5. package/dist/DataManager.d.ts.map +1 -1
  6. package/dist/HistoryPager.d.ts +58 -0
  7. package/dist/HistoryPager.d.ts.map +1 -0
  8. package/dist/LayoutSession-CTZB90NX.cjs +2 -0
  9. package/dist/LayoutSession-CTZB90NX.cjs.map +1 -0
  10. package/dist/LayoutSession-CWn3sdbs.js +3967 -0
  11. package/dist/LayoutSession-CWn3sdbs.js.map +1 -0
  12. package/dist/PaneManager.d.ts.map +1 -1
  13. package/dist/ThemeManager.d.ts +5 -1
  14. package/dist/ThemeManager.d.ts.map +1 -1
  15. package/dist/chartA11y.d.ts +59 -0
  16. package/dist/chartA11y.d.ts.map +1 -0
  17. package/dist/charts/ChartTypeStrategy.d.ts +11 -4
  18. package/dist/charts/ChartTypeStrategy.d.ts.map +1 -1
  19. package/dist/grid/ChartGrid.d.ts +7 -1
  20. package/dist/grid/ChartGrid.d.ts.map +1 -1
  21. package/dist/i18n-CiQ8EDVs.js +1469 -0
  22. package/dist/i18n-CiQ8EDVs.js.map +1 -0
  23. package/dist/i18n-WsLA9SmD.cjs +2 -0
  24. package/dist/i18n-WsLA9SmD.cjs.map +1 -0
  25. package/dist/index.cjs +1 -1
  26. package/dist/index.cjs.map +1 -1
  27. package/dist/index.d.ts +24 -3
  28. package/dist/index.d.ts.map +1 -1
  29. package/dist/index.js +74 -89
  30. package/dist/index.js.map +1 -1
  31. package/dist/indicatorLabel.d.ts +7 -0
  32. package/dist/indicatorLabel.d.ts.map +1 -0
  33. package/dist/layout/LayoutManager.d.ts +50 -0
  34. package/dist/layout/LayoutManager.d.ts.map +1 -1
  35. package/dist/layout/priceAxisWidth.d.ts +2 -0
  36. package/dist/layout/priceAxisWidth.d.ts.map +1 -1
  37. package/dist/regularHours.d.ts +10 -0
  38. package/dist/regularHours.d.ts.map +1 -0
  39. package/dist/state/LayoutSession.d.ts +101 -0
  40. package/dist/state/LayoutSession.d.ts.map +1 -0
  41. package/dist/state/layoutStorage.d.ts +46 -0
  42. package/dist/state/layoutStorage.d.ts.map +1 -0
  43. package/dist/trading/wireExecution.d.ts +7 -3
  44. package/dist/trading/wireExecution.d.ts.map +1 -1
  45. package/dist/widget/ChartWidget.d.ts +283 -10
  46. package/dist/widget/ChartWidget.d.ts.map +1 -1
  47. package/dist/widget/ChartWidgetGrid.d.ts +166 -0
  48. package/dist/widget/ChartWidgetGrid.d.ts.map +1 -0
  49. package/dist/widget/DrawingTemplateStore.d.ts +29 -8
  50. package/dist/widget/DrawingTemplateStore.d.ts.map +1 -1
  51. package/dist/widget/WatchlistStore.d.ts +65 -0
  52. package/dist/widget/WatchlistStore.d.ts.map +1 -0
  53. package/dist/widget/WidgetAccountPanel.d.ts +72 -0
  54. package/dist/widget/WidgetAccountPanel.d.ts.map +1 -0
  55. package/dist/widget/WidgetAlertsPanel.d.ts +50 -3
  56. package/dist/widget/WidgetAlertsPanel.d.ts.map +1 -1
  57. package/dist/widget/WidgetBracketBar.d.ts +3 -1
  58. package/dist/widget/WidgetBracketBar.d.ts.map +1 -1
  59. package/dist/widget/WidgetChartNav.d.ts +36 -0
  60. package/dist/widget/WidgetChartNav.d.ts.map +1 -0
  61. package/dist/widget/WidgetCommandPalette.d.ts +5 -1
  62. package/dist/widget/WidgetCommandPalette.d.ts.map +1 -1
  63. package/dist/widget/WidgetContextMenu.d.ts +40 -0
  64. package/dist/widget/WidgetContextMenu.d.ts.map +1 -0
  65. package/dist/widget/WidgetDataWindow.d.ts +3 -1
  66. package/dist/widget/WidgetDataWindow.d.ts.map +1 -1
  67. package/dist/widget/WidgetDepthLadder.d.ts +3 -1
  68. package/dist/widget/WidgetDepthLadder.d.ts.map +1 -1
  69. package/dist/widget/WidgetDrawingSettings.d.ts +108 -0
  70. package/dist/widget/WidgetDrawingSettings.d.ts.map +1 -0
  71. package/dist/widget/WidgetDrawingSidebar.d.ts +26 -1
  72. package/dist/widget/WidgetDrawingSidebar.d.ts.map +1 -1
  73. package/dist/widget/WidgetDrawingStyle.d.ts +3 -1
  74. package/dist/widget/WidgetDrawingStyle.d.ts.map +1 -1
  75. package/dist/widget/WidgetDropdown.d.ts.map +1 -1
  76. package/dist/widget/WidgetGoToDate.d.ts +46 -0
  77. package/dist/widget/WidgetGoToDate.d.ts.map +1 -0
  78. package/dist/widget/WidgetHistoryPill.d.ts +23 -0
  79. package/dist/widget/WidgetHistoryPill.d.ts.map +1 -0
  80. package/dist/widget/WidgetHotkeySheet.d.ts +3 -1
  81. package/dist/widget/WidgetHotkeySheet.d.ts.map +1 -1
  82. package/dist/widget/WidgetIndicatorLegend.d.ts +98 -0
  83. package/dist/widget/WidgetIndicatorLegend.d.ts.map +1 -0
  84. package/dist/widget/WidgetIndicatorSettings.d.ts +62 -7
  85. package/dist/widget/WidgetIndicatorSettings.d.ts.map +1 -1
  86. package/dist/widget/WidgetIntervalInput.d.ts +34 -0
  87. package/dist/widget/WidgetIntervalInput.d.ts.map +1 -0
  88. package/dist/widget/WidgetLayoutsDialog.d.ts +39 -0
  89. package/dist/widget/WidgetLayoutsDialog.d.ts.map +1 -0
  90. package/dist/widget/WidgetLayoutsUI.d.ts +37 -0
  91. package/dist/widget/WidgetLayoutsUI.d.ts.map +1 -0
  92. package/dist/widget/WidgetLoadingOverlay.d.ts.map +1 -1
  93. package/dist/widget/WidgetNamePrompt.d.ts +31 -0
  94. package/dist/widget/WidgetNamePrompt.d.ts.map +1 -0
  95. package/dist/widget/WidgetObjectTree.d.ts +21 -3
  96. package/dist/widget/WidgetObjectTree.d.ts.map +1 -1
  97. package/dist/widget/WidgetOrderTicket.d.ts +49 -0
  98. package/dist/widget/WidgetOrderTicket.d.ts.map +1 -0
  99. package/dist/widget/WidgetReplayBar.d.ts +52 -7
  100. package/dist/widget/WidgetReplayBar.d.ts.map +1 -1
  101. package/dist/widget/WidgetSettings.d.ts +26 -2
  102. package/dist/widget/WidgetSettings.d.ts.map +1 -1
  103. package/dist/widget/WidgetStatusBar.d.ts +19 -1
  104. package/dist/widget/WidgetStatusBar.d.ts.map +1 -1
  105. package/dist/widget/WidgetStyles.d.ts +3 -1
  106. package/dist/widget/WidgetStyles.d.ts.map +1 -1
  107. package/dist/widget/WidgetSymbolInfo.d.ts +64 -0
  108. package/dist/widget/WidgetSymbolInfo.d.ts.map +1 -0
  109. package/dist/widget/WidgetSymbolSearch.d.ts +28 -5
  110. package/dist/widget/WidgetSymbolSearch.d.ts.map +1 -1
  111. package/dist/widget/WidgetToolbar.d.ts +42 -4
  112. package/dist/widget/WidgetToolbar.d.ts.map +1 -1
  113. package/dist/widget/WidgetTooltip.d.ts +43 -0
  114. package/dist/widget/WidgetTooltip.d.ts.map +1 -0
  115. package/dist/widget/WidgetWatchlist.d.ts +53 -13
  116. package/dist/widget/WidgetWatchlist.d.ts.map +1 -1
  117. package/dist/widget/chartMenu.d.ts +40 -0
  118. package/dist/widget/chartMenu.d.ts.map +1 -0
  119. package/dist/widget/drawingMenu.d.ts +21 -0
  120. package/dist/widget/drawingMenu.d.ts.map +1 -0
  121. package/dist/widget/escapeHtml.d.ts +3 -0
  122. package/dist/widget/escapeHtml.d.ts.map +1 -0
  123. package/dist/widget/focusTrap.d.ts +8 -0
  124. package/dist/widget/focusTrap.d.ts.map +1 -0
  125. package/dist/widget/i18n.d.ts +20 -63
  126. package/dist/widget/i18n.d.ts.map +1 -1
  127. package/dist/widget/iconSet.d.ts +26 -0
  128. package/dist/widget/iconSet.d.ts.map +1 -0
  129. package/dist/widget/icons.d.ts +5 -0
  130. package/dist/widget/icons.d.ts.map +1 -1
  131. package/dist/widget/index.cjs +2145 -405
  132. package/dist/widget/index.cjs.map +1 -1
  133. package/dist/widget/index.d.ts +18 -1
  134. package/dist/widget/index.d.ts.map +1 -1
  135. package/dist/widget/index.js +7376 -1274
  136. package/dist/widget/index.js.map +1 -1
  137. package/dist/widget/indicatorTemplates.d.ts +24 -0
  138. package/dist/widget/indicatorTemplates.d.ts.map +1 -0
  139. package/dist/widget/keyTarget.d.ts +11 -0
  140. package/dist/widget/keyTarget.d.ts.map +1 -0
  141. package/dist/widget/legendValues.d.ts +19 -0
  142. package/dist/widget/legendValues.d.ts.map +1 -0
  143. package/dist/widget/locales/ar.d.ts +4 -0
  144. package/dist/widget/locales/ar.d.ts.map +1 -0
  145. package/dist/widget/locales/de.d.ts +4 -0
  146. package/dist/widget/locales/de.d.ts.map +1 -0
  147. package/dist/widget/locales/en.d.ts +722 -0
  148. package/dist/widget/locales/en.d.ts.map +1 -0
  149. package/dist/widget/locales/es.d.ts +4 -0
  150. package/dist/widget/locales/es.d.ts.map +1 -0
  151. package/dist/widget/locales/fr.d.ts +4 -0
  152. package/dist/widget/locales/fr.d.ts.map +1 -0
  153. package/dist/widget/locales/he.d.ts +4 -0
  154. package/dist/widget/locales/he.d.ts.map +1 -0
  155. package/dist/widget/locales/id.d.ts +4 -0
  156. package/dist/widget/locales/id.d.ts.map +1 -0
  157. package/dist/widget/locales/index.cjs +2 -0
  158. package/dist/widget/locales/index.cjs.map +1 -0
  159. package/dist/widget/locales/index.d.ts +33 -0
  160. package/dist/widget/locales/index.d.ts.map +1 -0
  161. package/dist/widget/locales/index.js +10089 -0
  162. package/dist/widget/locales/index.js.map +1 -0
  163. package/dist/widget/locales/ja.d.ts +4 -0
  164. package/dist/widget/locales/ja.d.ts.map +1 -0
  165. package/dist/widget/locales/ko.d.ts +4 -0
  166. package/dist/widget/locales/ko.d.ts.map +1 -0
  167. package/dist/widget/locales/pt.d.ts +4 -0
  168. package/dist/widget/locales/pt.d.ts.map +1 -0
  169. package/dist/widget/locales/ru.d.ts +4 -0
  170. package/dist/widget/locales/ru.d.ts.map +1 -0
  171. package/dist/widget/locales/th.d.ts +4 -0
  172. package/dist/widget/locales/th.d.ts.map +1 -0
  173. package/dist/widget/locales/tr.d.ts +4 -0
  174. package/dist/widget/locales/tr.d.ts.map +1 -0
  175. package/dist/widget/locales/vi.d.ts +4 -0
  176. package/dist/widget/locales/vi.d.ts.map +1 -0
  177. package/dist/widget/locales/zh.d.ts +4 -0
  178. package/dist/widget/locales/zh.d.ts.map +1 -0
  179. package/dist/widget/locales/zhHant.d.ts +4 -0
  180. package/dist/widget/locales/zhHant.d.ts.map +1 -0
  181. package/dist/widget/orderTicket.d.ts +27 -0
  182. package/dist/widget/orderTicket.d.ts.map +1 -0
  183. package/dist/widget/settingsControls.d.ts +24 -0
  184. package/dist/widget/settingsControls.d.ts.map +1 -0
  185. package/dist/widget/types.d.ts +215 -13
  186. package/dist/widget/types.d.ts.map +1 -1
  187. package/dist/widget/widgetConfig.d.ts +1 -5
  188. package/dist/widget/widgetConfig.d.ts.map +1 -1
  189. package/dist/widget/widgetLayout.d.ts +22 -0
  190. package/dist/widget/widgetLayout.d.ts.map +1 -0
  191. package/dist/widget/widgetLocales.d.ts +17 -0
  192. package/dist/widget/widgetLocales.d.ts.map +1 -0
  193. package/dist/widget/widgetTimeframes.d.ts +28 -0
  194. package/dist/widget/widgetTimeframes.d.ts.map +1 -0
  195. package/dist/widget/widgetTimezones.d.ts +32 -0
  196. package/dist/widget/widgetTimezones.d.ts.map +1 -0
  197. package/dist/widget/widgetUI.d.ts +126 -0
  198. package/dist/widget/widgetUI.d.ts.map +1 -0
  199. package/package.json +8 -3
  200. package/dist/DragDropImporter-BazeSQPD.cjs +0 -2
  201. package/dist/DragDropImporter-BazeSQPD.cjs.map +0 -1
  202. package/dist/DragDropImporter-cURSpfUb.js +0 -1883
  203. package/dist/DragDropImporter-cURSpfUb.js.map +0 -1
  204. package/dist/charts/IndicatorPriceRange.d.ts +0 -20
  205. package/dist/charts/IndicatorPriceRange.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"PaneManager.d.ts","sourceRoot":"","sources":["../src/PaneManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAGhE,MAAM,WAAW,QAAQ;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,IAAI,CAAC;CACZ;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,eAAe,CAAK;IAE5B,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAM3C,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,SAAuB,GAAG,IAAI;IAKjE,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAKrC,SAAS,IAAI,QAAQ,EAAE;IAIvB,gBAAgB,IAAI,IAAI;IAUxB,mBAAmB,CAAC,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,aAAa,GAAG,aAAa;IAQhF,OAAO,CAAC,YAAY;CAarB"}
1
+ {"version":3,"file":"PaneManager.d.ts","sourceRoot":"","sources":["../src/PaneManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAGhE,MAAM,WAAW,QAAQ;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,IAAI,CAAC;CACZ;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,eAAe,CAAK;IAE5B,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAM3C,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,SAAuB,GAAG,IAAI;IAKjE,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAKrC,SAAS,IAAI,QAAQ,EAAE;IAIvB,gBAAgB,IAAI,IAAI;IAUxB,mBAAmB,CAAC,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,aAAa,GAAG,aAAa;IAYhF,OAAO,CAAC,YAAY;CAarB"}
@@ -1,8 +1,12 @@
1
- import { Theme, ThemeName } from '@tradecanvas/commons';
1
+ import { ShapeConfig, Theme, ThemeName } from '@tradecanvas/commons';
2
2
  export declare class ThemeManager {
3
3
  private theme;
4
+ /** Shapes set apart from the theme (`setShapes`): they stay through theme switches. */
5
+ private shape;
4
6
  constructor(themeOrName?: ThemeName | Theme);
5
7
  getTheme(): Theme;
6
8
  setTheme(themeOrName: ThemeName | Theme): void;
9
+ /** Shapes over every theme from now on (null: each theme's own). */
10
+ setShape(shape: ShapeConfig | null): void;
7
11
  }
8
12
  //# sourceMappingURL=ThemeManager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ThemeManager.d.ts","sourceRoot":"","sources":["../src/ThemeManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAG7D,qBAAa,YAAY;IACvB,OAAO,CAAC,KAAK,CAAQ;gBAET,WAAW,CAAC,EAAE,SAAS,GAAG,KAAK;IAU3C,QAAQ,IAAI,KAAK;IAIjB,QAAQ,CAAC,WAAW,EAAE,SAAS,GAAG,KAAK,GAAG,IAAI;CAS/C"}
1
+ {"version":3,"file":"ThemeManager.d.ts","sourceRoot":"","sources":["../src/ThemeManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAG1E,qBAAa,YAAY;IACvB,OAAO,CAAC,KAAK,CAAQ;IACrB,uFAAuF;IACvF,OAAO,CAAC,KAAK,CAA4B;gBAE7B,WAAW,CAAC,EAAE,SAAS,GAAG,KAAK;IAU3C,QAAQ,IAAI,KAAK;IAIjB,QAAQ,CAAC,WAAW,EAAE,SAAS,GAAG,KAAK,GAAG,IAAI;IAW9C,oEAAoE;IACpE,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,GAAG,IAAI;CAI1C"}
@@ -0,0 +1,59 @@
1
+ import { ChartA11yLabels } from '@tradecanvas/commons';
2
+ export type { ChartA11yLabels };
3
+ export declare const DEFAULT_A11Y_LABELS: ChartA11yLabels;
4
+ /** What the chart tells its reader, asked when needed. */
5
+ export interface ChartA11ySource {
6
+ symbol: () => string;
7
+ timeframe: () => string;
8
+ chartType: () => string;
9
+ bars: () => readonly {
10
+ time: number;
11
+ open: number;
12
+ high: number;
13
+ low: number;
14
+ close: number;
15
+ volume?: number;
16
+ }[];
17
+ visibleRange: () => {
18
+ from: number;
19
+ to: number;
20
+ };
21
+ formatPrice: (price: number) => string;
22
+ formatTime: (time: number) => string;
23
+ /** Show the bar being read (a time crosshair); null clears it. */
24
+ showBar: (time: number | null) => void;
25
+ }
26
+ /**
27
+ * The chart for screen readers: the container is an application with a
28
+ * summary (symbol, type, timeframe, last price) and key help; after the keys
29
+ * move the view it says what is on screen, and comma and period read the
30
+ * bars one at a time.
31
+ */
32
+ export declare class ChartA11y {
33
+ private readonly container;
34
+ private readonly source;
35
+ private readonly live;
36
+ private readonly help;
37
+ private labels;
38
+ private cursor;
39
+ private viewTimer;
40
+ /** The container's own attributes before, put back on destroy. */
41
+ private readonly before;
42
+ private summaryAt;
43
+ private summaryTimer;
44
+ private readonly onBlur;
45
+ constructor(container: HTMLElement, source: ChartA11ySource, labels?: Partial<ChartA11yLabels>);
46
+ setLabels(labels: Partial<ChartA11yLabels>): void;
47
+ /** The summary again (new data, type, symbol): at once, or soon after when live data streams. */
48
+ refresh(force?: boolean): void;
49
+ /** The keys moved the view: soon, say what is on screen. */
50
+ viewMoved(): void;
51
+ /** Read the next (1) or previous (-1) bar; the first read starts at the last bar on screen. */
52
+ readBar(step: 1 | -1): void;
53
+ destroy(): void;
54
+ private applyLabels;
55
+ private summary;
56
+ private viewText;
57
+ private say;
58
+ }
59
+ //# sourceMappingURL=chartA11y.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chartA11y.d.ts","sourceRoot":"","sources":["../src/chartA11y.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE5D,YAAY,EAAE,eAAe,EAAE,CAAC;AAEhC,eAAO,MAAM,mBAAmB,EAAE,eAOjC,CAAC;AAEF,0DAA0D;AAC1D,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,MAAM,CAAC;IACxB,IAAI,EAAE,MAAM,SAAS;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACjH,YAAY,EAAE,MAAM;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IACjD,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;IACvC,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IACrC,kEAAkE;IAClE,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;CACxC;AAYD;;;;;GAKG;AACH,qBAAa,SAAS;IAgBlB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM;IAhBzB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAiB;IACtC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAiB;IACtC,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,SAAS,CAA8C;IAC/D,kEAAkE;IAClE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoC;IAC3D,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,YAAY,CAA8C;IAClE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAGrB;gBAGiB,SAAS,EAAE,WAAW,EACtB,MAAM,EAAE,eAAe,EACxC,MAAM,GAAE,OAAO,CAAC,eAAe,CAAM;IAmBvC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,IAAI;IAKjD,iGAAiG;IACjG,OAAO,CAAC,KAAK,UAAQ,GAAG,IAAI;IAgB5B,4DAA4D;IAC5D,SAAS,IAAI,IAAI;IASjB,+FAA+F;IAC/F,OAAO,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI;IAsB3B,OAAO,IAAI,IAAI;IAYf,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,OAAO;IAUf,OAAO,CAAC,QAAQ;IAqBhB,OAAO,CAAC,GAAG;CAGZ"}
@@ -1,4 +1,4 @@
1
- import { ChartType, DataSeries } from '@tradecanvas/commons';
1
+ import { ChartType, ChartTypeOptions, DataSeries } from '@tradecanvas/commons';
2
2
  import { ChartRendererInterface } from '@tradecanvas/core';
3
3
  import { ChartTypePlugin } from '../plugins/contracts.js';
4
4
  /**
@@ -8,14 +8,21 @@ import { ChartTypePlugin } from '../plugins/contracts.js';
8
8
  */
9
9
  export declare function createRendererFor(type: ChartType): ChartRendererInterface;
10
10
  /**
11
- * Transform raw OHLC bars into the display series for a given chart type.
11
+ * Transform raw OHLC bars into the display series for a given chart type,
12
+ * with its settings (`options`; what isn't set is worked out from the data).
12
13
  * Returns the input unchanged for chart types that render raw OHLC directly.
13
14
  *
14
15
  * Centralized so adding a new chart type only requires editing one file.
15
16
  */
16
- export declare function transformDisplayData(type: ChartType, raw: DataSeries): DataSeries;
17
+ export declare function transformDisplayData(type: ChartType, raw: DataSeries, options?: ChartTypeOptions): DataSeries;
17
18
  /** Chart types that materially transform raw OHLC into a different series. */
18
19
  export declare function isTransformedChartType(type: ChartType): boolean;
20
+ /**
21
+ * Transformed chart types that redraw the series into bars of their own
22
+ * (bricks, lines, columns), so a drawn bar is not a data bar. Heikin-Ashi
23
+ * keeps one bar per data bar.
24
+ */
25
+ export declare function isReshapedChartType(type: ChartType): boolean;
19
26
  /** Look up a registered custom chart-type plugin by its `type` string. */
20
27
  export type ChartTypeLookup = (type: string) => ChartTypePlugin | undefined;
21
28
  /**
@@ -27,5 +34,5 @@ export declare function resolveRenderer(type: string, lookup?: ChartTypeLookup):
27
34
  * Resolve the display series for a chart type, preferring a plugin's
28
35
  * `transform` over the built-in transforms.
29
36
  */
30
- export declare function resolveDisplayData(type: string, raw: DataSeries, lookup?: ChartTypeLookup): DataSeries;
37
+ export declare function resolveDisplayData(type: string, raw: DataSeries, lookup?: ChartTypeLookup, options?: ChartTypeOptions): DataSeries;
31
38
  //# sourceMappingURL=ChartTypeStrategy.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChartTypeStrategy.d.ts","sourceRoot":"","sources":["../../src/charts/ChartTypeStrategy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAuBlE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE/D;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,SAAS,GAAG,sBAAsB,CAoCzE;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,UAAU,GAAG,UAAU,CAuBjF;AAED,8EAA8E;AAC9E,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAY/D;AAQD,0EAA0E;AAC1E,MAAM,MAAM,eAAe,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,eAAe,GAAG,SAAS,CAAC;AAE5E;;;GAGG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,eAAe,GAAG,sBAAsB,CAI9F;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,UAAU,EACf,MAAM,CAAC,EAAE,eAAe,GACvB,UAAU,CAKZ"}
1
+ {"version":3,"file":"ChartTypeStrategy.d.ts","sourceRoot":"","sources":["../../src/charts/ChartTypeStrategy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAwBpF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE/D;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,SAAS,GAAG,sBAAsB,CAsCzE;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,GAAE,gBAAqB,GAAG,UAAU,CA2BjH;AAED,8EAA8E;AAC9E,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAY/D;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAE5D;AAQD,0EAA0E;AAC1E,MAAM,MAAM,eAAe,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,eAAe,GAAG,SAAS,CAAC;AAE5E;;;GAGG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,eAAe,GAAG,sBAAsB,CAI9F;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,UAAU,EACf,MAAM,CAAC,EAAE,eAAe,EACxB,OAAO,CAAC,EAAE,gBAAgB,GACzB,UAAU,CAKZ"}
@@ -25,6 +25,7 @@ export declare class ChartGrid {
25
25
  constructor(container: HTMLElement, options?: ChartGridOptions);
26
26
  private applyLayout;
27
27
  private createCells;
28
+ private createCell;
28
29
  setLayout(layout: GridLayout): void;
29
30
  getChart(index: number): Chart | null;
30
31
  getCharts(): Chart[];
@@ -32,7 +33,12 @@ export declare class ChartGrid {
32
33
  setData(index: number, data: DataSeries): void;
33
34
  setAllData(data: DataSeries): void;
34
35
  connectCell(index: number, config: StreamConfig): Promise<void>;
35
- connectAll(adapter: DataAdapter, symbols: string[], timeframe: TimeFrame, historyLimit?: number): Promise<void>;
36
+ /**
37
+ * Connect each chart to a symbol. An adapter keeps one stream, so pass a
38
+ * function that makes one per chart (`() => new BinanceAdapter()`); a single
39
+ * adapter object serves one chart only.
40
+ */
41
+ connectAll(adapter: DataAdapter | ((symbol: string, index: number) => DataAdapter), symbols: string[], timeframe: TimeFrame, historyLimit?: number): Promise<void>;
36
42
  setTheme(theme: Theme): void;
37
43
  destroy(): void;
38
44
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ChartGrid.d.ts","sourceRoot":"","sources":["../../src/grid/ChartGrid.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAClH,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;AAEvF,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;CACtC;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,KAAK,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IAC9B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,cAAc,EAAE,CAAC;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;CACtC;AAoBD,qBAAa,SAAS;IACpB,OAAO,CAAC,IAAI,CAAiB;IAC7B,OAAO,CAAC,KAAK,CAAkB;IAC/B,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,OAAO,CAAS;gBAEZ,SAAS,EAAE,WAAW,EAAE,OAAO,GAAE,gBAAqB;IAYlE,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,WAAW;IA2EnB,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IA2CnC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,GAAG,IAAI;IAIrC,SAAS,IAAI,KAAK,EAAE;IAIpB,YAAY,IAAI,MAAM;IAItB,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,IAAI;IAI9C,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI;IAM5B,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ/D,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,SAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAalH,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAM5B,OAAO,IAAI,IAAI;CAUhB"}
1
+ {"version":3,"file":"ChartGrid.d.ts","sourceRoot":"","sources":["../../src/grid/ChartGrid.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAClH,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;AAEvF,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;CACtC;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,KAAK,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IAC9B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,cAAc,EAAE,CAAC;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;CACtC;AAoBD,qBAAa,SAAS;IACpB,OAAO,CAAC,IAAI,CAAiB;IAC7B,OAAO,CAAC,KAAK,CAAkB;IAC/B,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,OAAO,CAAS;gBAEZ,SAAS,EAAE,WAAW,EAAE,OAAO,GAAE,gBAAqB;IAYlE,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,UAAU;IA0ElB,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAsBnC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,GAAG,IAAI;IAIrC,SAAS,IAAI,KAAK,EAAE;IAIpB,YAAY,IAAI,MAAM;IAItB,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,IAAI;IAI9C,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI;IAM5B,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAQrE;;;;OAIG;IACG,UAAU,CACd,OAAO,EAAE,WAAW,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,WAAW,CAAC,EACvE,OAAO,EAAE,MAAM,EAAE,EACjB,SAAS,EAAE,SAAS,EACpB,YAAY,SAAM,GACjB,OAAO,CAAC,IAAI,CAAC;IAahB,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAM5B,OAAO,IAAI,IAAI;CAUhB"}