@cdc/core 1.1.4 → 4.22.11

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 (138) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +1 -1
  3. package/assets/filtered-text.svg +1 -0
  4. package/assets/icon-caret-down.svg +3 -0
  5. package/assets/icon-caret-filled-down.svg +3 -0
  6. package/assets/icon-caret-filled-up.svg +3 -0
  7. package/assets/icon-caret-up.svg +3 -0
  8. package/assets/icon-chart-bar-paired.svg +15 -0
  9. package/assets/icon-chart-bar-stacked.svg +10 -0
  10. package/assets/icon-chart-bar.svg +3 -0
  11. package/assets/icon-chart-line.svg +3 -0
  12. package/assets/icon-chart-pie.svg +3 -0
  13. package/assets/icon-check.svg +3 -0
  14. package/assets/icon-close.svg +3 -1
  15. package/assets/icon-code.svg +2 -2
  16. package/assets/icon-dashboard.svg +34 -0
  17. package/assets/icon-databite.svg +3 -0
  18. package/assets/icon-edit.svg +3 -0
  19. package/assets/icon-file-upload.svg +3 -0
  20. package/assets/icon-filter-bars.svg +5 -0
  21. package/assets/icon-gear.svg +6 -0
  22. package/assets/icon-grid.svg +2 -3
  23. package/assets/icon-info.svg +1 -1
  24. package/assets/icon-link.svg +3 -0
  25. package/assets/{alabama-graphic.svg → icon-map-alabama.svg} +2 -2
  26. package/assets/icon-map-usa.svg +3 -0
  27. package/assets/icon-map-world.svg +3 -0
  28. package/assets/icon-minus.svg +3 -0
  29. package/assets/icon-move.svg +8 -0
  30. package/assets/icon-plus.svg +3 -0
  31. package/assets/icon-question-circle.svg +3 -0
  32. package/assets/icon-tools.svg +8 -0
  33. package/assets/icon-upload.svg +3 -0
  34. package/assets/icon-warning-circle.svg +3 -0
  35. package/assets/{icon-warning.svg → icon-warning-triangle.svg} +1 -1
  36. package/components/AdvancedEditor.js +52 -67
  37. package/components/{ErrorBoundary.js → ErrorBoundary.jsx} +10 -11
  38. package/components/GlobalContext.jsx +2 -6
  39. package/components/{LegendCircle.js → LegendCircle.jsx} +4 -4
  40. package/components/Loading.jsx +17 -0
  41. package/components/Waiting.jsx +20 -0
  42. package/components/elements/Button.jsx +111 -3
  43. package/components/elements/Card.jsx +13 -0
  44. package/components/inputs/InputCheckbox.jsx +43 -38
  45. package/components/inputs/InputGroup.jsx +71 -0
  46. package/components/inputs/InputSelect.jsx +28 -24
  47. package/components/inputs/InputText.jsx +20 -37
  48. package/components/inputs/InputToggle.jsx +39 -43
  49. package/components/managers/DataDesigner.jsx +194 -0
  50. package/components/ui/Accordion.jsx +18 -30
  51. package/components/ui/Icon.jsx +59 -20
  52. package/components/ui/LoadSpin.jsx +19 -0
  53. package/components/ui/Modal.jsx +40 -39
  54. package/components/ui/Overlay.jsx +15 -24
  55. package/components/ui/OverlayFrame.jsx +1 -5
  56. package/components/ui/Tooltip.jsx +20 -31
  57. package/data/colorPalettes.js +36 -227
  58. package/data/dataDesignerTables.js +148 -0
  59. package/data/themes.js +13 -13
  60. package/helpers/DataTransform.js +162 -0
  61. package/helpers/cacheBustingString.js +5 -0
  62. package/helpers/events.js +5 -6
  63. package/helpers/fetchRemoteData.js +41 -0
  64. package/helpers/getViewport.js +15 -15
  65. package/helpers/numberFromString.js +7 -7
  66. package/helpers/updatePaletteNames.js +15 -17
  67. package/helpers/useDataVizClasses.js +40 -0
  68. package/helpers/validateFipsCodeLength.js +41 -56
  69. package/package.json +3 -2
  70. package/styles/_data-table.scss +45 -40
  71. package/styles/_global.scss +41 -22
  72. package/styles/_mixins.scss +12 -12
  73. package/styles/_reset.scss +95 -16
  74. package/styles/_variables.scss +5 -5
  75. package/styles/base.scss +104 -37
  76. package/styles/heading-colors.scss +6 -2
  77. package/styles/loading.scss +62 -60
  78. package/styles/v2/base/_file-selector.scss +20 -0
  79. package/styles/v2/base/_general.scss +9 -22
  80. package/styles/v2/base/_heading.scss +20 -0
  81. package/styles/v2/base/_reset.scss +4 -3
  82. package/styles/v2/base/index.scss +7 -3
  83. package/styles/v2/components/accordion.scss +13 -13
  84. package/styles/v2/components/button.scss +29 -68
  85. package/styles/v2/components/card.scss +7 -0
  86. package/styles/v2/components/data-designer.scss +101 -0
  87. package/styles/v2/components/editor.scss +52 -50
  88. package/styles/v2/components/guidance-block.scss +74 -0
  89. package/styles/v2/components/icon.scss +0 -4
  90. package/styles/v2/components/input/_input-check-radio.scss +97 -0
  91. package/styles/v2/components/input/_input-group.scss +74 -0
  92. package/styles/v2/components/input/_input-slider.scss +183 -0
  93. package/styles/v2/components/input/_input.scss +66 -0
  94. package/styles/v2/components/input/index.scss +7 -0
  95. package/styles/v2/components/loadspin.scss +100 -0
  96. package/styles/v2/components/modal.scss +15 -8
  97. package/styles/v2/components/overlay.scss +6 -4
  98. package/styles/v2/layout/_alert.scss +15 -14
  99. package/styles/v2/layout/_component.scss +8 -1
  100. package/styles/v2/layout/_data-table.scss +78 -156
  101. package/styles/v2/layout/_progression.scss +12 -8
  102. package/styles/v2/layout/index.scss +5 -7
  103. package/styles/v2/main.scss +52 -2
  104. package/styles/v2/themes/_color-definitions.scss +103 -20
  105. package/styles/v2/themes/index.scss +1 -1
  106. package/styles/v2/utils/_align.scss +17 -0
  107. package/styles/v2/utils/_animations.scss +2 -2
  108. package/styles/v2/utils/_breakpoints.scss +59 -0
  109. package/styles/v2/utils/_grid.scss +47 -0
  110. package/styles/v2/utils/_mixins.scss +0 -16
  111. package/styles/v2/utils/_spacers.scss +31 -0
  112. package/styles/v2/utils/_variables.scss +7 -0
  113. package/styles/v2/utils/index.scss +9 -4
  114. package/styles/waiting.scss +22 -23
  115. package/assets/asc.svg +0 -1
  116. package/assets/chart-bar-solid.svg +0 -1
  117. package/assets/chart-line-solid.svg +0 -1
  118. package/assets/chart-pie-solid.svg +0 -1
  119. package/assets/check.svg +0 -3
  120. package/assets/dashboard.svg +0 -11
  121. package/assets/data-bite-graphic.svg +0 -3
  122. package/assets/desc.svg +0 -1
  123. package/assets/file-upload-solid.svg +0 -1
  124. package/assets/horizontal-stacked-bar.svg +0 -1
  125. package/assets/link.svg +0 -1
  126. package/assets/minus.svg +0 -1
  127. package/assets/paired-bar.svg +0 -11
  128. package/assets/plus.svg +0 -1
  129. package/assets/question-circle.svg +0 -1
  130. package/assets/upload-solid.svg +0 -1
  131. package/assets/usa-graphic.svg +0 -3
  132. package/assets/world-graphic.svg +0 -3
  133. package/components/DataTransform.js +0 -162
  134. package/components/Loading.js +0 -15
  135. package/components/Waiting.js +0 -11
  136. package/styles/v2/components/input.scss +0 -372
  137. package/styles/v2/layout/_header.scss +0 -13
  138. package/styles/v2/layout/_link.scss +0 -46
