@occmundial/occ-atomic 3.0.0-beta.6 → 3.0.0-beta.60

Sign up to get free protection for your applications and to get access to all the features.
Files changed (135) hide show
  1. package/CHANGELOG.md +476 -0
  2. package/build/Avatar/Avatar.js +69 -21
  3. package/build/Avatar/Avatar.test.js +15 -8
  4. package/build/Avatar/AvatarContent/AvatarContent.js +61 -21
  5. package/build/Avatar/AvatarContent/AvatarContent.test.js +4 -18
  6. package/build/Avatar/AvatarContent/__snapshots__/AvatarContent.test.js.snap +75 -15
  7. package/build/Avatar/AvatarContent/styles.js +88 -21
  8. package/build/Avatar/__snapshots__/Avatar.test.js.snap +11 -2
  9. package/build/Avatar/styles.js +18 -7
  10. package/build/Banner/Banner.js +30 -40
  11. package/build/Banner/Banner.test.js +64 -17
  12. package/build/Banner/__snapshots__/Banner.test.js.snap +0 -28
  13. package/build/Banner/index.js +1 -6
  14. package/build/Button/Button.js +1 -1
  15. package/build/Button/Button.test.js +0 -11
  16. package/build/Button/__snapshots__/Button.test.js.snap +54 -58
  17. package/build/Button/styles.js +42 -75
  18. package/build/Checkbox/Checkbox.js +48 -3
  19. package/build/Checkbox/__snapshots__/Checkbox.test.js.snap +81 -49
  20. package/build/Checkbox/styles.js +91 -48
  21. package/build/Fab/__snapshots__/Fab.test.js.snap +2 -2
  22. package/build/Footer/Footer.js +81 -87
  23. package/build/Footer/List/List.js +89 -124
  24. package/build/Footer/List/styles.js +85 -31
  25. package/build/Footer/__snapshots__/Footer.test.js.snap +109 -59
  26. package/build/Footer/styles.js +116 -51
  27. package/build/Grid/Col/__snapshots__/Col.test.js.snap +16 -2
  28. package/build/Grid/Col/styles.js +12 -6
  29. package/build/Grid/Row/__snapshots__/Row.test.js.snap +18 -2
  30. package/build/Grid/Row/styles.js +15 -5
  31. package/build/Grid/styles.js +26 -9
  32. package/build/Menu/Menu.js +111 -0
  33. package/build/Menu/index.js +34 -0
  34. package/build/Menu/styles.js +28 -0
  35. package/build/Modal/Modal.js +94 -66
  36. package/build/Modal/Modal.test.js +14 -7
  37. package/build/Modal/__snapshots__/Modal.test.js.snap +155 -100
  38. package/build/Modal/styles.js +165 -143
  39. package/build/OrderBy/OrderBy.js +2 -1
  40. package/build/Pager/Page/Page.js +11 -6
  41. package/build/Pager/Page/Page.test.js +13 -9
  42. package/build/Pager/Page/__snapshots__/Page.test.js.snap +34 -10
  43. package/build/Pager/Page/styles.js +48 -14
  44. package/build/Pager/Pager.js +144 -235
  45. package/build/Pager/Pager.test.js +81 -36
  46. package/build/Pager/__snapshots__/Pager.test.js.snap +3 -36
  47. package/build/Pager/styles.js +5 -40
  48. package/build/Pill/Choice/Choice.js +6 -4
  49. package/build/Pill/Choice/styles.js +13 -10
  50. package/build/Pill/Group/styles.js +5 -5
  51. package/build/Pill/Stack/Stack.js +2 -2
  52. package/build/Pill/Stack/styles.js +5 -8
  53. package/build/Placeholder/Placeholder.js +29 -12
  54. package/build/Placeholder/Placeholder.test.js +4 -4
  55. package/build/Placeholder/__snapshots__/Placeholder.test.js.snap +81 -38
  56. package/build/Placeholder/styles.js +86 -42
  57. package/build/Provider/usePrevious.js +1 -1
  58. package/build/Radio/Radio.js +42 -6
  59. package/build/Radio/__snapshots__/Radio.test.js.snap +81 -80
  60. package/build/Radio/styles.js +93 -85
  61. package/build/SlideDown/SlideDown.js +162 -169
  62. package/build/SlideDown/SlideDown.test.js +49 -44
  63. package/build/SlideDown/__snapshots__/SlideDown.test.js.snap +44 -15
  64. package/build/SlideDown/styles.js +51 -20
  65. package/build/SlideToggle/SlideToggle.js +38 -6
  66. package/build/SlideToggle/SlideToggle.test.js +2 -2
  67. package/build/SlideToggle/__snapshots__/SlideToggle.test.js.snap +52 -37
  68. package/build/SlideToggle/styles.js +64 -45
  69. package/build/Tabs/Tab/Tab.js +73 -0
  70. package/build/Tabs/Tab/index.js +34 -0
  71. package/build/Tabs/Tab/index.test.js +132 -0
  72. package/build/Tabs/Tab/styles.js +74 -0
  73. package/build/Tabs/TabContent/TabContent.js +76 -0
  74. package/build/Tabs/TabContent/index.js +34 -0
  75. package/build/Tabs/TabContent/index.test.js +68 -0
  76. package/build/Tabs/TabContent/styles.js +23 -0
  77. package/build/Tabs/TabIndicator/TabIndicator.js +158 -0
  78. package/build/Tabs/TabIndicator/index.js +34 -0
  79. package/build/Tabs/TabIndicator/styles.js +24 -0
  80. package/build/Tabs/TabList/TabList.js +108 -0
  81. package/build/Tabs/TabList/index.js +34 -0
  82. package/build/{Pager/Break → Tabs/TabList}/styles.js +3 -2
  83. package/build/Tabs/Tabs.js +74 -0
  84. package/build/Tabs/context.js +94 -0
  85. package/build/Tabs/index.js +34 -0
  86. package/build/Tabs/index.test.js +157 -0
  87. package/build/Tabs/styles.js +19 -0
  88. package/build/Tag/Tag.js +2 -2
  89. package/build/Tag/__snapshots__/Tag.test.js.snap +40 -43
  90. package/build/Tag/styles.js +76 -82
  91. package/build/Text/Text.js +2 -1
  92. package/build/TextField/TextField.js +7 -6
  93. package/build/TextField/__snapshots__/TextField.test.js.snap +3 -0
  94. package/build/TextField/styles.js +3 -0
  95. package/build/Tip/Tip.js +62 -95
  96. package/build/Tip/Tip.test.js +29 -6
  97. package/build/Tip/TipText/index.js +32 -0
  98. package/build/Tip/__snapshots__/Tip.test.js.snap +127 -15
  99. package/build/Tip/styles.js +125 -31
  100. package/build/Toaster/Toast/Toast.js +76 -64
  101. package/build/Toaster/Toast/styles.js +118 -46
  102. package/build/Toaster/Toaster.js +3 -2
  103. package/build/Toaster/Toaster.test.js +5 -2
  104. package/build/Toaster/__snapshots__/Toaster.test.js.snap +1 -1
  105. package/build/Toaster/functions.js +4 -0
  106. package/build/Toaster/styles.js +3 -3
  107. package/build/Tooltip/Tooltip.js +73 -22
  108. package/build/Tooltip/__snapshots__/Tooltip.test.js.snap +22 -6
  109. package/build/Tooltip/styles.js +32 -10
  110. package/build/index.js +18 -16
  111. package/build/plugin/babel.js +0 -2
  112. package/build/subatomic/grid.js +5 -5
  113. package/build/tokens/colors.json +35 -3
  114. package/package.json +5 -2
  115. package/build/Banner/styles.js +0 -41
  116. package/build/Header/Header.js +0 -163
  117. package/build/Header/Header.test.js +0 -118
  118. package/build/Header/Menu/Menu.js +0 -135
  119. package/build/Header/Menu/Menu.test.js +0 -107
  120. package/build/Header/Menu/__snapshots__/Menu.test.js.snap +0 -113
  121. package/build/Header/Menu/index.js +0 -18
  122. package/build/Header/Menu/styles.js +0 -123
  123. package/build/Header/Nav/Nav.js +0 -95
  124. package/build/Header/Nav/Nav.test.js +0 -81
  125. package/build/Header/Nav/__snapshots__/Nav.test.js.snap +0 -101
  126. package/build/Header/Nav/index.js +0 -18
  127. package/build/Header/Nav/styles.js +0 -110
  128. package/build/Header/__snapshots__/Header.test.js.snap +0 -79
  129. package/build/Header/index.js +0 -18
  130. package/build/Header/styles.js +0 -94
  131. package/build/Pager/Break/Break.js +0 -27
  132. package/build/Pager/Break/Break.test.js +0 -53
  133. package/build/Pager/Break/__snapshots__/Break.test.js.snap +0 -13
  134. package/build/Pager/Break/index.js +0 -18
  135. /package/build/Button/{Loading.js → Loading/index.js} +0 -0
