@dxc-technology/halstack-react 0.0.0-80ae676 → 0.0.0-83c2d97

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 (275) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +1 -4
  3. package/HalstackContext.d.ts +10 -0
  4. package/HalstackContext.js +270 -0
  5. package/accordion/Accordion.d.ts +1 -1
  6. package/accordion/Accordion.js +15 -47
  7. package/accordion/Accordion.stories.tsx +307 -0
  8. package/accordion/Accordion.test.js +72 -0
  9. package/accordion/types.d.ts +8 -8
  10. package/accordion-group/AccordionGroup.d.ts +1 -1
  11. package/accordion-group/AccordionGroup.js +15 -17
  12. package/accordion-group/AccordionGroup.stories.tsx +225 -0
  13. package/accordion-group/AccordionGroup.test.js +151 -0
  14. package/accordion-group/types.d.ts +8 -8
  15. package/alert/Alert.js +2 -2
  16. package/alert/Alert.stories.tsx +170 -0
  17. package/alert/Alert.test.js +92 -0
  18. package/alert/types.d.ts +1 -1
  19. package/badge/Badge.d.ts +4 -0
  20. package/badge/Badge.js +1 -1
  21. package/badge/types.d.ts +4 -0
  22. package/badge/types.js +5 -0
  23. package/bleed/Bleed.d.ts +3 -0
  24. package/bleed/Bleed.js +84 -0
  25. package/bleed/Bleed.stories.tsx +342 -0
  26. package/bleed/types.d.ts +37 -0
  27. package/bleed/types.js +5 -0
  28. package/box/Box.d.ts +1 -1
  29. package/box/Box.js +4 -7
  30. package/box/Box.test.js +18 -0
  31. package/box/types.d.ts +0 -4
  32. package/button/Button.d.ts +1 -1
  33. package/button/Button.js +24 -27
  34. package/button/Button.stories.tsx +222 -241
  35. package/button/Button.test.js +35 -0
  36. package/button/types.d.ts +5 -9
  37. package/card/Card.js +32 -34
  38. package/card/Card.stories.tsx +201 -0
  39. package/card/Card.test.js +50 -0
  40. package/card/ice-cream.jpg +0 -0
  41. package/card/types.d.ts +4 -6
  42. package/checkbox/Checkbox.d.ts +1 -1
  43. package/checkbox/Checkbox.js +42 -41
  44. package/checkbox/Checkbox.stories.tsx +124 -128
  45. package/checkbox/Checkbox.test.js +78 -0
  46. package/checkbox/types.d.ts +9 -5
  47. package/chip/Chip.d.ts +4 -0
  48. package/chip/Chip.js +16 -76
  49. package/chip/Chip.stories.tsx +119 -0
  50. package/chip/Chip.test.js +56 -0
  51. package/chip/types.d.ts +45 -0
  52. package/chip/types.js +5 -0
  53. package/common/variables.js +79 -280
  54. package/date-input/DateInput.js +60 -52
  55. package/date-input/DateInput.stories.tsx +7 -7
  56. package/date-input/DateInput.test.js +479 -0
  57. package/date-input/types.d.ts +16 -9
  58. package/dialog/Dialog.js +8 -35
  59. package/dialog/Dialog.stories.tsx +212 -0
  60. package/dialog/Dialog.test.js +40 -0
  61. package/dropdown/Dropdown.d.ts +1 -1
  62. package/dropdown/Dropdown.js +22 -48
  63. package/dropdown/Dropdown.stories.tsx +249 -0
  64. package/dropdown/Dropdown.test.js +189 -0
  65. package/dropdown/types.d.ts +6 -15
  66. package/file-input/FileInput.d.ts +4 -0
  67. package/file-input/FileInput.js +167 -109
  68. package/file-input/FileInput.stories.tsx +507 -0
  69. package/file-input/FileInput.test.js +457 -0
  70. package/file-input/FileItem.d.ts +14 -0
  71. package/file-input/FileItem.js +16 -23
  72. package/file-input/types.d.ts +112 -0
  73. package/file-input/types.js +5 -0
  74. package/footer/Footer.d.ts +1 -1
  75. package/footer/Footer.js +28 -111
  76. package/footer/{Footer.stories.jsx → Footer.stories.tsx} +1 -22
  77. package/footer/Footer.test.js +109 -0
  78. package/footer/Icons.d.ts +2 -0
  79. package/footer/Icons.js +3 -3
  80. package/footer/types.d.ts +22 -18
  81. package/header/Header.js +22 -46
  82. package/header/Header.stories.tsx +172 -0
  83. package/header/Header.test.js +79 -0
  84. package/header/Icons.d.ts +2 -0
  85. package/header/types.d.ts +4 -2
  86. package/heading/Heading.d.ts +4 -0
  87. package/heading/Heading.js +7 -24
  88. package/heading/Heading.stories.tsx +54 -0
  89. package/heading/Heading.test.js +186 -0
  90. package/heading/types.d.ts +33 -0
  91. package/heading/types.js +5 -0
  92. package/inset/Inset.d.ts +3 -0
  93. package/inset/Inset.js +84 -0
  94. package/inset/Inset.stories.tsx +229 -0
  95. package/inset/types.d.ts +37 -0
  96. package/inset/types.js +5 -0
  97. package/layout/ApplicationLayout.d.ts +10 -0
  98. package/layout/ApplicationLayout.js +14 -31
  99. package/layout/ApplicationLayout.stories.tsx +171 -0
  100. package/layout/types.d.ts +57 -0
  101. package/layout/types.js +5 -0
  102. package/link/Link.d.ts +3 -2
  103. package/link/Link.js +71 -70
  104. package/link/Link.stories.tsx +131 -15
  105. package/link/Link.test.js +83 -0
  106. package/link/types.d.ts +10 -29
  107. package/list/List.d.ts +4 -0
  108. package/list/List.js +47 -0
  109. package/list/List.stories.tsx +95 -0
  110. package/list/types.d.ts +7 -0
  111. package/list/types.js +5 -0
  112. package/main.d.ts +11 -8
  113. package/main.js +66 -42
  114. package/number-input/NumberInput.d.ts +4 -0
  115. package/number-input/NumberInput.js +16 -68
  116. package/number-input/{NumberInput.stories.jsx → NumberInput.stories.tsx} +5 -5
  117. package/number-input/NumberInput.test.js +506 -0
  118. package/number-input/NumberInputContext.d.ts +4 -0
  119. package/number-input/NumberInputContext.js +5 -2
  120. package/number-input/numberInputContextTypes.d.ts +19 -0
  121. package/number-input/numberInputContextTypes.js +5 -0
  122. package/number-input/types.d.ts +124 -0
  123. package/number-input/types.js +5 -0
  124. package/package.json +9 -6
  125. package/paginator/Paginator.js +12 -42
  126. package/paginator/Paginator.test.js +266 -0
  127. package/password-input/PasswordInput.js +19 -18
  128. package/password-input/PasswordInput.stories.tsx +3 -3
  129. package/password-input/PasswordInput.test.js +181 -0
  130. package/password-input/types.d.ts +29 -19
  131. package/progress-bar/ProgressBar.js +4 -4
  132. package/progress-bar/ProgressBar.test.js +65 -0
  133. package/quick-nav/QuickNav.d.ts +4 -0
  134. package/quick-nav/QuickNav.js +67 -0
  135. package/quick-nav/QuickNav.stories.tsx +237 -0
  136. package/quick-nav/types.d.ts +21 -0
  137. package/quick-nav/types.js +5 -0
  138. package/radio/Radio.js +12 -13
  139. package/radio/Radio.test.js +71 -0
  140. package/radio/types.d.ts +2 -2
  141. package/radio-group/Radio.d.ts +4 -0
  142. package/radio-group/Radio.js +141 -0
  143. package/radio-group/RadioGroup.d.ts +4 -0
  144. package/radio-group/RadioGroup.js +280 -0
  145. package/radio-group/RadioGroup.stories.tsx +100 -0
  146. package/radio-group/RadioGroup.test.js +695 -0
  147. package/radio-group/types.d.ts +114 -0
  148. package/radio-group/types.js +5 -0
  149. package/resultsetTable/ResultsetTable.d.ts +4 -0
  150. package/resultsetTable/ResultsetTable.js +9 -29
  151. package/resultsetTable/ResultsetTable.stories.tsx +275 -0
  152. package/resultsetTable/ResultsetTable.test.js +306 -0
  153. package/resultsetTable/types.d.ts +67 -0
  154. package/resultsetTable/types.js +5 -0
  155. package/row/Row.d.ts +3 -0
  156. package/row/Row.js +127 -0
  157. package/row/Row.stories.tsx +237 -0
  158. package/row/types.d.ts +28 -0
  159. package/row/types.js +5 -0
  160. package/select/Icons.d.ts +10 -0
  161. package/select/Icons.js +93 -0
  162. package/select/Listbox.d.ts +4 -0
  163. package/select/Listbox.js +149 -0
  164. package/select/Option.d.ts +4 -0
  165. package/select/Option.js +110 -0
  166. package/select/Select.d.ts +4 -0
  167. package/select/Select.js +107 -317
  168. package/select/Select.stories.tsx +582 -0
  169. package/select/Select.test.js +2057 -0
  170. package/select/types.d.ts +213 -0
  171. package/select/types.js +5 -0
  172. package/sidenav/Sidenav.d.ts +9 -0
  173. package/sidenav/Sidenav.js +6 -15
  174. package/sidenav/Sidenav.stories.tsx +182 -0
  175. package/sidenav/Sidenav.test.js +56 -0
  176. package/sidenav/types.d.ts +50 -0
  177. package/sidenav/types.js +5 -0
  178. package/slider/Slider.d.ts +1 -1
  179. package/slider/Slider.js +10 -9
  180. package/slider/Slider.stories.tsx +14 -9
  181. package/slider/Slider.test.js +150 -0
  182. package/slider/types.d.ts +4 -0
  183. package/spinner/Spinner.js +3 -3
  184. package/spinner/Spinner.stories.jsx +1 -0
  185. package/spinner/Spinner.test.js +64 -0
  186. package/stack/Stack.d.ts +3 -0
  187. package/stack/Stack.js +97 -0
  188. package/stack/Stack.stories.tsx +164 -0
  189. package/stack/types.d.ts +24 -0
  190. package/stack/types.js +5 -0
  191. package/switch/Switch.d.ts +1 -1
  192. package/switch/Switch.js +34 -21
  193. package/switch/Switch.stories.tsx +15 -15
  194. package/switch/Switch.test.js +98 -0
  195. package/switch/types.d.ts +6 -2
  196. package/table/Table.js +3 -3
  197. package/table/Table.stories.jsx +2 -1
  198. package/table/Table.test.js +26 -0
  199. package/tabs/Tabs.d.ts +1 -1
  200. package/tabs/Tabs.js +20 -20
  201. package/tabs/Tabs.stories.tsx +112 -0
  202. package/tabs/Tabs.test.js +140 -0
  203. package/tabs/types.d.ts +29 -18
  204. package/tag/Tag.d.ts +1 -1
  205. package/tag/Tag.js +18 -28
  206. package/tag/Tag.stories.tsx +26 -29
  207. package/tag/Tag.test.js +60 -0
  208. package/tag/types.d.ts +23 -14
  209. package/text/Text.d.ts +7 -0
  210. package/text/Text.js +30 -0
  211. package/text/Text.stories.tsx +19 -0
  212. package/text-input/Suggestion.d.ts +4 -0
  213. package/text-input/Suggestion.js +55 -0
  214. package/text-input/TextInput.d.ts +4 -0
  215. package/text-input/TextInput.js +87 -141
  216. package/text-input/TextInput.stories.tsx +474 -0
  217. package/text-input/TextInput.test.js +1712 -0
  218. package/text-input/types.d.ts +178 -0
  219. package/text-input/types.js +5 -0
  220. package/textarea/Textarea.d.ts +4 -0
  221. package/textarea/Textarea.js +37 -68
  222. package/textarea/Textarea.stories.jsx +37 -15
  223. package/textarea/Textarea.test.js +437 -0
  224. package/textarea/types.d.ts +137 -0
  225. package/textarea/types.js +5 -0
  226. package/toggle-group/ToggleGroup.d.ts +4 -0
  227. package/toggle-group/ToggleGroup.js +18 -46
  228. package/toggle-group/ToggleGroup.stories.tsx +173 -0
  229. package/toggle-group/ToggleGroup.test.js +156 -0
  230. package/toggle-group/types.d.ts +105 -0
  231. package/toggle-group/types.js +5 -0
  232. package/useTheme.d.ts +2 -0
  233. package/useTheme.js +2 -2
  234. package/wizard/Wizard.d.ts +4 -0
  235. package/wizard/Wizard.js +89 -70
  236. package/wizard/Wizard.stories.tsx +214 -0
  237. package/wizard/Wizard.test.js +141 -0
  238. package/wizard/types.d.ts +64 -0
  239. package/wizard/types.js +5 -0
  240. package/ThemeContext.js +0 -246
  241. package/V3Select/V3Select.js +0 -455
  242. package/V3Select/index.d.ts +0 -27
  243. package/V3Textarea/V3Textarea.js +0 -260
  244. package/V3Textarea/index.d.ts +0 -27
  245. package/chip/index.d.ts +0 -22
  246. package/date/Date.js +0 -373
  247. package/date/index.d.ts +0 -27
  248. package/file-input/index.d.ts +0 -81
  249. package/heading/index.d.ts +0 -17
  250. package/input-text/Icons.js +0 -22
  251. package/input-text/InputText.js +0 -611
  252. package/input-text/index.d.ts +0 -36
  253. package/number-input/index.d.ts +0 -113
  254. package/resultsetTable/index.d.ts +0 -19
  255. package/select/index.d.ts +0 -131
  256. package/sidenav/index.d.ts +0 -13
  257. package/text-input/index.d.ts +0 -135
  258. package/textarea/index.d.ts +0 -117
  259. package/toggle/Toggle.js +0 -186
  260. package/toggle/index.d.ts +0 -21
  261. package/toggle-group/index.d.ts +0 -21
  262. package/upload/Upload.js +0 -201
  263. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  264. package/upload/buttons-upload/Icons.js +0 -40
  265. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  266. package/upload/dragAndDropArea/Icons.js +0 -39
  267. package/upload/file-upload/FileToUpload.js +0 -115
  268. package/upload/file-upload/Icons.js +0 -66
  269. package/upload/files-upload/FilesToUpload.js +0 -109
  270. package/upload/index.d.ts +0 -15
  271. package/upload/transaction/Icons.js +0 -160
  272. package/upload/transaction/Transaction.js +0 -104
  273. package/upload/transactions/Transactions.js +0 -94
  274. package/wizard/Icons.js +0 -65
  275. package/wizard/index.d.ts +0 -18