@@ -11,16 +11,7 @@ const ModalHeader = () => null
11
11
  const ModalContent = () => null
12
12
  const ModalFooter = () => null
13
13
 
14
- const Modal = ({
15
- fontTheme = 'dark',
16
- headerBgColor = '#fff',
17
- showDividerTop = true,
18
- showDividerBottom = true,
19
- showClose = true,
20
- children,
21
- override = null
22
- }) => {
23
-
14
+ const Modal = ({ fontTheme = 'dark', headerBgColor = '#fff', showDividerTop = true, showDividerBottom = true, showClose = true, children, override = null }) => {
24
15
  //Access global overlay state
25
16
  let { overlay } = useGlobalContext()
26
17
 
@@ -31,42 +22,52 @@ const Modal = ({
31
22
  const modalFooterChildren = childNodes.find(child => child?.type === ModalFooter)
32
23
 
33
24
  //Modal computed style options
34
- const dividerBorder = (bool) => {
25
+ const dividerBorder = bool => {
35
26
  return !bool ? 'none' : null
36
27
  }
37
28
 
38
29
  //Render output
39
30
  return (
40
31
  <div className={`cove-modal cove-modal__theme--${fontTheme}`}>
41
- {(showClose || modalHeaderChildren) &&
42
- <div className="cove-modal__header" style={{
43
- backgroundColor: headerBgColor,
44
- boxShadow: dividerBorder(modalHeaderChildren && showDividerTop),
45
- padding: !modalHeaderChildren ? '0' : null
46
- }}>
47
- {modalHeaderChildren && modalHeaderChildren.props.children}
48
- {showClose &&
49
- <button className="cove-modal--close"
50
- onClick={(e) => override ? override.actions.toggleOverlay(false) : overlay ? overlay?.actions.toggleOverlay(false) : e.preventDefault()}>
51
- <Icon display="close"/>
52
- </button>
53
- }
54
- </div>
55
- }
56
-
57
- <div className="cove-modal__content">
58
- {modalContentChildren && modalContentChildren.props.children}
59
- </div>
32
+ {(showClose || modalHeaderChildren) && (
33
+ <div
34
+ className='cove-modal__header'
35
+ style={{
36
+ backgroundColor: headerBgColor,
37
+ boxShadow: dividerBorder(modalHeaderChildren && showDividerTop),
38
+ padding: !modalHeaderChildren ? '0' : null,
39
+ minHeight: !modalHeaderChildren ? 'unset' : null
40
+ }}
41
+ >
42
+ {modalHeaderChildren && modalHeaderChildren.props.children}
43
+ {showClose && (
44
+ <button
45
+ className='cove-modal--close'
46
+ onClick={e => {
47
+ if (override) return override.actions.toggleOverlay(false)
48
+ if (overlay) return overlay?.actions.toggleOverlay(false)
49
+ e.preventDefault()
50
+ }}
51
+ >
52
+ <Icon display='close' />
53
+ </button>
54
+ )}
55
+ </div>
56
+ )}
60
57
 
61
- {modalFooterChildren &&
62
- <div className="cove-modal__footer" style={{
63
- boxShadow: dividerBorder(showDividerBottom),
64
- paddingTop: showDividerBottom ? '1rem' : null
65
- }}>
66
- {modalFooterChildren.props.children}
67
- </div>
68
- }
58
+ <div className='cove-modal__content'>{modalContentChildren && modalContentChildren.props.children}</div>
69
59
 
60
+ {modalFooterChildren && (
61
+ <div
62
+ className='cove-modal__footer'
63
+ style={{
64
+ boxShadow: dividerBorder(showDividerBottom),
65
+ paddingTop: showDividerBottom ? '1rem' : null
66
+ }}
67
+ >
68
+ {modalFooterChildren.props.children}
69
+ </div>
70
+ )}
70
71
  </div>
71
72
  )
72
73
  }
@@ -77,7 +78,7 @@ Modal.Content = ModalContent
77
78
  Modal.Footer = ModalFooter
78
79
 
79
80
  Modal.propTypes = {
80
- fontTheme: PropTypes.oneOf([ 'dark', 'light' ]),
81
+ fontTheme: PropTypes.oneOf(['dark', 'light']),
81
82
  headerBgColor: PropTypes.string,
82
83
  showDividerTop: PropTypes.bool,
83
84
  showDividerBottom: PropTypes.bool,
@@ -9,14 +9,15 @@ const Overlay = ({ disableBgClose, children, override = null }) => {
9
9
  let { overlay } = useGlobalContext()
10
10
 
11
11
  //Set local states
12
- const [ displayOverlay, setDisplayOverlay ] = useState(false)
13
- const [ overlayAnimationState, setOverlayAnimationState ] = useState(null)
14
- const [ overlayErrorState, setOverlayErrorState ] = useState(false)
12
+ const [displayOverlay, setDisplayOverlay] = useState(false)
13
+ const [overlayAnimationState, setOverlayAnimationState] = useState(null)
14
+ const [overlayErrorState, setOverlayErrorState] = useState(false)
15
15
 
16
- const overlayDisplay = overlay?.show || override?.show
16
+ const overlayDisplay = override ? override?.show : overlay?.show
17
17
 
18
18
  //Animate In effect
19
19
  useEffect(() => {
20
+ if (overlayDisplay === undefined) return
20
21
  if (overlayDisplay === false) return //Reject
21
22
 
22
23
  document.body.style.overflow = 'hidden'
@@ -28,10 +29,11 @@ const Overlay = ({ disableBgClose, children, override = null }) => {
28
29
  }, 750)
29
30
 
30
31
  return () => clearTimeout(timeoutShow)
31
- }, [ overlayDisplay ])
32
+ }, [overlayDisplay])
32
33
 
33
34
  //Animate Out effect
34
35
  useEffect(() => {
36
+ if (overlayDisplay === undefined) return
35
37
  if (overlayDisplay === true) return //Reject
36
38
 
37
39
  setOverlayAnimationState('animate-out')
@@ -43,7 +45,7 @@ const Overlay = ({ disableBgClose, children, override = null }) => {
43
45
  }, 400)
44
46
 
45
47
  return () => clearTimeout(timeoutHide)
46
- }, [ overlayDisplay ])
48
+ }, [overlayDisplay])
47
49
 
