stream-charts 1.1.1 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (253) hide show
  1. package/README.md +66 -0
  2. package/changes.md +8 -0
  3. package/dist/{src/app → app}/charts/Chart.d.ts +27 -6
  4. package/dist/{src/app → app}/charts/Chart.js +2 -2
  5. package/dist/app/charts/Chart.js.map +1 -0
  6. package/dist/{src/app → app}/charts/axes/AxesState.d.ts +4 -4
  7. package/dist/{src/app → app}/charts/axes/AxesState.js +4 -4
  8. package/dist/app/charts/axes/AxesState.js.map +1 -0
  9. package/dist/app/charts/axes/AxesState.test.js.map +1 -0
  10. package/dist/app/charts/axes/AxisInterval.js.map +1 -0
  11. package/dist/app/charts/axes/AxisInterval.test.js.map +1 -0
  12. package/dist/app/charts/axes/BaseAxisRange.js.map +1 -0
  13. package/dist/{src/app → app}/charts/axes/ContinuousAxis.d.ts +1 -3
  14. package/dist/{src/app → app}/charts/axes/ContinuousAxis.js +2 -3
  15. package/dist/app/charts/axes/ContinuousAxis.js.map +1 -0
  16. package/dist/app/charts/axes/ContinuousAxisRange.js.map +1 -0
  17. package/dist/app/charts/axes/ContinuousAxisRange.test.js.map +1 -0
  18. package/dist/app/charts/axes/EmptyAxis.d.ts +12 -0
  19. package/dist/app/charts/axes/EmptyAxis.js +70 -0
  20. package/dist/app/charts/axes/EmptyAxis.js.map +1 -0
  21. package/dist/{src/app → app}/charts/axes/OrdinalAxis.d.ts +1 -3
  22. package/dist/{src/app → app}/charts/axes/OrdinalAxis.js +10 -4
  23. package/dist/app/charts/axes/OrdinalAxis.js.map +1 -0
  24. package/dist/app/charts/axes/OrdinalAxisRange.js.map +1 -0
  25. package/dist/app/charts/axes/OrdinalAxisRange.test.js.map +1 -0
  26. package/dist/{src/app → app}/charts/axes/axes.d.ts +28 -0
  27. package/dist/{src/app → app}/charts/axes/axes.js +86 -6
  28. package/dist/app/charts/axes/axes.js.map +1 -0
  29. package/dist/{src/app → app}/charts/d3types.js.map +1 -1
  30. package/dist/app/charts/filters/regexFilter.js.map +1 -0
  31. package/dist/app/charts/filters/regexFilter.test.js.map +1 -0
  32. package/dist/{src/app → app}/charts/hooks/useAxes.d.ts +3 -5
  33. package/dist/{src/app → app}/charts/hooks/useAxes.js +0 -1
  34. package/dist/app/charts/hooks/useAxes.js.map +1 -0
  35. package/dist/{src/app → app}/charts/hooks/useChart.d.ts +9 -5
  36. package/dist/{src/app → app}/charts/hooks/useChart.js +4 -3
  37. package/dist/app/charts/hooks/useChart.js.map +1 -0
  38. package/dist/{src/app → app}/charts/hooks/useDataObservable.d.ts +2 -4
  39. package/dist/{src/app → app}/charts/hooks/useDataObservable.js +0 -2
  40. package/dist/app/charts/hooks/useDataObservable.js.map +1 -0
  41. package/dist/{src/app → app}/charts/hooks/useInitialData.d.ts +2 -4
  42. package/dist/{src/app → app}/charts/hooks/useInitialData.js +0 -1
  43. package/dist/app/charts/hooks/useInitialData.js.map +1 -0
  44. package/dist/{src/app → app}/charts/hooks/useMouse.d.ts +6 -2
  45. package/dist/{src/app → app}/charts/hooks/useMouse.js +14 -14
  46. package/dist/app/charts/hooks/useMouse.js.map +1 -0
  47. package/dist/{src/app → app}/charts/hooks/usePlotDimensions.d.ts +1 -2
  48. package/dist/{src/app → app}/charts/hooks/usePlotDimensions.js +0 -1
  49. package/dist/app/charts/hooks/usePlotDimensions.js.map +1 -0
  50. package/dist/{src/app → app}/charts/hooks/useTooltip.d.ts +4 -4
  51. package/dist/{src/app → app}/charts/hooks/useTooltip.js +0 -1
  52. package/dist/app/charts/hooks/useTooltip.js.map +1 -0
  53. package/dist/app/charts/legends/Legend.d.ts +88 -0
  54. package/dist/app/charts/legends/Legend.js +425 -0
  55. package/dist/app/charts/legends/Legend.js.map +1 -0
  56. package/dist/app/charts/observables/ChartData.js.map +1 -0
  57. package/dist/app/charts/observables/iterates.js.map +1 -0
  58. package/dist/app/charts/observables/iterates.test.js.map +1 -0
  59. package/dist/app/charts/observables/ordinals.js.map +1 -0
  60. package/dist/app/charts/observables/ordinals.test.js.map +1 -0
  61. package/dist/{src/app → app}/charts/plots/BarPlot.d.ts +10 -12
  62. package/dist/{src/app → app}/charts/plots/BarPlot.js +14 -15
  63. package/dist/app/charts/plots/BarPlot.js.map +1 -0
  64. package/dist/{src/app → app}/charts/plots/PoincarePlot.d.ts +1 -3
  65. package/dist/{src/app → app}/charts/plots/PoincarePlot.js +0 -1
  66. package/dist/app/charts/plots/PoincarePlot.js.map +1 -0
  67. package/dist/{src/app → app}/charts/plots/RasterPlot.d.ts +1 -3
  68. package/dist/{src/app → app}/charts/plots/RasterPlot.js +12 -7
  69. package/dist/app/charts/plots/RasterPlot.js.map +1 -0
  70. package/dist/{src/app → app}/charts/plots/ScatterPlot.d.ts +1 -3
  71. package/dist/{src/app → app}/charts/plots/ScatterPlot.js +7 -6
  72. package/dist/app/charts/plots/ScatterPlot.js.map +1 -0
  73. package/dist/app/charts/plots/plot.js.map +1 -0
  74. package/dist/app/charts/series/baseSeries.js.map +1 -0
  75. package/dist/app/charts/series/datumSeries.test.js.map +1 -0
  76. package/dist/app/charts/series/iterateSeries.js.map +1 -0
  77. package/dist/app/charts/series/ordinalSeries.js.map +1 -0
  78. package/dist/app/charts/series/timeSeries.js.map +1 -0
  79. package/dist/app/charts/series/timeSeriesChartData.js.map +1 -0
  80. package/dist/app/charts/styling/barPlotStyle.js.map +1 -0
  81. package/dist/app/charts/styling/margins.js.map +1 -0
  82. package/dist/app/charts/styling/margins.test.js.map +1 -0
  83. package/dist/app/charts/styling/svgStyle.js.map +1 -0
  84. package/dist/app/charts/subscriptions/subscription.test.js.map +1 -0
  85. package/dist/app/charts/subscriptions/subscriptions.js.map +1 -0
  86. package/dist/{src/app → app}/charts/tooltips/BarPlotTooltipContent.d.ts +1 -3
  87. package/dist/{src/app → app}/charts/tooltips/BarPlotTooltipContent.js +0 -1
  88. package/dist/app/charts/tooltips/BarPlotTooltipContent.js.map +1 -0
  89. package/dist/{src/app → app}/charts/tooltips/PoincarePlotTooltipContent.d.ts +1 -3
  90. package/dist/{src/app → app}/charts/tooltips/PoincarePlotTooltipContent.js +0 -1
  91. package/dist/app/charts/tooltips/PoincarePlotTooltipContent.js.map +1 -0
  92. package/dist/{src/app → app}/charts/tooltips/RasterPlotTooltipContent.d.ts +1 -3
  93. package/dist/{src/app → app}/charts/tooltips/RasterPlotTooltipContent.js +0 -1
  94. package/dist/app/charts/tooltips/RasterPlotTooltipContent.js.map +1 -0
  95. package/dist/{src/app → app}/charts/tooltips/ScatterPlotTooltipContent.d.ts +1 -3
  96. package/dist/{src/app → app}/charts/tooltips/ScatterPlotTooltipContent.js +3 -2
  97. package/dist/app/charts/tooltips/ScatterPlotTooltipContent.js.map +1 -0
  98. package/dist/{src/app → app}/charts/tooltips/Tooltip.d.ts +10 -11
  99. package/dist/{src/app → app}/charts/tooltips/Tooltip.js +12 -12
  100. package/dist/app/charts/tooltips/Tooltip.js.map +1 -0
  101. package/dist/app/charts/tooltips/tooltipUtils.js.map +1 -0
  102. package/dist/{src/app → app}/charts/trackers/Tracker.d.ts +1 -3
  103. package/dist/{src/app → app}/charts/trackers/Tracker.js +0 -1
  104. package/dist/app/charts/trackers/Tracker.js.map +1 -0
  105. package/dist/app/charts/trackers/trackerUtils.js.map +1 -0
  106. package/dist/app/charts/utils.js.map +1 -0
  107. package/dist/{src/index.d.ts → index.d.ts} +20 -24
  108. package/dist/{src/index.js → index.js} +19 -19
  109. package/dist/index.js.map +1 -0
  110. package/package.json +20 -8
  111. package/src/app/charts/Chart.tsx +29 -5
  112. package/src/app/charts/axes/AxesState.ts +4 -4
  113. package/src/app/charts/axes/ContinuousAxis.tsx +3 -4
  114. package/src/app/charts/axes/EmptyAxis.tsx +119 -0
  115. package/src/app/charts/axes/OrdinalAxis.tsx +15 -4
  116. package/src/app/charts/axes/axes.ts +122 -6
  117. package/src/app/charts/hooks/useAxes.tsx +3 -4
  118. package/src/app/charts/hooks/useChart.tsx +13 -5
  119. package/src/app/charts/hooks/useDataObservable.tsx +2 -7
  120. package/src/app/charts/hooks/useInitialData.tsx +2 -3
  121. package/src/app/charts/hooks/useMouse.tsx +16 -13
  122. package/src/app/charts/hooks/usePlotDimensions.tsx +1 -2
  123. package/src/app/charts/hooks/useTooltip.tsx +4 -5
  124. package/src/app/charts/legends/Legend.tsx +600 -0
  125. package/src/app/charts/plots/BarPlot.tsx +15 -16
  126. package/src/app/charts/plots/PoincarePlot.tsx +1 -2
  127. package/src/app/charts/plots/RasterPlot.tsx +21 -8
  128. package/src/app/charts/plots/ScatterPlot.tsx +9 -11
  129. package/src/app/charts/tooltips/BarPlotTooltipContent.tsx +1 -2
  130. package/src/app/charts/tooltips/PoincarePlotTooltipContent.tsx +1 -2
  131. package/src/app/charts/tooltips/RasterPlotTooltipContent.tsx +1 -2
  132. package/src/app/charts/tooltips/ScatterPlotTooltipContent.tsx +3 -2
  133. package/src/app/charts/tooltips/Tooltip.tsx +11 -11
  134. package/src/app/charts/trackers/Tracker.tsx +1 -2
  135. package/src/index.ts +322 -0
  136. package/dist/src/app/charts/Chart.js.map +0 -1
  137. package/dist/src/app/charts/axes/AxesState.js.map +0 -1
  138. package/dist/src/app/charts/axes/AxesState.test.js.map +0 -1
  139. package/dist/src/app/charts/axes/AxisInterval.js.map +0 -1
  140. package/dist/src/app/charts/axes/AxisInterval.test.js.map +0 -1
  141. package/dist/src/app/charts/axes/BaseAxisRange.js.map +0 -1
  142. package/dist/src/app/charts/axes/ContinuousAxis.js.map +0 -1
  143. package/dist/src/app/charts/axes/ContinuousAxisRange.js.map +0 -1
  144. package/dist/src/app/charts/axes/ContinuousAxisRange.test.js.map +0 -1
  145. package/dist/src/app/charts/axes/OrdinalAxis.js.map +0 -1
  146. package/dist/src/app/charts/axes/OrdinalAxisRange.js.map +0 -1
  147. package/dist/src/app/charts/axes/OrdinalAxisRange.test.js.map +0 -1
  148. package/dist/src/app/charts/axes/axes.js.map +0 -1
  149. package/dist/src/app/charts/filters/regexFilter.js.map +0 -1
  150. package/dist/src/app/charts/filters/regexFilter.test.js.map +0 -1
  151. package/dist/src/app/charts/hooks/useAxes.js.map +0 -1
  152. package/dist/src/app/charts/hooks/useChart.js.map +0 -1
  153. package/dist/src/app/charts/hooks/useDataObservable.js.map +0 -1
  154. package/dist/src/app/charts/hooks/useInitialData.js.map +0 -1
  155. package/dist/src/app/charts/hooks/useMouse.js.map +0 -1
  156. package/dist/src/app/charts/hooks/usePlotDimensions.js.map +0 -1
  157. package/dist/src/app/charts/hooks/useTooltip.js.map +0 -1
  158. package/dist/src/app/charts/observables/ChartData.js.map +0 -1
  159. package/dist/src/app/charts/observables/iterates.js.map +0 -1
  160. package/dist/src/app/charts/observables/iterates.test.js.map +0 -1
  161. package/dist/src/app/charts/observables/ordinals.js.map +0 -1
  162. package/dist/src/app/charts/observables/ordinals.test.js.map +0 -1
  163. package/dist/src/app/charts/plots/BarPlot.js.map +0 -1
  164. package/dist/src/app/charts/plots/PoincarePlot.js.map +0 -1
  165. package/dist/src/app/charts/plots/RasterPlot.js.map +0 -1
  166. package/dist/src/app/charts/plots/ScatterPlot.js.map +0 -1
  167. package/dist/src/app/charts/plots/plot.js.map +0 -1
  168. package/dist/src/app/charts/series/baseSeries.js.map +0 -1
  169. package/dist/src/app/charts/series/datumSeries.test.js.map +0 -1
  170. package/dist/src/app/charts/series/iterateSeries.js.map +0 -1
  171. package/dist/src/app/charts/series/ordinalSeries.js.map +0 -1
  172. package/dist/src/app/charts/series/timeSeries.js.map +0 -1
  173. package/dist/src/app/charts/series/timeSeriesChartData.js.map +0 -1
  174. package/dist/src/app/charts/styling/barPlotStyle.js.map +0 -1
  175. package/dist/src/app/charts/styling/margins.js.map +0 -1
  176. package/dist/src/app/charts/styling/margins.test.js.map +0 -1
  177. package/dist/src/app/charts/styling/svgStyle.js.map +0 -1
  178. package/dist/src/app/charts/subscriptions/subscription.test.js.map +0 -1
  179. package/dist/src/app/charts/subscriptions/subscriptions.js.map +0 -1
  180. package/dist/src/app/charts/tooltips/BarPlotTooltipContent.js.map +0 -1
  181. package/dist/src/app/charts/tooltips/PoincarePlotTooltipContent.js.map +0 -1
  182. package/dist/src/app/charts/tooltips/RasterPlotTooltipContent.js.map +0 -1
  183. package/dist/src/app/charts/tooltips/ScatterPlotTooltipContent.js.map +0 -1
  184. package/dist/src/app/charts/tooltips/Tooltip.js.map +0 -1
  185. package/dist/src/app/charts/tooltips/tooltipUtils.js.map +0 -1
  186. package/dist/src/app/charts/trackers/Tracker.js.map +0 -1
  187. package/dist/src/app/charts/trackers/trackerUtils.js.map +0 -1
  188. package/dist/src/app/charts/utils.js.map +0 -1
  189. package/dist/src/index.js.map +0 -1
  190. /package/dist/{src/app → app}/charts/axes/AxesState.test.d.ts +0 -0
  191. /package/dist/{src/app → app}/charts/axes/AxesState.test.js +0 -0
  192. /package/dist/{src/app → app}/charts/axes/AxisInterval.d.ts +0 -0
  193. /package/dist/{src/app → app}/charts/axes/AxisInterval.js +0 -0
  194. /package/dist/{src/app → app}/charts/axes/AxisInterval.test.d.ts +0 -0
  195. /package/dist/{src/app → app}/charts/axes/AxisInterval.test.js +0 -0
  196. /package/dist/{src/app → app}/charts/axes/BaseAxisRange.d.ts +0 -0
  197. /package/dist/{src/app → app}/charts/axes/BaseAxisRange.js +0 -0
  198. /package/dist/{src/app → app}/charts/axes/ContinuousAxisRange.d.ts +0 -0
  199. /package/dist/{src/app → app}/charts/axes/ContinuousAxisRange.js +0 -0
  200. /package/dist/{src/app → app}/charts/axes/ContinuousAxisRange.test.d.ts +0 -0
  201. /package/dist/{src/app → app}/charts/axes/ContinuousAxisRange.test.js +0 -0
  202. /package/dist/{src/app → app}/charts/axes/OrdinalAxisRange.d.ts +0 -0
  203. /package/dist/{src/app → app}/charts/axes/OrdinalAxisRange.js +0 -0
  204. /package/dist/{src/app → app}/charts/axes/OrdinalAxisRange.test.d.ts +0 -0
  205. /package/dist/{src/app → app}/charts/axes/OrdinalAxisRange.test.js +0 -0
  206. /package/dist/{src/app → app}/charts/d3types.d.ts +0 -0
  207. /package/dist/{src/app → app}/charts/d3types.js +0 -0
  208. /package/dist/{src/app → app}/charts/filters/regexFilter.d.ts +0 -0
  209. /package/dist/{src/app → app}/charts/filters/regexFilter.js +0 -0
  210. /package/dist/{src/app → app}/charts/filters/regexFilter.test.d.ts +0 -0
  211. /package/dist/{src/app → app}/charts/filters/regexFilter.test.js +0 -0
  212. /package/dist/{src/app → app}/charts/observables/ChartData.d.ts +0 -0
  213. /package/dist/{src/app → app}/charts/observables/ChartData.js +0 -0
  214. /package/dist/{src/app → app}/charts/observables/iterates.d.ts +0 -0
  215. /package/dist/{src/app → app}/charts/observables/iterates.js +0 -0
  216. /package/dist/{src/app → app}/charts/observables/iterates.test.d.ts +0 -0
  217. /package/dist/{src/app → app}/charts/observables/iterates.test.js +0 -0
  218. /package/dist/{src/app → app}/charts/observables/ordinals.d.ts +0 -0
  219. /package/dist/{src/app → app}/charts/observables/ordinals.js +0 -0
  220. /package/dist/{src/app → app}/charts/observables/ordinals.test.d.ts +0 -0
  221. /package/dist/{src/app → app}/charts/observables/ordinals.test.js +0 -0
  222. /package/dist/{src/app → app}/charts/plots/plot.d.ts +0 -0
  223. /package/dist/{src/app → app}/charts/plots/plot.js +0 -0
  224. /package/dist/{src/app → app}/charts/series/baseSeries.d.ts +0 -0
  225. /package/dist/{src/app → app}/charts/series/baseSeries.js +0 -0
  226. /package/dist/{src/app → app}/charts/series/datumSeries.test.d.ts +0 -0
  227. /package/dist/{src/app → app}/charts/series/datumSeries.test.js +0 -0
  228. /package/dist/{src/app → app}/charts/series/iterateSeries.d.ts +0 -0
  229. /package/dist/{src/app → app}/charts/series/iterateSeries.js +0 -0
  230. /package/dist/{src/app → app}/charts/series/ordinalSeries.d.ts +0 -0
  231. /package/dist/{src/app → app}/charts/series/ordinalSeries.js +0 -0
  232. /package/dist/{src/app → app}/charts/series/timeSeries.d.ts +0 -0
  233. /package/dist/{src/app → app}/charts/series/timeSeries.js +0 -0
  234. /package/dist/{src/app → app}/charts/series/timeSeriesChartData.d.ts +0 -0
  235. /package/dist/{src/app → app}/charts/series/timeSeriesChartData.js +0 -0
  236. /package/dist/{src/app → app}/charts/styling/barPlotStyle.d.ts +0 -0
  237. /package/dist/{src/app → app}/charts/styling/barPlotStyle.js +0 -0
  238. /package/dist/{src/app → app}/charts/styling/margins.d.ts +0 -0
  239. /package/dist/{src/app → app}/charts/styling/margins.js +0 -0
  240. /package/dist/{src/app → app}/charts/styling/margins.test.d.ts +0 -0
  241. /package/dist/{src/app → app}/charts/styling/margins.test.js +0 -0
  242. /package/dist/{src/app → app}/charts/styling/svgStyle.d.ts +0 -0
  243. /package/dist/{src/app → app}/charts/styling/svgStyle.js +0 -0
  244. /package/dist/{src/app → app}/charts/subscriptions/subscription.test.d.ts +0 -0
  245. /package/dist/{src/app → app}/charts/subscriptions/subscription.test.js +0 -0
  246. /package/dist/{src/app → app}/charts/subscriptions/subscriptions.d.ts +0 -0
  247. /package/dist/{src/app → app}/charts/subscriptions/subscriptions.js +0 -0
  248. /package/dist/{src/app → app}/charts/tooltips/tooltipUtils.d.ts +0 -0
  249. /package/dist/{src/app → app}/charts/tooltips/tooltipUtils.js +0 -0
  250. /package/dist/{src/app → app}/charts/trackers/trackerUtils.d.ts +0 -0
  251. /package/dist/{src/app → app}/charts/trackers/trackerUtils.js +0 -0
  252. /package/dist/{src/app → app}/charts/utils.d.ts +0 -0
  253. /package/dist/{src/app → app}/charts/utils.js +0 -0
