@cdc/chart 4.26.5 → 4.26.7

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 (128) hide show
  1. package/CONFIG.md +20 -14
  2. package/dist/{cdcchart-DQ00cQCm.es.js → cdcchart-BWVIUcAF.es.js} +5 -55
  3. package/dist/cdcchart.js +36554 -34320
  4. package/examples/feature/heatmap/average-age-categorical.json +1 -1
  5. package/examples/feature/heatmap/calendar-heatmap.json +1 -1
  6. package/examples/feature/heatmap/sparse-aggregation.json +1 -1
  7. package/examples/private/bad-y-axis.json +543 -0
  8. package/examples/private/bar-chart-negative-value.json +455 -0
  9. package/examples/private/flueview.json +22051 -0
  10. package/package.json +3 -11
  11. package/src/CdcChart.tsx +7 -6
  12. package/src/CdcChartComponent.tsx +71 -18
  13. package/src/_stories/Chart.PieLabels.stories.tsx +47 -0
  14. package/src/_stories/Chart.SeriesColorAssignments.stories.tsx +183 -0
  15. package/src/_stories/Chart.YAxisAutoMaxStrategy.stories.tsx +52 -0
  16. package/src/_stories/Chart.YAxisFilterDomain.stories.tsx +90 -0
  17. package/src/_stories/Chart.smoke.stories.tsx +14 -1
  18. package/src/_stories/ChartAnnotation.smoke.stories.tsx +10 -0
  19. package/src/_stories/ChartPrefixSuffix.smoke.stories.tsx +28 -1
  20. package/src/_stories/_mock/annotation_event-line_mock.json +1064 -0
  21. package/src/_stories/_mock/heatmap-average-age-categorical.json +1 -1
  22. package/src/_stories/_mock/heatmap.json +1 -1
  23. package/src/components/Annotations/components/AnnotationDraggable.styles.css +22 -1
  24. package/src/components/Annotations/components/AnnotationDraggable.tsx +219 -119
  25. package/src/components/Annotations/tests/AnnotationDraggable.test.tsx +198 -0
  26. package/src/components/Axis/LeftAxis.tsx +3 -0
  27. package/src/components/Axis/LeftAxisGridlines.tsx +8 -1
  28. package/src/components/Axis/RightAxis.tsx +3 -0
  29. package/src/components/Axis/tests/AxisTickValues.test.tsx +86 -0
  30. package/src/components/BarChart/components/BarChart.Horizontal.tsx +1 -2
  31. package/src/components/BarChart/components/BarChart.StackedHorizontal.tsx +1 -1
  32. package/src/components/BarChart/components/BarChart.StackedVertical.tsx +1 -1
  33. package/src/components/BarChart/components/BarChart.Vertical.tsx +1 -2
  34. package/src/components/BarChart/helpers/getBarData.ts +28 -28
  35. package/src/components/BarChart/helpers/getBarHeights.ts +2 -2
  36. package/src/components/BarChart/helpers/tests/useBarChart.test.tsx +98 -0
  37. package/src/components/BarChart/helpers/useBarChart.ts +4 -5
  38. package/src/components/BoxPlot/BoxPlot.Horizontal.tsx +7 -6
  39. package/src/components/BoxPlot/BoxPlot.Vertical.tsx +9 -7
  40. package/src/components/BoxPlot/helpers/index.ts +4 -3
  41. package/src/components/Brush/BrushSelector.tsx +1 -1
  42. package/src/components/EditorPanel/EditorPanel.tsx +457 -165
  43. package/src/components/EditorPanel/components/Panels/Panel.Annotate.tsx +101 -52
  44. package/src/components/EditorPanel/components/Panels/Panel.General.tsx +16 -7
  45. package/src/components/EditorPanel/components/Panels/Panel.PatternSettings.tsx +3 -3
  46. package/src/components/EditorPanel/components/Panels/Panel.Series.tsx +19 -4
  47. package/src/components/EditorPanel/components/Panels/Panel.SmallMultiples.test.tsx +98 -0
  48. package/src/components/EditorPanel/components/Panels/Panel.SmallMultiples.tsx +10 -0
  49. package/src/components/EditorPanel/components/Panels/Panel.Visual.test.tsx +484 -0
  50. package/src/components/EditorPanel/components/Panels/Panel.Visual.tsx +3 -0
  51. package/src/components/EditorPanel/components/Panels/SeriesColorAssignments.tsx +262 -0
  52. package/src/components/EditorPanel/components/Panels/panelVisual.styles.css +32 -0
  53. package/src/components/EditorPanel/components/panels.scss +10 -0
  54. package/src/components/EditorPanel/editor-panel.scss +47 -0
  55. package/src/components/EditorPanel/helpers/getVisualizationTypeConfigUpdate.ts +6 -2
  56. package/src/components/EditorPanel/helpers/tests/getVisualizationTypeConfigUpdate.test.ts +20 -2
  57. package/src/components/EditorPanel/helpers/updateFieldRankByValue.ts +3 -3
  58. package/src/components/EditorPanel/useEditorPermissions.test.tsx +288 -11
  59. package/src/components/EditorPanel/useEditorPermissions.ts +46 -6
  60. package/src/components/Forecasting/Forecasting.tsx +1 -1
  61. package/src/components/HeatMap/components/HeatMap.tsx +22 -17
  62. package/src/components/HeatMap/components/HeatMapGradientLegend.tsx +29 -15
  63. package/src/components/HeatMap/heatmap.css +15 -1
  64. package/src/components/HeatMap/tests/HeatMap.test.tsx +39 -7
  65. package/src/components/Legend/Legend.Component.tsx +56 -61
  66. package/src/components/Legend/Legend.Suppression.tsx +3 -3
  67. package/src/components/Legend/LegendGroup/LegendGroup.tsx +0 -1
  68. package/src/components/Legend/helpers/createFormatLabels.test.ts +88 -0
  69. package/src/components/Legend/helpers/createFormatLabels.tsx +6 -1
  70. package/src/components/LineChart/helpers.test.ts +230 -1
  71. package/src/components/LineChart/helpers.ts +25 -14
  72. package/src/components/LineChart/index.tsx +23 -7
  73. package/src/components/LinearChart/tests/LinearChart.test.tsx +30 -0
  74. package/src/components/LinearChart.tsx +51 -15
  75. package/src/components/PieChart/PieChart.tsx +117 -10
  76. package/src/components/PieChart/helpers/labelPlacement.test.ts +88 -0
  77. package/src/components/PieChart/helpers/labelPlacement.ts +95 -0
  78. package/src/components/ScatterPlot/ScatterPlot.jsx +5 -13
  79. package/src/components/SmallMultiples/SmallMultipleTile.tsx +3 -0
  80. package/src/components/SmallMultiples/SmallMultiples.tsx +38 -9
  81. package/src/components/SmallMultiples/tests/SmallMultiples.test.tsx +170 -0
  82. package/src/data/initial-state.js +3 -0
  83. package/src/helpers/calculateLeftYAxisWidth.ts +9 -3
  84. package/src/helpers/categoryOrder.ts +60 -0
  85. package/src/helpers/colorAssignmentHelpers.ts +102 -0
  86. package/src/helpers/dataHelpers.ts +11 -1
  87. package/src/helpers/getAxisMaxOverride.ts +16 -0
  88. package/src/helpers/getBoxPlotConfig.ts +19 -12
  89. package/src/helpers/getCleanTopTickMax.ts +64 -0
  90. package/src/helpers/getColorScale.ts +18 -9
  91. package/src/helpers/getComboChartConfig.ts +0 -1
  92. package/src/helpers/getExcludedData.ts +0 -1
  93. package/src/helpers/getHasBoundarySuppression.ts +27 -0
  94. package/src/helpers/getMinMax.ts +25 -22
  95. package/src/helpers/getNewRuntime.ts +0 -2
  96. package/src/helpers/getPiePercent.ts +3 -3
  97. package/src/helpers/getYAxisDomainData.ts +38 -0
  98. package/src/helpers/getYAxisFinalizationEligibility.ts +40 -0
  99. package/src/helpers/hasSpacedInlineLabel.ts +10 -0
  100. package/src/helpers/isConvertLineToBarGraph.ts +2 -2
  101. package/src/helpers/seriesColumnSettings.ts +26 -7
  102. package/src/helpers/sizeHelpers.ts +0 -2
  103. package/src/helpers/smallMultiplesHelpers.ts +5 -0
  104. package/src/helpers/tests/calculateLeftYAxisWidth.test.ts +38 -0
  105. package/src/helpers/tests/categoryOrder.test.ts +57 -0
  106. package/src/helpers/tests/dataHelpers.test.ts +135 -0
  107. package/src/helpers/tests/getAxisMaxOverride.test.ts +36 -0
  108. package/src/helpers/tests/getCleanTopTickMax.test.ts +165 -0
  109. package/src/helpers/tests/getColorScale.test.ts +197 -0
  110. package/src/helpers/tests/getMinMax.test.ts +211 -0
  111. package/src/helpers/tests/getYAxisDomainData.test.ts +119 -0
  112. package/src/helpers/tests/getYAxisFinalizationEligibility.test.ts +185 -0
  113. package/src/helpers/tests/{getYAxisAutoPaddingMode.test.ts → hasSpacedInlineLabel.test.ts} +17 -32
  114. package/src/helpers/tests/seriesColumnSettings.test.ts +76 -2
  115. package/src/helpers/tests/smallMultiplesHelpers.test.ts +99 -0
  116. package/src/hooks/tests/useRightAxis.test.tsx +268 -0
  117. package/src/hooks/tests/useScales.test.tsx +302 -27
  118. package/src/hooks/tests/useTooltip.test.tsx +132 -0
  119. package/src/hooks/useRightAxis.ts +35 -25
  120. package/src/hooks/useScales.ts +45 -28
  121. package/src/hooks/useTooltip.tsx +17 -11
  122. package/src/store/chart.reducer.ts +0 -1
  123. package/src/test/CdcChart.dataTable.test.tsx +216 -0
  124. package/src/types/ChartConfig.ts +6 -1
  125. package/src/types/ChartContext.ts +3 -0
  126. package/src/helpers/getYAxisAutoPadding.ts +0 -55
  127. package/src/helpers/getYAxisAutoPaddingMode.ts +0 -17
  128. package/src/helpers/tests/getYAxisAutoPadding.test.ts +0 -37
