@cdc/chart 4.26.6 → 4.26.10

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 (276) hide show
  1. package/CONFIG.md +504 -368
  2. package/dist/cdcchart-CYc-Kayd.es.js +22488 -0
  3. package/dist/cdcchart-DCKn8NmI.es.js +20695 -0
  4. package/dist/cdcchart-Dyui9nk_.es.js +45828 -0
  5. package/dist/cdcchart.js +4 -96498
  6. package/examples/__data__/vega-remote-data.json +6 -0
  7. package/examples/dendrogram.json +18 -0
  8. package/examples/feature/bar/bar-chart-race-annual-change.json +68 -0
  9. package/examples/feature/heatmap/average-age-categorical.json +2 -2
  10. package/examples/feature/heatmap/calendar-heatmap.json +2 -2
  11. package/examples/feature/heatmap/cell-values-bottom-axis.json +2 -2
  12. package/examples/feature/heatmap/sparse-aggregation.json +2 -2
  13. package/examples/feature/line/line-chart-race.json +50 -0
  14. package/examples/feature/sankey/sankey-example-data.json +40 -1441
  15. package/examples/feature/sankey/sankey_chart_data.csv +9 -20
  16. package/examples/network.json +31 -0
  17. package/examples/private/box-plot.json +573 -0
  18. package/examples/private/custom-color-issue.json +625 -0
  19. package/examples/private/custom-colors.json +522 -0
  20. package/examples/private/cutoff.json +10750 -0
  21. package/examples/private/flueview.json +22051 -0
  22. package/examples/private/overlay-legend.json +485 -0
  23. package/examples/private/pie-test.json +469 -0
  24. package/examples/vega-remote.json +22 -0
  25. package/package.json +11 -13
  26. package/src/CdcChart.tsx +2 -2
  27. package/src/CdcChartComponent.tsx +444 -217
  28. package/src/_stories/Chart.BarRace.stories.tsx +443 -0
  29. package/src/_stories/Chart.BoxPlotNumericSort.stories.tsx +189 -0
  30. package/src/_stories/Chart.BoxPlotStatsParity.stories.tsx +207 -0
  31. package/src/_stories/Chart.ColorDistribution.stories.tsx +299 -0
  32. package/src/_stories/Chart.DataCutoff.stories.tsx +147 -0
  33. package/src/_stories/Chart.DataTableDownloadFilename.stories.tsx +60 -0
  34. package/src/_stories/Chart.Dendrogram.stories.tsx +373 -0
  35. package/src/_stories/Chart.Forecast.CILegend.stories.tsx +236 -0
  36. package/src/_stories/Chart.HeatMap.stories.tsx +170 -4
  37. package/src/_stories/Chart.Legend.AxisAlign.stories.tsx +119 -0
  38. package/src/_stories/Chart.LineRace.stories.tsx +149 -0
  39. package/src/_stories/Chart.Network.stories.tsx +432 -0
  40. package/src/_stories/Chart.PaletteConversion.Editor.stories.tsx +208 -0
  41. package/src/_stories/Chart.Patterns.smoke.stories.tsx +31 -0
  42. package/src/_stories/Chart.PercentageValue.stories.tsx +311 -0
  43. package/src/_stories/Chart.PieLabels.stories.tsx +49 -0
  44. package/src/_stories/Chart.RankByValueMutation.stories.tsx +206 -0
  45. package/src/_stories/Chart.RequiredFields.stories.tsx +681 -0
  46. package/src/_stories/Chart.Sankey.stories.tsx +417 -0
  47. package/src/_stories/Chart.SeriesColorAssignments.stories.tsx +47 -0
  48. package/src/_stories/Chart.SmallMultiplesNumericTileOrder.stories.tsx +137 -0
  49. package/src/_stories/Chart.TooltipSeriesLabels.stories.tsx +43 -0
  50. package/src/_stories/Chart.VegaRemoteData.stories.tsx +31 -0
  51. package/src/_stories/Chart.smoke.stories.tsx +14 -1
  52. package/src/_stories/ChartAnnotation.Editor.stories.tsx +78 -0
  53. package/src/_stories/ChartAxisTitles.smoke.stories.tsx +48 -0
  54. package/src/_stories/ChartBar.Editor.stories.tsx +499 -57
  55. package/src/_stories/ChartBrush.Editor.stories.tsx +46 -67
  56. package/src/_stories/ChartBrush.Regression.stories.tsx +135 -0
  57. package/src/_stories/ChartEditor.Editor.stories.tsx +33 -3
  58. package/src/_stories/ChartLine.EffectCompatibility.stories.tsx +120 -0
  59. package/src/_stories/ChartPrefixSuffix.smoke.stories.tsx +28 -1
  60. package/src/_stories/_mock/annotation_event-line_mock.json +2 -2
  61. package/src/_stories/_mock/editor-test-configs.json +20 -10
  62. package/src/_stories/_mock/editor-test-datasets.json +38 -42
  63. package/src/_stories/_mock/heatmap-average-age-categorical.json +2 -2
  64. package/src/_stories/_mock/heatmap.json +2 -2
  65. package/src/_stories/_mock/legend-axis-align-stacked-bar.json +125 -0
  66. package/src/_stories/_mock/sankey_mock.json +23 -27
  67. package/src/components/Annotations/components/AnnotationDraggable.styles.css +52 -0
  68. package/src/components/Annotations/components/AnnotationDraggable.tsx +639 -139
  69. package/src/components/Annotations/components/AnnotationDropdown.styles.css +44 -4
  70. package/src/components/Annotations/components/AnnotationDropdown.tsx +10 -32
  71. package/src/components/Annotations/helpers/resolveAnnotationLayout.ts +212 -0
  72. package/src/components/Annotations/tests/AnnotationDraggable.test.tsx +612 -19
  73. package/src/components/Annotations/tests/AnnotationDropdown.test.tsx +50 -0
  74. package/src/components/Annotations/tests/resolveAnnotationLayout.test.ts +203 -0
  75. package/src/components/Axis/BottomAxis.tsx +1 -1
  76. package/src/components/Axis/Categorical.Axis.tsx +3 -3
  77. package/src/components/Axis/RightAxis.tsx +21 -13
  78. package/src/components/BarChart/components/BarChart.Horizontal.tsx +39 -8
  79. package/src/components/BarChart/components/BarChart.StackedHorizontal.tsx +13 -4
  80. package/src/components/BarChart/components/BarChart.StackedVertical.test.ts +28 -0
  81. package/src/components/BarChart/components/BarChart.StackedVertical.tsx +30 -26
  82. package/src/components/BarChart/components/BarChart.Vertical.tsx +38 -28
  83. package/src/components/BarChart/components/PortionPatternOverlay.tsx +61 -0
  84. package/src/components/BarChart/components/context.tsx +6 -0
  85. package/src/components/BarChart/helpers/getBarData.ts +28 -28
  86. package/src/components/BarChart/helpers/getBarHeights.ts +2 -2
  87. package/src/components/BarChart/helpers/getPatternUrl.ts +2 -5
  88. package/src/components/BarChart/helpers/index.ts +8 -0
  89. package/src/components/BarChart/helpers/portionPattern.ts +243 -0
  90. package/src/components/BarChart/helpers/tests/addMinimumBarHeights.test.ts +42 -0
  91. package/src/components/BarChart/helpers/tests/getPatternUrl.test.ts +13 -0
  92. package/src/components/BarChart/helpers/tests/portionPattern.test.ts +280 -0
  93. package/src/components/BarChart/helpers/tests/useBarChart.test.tsx +202 -0
  94. package/src/components/BarChart/helpers/useBarChart.ts +60 -60
  95. package/src/components/BarChartRace/BarChartRace.test.tsx +199 -0
  96. package/src/components/BarChartRace/BarChartRace.tsx +230 -0
  97. package/src/components/BarChartRace/BarChartRaceFallback.test.tsx +61 -0
  98. package/src/components/BarChartRace/BarChartRaceFallback.tsx +48 -0
  99. package/src/components/BarChartRace/bar-chart-race.css +160 -0
  100. package/src/components/BarChartRace/helpers.test.ts +114 -0
  101. package/src/components/BarChartRace/helpers.ts +185 -0
  102. package/src/components/BarChartRace/index.ts +3 -0
  103. package/src/components/BoxPlot/BoxPlot.Horizontal.tsx +7 -6
  104. package/src/components/BoxPlot/BoxPlot.Vertical.tsx +9 -7
  105. package/src/components/BoxPlot/helpers/index.ts +13 -83
  106. package/src/components/Brush/BrushSelector.tsx +10 -24
  107. package/src/components/Brush/MiniChartPreview.tsx +33 -1
  108. package/src/components/Dendrogram/components/Dendrogram.tsx +374 -0
  109. package/src/components/Dendrogram/dendrogram.css +113 -0
  110. package/src/components/Dendrogram/helpers/layoutDendrogram.test.ts +95 -0
  111. package/src/components/Dendrogram/helpers/layoutDendrogram.ts +56 -0
  112. package/src/components/Dendrogram/helpers/prepareDendrogramData.test.ts +135 -0
  113. package/src/components/Dendrogram/helpers/prepareDendrogramData.ts +166 -0
  114. package/src/components/Dendrogram/helpers/resolveDendrogramLabels.test.ts +196 -0
  115. package/src/components/Dendrogram/helpers/resolveDendrogramLabels.ts +418 -0
  116. package/src/components/Dendrogram/index.tsx +1 -0
  117. package/src/components/Dendrogram/types/index.ts +66 -0
  118. package/src/components/EditorPanel/EditorPanel.tsx +1111 -805
  119. package/src/components/EditorPanel/components/Panels/Panel.Annotate.tsx +50 -5
  120. package/src/components/EditorPanel/components/Panels/Panel.Dendrogram.css +10 -0
  121. package/src/components/EditorPanel/components/Panels/Panel.Dendrogram.tsx +211 -0
  122. package/src/components/EditorPanel/components/Panels/Panel.ForestPlotSettings.tsx +19 -8
  123. package/src/components/EditorPanel/components/Panels/Panel.General.tsx +104 -61
  124. package/src/components/EditorPanel/components/Panels/Panel.Network.css +9 -0
  125. package/src/components/EditorPanel/components/Panels/Panel.Network.tsx +202 -0
  126. package/src/components/EditorPanel/components/Panels/Panel.PatternSettings.tsx +236 -36
  127. package/src/components/EditorPanel/components/Panels/Panel.Radar.tsx +6 -1
  128. package/src/components/EditorPanel/components/Panels/Panel.Sankey.tsx +89 -105
  129. package/src/components/EditorPanel/components/Panels/Panel.Series.tsx +21 -6
  130. package/src/components/EditorPanel/components/Panels/Panel.SmallMultiples.tsx +1 -1
  131. package/src/components/EditorPanel/components/Panels/Panel.Visual.tsx +8 -66
  132. package/src/components/EditorPanel/components/Panels/RacingControls.test.tsx +131 -0
  133. package/src/components/EditorPanel/components/Panels/RacingControls.tsx +185 -0
  134. package/src/components/EditorPanel/components/Panels/SeriesColorAssignments.tsx +2 -2
  135. package/src/components/EditorPanel/components/Panels/index.tsx +4 -0
  136. package/src/components/EditorPanel/helpers/getVisualizationTypeConfigUpdate.ts +20 -7
  137. package/src/components/EditorPanel/helpers/tests/getVisualizationTypeConfigUpdate.test.ts +25 -2
  138. package/src/components/EditorPanel/helpers/updateFieldRankByValue.ts +5 -4
  139. package/src/components/EditorPanel/useEditorPermissions.test.tsx +94 -0
  140. package/src/components/EditorPanel/useEditorPermissions.ts +75 -25
  141. package/src/components/Forecasting/Forecasting.tsx +16 -7
  142. package/src/components/HeatMap/components/HeatMap.tsx +511 -178
  143. package/src/components/HeatMap/heatmap.constants.ts +7 -3
  144. package/src/components/HeatMap/heatmap.css +101 -2
  145. package/src/components/HeatMap/helpers/layout.ts +80 -0
  146. package/src/components/HeatMap/tests/HeatMap.test.tsx +339 -16
  147. package/src/components/HeatMap/tests/helpers.test.ts +79 -0
  148. package/src/components/Legend/Legend.Component.tsx +163 -148
  149. package/src/components/Legend/Legend.Suppression.tsx +3 -3
  150. package/src/components/Legend/LegendGroup/LegendGroup.styles.css +7 -0
  151. package/src/components/Legend/LegendGroup/LegendGroup.tsx +47 -35
  152. package/src/components/Legend/helpers/createFormatLabels.test.ts +226 -0
  153. package/src/components/Legend/helpers/createFormatLabels.tsx +45 -51
  154. package/src/components/LineChart/components/LineChart.Circle.tsx +3 -3
  155. package/src/components/LineChart/helpers.test.ts +126 -38
  156. package/src/components/LineChart/helpers.ts +9 -6
  157. package/src/components/LineChart/index.tsx +71 -27
  158. package/src/components/LineChart/tests/LineChart.test.tsx +630 -0
  159. package/src/components/LineChartRace/LineChartRace.test.tsx +275 -0
  160. package/src/components/LineChartRace/LineChartRace.tsx +134 -0
  161. package/src/components/LineChartRace/LineChartRaceFallback.tsx +28 -0
  162. package/src/components/LineChartRace/helpers.test.ts +88 -0
  163. package/src/components/LineChartRace/helpers.ts +157 -0
  164. package/src/components/LineChartRace/index.ts +3 -0
  165. package/src/components/LineChartRace/line-chart-race.css +16 -0
  166. package/src/components/LinearChart/ValueAxisAnchors.tsx +58 -0
  167. package/src/components/LinearChart/VisualizationRenderer.tsx +18 -23
  168. package/src/components/LinearChart/tests/LinearChart.test.tsx +412 -13
  169. package/src/components/LinearChart/tests/VisualizationRenderer.test.tsx +141 -0
  170. package/src/components/LinearChart/tests/mockConfigContext.ts +2 -1
  171. package/src/components/LinearChart.tsx +85 -54
  172. package/src/components/Network/components/Network.tsx +372 -0
  173. package/src/components/Network/helpers/layoutNetwork.test.ts +68 -0
  174. package/src/components/Network/helpers/layoutNetwork.ts +87 -0
  175. package/src/components/Network/helpers/prepareNetworkData.test.ts +116 -0
  176. package/src/components/Network/helpers/prepareNetworkData.ts +101 -0
  177. package/src/components/Network/helpers/resolveNetworkLabels.test.ts +112 -0
  178. package/src/components/Network/helpers/resolveNetworkLabels.ts +206 -0
  179. package/src/components/Network/index.tsx +3 -0
  180. package/src/components/Network/network.css +107 -0
  181. package/src/components/Network/types/index.ts +56 -0
  182. package/src/components/PairedBarChart.jsx +5 -10
  183. package/src/components/PairedBarChart.test.tsx +71 -0
  184. package/src/components/PieChart/PieChart.tsx +121 -13
  185. package/src/components/PieChart/helpers/labelPlacement.test.ts +88 -0
  186. package/src/components/PieChart/helpers/labelPlacement.ts +95 -0
  187. package/src/components/RacingChartRenderer.tsx +44 -0
  188. package/src/components/Regions/components/Regions.test.tsx +179 -0
  189. package/src/components/Regions/components/Regions.tsx +104 -69
  190. package/src/components/Regions/index.tsx +2 -3
  191. package/src/components/Sankey/components/Sankey.tsx +264 -437
  192. package/src/components/Sankey/helpers/getSankeyTooltip.ts +12 -0
  193. package/src/components/Sankey/helpers/prepareSankeyData.test.ts +71 -0
  194. package/src/components/Sankey/helpers/prepareSankeyData.ts +90 -0
  195. package/src/components/Sankey/sankey.scss +57 -116
  196. package/src/components/Sankey/types/index.ts +41 -4
  197. package/src/components/ScatterPlot/ScatterPlot.jsx +28 -12
  198. package/src/components/ScatterPlot/ScatterPlot.test.tsx +60 -0
  199. package/src/components/SmallMultiples/SmallMultiples.tsx +12 -12
  200. package/src/components/SmallMultiples/tests/SmallMultipleTile.test.tsx +7 -5
  201. package/src/components/raceTiming.ts +18 -0
  202. package/src/data/initial-state.js +79 -31
  203. package/src/helpers/applyChartTypeContract.ts +71 -0
  204. package/src/helpers/axisLabelFontSize.ts +2 -2
  205. package/src/helpers/boxPlotStats.ts +60 -0
  206. package/src/helpers/bumpChartTooltip.ts +2 -1
  207. package/src/helpers/calculateHorizontalBarCategoryLabelWidth.test.ts +37 -0
  208. package/src/helpers/calculateHorizontalBarCategoryLabelWidth.ts +3 -2
  209. package/src/helpers/calculateRightYAxisWidth.ts +60 -0
  210. package/src/helpers/categoryOrder.ts +60 -0
  211. package/src/helpers/colorAssignmentHelpers.ts +2 -2
  212. package/src/helpers/createNewChartConfig.ts +56 -0
  213. package/src/helpers/dataDrivenYAxisCategories.ts +18 -0
  214. package/src/helpers/forecastLegend.ts +88 -0
  215. package/src/helpers/getBoxPlotConfig.ts +26 -38
  216. package/src/helpers/getChartTypeDefaultPalette.ts +29 -0
  217. package/src/helpers/getColorCodeCategoryColorMap.ts +26 -0
  218. package/src/helpers/getColorScale.ts +31 -22
  219. package/src/helpers/getComboChartConfig.ts +0 -1
  220. package/src/helpers/getDynamicYAxisCategories.ts +69 -0
  221. package/src/helpers/getExcludedData.ts +0 -1
  222. package/src/helpers/getHasBoundarySuppression.ts +4 -3
  223. package/src/helpers/getMinMax.ts +11 -8
  224. package/src/helpers/getNewRuntime.ts +4 -3
  225. package/src/helpers/getPiePercent.ts +3 -3
  226. package/src/helpers/getStackedSeriesMax.ts +51 -0
  227. package/src/helpers/getV21ChartDistributionColors.ts +57 -0
  228. package/src/helpers/handleRankByValue.ts +15 -15
  229. package/src/helpers/isConvertLineToBarGraph.ts +2 -2
  230. package/src/helpers/seriesColumnSettings.ts +31 -3
  231. package/src/helpers/sizeHelpers.ts +4 -5
  232. package/src/helpers/smallMultiplesHelpers.ts +10 -13
  233. package/src/helpers/tests/applyChartTypeContract.test.ts +37 -0
  234. package/src/helpers/tests/boxPlotStats.test.ts +31 -0
  235. package/src/helpers/tests/bumpChartTooltip.test.ts +29 -0
  236. package/src/helpers/tests/calculateRightYAxisWidth.test.ts +105 -0
  237. package/src/helpers/tests/categoryOrder.test.ts +57 -0
  238. package/src/helpers/tests/countNumOfTicks.test.ts +11 -0
  239. package/src/helpers/tests/createNewChartConfig.test.ts +182 -0
  240. package/src/helpers/tests/getBoxPlotConfig.test.ts +70 -0
  241. package/src/helpers/tests/getColorCodeCategoryColorMap.test.ts +113 -0
  242. package/src/helpers/tests/getColorScale.test.ts +226 -1
  243. package/src/helpers/tests/getDynamicYAxisCategories.test.ts +61 -0
  244. package/src/helpers/tests/getMinMax.test.ts +41 -0
  245. package/src/helpers/tests/getStackedSeriesMax.test.ts +26 -0
  246. package/src/helpers/tests/handleRankByValue.test.ts +55 -37
  247. package/src/helpers/tests/seriesColumnSettings.test.ts +83 -0
  248. package/src/helpers/tests/smallMultiplesHelpers.test.ts +37 -1
  249. package/src/helpers/tests/tooltipHelpers.test.ts +80 -0
  250. package/src/helpers/tooltipHelpers.ts +16 -0
  251. package/src/hooks/tests/useRightAxis.test.tsx +143 -2
  252. package/src/hooks/tests/useScales.test.tsx +3 -6
  253. package/src/hooks/tests/useTooltip.test.tsx +484 -0
  254. package/src/hooks/usePrefersReducedMotion.ts +22 -0
  255. package/src/hooks/useReduceData.ts +4 -36
  256. package/src/hooks/useRightAxis.ts +19 -26
  257. package/src/hooks/useScales.ts +15 -0
  258. package/src/hooks/useTooltip.tsx +106 -71
  259. package/src/scss/main.scss +74 -2
  260. package/src/store/chart.reducer.ts +4 -4
  261. package/src/test/CdcChart.dataTable.test.tsx +582 -14
  262. package/src/test/CdcChart.dendrogram.test.tsx +277 -0
  263. package/src/test/CdcChart.finalization.test.tsx +143 -0
  264. package/src/test/CdcChart.network.test.tsx +271 -0
  265. package/src/types/ChartConfig.ts +91 -54
  266. package/src/types/ChartContext.ts +5 -0
  267. package/src/types/Horizon.ts +1 -1
  268. package/LICENSE +0 -201
  269. package/dist/cdcchart-BWVIUcAF.es.js +0 -4802
  270. package/src/_stories/Chart.Sankey.smoke.stories.tsx +0 -62
  271. package/src/components/Sankey/components/ColumnList.tsx +0 -19
  272. package/src/components/Sankey/helpers/getSankeyTooltip.tsx +0 -34
  273. package/src/components/Sankey/useSankeyAlert.tsx +0 -60
  274. package/src/data/legacy-defaults.ts +0 -18
  275. package/src/helpers/ensureSpecialChartAxisTypes.ts +0 -11
  276. package/src/helpers/tests/ensureSpecialChartAxisTypes.test.ts +0 -30