package/tabs/Tabs.js CHANGED
@@ -9,13 +9,13 @@ Object.defineProperty(exports, "__esModule", {
9
9
  });
10
10
  exports["default"] = void 0;
11
11
 
12
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
-
14
12
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
15
13
 
14
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
+
16
16
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
17
 
18
- var _react = _interopRequireDefault(require("react"));
18
+ var _react = _interopRequireWildcard(require("react"));
19
19
 
20
20
  var _Tabs = _interopRequireDefault(require("@material-ui/core/Tabs"));
21
21
 
@@ -27,7 +27,7 @@ var _variables = require("../common/variables.js");
27
27
 
28
28
  var _Badge = _interopRequireDefault(require("../badge/Badge"));
29
29
 
30
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
30
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
31
31
 
32
32
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9;
33
33
 
@@ -36,7 +36,8 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
36
36
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(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; }
37
37
 
38
38
  var DxcTabs = function DxcTabs(_ref) {
39
- var activeTabIndex = _ref.activeTabIndex,
39
+ var defaultActiveTabIndex = _ref.defaultActiveTabIndex,
40
+ activeTabIndex = _ref.activeTabIndex,
40
41
  tabs = _ref.tabs,
41
42
  onTabClick = _ref.onTabClick,
42
43
  onTabHover = _ref.onTabHover,
@@ -46,10 +47,10 @@ var DxcTabs = function DxcTabs(_ref) {
46
47
  _ref$tabIndex = _ref.tabIndex,
47
48
  tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
48
49
 
49
- var _React$useState = _react["default"].useState(0),
50
- _React$useState2 = (0, _slicedToArray2["default"])(_React$useState, 2),
51
- innerActiveTabIndex = _React$useState2[0],
52
- setInnerActiveTabIndex = _React$useState2[1];
50
+ var _useState = (0, _react.useState)(defaultActiveTabIndex !== null && defaultActiveTabIndex !== void 0 ? defaultActiveTabIndex : 0),
51
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
52
+ innerActiveTabIndex = _useState2[0],
53
+ setInnerActiveTabIndex = _useState2[1];
53
54
 
54
55
  var colorsTheme = (0, _useTheme["default"])();
55
56
  var hasLabelAndIcon = tabs && tabs.filter(function (tab) {
@@ -57,10 +58,7 @@ var DxcTabs = function DxcTabs(_ref) {
57
58
  }).length > 0;
58
59
 
59
60
  var handleChange = function handleChange(event, newValue) {
60
- if (activeTabIndex == null) {
61
- setInnerActiveTabIndex(newValue);
62
- }
63
-
61
+ activeTabIndex !== null && activeTabIndex !== void 0 ? activeTabIndex : setInnerActiveTabIndex(newValue);
64
62
  onTabClick === null || onTabClick === void 0 ? void 0 : onTabClick(newValue);
65
63
  };
66
64
 
@@ -70,12 +68,12 @@ var DxcTabs = function DxcTabs(_ref) {
70
68
  }, /*#__PURE__*/_react["default"].createElement(TabLabelContainer, {
71
69
  hasLabelAndIcon: hasLabelAndIcon,
72
70
  iconPosition: iconPosition
73
- }, tab.icon ? /*#__PURE__*/_react["default"].createElement(TabIconContainer, {
71
+ }, tab.icon && /*#__PURE__*/_react["default"].createElement(TabIconContainer, {
74
72
  hasLabelAndIcon: hasLabelAndIcon,
75
73
  iconPosition: iconPosition
76
- }, (0, _typeof2["default"])(tab.icon) === "object" ? tab.icon : /*#__PURE__*/_react["default"].createElement(tab.icon)) : tab.iconSrc && /*#__PURE__*/_react["default"].createElement(TabIcon, {
77
- src: tab.iconSrc
78
- }), /*#__PURE__*/_react["default"].createElement(LabelTextContainer, null, tab.label))), tab.notificationNumber && tab.notificationNumber !== false && /*#__PURE__*/_react["default"].createElement(BadgeContainer, {
74
+ }, typeof tab.icon === "string" ? /*#__PURE__*/_react["default"].createElement(TabIcon, {
75
+ src: tab.icon
76
+ }) : tab.icon), /*#__PURE__*/_react["default"].createElement(LabelTextContainer, null, tab.label))), tab.notificationNumber && tab.notificationNumber !== false && /*#__PURE__*/_react["default"].createElement(BadgeContainer, {
79
77
  hasLabelAndIcon: hasLabelAndIcon,
80
78
  iconPosition: iconPosition
81
79
  }, /*#__PURE__*/_react["default"].createElement(_Badge["default"], {
@@ -90,7 +88,7 @@ var DxcTabs = function DxcTabs(_ref) {
90
88
  hasLabelAndIcon: hasLabelAndIcon,
91
89
  iconPosition: iconPosition
92
90
  }, /*#__PURE__*/_react["default"].createElement(Underline, null), /*#__PURE__*/_react["default"].createElement(_Tabs["default"], {
93
- value: activeTabIndex != null ? activeTabIndex : innerActiveTabIndex,
91
+ value: activeTabIndex !== null && activeTabIndex !== void 0 ? activeTabIndex : innerActiveTabIndex,
94
92
  onChange: handleChange,
95
93
  variant: "scrollable",
96
94
  scrollButtons: "auto"
@@ -135,7 +133,7 @@ var Underline = _styledComponents["default"].div(_templateObject6 || (_templateO
135
133
  return props.theme.dividerColor;
136
134
  });
137
135
 
138
- var DxCTabs = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n position: relative;\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n .MuiTabs-root {\n background: white;\n min-height: ", ";\n\n .MuiTabs-scroller {\n .MuiTabs-flexContainer + span {\n z-index: 4;\n }\n }\n .MuiTab-root {\n text-transform: ", " !important;\n }\n .MuiButtonBase-root {\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n\n padding: ", ";\n height: ", ";\n min-width: 90px;\n max-width: 360px;\n min-height: ", ";\n\n &:hover {\n background-color: ", ";\n }\n &:active {\n background-color: ", ";\n font-weight: ", ";\n }\n &:not(.Mui-selected) {\n background-color: ", ";\n color: ", ";\n svg {\n color: ", ";\n }\n }\n &.Mui-selected {\n background-color: ", ";\n color: ", ";\n svg {\n color: ", ";\n }\n }\n &.Mui-disabled {\n cursor: not-allowed !important;\n pointer-events: all;\n color: ", ";\n font-style: ", ";\n svg {\n color: ", ";\n }\n }\n &:focus {\n outline: ", " auto 1px;\n }\n }\n .MuiTabs-indicator {\n background-color: ", ";\n height: ", ";\n }\n .MuiTabs-scrollButtons {\n min-width: ", ";\n width: ", ";\n padding: 0;\n }\n @media (max-width: 599.95px) {\n .MuiTabs-scrollButtonsDesktop {\n display: flex;\n }\n }\n }\n"])), function (props) {
136
+ var DxCTabs = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n position: relative;\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n .MuiTabs-root {\n background: white;\n min-height: ", ";\n\n .MuiTabs-scroller {\n .MuiTabs-flexContainer + span {\n z-index: 4;\n }\n }\n .MuiTab-root {\n text-transform: ", " !important;\n }\n .MuiButtonBase-root {\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n\n padding: ", ";\n height: ", ";\n min-width: 90px;\n max-width: 360px;\n min-height: ", ";\n\n &:hover {\n background-color: ", ";\n }\n &:active {\n background-color: ", ";\n font-weight: ", ";\n }\n &:not(.Mui-selected) {\n background-color: ", ";\n color: ", ";\n svg {\n color: ", ";\n }\n }\n &.Mui-selected {\n background-color: ", ";\n color: ", ";\n svg {\n color: ", ";\n }\n }\n &.Mui-disabled {\n background-color: ", " !important;\n cursor: not-allowed !important;\n pointer-events: all;\n color: ", ";\n font-style: ", ";\n svg {\n color: ", ";\n }\n outline: none !important;\n }\n &:focus {\n outline: ", " auto 1px;\n }\n }\n .MuiTabs-indicator {\n background-color: ", ";\n height: ", ";\n }\n .MuiTabs-scrollButtons {\n min-width: ", ";\n width: ", ";\n padding: 0;\n }\n @media (max-width: 599.95px) {\n .MuiTabs-scrollButtonsDesktop {\n display: flex;\n }\n }\n }\n"])), function (props) {
139
137
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
140
138
  }, function (props) {
141
139
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
@@ -181,6 +179,8 @@ var DxCTabs = _styledComponents["default"].div(_templateObject7 || (_templateObj
181
179
  return props.theme.selectedFontColor;
182
180
  }, function (props) {
183
181
  return props.theme.selectedIconColor;
182
+ }, function (props) {
183
+ return props.theme.unselectedBackgroundColor;
184
184
  }, function (props) {
185
185
  return props.theme.disabledFontColor;
186
186
  }, function (props) {
@@ -199,7 +199,7 @@ var DxCTabs = _styledComponents["default"].div(_templateObject7 || (_templateObj
199
199
  return props.theme.scrollButtonsWidth;
200
200
  });
201
201
 
202
- var TabIcon = _styledComponents["default"].img(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: 22px;\n max-width: 22px;\n"])));
202
+ var TabIcon = _styledComponents["default"].img(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])([""])));
203
203
 
204
204
  var TabIconContainer = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: 22px;\n max-width: 22px;\n margin-bottom: ", ";\n margin-right: ", ";\n overflow: hidden;\n display: flex;\n align-items: center;\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"])), function (props) {
205
205
  return props.hasLabelAndIcon && props.iconPosition === "top" && "8px" || "";
@@ -0,0 +1,112 @@
1
+ import React from "react";
2
+ import DxcTabs from "./Tabs";
3
+ import Title from "../../.storybook/components/Title";
4
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
5
+
6
+ export default {
7
+ title: "Tabs",
8
+ component: DxcTabs,
9
+ };
10
+
11
+ const iconSVG = (
12
+ <svg viewBox="0 0 24 24" fill="currentColor">
13
+ <path d="M0 0h24v24H0z" fill="none" />
14
+ <path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z" />
15
+ </svg>
16
+ );
17
+
18
+ const tabs: any = [
19
+ {
20
+ label: "Tab 1",
21
+ },
22
+ {
23
+ label: "Tab 2",
24
+ },
25
+ {
26
+ label: "Tab 3",
27
+ isDisabled: true,
28
+ },
29
+ {
30
+ label: "Tab 4",
31
+ },
32
+ ];
33
+
34
+ const tabsNotification = tabs.map((tab, index) => ({
35
+ ...tab,
36
+ notificationNumber: (index === 0 && true) || (index === 1 && 5) || (index === 2 && 200),
37
+ }));
38
+
39
+ const tabsIcon = tabs.map((tab) => ({ ...tab, icon: iconSVG }));
40
+
41
+ const tabsNotificationIcon = tabsNotification.map((tab) => ({ ...tab, icon: iconSVG }));
42
+
43
+ export const Chromatic = () => (
44
+ <>
45
+ <ExampleContainer>
46
+ <Title title="Only label" theme="light" level={4} />
47
+ <DxcTabs tabs={tabs} />
48
+ </ExampleContainer>
49
+ <ExampleContainer pseudoState="pseudo-hover">
50
+ <Title title="Hovered tabs" theme="light" level={4} />
51
+ <DxcTabs tabs={tabs} />
52
+ </ExampleContainer>
53
+ <ExampleContainer pseudoState="pseudo-focus">
54
+ <Title title="Focused tabs" theme="light" level={4} />
55
+ <DxcTabs tabs={tabs} />
56
+ </ExampleContainer>
57
+ <ExampleContainer pseudoState="pseudo-active">
58
+ <Title title="Actived tabs" theme="light" level={4} />
59
+ <DxcTabs tabs={tabs} />
60
+ </ExampleContainer>
61
+ <ExampleContainer>
62
+ <Title title="With notification number" theme="light" level={4} />
63
+ <DxcTabs tabs={tabsNotification} />
64
+ </ExampleContainer>
65
+ <ExampleContainer>
66
+ <Title title="With icon position top" theme="light" level={4} />
67
+ <DxcTabs tabs={tabsIcon} />
68
+ </ExampleContainer>
69
+ <ExampleContainer>
70
+ <Title title="With icon position left" theme="light" level={4} />
71
+ <DxcTabs tabs={tabsIcon} iconPosition="left" />
72
+ </ExampleContainer>
73
+ <ExampleContainer>
74
+ <Title title="With icon and notification number" theme="light" level={4} />
75
+ <DxcTabs tabs={tabsNotificationIcon} />
76
+ </ExampleContainer>
77
+ <ExampleContainer>
78
+ <Title title="With icon on the left and notification number" theme="light" level={4} />
79
+ <DxcTabs tabs={tabsNotificationIcon} iconPosition="left" />
80
+ </ExampleContainer>
81
+ <Title title="Margins" theme="light" level={2} />
82
+ <ExampleContainer>
83
+ <Title title="Xxsmall margin" theme="light" level={4} />
84
+ <DxcTabs tabs={tabs} margin="xxsmall" />
85
+ </ExampleContainer>
86
+ <ExampleContainer>
87
+ <Title title="Xsmall margin" theme="light" level={4} />
88
+ <DxcTabs tabs={tabs} margin="xsmall" />
89
+ </ExampleContainer>
90
+ <ExampleContainer>
91
+ <Title title="Small margin" theme="light" level={4} />
92
+ <DxcTabs tabs={tabs} margin="small" />
93
+ </ExampleContainer>
94
+ <ExampleContainer>
95
+ <Title title="Medium margin" theme="light" level={4} />
96
+ <DxcTabs tabs={tabs} margin="medium" />
97
+ </ExampleContainer>
98
+ <ExampleContainer>
99
+ <Title title="Large margin" theme="light" level={4} />
100
+ <DxcTabs tabs={tabs} margin="large" />
101
+ </ExampleContainer>
102
+ <ExampleContainer>
103
+ <Title title="Xlarge margin" theme="light" level={4} />
104
+ <DxcTabs tabs={tabs} margin="xlarge" />
105
+ </ExampleContainer>
106
+ <ExampleContainer>
107
+ <Title title="Xxlarge margin" theme="light" level={4} />
108
+ <DxcTabs tabs={tabs} margin="xxlarge" />
109
+ <hr />
110
+ </ExampleContainer>
111
+ </>
112
+ );
@@ -0,0 +1,140 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _react = _interopRequireDefault(require("react"));
6
+
7
+ var _react2 = require("@testing-library/react");
8
+
9
+ var _Tabs = _interopRequireDefault(require("./Tabs"));
10
+
11
+ var sampleTabs = [{
12
+ label: "Tab-1"
13
+ }, {
14
+ label: "Tab-2"
15
+ }, {
16
+ label: "Tab-3"
17
+ }];
18
+ var sampleTabsWithBadge = [{
19
+ label: "Tab-1",
20
+ notificationNumber: "10"
21
+ }, {
22
+ label: "Tab-2",
23
+ notificationNumber: "20"
24
+ }, {
25
+ label: "Tab-3",
26
+ notificationNumber: "101"
27
+ }];
28
+ describe("Tabs component tests", function () {
29
+ test("Tabs render with correct labels", function () {
30
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Tabs["default"], {
31
+ tabs: sampleTabs
32
+ })),
33
+ getByText = _render.getByText,
34
+ getAllByRole = _render.getAllByRole;
35
+
36
+ var tabs = getAllByRole("tab");
37
+ expect(getByText("Tab-1")).toBeTruthy();
38
+ expect(getByText("Tab-2")).toBeTruthy();
39
+ expect(getByText("Tab-3")).toBeTruthy();
40
+ expect(tabs[0].getAttribute("aria-selected")).toBe("true");
41
+ expect(tabs[1].getAttribute("aria-selected")).toBe("false");
42
+ expect(tabs[2].getAttribute("aria-selected")).toBe("false");
43
+ });
44
+ test("Tabs render with correct labels and badges", function () {
45
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Tabs["default"], {
46
+ tabs: sampleTabsWithBadge
47
+ })),
48
+ getByText = _render2.getByText;
49
+
50
+ expect(getByText("10")).toBeTruthy();
51
+ expect(getByText("20")).toBeTruthy();
52
+ expect(getByText("+99")).toBeTruthy();
53
+ });
54
+ test("Tabs render with an initially active tab", function () {
55
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Tabs["default"], {
56
+ defaultActiveTabIndex: 2,
57
+ tabs: sampleTabsWithBadge
58
+ })),
59
+ getAllByRole = _render3.getAllByRole;
60
+
61
+ var tabs = getAllByRole("tab");
62
+ expect(tabs[0].getAttribute("aria-selected")).toBe("false");
63
+ expect(tabs[1].getAttribute("aria-selected")).toBe("false");
64
+ expect(tabs[2].getAttribute("aria-selected")).toBe("true");
65
+ });
66
+ test("Tabs render with correct icons", function () {
67
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Tabs["default"], {
68
+ tabs: [{
69
+ label: "Tab-1",
70
+ icon: "/testIcon1.png"
71
+ }, {
72
+ label: "Tab-2",
73
+ icon: "/testIcon2.png"
74
+ }, {
75
+ label: "Tab-3",
76
+ icon: "/testIcon3.png"
77
+ }]
78
+ })),
79
+ getAllByRole = _render4.getAllByRole;
80
+
81
+ expect(getAllByRole("img")[0].getAttribute("src")).toBe("/testIcon1.png");
82
+ expect(getAllByRole("img")[1].getAttribute("src")).toBe("/testIcon2.png");
83
+ expect(getAllByRole("img")[2].getAttribute("src")).toBe("/testIcon3.png");
84
+ });
85
+ test("Tabs render with disabled tab", function () {
86
+ var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Tabs["default"], {
87
+ tabs: [{
88
+ label: "Tab-1",
89
+ isDisabled: true
90
+ }, {
91
+ label: "Tab-2"
92
+ }]
93
+ })),
94
+ getAllByRole = _render5.getAllByRole;
95
+
96
+ expect(getAllByRole("tab")[0].hasAttribute("disabled")).toBeTruthy();
97
+ expect(getAllByRole("tab")[1].hasAttribute("disabled")).toBeFalsy();
98
+ });
99
+ test("Uncontrolled tabs", function () {
100
+ var onTabClick = jest.fn();
101
+
102
+ var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Tabs["default"], {
103
+ tabs: sampleTabs,
104
+ onTabClick: onTabClick
105
+ })),
106
+ getByText = _render6.getByText;
107
+
108
+ var tab1 = getByText("Tab-1");
109
+ var tab2 = getByText("Tab-2");
110
+
111
+ _react2.fireEvent.click(tab2);
112
+
113
+ expect(onTabClick).toHaveBeenCalledWith(1);
114
+
115
+ _react2.fireEvent.click(tab1);
116
+
117
+ expect(onTabClick).toHaveBeenCalledWith(0);
118
+ });
119
+ test("Controlled tabs", function () {
120
+ var onTabClick = jest.fn();
121
+
122
+ var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Tabs["default"], {
123
+ tabs: sampleTabs,
124
+ onTabClick: onTabClick,
125
+ activeTabIndex: 0
126
+ })),
127
+ getByText = _render7.getByText;
128
+
129
+ var tab2 = getByText("Tab-2");
130
+ var tab3 = getByText("Tab-3");
131
+
132
+ _react2.fireEvent.click(tab2);
133
+
134
+ expect(onTabClick).toHaveBeenCalledWith(1);
135
+
136
+ _react2.fireEvent.click(tab3);
137
+
138
+ expect(onTabClick).toHaveBeenCalledWith(2);
139
+ });
140
+ });
package/tabs/types.d.ts CHANGED
@@ -6,20 +6,8 @@ declare type Margin = {
6
6
  left?: Space;
7
7
  right?: Space;
8
8
  };