48
50
  //Error animate effect
49
51
  useEffect(() => {
@@ -54,30 +56,19 @@ const Overlay = ({ disableBgClose, children, override = null }) => {
54
56
  }, 400)
55
57
 
56
58
  return () => clearTimeout(timeoutHide)
57
- }, [ overlayErrorState ])
59
+ }, [overlayErrorState])
58
60
 
59
61
  //Render output
60
62
  return (
61
63
  <>
62
- {displayOverlay &&
63
- <div
64
- className={`cove-overlay${overlayAnimationState ? (' ' + overlayAnimationState) : ''}${overlayErrorState ? ' overlay-error' : ''}`}>
65
- <div className="cove-overlay__bg" style={{ cursor: disableBgClose ? 'default' : null }}
66
- onClick={(e) =>
67
- disableBgClose ? setOverlayErrorState(true) :
68
- overlay ? overlay.actions.toggleOverlay(false) :
69
- override ? override.actions.toggleOverlay(false) :
70
- e.preventDefault()
71
- }
72
- role="alert"
73
- />
74
- <div className="cove-overlay__wrapper">
75
- <div className="cove-overlay__container">
76
- {children}
77
- </div>
64
+ {displayOverlay && (
65
+ <div className={`cove-overlay${overlayAnimationState ? ' ' + overlayAnimationState : ''}${overlayErrorState ? ' overlay-error' : ''}`}>
66
+ <div className='cove-overlay__bg' style={{ cursor: disableBgClose ? 'default' : null }} onClick={e => (disableBgClose ? setOverlayErrorState(true) : overlay ? overlay.actions.toggleOverlay(false) : override ? override.actions.toggleOverlay(false) : e.preventDefault())} role='alert' />
67
+ <div className='cove-overlay__wrapper'>
68
+ <div className='cove-overlay__container'>{children}</div>
78
69
  </div>
79
70
  </div>
80
- }
71
+ )}
81
72
  </>
82
73
  )