@@ -0,0 +1,455 @@
1
+ {
2
+ "annotations": [],
3
+ "type": "chart",
4
+ "debugSvg": false,
5
+ "chartMessage": {
6
+ "noData": "No Data Available"
7
+ },
8
+ "title": "Example Bar Chart",
9
+ "showTitle": false,
10
+ "showDownloadMediaButton": false,
11
+ "theme": "theme-blue",
12
+ "animate": false,
13
+ "lineDatapointStyle": "hover",
14
+ "lineDatapointColor": "Same as Line",
15
+ "barHasBorder": "true",
16
+ "isLollipopChart": false,
17
+ "lollipopShape": "circle",
18
+ "lollipopColorStyle": "two-tone",
19
+ "visualizationSubType": "regular",
20
+ "barStyle": "",
21
+ "roundingStyle": "standard",
22
+ "tipRounding": "top",
23
+ "isResponsiveTicks": true,
24
+ "general": {
25
+ "annotationDropdownText": "Annotations",
26
+ "showMissingDataLabel": true,
27
+ "showSuppressedSymbol": true,
28
+ "showZeroValueData": true,
29
+ "hideNullValue": true,
30
+ "showZeroValueDataLabel": true,
31
+ "palette": {
32
+ "name": "divergent_blue_cyan",
33
+ "version": "2.0",
34
+ "backups": [
35
+ {
36
+ "name": "qualitative_bold",
37
+ "version": "1.0"
38
+ }
39
+ ]
40
+ }
41
+ },
42
+ "padding": {
43
+ "left": 5,
44
+ "right": 5
45
+ },
46
+ "preliminaryData": [],
47
+ "yAxis": {
48
+ "hideAxis": false,
49
+ "displayNumbersOnBar": false,
50
+ "hideLabel": false,
51
+ "hideTicks": false,
52
+ "size": "118",
53
+ "gridLines": false,
54
+ "enablePadding": false,
55
+ "min": "",
56
+ "max": "400",
57
+ "labelColor": "#1c1d1f",
58
+ "tickLabelColor": "#1c1d1f",
59
+ "tickColor": "#1c1d1f",
60
+ "rightHideAxis": true,
61
+ "rightAxisSize": 50,
62
+ "rightLabel": "",
63
+ "rightLabelOffsetSize": 0,
64
+ "rightAxisLabelColor": "#1c1d1f",
65
+ "rightAxisTickLabelColor": "#1c1d1f",
66
+ "rightAxisTickColor": "#1c1d1f",
67
+ "numTicks": "",
68
+ "axisPadding": 0,
69
+ "scalePadding": 10,
70
+ "tickRotation": 0,
71
+ "anchors": [],
72
+ "shoMissingDataLabel": true,
73
+ "showMissingDataLine": true,
74
+ "categories": [],
75
+ "label": "Y Axis Example Label",
76
+ "maxValue": "400"
77
+ },
78
+ "boxplot": [],
79
+ "topAxis": {
80
+ "hasLine": false
81
+ },
82
+ "isLegendValue": false,
83
+ "barThickness": "0.6",
84
+ "barHeight": 25,
85
+ "barSpace": 15,
86
+ "heights": {
87
+ "vertical": "250",
88
+ "horizontal": 750
89
+ },
90
+ "xAxis": {
91
+ "sortDates": false,
92
+ "anchors": [],
93
+ "type": "categorical",
94
+ "showTargetLabel": true,
95
+ "targetLabel": "Target",
96
+ "hideAxis": false,
97
+ "hideLabel": false,
98
+ "hideTicks": false,
99
+ "size": "0",
100
+ "tickRotation": 0,
101
+ "min": "",
102
+ "max": "",
103
+ "labelColor": "#1c1d1f",
104
+ "tickLabelColor": "#1c1d1f",
105
+ "tickColor": "#1c1d1f",
106
+ "numTicks": "",
107
+ "labelOffset": 0,
108
+ "axisPadding": 0,
109
+ "target": 0,
110
+ "maxTickRotation": "45",
111
+ "padding": 5,
112
+ "showYearsOnce": false,
113
+ "sortByRecentDate": false,
114
+ "brushActive": false,
115
+ "dataKey": "Date",
116
+ "label": "X Axis Example Label",
117
+ "tickWidthMax": 77,
118
+ "axisBBox": 110.040283203125
119
+ },
120
+ "table": {
121
+ "label": "Data Type by Date",
122
+ "expanded": false,
123
+ "limitHeight": false,
124
+ "height": "",
125
+ "caption": "",
126
+ "showDownloadUrl": false,
127
+ "showDataTableLink": true,
128
+ "showDownloadLinkBelow": true,
129
+ "indexLabel": "Date",
130
+ "download": true,
131
+ "showVertical": true,
132
+ "dateDisplayFormat": "",
133
+ "showMissingDataLabel": true,
134
+ "showSuppressedSymbol": true,
135
+ "collapsible": true,
136
+ "show": true
137
+ },
138
+ "orientation": "vertical",
139
+ "columns": {},
140
+ "legend": {
141
+ "hide": false,
142
+ "behavior": "isolate",
143
+ "axisAlign": true,
144
+ "singleRow": true,
145
+ "colorCode": "",
146
+ "reverseLabelOrder": false,
147
+ "description": "",
148
+ "dynamicLegend": false,
149
+ "dynamicLegendDefaultText": "Show All",
150
+ "dynamicLegendItemLimit": 5,
151
+ "dynamicLegendItemLimitMessage": "Dynamic Legend Item Limit Hit.",
152
+ "dynamicLegendChartMessage": "Select Options from the Legend",
153
+ "label": "Type of Data",
154
+ "lineMode": false,
155
+ "verticalSorted": false,
156
+ "highlightOnHover": false,
157
+ "hideSuppressedLabels": false,
158
+ "hideSuppressionLink": false,
159
+ "seriesHighlight": [],
160
+ "style": "circles",
161
+ "subStyle": "linear blocks",
162
+ "groupBy": "",
163
+ "shape": "circle",
164
+ "tickRotation": "",
165
+ "order": "dataColumn",
166
+ "hideBorder": {
167
+ "side": false,
168
+ "topBottom": true
169
+ },
170
+ "position": "right",
171
+ "orderedValues": [],
172
+ "patterns": {},
173
+ "patternField": "",
174
+ "unified": true
175
+ },
176
+ "exclusions": {
177
+ "active": false,
178
+ "keys": []
179
+ },
180
+ "twoColor": {
181
+ "palette": "monochrome-1",
182
+ "isPaletteReversed": false
183
+ },
184
+ "labels": false,
185
+ "dataFormat": {
186
+ "commas": false,
187
+ "prefix": "",
188
+ "suffix": " units",
189
+ "abbreviated": false,
190
+ "bottomSuffix": "",
191
+ "bottomPrefix": "",
192
+ "bottomAbbreviated": false,
193
+ "useCommas": false,
194
+ "roundToPlace": ""
195
+ },
196
+ "filters": [],
197
+ "confidenceKeys": {},
198
+ "visual": {
199
+ "border": true,
200
+ "accent": true,
201
+ "background": true,
202
+ "verticalHoverLine": false,
203
+ "horizontalHoverLine": false,
204
+ "lineDatapointSymbol": "none",
205
+ "maximumShapeAmount": 7
206
+ },
207
+ "useLogScale": false,
208
+ "filterBehavior": "Filter Change",
209
+ "highlightedBarValues": [],
210
+ "series": [
211
+ {
212
+ "dataKey": "Data 1",
213
+ "type": "Bar",
214
+ "tooltip": true,
215
+ "axis": "Left"
216
+ },
217
+ {
218
+ "dataKey": "Data 2",
219
+ "type": "Bar",
220
+ "tooltip": true,
221
+ "axis": "Left"
222
+ },
223
+ {
224
+ "dataKey": "Data 3",
225
+ "type": "Bar",
226
+ "tooltip": true,
227
+ "axis": "Left"
228
+ }
229
+ ],
230
+ "tooltips": {
231
+ "opacity": 90,
232
+ "singleSeries": false,
233
+ "dateDisplayFormat": ""
234
+ },
235
+ "forestPlot": {
236
+ "startAt": 0,
237
+ "colors": {
238
+ "line": "",
239
+ "shape": ""
240
+ },
241
+ "lineOfNoEffect": {
242
+ "show": true
243
+ },
244
+ "type": "",
245
+ "pooledResult": {
246
+ "diamondHeight": 5,
247
+ "column": ""
248
+ },
249
+ "estimateField": "",
250
+ "estimateRadius": "",
251
+ "shape": "square",
252
+ "rowHeight": 20,
253
+ "description": {
254
+ "show": true,
255
+ "text": "description",
256
+ "location": 0
257
+ },
258
+ "result": {
259
+ "show": true,
260
+ "text": "result",
261
+ "location": 100
262
+ },
263
+ "radius": {
264
+ "min": 2,
265
+ "max": 10,
266
+ "scalingColumn": ""
267
+ },
268
+ "regression": {
269
+ "lower": 0,
270
+ "upper": 0,
271
+ "estimateField": 0
272
+ },
273
+ "leftWidthOffset": 0,
274
+ "rightWidthOffset": 0,
275
+ "showZeroLine": false,
276
+ "leftLabel": "",
277
+ "rightLabel": ""
278
+ },
279
+ "area": {
280
+ "isStacked": false
281
+ },
282
+ "sankey": {
283
+ "title": {
284
+ "defaultColor": "black"
285
+ },
286
+ "iterations": 1,
287
+ "rxValue": 0.9,
288
+ "overallSize": {
289
+ "width": 900,
290
+ "height": 700
291
+ },
292
+ "margin": {
293
+ "margin_y": 25,
294
+ "margin_x": 0
295
+ },
296
+ "nodeSize": {
297
+ "nodeWidth": 26,
298
+ "nodeHeight": 40
299
+ },
300
+ "nodePadding": 55,
301
+ "nodeFontColor": "black",
302
+ "nodeColor": {
303
+ "default": "#ff8500",
304
+ "inactive": "#808080"
305
+ },
306
+ "linkColor": {
307
+ "default": "#ffc900",
308
+ "inactive": "#D3D3D3"
309
+ },
310
+ "opacity": {
311
+ "nodeOpacityDefault": 1,
312
+ "nodeOpacityInactive": 0.1,
313
+ "LinkOpacityDefault": 1,
314
+ "LinkOpacityInactive": 0.1
315
+ },
316
+ "storyNodeFontColor": "#006778",
317
+ "storyNodeText": [],
318
+ "nodeValueStyle": {
319
+ "textBefore": "(",
320
+ "textAfter": ")"
321
+ },
322
+ "data": []
323
+ },
324
+ "markupVariables": [],
325
+ "enableMarkupVariables": false,
326
+ "fontSize": "medium",
327
+ "brush": {
328
+ "height": 25,
329
+ "active": false,
330
+ "data": [
331
+ {
332
+ "Date": "1/15/2016",
333
+ "Data 1": "90",
334
+ "Data 2": "135",
335
+ "Data 3": "300",
336
+ "Data 4": "95",
337
+ "Data 5": "120",
338
+ "Data 6": "310"
339
+ },
340
+ {
341
+ "Date": "2/15/2016",
342
+ "Data 1": "40",
343
+ "Data 2": "90",
344
+ "Data 3": "240",
345
+ "Data 4": "60",
346
+ "Data 5": "160",
347
+ "Data 6": "200"
348
+ },
349
+ {
350
+ "Date": "3/15/2016",
351
+ "Data 1": "50",
352
+ "Data 2": "300",
353
+ "Data 3": "290",
354
+ "Data 4": "100",
355
+ "Data 5": "200",
356
+ "Data 6": "250"
357
+ },
358
+ {
359
+ "Date": "4/15/2016",
360
+ "Data 1": "120",
361
+ "Data 2": "160",
362
+ "Data 3": "230",
363
+ "Data 4": "180",
364
+ "Data 5": "160",
365
+ "Data 6": "220"
366
+ },
367
+ {
368
+ "Date": "5/15/2016",
369
+ "Data 1": "80",
370
+ "Data 2": "350",
371
+ "Data 3": "300",
372
+ "Data 4": "150",
373
+ "Data 5": "130",
374
+ "Data 6": "100"
375
+ },
376
+ {
377
+ "Date": "6/15/2016",
378
+ "Data 1": "90",
379
+ "Data 2": "220",
380
+ "Data 3": "320",
381
+ "Data 4": "100",
382
+ "Data 5": "220",
383
+ "Data 6": "300"
384
+ }
385
+ ]
386
+ },
387
+ "isPaletteReversed": false,
388
+ "suppressedData": [],
389
+ "height": 300,
390
+ "visualizationType": "Bar",
391
+ "description": "",
392
+ "dataCutoff": "0",
393
+ "validated": 4.23,
394
+ "dynamicMarginTop": 105,
395
+ "version": "4.25.10",
396
+ "migrations": {
397
+ "addColorMigration": true
398
+ },
399
+ "data": [
400
+ {
401
+ "Date": "1/15/2016",
402
+ "Data 1": "90",
403
+ "Data 2": "135",
404
+ "Data 3": "300",
405
+ "Data 4": "95",
406
+ "Data 5": "120",
407
+ "Data 6": "310"
408
+ },
409
+ {
410
+ "Date": "2/15/2016",
411
+ "Data 1": "40",
412
+ "Data 2": "90",
413
+ "Data 3": "240",
414
+ "Data 4": "60",
415
+ "Data 5": "160",
416
+ "Data 6": "200"
417
+ },
418
+ {
419
+ "Date": "3/15/2016",
420
+ "Data 1": "50",
421
+ "Data 2": "300",
422
+ "Data 3": "290",
423
+ "Data 4": "100",
424
+ "Data 5": "200",
425
+ "Data 6": "250"
426
+ },
427
+ {
428
+ "Date": "4/15/2016",
429
+ "Data 1": "120",
430
+ "Data 2": "160",
431
+ "Data 3": "230",
432
+ "Data 4": "180",
433
+ "Data 5": "160",
434
+ "Data 6": "220"
435
+ },
436
+ {
437
+ "Date": "5/15/2016",
438
+ "Data 1": "80",
439
+ "Data 2": "350",
440
+ "Data 3": "300",
441
+ "Data 4": "150",
442
+ "Data 5": "130",
443
+ "Data 6": "100"
444
+ },
445
+ {
446
+ "Date": "6/15/2016",
447
+ "Data 1": "90",
448
+ "Data 2": "220",
449
+ "Data 3": "320",
450
+ "Data 4": "100",
451
+ "Data 5": "220",
452
+ "Data 6": "300"
453
+ }
454
+ ]
455
+ }