@@ -0,0 +1,469 @@
1
+ {
2
+ "annotations": [],
3
+ "type": "chart",
4
+ "debugSvg": false,
5
+ "chartMessage": {
6
+ "noData": "No Data Available"
7
+ },
8
+ "title": "",
9
+ "titleStyle": "small",
10
+ "showTitle": true,
11
+ "showDownloadMediaButton": false,
12
+ "theme": "theme-blue",
13
+ "animate": false,
14
+ "lineDatapointStyle": "hover",
15
+ "lineDatapointColor": "Same as Line",
16
+ "barHasBorder": "true",
17
+ "isLollipopChart": false,
18
+ "lollipopShape": "circle",
19
+ "lollipopColorStyle": "two-tone",
20
+ "visualizationSubType": "regular",
21
+ "barStyle": "",
22
+ "roundingStyle": "standard",
23
+ "tipRounding": "top",
24
+ "isResponsiveTicks": false,
25
+ "general": {
26
+ "annotationDropdownText": "Annotations",
27
+ "showMissingDataLabel": true,
28
+ "showSuppressedSymbol": true,
29
+ "showZeroValueData": true,
30
+ "hideNullValue": true,
31
+ "palette": {
32
+ "isReversed": true,
33
+ "version": "2.0",
34
+ "name": "sequential_bluereverse"
35
+ },
36
+ "useIntelligentLineChartLabels": false
37
+ },
38
+ "padding": {
39
+ "left": 5,
40
+ "right": 5
41
+ },
42
+ "preliminaryData": [],
43
+ "yAxis": {
44
+ "hideAxis": true,
45
+ "displayNumbersOnBar": false,
46
+ "hideLabel": false,
47
+ "hideTicks": true,
48
+ "size": 50,
49
+ "gridLines": true,
50
+ "enablePadding": false,
51
+ "min": "",
52
+ "max": "",
53
+ "labelColor": "#1c1d1f",
54
+ "tickLabelColor": "#1c1d1f",
55
+ "tickColor": "#1c1d1f",
56
+ "rightHideAxis": false,
57
+ "rightAxisSize": 0,
58
+ "rightLabel": "",
59
+ "rightLabelOffsetSize": 0,
60
+ "rightAxisLabelColor": "#1c1d1f",
61
+ "rightAxisTickLabelColor": "#1c1d1f",
62
+ "rightAxisTickColor": "#1c1d1f",
63
+ "numTicks": 4,
64
+ "axisPadding": 0,
65
+ "titlePlacement": "top",
66
+ "scalePadding": 10,
67
+ "tickRotation": 0,
68
+ "autoMaxStrategy": "clean-top-tick",
69
+ "anchors": [],
70
+ "shoMissingDataLabel": true,
71
+ "showMissingDataLine": true,
72
+ "categories": [],
73
+ "dataKey": "Percentages (%)"
74
+ },
75
+ "boxplot": {
76
+ "plots": [],
77
+ "borders": "true",
78
+ "plotOutlierValues": false,
79
+ "plotNonOutlierValues": true,
80
+ "labels": {
81
+ "q1": "Lower Quartile",
82
+ "q2": "q2",
83
+ "q3": "Upper Quartile",
84
+ "q4": "q4",
85
+ "minimum": "Minimum",
86
+ "maximum": "Maximum",
87
+ "mean": "Mean",
88
+ "median": "Median",
89
+ "sd": "Standard Deviation",
90
+ "iqr": "Interquartile Range",
91
+ "count": "Count",
92
+ "outliers": "Outliers",
93
+ "values": "Values",
94
+ "lowerBounds": "Lower Bounds",
95
+ "upperBounds": "Upper Bounds"
96
+ }
97
+ },
98
+ "topAxis": {
99
+ "hasLine": false
100
+ },
101
+ "isLegendValue": false,
102
+ "barThickness": 0.35,
103
+ "barHeight": 25,
104
+ "barSpace": 15,
105
+ "heights": {
106
+ "vertical": 300,
107
+ "horizontal": 750
108
+ },
109
+ "xAxis": {
110
+ "anchors": [],
111
+ "type": "categorical",
112
+ "showTargetLabel": true,
113
+ "targetLabel": "Target",
114
+ "hideAxis": false,
115
+ "hideLabel": false,
116
+ "hideTicks": false,
117
+ "size": 75,
118
+ "tickRotation": 0,
119
+ "min": "",
120
+ "max": "",
121
+ "labelColor": "#1c1d1f",
122
+ "tickLabelColor": "#1c1d1f",
123
+ "tickColor": "#1c1d1f",
124
+ "numTicks": 6,
125
+ "dateDisplayFormat": "%b. %-d %Y",
126
+ "labelOffset": 0,
127
+ "axisPadding": 200,
128
+ "target": 0,
129
+ "maxTickRotation": 0,
130
+ "padding": 5,
131
+ "showYearsOnce": false,
132
+ "sortByRecentDate": false,
133
+ "categoryOrder": [],
134
+ "categoryOrderType": "data",
135
+ "brushActive": false,
136
+ "brushDynamicYAxis": false,
137
+ "viewportNumTicks": {
138
+ "xs": 4,
139
+ "xxs": 4
140
+ },
141
+ "sortDates": false,
142
+ "dataKey": "Data"
143
+ },
144
+ "table": {
145
+ "label": "Data Table",
146
+ "expanded": false,
147
+ "limitHeight": false,
148
+ "height": "",
149
+ "caption": "",
150
+ "showDownloadUrl": false,
151
+ "downloadUrlLabel": "",
152
+ "showDataTableLink": true,
153
+ "showDownloadLinkBelow": true,
154
+ "search": false,
155
+ "searchPlaceholder": "",
156
+ "indexLabel": "",
157
+ "download": true,
158
+ "showVertical": true,
159
+ "dateDisplayFormat": "%B %-d, %Y",
160
+ "showMissingDataLabel": true,
161
+ "showSuppressedSymbol": true,
162
+ "collapsible": true,
163
+ "show": true
164
+ },
165
+ "orientation": "Pie",
166
+ "columns": {
167
+ "Numbers": {
168
+ "label": "Numbers",
169
+ "dataTable": true,
170
+ "tooltips": false,
171
+ "prefix": "",
172
+ "suffix": "",
173
+ "forestPlot": false,
174
+ "startingPoint": "0",
175
+ "forestPlotAlignRight": false,
176
+ "roundToPlace": 0,
177
+ "commas": false,
178
+ "showInViz": false,
179
+ "forestPlotStartingPoint": 0,
180
+ "order": 1,
181
+ "name": "Numbers"
182
+ }
183
+ },
184
+ "legend": {
185
+ "hide": false,
186
+ "behavior": "isolate",
187
+ "axisAlign": true,
188
+ "singleRow": true,
189
+ "colorCode": "",
190
+ "reverseLabelOrder": false,
191
+ "description": "",
192
+ "dynamicLegend": false,
193
+ "dynamicLegendDefaultText": "Show All",
194
+ "dynamicLegendItemLimit": 5,
195
+ "dynamicLegendItemLimitMessage": "Dynamic Legend Item Limit Hit.",
196
+ "dynamicLegendChartMessage": "Select Options from the Legend",
197
+ "label": "",
198
+ "lineMode": false,
199
+ "verticalSorted": false,
200
+ "highlightOnHover": false,
201
+ "hideSuppressedLabels": false,
202
+ "hideSuppressionLink": false,
203
+ "seriesHighlight": [],
204
+ "style": "circles",
205
+ "subStyle": "linear blocks",
206
+ "groupBy": "",
207
+ "shape": "circle",
208
+ "tickRotation": "",
209
+ "order": "dataColumn",
210
+ "hideBorder": {
211
+ "side": false,
212
+ "topBottom": true
213
+ },
214
+ "position": "top",
215
+ "orderedValues": [],
216
+ "patterns": {},
217
+ "patternField": "",
218
+ "unified": true
219
+ },
220
+ "smallMultiples": {
221
+ "mode": "",
222
+ "tileColumn": "",
223
+ "tilesPerRowDesktop": 3,
224
+ "tilesPerRowMobile": 1,
225
+ "tileOrder": [],
226
+ "tileOrderType": "asc",
227
+ "tileTitles": {},
228
+ "independentYAxis": false,
229
+ "colorMode": "same",
230
+ "synchronizedTooltips": true,
231
+ "showAreaUnderLine": true
232
+ },
233
+ "exclusions": {
234
+ "active": false,
235
+ "keys": []
236
+ },
237
+ "twoColor": {
238
+ "palette": "monochrome-1",
239
+ "isPaletteReversed": false
240
+ },
241
+ "labels": false,
242
+ "dataFormat": {
243
+ "commas": true,
244
+ "prefix": "",
245
+ "suffix": "",
246
+ "abbreviated": false,
247
+ "bottomSuffix": "",
248
+ "bottomPrefix": "",
249
+ "bottomAbbreviated": false,
250
+ "showPiePercent": true
251
+ },
252
+ "filters": [],
253
+ "confidenceKeys": {},
254
+ "visual": {
255
+ "border": false,
256
+ "borderColorTheme": false,
257
+ "accent": false,
258
+ "background": false,
259
+ "hideBackgroundColor": false,
260
+ "tp5Treatment": false,
261
+ "tp5Background": false,
262
+ "verticalHoverLine": false,
263
+ "horizontalHoverLine": false,
264
+ "lineDatapointSymbol": "none",
265
+ "maximumShapeAmount": 7
266
+ },
267
+ "useLogScale": false,
268
+ "filterBehavior": "Filter Change",
269
+ "highlightedBarValues": [],
270
+ "series": [],
271
+ "tooltips": {
272
+ "opacity": 90,
273
+ "singleSeries": false,
274
+ "dateDisplayFormat": "%B %-d, %Y"
275
+ },
276
+ "forestPlot": {
277
+ "startAt": 0,
278
+ "colors": {
279
+ "line": "",
280
+ "shape": ""
281
+ },
282
+ "lineOfNoEffect": {
283
+ "show": true
284
+ },
285
+ "type": "",
286
+ "pooledResult": {
287
+ "diamondHeight": 5,
288
+ "column": ""
289
+ },
290
+ "estimateField": "",
291
+ "estimateRadius": "",
292
+ "shape": "square",
293
+ "rowHeight": 20,
294
+ "description": {
295
+ "show": true,
296
+ "text": "description",
297
+ "location": 0
298
+ },
299
+ "result": {
300
+ "show": true,
301
+ "text": "result",
302
+ "location": 100
303
+ },
304
+ "radius": {
305
+ "min": 2,
306
+ "max": 10,
307
+ "scalingColumn": ""
308
+ },
309
+ "regression": {
310
+ "lower": 0,
311
+ "upper": 0,
312
+ "estimateField": 0
313
+ },
314
+ "leftWidthOffset": 0,
315
+ "rightWidthOffset": 0,
316
+ "showZeroLine": false,
317
+ "leftLabel": "",
318
+ "rightLabel": ""
319
+ },
320
+ "heatmap": {
321
+ "cellPadding": 1,
322
+ "rowLabelGap": 32,
323
+ "columnLabelGap": 56,
324
+ "xAxisPosition": "top",
325
+ "showCellValues": false
326
+ },
327
+ "area": {
328
+ "isStacked": false
329
+ },
330
+ "radar": {
331
+ "gridRings": 5,
332
+ "showGridRings": true,
333
+ "gridRingStyle": "polygons",
334
+ "scaleMin": 0,
335
+ "scaleMax": "",
336
+ "fillOpacity": 0.3,
337
+ "showPoints": true,
338
+ "pointRadius": 4,
339
+ "strokeWidth": 2,
340
+ "axisLabelOffset": 15
341
+ },
342
+ "sankey": {
343
+ "title": {
344
+ "defaultColor": "black"
345
+ },
346
+ "iterations": 1,
347
+ "rxValue": 0.9,
348
+ "overallSize": {
349
+ "width": 900,
350
+ "height": 700
351
+ },
352
+ "margin": {
353
+ "margin_y": 25,
354
+ "margin_x": 0
355
+ },
356
+ "nodeSize": {
357
+ "nodeWidth": 26,
358
+ "nodeHeight": 40
359
+ },
360
+ "nodePadding": 55,
361
+ "nodeFontColor": "black",
362
+ "nodeColor": {
363
+ "default": "#ff8500",
364
+ "inactive": "#808080"
365
+ },
366
+ "linkColor": {
367
+ "default": "#ffc900",
368
+ "inactive": "#D3D3D3"
369
+ },
370
+ "opacity": {
371
+ "nodeOpacityDefault": 1,
372
+ "nodeOpacityInactive": 0.1,
373
+ "LinkOpacityDefault": 1,
374
+ "LinkOpacityInactive": 0.1
375
+ },
376
+ "storyNodeFontColor": "#006778",
377
+ "storyNodeText": [],
378
+ "nodeValueStyle": {
379
+ "textBefore": "(",
380
+ "textAfter": ")"
381
+ },
382
+ "data": []
383
+ },
384
+ "markupVariables": [],
385
+ "enableMarkupVariables": false,
386
+ "errors": [],
387
+ "currentViewport": "lg",
388
+ "id": 13,
389
+ "category": "Charts",
390
+ "label": "Pie",
391
+ "subType": "Pie",
392
+ "icon": {
393
+ "type": {},
394
+ "key": null,
395
+ "ref": null,
396
+ "props": {},
397
+ "_owner": null
398
+ },
399
+ "content": "Present the numerical proportions of a data series.",
400
+ "visualizationType": "Pie",
401
+ "datasets": {},
402
+ "activeVizButtonID": 13,
403
+ "dataMetadata": {},
404
+ "dataFileName": "./ART Use by Age Group (1).csv",
405
+ "dataFileSourceType": "file",
406
+ "dataDescription": {
407
+ "horizontal": false,
408
+ "series": false
409
+ },
410
+ "version": "4.26.7",
411
+ "migrations": {
412
+ "addColorMigration": true
413
+ },
414
+ "locale": "en-US",
415
+ "data": [
416
+ {
417
+ "Data": "Age <35",
418
+ "Numbers": "169159",
419
+ "Percentages (%)": "36.6"
420
+ },
421
+ {
422
+ "Data": "Age 35–37",
423
+ "Numbers": "110072",
424
+ "Percentages (%)": "23.8"
425
+ },
426
+ {
427
+ "Data": "Age 38–40",
428
+ "Numbers": "93885",
429
+ "Percentages (%)": "20.3"
430
+ },
431
+ {
432
+ "Data": "Age 41–42",
433
+ "Numbers": "43458",
434
+ "Percentages (%)": "9.4"
435
+ },
436
+ {
437
+ "Data": "Age >42",
438
+ "Numbers": "45275",
439
+ "Percentages (%)": "9.8"
440
+ }
441
+ ],
442
+ "formattedData": [
443
+ {
444
+ "Data": "Age <35",
445
+ "Numbers": "169159",
446
+ "Percentages (%)": "36.6"
447
+ },
448
+ {
449
+ "Data": "Age 35–37",
450
+ "Numbers": "110072",
451
+ "Percentages (%)": "23.8"
452
+ },
453
+ {
454
+ "Data": "Age 38–40",
455
+ "Numbers": "93885",
456
+ "Percentages (%)": "20.3"
457
+ },
458
+ {
459
+ "Data": "Age 41–42",
460
+ "Numbers": "43458",
461
+ "Percentages (%)": "9.4"
462
+ },
463
+ {
464
+ "Data": "Age >42",
465
+ "Numbers": "45275",
466
+ "Percentages (%)": "9.8"
467
+ }
468
+ ]
469
+ }
@@ -0,0 +1,22 @@
1
+ {
2
+ "version": "4.26.8",
3
+ "type": "chart",
4
+ "visualizationType": "Bar",
5
+ "title": "Remote Vega data processing",
6
+ "dataUrl": "/examples/__data__/vega-remote-data.json",
7
+ "data": [{ "category": "Stale", "value": 1, "processedValue": 2 }],
8
+ "xAxis": { "dataKey": "category" },
9
+ "series": [{ "dataKey": "processedValue" }],
10
+ "table": { "show": true, "expanded": true },
11
+ "vegaConfig": {
12
+ "data": [
13
+ {
14
+ "name": "source",
15
+ "values": [{ "category": "Stale", "value": 1 }],
16
+ "transform": [{ "type": "formula", "expr": "datum.value * 2", "as": "processedValue" }]
17
+ }
18
+ ],
19
+ "marks": [{ "type": "rect", "from": { "data": "source" } }],
20
+ "scales": []
21
+ }
22
+ }
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@cdc/chart",
3
- "version": "4.26.6",
3
+ "version": "4.26.10",
4
4
  "description": "React component for visualizing tabular data in various types of charts",