@@ -2,32 +2,4 @@
2
2
 
3
3
  exports[`Banner matches the snapshot 1`] = `ShallowWrapper {}`;
4
4
 
5
- exports[`Banner styles matches the snapshot 1`] = `
6
- Object {
7
- "container": Object {
8
- "backgroundColor": "#222222",
9
- "padding": 16,
10
- },
11
- "icon": Object {
12
- "cursor": "pointer",
13
- },
14
- "iconFlex": Object {
15
- "@media screen and (min-width:576px)": Object {
16
- "padding": 0,
17
- },
18
- "paddingLeft": 16,
19
- "paddingTop": 16,
20
- },
21
- "textBanner": Object {
22
- "display": "inline-block",
23
- },
24
- "textFlex": Object {
25
- "@media screen and (min-width:576px)": Object {
26
- "textAlign": "center",
27
- },
28
- "textAlign": "start",
29
- },
30
- }
31
- `;
32
-
33
5
  exports[`BannerJSS matches the snapshot 1`] = `ShallowWrapper {}`;
@@ -5,14 +5,9 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports["default"] = void 0;
7
7
 
8
- var _reactJss = _interopRequireDefault(require("react-jss"));
9
-
10
8
  var _Banner = _interopRequireDefault(require("./Banner"));
11
9
 
