stream-charts 1.0.1 → 1.1.1

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 (271) hide show
  1. package/README.md +757 -342
  2. package/changes.md +11 -0
  3. package/dist/src/app/charts/Chart.d.ts +116 -87
  4. package/dist/src/app/charts/Chart.js +96 -101
  5. package/dist/src/app/charts/Chart.js.map +1 -1
  6. package/dist/src/app/charts/axes/AxesState.d.ts +64 -0
  7. package/dist/src/app/charts/axes/AxesState.js +97 -0
  8. package/dist/src/app/charts/axes/AxesState.js.map +1 -0
  9. package/dist/src/app/charts/axes/AxesState.test.js +30 -0
  10. package/dist/src/app/charts/axes/AxesState.test.js.map +1 -0
  11. package/dist/src/app/charts/axes/AxisInterval.d.ts +92 -0
  12. package/dist/src/app/charts/axes/AxisInterval.js +126 -0
  13. package/dist/src/app/charts/axes/AxisInterval.js.map +1 -0
  14. package/dist/src/app/charts/axes/AxisInterval.test.js +120 -0
  15. package/dist/src/app/charts/axes/AxisInterval.test.js.map +1 -0
  16. package/dist/src/app/charts/axes/BaseAxisRange.d.ts +83 -0
  17. package/dist/src/app/charts/axes/BaseAxisRange.js +58 -0
  18. package/dist/src/app/charts/axes/BaseAxisRange.js.map +1 -0
  19. package/dist/src/app/charts/axes/ContinuousAxis.d.ts +22 -0
  20. package/dist/src/app/charts/axes/ContinuousAxis.js +96 -0
  21. package/dist/src/app/charts/axes/ContinuousAxis.js.map +1 -0
  22. package/dist/src/app/charts/axes/ContinuousAxisRange.d.ts +59 -0
  23. package/dist/src/app/charts/axes/ContinuousAxisRange.js +84 -0
  24. package/dist/src/app/charts/axes/ContinuousAxisRange.js.map +1 -0
  25. package/dist/src/app/charts/axes/ContinuousAxisRange.test.js +47 -0
  26. package/dist/src/app/charts/axes/ContinuousAxisRange.test.js.map +1 -0
  27. package/dist/src/app/charts/axes/OrdinalAxis.d.ts +23 -0
  28. package/dist/src/app/charts/axes/OrdinalAxis.js +124 -0
  29. package/dist/src/app/charts/axes/OrdinalAxis.js.map +1 -0
  30. package/dist/src/app/charts/axes/OrdinalAxisRange.d.ts +69 -0
  31. package/dist/src/app/charts/axes/OrdinalAxisRange.js +100 -0
  32. package/dist/src/app/charts/axes/OrdinalAxisRange.js.map +1 -0
  33. package/dist/src/app/charts/axes/OrdinalAxisRange.test.js +48 -0
  34. package/dist/src/app/charts/axes/OrdinalAxisRange.test.js.map +1 -0
  35. package/dist/src/app/charts/axes/axes.d.ts +391 -0
  36. package/dist/src/app/charts/axes/axes.js +1046 -0
  37. package/dist/src/app/charts/axes/axes.js.map +1 -0
  38. package/dist/src/app/charts/d3types.d.ts +10 -10
  39. package/dist/src/app/charts/filters/regexFilter.d.ts +9 -0
  40. package/dist/src/app/charts/filters/regexFilter.js +18 -0
  41. package/dist/src/app/charts/filters/regexFilter.js.map +1 -0
  42. package/dist/src/app/charts/filters/regexFilter.test.d.ts +1 -0
  43. package/dist/src/app/charts/filters/regexFilter.test.js +11 -0
  44. package/dist/src/app/charts/filters/regexFilter.test.js.map +1 -0
  45. package/dist/src/app/charts/hooks/useAxes.d.ts +144 -0
  46. package/dist/src/app/charts/hooks/useAxes.js +187 -0
  47. package/dist/src/app/charts/hooks/useAxes.js.map +1 -0
  48. package/dist/src/app/charts/hooks/useChart.d.ts +30 -201
  49. package/dist/src/app/charts/hooks/useChart.js +33 -134
  50. package/dist/src/app/charts/hooks/useChart.js.map +1 -1
  51. package/dist/src/app/charts/hooks/useDataObservable.d.ts +74 -0
  52. package/dist/src/app/charts/hooks/useDataObservable.js +76 -0
  53. package/dist/src/app/charts/hooks/useDataObservable.js.map +1 -0
  54. package/dist/src/app/charts/hooks/useInitialData.d.ts +38 -0
  55. package/dist/src/app/charts/hooks/useInitialData.js +29 -0
  56. package/dist/src/app/charts/hooks/useInitialData.js.map +1 -0
  57. package/dist/src/app/charts/hooks/useMouse.d.ts +53 -0
  58. package/dist/src/app/charts/hooks/useMouse.js +65 -0
  59. package/dist/src/app/charts/hooks/useMouse.js.map +1 -0
  60. package/dist/src/app/charts/hooks/usePlotDimensions.d.ts +34 -0
  61. package/dist/src/app/charts/hooks/usePlotDimensions.js +73 -0
  62. package/dist/src/app/charts/hooks/usePlotDimensions.js.map +1 -0
  63. package/dist/src/app/charts/hooks/useTooltip.d.ts +64 -0
  64. package/dist/src/app/charts/hooks/useTooltip.js +52 -0
  65. package/dist/src/app/charts/hooks/useTooltip.js.map +1 -0
  66. package/dist/src/app/charts/observables/ChartData.d.ts +23 -0
  67. package/dist/src/app/charts/observables/ChartData.js +20 -0
  68. package/dist/src/app/charts/observables/ChartData.js.map +1 -0
  69. package/dist/src/app/charts/observables/iterates.d.ts +52 -0
  70. package/dist/src/app/charts/observables/iterates.js +121 -0
  71. package/dist/src/app/charts/observables/iterates.js.map +1 -0
  72. package/dist/src/app/charts/observables/iterates.test.d.ts +1 -0
  73. package/dist/src/app/charts/observables/iterates.test.js +180 -0
  74. package/dist/src/app/charts/observables/iterates.test.js.map +1 -0
  75. package/dist/src/app/charts/observables/ordinals.d.ts +75 -0
  76. package/dist/src/app/charts/observables/ordinals.js +141 -0
  77. package/dist/src/app/charts/observables/ordinals.js.map +1 -0
  78. package/dist/src/app/charts/observables/ordinals.test.d.ts +1 -0
  79. package/dist/src/app/charts/observables/ordinals.test.js +102 -0
  80. package/dist/src/app/charts/observables/ordinals.test.js.map +1 -0
  81. package/dist/src/app/charts/plots/BarPlot.d.ts +81 -0
  82. package/dist/src/app/charts/plots/BarPlot.js +557 -0
  83. package/dist/src/app/charts/plots/BarPlot.js.map +1 -0
  84. package/dist/src/app/charts/plots/PoincarePlot.d.ts +78 -0
  85. package/dist/src/app/charts/plots/PoincarePlot.js +504 -0
  86. package/dist/src/app/charts/plots/PoincarePlot.js.map +1 -0
  87. package/dist/src/app/charts/{RasterPlot.d.ts → plots/RasterPlot.d.ts} +1 -1
  88. package/dist/src/app/charts/{RasterPlot.js → plots/RasterPlot.js} +152 -133
  89. package/dist/src/app/charts/plots/RasterPlot.js.map +1 -0
  90. package/dist/src/app/charts/{ScatterPlot.d.ts → plots/ScatterPlot.d.ts} +10 -8
  91. package/dist/src/app/charts/plots/ScatterPlot.js +379 -0
  92. package/dist/src/app/charts/plots/ScatterPlot.js.map +1 -0
  93. package/dist/src/app/charts/{plot.d.ts → plots/plot.d.ts} +12 -14
  94. package/dist/src/app/charts/{plot.js → plots/plot.js} +19 -17
  95. package/dist/src/app/charts/plots/plot.js.map +1 -0
  96. package/dist/src/app/charts/series/baseSeries.d.ts +38 -0
  97. package/dist/src/app/charts/series/baseSeries.js +36 -0
  98. package/dist/src/app/charts/series/baseSeries.js.map +1 -0
  99. package/dist/src/app/charts/series/datumSeries.test.d.ts +1 -0
  100. package/dist/src/app/charts/series/datumSeries.test.js +50 -0
  101. package/dist/src/app/charts/series/datumSeries.test.js.map +1 -0
  102. package/dist/src/app/charts/series/iterateSeries.d.ts +42 -0
  103. package/dist/src/app/charts/series/iterateSeries.js +34 -0
  104. package/dist/src/app/charts/series/iterateSeries.js.map +1 -0
  105. package/dist/src/app/charts/series/ordinalSeries.d.ts +54 -0
  106. package/dist/src/app/charts/series/ordinalSeries.js +98 -0
  107. package/dist/src/app/charts/series/ordinalSeries.js.map +1 -0
  108. package/dist/src/app/charts/series/timeSeries.d.ts +30 -0
  109. package/dist/src/app/charts/series/timeSeries.js +19 -0
  110. package/dist/src/app/charts/series/timeSeries.js.map +1 -0
  111. package/dist/src/app/charts/{chartData.d.ts → series/timeSeriesChartData.d.ts} +11 -6
  112. package/dist/src/app/charts/series/timeSeriesChartData.js +32 -0
  113. package/dist/src/app/charts/series/timeSeriesChartData.js.map +1 -0
  114. package/dist/src/app/charts/styling/barPlotStyle.d.ts +41 -0
  115. package/dist/src/app/charts/styling/barPlotStyle.js +84 -0
  116. package/dist/src/app/charts/styling/barPlotStyle.js.map +1 -0
  117. package/dist/src/app/charts/{margins.d.ts → styling/margins.d.ts} +7 -5
  118. package/dist/src/app/charts/{margins.js → styling/margins.js} +19 -9
  119. package/dist/src/app/charts/styling/margins.js.map +1 -0
  120. package/dist/src/app/charts/styling/margins.test.d.ts +1 -0
  121. package/dist/src/app/charts/styling/margins.test.js +19 -0
  122. package/dist/src/app/charts/styling/margins.test.js.map +1 -0
  123. package/dist/src/app/charts/styling/svgStyle.d.ts +76 -0
  124. package/dist/src/app/charts/styling/svgStyle.js +84 -0
  125. package/dist/src/app/charts/styling/svgStyle.js.map +1 -0
  126. package/dist/src/app/charts/subscriptions/subscription.test.d.ts +1 -0
  127. package/dist/src/app/charts/subscriptions/subscription.test.js +395 -0
  128. package/dist/src/app/charts/subscriptions/subscription.test.js.map +1 -0
  129. package/dist/src/app/charts/subscriptions/subscriptions.d.ts +100 -0
  130. package/dist/src/app/charts/subscriptions/subscriptions.js +449 -0
  131. package/dist/src/app/charts/subscriptions/subscriptions.js.map +1 -0
  132. package/dist/src/app/charts/tooltips/BarPlotTooltipContent.d.ts +90 -0
  133. package/dist/src/app/charts/tooltips/BarPlotTooltipContent.js +302 -0
  134. package/dist/src/app/charts/tooltips/BarPlotTooltipContent.js.map +1 -0
  135. package/dist/src/app/charts/tooltips/PoincarePlotTooltipContent.d.ts +100 -0
  136. package/dist/src/app/charts/tooltips/PoincarePlotTooltipContent.js +190 -0
  137. package/dist/src/app/charts/tooltips/PoincarePlotTooltipContent.js.map +1 -0
  138. package/dist/src/app/charts/{RasterPlotTooltipContent.js → tooltips/RasterPlotTooltipContent.js} +40 -44
  139. package/dist/src/app/charts/tooltips/RasterPlotTooltipContent.js.map +1 -0
  140. package/dist/src/app/charts/tooltips/ScatterPlotTooltipContent.js +154 -0
  141. package/dist/src/app/charts/tooltips/ScatterPlotTooltipContent.js.map +1 -0
  142. package/dist/src/app/charts/{Tooltip.d.ts → tooltips/Tooltip.d.ts} +4 -2
  143. package/dist/src/app/charts/{Tooltip.js → tooltips/Tooltip.js} +23 -28
  144. package/dist/src/app/charts/tooltips/Tooltip.js.map +1 -0
  145. package/dist/src/app/charts/{tooltipUtils.d.ts → tooltips/tooltipUtils.d.ts} +11 -6
  146. package/dist/src/app/charts/{tooltipUtils.js → tooltips/tooltipUtils.js} +33 -17
  147. package/dist/src/app/charts/tooltips/tooltipUtils.js.map +1 -0
  148. package/dist/src/app/charts/{Tracker.d.ts → trackers/Tracker.d.ts} +6 -5
  149. package/dist/src/app/charts/trackers/Tracker.js +60 -0
  150. package/dist/src/app/charts/trackers/Tracker.js.map +1 -0
  151. package/dist/src/app/charts/{trackerUtils.d.ts → trackers/trackerUtils.d.ts} +13 -8
  152. package/dist/src/app/charts/trackers/trackerUtils.js +359 -0
  153. package/dist/src/app/charts/trackers/trackerUtils.js.map +1 -0
  154. package/dist/src/app/charts/utils.d.ts +22 -32
  155. package/dist/src/app/charts/utils.js +36 -37
  156. package/dist/src/app/charts/utils.js.map +1 -1
  157. package/dist/src/index.d.ts +48 -15
  158. package/dist/src/index.js +71 -15
  159. package/dist/src/index.js.map +1 -1
  160. package/package.json +30 -20
  161. package/src/app/charts/Chart.tsx +334 -0
  162. package/src/app/charts/axes/AxesState.test.ts +34 -0
  163. package/src/app/charts/axes/AxesState.ts +112 -0
  164. package/src/app/charts/axes/AxisInterval.test.ts +143 -0
  165. package/src/app/charts/axes/AxisInterval.ts +139 -0
  166. package/src/app/charts/axes/BaseAxisRange.ts +113 -0
  167. package/src/app/charts/axes/ContinuousAxis.tsx +192 -0
  168. package/src/app/charts/axes/ContinuousAxisRange.test.ts +55 -0
  169. package/src/app/charts/axes/ContinuousAxisRange.ts +96 -0
  170. package/src/app/charts/axes/OrdinalAxis.tsx +223 -0
  171. package/src/app/charts/axes/OrdinalAxisRange.test.ts +55 -0
  172. package/src/app/charts/axes/OrdinalAxisRange.ts +112 -0
  173. package/src/app/charts/axes/axes.ts +1569 -0
  174. package/src/app/charts/d3types.ts +16 -0
  175. package/src/app/charts/filters/regexFilter.test.ts +13 -0
  176. package/src/app/charts/filters/regexFilter.ts +17 -0
  177. package/src/app/charts/hooks/useAxes.tsx +341 -0
  178. package/src/app/charts/hooks/useChart.tsx +159 -0
  179. package/src/app/charts/hooks/useDataObservable.tsx +175 -0
  180. package/src/app/charts/hooks/useInitialData.tsx +65 -0
  181. package/src/app/charts/hooks/useMouse.tsx +125 -0
  182. package/src/app/charts/hooks/usePlotDimensions.tsx +120 -0
  183. package/src/app/charts/hooks/useTooltip.tsx +112 -0
  184. package/src/app/charts/observables/ChartData.ts +31 -0
  185. package/src/app/charts/observables/iterates.test.ts +201 -0
  186. package/src/app/charts/observables/iterates.ts +203 -0
  187. package/src/app/charts/observables/ordinals.test.ts +135 -0
  188. package/src/app/charts/observables/ordinals.ts +248 -0
  189. package/src/app/charts/plots/BarPlot.tsx +1088 -0
  190. package/src/app/charts/plots/PoincarePlot.tsx +832 -0
  191. package/src/app/charts/plots/RasterPlot.tsx +676 -0
  192. package/src/app/charts/plots/ScatterPlot.tsx +653 -0
  193. package/src/app/charts/plots/plot.ts +75 -0
  194. package/src/app/charts/series/baseSeries.ts +52 -0
  195. package/src/app/charts/series/datumSeries.test.ts +60 -0
  196. package/src/app/charts/series/iterateSeries.ts +56 -0
  197. package/src/app/charts/series/ordinalSeries.ts +164 -0
  198. package/src/app/charts/series/timeSeries.ts +40 -0
  199. package/src/app/charts/series/timeSeriesChartData.ts +68 -0
  200. package/src/app/charts/styling/barPlotStyle.ts +126 -0
  201. package/src/app/charts/styling/margins.test.ts +22 -0
  202. package/src/app/charts/styling/margins.ts +58 -0
  203. package/src/app/charts/styling/svgStyle.ts +118 -0
  204. package/src/app/charts/subscriptions/subscription.test.ts +499 -0
  205. package/src/app/charts/subscriptions/subscriptions.ts +635 -0
  206. package/src/app/charts/tooltips/BarPlotTooltipContent.tsx +440 -0
  207. package/src/app/charts/tooltips/PoincarePlotTooltipContent.tsx +352 -0
  208. package/src/app/charts/tooltips/RasterPlotTooltipContent.tsx +274 -0
  209. package/src/app/charts/tooltips/ScatterPlotTooltipContent.tsx +319 -0
  210. package/src/app/charts/tooltips/Tooltip.tsx +148 -0
  211. package/src/app/charts/tooltips/tooltipUtils.ts +216 -0
  212. package/src/app/charts/trackers/Tracker.tsx +129 -0
  213. package/src/app/charts/trackers/trackerUtils.ts +494 -0
  214. package/src/app/charts/utils.ts +109 -0
  215. package/dist/src/app/charts/CategoryAxis.d.ts +0 -20
  216. package/dist/src/app/charts/CategoryAxis.js +0 -112
  217. package/dist/src/app/charts/CategoryAxis.js.map +0 -1
  218. package/dist/src/app/charts/ContinuousAxis.d.ts +0 -16
  219. package/dist/src/app/charts/ContinuousAxis.js +0 -186
  220. package/dist/src/app/charts/ContinuousAxis.js.map +0 -1
  221. package/dist/src/app/charts/RasterPlot.js.map +0 -1
  222. package/dist/src/app/charts/RasterPlotTooltipContent.js.map +0 -1
  223. package/dist/src/app/charts/ScatterPlot.js +0 -351
  224. package/dist/src/app/charts/ScatterPlot.js.map +0 -1
  225. package/dist/src/app/charts/ScatterPlotTooltipContent.js +0 -163
  226. package/dist/src/app/charts/ScatterPlotTooltipContent.js.map +0 -1
  227. package/dist/src/app/charts/Tooltip.js.map +0 -1
  228. package/dist/src/app/charts/Tracker.js +0 -65
  229. package/dist/src/app/charts/Tracker.js.map +0 -1
  230. package/dist/src/app/charts/axes.d.ts +0 -132
  231. package/dist/src/app/charts/axes.js +0 -265
  232. package/dist/src/app/charts/axes.js.map +0 -1
  233. package/dist/src/app/charts/chartData.js +0 -32
  234. package/dist/src/app/charts/chartData.js.map +0 -1
  235. package/dist/src/app/charts/continuousAxisRangeFor.d.ts +0 -20
  236. package/dist/src/app/charts/continuousAxisRangeFor.js +0 -68
  237. package/dist/src/app/charts/continuousAxisRangeFor.js.map +0 -1
  238. package/dist/src/app/charts/datumSeries.d.ts +0 -59
  239. package/dist/src/app/charts/datumSeries.js +0 -55
  240. package/dist/src/app/charts/datumSeries.js.map +0 -1
  241. package/dist/src/app/charts/datumSeries.test.js +0 -50
  242. package/dist/src/app/charts/datumSeries.test.js.map +0 -1
  243. package/dist/src/app/charts/hooks/AxesState.d.ts +0 -37
  244. package/dist/src/app/charts/hooks/AxesState.js +0 -44
  245. package/dist/src/app/charts/hooks/AxesState.js.map +0 -1
  246. package/dist/src/app/charts/margins.js.map +0 -1
  247. package/dist/src/app/charts/margins.test.js +0 -14
  248. package/dist/src/app/charts/margins.test.js.map +0 -1
  249. package/dist/src/app/charts/plot.js.map +0 -1
  250. package/dist/src/app/charts/regexFilter.d.ts +0 -9
  251. package/dist/src/app/charts/regexFilter.js +0 -17
  252. package/dist/src/app/charts/regexFilter.js.map +0 -1
  253. package/dist/src/app/charts/regexFilter.test.js +0 -11
  254. package/dist/src/app/charts/regexFilter.test.js.map +0 -1
  255. package/dist/src/app/charts/subscriptions.d.ts +0 -43
  256. package/dist/src/app/charts/subscriptions.js +0 -213
  257. package/dist/src/app/charts/subscriptions.js.map +0 -1
  258. package/dist/src/app/charts/svgStyle.d.ts +0 -27
  259. package/dist/src/app/charts/svgStyle.js +0 -32
  260. package/dist/src/app/charts/svgStyle.js.map +0 -1
  261. package/dist/src/app/charts/timeRange.test.js +0 -54
  262. package/dist/src/app/charts/timeRange.test.js.map +0 -1
  263. package/dist/src/app/charts/tooltipUtils.js.map +0 -1
  264. package/dist/src/app/charts/trackerUtils.js +0 -130
  265. package/dist/src/app/charts/trackerUtils.js.map +0 -1
  266. /package/dist/src/app/charts/{datumSeries.test.d.ts → axes/AxesState.test.d.ts} +0 -0
  267. /package/dist/src/app/charts/{margins.test.d.ts → axes/AxisInterval.test.d.ts} +0 -0
  268. /package/dist/src/app/charts/{regexFilter.test.d.ts → axes/ContinuousAxisRange.test.d.ts} +0 -0
  269. /package/dist/src/app/charts/{timeRange.test.d.ts → axes/OrdinalAxisRange.test.d.ts} +0 -0
  270. /package/dist/src/app/charts/{RasterPlotTooltipContent.d.ts → tooltips/RasterPlotTooltipContent.d.ts} +0 -0
  271. /package/dist/src/app/charts/{ScatterPlotTooltipContent.d.ts → tooltips/ScatterPlotTooltipContent.d.ts} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"axes.js","sourceRoot":"","sources":["../../../../../src/app/charts/axes/axes.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
1
  import { Selection } from "d3";
2
- import { Datum } from "./datumSeries";
3
- export declare type AxisElementSelection = Selection<SVGGElement, unknown, null, undefined>;
4
- export declare type SvgSelection = Selection<SVGSVGElement, any, null, undefined>;
5
- export declare type GSelection = Selection<SVGGElement, any, null, undefined>;
6
- export declare type LineSelection = Selection<SVGLineElement, any, SVGGElement, undefined>;
7
- export declare type TextSelection = Selection<SVGTextElement, any, null, undefined>;
8
- export declare type RadialMagnifierSelection = Selection<SVGCircleElement, Datum, null, undefined>;
9
- export declare type BarMagnifierSelection = Selection<SVGRectElement, Datum, null, undefined>;
10
- export declare type MagnifierTextSelection = Selection<SVGTextElement, any, SVGGElement, undefined>;
11
- export declare type TrackerSelection = Selection<SVGLineElement, Datum, null, undefined>;
2
+ import { Datum } from "./series/timeSeries";
3
+ export type AxisElementSelection = Selection<SVGGElement, unknown, null, undefined>;
4
+ export type SvgSelection = Selection<SVGSVGElement, any, null, undefined>;
5
+ export type GSelection = Selection<SVGGElement, any, null, undefined>;
6
+ export type LineSelection = Selection<SVGLineElement, any, SVGGElement, undefined>;
7
+ export type TextSelection = Selection<SVGTextElement, any, null, undefined>;
8
+ export type RadialMagnifierSelection = Selection<SVGCircleElement, Datum, null, undefined>;
9
+ export type BarMagnifierSelection = Selection<SVGRectElement, Datum, null, undefined>;
10
+ export type MagnifierTextSelection = Selection<SVGTextElement, any, SVGGElement, undefined>;
11
+ export type TrackerSelection = Selection<SVGLineElement, Datum, null, undefined>;
@@ -0,0 +1,9 @@
1
+ import { Result } from "result-fn";
2
+ /**
3
+ * Wraps the creation of the regex in a try/catch and returns the regex, wrapped in an option,
4
+ * when it is valid. This can be used, for example, in a text field where the user types a regex.
5
+ * @param regexString The string representation of the regex
6
+ * @return The regular expression (`RegExp`) wrapped in an option. If the regexp
7
+ * is invalid, then the option is none.
8
+ */
9
+ export declare function regexFilter(regexString: string): Result<RegExp, string>;
@@ -0,0 +1,18 @@
1
+ import { failureResult, successResult } from "result-fn";
2
+ /**
3
+ * Wraps the creation of the regex in a try/catch and returns the regex, wrapped in an option,
4
+ * when it is valid. This can be used, for example, in a text field where the user types a regex.
5
+ * @param regexString The string representation of the regex
6
+ * @return The regular expression (`RegExp`) wrapped in an option. If the regexp
7
+ * is invalid, then the option is none.
8
+ */
9
+ export function regexFilter(regexString) {
10
+ try {
11
+ const regex = new RegExp(regexString);
12
+ return successResult(regex);
13
+ }
14
+ catch (error) {
15
+ return failureResult(`Unable to compile the regex expression; regex_expression: ${regexString}`);
16
+ }
17
+ }
18
+ //# sourceMappingURL=regexFilter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"regexFilter.js","sourceRoot":"","sources":["../../../../../src/app/charts/filters/regexFilter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAU,aAAa,EAAC,MAAM,WAAW,CAAC;AAE/D;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,WAAmB;IAC3C,IAAI,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,WAAW,CAAC,CAAA;QACrC,OAAO,aAAa,CAAC,KAAK,CAAC,CAAA;IAC/B,CAAC;IAAC,OAAM,KAAK,EAAE,CAAC;QACZ,OAAO,aAAa,CAAC,6DAA6D,WAAW,EAAE,CAAC,CAAA;IACpG,CAAC;AACL,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,11 @@
1
+ import { regexFilter } from "./regexFilter";
2
+ test('option should contain a valid regex', () => {
3
+ expect(regexFilter("^[0-9]+$").succeeded).toEqual(true);
4
+ });
5
+ test('should allow progression of building regex', () => {
6
+ let filter = regexFilter("^[0-9").map(regex => '100a200'.match(regex).map(t => t)).getOrUndefined();
7
+ expect(filter).toBeUndefined();
8
+ filter = regexFilter("^[0-9]+").map(regex => '100a200'.match(regex).map(t => t)).getOrUndefined();
9
+ expect(filter).toEqual(['100']);
10
+ });
11
+ //# sourceMappingURL=regexFilter.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"regexFilter.test.js","sourceRoot":"","sources":["../../../../../src/app/charts/filters/regexFilter.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAE1C,IAAI,CAAC,qCAAqC,EAAE,GAAG,EAAE;IAC7C,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAC5D,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,4CAA4C,EAAE,GAAG,EAAE;IACpD,IAAI,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC;IACrG,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;IAE/B,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC;IACnG,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AACpC,CAAC,CAAC,CAAC"}
@@ -0,0 +1,144 @@
1
+ import { AxesState } from "../axes/AxesState";
2
+ import { BaseAxis } from "../axes/axes";
3
+ import { AxesAssignment } from "../plots/plot";
4
+ import { JSX } from "react";
5
+ import { Dimensions } from "../styling/margins";
6
+ import { BaseAxisRange } from "../axes/BaseAxisRange";
7
+ import { AxisInterval } from "../axes/AxisInterval";
8
+ import { Optional } from "result-fn";
9
+ /**
10
+ * The values exposed by the hook
11
+ * @template AR The type of the axis range (e.g. {@link ContinuousAxisRange} or {@link OrdinalAxisRange})
12
+ */
13
+ export type UseAxesValues<AR extends BaseAxisRange, A extends BaseAxis> = {
14
+ /**
15
+ * The x-axes state holds the currently set x-axes, manipulation and accessor functions
16
+ */
17
+ xAxesState: AxesState<A>;
18
+ /**
19
+ * Adds an x-axis to the axes and updates the internal state
20
+ * @param axis The axis to add
21
+ * @param id The ID of the axis to add
22
+ * @param domain The initial axis range (start, end)
23
+ */
24
+ addXAxis: (axis: A, id: string, range?: AR) => void;
25
+ /**
26
+ * The y-axes state holds the currently set x-axes, manipulation and accessor functions
27
+ */
28
+ yAxesState: AxesState<A>;
29
+ /**
30
+ * Adds a y-axis to the axes and updates the internal state
31
+ * @param axis The axis to add
32
+ * @param id The ID of the axis to add
33
+ * @param domain The initial axis range (start, end)
34
+ */
35
+ addYAxis: (axis: A, id: string, range?: AR) => void;
36
+ /**
37
+ * Sets the axis assigned to each series. This should contain **all** the series used in
38
+ * the chart.
39
+ * @param assignments The assignment of the series to their axes
40
+ */
41
+ setAxisAssignments: (assignments: Map<string, AxesAssignment>) => void;
42
+ /**
43
+ * Retrieves the axis assigned to the specified series
44
+ * @return The axes assigned to the specified series
45
+ */
46
+ axisAssignmentsFor: (seriesName: string) => AxesAssignment;
47
+ /**
48
+ * Sets the axis ranges specified in the input map
49
+ * @param ranges A map holding the axis ID to the axis range
50
+ */
51
+ setAxesRanges: (ranges: Map<string, AR>) => void;
52
+ /**
53
+ * Sets the axis range for the specified axis ID
54
+ * @param axisId The ID of the axis for which to set the range
55
+ * @param range The new axis range
56
+ */
57
+ setAxisRangeFor: (axisId: string, range: AR) => void;
58
+ /**
59
+ * Retrieves the current axis range for the specified axis ID
60
+ * @param axisId The ID of the axis for which to retrieve the range
61
+ * @return The current axis range for the specified axis ID wrapped
62
+ * in a n {@link Optional}, or an empty {@link Optional} if the axis
63
+ * ID is not found
64
+ */
65
+ axisRangeFor: (axisId: string) => Optional<AR>;
66
+ /**
67
+ * Sets the domain (interval) for the specified axis ID to the specified range
68
+ * @param axisId The ID of the axis for which to set the range
69
+ * @param domain The new domain as a `[start: number, end: number]` tuple
70
+ */
71
+ setAxisIntervalFor: (axisId: string, domain: AxisInterval) => void;
72
+ /**
73
+ * Sets the original axis bounds for the specified axis ID to the specified range
74
+ * @param axisId The ID of the axis for which to set the range
75
+ * @param range The new range as a `[start, end]` tuple
76
+ */
77
+ setOriginalAxisIntervalFor: (axisId: string, range: AxisInterval) => void;
78
+ /**
79
+ * Callback function that is called when the time ranges change. The time ranges could
80
+ * change because of a zoom action, a pan action, or as new data is streamed in.
81
+ * @param domains A `map(axis_id -> domain)` that associates the axis ID with the
82
+ * current time range.
83
+ */
84
+ updateAxisRanges: (domains: Map<string, AR>) => void;
85
+ /**
86
+ * Retrieves the current axis bounds for the specified axis ID
87
+ * @return The current axis bounds as a map(axis_id, (start, end))
88
+ */
89
+ axesRanges: () => Map<string, AR>;
90
+ /**
91
+ * Resets the axis bounds to its original bounds
92
+ * @param axisId The ID of the axis
93
+ * @param [axisBounds] An optional bounds that resets the original bounds
94
+ */
95
+ resetAxisIntervalFor: (axisId: string, axisBounds?: AxisInterval) => void;
96
+ /**
97
+ * Resets all the axes bound to the original bounds
98
+ * @param [axesBounds] An optional map holds the new bounds for specified axes. The map
99
+ * associates an axis ID with the new bounds.
100
+ */
101
+ resetAxesRanges: (axesBounds?: Map<string, AR>) => void;
102
+ /**
103
+ * Callback when the time range changes.
104
+ * @param times The times (start, end) times for each axis in the plot. The `times` argument is a
105
+ * map(axis_id -> (start, end)). Where start and end refer to the time-range for the
106
+ * axis.
107
+ * @return void
108
+ */
109
+ onUpdateAxesInterval?: (times: Map<string, AxisInterval>) => void;
110
+ /**
111
+ * Adds a handler for when the axes are updated. An axis domain/range could change because of a zoom action,
112
+ * a pan action, or as new data is streamed in.
113
+ * @param handlerId The unique ID of the handler to register/add
114
+ * @param handler The handler function that accepts a map of updates and a plot dimension
115
+ */
116
+ addAxesRangesUpdateHandler: (handlerId: string, handler: (updates: Map<string, AR>, plotDim: Dimensions) => void) => void;
117
+ /**
118
+ * Removes the axis-update handler with the specified ID
119
+ * @param handlerId The ID of the handler to remove
120
+ */
121
+ removeAxesRangesUpdateHandler: (handlerId: string) => void;
122
+ };
123
+ export declare const defaultAxesValues: () => UseAxesValues<any, any>;
124
+ type Props = {
125
+ /**y
126
+ * Callback when axes bounds change.
127
+ * @param ranges The ranges (start, end) for each axis in the plot
128
+ */
129
+ onUpdateAxesInterval?: (ranges: Map<string, AxisInterval>) => void;
130
+ children: JSX.Element | Array<JSX.Element>;
131
+ };
132
+ /**
133
+ * The React context provider for the {@link UseAxesValues}
134
+ * @param props The properties
135
+ * @return The children wrapped in this provider
136
+ * @constructor
137
+ */
138
+ export default function AxesProvider<AR extends BaseAxisRange, A extends BaseAxis>(props: Props): JSX.Element;
139
+ /**
140
+ * React hook that sets up the React context for the chart values.
141
+ * @return The {@link UseAxesValues} held in the React context.
142
+ */
143
+ export declare function useAxes<AR extends BaseAxisRange, A extends BaseAxis>(): UseAxesValues<AR, A>;
144
+ export {};
@@ -0,0 +1,187 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { AxesState } from "../axes/AxesState";
3
+ import { createContext, useContext, useRef } from "react";
4
+ import { usePlotDimensions } from "./usePlotDimensions";
5
+ import { Optional } from "result-fn";
6
+ /**
7
+ * No operation function for use when a default function is needed
8
+ */
9
+ const noop = () => {
10
+ /* empty on purpose */
11
+ };
12
+ export const defaultAxesValues = () => ({
13
+ xAxesState: AxesState.empty(),
14
+ yAxesState: AxesState.empty(),
15
+ addXAxis: noop,
16
+ addYAxis: noop,
17
+ setAxisAssignments: noop,
18
+ axisAssignmentsFor: () => ({ xAxis: "", yAxis: "" }),
19
+ updateAxisRanges: noop,
20
+ axesRanges: () => new Map(),
21
+ axisRangeFor: () => Optional.empty(),
22
+ setAxesRanges: noop,
23
+ setAxisRangeFor: noop,
24
+ setAxisIntervalFor: noop,
25
+ setOriginalAxisIntervalFor: noop,
26
+ resetAxisIntervalFor: noop,
27
+ resetAxesRanges: noop,
28
+ addAxesRangesUpdateHandler: () => noop,
29
+ removeAxesRangesUpdateHandler: () => noop,
30
+ });
31
+ // the context for axes
32
+ const AxesContext = createContext(defaultAxesValues());
33
+ /**
34
+ * The React context provider for the {@link UseAxesValues}
35
+ * @param props The properties
36
+ * @return The children wrapped in this provider
37
+ * @constructor
38
+ */
39
+ export default function AxesProvider(props) {
40
+ const { onUpdateAxesInterval, children } = props;
41
+ const plotDimensions = usePlotDimensions();
42
+ const xAxesStateRef = useRef(AxesState.empty());
43
+ const yAxesStateRef = useRef(AxesState.empty());
44
+ const axisAssignmentsRef = useRef(new Map());
45
+ const axesBoundsUpdateHandlersRef = useRef(new Map());
46
+ const axesRangeRef = useRef(new Map());
47
+ /**
48
+ * Retrieves the x-axis and y-axis assignments for the specified series. If the axis does not have
49
+ * an assignment, then we assume it is using the default x- and y-axes.
50
+ * @param seriesName The name of the series for which to retrieve the axes assignments
51
+ * @return An {@link AxesAssignment} for the specified axes.
52
+ */
53
+ function axisAssignmentsFor(seriesName) {
54
+ return axisAssignmentsRef.current.get(seriesName) || {
55
+ xAxis: xAxesStateRef.current.axisDefaultId().getOrElse(""),
56
+ yAxis: yAxesStateRef.current.axisDefaultId().getOrElse("")
57
+ };
58
+ }
59
+ /**
60
+ * Called when the domain/range is updated on one or more of the chart's axes (generally x-axes). In turn,
61
+ * dispatches the update to all the internal domain/range update handlers.
62
+ * @param updates A map holding the axis ID to the updated axis time-range (i.e., map(axis_id, axis_time_range))
63
+ */
64
+ function updateAxisRanges(updates) {
65
+ // update the current time-ranges reference
66
+ updates.forEach((range, id) => {
67
+ axesRangeRef.current.set(id, range);
68
+ });
69
+ // dispatch the updates to all the registered handlers
70
+ axesBoundsUpdateHandlersRef.current
71
+ .forEach((handler) => handler(updates, plotDimensions.plotDimensions));
72
+ }
73
+ /**
74
+ * Sets the axis ranges specified in the input map
75
+ * @param ranges The ranges to set
76
+ */
77
+ function setAxesRanges(ranges) {
78
+ ranges.forEach((range, id) => {
79
+ axesRangeRef.current.set(id, range);
80
+ });
81
+ }
82
+ /**
83
+ * Sets the axis range for the specified axis ID
84
+ * @param axisId The axis ID
85
+ * @param range The range to set
86
+ */
87
+ function setAxisRangeFor(axisId, range) {
88
+ axesRangeRef.current.set(axisId, range);
89
+ }
90
+ /**
91
+ * Sets the axis bounds for the specified axis ID. Note that this does not
92
+ * change the original axis interval
93
+ * @param axisId The axis ID
94
+ * @param interval The interval
95
+ */
96
+ function setAxisIntervalFor(axisId, interval) {
97
+ Optional.ofNullable(axesRangeRef.current.get(axisId))
98
+ .map(range => range.update(interval.start, interval.end))
99
+ .ifPresent(updatedRange => axesRangeRef.current.set(axisId, updatedRange));
100
+ }
101
+ /**
102
+ * Sets the original axis interval for the axis range
103
+ * @param axisId The axis ID
104
+ * @param interval The interval to which to set the origin interval
105
+ */
106
+ function setOriginalAxisIntervalFor(axisId, interval) {
107
+ Optional.ofNullable(axesRangeRef.current.get(axisId))
108
+ .map(range => range.updateOriginal(interval.start, interval.end))
109
+ .ifPresent(updatedRange => axesRangeRef.current.set(axisId, updatedRange));
110
+ }
111
+ /**
112
+ * Resets the bounds for the specified axis to the original range
113
+ * @param axisId The ID of the axis
114
+ */
115
+ function resetAxisIntervalFor(axisId) {
116
+ Optional
117
+ .ofNullable(axesRangeRef.current.get(axisId))
118
+ .map(range => new Map([[axisId, range]]))
119
+ .ifPresent(updates => updateAxisRanges(updates));
120
+ }
121
+ /**
122
+ * Resets the bounds of all the axes to their original value or to the values specified
123
+ * in the optional bounds map.
124
+ * @param [axesRanges=new Map()] An optional map holds bounds for specified axes. The map
125
+ * associates an axis ID with the new bounds.
126
+ */
127
+ function resetAxesRanges(axesRanges = new Map()) {
128
+ updateAxisRanges(axesRanges);
129
+ }
130
+ /**
131
+ * Adds a handler to deal with updates to the bounds of the axes
132
+ * @param handlerId the unique ID of the handler
133
+ * @param handler The handler function that accepts a map of updates and a plot dimension
134
+ * @return A map with all the handlers
135
+ */
136
+ function addAxesRangesUpdateHandler(handlerId, handler) {
137
+ if (axesBoundsUpdateHandlersRef.current.has(handlerId)) {
138
+ throw new Error(`Handler with ID already exists, please remove it before adding it; ` +
139
+ `handler_id: ${handlerId}; ` +
140
+ `existing_handler_ids: [${Array.from(axesBoundsUpdateHandlersRef.current.keys()).join(", ")}]`);
141
+ }
142
+ return axesBoundsUpdateHandlersRef.current.set(handlerId, handler);
143
+ }
144
+ return _jsx(AxesContext.Provider, { value: {
145
+ xAxesState: xAxesStateRef.current,
146
+ yAxesState: yAxesStateRef.current,
147
+ addXAxis: (axis, id, range) => {
148
+ xAxesStateRef.current = xAxesStateRef.current.addAxis(axis, id);
149
+ if (range !== undefined) {
150
+ axesRangeRef.current.set(id, range);
151
+ }
152
+ },
153
+ addYAxis: (axis, id, range) => {
154
+ yAxesStateRef.current = yAxesStateRef.current.addAxis(axis, id);
155
+ if (range !== undefined) {
156
+ axesRangeRef.current.set(id, range);
157
+ }
158
+ },
159
+ setAxisAssignments: assignments => axisAssignmentsRef.current = assignments,
160
+ axisAssignmentsFor: seriesName => axisAssignmentsFor(seriesName),
161
+ updateAxisRanges,
162
+ axesRanges: () => new Map(axesRangeRef.current),
163
+ axisRangeFor: axisId => Optional.ofNullable(axesRangeRef.current.get(axisId)),
164
+ setAxesRanges,
165
+ setAxisRangeFor,
166
+ setAxisIntervalFor,
167
+ setOriginalAxisIntervalFor,
168
+ resetAxesRanges,
169
+ resetAxisIntervalFor,
170
+ onUpdateAxesInterval,
171
+ addAxesRangesUpdateHandler,
172
+ removeAxesRangesUpdateHandler: handlerId => axesBoundsUpdateHandlersRef.current.delete(handlerId),
173
+ }, children: children });
174
+ }
175
+ /**
176
+ * React hook that sets up the React context for the chart values.
177
+ * @return The {@link UseAxesValues} held in the React context.
178
+ */
179
+ export function useAxes() {
180
+ const context = useContext(AxesContext);
181
+ const { xAxesState } = context;
182
+ if (xAxesState === undefined || xAxesState === null) {
183
+ throw new Error("useAxes can only be used when the parent is a <AxesProvider/>");
184
+ }
185
+ return context;
186
+ }
187
+ //# sourceMappingURL=useAxes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAxes.js","sourceRoot":"","sources":["../../../../../src/app/charts/hooks/useAxes.tsx"],"names":[],"mappings":"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"}