@cdc/chart 4.23.11 → 4.24.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 (103) hide show
  1. package/dist/cdcchart.js +30220 -29764
  2. package/examples/feature/bar/additional-column-tooltip.json +446 -0
  3. package/examples/feature/bar/tall-data.json +98 -0
  4. package/examples/feature/forest-plot/forest-plot.json +63 -19
  5. package/examples/feature/forest-plot/linear.json +52 -3
  6. package/examples/feature/forest-plot/log.json +26 -0
  7. package/examples/feature/forest-plot/logarithmic.json +0 -35
  8. package/examples/feature/line/line-chart-preliminary.json +346 -0
  9. package/examples/feature/scatterplot/scatterplot.json +272 -33
  10. package/examples/private/chart-t.json +3740 -0
  11. package/examples/private/combo.json +369 -0
  12. package/examples/private/epi-data.csv +13 -0
  13. package/examples/private/epi-data.json +62 -0
  14. package/examples/private/epi.json +403 -0
  15. package/examples/private/occupancy.json +109283 -0
  16. package/examples/private/prod-line-config.json +401 -0
  17. package/examples/private/region-data.json +822 -0
  18. package/examples/private/region-testing.json +312 -0
  19. package/examples/private/scaling.json +45325 -0
  20. package/examples/private/testing-data.json +1739 -0
  21. package/examples/private/testing.json +816 -0
  22. package/index.html +7 -7
  23. package/package.json +2 -2
  24. package/src/CdcChart.tsx +29 -210
  25. package/src/ConfigContext.tsx +6 -0
  26. package/src/_stories/ChartEditor.stories.tsx +22 -0
  27. package/src/_stories/ChartLine.preliminary.tsx +19 -0
  28. package/src/_stories/_mock/pie_config.json +191 -0
  29. package/src/_stories/_mock/pie_data.json +218 -0
  30. package/src/_stories/_mock/preliminary_mock.json +346 -0
  31. package/src/components/{AreaChart.Stacked.jsx → AreaChart/components/AreaChart.Stacked.jsx} +2 -2
  32. package/src/components/{AreaChart.jsx → AreaChart/components/AreaChart.jsx} +1 -1
  33. package/src/components/AreaChart/index.tsx +4 -0
  34. package/src/components/{BarChart.Horizontal.tsx → BarChart/components/BarChart.Horizontal.tsx} +8 -8
  35. package/src/components/{BarChart.StackedHorizontal.tsx → BarChart/components/BarChart.StackedHorizontal.tsx} +37 -7
  36. package/src/components/BarChart/components/BarChart.StackedVertical.tsx +106 -0
  37. package/src/components/{BarChart.Vertical.tsx → BarChart/components/BarChart.Vertical.tsx} +41 -57
  38. package/src/components/BarChart/components/BarChart.jsx +39 -0
  39. package/src/components/{BarChartType.jsx → BarChart/components/BarChartType.jsx} +0 -2
  40. package/src/components/BarChart/components/context.tsx +13 -0
  41. package/src/components/BarChart/index.tsx +3 -0
  42. package/src/components/{BoxPlot.jsx → BoxPlot/BoxPlot.jsx} +1 -1
  43. package/src/components/BoxPlot/index.tsx +3 -0
  44. package/src/components/{EditorPanel.jsx → EditorPanel/EditorPanel.tsx} +667 -851
  45. package/src/components/EditorPanel/components/Panel.DateHighlighting.tsx +109 -0
  46. package/src/components/{ForestPlotSettings.jsx → EditorPanel/components/Panel.ForestPlotSettings.tsx} +87 -166
  47. package/src/components/EditorPanel/components/Panel.Regions.tsx +168 -0
  48. package/src/components/{Series.jsx → EditorPanel/components/Panel.Series.tsx} +1 -1
  49. package/src/components/EditorPanel/components/PanelProps.ts +3 -0
  50. package/src/components/EditorPanel/components/Panels.tsx +13 -0
  51. package/src/components/EditorPanel/components/panels.scss +72 -0
  52. package/src/components/EditorPanel/editor-panel.scss +751 -0
  53. package/src/components/EditorPanel/index.tsx +3 -0
  54. package/src/{hooks → components/EditorPanel}/useEditorPermissions.js +29 -2
  55. package/src/components/{Forecasting.jsx → Forecasting/Forecasting.jsx} +1 -1
  56. package/src/components/Forecasting/index.tsx +3 -0
  57. package/src/components/ForestPlot/ForestPlot.tsx +254 -0
  58. package/src/components/ForestPlot/ForestPlotProps.ts +7 -0
  59. package/src/components/ForestPlot/index.tsx +1 -209
  60. package/src/components/{Legend.jsx → Legend/Legend.tsx} +150 -113
  61. package/src/components/Legend/index.tsx +3 -0
  62. package/src/components/LineChart/LineChartProps.ts +29 -0
  63. package/src/components/LineChart/{LineChart.Circle.tsx → components/LineChart.Circle.tsx} +12 -3
  64. package/src/components/LineChart/helpers.ts +45 -0
  65. package/src/components/LineChart/index.tsx +20 -8
  66. package/src/components/LinearChart.jsx +52 -69
  67. package/src/components/{PieChart.jsx → PieChart/PieChart.tsx} +16 -7
  68. package/src/components/PieChart/index.tsx +3 -0
  69. package/src/components/Regions/components/Regions.tsx +135 -0
  70. package/src/components/Regions/index.tsx +3 -0
  71. package/src/components/{ScatterPlot.jsx → ScatterPlot/ScatterPlot.jsx} +3 -3
  72. package/src/components/ScatterPlot/index.tsx +3 -0
  73. package/src/components/{SparkLine.jsx → Sparkline/SparkLine.jsx} +2 -2
  74. package/src/components/Sparkline/index.tsx +3 -0
  75. package/src/data/initial-state.js +5 -6
  76. package/src/helpers/abbreviateNumber.ts +17 -0
  77. package/src/helpers/computeMarginBottom.ts +55 -0
  78. package/src/helpers/filterData.ts +18 -0
  79. package/src/helpers/generateColorsArray.ts +8 -0
  80. package/src/helpers/getQuartiles.ts +30 -0
  81. package/src/helpers/handleChartAriaLabels.ts +19 -0
  82. package/src/helpers/handleLineType.ts +18 -0
  83. package/src/helpers/lineOptions.ts +18 -0
  84. package/src/helpers/sort.ts +7 -0
  85. package/src/helpers/tests/computeMarginBottom.test.ts +20 -0
  86. package/src/hooks/useBarChart.js +7 -6
  87. package/src/hooks/useScales.ts +1 -1
  88. package/src/hooks/{useTooltip.jsx → useTooltip.tsx} +23 -21
  89. package/src/scss/main.scss +67 -3
  90. package/src/types/ChartConfig.ts +158 -23
  91. package/src/types/ChartContext.ts +26 -10
  92. package/src/types/ForestPlot.ts +7 -14
  93. package/examples/feature/scatterplot/scatterplot-continuous.csv +0 -17
  94. package/src/ConfigContext.jsx +0 -5
  95. package/src/components/BarChart.StackedVertical.tsx +0 -91
  96. package/src/components/BarChart.jsx +0 -30
  97. package/src/components/ForestPlot/Readme.md +0 -0
  98. package/src/scss/LinearChart.scss +0 -0
  99. package/src/scss/editor-panel.scss +0 -745
  100. package/src/scss/legend.scss +0 -206
  101. package/src/scss/mixins.scss +0 -0
  102. package/src/scss/variables.scss +0 -1
  103. package/src/types/ChartProps.ts +0 -7
