@occmundial/occ-atomic 2.0.0-beta.6 → 2.0.0-beta.8

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.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,31 @@
1
+ # [2.0.0-beta.8](https://github.com/occmundial/occ-atomic/compare/v2.0.0-beta.7...v2.0.0-beta.8) (2024-04-25)
2
+
3
+
4
+ ### Features
5
+
6
+ * Validate render icon in button logic ([c445f00](https://github.com/occmundial/occ-atomic/commit/c445f00b7f89b94c102b0e113b503d0e1a5193d4))
7
+ * Validate render icon in button logic ([91dbc46](https://github.com/occmundial/occ-atomic/commit/91dbc464acceec6b1c7c9d2dde28976d04a5bf30))
8
+
9
+ # [2.0.0-beta.7](https://github.com/occmundial/occ-atomic/compare/v2.0.0-beta.6...v2.0.0-beta.7) (2024-04-24)
10
+
11
+
12
+ ### Bug Fixes
13
+
14
+ * Add missed icons ([a5527c5](https://github.com/occmundial/occ-atomic/commit/a5527c5eff5afb23c142c0b412756ee8f6a11b02))
15
+ * Adjust styles for ghostPink theme and button icons ([942a2c9](https://github.com/occmundial/occ-atomic/commit/942a2c967cea88479154a65a98f2961bfbd406ce))
16
+ * Adjust styles for ghostPink theme and button icons ([9e2576e](https://github.com/occmundial/occ-atomic/commit/9e2576efb42856f1a91ab271ea4b823fbbfbf45d))
17
+ * Change logic to fallback legacy icons ([60f37f4](https://github.com/occmundial/occ-atomic/commit/60f37f48391713faba97f6d4f93e60519d79b348))
18
+
19
+
20
+ ### Features
21
+
22
+ * Add logic to use atomic icons and static icons ([6fe277e](https://github.com/occmundial/occ-atomic/commit/6fe277ed83927d29af3cf06573cb6d08a0f399ab))
23
+ * Add logic to use atomic icons and static icons ([0b9a9e4](https://github.com/occmundial/occ-atomic/commit/0b9a9e41c37a4fcff6c14c8e79da4885662ccba1))
24
+ * Add to mapped icons stars solid icon ([5c96982](https://github.com/occmundial/occ-atomic/commit/5c9698235dc690bb8e1c913cc140854fc64c530b))
25
+ * Adds testing icon to legacy icons ([a0bca6c](https://github.com/occmundial/occ-atomic/commit/a0bca6c33f54e731b645a953499dbc5b96d03d90))
26
+ * Change occ logo blue color to blue token ([4b7d63d](https://github.com/occmundial/occ-atomic/commit/4b7d63d0743a8caecc019f8326733c4cf2017b2f))
27
+ * Update atomic icons ([cdaa9bd](https://github.com/occmundial/occ-atomic/commit/cdaa9bda879f0d8aabe44a79cd16a0eedd3a7e8d))
28
+
1
29
  # [2.0.0-beta.6](https://github.com/occmundial/occ-atomic/compare/v2.0.0-beta.5...v2.0.0-beta.6) (2024-04-22)
2
30
 
3
31
 
@@ -13,6 +13,8 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
13
13
 
14
14
  var _Loading = _interopRequireDefault(require("./Loading"));
15
15
 
16
+ var _Icon = _interopRequireDefault(require("../Icon"));
17
+
16
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
17
19
 
18
20
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
@@ -87,15 +89,22 @@ var Button = /*#__PURE__*/function (_React$Component) {
87
89
  if (round) classNames += " ".concat(classes.round);
88
90
  }
89
91
 
92
+ var iconSize = size === 'sm' ? 16 : 24;
93
+
90
94
  var content = /*#__PURE__*/_react["default"].createElement("span", {
91
95
  className: classes.cont
92
- }, icon ? /*#__PURE__*/_react["default"].createElement("i", {
93
- className: classes.icon
94
- }) : '', children, iconRight ? /*#__PURE__*/_react["default"].createElement("i", {
95
- className: classes.iconRight
96
+ }, icon ? /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
97
+ className: classes.icon,
98
+ iconName: icon,
99
+ width: iconSize,
100
+ height: iconSize
101
+ }) : '', children, iconRight ? /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
102
+ className: classes.iconRight,
103
+ iconName: iconRight,
104
+ width: iconSize,
105
+ height: iconSize
96
106
  }) : '');
97
107
 
98
- var iconSize = size === 'sm' ? 16 : 24;
99
108
  var loadingLayer = loading ? /*#__PURE__*/_react["default"].createElement("span", {
100
109
  className: classes.loadCont
101
110
  }, /*#__PURE__*/_react["default"].createElement(_Loading["default"], {
@@ -107,14 +107,14 @@ describe("Button", function () {
107
107
  classes: classes,
108
108
  icon: "plus"
109
109
  }, "Button"));
110
- expect(wrapper.find('button span i').prop('className').indexOf('icon')).not.toBe(-1);
110
+ expect(wrapper.find('button span Jss(Icon)').prop('className').indexOf('icon')).not.toBe(-1);
111
111
  });
112
112
  it('has an icon on the right', function () {
113
113
  var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_Button["default"], {
114
114
  classes: classes,
115
115
  iconRight: "plus"
116
116
  }, "Button"));
117
- expect(wrapper.find('button span i').prop('className').indexOf('iconRight')).not.toBe(-1);
117
+ expect(wrapper.find('button span Jss(Icon)').prop('className').indexOf('iconRight')).not.toBe(-1);
118
118
  });
119
119
  it('has a loading icon', function () {
120
120
  var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_Button["default"], {
@@ -138,11 +138,11 @@ describe("Button styles", function () {
138
138
  var props = {
139
139
  icon: 'testing'
140
140
  };
141
- expect(_styles["default"].primary['& i'].background(props)).toBe('url(data:image/svg+xml;base64,dGVzdGluZyAtICNmZmY=)');
142
- expect(_styles["default"].secondary['& i'].background(props)).toBe('url(data:image/svg+xml;base64,dGVzdGluZyAtICMwODNDQUU=)');
143
- expect(_styles["default"].tertiary['& i'].background(props)).toBe('url(data:image/svg+xml;base64,dGVzdGluZyAtICMwODNDQUU=)');
144
- expect(_styles["default"].ghostPink['& i'].background(props)).toBe('url(data:image/svg+xml;base64,dGVzdGluZyAtICNmMTM0NjU=)');
145
- expect(_styles["default"].ghostGrey['& i'].background(props)).toBe('url(data:image/svg+xml;base64,dGVzdGluZyAtICM1QTVEN0I=)');
146
- expect(_styles["default"].ghostWhite['& i'].background(props)).toBe('url(data:image/svg+xml;base64,dGVzdGluZyAtICNmZmY=)');
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
147
  });
148
148
  });
@@ -77,6 +77,6 @@ function Loading(props) {
77
77
  ;
78
78
  Loading.propTypes = {
79
79
  fill: _propTypes["default"].string,
80
- width: _propTypes["default"].string,
81
- height: _propTypes["default"].string
80
+ width: _propTypes["default"].number,
81
+ height: _propTypes["default"].number
82
82
  };
@@ -51,14 +51,14 @@ Object {
51
51
  "& $loadIcon": Object {
52
52
  "background": "url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgogICAgICAgICAgICAJIHZpZXdCb3g9IjAgMCAyNCAyNCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjQgMjQ7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KICAgICAgICAgICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KICAgICAgICAgICAgCS5zdDB7ZmlsbDp1cmwoI1NWR0lEXzFfKTt9CiAgICAgICAgICAgIDwvc3R5bGU+CiAgICAgICAgICAgIDxsaW5lYXJHcmFkaWVudCBpZD0iU1ZHSURfMV8iIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4MT0iMjEiIHkxPSIxMiIgeDI9IjMiIHkyPSIxMiI+CiAgICAgICAgICAgIAk8c3RvcCAgb2Zmc2V0PSIwLjE3NzgiIHN0eWxlPSJzdG9wLWNvbG9yOiM1QTVEN0I7c3RvcC1vcGFjaXR5OjAiLz4KICAgICAgICAgICAgCTxzdG9wICBvZmZzZXQ9IjAuMjI3MSIgc3R5bGU9InN0b3AtY29sb3I6IzVBNUQ3QjtzdG9wLW9wYWNpdHk6MC4xIi8+CiAgICAgICAgICAgIAk8c3RvcCAgb2Zmc2V0PSIwLjMxNTciIHN0eWxlPSJzdG9wLWNvbG9yOiM1QTVEN0I7c3RvcC1vcGFjaXR5OjAuNCIvPgogICAgICAgICAgICAJPHN0b3AgIG9mZnNldD0iMC40NTI1IiBzdHlsZT0ic3RvcC1jb2xvcjojNUE1RDdCO3N0b3Atb3BhY2l0eTowLjciLz4KICAgICAgICAgICAgCTxzdG9wICBvZmZzZXQ9IjAuNTU0NiIgc3R5bGU9InN0b3AtY29sb3I6IzVBNUQ3QiIvPgogICAgICAgICAgICAJPHN0b3AgIG9mZnNldD0iMC45Mjc4IiBzdHlsZT0ic3RvcC1jb2xvcjojNUE1RDdCIi8+CiAgICAgICAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICAgICAgICAgIDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xOS4xLDEyYzAuMSw0LTMuMSw3LjItNy4xLDcuMlM0LjgsMTYsNC44LDEyUzgsNC44LDEyLDQuOFYzYy01LDAtOSw0LTksOXM0LDksOSw5czktNCw5LTlIMTkuMXoiLz4KICAgICAgICAgICAgPC9zdmc+)",
53
53
  },
54
- "& i": Object {
54
+ "& span span": Object {
55
55
  "background": [Function],
56
56
  },
57
57
  "&$disabled": Object {
58
58
  "background": "transparent",
59
59
  "color": "#878A9F",
60
60
  },
61
- "&$disabled i": Object {
61
+ "&$disabled span span": Object {
62
62
  "background": [Function],
63
63
  },
64
64
  "&:active": Object {
@@ -77,19 +77,19 @@ Object {
77
77
  "& $loadIcon": Object {
78
78
  "background": "url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgogICAgICAgICAgICAJIHZpZXdCb3g9IjAgMCAyNCAyNCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjQgMjQ7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KICAgICAgICAgICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KICAgICAgICAgICAgCS5zdDB7ZmlsbDp1cmwoI1NWR0lEXzFfKTt9CiAgICAgICAgICAgIDwvc3R5bGU+CiAgICAgICAgICAgIDxsaW5lYXJHcmFkaWVudCBpZD0iU1ZHSURfMV8iIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4MT0iMjEiIHkxPSIxMiIgeDI9IjMiIHkyPSIxMiI+CiAgICAgICAgICAgIAk8c3RvcCAgb2Zmc2V0PSIwLjE3NzgiIHN0eWxlPSJzdG9wLWNvbG9yOiNmMTM0NjU7c3RvcC1vcGFjaXR5OjAiLz4KICAgICAgICAgICAgCTxzdG9wICBvZmZzZXQ9IjAuMjI3MSIgc3R5bGU9InN0b3AtY29sb3I6I2YxMzQ2NTtzdG9wLW9wYWNpdHk6MC4xIi8+CiAgICAgICAgICAgIAk8c3RvcCAgb2Zmc2V0PSIwLjMxNTciIHN0eWxlPSJzdG9wLWNvbG9yOiNmMTM0NjU7c3RvcC1vcGFjaXR5OjAuNCIvPgogICAgICAgICAgICAJPHN0b3AgIG9mZnNldD0iMC40NTI1IiBzdHlsZT0ic3RvcC1jb2xvcjojZjEzNDY1O3N0b3Atb3BhY2l0eTowLjciLz4KICAgICAgICAgICAgCTxzdG9wICBvZmZzZXQ9IjAuNTU0NiIgc3R5bGU9InN0b3AtY29sb3I6I2YxMzQ2NSIvPgogICAgICAgICAgICAJPHN0b3AgIG9mZnNldD0iMC45Mjc4IiBzdHlsZT0ic3RvcC1jb2xvcjojZjEzNDY1Ii8+CiAgICAgICAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICAgICAgICAgIDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xOS4xLDEyYzAuMSw0LTMuMSw3LjItNy4xLDcuMlM0LjgsMTYsNC44LDEyUzgsNC44LDEyLDQuOFYzYy01LDAtOSw0LTksOXM0LDksOSw5czktNCw5LTlIMTkuMXoiLz4KICAgICAgICAgICAgPC9zdmc+)",
79
79
  },
80
- "& i": Object {
80
+ "& span span": Object {
81
81
  "background": [Function],
82
82
  },
83
83
  "&$disabled": Object {
84
- "& i": Object {
84
+ "& span span": Object {
85
85
  "background": [Function],
86
86
  },
87
87
  "background": "transparent !important",
88
88
  "border": "none !important",
89
- "color": "#f13465 !important",
89
+ "color": "#fa90ac !important",
90
90
  },
91
91
  "&:hover, &:active": Object {
92
- "& i": Object {
92
+ "& span span": Object {
93
93
  "background": [Function],
94
94
  },
95
95
  "color": "#cc1b4a",
@@ -107,14 +107,14 @@ Object {
107
107
  ],
108
108
  },
109
109
  "ghostWhite": Object {
110
- "& i": Object {
110
+ "& span span": Object {
111
111
  "background": [Function],
112
112
  },
113
113
  "&$disabled": Object {
114
114
  "background": "transparent",
115
115
  "color": "rgba(255,255,255,0.7)",
116
116
  },
117
- "&$disabled i": Object {
117
+ "&$disabled span span": Object {
118
118
  "background": [Function],
119
119
  },
120
120
  "&:active": Object {
@@ -131,13 +131,11 @@ Object {
131
131
  },
132
132
  "icon": Object {
133
133
  "display": "inline-block",
134
- "height": 16,
135
134
  "marginRight": "8px",
136
135
  "transition": "0.3s all",
137
- "width": 16,
138
136
  },
139
137
  "iconOnly": Object {
140
- "& i": Object {
138
+ "& span span, & svg": Object {
141
139
  "marginRight": 0,
142
140
  },
143
141
  "padding": Array [
@@ -153,10 +151,6 @@ Object {
153
151
  "width": 16,
154
152
  },
155
153
  "lg": Object {
156
- "& i": Object {
157
- "height": 24,
158
- "width": 24,
159
- },
160
154
  "&$iconOnly": Object {
161
155
  "padding": Array [
162
156
  "12px",
@@ -192,10 +186,6 @@ Object {
192
186
  "pointerEvents": "none",
193
187
  },
194
188
  "md": Object {
195
- "& i": Object {
196
- "height": 24,
197
- "width": 24,
198
- },
199
189
  "&$iconOnly": Object {
200
190
  "padding": Array [
201
191
  "8px",
@@ -209,7 +199,7 @@ Object {
209
199
  ],
210
200
  },
211
201
  "primary": Object {
212
- "& i": Object {
202
+ "& span span": Object {
213
203
  "background": [Function],
214
204
  },
215
205
  "&$disabled": Object {
@@ -217,7 +207,7 @@ Object {
217
207
  "color": "rgba(255,255,255,0.7)",
218
208
  "cursor": "not-allowed",
219
209
  },
220
- "&$disabled i": Object {
210
+ "&$disabled span span": Object {
221
211
  "background": [Function],
222
212
  },
223
213
  "&:active": Object {
@@ -244,14 +234,14 @@ Object {
244
234
  "& $loadIcon": Object {
245
235
  "background": "url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgogICAgICAgICAgICAJIHZpZXdCb3g9IjAgMCAyNCAyNCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjQgMjQ7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KICAgICAgICAgICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KICAgICAgICAgICAgCS5zdDB7ZmlsbDp1cmwoI1NWR0lEXzFfKTt9CiAgICAgICAgICAgIDwvc3R5bGU+CiAgICAgICAgICAgIDxsaW5lYXJHcmFkaWVudCBpZD0iU1ZHSURfMV8iIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4MT0iMjEiIHkxPSIxMiIgeDI9IjMiIHkyPSIxMiI+CiAgICAgICAgICAgIAk8c3RvcCAgb2Zmc2V0PSIwLjE3NzgiIHN0eWxlPSJzdG9wLWNvbG9yOiMwODNDQUU7c3RvcC1vcGFjaXR5OjAiLz4KICAgICAgICAgICAgCTxzdG9wICBvZmZzZXQ9IjAuMjI3MSIgc3R5bGU9InN0b3AtY29sb3I6IzA4M0NBRTtzdG9wLW9wYWNpdHk6MC4xIi8+CiAgICAgICAgICAgIAk8c3RvcCAgb2Zmc2V0PSIwLjMxNTciIHN0eWxlPSJzdG9wLWNvbG9yOiMwODNDQUU7c3RvcC1vcGFjaXR5OjAuNCIvPgogICAgICAgICAgICAJPHN0b3AgIG9mZnNldD0iMC40NTI1IiBzdHlsZT0ic3RvcC1jb2xvcjojMDgzQ0FFO3N0b3Atb3BhY2l0eTowLjciLz4KICAgICAgICAgICAgCTxzdG9wICBvZmZzZXQ9IjAuNTU0NiIgc3R5bGU9InN0b3AtY29sb3I6IzA4M0NBRSIvPgogICAgICAgICAgICAJPHN0b3AgIG9mZnNldD0iMC45Mjc4IiBzdHlsZT0ic3RvcC1jb2xvcjojMDgzQ0FFIi8+CiAgICAgICAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICAgICAgICAgIDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xOS4xLDEyYzAuMSw0LTMuMSw3LjItNy4xLDcuMlM0LjgsMTYsNC44LDEyUzgsNC44LDEyLDQuOFYzYy01LDAtOSw0LTksOXM0LDksOSw5czktNCw5LTlIMTkuMXoiLz4KICAgICAgICAgICAgPC9zdmc+)",
246
236
  },
247
- "& i": Object {
237
+ "& span span": Object {
248
238
  "background": [Function],
249
239
  },
250
240
  "&$disabled": Object {
251
241
  "background": "hsl(221 91.2% 35.7% / 0.1)",
252
242
  "color": "#486EC3",
253
243
  },
254
- "&$disabled i": Object {
244
+ "&$disabled span span": Object {
255
245
  "background": [Function],
256
246
  },
257
247
  "&:active": Object {
@@ -270,7 +260,7 @@ Object {
270
260
  "& $loadIcon": Object {
271
261
  "background": "url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgogICAgICAgICAgICAJIHZpZXdCb3g9IjAgMCAyNCAyNCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjQgMjQ7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KICAgICAgICAgICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KICAgICAgICAgICAgCS5zdDB7ZmlsbDp1cmwoI1NWR0lEXzFfKTt9CiAgICAgICAgICAgIDwvc3R5bGU+CiAgICAgICAgICAgIDxsaW5lYXJHcmFkaWVudCBpZD0iU1ZHSURfMV8iIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4MT0iMjEiIHkxPSIxMiIgeDI9IjMiIHkyPSIxMiI+CiAgICAgICAgICAgIAk8c3RvcCAgb2Zmc2V0PSIwLjE3NzgiIHN0eWxlPSJzdG9wLWNvbG9yOiMwODNDQUU7c3RvcC1vcGFjaXR5OjAiLz4KICAgICAgICAgICAgCTxzdG9wICBvZmZzZXQ9IjAuMjI3MSIgc3R5bGU9InN0b3AtY29sb3I6IzA4M0NBRTtzdG9wLW9wYWNpdHk6MC4xIi8+CiAgICAgICAgICAgIAk8c3RvcCAgb2Zmc2V0PSIwLjMxNTciIHN0eWxlPSJzdG9wLWNvbG9yOiMwODNDQUU7c3RvcC1vcGFjaXR5OjAuNCIvPgogICAgICAgICAgICAJPHN0b3AgIG9mZnNldD0iMC40NTI1IiBzdHlsZT0ic3RvcC1jb2xvcjojMDgzQ0FFO3N0b3Atb3BhY2l0eTowLjciLz4KICAgICAgICAgICAgCTxzdG9wICBvZmZzZXQ9IjAuNTU0NiIgc3R5bGU9InN0b3AtY29sb3I6IzA4M0NBRSIvPgogICAgICAgICAgICAJPHN0b3AgIG9mZnNldD0iMC45Mjc4IiBzdHlsZT0ic3RvcC1jb2xvcjojMDgzQ0FFIi8+CiAgICAgICAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICAgICAgICAgIDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xOS4xLDEyYzAuMSw0LTMuMSw3LjItNy4xLDcuMlM0LjgsMTYsNC44LDEyUzgsNC44LDEyLDQuOFYzYy01LDAtOSw0LTksOXM0LDksOSw5czktNCw5LTlIMTkuMXoiLz4KICAgICAgICAgICAgPC9zdmc+)",
272
262
  },
273
- "& i": Object {
263
+ "& span span": Object {
274
264
  "background": [Function],
275
265
  },
276
266
  "&$disabled": Object {
@@ -278,7 +268,7 @@ Object {
278
268
  "color": "#486EC3",
279
269
  "outline": "2px solid #8DA5DA",
280
270
  },
281
- "&$disabled i": Object {
271
+ "&$disabled span span": Object {
282
272
  "background": [Function],
283
273
  },
284
274
  "&:active": Object {
@@ -299,14 +289,14 @@ Object {
299
289
  "outlineOffset": "-2px",
300
290
  },
301
291
  "tertiaryWhite": Object {
302
- "& i": Object {
292
+ "& span span": Object {
303
293
  "background": [Function],
304
294
  },
305
295
  "&$disabled": Object {
306
296
  "background": "transparent",
307
297
  "color": "rgba(255,255,255,0.7)",
308
298
  },
309
- "&$disabled i": Object {
299
+ "&$disabled span span": Object {
310
300
  "background": [Function],
311
301
  },
312
302
  "&:active": Object {
@@ -21,20 +21,23 @@ var _fonts2 = _interopRequireDefault(require("../tokens/fonts.json"));
21
21
 
22
22
  var _shadows = _interopRequireDefault(require("../tokens/shadows.json"));
23
23
 
24
+ var _mappedIcons = require("../subatomic/mappedIcons");
25
+
24
26
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
25
27
 
26
28
  var sec = _colors["default"].sec,
27
29
  secDark = _colors["default"].secDark,
28
- grey900 = _colors["default"].grey900;
30
+ grey500 = _colors["default"].grey500,
31
+ secLight = _colors["default"].secLight;
29
32
  var sm = _fonts2["default"]['button-small'];
30
33
  var md = _fonts2["default"]['button-medium'];
31
34
  var lg = _fonts2["default"]['button-large'];
32
35
 
33
36
  var renderIcon = function renderIcon(props, color) {
34
37
  if (props.icon) {
35
- return _icons["default"].base(_icons["default"][props.icon].icon(color));
38
+ return _mappedIcons.legacyIcons[props.icon] ? _icons["default"].base(_icons["default"][props.icon].icon(color)) : '';
36
39
  } else if (props.iconRight) {
37
- return _icons["default"].base(_icons["default"][props.iconRight].icon(color));
40
+ return _mappedIcons.legacyIcons[props.iconRight] ? _icons["default"].base(_icons["default"][props.iconRight].icon(color)) : '';
38
41
  }
39
42
 
40
43
  return '';
@@ -107,12 +110,12 @@ var _default = {
107
110
  color: _colors2["default"].text.white.secondary,
108
111
  cursor: 'not-allowed'
109
112
  },
110
- '& i': {
113
+ '& span span': {
111
114
  background: function background(props) {
112
115
  return renderIcon(props, [_colors2["default"].icon.inverse["default"]]);
113
116
  }
114
117
  },
115
- '&$disabled i': {
118
+ '&$disabled span span': {
116
119
  background: function background(props) {
117
120
  return renderIcon(props, [_colors2["default"].icon.inverse.disabled]);
118
121
  }
@@ -134,12 +137,12 @@ var _default = {
134
137
  background: _colors2["default"].button.secondary.bg.disabled,
135
138
  color: _colors2["default"].text.indigo.secondary
136
139
  },
137
- '& i': {
140
+ '& span span': {
138
141
  background: function background(props) {
139
142
  return renderIcon(props, [_colors2["default"].icon.brand["default"]]);
140
143
  }
141
144
  },
142
- '&$disabled i': {
145
+ '&$disabled span span': {
143
146
  background: function background(props) {
144
147
  return renderIcon(props, [_colors2["default"].icon.brand.disabled]);
145
148
  }
@@ -165,7 +168,7 @@ var _default = {
165
168
  '&:not(:active):focus-visible': {
166
169
  boxShadow: _shadows["default"]['focus-indigo']
167
170
  },
168
- '& i': {
171
+ '& span span': {
169
172
  background: function background(props) {
170
173
  return renderIcon(props, [_colors2["default"].icon.brand["default"]]);
171
174
  }
@@ -175,7 +178,7 @@ var _default = {
175
178
  color: _colors2["default"].text.indigo.secondary,
176
179
  outline: "2px solid ".concat(_colors2["default"].button.tertiary.border.disabled)
177
180
  },
178
- '&$disabled i': {
181
+ '&$disabled span span': {
179
182
  background: function background(props) {
180
183
  return renderIcon(props, [_colors2["default"].icon.brand.disabled]);
181
184
  }
@@ -201,7 +204,7 @@ var _default = {
201
204
  '&:not(:active):focus-visible': {
202
205
  boxShadow: _shadows["default"]['focus-white']
203
206
  },
204
- '& i': {
207
+ '& span span': {
205
208
  background: function background(props) {
206
209
  return renderIcon(props, [_colors2["default"].icon.inverse["default"]]);
207
210
  }
@@ -210,7 +213,7 @@ var _default = {
210
213
  background: 'transparent',
211
214
  color: _colors2["default"].text.white.secondary
212
215
  },
213
- '&$disabled i': {
216
+ '&$disabled span span': {
214
217
  background: function background(props) {
215
218
  return renderIcon(props, [_colors2["default"].icon.inverse.disabled]);
216
219
  }
@@ -224,24 +227,24 @@ var _default = {
224
227
  paddingRight: [0, '!important'],
225
228
  '&:hover, &:active': {
226
229
  color: secDark,
227
- '& i': {
230
+ '& span span': {
228
231
  background: function background(props) {
229
232
  return renderIcon(props, [secDark]);
230
233
  }
231
234
  }
232
235
  },
233
- '& i': {
236
+ '& span span': {
234
237
  background: function background(props) {
235
238
  return renderIcon(props, [sec]);
236
239
  }
237
240
  },
238
241
  '&$disabled': {
239
242
  background: "transparent !important",
240
- color: "".concat(sec, " !important"),
243
+ color: "".concat(secLight, " !important"),
241
244
  border: "none !important",
242
- '& i': {
245
+ '& span span': {
243
246
  background: function background(props) {
244
- return renderIcon(props, [grey900]);
247
+ return renderIcon(props, [grey500]);
245
248
  }
246
249
  }
247
250
  },
@@ -261,7 +264,7 @@ var _default = {
261
264
  '&:not(:active):focus-visible': {
262
265
  boxShadow: _shadows["default"]['focus-corp']
263
266
  },
264
- '& i': {
267
+ '& span span': {
265
268
  background: function background(props) {
266
269
  return renderIcon(props, [_colors2["default"].icon["default"]["default"]]);
267
270
  }
@@ -270,7 +273,7 @@ var _default = {
270
273
  background: 'transparent',
271
274
  color: _colors2["default"].text.corp.disabled
272
275
  },
273
- '&$disabled i': {
276
+ '&$disabled span span': {
274
277
  background: function background(props) {
275
278
  return renderIcon(props, [_colors2["default"].icon["default"].disabled]);
276
279
  }
@@ -291,7 +294,7 @@ var _default = {
291
294
  '&:not(:active):focus-visible': {
292
295
  boxShadow: _shadows["default"]['focus-white']
293
296
  },
294
- '& i': {
297
+ '& span span': {
295
298
  background: function background(props) {
296
299
  return renderIcon(props, [_colors2["default"].icon.inverse["default"]]);
297
300
  }
@@ -300,7 +303,7 @@ var _default = {
300
303
  background: 'transparent',
301
304
  color: _colors2["default"].text.white.secondary
302
305
  },
303
- '&$disabled i': {
306
+ '&$disabled span span': {
304
307
  background: function background(props) {
305
308
  return renderIcon(props, [_colors2["default"].icon.inverse.disabled]);
306
309
  }
@@ -320,10 +323,6 @@ var _default = {
320
323
  md: {
321
324
  font: "".concat(md.fontWeight, " ").concat(md.fontSize, "/").concat(md.lineHeight, " ").concat(_fonts["default"].body),
322
325
  padding: [_spacing["default"]['size-3'], _spacing["default"]['size-5']],
323
- '& i': {
324
- width: 24,
325
- height: 24
326
- },
327
326
  '&$iconOnly': {
328
327
  padding: [_spacing["default"]['size-2'], _spacing["default"]['size-2']]
329
328
  }
@@ -331,10 +330,6 @@ var _default = {
331
330
  lg: {
332
331
  font: "".concat(lg.fontWeight, " ").concat(lg.fontSize, "/").concat(lg.lineHeight, " ").concat(_fonts["default"].body),
333
332
  padding: [_spacing["default"]['size-3'], _spacing["default"]['size-6']],
334
- '& i': {
335
- width: 24,
336
- height: 24
337
- },
338
333
  '&$iconOnly': {
339
334
  padding: [_spacing["default"]['size-3'], _spacing["default"]['size-3']]
340
335
  }
@@ -346,8 +341,6 @@ var _default = {
346
341
  },
347
342
  // Icon
348
343
  icon: {
349
- width: 16,
350
- height: 16,
351
344
  marginRight: _spacing["default"]['size-2'],
352
345
  display: 'inline-block',
353
346
  transition: '0.3s all'
@@ -361,7 +354,7 @@ var _default = {
361
354
  },
362
355
  iconOnly: {
363
356
  padding: [_spacing["default"]['size-2'], _spacing["default"]['size-2']],
364
- '& i': {
357
+ '& span span, & svg': {
365
358
  marginRight: 0
366
359
  }
367
360
  },
@@ -7,71 +7,102 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports["default"] = void 0;
9
9
 
10
- var _react = _interopRequireDefault(require("react"));
10
+ var _react = _interopRequireWildcard(require("react"));
11
11
 
12
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
13
13
 
14
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
14
+ var _useAtomic = _interopRequireDefault(require("../Provider/useAtomic"));
15
15
 
16
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
16
+ var _mappedIcons = require("../subatomic/mappedIcons");
17
17
 
18
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
18
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
19
19
 
20
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
20
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
21
21
 
22
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
22
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
23
23
 
24
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
24
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
25
25
 
26
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
26
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
27
27
 
28
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
28
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
29
29
 
30
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
30
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
31
31
 
32
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
32
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
33
33
 
34
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
34
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
35
35
 
36
- /** Component to display any of the icons on the library. */
37
- var Icon = /*#__PURE__*/function (_React$Component) {
38
- _inherits(Icon, _React$Component);
36
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
39
37
 
40
- var _super = _createSuper(Icon);
38
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
41
39
 
42
- function Icon() {
43
- _classCallCheck(this, Icon);
40
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
44
41
 
45
- return _super.apply(this, arguments);
42
+ /** Component to display any of the icons on the library. */
43
+ function Icon(props) {
44
+ var classes = props.classes,
45
+ className = props.className,
46
+ style = props.style,
47
+ id = props.id,
48
+ iconName = props.iconName,
49
+ ariaLabel = props.ariaLabel,
50
+ alt = props.alt,
51
+ onClick = props.onClick,
52
+ colors = props.colors,
53
+ testId = props.testId,
54
+ width = props.width,
55
+ height = props.height,
56
+ hoverColor = props.hover,
57
+ transition = props.transition;
58
+
59
+ var _useState = (0, _react.useState)(false),
60
+ _useState2 = _slicedToArray(_useState, 2),
61
+ hover = _useState2[0],
62
+ setHover = _useState2[1];
63
+
64
+ var atomic = (0, _useAtomic["default"])();
65
+ var iconColor = (0, _react.useMemo)(function () {
66
+ if (hover && hoverColor && hoverColor.length) return hoverColor[0];
67
+ if (colors && colors.length) return colors[0];
68
+ return 'currentcolor';
69
+ }, [colors, hoverColor, hover]);
70
+ var mappedIconName = _mappedIcons.oldToNewIcon[iconName] || iconName;
71
+
72
+ if (_mappedIcons.legacyIcons[iconName]) {
73
+ var IconType = onClick ? 'button' : 'span';
74
+ return /*#__PURE__*/_react["default"].createElement(IconType, {
75
+ id: id,
76
+ className: "".concat(classes.oldIcon).concat(onClick ? " ".concat(classes.click) : '').concat(className ? " ".concat(className) : ''),
77
+ "aria-label": ariaLabel,
78
+ style: style,
79
+ onClick: onClick,
80
+ alt: alt,
81
+ "data-testid": testId
82
+ });
46
83
  }
47
84
 
48
- _createClass(Icon, [{
49
- key: "render",
50
- value: function render() {
51
- var _this$props = this.props,
52
- classes = _this$props.classes,
53
- className = _this$props.className,
54
- style = _this$props.style,
55
- id = _this$props.id,
56
- ariaLabel = _this$props.ariaLabel,
57
- onClick = _this$props.onClick,
58
- alt = _this$props.alt,
59
- testId = _this$props.testId;
60
- var IconType = onClick ? 'button' : 'span';
61
- return /*#__PURE__*/_react["default"].createElement(IconType, {
62
- id: id,
63
- className: "".concat(classes.icon).concat(onClick ? " ".concat(classes.click) : '').concat(className ? " ".concat(className) : ''),
64
- "aria-label": ariaLabel,
65
- style: style,
66
- onClick: onClick,
67
- alt: alt,
68
- "data-testid": testId
69
- });
70
- }
71
- }]);
72
-
73
- return Icon;
74
- }(_react["default"].Component);
85
+ return /*#__PURE__*/_react["default"].createElement("svg", {
86
+ className: "".concat(classes.icon, " ").concat(atomic.iconsPrefix, "__").concat(mappedIconName).concat(onClick ? ' ' + classes.click : '', " ").concat(className),
87
+ width: width ? width : 24,
88
+ height: height ? height : 24,
89
+ fill: iconColor,
90
+ id: id,
91
+ style: _objectSpread(_objectSpread({}, style), {}, {
92
+ transition: transition ? transition : '0.3s all'
93
+ }),
94
+ onClick: onClick,
95
+ onMouseEnter: function onMouseEnter() {
96
+ return setHover(true);
97
+ },
98
+ onMouseLeave: function onMouseLeave() {
99
+ return setHover(false);
100
+ },
101
+ "data-testid": testId
102
+ }, /*#__PURE__*/_react["default"].createElement("use", {
103
+ xlinkHref: "".concat(atomic.iconsPath, "#").concat(atomic.iconsPrefix, "__").concat(mappedIconName)
104
+ }));
105
+ }
75
106
 
76
107
  Icon.defaultProps = {
77
108
  transition: '0.3s all'