9
- declare type SVG = React.SVGProps<SVGSVGElement> | React.FunctionComponent<React.SVGProps<SVGSVGElement>>;
10
- declare type Tab = {
11
- /**
12
- * Tab label.
13
- */
14
- label?: string;
15
- /**
16
- * Element used as the icon that will be displayed in the tab.
17
- */
18
- icon?: SVG;
19
- /**
20
- * @deprecated URL of the icon to be displayed in the tab.
21
- */
22
- iconSrc?: string;
9
+ declare type SVG = React.SVGProps<SVGSVGElement>;
10
+ declare type TabCommonProps = {
23
11
  /**
24
12
  * Whether the tab is disabled or not.
25
13
  */
@@ -33,15 +21,39 @@ declare type Tab = {
33
21
  */
34
22
  notificationNumber?: boolean | number;
35
23
  };
24
+ declare type TabLabelProps = TabCommonProps & {
25
+ /**
26
+ * Tab label.
27
+ */
28
+ label: string;
29
+ /**
30
+ * Element or path used as the icon that will be displayed in the tab.
31
+ */
32
+ icon?: string | SVG;
33
+ };
34
+ declare type TabIconProps = TabCommonProps & {
35
+ /**
36
+ * Tab label.
37
+ */
38
+ label?: string;
39
+ /**
40
+ * Element or path used as the icon that will be displayed in the tab.
41
+ */
42
+ icon: string | SVG;
43
+ };
36
44
  declare type Props = {
37
45
  /**
38
46
  * An array of objects representing the tabs.
39
47
  */
40
- tabs: [Tab, ...Tab[]];
48
+ tabs: (TabLabelProps | TabIconProps)[];
41
49
  /**
42
50
  * Whether the icon should appear above or to the left of the label.
43
51
  */
44
52
  iconPosition?: "top" | "left";
53
+ /**
54
+ * Initially active tab, only when it is uncontrolled.
55
+ */
56
+ defaultActiveTabIndex?: number;
45
57
  /**
46
58
  * The index of the active tab. If undefined, the component will be
47
59
  * uncontrolled and the active tab will be managed internally by the component.
@@ -58,9 +70,8 @@ declare type Props = {
58
70
  */
59
71
  onTabHover?: (tabIndex: number) => void;
60
72
  /**
61
- * Size of the margin to be applied to the component. You can pass an object
62
- * with 'top', 'bottom', 'left' and 'right' properties in order to specify
63
- * different margin sizes.
73
+ * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
74
+ * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
64
75
  */
65
76
  margin?: Space | Margin;
66
77
  /**
package/tag/Tag.d.ts CHANGED
@@ -1,4 +1,4 @@
1
1
  /// <reference types="react" />
2
2
  import TagPropsType from "./types";
3
- declare const DxcTag: ({ icon, iconSrc, label, linkHref, onClick, iconBgColor, labelPosition, newWindow, margin, size, tabIndex, }: TagPropsType) => JSX.Element;
3
+ declare const DxcTag: ({ icon, label, linkHref, onClick, iconBgColor, labelPosition, newWindow, margin, size, tabIndex, }: TagPropsType) => JSX.Element;
4
4
  export default DxcTag;
package/tag/Tag.js CHANGED
@@ -9,10 +9,10 @@ Object.defineProperty(exports, "__esModule", {
9
9
  });
10
10
  exports["default"] = void 0;
11
11
 
12
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
-
14
12
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
15
13
 
14
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
+
16
16
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
17
 
18
18
  var _react = _interopRequireWildcard(require("react"));
@@ -21,13 +21,13 @@ var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
21
 
22
22
  var _variables = require("../common/variables.js");
23
23
 
24
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
24
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
25
25
 
26
26
  var _utils = require("../common/utils.js");
27
27
 
28
28
  var _Box = _interopRequireDefault(require("../box/Box"));
29
29
 
30
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;
30
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7;
31
31
 
32
32
  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); }
33
33
 
@@ -35,7 +35,6 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
35
35
 
36
36
  var DxcTag = function DxcTag(_ref) {
37
37
  var icon = _ref.icon,
38
- iconSrc = _ref.iconSrc,
39
38
  _ref$label = _ref.label,
40
39
  label = _ref$label === void 0 ? "" : _ref$label,
41
40
  linkHref = _ref.linkHref,
@@ -67,11 +66,11 @@ var DxcTag = function DxcTag(_ref) {
67
66
  shadowDepth: isHovered && (onClick || linkHref) && 2 || 1
68
67
  }, /*#__PURE__*/_react["default"].createElement(TagContent, {
69
68
  labelPosition: labelPosition
70
- }, /*#__PURE__*/_react["default"].createElement(IconContainer, {
69
+ }, labelPosition === "before" && size !== "small" && label && /*#__PURE__*/_react["default"].createElement(TagLabel, null, label), icon && /*#__PURE__*/_react["default"].createElement(IconContainer, {
71
70
  iconBgColor: iconBgColor
72
- }, icon ? /*#__PURE__*/_react["default"].createElement(TagIconContainer, null, (0, _typeof2["default"])(icon) === "object" ? icon : /*#__PURE__*/_react["default"].createElement(icon)) : /*#__PURE__*/_react["default"].createElement(TagIcon, {
73
- src: iconSrc
74
- })), size !== "small" && /*#__PURE__*/_react["default"].createElement(TagLabel, null, label)));
71
+ }, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement(TagIcon, {
72
+ src: icon
73
+ }) : icon), labelPosition === "after" && size !== "small" && label && /*#__PURE__*/_react["default"].createElement(TagLabel, null, label)));
75
74
 
