@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
@@ -1,24 +1,28 @@
1
- .collapsed + .table-container {
1
+ .cove-data-table {
2
+ position: relative;
3
+ }
4
+
5
+ .collapsed + .cove-data-table__table-wrapper {
2
6
  border-bottom: none;
3
7
  }
4
8
 
5
- .table-container {
6
- overflow-x: auto;
9
+ .cove-data-table__table-wrapper {
7
10
  border-right: 1px solid $lightGray;
8
11
  border-left: 1px solid $lightGray;
9
12
  border-bottom: 1px solid $lightGray;
13
+ overflow-x: auto;
10
14
  }
11
15
 
12
- div.data-table-heading {
13
- background: rgba(0, 0, 0, 0.05);
14
- padding: .5em .7em;
16
+ .cove-data-table__table-heading {
17
+ padding: 0.5em 0.7em;
18
+ //TODO find fix
19
+ //background-image: url(~@cdc/core/assets/icon-minus.svg);
20
+ background-size: 15px 15px; // Need to define both for IE11
21
+ background-position: right 0.7em center;
22
+ background-repeat: no-repeat;
15
23
  border: $lightGray 1px solid;
16
24
  border-bottom: 0;
17
25
  cursor: pointer;
18
- background-image: url(~@cdc/core/assets/minus.svg);
19
- background-size: 15px 15px; // Need to define both for IE11
20
- background-position: right .7em center;
21
- background-repeat: no-repeat;
22
26
 
23
27
  &:focus {
24
28
  z-index: 2;
@@ -26,59 +30,38 @@ div.data-table-heading {
26
30
  }
27
31
 
28
32
  &.collapsed {
29
- background-image: url(~@cdc/core/assets/plus.svg);
30
- background-size: 15px 15px; // Need to define both for IE11
31
- background-position: right .7em center;
32
- background-repeat: no-repeat;
33
+ //TODO find fix
34
+ //background-image: url(~@cdc/core/core/assets/icon-plus.svg);
33
35
  border-bottom: $lightGray 1px solid;
34
36
  }
35
37
  }
36
38
 
37
- table.data-table {
39
+ .cove-data-table__table {
38
40
  width: 100%;
39
41
  background: #fff;
40
42
  position: relative;
41
43
  border: none;
42
- overflow-x: auto;
43
44
  border-collapse: collapse;
44
45
  overflow: auto;
45
46
  appearance: none;
46
47
 
47
48
  * {
48
- box-sizing: border-box
49
- }
50
-
51
- thead {
52
- user-select: none;
53
- -moz-user-select: none;
54
- user-select: none;
55
-
56
- tr {
57
- background: none;
58
- }
49
+ box-sizing: border-box;
59
50
  }
60
51
 
61
52
  thead {
62
53
  color: #fff;
63
54
  background-color: $mediumGray;
64
-
65
- .resizer {
66
- cursor: e-resize;
67
- width: 10px;
68
- position: absolute;
69
- top: 0;
70
- bottom: 0;
71
- right: 0;
72
- touch-action: none;
73
- }
55
+ user-select: none;
74
56
 
75
57
  tr {
76
58
  text-align: left;
59
+ background: none;
77
60
  }
78
61
 
79
62
  th,
80
63
  td {
81
- padding: .5em 1.3em .5em .7em;
64
+ padding: 0.5em 1.3em 0.5em 0.7em;
82
65
  line-height: normal;
83
66
  position: relative;
84
67
  text-align: left;
@@ -90,26 +73,9 @@ table.data-table {
90
73
  }
91
74
  }
92
75
 
93
- th.sort {
94
- background-color: darken($mediumGray, 10%);
95
- background-repeat: no-repeat;
96
- background-position: right .5em center;
97
- background-size: 10px 5px;
98
- }
99
-
100
- th.sort-asc,
101
- td.sort-asc {
102
- background-image: url(~@cdc/core/assets/asc.svg);
103
- }
104
-
105
- th.sort-desc,
106
- td.sort-desc {
107
- background-image: url(~@cdc/core/assets/desc.svg);
108
- }
109
-
110
76
  th:last-child,
111
77
  td:last-child {
112
- border-right: 0
78
+ border-right: 0;
113
79
  }
114
80
  }
115
81
 
@@ -118,22 +84,36 @@ table.data-table {
118
84
  width: 100%;
119
85
 
120
86
  &:hover {
121
- background: rgba(0, 0, 0, 0.05)
87
+ background: rgba(0, 0, 0, 0.05);
122
88
  }
123
89
  }
124
90
  }
125
91
 
126
92
  tr {
127
- border-bottom: solid 1px #E5E5E5;
93
+ border-bottom: solid 1px #e5e5e5;
128
94
  min-width: 100%; // Needed to fill content up
95
+
129
96
  &:last-child {
130
- border-bottom: 0
97
+ border-bottom: 0;
131
98
  }
132
99
  }
133
100
 
134
101
  td {
135
- padding: .3em .7em;
102
+ position: relative;
103
+ padding: 0.3em 0.7em;
136
104
  border-right: 1px solid rgba(0, 0, 0, 0.1);
105
+
106
+ a {
107
+ padding: 0.3em 0.7em;
108
+ position: absolute;
109
+ top: 0;
110
+ bottom: 0;
111
+ right: 0;
112
+ left: 0;
113
+ display: block;
114
+ color: inherit;
115
+ text-decoration: none;
116
+ }
137
117
  }
138
118
 
139
119
  th,
@@ -151,23 +131,7 @@ table.data-table {
151
131
  }
152
132
  }
153
133
 
154
- td {
155
- position: relative;
156
- }
157
-
158
- td a {
159
- padding: .3em .7em;
160
- position: absolute;
161
- top: 0;
162
- bottom: 0;
163
- right: 0;
164
- left: 0;
165
- display: block;
166
- color: inherit;
167
- text-decoration: none;
168
- }
169
-
170
- td span.table-link {
134
+ .table-link {
171
135
  text-decoration: underline;
172
136
  cursor: pointer;
173
137
  color: #075290;
@@ -178,101 +142,59 @@ table.data-table {
178
142
  margin-left: 5px;
179
143
  }
180
144
  }
181
- }
182
-
183
- .no-data {
184
- position: relative;
185
-
186
- .no-data-message {
187
- @include emptyState;
188
145
 
189
- h3 {
190
- font-size: 1.3rem;
191
- font-weight: 600;
192
- margin-bottom: .3rem;
193
- }
146
+ .sort {
147
+ background-color: darken($mediumGray, 10%);
148
+ background-repeat: no-repeat;
149
+ background-position: right 0.5em center;
150
+ background-size: 10px 5px;
194
151
  }
195
152
 
196
- tr:hover {
197
- background: #fff;
153
+ .sort-asc {
154
+ //TODO find fix
155
+ //background-image: url(~@cdc/core/assets/icon-caret-filled-up.svg);
198
156
  }
199
157
 
200
- th, td {
201
- width: 50%;
158
+ .sort-desc {
159
+ //TODO find fix
160
+ //background-image: url(~@cdc/core/assets/icon-caret-filled-down.svg);
161
+ }
202
162
 
203
- &::before {
204
- content: "\00a0";
205
- }
163
+ .resizer {
164
+ cursor: e-resize;
165
+ width: 10px;
166
+ position: absolute;
167
+ top: 0;
168
+ bottom: 0;
169
+ right: 0;
170
+ touch-action: none;
206
171
  }
207
172
  }
208
173
 
209
- .data-table-pagination {
210
- margin: 1rem 0;
211
- display: flex;
212
- align-items: center;
213
-
214
- ul {
215
- list-style: none;
216
- margin: 0 1rem 0 0;
217
- display: flex;
218
-
219
- li + li {
220
- margin-left: .3rem;
221
- }
222
-
223
- button {
224
- background: $mediumGray;
225
- padding: .6rem .8rem;
174
+ .cove-data-table__footer {
175
+ margin-top: 1rem;
176
+ }
226
177
 
227
- &:hover {
228
- background: lighten($mediumGray, 5%);
229
- }
230
- }
178
+ .cove-data-table__pagination {
179
+ }
231
180
 
232
- button.btn-next {
233
- &::before {
234
- content: " ";
235
- background-image: url(~@cdc/core/assets/asc.svg);
236
- background-size: 10px 5px;
237
- width: 10px;
238
- height: 5px;
239
- display: block;
240
- transform: rotate(90deg);
241
- }
242
- }
181
+ .cove-data-table__pagination--index {
182
+ }
243
183
 
244
- button.btn-prev {
245
- &::before {
246
- content: " ";
247
- background-image: url(~@cdc/core/assets/asc.svg);
248
- background-size: 10px 5px;
249
- width: 10px;
250
- height: 5px;
251
- display: block;
252
- transform: rotate(-90deg);
253
- }
254
- }
184
+ .cove-data-table__no-data {
185
+ position: relative;
186
+ user-select: none;
255
187
 
256
- button[disabled] {
257
- background: $mediumGray;
258
- opacity: .3;
259
- cursor: default;
188
+ th,
189
+ td {
190
+ width: 50%;
260
191
 
261
- &:hover {
262
- background: $mediumGray;
263
- }
192
+ &::before {
193
+ content: '\00a0';
264
194
  }
265
195
  }
266
196
  }
267
197
 
268
- .btn-download {
269
- color: #fff;
270
- float: right;
271
- text-decoration: none;
272
- transition: .3s all;
273
- margin: 1em 0;
274
-
275
- &:hover {
276
- transition: .3s all;
277
- }
198
+ .cove-data-table__no-data--message {
199
+ @include emptyState;
278
200
  }
@@ -1,4 +1,5 @@
1
- .waiting {
1
+ //TODO: Replace any '.waiting' classes with below
2
+ .waiting-splash {
2
3
  @include emptyState;
3
4
  padding-top: 0;
4
5
 
@@ -13,7 +14,7 @@
13
14
  h3 {
14
15
  font-size: 1.3rem;
15
16
  font-weight: 600;
16
- margin-bottom: .3rem;
17
+ margin-bottom: 0.3rem;
17
18
  }
18
19
 
19
20
  p {
@@ -25,7 +26,8 @@
25
26
  }
26
27
  }
27
28
 
28
- .loading {
29
+ //TODO: Replace any '.loading' classes with below
30
+ .loading-splash {
29
31
  position: absolute;
30
32
  top: 0;
31
33
  right: 0;
@@ -33,7 +35,7 @@
33
35
  left: 0;
34
36
  min-height: 30%;
35
37
  text-align: center;
36
- background: rgba(255, 255, 255, .5);
38
+ background: rgba(255, 255, 255, 0.5);
37
39
  z-index: 3;
38
40
 
39
41
  span {
@@ -54,8 +56,10 @@
54
56
  transform: scale(1.3);
55
57
  color: #777;
56
58
 
57
- &.sm, &.xs, &.xxs {
58
- transform: scale(0.7)
59
+ &.sm,
60
+ &.xs,
61
+ &.xxs {
62
+ transform: scale(0.7);
59
63
  }
60
64
 
61
65
  div + div {
@@ -70,10 +74,10 @@
70
74
  background-color: currentColor;
71
75
  border: 0 solid currentColor;
72
76
  border-radius: 100%;
73
- animation: ball-beat .7s -.15s infinite linear;
77
+ animation: ball-beat 0.7s -0.15s infinite linear;
74
78
 
75
79
  &:nth-child(2n-1) {
76
- animation-delay: -.5s;
80
+ animation-delay: -0.5s;
77
81
  }
78
82
  }
79
83
  }
@@ -1,7 +1,5 @@
1
- @import "alert";
2
- @import "component";
3
- @import "data-table";
4
- @import "header";
5
- @import "link";
6
- @import "progression";
7
- @import "tooltip";
1
+ @import 'alert';
2
+ @import 'component';
3
+ @import 'data-table';
4
+ @import 'progression';
5
+ @import 'tooltip';
@@ -1,15 +1,65 @@
1
1
  @import 'utils';
2
- @import 'base';
3
2
  @import 'themes';
4
3
 
5
4
  .cove {
5
+ @import 'base';
6
6
  color: $baseColor;
7
7
  font-size: 16px;
8
8
  line-height: 1.4;
9
9
 
10
+ :focus,
11
+ [tabindex]:focus-visible {
12
+ outline: 2px solid rgba(255, 102, 1, 0.9);
13
+ }
14
+
15
+ margin: 0;
16
+ font: 1em/1.6 system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Droid Sans, Helvetica Neue, Fira Sans, sans-serif;
17
+ font-weight: 400;
18
+ font-style: normal;
19
+ text-rendering: optimizeLegibility;
20
+ -webkit-font-smoothing: antialiased;
21
+ color: #111;
22
+
23
+ strong {
24
+ font-weight: 600;
25
+ }
26
+
27
+ .subtext {
28
+ margin-top: 1em;
29
+ }
30
+
31
+ .warning {
32
+ padding: 0.75em 1em;
33
+ margin: 1em 0;
34
+ background-color: #ffd2d2;
35
+ color: #d8000c;
36
+ font-size: 0.8em;
37
+ border: #d8000c 1px solid;
38
+ border-radius: 0.4em;
39
+
40
+ strong {
41
+ font-weight: 600;
42
+ display: block;
43
+ }
44
+ }
45
+
46
+ .sr-only,
47
+ .sr-only-focusable:not(:focus) {
48
+ position: absolute !important;
49
+ width: 1px !important;
50
+ height: 1px !important;
51
+ padding: 0 !important;
52
+ margin: -1px !important;
53
+ overflow: hidden !important;
54
+ clip: rect(0, 0, 0, 0) !important;
55
+ white-space: nowrap !important;
56
+ border: 0 !important;
57
+ display: flex;
58
+ }
59
+
10
60
  @import 'layout';
11
61
 
12
62
  @include breakpointClass(md) {
13
63
  font-size: 16px;
14
64
  }
15
- }
65
+ }
@@ -1,17 +1,72 @@
1
- @use "sass:string";
1
+ @use 'sass:string';
2
2
 
3
3
  $theme: (
4
- 'amber': ('#fbab18', '#ffd54f', '#ffecb3', '#fff7e1'),
5
- 'blue': ('#005eaa', '#88c3ea', '#c0e9ff', '#edf9ff'),
6
- 'brown': ('#705043', '#ad907b', '#d7ccc8', '#f2ebe8'),
7
- 'cyan': ('#006778', '#65b0bd', '#cce5e9', '#ebf5f6'),
8
- 'green': ('#4b830d', '#84bc49', '#dcedc8', '#f1f8e9'),
9
- 'indigo': ('#26418f', '#92a6dd', '#dee8ff', '#f2f6ff'),
10
- 'orange': ('#bb4d00', '#ffad42', '#ffe97d', '#fff4cf'),
11
- 'pink': ('#af4448', '#e57373', '#ffc2c2', '#ffe7e7'),
12
- 'purple': ('#712177', '#b890bb', '#e3d3e4', '#f7f2f7'),
13
- 'slate': ('#29434e', '#7e9ba5', '#b6c6d2', '#e2e8ed'),
14
- 'teal': ('#00695c', '#4ebaaa', '#ceece7', '#ebf7f5' )
4
+ 'amber': (
5
+ '#fbab18',
6
+ '#ffd54f',
7
+ '#ffecb3',
8
+ '#fff7e1'
9
+ ),
10
+ 'blue': (
11
+ '#005eaa',
12
+ '#88c3ea',
13
+ '#c0e9ff',
14
+ '#edf9ff'
15
+ ),
16
+ 'brown': (
17
+ '#705043',
18
+ '#ad907b',
19
+ '#d7ccc8',
20
+ '#f2ebe8'
21
+ ),
22
+ 'cyan': (
23
+ '#007B91',
24
+ '#65b0bd',
25
+ '#cce5e9',
26
+ '#ebf5f6'
27
+ ),
28
+ 'green': (
29
+ '#4b830d',
30
+ '#84bc49',
31
+ '#dcedc8',
32
+ '#f1f8e9'
33
+ ),
34
+ 'indigo': (
35
+ '#26418f',
36
+ '#92a6dd',
37
+ '#dee8ff',
38
+ '#f2f6ff'
39
+ ),
40
+ 'orange': (
41
+ '#bb4d00',
42
+ '#ffad42',
43
+ '#ffe97d',
44
+ '#fff4cf'
45
+ ),
46
+ 'pink': (
47
+ '#af4448',
48
+ '#e57373',
49
+ '#ffc2c2',
50
+ '#ffe7e7'
51
+ ),
52
+ 'purple': (
53
+ '#712177',
54
+ '#b890bb',
55
+ '#e3d3e4',
56
+ '#f7f2f7'
57
+ ),
58
+ 'slate': (
59
+ '#29434e',
60
+ '#7e9ba5',
61
+ '#b6c6d2',
62
+ '#e2e8ed'
63
+ ),
64
+ 'teal': (
65
+ '#00695c',
66
+ '#4ebaaa',
67
+ '#ceece7',
68
+ '#ebf7f5'
69
+ )
15
70
  );
16
71
 
17
72
  // .type-sparkline class used for creating sparklines
@@ -31,8 +86,36 @@ $theme: (
31
86
  border-bottom-width: 4px;
32
87
  }
33
88
 
34
- &.theme-#{$theme-name} {
89
+ &.theme-#{$theme-name} {
90
+ .cove-component__content:not(.no-borders).component--has-borderColorTheme {
91
+ border-left: 1px solid string.unquote(nth($theme-colors, 1));
92
+ border-right: 1px solid string.unquote(nth($theme-colors, 1));
93
+ border-bottom: 1px solid string.unquote(nth($theme-colors, 1));
94
+ }
95
+
96
+ // when component doesn't have a title add border top
97
+ .cove-component__inner:not(.component--has-title) .cove-component__content.component--has-borderColorTheme:not(.no-borders) {
98
+ border-top: 1px solid string.unquote(nth($theme-colors, 1));
99
+ }
100
+
101
+ .cove-component__inner:not(.component--has-title) .cove-component__content {
102
+ border-top: 1px solid #ccc;
103
+ }
35
104
 
105
+ .cove-component__header {
106
+ border-color: string.unquote(nth($theme-colors, 2));
107
+ }
108
+
109
+ .cove-component__content.component--has-accent {
110
+ border-left: 0.5rem solid string.unquote(nth($theme-colors, 1)) !important;
111
+ }
112
+
113
+ .cove-component__content.component--has-background:not(.component--hideBackgroundColor) {
114
+ background: string.unquote(nth($theme-colors, 3));
115
+ }
116
+ }
117
+
118
+ &.theme-#{$theme-name} {
36
119
  .cove-component__content:not(.no-borders).component--has-borderColorTheme {
37
120
  border-left: 1px solid string.unquote(nth($theme-colors, 1));
38
121
  border-right: 1px solid string.unquote(nth($theme-colors, 1));
@@ -43,7 +126,7 @@ $theme: (
43
126
  .cove-component__inner:not(.component--has-title) .cove-component__content.component--has-borderColorTheme:not(.no-borders) {
44
127
  border-top: 1px solid string.unquote(nth($theme-colors, 1));
45
128
  }
46
-
129
+
47
130
  // should probably be in color definitions but logically makes sense here.
48
131
  .cove-component__inner:not(.component--has-title) .cove-component__content {
49
132
  border-top: 1px solid #ccc;
@@ -54,7 +137,7 @@ $theme: (
54
137
  }
55
138
 
56
139
  .cove-component__content.component--has-accent {
57
- border-left: .5rem solid string.unquote(nth($theme-colors, 1)) !important;
140
+ border-left: 0.5rem solid string.unquote(nth($theme-colors, 1)) !important;
58
141
  }
59
142
 
60
143
  .cove-component__content.component--has-background:not(.component--hideBackgroundColor) {
@@ -65,17 +148,17 @@ $theme: (
65
148
  }
66
149
 
67
150
  $baseColor: #333;
68
- $blue: #005EAA;
69
- $lightestGray: #F2F2F2;
70
- $lightGray: #C7C7C7;
151
+ $blue: #005eaa;
152
+ $lightestGray: #f2f2f2;
153
+ $lightGray: #c7c7c7;
71
154
  $mediumGray: #565656;
72
155
  $darkGray: #333;
73
156
  $red: #d8000c;
74
157
  $white: #fff;
75
158
 
76
- $primary: #005eaa !default;
159
+ $primary: #005eaa !default;
77
160
  $secondary: #88c3ea !default;
78
- $tertiary: #c0e9ff !default;
161
+ $tertiary: #c0e9ff !default;
79
162
  $quaternary: #edf9ff !default;
80
163
 
81
164
  $purple-primary: #712177 !default;
@@ -1 +1 @@
1
- @import "color-definitions";
1
+ @import 'color-definitions';
@@ -0,0 +1,17 @@
1
+ // Content Align Classes
2
+ @mixin align($propNames, $className, $valueName) {
3
+ @each $propName in $propNames {
4
+ #{'.align-' + $propName + '-' + $className} {
5
+ #{'align-' + $propName}: #{$valueName} !important;
6
+ }
7
+ }
8
+ }
9
+
10
+ @include align(('content', 'items', 'self'), 'start', 'flex-start');
11
+ @include align(('content', 'items', 'self'), 'end', 'flex-end');
12
+ @include align(('content', 'items', 'self'), 'center', 'center');
13
+ @include align(('content', 'items', 'self'), 'stretch', 'stretch');
14
+
15
+ @include align(('items', 'self'), 'baseline', 'baseline');
16
+ @include align('content', 'around', 'space-around');
17
+ @include align('content', 'between', 'space-between');
@@ -32,8 +32,8 @@
32
32
 
33
33
  @keyframes ball-beat {
34
34
  50% {
35
- opacity: .2;
36
- transform: scale(.75);
35
+ opacity: 0.2;
36
+ transform: scale(0.75);
37
37
  }
38
38
  100% {
39
39
  opacity: 1;