@@ -42,7 +42,7 @@ function generateAxisRangeMap(axes: Map<string, BaseAxis>): Map<string, Continuo
42
42
  // that no line will be drawn between the iterates (kinda gross)
43
43
  export const NoCurveFactory: CurveFactory = undefined as unknown as CurveFactory;
44
44
 
45
- interface Props {
45
+ export interface Props {
46
46
  /**
47
47
  * The line interpolation curve factory. See the d3 documentation for curves at
48
48
  * {@link https://github.com/d3/d3-shape#curves} for information on available interpolations
@@ -101,7 +101,6 @@ interface Props {
101
101
  * chart ecosystem (axes, tracker, tooltip).
102
102
  *
103
103
  * @param props The properties associated with the scatter plot
104
- * @constructor
105
104
  * @example
106
105
  * ```typescript
107
106
  * <ScatterPlot
@@ -30,7 +30,7 @@ import {AxisInterval} from "../axes/AxisInterval";
30
30
  import {Optional} from "result-fn";
31
31
  import {ContinuousAxisRange} from "../axes/ContinuousAxisRange";
32
32
 
33
- interface Props {
33
+ export interface Props {
34
34
  /**
35
35
  * Holds the mapping between a series and the axis it uses (is assigned). The
36
36
  * map's key holds the series name, and the value is an {@link AxesAssignment}
@@ -78,7 +78,6 @@ interface Props {
78
78
  * chart ecosystem (axes, tracker, tooltip).
79
79
  *
80
80
  * @param props The properties associated with the raster plot
81
- * @constructor
82
81
  * @example
83
82
  <RasterPlot
84
83
  axisAssignments={new Map([
@@ -101,7 +100,8 @@ export function RasterPlot(props: Props): null {
101
100
  color,
102
101
  seriesStyles,
103
102
  seriesFilter,
104
- mouse
103
+ mouse,
104
+ hoveredSeriesRef,
105
105
  } = useChart<Datum, SeriesLineStyle, NoTooltipMetadata, ContinuousAxisRange, ContinuousNumericAxis>()
106
106
 
107
107
  const {
@@ -354,11 +354,21 @@ export function RasterPlot(props: Props): null {
354
354
  )
355
355
 
356
356
  // grab the series styles, or the defaults if none exist
357
- const {color, lineWidth, margin: spikeLineMargin = spikeMargin} = seriesStyles.get(series.name) || {
357
+ const {
358
+ color,
359
+ lineWidth,
360
+ highlightColor,
361
+ highlightWidth,
362
+ margin: spikeLineMargin = spikeMargin
363
+ } = seriesStyles.get(series.name) || {
358
364
  ...defaultLineStyle(),
359
365
  highlightColor: defaultLineStyle().color
360
366
  }
361
367
 
368
+ const isHovered = hoveredSeriesRef.current === series.name
369
+ const strokeColor = isHovered ? highlightColor : color
370
+ const strokeWidth = isHovered ? (highlightWidth || lineWidth) : lineWidth
371
+
362
372
  // only show the data for which the regex filter matches
363
373
  const plotData = (series.name.match(seriesFilter)) ? series.data : []
364
374
 
@@ -381,8 +391,9 @@ export function RasterPlot(props: Props): null {
381
391
  .attr('x2', datum => datum.x)
382
392
  .attr('y1', _ => yUpper(y))
383
393
  .attr('y2', _ => yLower(y))
384
- .attr('stroke', color)
385
- .attr('stroke-width', lineWidth)
394
+ .attr('stroke', strokeColor)
395
+ .attr('stroke-width', strokeWidth)
396
+ .attr('data-series-name', series.name)
386
397
  .attr('class', 'spikes-lines')
387
398
  .on(
388
399
  "mouseover",
@@ -417,7 +428,8 @@ export function RasterPlot(props: Props): null {
417
428
  .attr('x2', datum => datum.x)
418
429
  .attr('y1', _ => yUpper(y))
419
430
  .attr('y2', _ => yLower(y))
420
- .attr('stroke', color)
431
+ .attr('stroke', strokeColor)
432
+ .attr('stroke-width', strokeWidth)
421
433
 
422
434
  // exit old elements
423
435
  seriesContainer.exit().remove()
@@ -432,7 +444,8 @@ export function RasterPlot(props: Props): null {
432
444
  seriesFilter, seriesStyles,
433
445
  xAxesState, yAxesState,
434
446
  zoomEnabled, zoomKeyModifiersRequired,
435
- spikeMargin
447
+ spikeMargin,
448
+ hoveredSeriesRef
436
449
  ]
437
450
  )
438
451
 
@@ -33,7 +33,7 @@ import {AxisInterval} from "../axes/AxisInterval";
33
33
  import {Optional} from "result-fn";
34
34
  import {ContinuousAxisRange} from "../axes/ContinuousAxisRange";
35
35
 
36
- interface Props {
36
+ export interface Props {
37
37
  /**
38
38
  * Holds the mapping between a series and the axis it uses (is assigned). The
39
39
  * map's key holds the series name, and the value is an {@link AxesAssignment}
@@ -83,7 +83,6 @@ interface Props {
83
83
  * chart ecosystem (axes, tracker, tooltip).
84
84
  *
85
85
  * @param props The properties associated with the scatter plot
86
- * @constructor
87
86
  * @example
88
87
  <ScatterPlot
89
88
  interpolation={interpolation}
@@ -105,8 +104,8 @@ export function ScatterPlot(props: Props): null {
105
104
  color,
106
105
  seriesStyles,
107
106
  seriesFilter,
108
-
109
- mouse
107
+ mouse,
108
+ hoveredSeriesRef,
110
109
  } = useChart<Datum, SeriesLineStyle, NoTooltipMetadata, ContinuousAxisRange, ContinuousNumericAxis>()
111
110
 
112
111
  const {
@@ -370,10 +369,7 @@ export function ScatterPlot(props: Props): null {
370
369
  if (xAxisLinear === undefined || yAxisLinear === undefined) return
371
370
 
372
371
  // grab the style for the series
373
- const {color, lineWidth} = seriesStyles.get(name) || {
374
- ...defaultLineStyle(),
375
- highlightColor: defaultLineStyle().color
376
- }
372
+ const {color, lineWidth, highlightColor, highlightWidth} = seriesStyles.get(name) || defaultLineStyle()
377
373
 
378
374
  // only show the data for which the filter matches
379
375
  const plotData = (name.match(seriesFilter)) ? data : []
@@ -387,6 +383,7 @@ export function ScatterPlot(props: Props): null {
387
383
  .append("path")
388
384
  .attr("class", 'time-series-lines')
389
385
  .attr("id", `${name}-${chartId}-scatter`)
386
+ .attr("data-series-name", name)
390
387
  .attr(
391
388
  "d",
392
389
  d3.line<Datum>()
@@ -395,8 +392,8 @@ export function ScatterPlot(props: Props): null {
395
392
  .curve(interpolation)
396
393
  )
397
394
  .attr("fill", "none")
398
- .attr("stroke", color)
399
- .attr("stroke-width", lineWidth)
395
+ .attr("stroke", hoveredSeriesRef.current === name ? highlightColor : color)
396
+ .attr("stroke-width", hoveredSeriesRef.current === name ? highlightWidth : lineWidth)
400
397
  .attr('transform', `translate(${margin.left}, ${margin.top})`)
401
398
  .attr("clip-path", `url(#${clipPathId})`)
402
399
  .on(
@@ -435,7 +432,8 @@ export function ScatterPlot(props: Props): null {
435
432
  zoomKeyModifiersRequired, onZoom, axisAssignments,
436
433
  xAxesState, yAxesState,
437
434
  seriesStyles, seriesFilter, interpolation,
438
- mouseOverHandlerFor, mouseLeaveHandlerFor
435
+ mouseOverHandlerFor, mouseLeaveHandlerFor,
436
+ hoveredSeriesRef
439
437
  ]
440
438
  )
441
439
 
@@ -85,7 +85,7 @@ import {ContinuousAxisRange} from "../axes/ContinuousAxisRange";
85
85
  * xFormatter, yFormatter
86
86
  * ```
87
87
  */
88
- interface Props {
88
+ export interface Props {
89
89
  ordinalUnits?: string
90
90
  style?: Partial<TooltipStyle>
91
91
  }
@@ -103,7 +103,6 @@ interface Props {
103
103
  * content to the SVG element.
104
104
  * @param props The properties describing the tooltip content
105
105
  * @return null
106
- * @constructor
107
106
  */
108
107
  export function BarPlotTooltipContent(props: Props): null {
109
108
  const {
@@ -93,7 +93,7 @@ import {ContinuousAxisRange} from "../axes/ContinuousAxisRange";
93
93
  * yLabel yValueFormatter yValueFormatter yChangeFormatter
94
94
  * ```
95
95
  */
96
- interface Props {
96
+ export interface Props {
97
97
  // label for the x-values (x-value row header)
98
98
  xLabel: string
99
99
  yLabel: string
@@ -125,7 +125,6 @@ interface Props {
125
125
  * content to the SVG element.
126
126
  * @param props The properties describing the tooltip content
127
127
  * @return null
128
- * @constructor
129
128
  */
130
129
  export function PoincarePlotTooltipContent(props: Props): null {
131
130
  const {
@@ -90,7 +90,7 @@ interface TooltipOptions {
90
90
  * xFormatter, yFormatter
91
91
  * ```
92
92
  */
93
- interface Props {
93
+ export interface Props {
94
94
  xFormatter?: (value: number) => string
95
95
  yFormatter?: (value: number) => string
96
96
  style?: Partial<TooltipStyle>
@@ -109,7 +109,6 @@ interface Props {
109
109
  * content to the SVG element.
110
110
  * @param props The properties describing the tooltip content
111
111
  * @return null
112
- * @constructor
113
112
  */
114
113
  export function RasterPlotTooltipContent(props: Props): null {
115
114
  const {
@@ -98,7 +98,7 @@ interface TooltipOptions {
98
98
  * yLabel yValueFormatter yValueFormatter yChangeFormatter
99
99
  * ```
100
100
  */
101
- interface Props {
101
+ export interface Props {
102
102
  // label for the x-values (x-value row header)
103
103
  xLabel: string
104
104
  yLabel: string
@@ -130,7 +130,6 @@ interface Props {
130
130
  * content to the SVG element.
131
131
  * @param props The properties describing the tooltip content
132
132
  * @return null
133
- * @constructor
134
133
  */
135
134
  export function ScatterPlotTooltipContent(props: Props): null {
136
135
  const {
@@ -243,6 +242,7 @@ function addTooltipContent(
243
242
  .attr('font-family', 'sans-serif')
244
243
  .attr('font-size', tooltipStyle.fontSize)
245
244
  .attr('font-weight', tooltipStyle.fontWeight)
245
+ .attr('fill-opacity', tooltipStyle.borderOpacity)
246
246
  .text(() => seriesName)
247
247
 
248
248
 
@@ -256,6 +256,7 @@ function addTooltipContent(
256
256
  .attr('font-family', 'sans-serif')
257
257
  .attr('font-size', tooltipStyle.fontSize + 2)
258
258
  .attr('font-weight', tooltipStyle.fontWeight + 150)
259
+ .attr('fill-opacity', tooltipStyle.borderOpacity)
259
260
 
260
261
 
261
262
  const headerRow = table.append('g').attr('font-weight', tooltipStyle.fontWeight + 550)
@@ -15,14 +15,14 @@ export interface Props {
15
15
 
16
16
  /**
17
17
  * Tooltip component triggered by mouse-over-series events. When mounted, the tooltip component
18
- * registers a mouse-over handler with the {@link useChart} hook using the
19
- * {@link UseChartValues.registerTooltipContentProvider} function. The handler renders the tooltip
18
+ * registers a mouse-over handler with the {@link useMouse} hook using the
19
+ * {@link UseMouseValues.registerMouseOverHandler} function. The handler renders the tooltip
20
20
  * by adding it to the SVG plot container. However, to remain general, this {@link Tooltip} also
21
- * uses the {@link useChart}'s {@link UseChartValues.tooltipContentProvider} to render the actual
21
+ * uses the {@link useTooltip}'s {@link UseTooltipValues.tooltipContentProvider} to render the actual
22
22
  * content of the tooltip. The content provider is given the series' name on which the mouse-over
23
23
  * event occurred, the plot time associated with mouse-over event, and the {@link TimeSeries}
24
24
  * associated with the mouse-over event. The plot (for example {@link ScatterPlot}) is responsible
25
- * for rendering the tooltip, and it registers this tooltip-content provider with the {@link useChart}
25
+ * for rendering the tooltip, and it registers this tooltip-content provider with the {@link useTooltip}
26
26
  * hook.
27
27
  *
28
28
  * The {@link useChart} hook allows the plots and this tooltip to register methods needed its siblings.
@@ -30,22 +30,21 @@ export interface Props {
30
30
  * ## on mount
31
31
  * 1. The plot (for example {@link ScatterPlot}) adds a d3 mouse-enter and mouse-leave event handlers
32
32
  * to each series. The mouse-enter event handler performs a few tasks and then calls the
33
- * mouse-over event handler registered by the {@link Tooltip} via the {@link useChart} hook.
34
- * 2. The plot (for example {@link ScatterPlot}) registers the tooltip-content provider with the {@link useChart}
35
- * hook using the {@link UseChartValues.registerTooltipContentProvider} function.
33
+ * mouse-over event handler registered by the {@link Tooltip} via the {@link useMouse} hook.
34
+ * 2. The plot (for example {@link ScatterPlot}) registers the tooltip-content provider with the {@link useTooltip}
35
+ * hook using the {@link UseTooltipValues.registerTooltipContentProvider} function.
36
36
  * 3. {@link Tooltip} registers the handler for mouse-over events. The handler accepts the series
37
37
  * name, plot time, and time-series associated with the mouse-over event, and returns the tooltip
38
- * dimensions. In order to create/render the tooltip, it uses the {@link UseChartValues.tooltipContentProvider}
39
- * function that was registered via the {@link useChart} hook.
38
+ * dimensions. In order to create/render the tooltip, it uses the {@link UseTooltipValues.tooltipContentProvider}
39
+ * function that was registered via the {@link useTooltip} hook.
40
40
  *
41
41
  * ## on mouse-over event
42
42
  * When the plot's (for example {@link ScatterPlot}) d3 mouse-enter event handler fires, the plot calls this
43
- * {@link Tooltip}'s mouse-over handler, which creates the tooltip, and calls the {@link UseChartValues.tooltipContentProvider}
43
+ * {@link Tooltip}'s mouse-over handler, which creates the tooltip, and calls the {@link UseTooltipValues.tooltipContentProvider}
44
44
  * registered by the plot to render the tooltip content, and get the tooltip size.
45
45
  *
46
46
  * @param props The properties of the tooltip (i.e. visibility and style)
47
47
  * @return null
48
- * @constructor
49
48
  */
50
49
  export function Tooltip<D, S extends SeriesStyle, TM, AR extends BaseAxisRange, A extends BaseAxis>(props: Props): JSX.Element {
51
50
  const {
@@ -109,6 +108,7 @@ export function Tooltip<D, S extends SeriesStyle, TM, AR extends BaseAxisRange,
109
108
  .attr('fill-opacity', tooltipStyle.backgroundOpacity)
110
109
  .attr('stroke', tooltipStyle.borderColor)
111
110
  .attr('stroke-width', tooltipStyle.borderWidth)
111
+ .attr('stroke-opacity', tooltipStyle.borderOpacity)
112
112
 
113
113
  // call the callback to add the content
114
114
  const {
@@ -27,7 +27,7 @@ export enum TrackerLabelLocation {
27
27
  ByAxis,
28
28
  }
29
29
 
30
- interface Props {
30
+ export interface Props {
31
31
  visible: boolean
32
32
  trackerAxis?: AxisLocation
33
33
  labelLocation?: TrackerLabelLocation
@@ -42,7 +42,6 @@ interface Props {
42
42
  * handles single axes and dual axes.
43
43
  * @param props The tracker control properties
44
44
  * @return null component
45
- * @constructor
46
45
  */
47
46
  export function Tracker(props: Props): null {
48
47
  const {
package/src/index.ts ADDED
@@ -0,0 +1,322 @@
1
+ export {Chart} from './app/charts/Chart'
2
+
3
+ export {
4
+ type AxisElementSelection,
5
+ type SvgSelection,
6
+ type GSelection,
7
+ type LineSelection,
8
+ type TextSelection,
9
+ type RadialMagnifierSelection,
10
+ type BarMagnifierSelection,
11
+ type MagnifierTextSelection,
12
+ type TrackerSelection
13
+ } from './app/charts/d3types'
14
+
15
+ export {
16
+ noop,
17
+ mouseInPlotAreaFor,
18
+ textWidthOf,
19
+ textDimensions,
20
+ formatNumber, formatTime, formatValue, formatChange, formatTimeChange, formatValueChange,
21
+ minMaxOf
22
+ } from './app/charts/utils'
23
+
24
+ //
25
+ // axes
26
+ //
27
+
28
+ export {
29
+ type AxisTickStyle, defaultAxisTickStyle,
30
+ type AxesFont, defaultAxesFont,
31
+ type SeriesStyle,
32
+ type SeriesLineStyle, defaultLineStyle,
33
+ type BaseAxis, type ContinuousNumericAxis, type OrdinalStringAxis,
34
+ AxisLocation,
35
+ addOrdinalStringAxis,
36
+ labelIdFor,
37
+ type ZoomResult,
38
+ calculateOrdinalConstrainedZoomFor, calculateConstrainedZoomFor,
39
+ ordinalAxisZoomHandler, axesZoomHandler,
40
+ calculatePanFor, panHandler, panHandler2D,
41
+ axesForSeriesGen,
42
+ continuousAxisRanges, continuousAxisIntervals, continuousRange
43
+ } from './app/charts/axes/axes'
44
+
45
+ export {AxisInterval} from './app/charts/axes/AxisInterval'
46
+
47
+ export {
48
+ ContinuousAxis,
49
+ } from './app/charts/axes/ContinuousAxis'
50
+
51
+ export {
52
+ type ContinuousAxisRange,
53
+ } from './app/charts/axes/ContinuousAxisRange'
54
+
55
+ export {
56
+ OrdinalAxis,
57
+ } from './app/charts/axes/OrdinalAxis'
58
+
59
+ export {
60
+ type OrdinalAxisRange,
61
+ } from './app/charts/axes/OrdinalAxisRange'
62
+
63
+ export {
64
+ EmptyAxis,
65
+ } from './app/charts/axes/EmptyAxis'
66
+
67
+ //
68
+ // filters
69
+ //
70
+
71
+ export {
72
+ regexFilter
73
+ } from './app/charts/filters/regexFilter'
74
+
75
+ //
76
+ // hooks
77
+ //
78
+
79
+ export {
80
+ type AxesState,
81
+ } from './app/charts/axes/AxesState'
82
+
83
+ export {
84
+ useAxes,
85
+ type UseAxesValues, defaultAxesValues,
86
+ } from './app/charts/hooks/useAxes'
87
+
88
+ export {
89
+ useChart,
90
+ type NoTooltipMetadata,
91
+ type UseChartValues,
92
+ } from './app/charts/hooks/useChart'
93
+
94
+ export {
95
+ useDataObservable,
96
+ type UseObservableValues,
97
+ } from './app/charts/hooks/useDataObservable'
98
+
99
+ export {
100
+ useInitialData,
101
+ type UseInitialDataValues,
102
+ } from './app/charts/hooks/useInitialData'
103
+
104
+ export {
105
+ useMouse,
106
+ type UseMouseValues, defaultMouseValues,
107
+ } from './app/charts/hooks/useMouse'
108
+
109
+ export {
110
+ usePlotDimensions,
111
+ type UsePlotDimensionsValues, defaultPlotDimensions,
112
+ defaultMargin,
113
+ } from './app/charts/hooks/usePlotDimensions'
114
+
115
+ export {
116
+ useTooltip,
117
+ type UseTooltipValues, defaultTooltipValues,
118
+ type TooltipData,
119
+ type TooltipContentProvider,
120
+ } from './app/charts/hooks/useTooltip'
121
+
122
+ //
123
+ // observables
124
+ //
125
+ //
126
+
127
+ export {
128
+ type ChartData, defaultChartData,
129
+ copyChartData
130
+ } from './app/charts/observables/ChartData'
131
+
132
+ export {
133
+ type IterateChartData,
134
+ copyIterateDataFrom,
135
+ iteratesObservable
136
+ } from './app/charts/observables/iterates'
137
+
138
+ export {
139
+ ordinalsObservable,
140
+ type OrdinalChartData,
141
+ type OrdinalStats, defaultOrdinalStats,
142
+ type OrdinalValueStats, defaultOrdinalValueStats,
143
+ type OrdinalDatumExtremum,
144
+ initialMinValueDatum, initialMaxValueDatum,
145
+ initialMinTimeDatum, initialMaxTimeDatum,
146
+ valueStatusDatumOfDefault,
147
+ isDefaultValueStatsDatum,
148
+ copyOrdinalDataFrom, copyOrdinalStats, copyOrdinalValueStats,
149
+ copyValueStatsForSeries, copyOrdinalDatumExtremum,
150
+ } from './app/charts/observables/ordinals'
151
+
152
+ //
153
+ // plots
154
+ //
155
+
156
+ export {
157
+ type Series,
158
+ createPlotContainer,
159
+ type AxesAssignment,
160
+ setClipPathG,
161
+ assignAxes
162
+ } from './app/charts/plots/plot'
163
+
164
+ export {
165
+ BarPlot,
166
+ } from './app/charts/plots/BarPlot'
167
+
168
+ export {
169
+ NoCurveFactory,
170
+ PoincarePlot,
171
+ } from './app/charts/plots/PoincarePlot'
172
+
173
+ export {
174
+ RasterPlot,
175
+ } from './app/charts/plots/RasterPlot'
176
+
177
+ export {
178
+ ScatterPlot,
179
+ } from './app/charts/plots/ScatterPlot'
180
+
181
+ //
182
+ // series
183
+ //
184
+ export {
185
+ type BaseSeries,
186
+ seriesFrom,
187
+ emptySeries,
188
+ emptySeriesFor
189
+ } from './app/charts/series/baseSeries'
190
+
191
+ export {
192
+ type IterateDatum, emptyIterateDatum, iterateDatumOf, nonEmptyIterateDatum,
193
+ type IterateSeries,
194
+ iterateSeriesFromTuples,
195
+ } from './app/charts/series/iterateSeries'
196
+
197
+ export {
198
+ type OrdinalDatum, emptyOrdinalDatum, copyOrdinalDatum, ordinalDatumOf, nonEmptyOrdinalDatum,
199
+ type OrdinalSeries,
200
+ ordinateSeriesFromTuples,
201
+ initialOrdinalChartData,
202
+ } from './app/charts/series/ordinalSeries'
203
+
204
+ export {
205
+ type TimeSeriesChartData,
206
+ emptyTimeSeriesChartData,
207
+ initialTimeSeriesChartData,
208
+ } from './app/charts/series/timeSeriesChartData'
209
+
210
+ export {
211
+ type Datum,
212
+ datumOf,
213
+ emptyDatum,
214
+ type TimeSeries,
215
+ timeSeriesFromTuples,
216
+ type PixelDatum
217
+ } from './app/charts/series/timeSeries'
218
+
219
+ //
220
+ // styling
221
+ //
222
+
223
+ export {
224
+ type BarSeriesStyle, type BarStyle, type LineStyle,
225
+ defaultBarSeriesStyle,
226
+ defaultMinMaxBarStyle, defaultWindowedMinMaxBarStyle, defaultWindowedMeanValueLineStyle,
227
+ defaultValueLineStyle, defaultMeanValueLineStyle
228
+ } from './app/charts/styling/barPlotStyle'
229
+
230
+ export {
231
+ type Margin,
232
+ noMargins,
233
+ type Dimensions,
234
+ plotDimensionsFrom, containerDimensionsFrom
235
+ } from './app/charts/styling/margins'
236
+
237
+ export {
238
+ type SvgStyle, initialSvgStyle,
239
+ grabWidth, grabHeight,
240
+ type SvgStrokeStyle,
241
+ STROKE_COLOR, STROKE_WIDTH, STROKE_OPACITY,
242
+ updateSvgStrokeColor, updateSvgStrokeWidth, updateSvgStrokeOpacity, applyStrokeStylesTo,
243
+ type SvgFillStyle,
244
+ updateSvgFillColor, updateSvgFillOpacity, applyFillStylesTo
245
+
246
+ } from './app/charts/styling/svgStyle'
247
+
248
+ //
249
+ // subscriptions
250
+ //
251
+
252
+ export {
253
+ TimeWindowBehavior,
254
+ subscriptionTimeSeriesFor, subscriptionTimeSeriesWithCadenceFor,
255
+ subscriptionIteratesFor,
256
+ type WindowedOrdinalStats,
257
+ subscriptionOrdinalXFor
258
+ } from './app/charts/subscriptions/subscriptions'
259
+
260
+ //
261
+ // tooltips
262
+ //
263
+
264
+ export {
265
+ BarPlotTooltipContent,
266
+ } from './app/charts/tooltips/BarPlotTooltipContent'
267
+
268
+ export {
269
+ PoincarePlotTooltipContent,
270
+ } from './app/charts/tooltips/PoincarePlotTooltipContent'
271
+
272
+ export {
273
+ RasterPlotTooltipContent,
274
+ } from './app/charts/tooltips/RasterPlotTooltipContent'
275
+
276
+ export {
277
+ ScatterPlotTooltipContent,
278
+ } from './app/charts/tooltips/ScatterPlotTooltipContent'
279
+
280
+ export {
281
+ Tooltip,
282
+ } from './app/charts/tooltips/Tooltip'
283
+
284
+ export {
285
+ type TooltipStyle, defaultTooltipStyle,
286
+ type TooltipDimensions,
287
+ removeTooltip,
288
+ tooltipX, tooltipY,
289
+ categoryTooltipY,
290
+ boundingPoints,
291
+ findPointAndNeighbors
292
+ } from './app/charts/tooltips/tooltipUtils'
293
+
294
+ //
295
+ // trackers
296
+ //
297
+
298
+ export {
299
+ type TrackerAxisInfo,
300
+ type TrackerAxisUpdate,
301
+ TrackerLabelLocation,
302
+ Tracker,
303
+ } from './app/charts/trackers/Tracker'
304
+
305
+ export {
306
+ type TrackerLabelFont, defaultTrackerLabelFont,
307
+ type TrackerStyle, defaultTrackerStyle,
308
+ trackerControlInstance,
309
+ removeTrackerControl,
310
+ } from './app/charts/trackers/trackerUtils'
311
+
312
+
313
+ //
314
+ // legend
315
+ //
316
+
317
+ export {
318
+ Legend,
319
+ defaultLegendStyle,
320
+ LegendLocation,
321
+ type LegendStyle
322
+ } from './app/charts/legends/Legend'
@@ -1 +0,0 @@
1
- {"version":3,"file":"Chart.js","sourceRoot":"","sources":["../../../../src/app/charts/Chart.tsx"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"AxesState.js","sourceRoot":"","sources":["../../../../../src/app/charts/axes/AxesState.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,QAAQ,EAAC,MAAM,WAAW,CAAC;AAEnC;;;;;;GAMG;AACH,MAAM,OAAO,SAAS;IAGlB,YAAoB,IAAoB;QACpC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IACpB,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,IAAI,CAAqB,IAAoB;QAChD,OAAO,IAAI,SAAS,CAAI,IAAI,CAAC,CAAA;IACjC,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,KAAK;QACR,OAAO,IAAI,SAAS,CAAI,IAAI,GAAG,EAAa,CAAC,CAAA;IACjD,CAAC;IAED;;OAEG;IACH,OAAO;QACH,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,CAAA;IAC/B,CAAC;IAED;;;OAGG;IACH,IAAI;QACA,OAAO,IAAI,SAAS,CAChB,IAAI,GAAG,CAAY,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;aAC7C,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,oBAAM,IAAI,EAAE,CAAC,CACxC,CACJ,CAAA;IACL,CAAC;IAED;;;;;;;;;OASG;IACH,OAAO,CAAC,IAAO,EAAE,EAAU;QACvB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA;QAC3C,OAAO,IAAI,SAAS,CAAI,WAAW,CAAC,CAAA;IACxC,CAAC;IAED;;;;OAIG;IACH,OAAO,CAAC,MAAc;QAClB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAClC,mEAAmE;QACnE,wDAAwD;QACxD,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC;YAC5C,OAAO,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACzD,CAAC;QACD,OAAO,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;IACpC,CAAC;IAED;;;;OAIG;IACH,WAAW;QACP,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;QAC3C,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACpB,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACtB,QAAQ,CAAC,KAAK,EAAE,CAAA;IACxB,CAAC;IAED;;OAEG;IACH,OAAO;QACH,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;IACvC,CAAC;IAED;;OAEG;IACH,aAAa;QACT,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;QACxC,OAAO,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACnB,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACrB,QAAQ,CAAC,KAAK,EAAE,CAAA;IACxB,CAAC;CACJ"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"AxesState.test.js","sourceRoot":"","sources":["../../../../../src/app/charts/axes/AxesState.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,aAAa,CAAC;AACtC,OAAO,EAAC,YAAY,EAAW,MAAM,QAAQ,CAAC;AAG9C,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;IACvB,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;QACjC,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;YACzC,MAAM,CAAC,SAAS,CAAC,KAAK,EAAY,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC5D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;YACjD,MAAM,IAAI,GAAa;gBACnB,MAAM,EAAE,UAAU;gBAClB,QAAQ,EAAE,YAAY,CAAC,MAAM;gBAC7B,SAAS,EAAE,SAA4C;aAC1D,CAAA;YACD,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAW,IAAI,GAAG,CAAC,CAAC,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAChF,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,gEAAgE,EAAE,GAAG,EAAE;YACtE,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,EAAY,CAAC;YAC9C,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEvC,MAAM,IAAI,GAAa;gBACnB,MAAM,EAAE,UAAU;gBAClB,QAAQ,EAAE,YAAY,CAAC,MAAM;gBAC7B,SAAS,EAAE,SAA4C;aAC1D,CAAA;YACD,MAAM,gBAAgB,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;YACnE,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnD,CAAC,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;AACN,CAAC,CAAC,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"AxisInterval.js","sourceRoot":"","sources":["../../../../../src/app/charts/axes/AxisInterval.ts"],"names":[],"mappings":"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"}