5
5
  "license": "Apache-2.0",
6
6
  "author": "Matthew Pallansch <mpallansch@adittech.com>",
7
7
  "bugs": "https://github.com/CDCgov/cdc-open-viz/issues",
8
8
  "dependencies": {
9
- "@cdc/core": "^4.26.6",
9
+ "@cdc/core": "^4.26.10",
10
10
  "@hello-pangea/dnd": "^16.2.0",
11
11
  "@react-spring/web": "^9.7.5",
12
12
  "@rollup/plugin-dsv": "^3.0.2",
@@ -14,14 +14,13 @@
14
14
  "@visx/axis": "^3.12.0",
15
15
  "@visx/brush": "^3.12.0",
16
16
  "@visx/curve": "^3.12.0",
17
- "@visx/drag": "^3.12.0",
18
17
  "@visx/event": "^3.12.0",
19
18
  "@visx/glyph": "^3.12.0",
20
- "@visx/gradient": "^3.12.0",
21
19
  "@visx/heatmap": "^3.12.0",
20
+ "@visx/hierarchy": "^3.12.0",
22
21
  "@visx/legend": "^3.12.0",
23
22
  "@visx/marker": "^3.12.0",
24
- "@visx/mock-data": "^3.12.0",
23
+ "@visx/network": "^3.12.0",
25
24
  "@visx/pattern": "^3.12.0",
26
25
  "@visx/responsive": "^3.12.0",
27
26
  "@visx/scale": "^3.12.0",
@@ -32,32 +31,31 @@
32
31
  "@vitejs/plugin-react": "^5.1.2",
33
32
  "chroma-js": "^3.1.2",
34
33
  "d3-array": "^3.2.4",
35
- "d3-format": "^3.1.2",
34
+ "d3-force": "^3.0.0",
35
+ "d3-hierarchy": "^3.1.2",
36
36
  "d3-sankey": "^0.12.3",
37
37
  "d3-time-format": "^4.1.0",
38
- "dompurify": "^3.4.0",
38
+ "dompurify": "^3.4.17",
39
39
  "html-react-parser": "^5.2.3",
40
- "js-base64": "^2.5.2",
41
40
  "lodash": "^4.17.23",
42
- "papaparse": "^5.5.2",
43
41
  "react-accessible-accordion": "^5.0.1",
44
42
  "react-icons": "^5.5.0",
45
43
  "react-tooltip": "5.8.2-beta.3",
46
44
  "resize-observer-polyfill": "^1.5.1",
47
45
  "sass": "^1.89.2",
48
- "use-debounce": "^10.1.0",
49
- "vite": "^7.3.1",
46
+ "vite": "^7.3.7",
50
47
  "vite-plugin-css-injected-by-js": "^2.4.0",
51
48
  "vite-plugin-svgr": "^4.2.0",
52
49
  "whatwg-fetch": "^3.6.20"
53
50
  },