@@ -0,0 +1,751 @@
1
+ @import '@cdc/core/styles/base';
2
+ @import '@cdc/core/styles/v2/themes/color-definitions';
3
+
4
+ //TODO: Remove after COVE refactor
5
+ .cove {
6
+ @import '@cdc/core/styles/v2/layout/tooltip.scss';
7
+ }
8
+
9
+ .cdc-open-viz-module.type-chart {
10
+ .editor-panel {
11
+ @import './components/panels.scss';
12
+ display: flex;
13
+ flex-direction: column;
14
+ position: fixed;
15
+ top: 0;
16
+ bottom: 0;
17
+ left: 0;
18
+ width: 350px;
19
+ background: #fff;
20
+ z-index: 8;
21
+
22
+ &.hidden {
23
+ display: none;
24
+ }
25
+
26
+ .two-col-inputs {
27
+ display: flex;
28
+ margin-top: 1em;
29
+ justify-content: space-between;
30
+
31
+ > label {
32
+ width: 48%;
33
+ margin-top: 0 !important;
34
+ }
35
+ }
36
+
37
+ .helper-tooltip {
38
+ padding: 5px;
39
+ max-width: 300px;
40
+ }
41
+
42
+ .helper {
43
+ position: relative;
44
+ opacity: 0.7;
45
+ cursor: pointer;
46
+ width: 17px;
47
+ height: 17px;
48
+ align-self: center;
49
+ margin-left: 0.3rem;
50
+ margin-top: -0.3rem;
51
+ border: none !important;
52
+ box-shadow: none !important;
53
+
54
+ svg {
55
+ position: absolute;
56
+ top: 0;
57
+ left: 0;
58
+ width: 100%;
59
+ height: 100%;
60
+ }
61
+ }
62
+
63
+ .divider-heading {
64
+ display: block;
65
+ font-size: 1em;
66
+ margin-top: 1em;
67
+ }
68
+
69
+ .series-list {
70
+ list-style: none;
71
+ border: $lightGray 1px solid;
72
+
73
+ &:empty {
74
+ border: none !important;
75
+ }
76
+
77
+ li {
78
+ padding: 0.3em 0.5em;
79
+ display: flex;
80
+ align-items: center;
81
+ justify-content: space-between;
82
+ font-size: 0.9em;
83
+ position: relative;
84
+
85
+ &:hover {
86
+ background-color: $lightestGray;
87
+ }
88
+
89
+ div {
90
+ width: 100%;
91
+ }
92
+
93
+ .series-list__name {
94
+ position: relative;
95
+ user-select: none;
96
+
97
+ &.series-list__name--truncate {
98
+ &[data-title] {
99
+ $bgColor: rgb(34 34 34 / 90%);
100
+ position: relative;
101
+
102
+ &::before,
103
+ &::after {
104
+ opacity: 0;
105
+ pointer-events: none;
106
+ position: absolute;
107
+ transition: opacity 250ms cubic-bezier(0.16, 1, 0.3, 1);
108
+ z-index: 1;
109
+ }
110
+
111
+ &::before {
112
+ content: attr(data-title);
113
+ bottom: -39px;
114
+ padding: 6px 10px;
115
+ background: $bgColor;
116
+ color: #fff;
117
+ font-size: 14px;
118
+ white-space: nowrap;
119
+ border-radius: 4px;
120
+ }
121
+
122
+ &::after {
123
+ content: '';
124
+ bottom: -8px;
125
+ left: 10px;
126
+ border: 7px solid transparent;
127
+ border-bottom: 6px solid $bgColor;
128
+ }
129
+
130
+ &:hover {
131
+ &::before,
132
+ &::after {
133
+ opacity: 1;
134
+ }
135
+ }
136
+ }
137
+
138
+ .series-list__name-text {
139
+ cursor: pointer;
140
+ }
141
+ }
142
+ }
143
+
144
+ .series-list__dropdown {
145
+ width: 100%;
146
+ display: block;
147
+ font-size: 0.8em;
148
+ margin-bottom: 10px;
149
+ select {
150
+ width: 100%;
151
+ }
152
+ }
153
+
154
+ .series-list__remove {
155
+ padding: 0 4px;
156
+ font-size: 1.125rem;
157
+ color: #f00;
158
+ cursor: pointer;
159
+ position: absolute;
160
+ top: 5px;
161
+ right: 5px;
162
+ }
163
+
164
+ + li {
165
+ border-top: $lightGray 1px solid;
166
+ }
167
+ }
168
+ }
169
+
170
+ .series-list__name-text {
171
+ max-width: 150px;
172
+ margin-bottom: 10px;
173
+ white-space: nowrap;
174
+ text-overflow: ellipsis;
175
+ overflow: hidden;
176
+ }
177
+
178
+ .accordion__heading {
179
+ background: $lightestGray;
180
+ }
181
+
182
+ .accordion__item {
183
+ select {
184
+ text-transform: capitalize;
185
+ outline: none;
186
+ }
187
+
188
+ .number-narrow {
189
+ min-width: auto;
190
+ width: 75px;
191
+ }
192
+ }
193
+
194
+ .form-container {
195
+ border-right: $lightGray 1px solid;
196
+ flex-grow: 1;
197
+ }
198
+
199
+ .guidance-link {
200
+ margin: 2em 1em 0;
201
+ padding: 0.75em 1em;
202
+
203
+ svg {
204
+ width: 60px;
205
+ color: $blue;
206
+ margin-right: 1rem;
207
+ height: 60px; // IE11
208
+ path {
209
+ fill: currentColor;
210
+ }
211
+ }
212
+ }
213
+
214
+ .warning {
215
+ color: #d8000c;
216
+ background-color: #ffd2d2;
217
+ padding: 0.75em 1em;
218
+ margin: 1em 0;
219
+ font-size: 0.8em;
220
+ border: #d8000c 1px solid;
221
+ border-radius: 0.4em;
222
+
223
+ strong {
224
+ font-weight: 600;
225
+ display: block;
226
+ }
227
+ }
228
+
229
+ .accordion__button {
230
+ cursor: pointer;
231
+ font-size: 1em;
232
+ padding: 0.3em 1em;
233
+ width: 100%;
234
+ text-align: left;
235
+ position: relative;
236
+ border-bottom: 1px solid rgba(0, 0, 0, 0.2);
237
+
238
+ &::before {
239
+ display: inline-block;
240
+ content: '';
241
+ height: 7px;
242
+ width: 7px;
243
+ margin-right: 1em;
244
+ border-bottom: 2px solid currentColor;
245
+ border-right: 2px solid currentColor;
246
+ right: 0;
247
+ position: absolute;
248
+ top: 50%;
249
+ transform: rotate(-45deg) translateY(-50%);
250
+ transition: 0.1s all;
251
+ }
252
+
253
+ &[aria-expanded='true']::before {
254
+ transform: rotate(45deg) translateY(-50%);
255
+ transform-origin: right;
256
+ margin-right: 1.3em;
257
+ transition: 0.1s all;
258
+ }
259
+ }
260
+
261
+ .accordion__panel {
262
+ border-bottom: 1px solid rgba(0, 0, 0, 0.2);
263
+ padding: 1em 1.25em 2em;
264
+ animation: fadein 0.2s ease-in;
265
+
266
+ &:first-child {
267
+ margin-top: 0;
268
+ }
269
+
270
+ h5 {
271
+ font-size: 0.8em;
272
+ }
273
+ }
274
+
275
+ .advanced {
276
+ padding: 0 1em 1em;
277
+ text-align: left;
278
+
279
+ p {
280
+ font-size: 0.8rem;
281
+ }
282
+
283
+ .advanced-toggle-link {
284
+ padding-top: 1em;
285
+ display: block;
286
+ text-align: left;
287
+ cursor: pointer;
288
+ text-decoration: underline;
289
+
290
+ span {
291
+ text-decoration: none;
292
+ display: inline-block;
293
+ font-family: monospace;
294
+ padding-right: 5px;
295
+ }
296
+
297
+ &:hover {
298
+ color: rgba(0, 0, 0, 0.7);
299
+ }
300
+ }
301
+
302
+ textarea {
303
+ height: 400px;
304
+ width: 100%;
305
+ font-size: 0.9em;
306
+ padding: 0.5em;
307
+ font-family: monospace;
308
+ box-sizing: border-box;
309
+ }
310
+ }
311
+
312
+ @keyframes fadein {
313
+ 0% {
314
+ opacity: 0;
315
+ }
316
+
317
+ 100% {
318
+ opacity: 1;
319
+ }
320
+ }
321
+
322
+ .heading-2 {
323
+ background: #565656;
324
+ color: #fff;
325
+ font-size: 1.1em;
326
+ padding: 0.6em 1em;
327
+ position: relative;
328
+ border-bottom: #565656 3px solid;
329
+ z-index: 3;
330
+ }
331
+
332
+ legend,
333
+ label {
334
+ text-transform: uppercase;
335
+ display: block;
336
+ font-size: 0.8em;
337
+ font-weight: 600;
338
+ user-select: none;
339
+
340
+ &:not(:first-child) {
341
+ margin-top: 1em;
342
+ }
343
+
344
+ span.edit-label {
345
+ margin-bottom: 0.3em;
346
+ display: block;
347
+ }
348
+
349
+ span.column-heading {
350
+ font-size: 1em;
351
+ }
352
+
353
+ &.checkbox {
354
+ display: flex;
355
+
356
+ input {
357
+ margin-left: 0;
358
+ width: inherit;
359
+ display: inline;
360
+ }
361
+ }
362
+ }
363
+
364
+ legend {
365
+ font-weight: normal;
366
+ margin-bottom: 0.3em;
367
+ }
368
+
369
+ legend + span {
370
+ float: left;
371
+ }
372
+
373
+ .radio-label {
374
+ font-weight: normal;
375
+ }
376
+
377
+ .accordion__panel fieldset:not(:first-child) {
378
+ margin-top: 1em;
379
+ }
380
+
381
+ .accordion__panel fieldset {
382
+ label:not(:first-child) {
383
+ margin-top: 0rem;
384
+ }
385
+ }
386
+
387
+ input[type='text'],
388
+ input[role='combobox'],
389
+ input[type='number'],
390
+ textarea {
391
+ min-width: 100%;
392
+ max-width: 100%; // Doing this prevents width of textarea from being changed
393
+ }
394
+
395
+ textarea {
396
+ min-height: 140px;
397
+ }
398
+
399
+ .header .color-palette button {
400
+ width: 21px;
401
+ height: 21px;
402
+ border-radius: 40px;
403
+ margin-right: 2.8px;
404
+ }
405
+
406
+ .color-palette {
407
+ display: flex;
408
+ max-width: 100%;
409
+ padding: 0;
410
+ margin: 0.5em 0 0 0;
411
+ list-style: none;
412
+ flex-wrap: wrap;
413
+
414
+ button {
415
+ width: 45px;
416
+ height: 23px;
417
+ margin-right: 4px;
418
+ margin-bottom: 10px;
419
+ display: flex;
420
+ border-radius: 5px;
421
+ overflow: hidden;
422
+ cursor: pointer;
423
+ position: relative;
424
+ padding: 0;
425
+
426
+ .click-target {
427
+ position: absolute;
428
+ top: 0;
429
+ left: 0;
430
+ right: 0;
431
+ bottom: 0;
432
+ }
433
+
434
+ &.selected {
435
+ border: rgba(0, 0, 0, 0.8) 2px solid;
436
+ }
437
+
438
+ span {
439
+ width: 33.3%;
440
+ height: 100%;
441
+ }
442
+
443
+ span.two-color {
444
+ width: 50%;
445
+ height: 100%;
446
+ }
447
+ }
448
+ }
449
+
450
+ fieldset {
451
+ display: block;
452
+
453
+ .float-left {
454
+ float: left;
455
+ }
456
+ }
457
+
458
+ .primary-fieldset {
459
+ padding: 0;
460
+ margin: 0;
461
+ border: 0;
462
+ }
463
+
464
+ ul.column-edit {
465
+ list-style: none;
466
+
467
+ li {
468
+ margin-top: 1em;
469
+ }
470
+
471
+ .three-col {
472
+ display: flex;
473
+ justify-content: space-between;
474
+
475
+ > label {
476
+ margin-top: 0;
477
+ width: 30%;
478
+ display: inline-block;
479
+
480
+ input[type='text'],
481
+ input[type='number'] {
482
+ width: 50px;
483
+ }
484
+ }
485
+ }
486
+ }
487
+
488
+ .emove-column {
489
+ float: right;
490
+ text-transform: uppercase;
491
+ color: #c32b2b;
492
+ font-size: 0.7em;
493
+ line-height: 1.6em;
494
+ border-radius: 5px;
495
+ margin: 0 auto;
496
+ transition: 0.1s all;
497
+ border: 0;
498
+ text-decoration: underline;
499
+ outline: 0;
500
+ cursor: pointer;
501
+ font-weight: bold;
502
+ }
503
+
504
+ .edit-block {
505
+ padding-left: 1em;
506
+ border-left: rgba(0, 0, 0, 0.2) 4px solid;
507
+ transition: 0.2s all;
508
+
509
+ &:not(:first-child) {
510
+ margin-top: 2em;
511
+ }
512
+
513
+ input[type='text'],
514
+ input[type='number'] {
515
+ font-size: 1em;
516
+ }
517
+
518
+ label {
519
+ margin-top: 0;
520
+ }
521
+
522
+ label + label {
523
+ margin-top: 1em;
524
+ }
525
+
526
+ &:hover {
527
+ border-left: rgba(0, 0, 0, 0.7) 4px solid;
528
+ transition: 0.2s all;
529
+ }
530
+ }
531
+
532
+ span.subtext {
533
+ display: block;
534
+ color: rgba(0, 0, 0, 0.5);
535
+ text-transform: none;
536
+ font-weight: normal;
537
+ }
538
+
539
+ .btn {
540
+ margin-top: 1em;
541
+ }
542
+
543
+ .sort-list {
544
+ list-style: none;
545
+
546
+ > li {
547
+ margin-right: 0.3em;
548
+ margin-bottom: 0.3em;
549
+ }
550
+ }
551
+
552
+ .sort-list li > div {
553
+ display: block;
554
+ box-sizing: border-box;
555
+ border: 1px solid #d1d1d1;
556
+ border-radius: 2px;
557
+ background: #f1f1f1;
558
+ padding: 0.4em 0.6em;
559
+ font-size: 0.8em;
560
+ margin-bottom: 0.3em;
561
+ cursor: move;
562
+ }
563
+
564
+ .info {
565
+ font-size: 0.8em;
566
+ line-height: 1.4em;
567
+ font-style: italic;
568
+ padding-top: 10px;
569
+ }
570
+
571
+ .react-tags__search {
572
+ width: 100%;
573
+ }
574
+
575
+ .react-tags {
576
+ position: relative;
577
+
578
+ input.react-tags__search-input {
579
+ font-size: 0.8rem;
580
+ }
581
+
582
+ /* clicking anywhere will focus the input */
583
+ cursor: text;
584
+
585
+ span {
586
+ display: inline;
587
+ }
588
+ }
589
+
590
+ .react-tags.is-focused {
591
+ border-color: rgba(0, 0, 0, 0.7);
592
+ }
593
+
594
+ .react-tags__selected {
595
+ display: inline;
596
+ }
597
+
598
+ .react-tags__selected-tag {
599
+ display: inline-block;
600
+ box-sizing: border-box;
601
+ border: 1px solid #d1d1d1;
602
+ border-radius: 2px;
603
+ background: #f1f1f1;
604
+ padding: 0.4em 0.6em;
605
+ font-size: 0.8em;
606
+ margin-right: 0.3em;
607
+ margin-bottom: 0.3em;
608
+ }
609
+
610
+ .react-tags__selected-tag:after {
611
+ content: '\2715';
612
+ color: #aaa;
613
+ margin-left: 8px;
614
+ }
615
+
616
+ .react-tags__selected-tag:hover,
617
+ .react-tags__selected-tag:focus {
618
+ border-color: #b1b1b1;
619
+ }
620
+
621
+ .react-tags__search {
622
+ display: inline-block;
623
+
624
+ /* prevent autoresize overflowing the container */
625
+ max-width: 100%;
626
+ }
627
+
628
+ @media screen and (min-width: 30em) {
629
+ .react-tags__search {
630
+ /* this will become the offsetParent for suggestions */
631
+ position: relative;
632
+ }
633
+ }
634
+
635
+ .react-tags__search input {
636
+ /* prevent autoresize overflowing the container */
637
+ max-width: 100%;
638
+
639
+ /* emove styles and layout from this element */
640
+ margin: 0;
641
+ outline: none;
642
+ padding: 0.5em 0.3em;
643
+
644
+ /* match the font styles */
645
+ font-size: inherit;
646
+ line-height: inherit;
647
+ }
648
+
649
+ .react-tags__search input::-ms-clear {
650
+ display: none;
651
+ }
652
+
653
+ .react-tags__suggestions {
654
+ position: absolute;
655
+ top: 100%;
656
+ left: 0;
657
+ width: 100%;
658
+ }
659
+
660
+ @media screen and (min-width: 30em) {
661
+ .react-tags__suggestions {
662
+ width: 240px;
663
+ }
664
+ }
665
+
666
+ .react-tags__suggestions ul {
667
+ margin: 4px -1px;
668
+ padding: 0;
669
+ list-style: none;
670
+ background: white;
671
+ border: 1px solid #d1d1d1;
672
+ border-radius: 2px;
673
+ box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
674
+ }
675
+
676
+ .react-tags__suggestions li {
677
+ border-bottom: 1px solid #ddd;
678
+ padding: 6px 8px;
679
+ }
680
+
681
+ .react-tags__suggestions li mark {
682
+ text-decoration: underline;
683
+ background: none;
684
+ font-weight: 600;
685
+ }
686
+
687
+ .react-tags__suggestions li:hover {
688
+ cursor: pointer;
689
+ background: #eee;
690
+ }
691
+
692
+ .react-tags__suggestions li.is-active {
693
+ background: #b7cfe0;
694
+ }
695
+
696
+ .react-tags__suggestions li.is-disabled {
697
+ opacity: 0.5;
698
+ cursor: auto;
699
+ }
700
+
701
+ input[type='radio'] {
702
+ border: 1px solid #8c8f94;
703
+ border-radius: 50%;
704
+ margin-right: 5px;
705
+ }
706
+ }
707
+
708
+ .editor-toggle {
709
+ background: #f2f2f2;
710
+ border-radius: 60px;
711
+ color: #000;
712
+ font-size: 1em;
713
+ border: 0;
714
+ position: fixed;
715
+ z-index: 100;
716
+ transition: 0.1s background;
717
+ cursor: pointer;
718
+ width: 25px;
719
+ height: 25px;
720
+ left: 307px;
721
+ top: 10px;
722
+ box-shadow: rgba(0, 0, 0, 0.5) 0 1px 2px;
723
+
724
+ &:before {
725
+ top: 43%;
726
+ left: 50%;
727
+ transform: translate(-50%, -50%);
728
+ position: absolute;
729
+ content: '\00ab';
730
+ }
731
+
732
+ &.collapsed {
733
+ left: 1em;
734
+ margin-left: 0;
735
+
736
+ &:before {
737
+ content: '\00bb';
738
+ }
739
+ }
740
+
741
+ &:hover {
742
+ background: rgba(255, 255, 255, 1);
743
+ }
744
+ }
745
+
746
+ @include breakpointClass(md) {
747
+ .editor-panel:not(.hidden) + .cdc-chart-inner-container {
748
+ padding-left: 350px;
749
+ }
750
+ }
751
+ }