12
- var _styles = _interopRequireDefault(require("./styles"));
13
-
14
10
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
15
11
 
16
- var _default = (0, _reactJss["default"])(_styles["default"])(_Banner["default"]);
17
-
12
+ var _default = _Banner["default"];
18
13
  exports["default"] = _default;
@@ -89,7 +89,7 @@ var Button = /*#__PURE__*/function (_React$Component) {
89
89
  if (block) classNames += " ".concat(classes.block);
90
90
  if (className) classNames += " ".concat(className);
91
91
 
92
- if (!children && icon) {
92
+ if (!children && (icon || iconRight)) {
93
93
  classNames += " ".concat(classes.iconOnly);
94
94
  if (round) classNames += " ".concat(classes.round);
95
95
  }
@@ -134,15 +134,4 @@ describe("Button styles", function () {
134
134
  it('matches the snapshot', function () {
135
135
  expect(_styles["default"]).toMatchSnapshot();
136
136
  });
137
- it('returns the right icons', function () {
138
- var props = {
139
- icon: 'testing'
140
- };
141
- expect(_styles["default"].primary['& span span'].background(props)).toBe('url(data:image/svg+xml;base64,dGVzdGluZyAtICNmZmY=)');
142
- expect(_styles["default"].secondary['& span span'].background(props)).toBe('url(data:image/svg+xml;base64,dGVzdGluZyAtICMwODNDQUU=)');
143
- expect(_styles["default"].tertiary['& span span'].background(props)).toBe('url(data:image/svg+xml;base64,dGVzdGluZyAtICMwODNDQUU=)');
144
- expect(_styles["default"].ghostPink['& span span'].background(props)).toBe('url(data:image/svg+xml;base64,dGVzdGluZyAtICNmMTM0NjU=)');
145
- expect(_styles["default"].ghostGrey['& span span'].background(props)).toBe('url(data:image/svg+xml;base64,dGVzdGluZyAtICM1QTVEN0I=)');
146
- expect(_styles["default"].ghostWhite['& span span'].background(props)).toBe('url(data:image/svg+xml;base64,dGVzdGluZyAtICNmZmY=)');
147
- });
148
137
  });
@@ -48,28 +48,28 @@ Object {
48
48
  "pointerEvents": "none",
49
49
  },
50
50
  "ghostGrey": Object {
51
- "& $loadIcon": Object {
51
+ "& $icon, & $iconRight": Object {
52
52
  "fill": "#5A5D7B",
53
53
  },
54
- "& span span": Object {
55
- "background": [Function],
54
+ "& $loadIcon": Object {
55
+ "fill": "#5A5D7B",
56
56
  },
57
57
  "&$disabled": Object {
58
+ "& $icon, & $iconRight": Object {
59
+ "fill": "#D3D4DC",
60
+ },
58
61
  "background": "transparent",
59
62
  "color": "#878A9F",
60
63
  },
61
- "&$disabled span span": Object {
62
- "background": [Function],
63
- },
64
64
  "&:active": Object {
65
65
  "background": "hsl(234 75.4% 12.7% / 0.1)",
66
66
  },
67
+ "&:focus-visible": Object {
68
+ "boxShadow": "0 0 0 8px hsl(234 75.4% 12.7% / 0.1)",
69
+ },
67
70
  "&:hover": Object {
68
71
  "background": "hsl(234 75.4% 12.7% / 0.05)",
69
72
  },
70
- "&:not(:active):focus-visible": Object {
71
- "boxShadow": "0 0 0 8px hsl(234 75.4% 12.7% / 0.1)",
72
- },
73
73
  "background": "transparent",
74
74
  "color": "#5A5D7B",
75
75
  },
@@ -77,13 +77,7 @@ Object {
77
77
  "& $loadIcon": Object {
78
78
  "fill": "#f13465",
79
79
  },
80
- "& span span": Object {
81
- "background": [Function],
82
- },
83
80
  "&$disabled": Object {
84
- "& span span": Object {
85
- "background": [Function],
86
- },
87
81
  "background": "transparent !important",
88
82
  "border": "none !important",
89
83
  "color": "#fa90ac !important",
@@ -107,25 +101,25 @@ Object {
107
101
  ],
108
102
  },
109
103
  "ghostWhite": Object {
110
- "& span span": Object {
111
- "background": [Function],
104
+ "& $icon, & $iconRight": Object {
105
+ "fill": "#fff",
112
106
  },
113
107
  "&$disabled": Object {
108
+ "& $icon, & $iconRight": Object {
109
+ "fill": "rgba(255,255,255,0.3)",
110
+ },
114
111
  "background": "transparent",
115
112
  "color": "rgba(255,255,255,0.7)",
116
113
  },
117
- "&$disabled span span": Object {
118
- "background": [Function],
119
- },
120
114
  "&:active": Object {
121
115
  "background": "rgba(255,255,255,0.1)",
122
116
  },
117
+ "&:focus-visible": Object {
118
+ "boxShadow": "0 0 0 8px rgba(255,255,255,0.2)",
119
+ },
123
120
  "&:hover": Object {
124
121
  "background": "rgba(255,255,255,0.05)",
125
122
  },
126
- "&:not(:active):focus-visible": Object {
127
- "boxShadow": "0 0 0 8px rgba(255,255,255,0.2)",
128
- },
129
123
  "background": "transparent",
130
124
  "color": "#fff",
131
125
  },
@@ -136,6 +130,7 @@ Object {
136
130
  },
137
131
  "iconOnly": Object {
138
132
  "& span span, & svg": Object {
133
+ "marginLeft": 0,
139
134
  "marginRight": 0,
140
135
  },
141
136
  "padding": Array [
@@ -197,29 +192,29 @@ Object {
197
192
  ],
198
193
  },
199
194
  "primary": Object {
200
- "& span span": Object {
201
- "background": [Function],
195
+ "& $icon, & $iconRight": Object {
196
+ "fill": "#fff",
202
197
  },
203
198
  "&$disabled": Object {
199
+ "& $icon, & $iconRight": Object {
200
+ "fill": "rgba(255,255,255,0.3)",
201
+ },
204
202
  "background": "#F6809E",
205
203
  "color": "rgba(255,255,255,0.7)",
206
204
  "cursor": "not-allowed",
207
205
  },
208
- "&$disabled span span": Object {
209
- "background": [Function],
210
- },
211
206
  "&:active": Object {
212
207
  "background": "#821C36",
213
208
  },
214
209
  "&:focus": Object {
215
210
  "outline": "2px solid rgba(255,255,255,0.2)",
216
211
  },
212
+ "&:focus-visible": Object {
213
+ "boxShadow": "0 0 0 8px hsl(344 87.1% 57.5% / 0.3)",
214
+ },
217
215
  "&:hover": Object {
218
216
  "background": "#A32444",
219
217
  },
220
- "&:not(:active):focus-visible": Object {
221
- "boxShadow": "0 0 0 8px hsl(344 87.1% 57.5% / 0.3)",
222
- },
223
218
  "background": "#D32E58",
224
219
  "color": "#fff",
225
220
  "outline": "2px solid rgba(255,255,255,0.2)",
@@ -229,45 +224,45 @@ Object {
229
224
  "borderRadius": "50%",
230
225
  },
231
226
  "secondary": Object {
232
- "& $loadIcon": Object {
227
+ "& $icon, & $iconRight": Object {
233
228
  "fill": "#083CAE",
234
229
  },
235
- "& span span": Object {
236
- "background": [Function],
230
+ "& $loadIcon": Object {
231
+ "fill": "#083CAE",
237
232
  },
238
233
  "&$disabled": Object {
234
+ "& $icon, & $iconRight": Object {
235
+ "fill": "#8DA5DA",
236
+ },
239
237
  "background": "hsl(221 91.2% 35.7% / 0.1)",
240
238
  "color": "#486EC3",
241
239
  },
242
- "&$disabled span span": Object {
243
- "background": [Function],
244
- },
245
240
  "&:active": Object {
246
241
  "background": "hsl(221 91.2% 35.7% / 0.2)",
247
242
  },
243
+ "&:focus-visible": Object {
244
+ "boxShadow": "0 0 0 8px hsl(221 91.2% 35.7% / 0.3)",
245
+ },
248
246
  "&:hover": Object {
249
247
  "background": "hsl(221 91.2% 35.7% / 0.1)",
250
248
  },
251
- "&:not(:active):focus-visible": Object {
252
- "boxShadow": "0 0 0 8px hsl(221 91.2% 35.7% / 0.3)",
253
- },
254
249
  "background": "hsl(221 91.2% 35.7% / 0.05)",
255
250
  "color": "#083CAE",
256
251
  },
257
252
  "tertiary": Object {
258
- "& $loadIcon": Object {
253
+ "& $icon, & $iconRight": Object {
259
254
  "fill": "#083CAE",
260
255
  },
261
- "& span span": Object {
262
- "background": [Function],
256
+ "& $loadIcon": Object {
257
+ "fill": "#083CAE",
263
258
  },
264
259
  "&$disabled": Object {
260
+ "& $icon, & $iconRight": Object {
261
+ "fill": "#8DA5DA",
262
+ },
265
263
  "background": "transparent",
266
264
  "color": "#486EC3",
267
- "outline": "2px solid #8DA5DA",
268
- },
269
- "&$disabled span span": Object {
270
- "background": [Function],
265
+ "outlineColor": "#8DA5DA",
271
266
  },
272
267
  "&:active": Object {
273
268
  "background": "hsl(221 91.2% 35.7% / 0.1)",
@@ -275,27 +270,28 @@ Object {
275
270
  "&:focus": Object {
276
271
  "outline": "2px solid #083CAE",
277
272
  },
273
+ "&:focus-visible": Object {
274
+ "boxShadow": "0 0 0 8px hsl(221 91.2% 35.7% / 0.3)",
275
+ },
278
276
  "&:hover": Object {
279
277
  "background": "hsl(221 91.2% 35.7% / 0.05)",
280
278
  },
281
- "&:not(:active):focus-visible": Object {
282
- "boxShadow": "0 0 0 8px hsl(221 91.2% 35.7% / 0.3)",
283
- },
284
279
  "background": "transparent",
285
280
  "color": "#083CAE",
286
281
  "outline": "2px solid #083CAE",
287
282
  "outlineOffset": "-2px",
288
283
  },
289
284
  "tertiaryWhite": Object {
290
- "& span span": Object {
291
- "background": [Function],
285
+ "& $icon, & $iconRight": Object {
286
+ "fill": "#fff",
292
287
  },
293
288
  "&$disabled": Object {
289
+ "& $icon, & $iconRight": Object {
290
+ "fill": "rgba(255,255,255,0.3)",
291
+ },
294
292
  "background": "transparent",
295
293
  "color": "rgba(255,255,255,0.7)",
296
- },
297
- "&$disabled span span": Object {
298
- "background": [Function],
294
+ "outlineColor": "rgba(255,255,255,0.2)",
299
295
  },
300
296
  "&:active": Object {
301
297
  "background": "rgba(255,255,255,0.1)",
@@ -303,12 +299,12 @@ Object {
303
299
  "&:focus": Object {
304
300
  "outline": "2px solid #fff",
305
301
  },
302
+ "&:focus-visible": Object {
303
+ "boxShadow": "0 0 0 8px rgba(255,255,255,0.2)",
304
+ },
306
305
  "&:hover": Object {
307
306
  "background": "rgba(255,255,255,0.05)",
308
307
  },
309
- "&:not(:active):focus-visible": Object {
310
- "boxShadow": "0 0 0 8px rgba(255,255,255,0.2)",
311
- },
312
308
  "background": "transparent",
313
309
  "color": "#fff",
314
310
  "outline": "2px solid #fff",
@@ -27,7 +27,6 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "d
27
27
 
28
28
  var sec = _colors["default"].sec,
29
29
  secDark = _colors["default"].secDark,
30
- grey500 = _colors["default"].grey500,
31
30
  secLight = _colors["default"].secLight;
32
31
  var sm = _fonts2["default"]['button-small'];
33
32
  var md = _fonts2["default"]['button-medium'];
@@ -102,22 +101,18 @@ var _default = {
102
101
  '&:focus': {
103
102
  outline: "2px solid ".concat(_colors2["default"].button.primary.border["default"])
104
103
  },
105
- '&:not(:active):focus-visible': {
104
+ '&:focus-visible': {
106
105
  boxShadow: _shadows["default"]['focus-pink']
107
106
  },
107
+ '& $icon, & $iconRight': {
108
+ fill: _colors2["default"].icon.inverse["default"]
109
+ },
108
110
  '&$disabled': {
109
111
  background: _colors2["default"].button.primary.bg.disabled,
110
112
  color: _colors2["default"].text.white.secondary,
111
- cursor: 'not-allowed'
112
- },
113
- '& span span': {
114
- background: function background(props) {
115
- return renderIcon(props, [_colors2["default"].icon.inverse["default"]]);
116
- }
117
- },
118
- '&$disabled span span': {
119
- background: function background(props) {
120
- return renderIcon(props, [_colors2["default"].icon.inverse.disabled]);
113
+ cursor: 'not-allowed',
114
+ '& $icon, & $iconRight': {
115
+ fill: _colors2["default"].icon.inverse.disabled
121
116
  }
122
117
  }
123
118
  },
@@ -130,21 +125,17 @@ var _default = {
130
125
  '&:active': {
131
126
  background: _colors2["default"].button.secondary.bg.active
132
127
  },
133
- '&:not(:active):focus-visible': {
128
+ '&:focus-visible': {
134
129
  boxShadow: _shadows["default"]['focus-indigo']
135
130
  },
131
+ '& $icon, & $iconRight': {
132
+ fill: _colors2["default"].icon.brand["default"]
133
+ },
136
134
  '&$disabled': {
137
135
  background: _colors2["default"].button.secondary.bg.disabled,
138
- color: _colors2["default"].text.indigo.secondary
139
- },
140
- '& span span': {
141
- background: function background(props) {
142
- return renderIcon(props, [_colors2["default"].icon.brand["default"]]);
143
- }
144
- },
145
- '&$disabled span span': {
146
- background: function background(props) {
147
- return renderIcon(props, [_colors2["default"].icon.brand.disabled]);
136
+ color: _colors2["default"].text.indigo.secondary,
137
+ '& $icon, & $iconRight': {
138
+ fill: _colors2["default"].icon.brand.disabled
148
139
  }
149
140
  },
150
141
  '& $loadIcon': {
@@ -165,22 +156,18 @@ var _default = {
165
156
  '&:focus': {
166
157
  outline: "2px solid ".concat(_colors2["default"].button.tertiary.border["default"])
167
158
  },
168
- '&:not(:active):focus-visible': {
159
+ '&:focus-visible': {
169
160
  boxShadow: _shadows["default"]['focus-indigo']
170
161
  },
171
- '& span span': {
172
- background: function background(props) {
173
- return renderIcon(props, [_colors2["default"].icon.brand["default"]]);
174
- }
162
+ '& $icon, & $iconRight': {
163
+ fill: _colors2["default"].icon.brand["default"]
175
164
  },
176
165
  '&$disabled': {
177
166
  background: 'transparent',
178
167
  color: _colors2["default"].text.indigo.secondary,
179
- outline: "2px solid ".concat(_colors2["default"].button.tertiary.border.disabled)
180
- },
181
- '&$disabled span span': {
182
- background: function background(props) {
183
- return renderIcon(props, [_colors2["default"].icon.brand.disabled]);
168
+ outlineColor: _colors2["default"].button.tertiary.border.disabled,
169
+ '& $icon, & $iconRight': {
170
+ fill: _colors2["default"].icon.brand.disabled
184
171
  }
185
172
  },
186
173
  '& $loadIcon': {
@@ -201,21 +188,18 @@ var _default = {
201
188
  '&:focus': {
202
189
  outline: "2px solid ".concat(_colors2["default"].button.tertiary.border.inverse["default"])
203
190
  },
204
- '&:not(:active):focus-visible': {
191
+ '&:focus-visible': {
205
192
  boxShadow: _shadows["default"]['focus-white']
206
193
  },
207
- '& span span': {
208
- background: function background(props) {
209
- return renderIcon(props, [_colors2["default"].icon.inverse["default"]]);
210
- }
194
+ '& $icon, & $iconRight': {
195
+ fill: _colors2["default"].icon.inverse["default"]
211
196
  },
212
197
  '&$disabled': {
213
198
  background: 'transparent',
214
- color: _colors2["default"].text.white.secondary
215
- },
216
- '&$disabled span span': {
217
- background: function background(props) {
218
- return renderIcon(props, [_colors2["default"].icon.inverse.disabled]);
199
+ color: _colors2["default"].text.white.secondary,
200
+ outlineColor: _colors2["default"].button.tertiary.border.inverse.disabled,
201
+ '& $icon, & $iconRight': {
202
+ fill: _colors2["default"].icon.inverse.disabled
219
203
  }
220
204
  }
221
205
  },
@@ -233,20 +217,10 @@ var _default = {
233
217
  }
234
218
  }
235
219
  },
236
- '& span span': {
237
- background: function background(props) {
238
- return renderIcon(props, [sec]);
239
- }
240
- },
241
220
  '&$disabled': {
242
221
  background: "transparent !important",
243
222
  color: "".concat(secLight, " !important"),
244
- border: "none !important",
245
- '& span span': {
246
- background: function background(props) {
247
- return renderIcon(props, [grey500]);
248
- }
249
- }
223
+ border: "none !important"
250
224
  },
251
225
  '& $loadIcon': {
252
226
  fill: sec
@@ -261,21 +235,17 @@ var _default = {
261
235
  '&:active': {
262
236
  background: _colors2["default"].button.ghost.bg.active
263
237
  },
264
- '&:not(:active):focus-visible': {
238
+ '&:focus-visible': {
265
239
  boxShadow: _shadows["default"]['focus-corp']
266
240
  },
267
- '& span span': {
268
- background: function background(props) {
269
- return renderIcon(props, [_colors2["default"].icon["default"]["default"]]);
270
- }
241
+ '& $icon, & $iconRight': {
242
+ fill: _colors2["default"].icon["default"]["default"]
271
243
  },
272
244
  '&$disabled': {
273
245
  background: 'transparent',
274
- color: _colors2["default"].text.corp.disabled
275
- },
276
- '&$disabled span span': {
277
- background: function background(props) {
278
- return renderIcon(props, [_colors2["default"].icon["default"].disabled]);
246
+ color: _colors2["default"].text.corp.disabled,
247
+ '& $icon, & $iconRight': {
248
+ fill: _colors2["default"].icon["default"].disabled
279
249
  }
280
250
  },
281
251
  '& $loadIcon': {
@@ -291,21 +261,17 @@ var _default = {
291
261
  '&:active': {
292
262
  background: _colors2["default"].button.ghost.bg.inverse.active
293
263
  },
294
- '&:not(:active):focus-visible': {
264
+ '&:focus-visible': {
295
265
  boxShadow: _shadows["default"]['focus-white']
296
266
  },
297
- '& span span': {
298
- background: function background(props) {
299
- return renderIcon(props, [_colors2["default"].icon.inverse["default"]]);
300
- }
267
+ '& $icon, & $iconRight': {
268
+ fill: _colors2["default"].icon.inverse["default"]
301
269
  },
302
270
  '&$disabled': {
303
271
  background: 'transparent',
304
- color: _colors2["default"].text.white.secondary
305
- },
306
- '&$disabled span span': {
307
- background: function background(props) {
308
- return renderIcon(props, [_colors2["default"].icon.inverse.disabled]);
272
+ color: _colors2["default"].text.white.secondary,
273
+ '& $icon, & $iconRight': {
274
+ fill: _colors2["default"].icon.inverse.disabled
309
275
  }
310
276
  }
311
277
  },
@@ -353,7 +319,8 @@ var _default = {
353
319
  iconOnly: {
354
320
  padding: [_spacing["default"]['size-2'], _spacing["default"]['size-2']],
355
321
  '& span span, & svg': {
356
- marginRight: 0
322
+ marginRight: 0,
323
+ marginLeft: 0
357
324
  }
358
325
  },
359
326
  loadIcon: {
@@ -13,6 +13,10 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
13
13
 
14
14
  var _Text = _interopRequireDefault(require("../Text"));
15
15
 
16
+ var _Icon = _interopRequireDefault(require("../Icon"));
17
+
18
+ var _colors = _interopRequireDefault(require("../tokens/colors.json"));
19
+
16
20
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
17
21
 
18
22
  function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
@@ -53,6 +57,7 @@ var Checkbox = /*#__PURE__*/function (_React$Component) {
53
57
  undetermined: props.undetermined
54
58
  };
55
59
  _this.toggle = _this.toggle.bind(_assertThisInitialized(_this));
60
+ _this.handleKeyUp = _this.handleKeyUp.bind(_assertThisInitialized(_this));
56
61
  return _this;
57
62
  }
58
63
 
@@ -81,6 +86,20 @@ var Checkbox = /*#__PURE__*/function (_React$Component) {
81
86
  if (onChange) onChange(value, id);
82
87
  }
83
88
  }
89
+ }, {
90
+ key: "handleKeyDown",
91
+ value: function handleKeyDown(e) {
92
+ if (e.keyCode == 13 || e.keyCode == 32) {
93
+ e.preventDefault();
94
+ }
95
+ }
96
+ }, {
97
+ key: "handleKeyUp",
98
+ value: function handleKeyUp(e) {
99
+ if (e.keyCode == 13 || e.keyCode == 32) {
100
+ this.toggle();
101
+ }
102
+ }
84
103
  }, {
85
104
  key: "render",
86
105
  value: function render() {
@@ -96,11 +115,16 @@ var Checkbox = /*#__PURE__*/function (_React$Component) {
96
115
  id = _this$props2.id,
97
116
  className = _this$props2.className,
98
117
  style = _this$props2.style,
118
+ alignLeft = _this$props2.alignLeft,
99
119
  trk = _this$props2.trk,
100
120
  testId = _this$props2.testId;
101
121
  var iconClass = undetermined ? " ".concat(classes.undetermined) : value ? " ".concat(classes.active) : '';
122
+ var iconColor = disabled ? _colors["default"].icon.brand.disabled : _colors["default"].icon.inverse["default"];
102
123
  return /*#__PURE__*/_react["default"].createElement("div", _extends({
103
124
  id: id,
125
+ tabIndex: disabled ? -1 : 0,
126
+ onKeyDown: this.handleKeyDown,
127
+ onKeyUp: this.handleKeyUp,
104
128
  className: "".concat(classes.cont).concat(iconClass).concat(disabled ? " ".concat(classes.disabled) : '').concat(className ? " ".concat(className) : ''),
105
129
  onClick: this.toggle,
106
130
  style: style,
@@ -108,16 +132,34 @@ var Checkbox = /*#__PURE__*/function (_React$Component) {
108
132
  }, testId && {
109
133
  'data-value': value ? 1 : 0
110
134
  }), /*#__PURE__*/_react["default"].createElement("div", {
135
+ className: classes.checkWrap
136
+ }, /*#__PURE__*/_react["default"].createElement("div", {
111
137
  className: classes.check,
112
138
  id: trk
113
- }), label && /*#__PURE__*/_react["default"].createElement(_Text["default"], {
139
+ }, /*#__PURE__*/_react["default"].createElement("div", {
140
+ className: classes.box
141
+ }), undetermined && /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
142
+ iconName: "minus",
143
+ width: 16,
144
+ height: 16,
145
+ colors: [iconColor],
146
+ className: classes.icon
147
+ }), !undetermined && value && /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
148
+ iconName: "check",
149
+ width: 16,
150
+ height: 16,
151
+ colors: [iconColor],
152
+ className: classes.icon
153
+ }))), !!(label || right) && /*#__PURE__*/_react["default"].createElement("div", {
154
+ className: classes.labelWrap
155
+ }, label && /*#__PURE__*/_react["default"].createElement(_Text["default"], {
114
156
  tag: "label",
115
- className: "".concat(classes.label).concat(textOverflow ? " ".concat(classes.overflow) : '')
157
+ className: "".concat(classes.label).concat(textOverflow ? " ".concat(classes.overflow) : '').concat(alignLeft ? " ".concat(classes.alignLeft) : '')
116
158
  }, label), right && /*#__PURE__*/_react["default"].createElement(_Text["default"], {
117
159
  tag: "label",
118
160
  mid: true,
119
161
  className: classes.right
120
- }, right));
162
+ }, right)));
121
163
  }
122
164
  }]);
123
165
 
@@ -148,6 +190,9 @@ Checkbox.propTypes = {
148
190
  /** Use this prop to overflow the text of the label, adding '...' and the end. */
149
191
  textOverflow: _propTypes["default"].bool,
150
192
 
193
+ /** Align the content to the left */
194
+ alignLeft: _propTypes["default"].bool,
195
+
151
196
  /** Id for catching selected element for tracking. */
152
197
  trk: _propTypes["default"].string,
153
198
  id: _propTypes["default"].string,