54
51
  "devDependencies": {
55
52
  "@types/d3-array": "^3.2.1",
56
- "@types/d3-format": "^3.0.4",
53
+ "@types/d3-force": "^3.0.10",
54
+ "@types/d3-hierarchy": "^3.1.7",
57
55
  "@types/d3-sankey": "^0.12.4",
58
56
  "@types/d3-time-format": "^4.0.3"
59
57
  },
60
- "gitHead": "f4a2a0d4a631a1b60fcf9534589697780e480b58",
58
+ "gitHead": "9062881d50c824ee6cdd71868bafd016a5e5694d",
61
59
  "main": "dist/cdcchart",
62
60
  "moduleName": "CdcChart",
63
61
  "peerDependencies": {
package/src/CdcChart.tsx CHANGED
@@ -7,7 +7,7 @@ import { parseCsvWithQuotes } from '@cdc/core/helpers/parseCsvWithQuotes'
7
7
  import { addCsvCacheBuster } from '@cdc/core/helpers/csvCacheBuster'
8
8
  import { extractDataAndMetadata } from '@cdc/core/helpers/extractDataAndMetadata'
9
9
  import Loading from '@cdc/core/components/Loading'
10
- import _ from 'lodash'
10
+ import isEqual from 'lodash/isEqual'
11
11
  import EditorContext from '@cdc/core/contexts/EditorContext'
12
12
  interface CdcChartProps {
13
13
  configUrl?: string
@@ -90,7 +90,7 @@ const CdcChartWrapper: React.FC<CdcChartProps> = ({
90
90
  }, [configUrl, loadConfig])
91
91
 
92
92
  useEffect(() => {
93
- if (!_.isEqual(prevFiltersRef.current, config.filters)) {
93
+ if (!isEqual(prevFiltersRef.current, config.filters)) {
94
94
  prevFiltersRef.current = config.filters
95
95
  reloadFilteredData()
96
96
  }