76
75
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
77
76
  theme: colorsTheme.tag
@@ -131,10 +130,7 @@ var StyledDxcTag = _styledComponents["default"].div(_templateObject || (_templat
131
130
  return props.theme.height;
132
131
  });
133
132
 
134
- var TagContent = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n align-items: center;\n flex-direction: ", ";\n width: 100%;\n height: ", ";\n"])), function (_ref8) {
135
- var labelPosition = _ref8.labelPosition;
136
- return labelPosition === "before" && "row-reverse" || "row";
137
- }, function (props) {
133
+ var TagContent = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n align-items: center;\n width: 100%;\n height: ", ";\n"])), function (props) {
138
134
  return props.theme.height;
139
135
  });
140
136
 
@@ -146,20 +142,8 @@ var StyledButton = _styledComponents["default"].button(_templateObject4 || (_tem
146
142
  return props.theme.focusColor;
147
143
  });
148
144
 
149
- var TagIcon = _styledComponents["default"].img(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n justify-content: center;\n align-items: center;\n overflow: hidden;\n width: ", ";\n height: ", ";\n"])), function (props) {
150
- return props.theme.iconWidth;
151
- }, function (props) {
152
- return props.theme.iconHeight;
153
- });
154
-
155
- var TagIconContainer = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n justify-content: center;\n align-items: center;\n overflow: hidden;\n\n img,\n svg {\n width: ", ";\n height: ", ";\n }\n"])), function (props) {
156
- return props.theme.iconWidth;
157
- }, function (props) {
158
- return props.theme.iconHeight;
159
- });
160
-
161
- var IconContainer = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n background: ", ";\n width: ", ";\n height: 100%;\n justify-content: center;\n align-items: center;\n color: ", ";\n min-width: ", ";\n"])), function (_ref9) {
162
- var iconBgColor = _ref9.iconBgColor;
145
+ var IconContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n background: ", ";\n width: ", ";\n height: 100%;\n justify-content: center;\n align-items: center;\n color: ", ";\n min-width: ", ";\n overflow: hidden;\n img,\n svg {\n width: ", ";\n height: ", ";\n }\n"])), function (_ref8) {
146
+ var iconBgColor = _ref8.iconBgColor;
163
147
  return iconBgColor;
164
148
  }, function (props) {
165
149
  return props.theme.iconSectionWidth;
@@ -167,9 +151,15 @@ var IconContainer = _styledComponents["default"].div(_templateObject7 || (_templ
167
151
  return props.theme.iconColor;
168
152
  }, function (props) {
169
153
  return props.theme.iconSectionWidth;
154
+ }, function (props) {
155
+ return props.theme.iconWidth;
156
+ }, function (props) {
157
+ return props.theme.iconHeight;
170
158
  });
171
159
 
172
- var TagLabel = _styledComponents["default"].div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n padding-top: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n flex-grow: 1;\n text-align: center;\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n"])), function (props) {
160
+ var TagIcon = _styledComponents["default"].img(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])([""])));
161
+
162
+ var TagLabel = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n padding-top: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n flex-grow: 1;\n text-align: center;\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n"])), function (props) {
173
163
  return props.theme.fontFamily;
174
164
  }, function (props) {
175
165
  return props.theme.fontSize;