83
74
  }
@@ -6,11 +6,7 @@ import Overlay from './Overlay'
6
6
 
7
7
  const OverlayFrame = () => {
8
8
  const { overlay } = useGlobalContext()
9
- return (
10
- <Overlay disableBgClose={overlay.disableBgClose}>
11
- { overlay.object }
12
- </Overlay>
13
- )
9
+ return <Overlay disableBgClose={overlay.disableBgClose}>{overlay.object}</Overlay>
14
10
  }
15
11
 
16
12
  export default OverlayFrame
@@ -4,45 +4,34 @@ import ReactTooltip from 'react-tooltip'
4
4
  const TooltipTarget = () => null
5
5
  const TooltipContent = () => null
6
6
 
7
- const Tooltip = ({
8
- position = 'top',
9
- trigger = 'hover',
10
- float = false,
11
- shadow = true,
12
- border = null,
13
- borderColor = '#bdbdbd',
14
- hideOnScroll = true,
15
- children,
16
- style,
17
- ...attributes
18
- }) => {
19
-
7
+ const Tooltip = ({ position = 'top', trigger = 'hover focus', float = false, shadow = true, border = null, borderColor = '#bdbdbd', hideOnScroll = true, children, style, ...attributes }) => {
20
8
  const tooltipTargetChildren = children.find(el => el.type === TooltipTarget)
21
9
  const tooltipContentChildren = children.find(el => el.type === TooltipContent)
22
10
 
23
11
  const uid = 'tooltip-' + Math.floor(Math.random() * 100000)
24
12
 
25
13
  return (
26
- <span className="cove-tooltip" style={style} {...attributes}>
27
- <a className="cove-tooltip--target"
28
- data-for={uid}
29
- data-place={position}
30
- data-event={trigger !== 'click' ? null : 'click focus'}
31
- data-effect={float ? 'float' : 'solid'}
32
- data-scroll-hide={hideOnScroll}
33
- data-tip
14
+ <span className='cove-tooltip' style={style} {...attributes}>
15
+ <button
16
+ className='cove-tooltip--target'
17
+ data-for={uid}
18
+ data-place={position}
19
+ data-event={trigger}
20
+ data-effect={float ? 'float' : 'solid'}
21
+ data-scroll-hide={hideOnScroll}
22
+ data-tip
23
+ onClick={e => {
24
+ e.preventDefault()
25
+ }}
26
+ onMouseEnter={e => ReactTooltip.show(e.target)}
27
+ onMouseLeave={e => ReactTooltip.hide(e.target)}
28
+ onFocus={e => ReactTooltip.show(e.target)}
29
+ onBlur={e => ReactTooltip.hide(e.target)}
30
+ style={{ background: 'transparent', border: 'none' }}
34
31
  >
35
32
  {tooltipTargetChildren ? tooltipTargetChildren.props.children : null}
36
- </a>
37
- <ReactTooltip
38
- id={uid}
39
- className={'cove-tooltip__content' + (trigger === 'click' ? ' interactive' : '') + (border ? (' cove-tooltip--border-' + border) : '') + (shadow ? ' has-shadow' : '')}
40
- type="light"
41
- effect="solid"
42
- border={!!border}
43
- borderColor={borderColor}
44
- globalEventOff="click"
45
- >
33
+ </button>
34
+ <ReactTooltip id={uid} className={'cove-tooltip__content' + (trigger === 'click' ? ' interactive' : '') + (border ? ' cove-tooltip--border-' + border : '') + (shadow ? ' has-shadow' : '')} type='light' effect='solid' border={!!border} borderColor={borderColor} globalEventOff='click'>
46
35
  {tooltipContentChildren ? tooltipContentChildren.props.children : null}
47
36
  </ReactTooltip>
48
37
  </span>
@@ -1,240 +1,49 @@
1
- import { updatePaletteNames} from "../helpers/updatePaletteNames";
1
+ import { updatePaletteNames } from '../helpers/updatePaletteNames'
2
2
 
3
3
  const colorPalettesMap = {
4
- yelloworangered: [
5
- '#ffffcc',
6
- '#ffeda0',
7
- '#fed976',
8
- '#feb24c',
9
- '#fd8d3c',
10
- '#fc4e2a',
11
- '#e31a1c',
12
- '#bd0026',
13
- '#800026',
14
- ],
15
- yelloworangebrown: [
16
- '#ffffe5',
17
- '#fff7bc',
18
- '#fee391',
19
- '#fec44f',
20
- '#fe9929',
21
- '#ec7014',
22
- '#cc4c02',
23
- '#993404',
24
- '#662506',
25
- ],
26
- pinkpurple: [
27
- '#fff7f3',
28
- '#fde0dd',
29
- '#fcc5c0',
30
- '#fa9fb5',
31
- '#f768a1',
32
- '#dd3497',
33
- '#ae017e',
34
- '#7a0177',
35
- '#49006a',
36
- ],
37
- bluegreen: [
38
- '#fff7fb',
39
- '#ece2f0',
40
- '#d0d1e6',
41
- '#a6bddb',
42
- '#67a9cf',
43
- '#3690c0',
44
- '#02818a',
45
- '#016c59',
46
- '#014636',
47
- ],
48
- orangered: [
49
- '#fff7ec',
50
- '#fee8c8',
51
- '#fdd49e',
52
- '#fdbb84',
53
- '#fc8d59',
54
- '#ef6548',
55
- '#d7301f',
56
- '#b30000',
57
- '#7f0000',
58
- ],
59
- red: [
60
- '#fff5f0',
61
- '#fee0d2',
62
- '#fcbba1',
63
- '#fc9272',
64
- '#fb6a4a',
65
- '#ef3b2c',
66
- '#cb181d',
67
- '#a50f15',
68
- '#67000d',
69
- ],
70
- greenblue: [
71
- '#f7fcf0',
72
- '#e0f3db',
73
- '#ccebc5',
74
- '#a8ddb5',
75
- '#7bccc4',
76
- '#4eb3d3',
77
- '#2b8cbe',
78
- '#0868ac',
79
- '#084081',
80
- ],
81
- yellowpurple: [
82
- '#FFF0B0',
83
- '#F5CC76',
84
- '#EDAE4B',
85
- '#E3683C',
86
- '#BF2A48',
87
- '#6D2059',
88
- '#8F0C4B',
89
- '#310958',
90
- '#0E0943',
91
- ],
92
- qualitative1: [
93
- '#a6cee3',
94
- '#1f78b4',
95
- '#b2df8a',
96
- '#33a02c',
97
- '#fb9a99',
98
- '#e31a1c',
99
- '#6a3d9a',
100
- '#cab2d6',
101
- '#E31A90',
102
- '#15017A',
103
- '#C2C0FC',
104
- ],
105
-
106
- qualitative2: [
107
- '#7fc97f',
108
- '#beaed4',
109
- '#ff9',
110
- '#386cb0',
111
- '#f0027f',
112
- '#bf5b17',
113
- '#666',
114
- '#fedab8',
115
- ],
116
-
117
- qualitative3: [
118
- '#1b9e77',
119
- '#d95f02',
120
- '#7570b3',
121
- '#e7298a',
122
- '#66a61e',
123
- '#e6ab02',
124
- '#a6761d',
125
- '#666',
126
- ],
127
-
128
- qualitative4: [
129
- '#e41a1c',
130
- '#377eb8',
131
- '#4daf4a',
132
- '#984ea3',
133
- '#ff7f00',
134
- '#ff3',
135
- '#a65628',
136
- '#f781bf',
137
- ],
138
-
139
- qualitative9: [
140
- '#497d0c',
141
- '#84BC49',
142
- '#88c3ea',
143
- '#fcad90',
144
- '#f26b4f',
145
- '#c31b1f',
146
- '#c31b1f',
147
- ],
4
+ yelloworangered: ['#ffffcc', '#ffeda0', '#fed976', '#feb24c', '#fd8d3c', '#fc4e2a', '#e31a1c', '#bd0026', '#800026'],
5
+ yelloworangebrown: ['#ffffe5', '#fff7bc', '#fee391', '#fec44f', '#fe9929', '#ec7014', '#cc4c02', '#993404', '#662506'],
6
+ pinkpurple: ['#fff7f3', '#fde0dd', '#fcc5c0', '#fa9fb5', '#f768a1', '#dd3497', '#ae017e', '#7a0177', '#49006a'],
7
+ bluegreen: ['#fff7fb', '#ece2f0', '#d0d1e6', '#a6bddb', '#67a9cf', '#3690c0', '#02818a', '#016c59', '#014636'],
8
+ orangered: ['#fff7ec', '#fee8c8', '#fdd49e', '#fdbb84', '#fc8d59', '#ef6548', '#d7301f', '#b30000', '#7f0000'],
9
+ red: ['#fff5f0', '#fee0d2', '#fcbba1', '#fc9272', '#fb6a4a', '#ef3b2c', '#cb181d', '#a50f15', '#67000d'],
10
+ greenblue: ['#f7fcf0', '#e0f3db', '#ccebc5', '#a8ddb5', '#7bccc4', '#4eb3d3', '#267BA6', '#0868ac', '#084081'],
11
+ yellowpurple: ['#FFF0B0', '#F5CC76', '#EDAE4B', '#E3683C', '#BF2A48', '#6D2059', '#8F0C4B', '#310958', '#0E0943'],
12
+ qualitative1: ['#a6cee3', '#1f78b4', '#b2df8a', '#33a02c', '#fb9a99', '#e31a1c', '#6a3d9a', '#cab2d6', '#E31A90', '#15017A', '#C2C0FC'],
148
13
 
14
+ qualitative2: ['#7fc97f', '#beaed4', '#ff9', '#386cb0', '#f0027f', '#bf5b17', '#666', '#fedab8'],
149
15
 
16
+ qualitative3: ['#1b9e77', '#d95f02', '#7570b3', '#e7298a', '#66a61e', '#e6ab02', '#a6761d', '#666'],
150
17
 
151
- 'sequential-blue-2(MPX)':[
152
- '#F5FEFF',
153
- '#E1FBFF',
154
- '#C0F2FD',
155
- '#94E2ED',
156
- '#5EBAD4',
157
- '#3695BE',
158
- '#2273A0',
159
- '#0E5181',
160
- '#093460',
161
- ],
18
+ qualitative4: ['#e41a1c', '#377eb8', '#4daf4a', '#984ea3', '#ff7f00', '#ff3', '#a65628', '#f781bf'],
162
19
 
163
- 'sequential-orange(MPX)':[
164
- '#FFFDF0',
165
- '#FFF7DC',
166
- '#FFE9C2',
167
- '#FFD097',
168
- '#F7A866',
169
- '#EB7723',
170
- '#B95117',
171
- '#853209',
172
- '#661F00'
173
- ]
20
+ qualitative9: ['#497d0c', '#84BC49', '#88c3ea', '#fcad90', '#f26b4f', '#c31b1f', '#c31b1f'],
174
21
 
175
- };
22
+ 'sequential-blue-2(MPX)': ['#F5FEFF', '#E1FBFF', '#C0F2FD', '#94E2ED', '#5EBAD4', '#3695BE', '#2273A0', '#0E5181', '#093460'],
23
+
24
+ 'sequential-orange(MPX)': ['#FFFDF0', '#FFF7DC', '#FFE9C2', '#FFD097', '#F7A866', '#EB7723', '#B95117', '#853209', '#661F00']
25
+ }
176
26
 
177
27
  // * ============= Palettes for Chart project ========== * //
178
28
 
179
29
  const colorPalettes2 = {
180
- 'qualitative-bold': [
181
- '#377eb8',
182
- '#ff7f00',
183
- '#4daf4a',
184
- '#984ea3',
185
- '#e41a1c',
186
- '#ffff33',
187
- '#a65628',
188
- '#f781bf',
189
- '#3399CC',
190
- ],
191
-
192
- 'qualitative-soft': [
193
- '#A6CEE3',
194
- '#1F78B4',
195
- '#B2DF8A',
196
- '#33A02C',
197
- '#FB9A99',
198
- '#E31A1C',
199
- '#FDBF6F',
200
- '#FF7F00',
201
- '#ACA9EB',
202
- ],
30
+ 'qualitative-bold': ['#377eb8', '#ff7f00', '#4daf4a', '#984ea3', '#e41a1c', '#ffff33', '#a65628', '#f781bf', '#3399CC'],
31
+
32
+ 'qualitative-soft': ['#A6CEE3', '#1F78B4', '#B2DF8A', '#33A02C', '#FB9A99', '#E31A1C', '#FDBF6F', '#FF7F00', '#ACA9EB'],
33
+ qualitative1: ['#a6cee3', '#1f78b4', '#b2df8a', '#33a02c', '#fb9a99', '#e31a1c', '#6a3d9a', '#cab2d6', '#E31A90', '#15017A', '#C2C0FC'],
34
+
35
+ qualitative2: ['#7fc97f', '#beaed4', '#ff9', '#386cb0', '#f0027f', '#bf5b17', '#666', '#fedab8'],
36
+
37
+ qualitative3: ['#1b9e77', '#d95f02', '#7570b3', '#e7298a', '#66a61e', '#e6ab02', '#a6761d', '#666'],
38
+
39
+ qualitative4: ['#e41a1c', '#377eb8', '#4daf4a', '#984ea3', '#ff7f00', '#ff3', '#a65628', '#f781bf'],
203
40
 
204
- 'sequential-blue': [
205
- '#C6DBEF',
206
- '#9ECAE1',
207
- '#6BAED6',
208
- '#4292C6',
209
- '#2171B5',
210
- '#084594',
211
- ],
212
- 'sequential-blue-2-(MPX)':[
213
- '#D5F6F9',
214
- '#99E2ED',
215
- '#5FB6D1',
216
- '#3189B0',
217
- '#116091',
218
- '#0A3E72'
219
- ],
220
- 'sequential-orange-(MPX)':[
221
- '#FFEFCF',
222
- '#FFD49C',
223
- '#F7A866',
224
- '#EB7723',
225
- '#B95117',
226
- '#862B0B'
227
- ],
228
- 'sequential-green': [
229
- '#C7E9C0',
230
- '#A1D99B',
231
- '#74C476',
232
- '#41AB5D',
233
- '#238B45',
234
- '#005A32',
235
- ]
236
- };
41
+ 'sequential-blue': ['#C6DBEF', '#9ECAE1', '#6BAED6', '#4292C6', '#2171B5', '#084594'],
42
+ 'sequential-blue-2-(MPX)': ['#D5F6F9', '#99E2ED', '#5FB6D1', '#3189B0', '#116091', '#0A3E72'],
43
+ 'sequential-orange-(MPX)': ['#FFEFCF', '#FFD49C', '#F7A866', '#EB7723', '#B95117', '#862B0B'],
44
+ 'sequential-green': ['#C7E9C0', '#A1D99B', '#74C476', '#41AB5D', '#238B45', '#005A32']
45
+ }
237
46
 
238
- export const colorPalettesChart = updatePaletteNames(colorPalettes2) // adds reverse keyword to eact palette
239
- const colorPalettes = updatePaletteNames(colorPalettesMap) // adds reverse keyword to eact palette
240
- export default colorPalettes;
47
+ export const colorPalettesChart = updatePaletteNames(colorPalettes2) // adds reverse keyword to eact palette
48
+ const colorPalettes = updatePaletteNames(colorPalettesMap) // adds reverse keyword to eact palette
49
+ export default colorPalettes