@dxc-technology/halstack-react 0.0.0-2be11f4 → 0.0.0-2c12f2d

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 (248) hide show
  1. package/BackgroundColorContext.js +0 -1
  2. package/HalstackContext.d.ts +12 -0
  3. package/HalstackContext.js +295 -0
  4. package/accordion/Accordion.d.ts +1 -1
  5. package/accordion/Accordion.js +13 -45
  6. package/accordion/Accordion.stories.tsx +307 -0
  7. package/accordion/Accordion.test.js +72 -0
  8. package/accordion/types.d.ts +8 -8
  9. package/accordion-group/AccordionGroup.d.ts +1 -1
  10. package/accordion-group/AccordionGroup.js +13 -15
  11. package/accordion-group/AccordionGroup.stories.tsx +1 -1
  12. package/accordion-group/AccordionGroup.test.js +151 -0
  13. package/accordion-group/types.d.ts +8 -8
  14. package/alert/Alert.js +4 -1
  15. package/alert/Alert.test.js +92 -0
  16. package/badge/Badge.d.ts +4 -0
  17. package/badge/Badge.js +5 -3
  18. package/badge/types.d.ts +5 -0
  19. package/{radio → badge}/types.js +0 -0
  20. package/bleed/Bleed.d.ts +3 -0
  21. package/bleed/Bleed.js +84 -0
  22. package/bleed/Bleed.stories.tsx +342 -0
  23. package/bleed/types.d.ts +37 -0
  24. package/bleed/types.js +5 -0
  25. package/box/Box.js +22 -32
  26. package/box/Box.test.js +18 -0
  27. package/button/Button.d.ts +1 -1
  28. package/button/Button.js +19 -24
  29. package/button/Button.stories.tsx +6 -8
  30. package/button/Button.test.js +35 -0
  31. package/button/types.d.ts +3 -7
  32. package/card/Card.js +27 -28
  33. package/card/Card.stories.tsx +1 -1
  34. package/card/Card.test.js +50 -0
  35. package/checkbox/Checkbox.d.ts +1 -1
  36. package/checkbox/Checkbox.js +43 -39
  37. package/checkbox/Checkbox.stories.tsx +124 -128
  38. package/checkbox/Checkbox.test.js +78 -0
  39. package/checkbox/types.d.ts +8 -4
  40. package/chip/Chip.d.ts +1 -1
  41. package/chip/Chip.js +16 -54
  42. package/chip/Chip.stories.tsx +6 -8
  43. package/chip/Chip.test.js +56 -0
  44. package/chip/types.d.ts +7 -15
  45. package/common/variables.js +233 -341
  46. package/date-input/DateInput.js +62 -51
  47. package/date-input/DateInput.stories.tsx +7 -7
  48. package/date-input/DateInput.test.js +479 -0
  49. package/date-input/types.d.ts +16 -9
  50. package/dialog/Dialog.js +6 -33
  51. package/dialog/Dialog.test.js +40 -0
  52. package/dropdown/Dropdown.d.ts +1 -1
  53. package/dropdown/Dropdown.js +21 -47
  54. package/dropdown/Dropdown.stories.tsx +249 -0
  55. package/dropdown/Dropdown.test.js +189 -0
  56. package/dropdown/types.d.ts +5 -14
  57. package/file-input/FileInput.d.ts +1 -1
  58. package/file-input/FileInput.js +152 -70
  59. package/file-input/FileInput.stories.tsx +507 -0
  60. package/file-input/FileInput.test.js +457 -0
  61. package/file-input/FileItem.js +9 -7
  62. package/file-input/types.d.ts +32 -7
  63. package/footer/Footer.d.ts +1 -1
  64. package/footer/Footer.js +30 -111
  65. package/footer/{Footer.stories.jsx → Footer.stories.tsx} +1 -22
  66. package/footer/Footer.test.js +109 -0
  67. package/footer/Icons.d.ts +2 -0
  68. package/footer/Icons.js +3 -3
  69. package/footer/types.d.ts +5 -9
  70. package/header/Header.js +27 -48
  71. package/header/Header.stories.tsx +46 -36
  72. package/header/Header.test.js +79 -0
  73. package/header/Icons.d.ts +2 -0
  74. package/heading/Heading.stories.tsx +3 -2
  75. package/heading/Heading.test.js +186 -0
  76. package/inset/Inset.d.ts +3 -0
  77. package/inset/Inset.js +84 -0
  78. package/inset/Inset.stories.tsx +229 -0
  79. package/inset/types.d.ts +37 -0
  80. package/inset/types.js +5 -0
  81. package/layout/ApplicationLayout.d.ts +4 -3
  82. package/layout/ApplicationLayout.js +81 -110
  83. package/layout/ApplicationLayout.stories.tsx +14 -59
  84. package/layout/Icons.d.ts +5 -0
  85. package/layout/Icons.js +13 -2
  86. package/layout/SidenavContext.d.ts +5 -0
  87. package/layout/SidenavContext.js +19 -0
  88. package/layout/types.d.ts +5 -10
  89. package/link/Link.d.ts +3 -2
  90. package/link/Link.js +60 -85
  91. package/link/Link.stories.tsx +91 -51
  92. package/link/Link.test.js +83 -0
  93. package/link/types.d.ts +9 -29
  94. package/list/List.d.ts +3 -6
  95. package/list/List.js +17 -7
  96. package/list/List.stories.tsx +25 -0
  97. package/list/types.d.ts +7 -0
  98. package/list/types.js +5 -0
  99. package/main.d.ts +7 -8
  100. package/main.js +39 -41
  101. package/number-input/NumberInput.js +14 -24
  102. package/number-input/NumberInput.stories.tsx +5 -5
  103. package/number-input/NumberInput.test.js +506 -0
  104. package/number-input/types.d.ts +17 -10
  105. package/package.json +9 -6
  106. package/paginator/Paginator.js +17 -44
  107. package/paginator/Paginator.test.js +266 -0
  108. package/password-input/PasswordInput.js +19 -17
  109. package/password-input/PasswordInput.stories.tsx +3 -3
  110. package/password-input/PasswordInput.test.js +180 -0
  111. package/password-input/types.d.ts +14 -11
  112. package/progress-bar/ProgressBar.js +3 -3
  113. package/progress-bar/ProgressBar.stories.jsx +11 -11
  114. package/progress-bar/ProgressBar.test.js +65 -0
  115. package/quick-nav/QuickNav.d.ts +4 -0
  116. package/quick-nav/QuickNav.js +112 -0
  117. package/quick-nav/QuickNav.stories.tsx +237 -0
  118. package/quick-nav/types.d.ts +21 -0
  119. package/quick-nav/types.js +5 -0
  120. package/radio-group/Radio.d.ts +4 -0
  121. package/radio-group/Radio.js +141 -0
  122. package/radio-group/RadioGroup.d.ts +4 -0
  123. package/radio-group/RadioGroup.js +282 -0
  124. package/radio-group/RadioGroup.stories.tsx +100 -0
  125. package/radio-group/RadioGroup.test.js +695 -0
  126. package/radio-group/types.d.ts +114 -0
  127. package/radio-group/types.js +5 -0
  128. package/resultsetTable/ResultsetTable.js +5 -2
  129. package/resultsetTable/ResultsetTable.stories.tsx +275 -0
  130. package/resultsetTable/ResultsetTable.test.js +306 -0
  131. package/resultsetTable/types.d.ts +1 -1
  132. package/row/Row.d.ts +3 -11
  133. package/row/Row.js +12 -9
  134. package/row/Row.stories.tsx +20 -6
  135. package/row/types.d.ts +28 -0
  136. package/row/types.js +5 -0
  137. package/select/Icons.d.ts +10 -0
  138. package/select/Icons.js +93 -0
  139. package/select/Listbox.d.ts +4 -0
  140. package/select/Listbox.js +152 -0
  141. package/select/Option.d.ts +4 -0
  142. package/select/Option.js +110 -0
  143. package/select/Select.d.ts +4 -0
  144. package/select/Select.js +121 -341
  145. package/select/Select.stories.tsx +103 -81
  146. package/select/Select.test.js +2120 -0
  147. package/select/types.d.ts +213 -0
  148. package/select/types.js +5 -0
  149. package/sidenav/Sidenav.d.ts +1 -1
  150. package/sidenav/Sidenav.js +20 -9
  151. package/sidenav/Sidenav.stories.tsx +18 -1
  152. package/sidenav/Sidenav.test.js +56 -0
  153. package/slider/Slider.d.ts +1 -1
  154. package/slider/Slider.js +2 -1
  155. package/slider/Slider.stories.tsx +8 -8
  156. package/slider/Slider.test.js +150 -0
  157. package/slider/types.d.ts +4 -0
  158. package/spinner/Spinner.js +1 -1
  159. package/spinner/Spinner.stories.jsx +1 -0
  160. package/spinner/Spinner.test.js +64 -0
  161. package/stack/Stack.d.ts +3 -10
  162. package/stack/Stack.js +12 -9
  163. package/stack/Stack.stories.tsx +20 -6
  164. package/stack/types.d.ts +24 -0
  165. package/stack/types.js +5 -0
  166. package/switch/Switch.d.ts +1 -1
  167. package/switch/Switch.js +35 -19
  168. package/switch/Switch.stories.tsx +15 -15
  169. package/switch/Switch.test.js +98 -0
  170. package/switch/types.d.ts +6 -2
  171. package/table/Table.stories.jsx +2 -1
  172. package/table/Table.test.js +26 -0
  173. package/tabs/Tabs.d.ts +1 -1
  174. package/tabs/Tabs.js +16 -18
  175. package/tabs/Tabs.stories.tsx +7 -16
  176. package/tabs/Tabs.test.js +140 -0
  177. package/tabs/types.d.ts +27 -15
  178. package/tabs-nav/NavTabs.d.ts +8 -0
  179. package/tabs-nav/NavTabs.js +125 -0
  180. package/tabs-nav/NavTabs.stories.tsx +170 -0
  181. package/tabs-nav/NavTabs.test.js +82 -0
  182. package/tabs-nav/Tab.d.ts +4 -0
  183. package/tabs-nav/Tab.js +132 -0
  184. package/tabs-nav/types.d.ts +53 -0
  185. package/tabs-nav/types.js +5 -0
  186. package/tag/Tag.d.ts +1 -1
  187. package/tag/Tag.js +17 -27
  188. package/tag/Tag.stories.tsx +26 -29
  189. package/tag/Tag.test.js +60 -0
  190. package/tag/types.d.ts +23 -14
  191. package/text/Text.js +1 -1
  192. package/text-input/Suggestion.d.ts +4 -0
  193. package/text-input/Suggestion.js +55 -0
  194. package/text-input/TextInput.js +78 -96
  195. package/text-input/TextInput.stories.tsx +34 -16
  196. package/text-input/TextInput.test.js +1712 -0
  197. package/text-input/types.d.ts +32 -13
  198. package/textarea/Textarea.d.ts +4 -0
  199. package/textarea/Textarea.js +32 -71
  200. package/textarea/Textarea.stories.jsx +37 -15
  201. package/textarea/Textarea.test.js +437 -0
  202. package/textarea/types.d.ts +137 -0
  203. package/textarea/types.js +5 -0
  204. package/toggle-group/ToggleGroup.d.ts +1 -1
  205. package/toggle-group/ToggleGroup.js +14 -16
  206. package/toggle-group/ToggleGroup.stories.tsx +27 -32
  207. package/toggle-group/ToggleGroup.test.js +156 -0
  208. package/toggle-group/types.d.ts +46 -25
  209. package/useTheme.js +2 -2
  210. package/useTranslatedLabels.d.ts +2 -0
  211. package/useTranslatedLabels.js +20 -0
  212. package/wizard/Wizard.d.ts +1 -1
  213. package/wizard/Wizard.js +106 -45
  214. package/wizard/{Wizard.stories.jsx → Wizard.stories.tsx} +13 -23
  215. package/wizard/Wizard.test.js +141 -0
  216. package/wizard/types.d.ts +8 -8
  217. package/ThemeContext.d.ts +0 -15
  218. package/ThemeContext.js +0 -243
  219. package/V3Select/V3Select.js +0 -455
  220. package/V3Select/index.d.ts +0 -27
  221. package/V3Textarea/V3Textarea.js +0 -260
  222. package/V3Textarea/index.d.ts +0 -27
  223. package/date/Date.js +0 -373
  224. package/date/index.d.ts +0 -27
  225. package/input-text/Icons.js +0 -22
  226. package/input-text/InputText.js +0 -611
  227. package/input-text/index.d.ts +0 -36
  228. package/radio/Radio.d.ts +0 -4
  229. package/radio/Radio.js +0 -174
  230. package/radio/Radio.stories.tsx +0 -192
  231. package/radio/types.d.ts +0 -54
  232. package/select/index.d.ts +0 -131
  233. package/textarea/index.d.ts +0 -127
  234. package/toggle/Toggle.js +0 -186
  235. package/toggle/index.d.ts +0 -21
  236. package/upload/Upload.js +0 -201
  237. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  238. package/upload/buttons-upload/Icons.js +0 -40
  239. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  240. package/upload/dragAndDropArea/Icons.js +0 -39
  241. package/upload/file-upload/FileToUpload.js +0 -115
  242. package/upload/file-upload/Icons.js +0 -66
  243. package/upload/files-upload/FilesToUpload.js +0 -109
  244. package/upload/index.d.ts +0 -15
  245. package/upload/transaction/Icons.js +0 -160
  246. package/upload/transaction/Transaction.js +0 -104
  247. package/upload/transactions/Transactions.js +0 -94
  248. package/wizard/Icons.js +0 -65
package/chip/Chip.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 _react = _interopRequireDefault(require("react"));
17
17
 
18
18
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
@@ -33,9 +33,7 @@ var DxcChip = function DxcChip(_ref) {
33
33
  var label = _ref.label,
34
34
  suffixIcon = _ref.suffixIcon,
35
35
  prefixIcon = _ref.prefixIcon,
36
- suffixIconSrc = _ref.suffixIconSrc,
37
36
  onClickSuffix = _ref.onClickSuffix,
38
- prefixIconSrc = _ref.prefixIconSrc,
39
37
  onClickPrefix = _ref.onClickPrefix,
40
38
  disabled = _ref.disabled,
41
39
  margin = _ref.margin,
@@ -47,49 +45,33 @@ var DxcChip = function DxcChip(_ref) {
47
45
  }, /*#__PURE__*/_react["default"].createElement(StyledDxcChip, {
48
46
  disabled: disabled,
49
47
  margin: margin
50
- }, prefixIcon ? /*#__PURE__*/_react["default"].createElement(IconContainer, {
48
+ }, prefixIcon && /*#__PURE__*/_react["default"].createElement(IconContainer, {
51
49
  disabled: disabled,
52
50
  prefixIcon: true,
53
51
  label: label,
54
52
  mode: "prefix",
55
53
  tabIndex: typeof onClickPrefix === "function" && !disabled ? tabIndex : -1,
56
54
  onClick: function onClick() {
57
- return onClickPrefix && !disabled && onClickPrefix(label);
58
- },
59
- interactuable: typeof onClickPrefix === "function" && !disabled
60
- }, (0, _typeof2["default"])(prefixIcon) === "object" ? prefixIcon : /*#__PURE__*/_react["default"].createElement(prefixIcon)) : prefixIconSrc && /*#__PURE__*/_react["default"].createElement(PrefixIconContainer, {
61
- disabled: disabled,
62
- src: prefixIconSrc,
63
- label: label,
64
- tabIndex: typeof onClickPrefix === "function" && !disabled ? tabIndex : -1,
65
- onClick: function onClick() {
66
- return onClickPrefix && !disabled && onClickPrefix(label);
55
+ return onClickPrefix && !disabled && onClickPrefix();
67
56
  },
68
57
  interactuable: typeof onClickPrefix === "function" && !disabled
69
- }), label && /*#__PURE__*/_react["default"].createElement(ChipTextContainer, {
70
- disabled: disabled,
71
- prefixIconSrc: prefixIconSrc,
72
- suffixIconSrc: suffixIconSrc
73
- }, label), suffixIcon ? /*#__PURE__*/_react["default"].createElement(IconContainer, {
58
+ }, typeof prefixIcon === "string" ? /*#__PURE__*/_react["default"].createElement(PrefixIconContainer, {
59
+ src: prefixIcon
60
+ }) : prefixIcon), label && /*#__PURE__*/_react["default"].createElement(ChipTextContainer, {
61
+ disabled: disabled
62
+ }, label), suffixIcon && /*#__PURE__*/_react["default"].createElement(IconContainer, {
74
63
  disabled: disabled,
75
64
  suffixIcon: true,
76
65
  mode: "suffix",
77
66
  label: label,
78
67
  tabIndex: typeof onClickSuffix === "function" && !disabled ? tabIndex : -1,
79
68
  onClick: function onClick() {
80
- return onClickSuffix && !disabled && onClickSuffix(label);
69
+ return onClickSuffix && !disabled && onClickSuffix();
81
70
  },
82
71
  interactuable: typeof onClickSuffix === "function" && !disabled
83
- }, (0, _typeof2["default"])(suffixIcon) === "object" ? suffixIcon : /*#__PURE__*/_react["default"].createElement(suffixIcon)) : suffixIconSrc && /*#__PURE__*/_react["default"].createElement(SuffixIconContainer, {
84
- disabled: disabled,
85
- src: suffixIconSrc,
86
- label: label,
87
- tabIndex: typeof onClickSuffix === "function" && !disabled ? tabIndex : -1,
88
- onClick: function onClick() {
89
- return onClickSuffix && !disabled && onClickSuffix(label);
90
- },
91
- interactuable: typeof onClickSuffix === "function" && !disabled
92
- })));
72
+ }, typeof suffixIcon === "string" ? /*#__PURE__*/_react["default"].createElement(SuffixIconContainer, {
73
+ src: suffixIcon
74
+ }) : suffixIcon)));
93
75
  };
94
76
 
95
77
  var getCursor = function getCursor(interactuable, disabled) {
@@ -155,34 +137,14 @@ var ChipTextContainer = _styledComponents["default"].span(_templateObject2 || (_
155
137
  return disabled && "not-allowed" || "default";
156
138
  });
157
139
 
158
- var SuffixIconContainer = _styledComponents["default"].img(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n ", "\n margin-left: ", ";\n width: ", ";\n height: ", ";\n"])), function (props) {
159
- return props.disabled ? props.theme.disabledIconColor : props.theme.iconColor;
160
- }, function (props) {
161
- return getCursor(props.interactuable, props.disabled);
162
- }, function (props) {
163
- return (props.label || props.suffixIconSrc) && props.theme.iconSpacing || props.prefixIconSrc && "5px";
164
- }, function (props) {
165
- return props.theme.iconSize;
166
- }, function (props) {
167
- return props.theme.iconSize;
168
- });
140
+ var SuffixIconContainer = _styledComponents["default"].img(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])([""])));
169
141
 
170
- var PrefixIconContainer = _styledComponents["default"].img(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n ", "\n margin-right: ", ";\n width: ", ";\n height: ", ";\n"])), function (props) {
171
- return props.disabled ? props.theme.disabledIconColor : props.theme.iconColor;
172
- }, function (props) {
173
- return getCursor(props.interactuable, props.disabled);
174
- }, function (props) {
175
- return (props.label || props.suffixIconSrc) && props.theme.iconSpacing || props.prefixIconSrc && "5px";
176
- }, function (props) {
177
- return props.theme.iconSize;
178
- }, function (props) {
179
- return props.theme.iconSize;
180
- });
142
+ var PrefixIconContainer = _styledComponents["default"].img(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])([""])));
181
143
 
182
144
  var IconContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n ", "\n ", "\n width: ", ";\n height: ", ";\n overflow: hidden;\n\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n &:focus {\n outline-color: ", ";\n outline-width: 2px;\n ", "\n }\n"])), function (props) {
183
145
  return props.disabled ? props.theme.disabledIconColor : props.theme.iconColor;
184
146
  }, function (props) {
185
- return props.prefixIcon ? "margin-right: ".concat((props.label || props.suffixIcon || props.suffixIconSrc) && props.theme.iconSpacing || (props.prefixIcon || props.prefixIconSrc) && "0", ";") : "margin-left: ".concat((props.label || props.prefixIcon || props.prefixIconSrc) && props.theme.iconSpacing || (props.prefixIcon || props.prefixIconSrc) && "0", ";");
147
+ return props.prefixIcon ? "margin-right: ".concat((props.label || props.suffixIcon) && props.theme.iconSpacing || props.prefixIcon && "0", ";") : "margin-left: ".concat((props.label || props.prefixIcon) && props.theme.iconSpacing || props.prefixIcon && "0", ";");
186
148
  }, function (props) {
187
149
  return getCursor(props.interactuable, props.disabled);
188
150
  }, function (props) {
@@ -9,14 +9,12 @@ export default {
9
9
  component: DxcChip,
10
10
  };
11
11
 
12
- const iconSVG = () => {
13
- return (
14
- <svg viewBox="0 0 24 24" fill="currentColor">
15
- <path d="M0 0h24v24H0z" fill="none" />
16
- <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" />
17
- </svg>
18
- );
19
- };
12
+ const iconSVG = (
13
+ <svg viewBox="0 0 24 24" fill="currentColor">
14
+ <path d="M0 0h24v24H0z" fill="none" />
15
+ <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" />
16
+ </svg>
17
+ );
20
18
 
21
19
  export const Chromatic = () => (
22
20
  <>
@@ -0,0 +1,56 @@
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 _Chip = _interopRequireDefault(require("./Chip"));
10
+
11
+ var _invision = _interopRequireDefault(require("../../app/src/images/invision.svg"));
12
+
13
+ describe("Chip component tests", function () {
14
+ test("Chip renders with correct text", function () {
15
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Chip["default"], {
16
+ label: "Chip"
17
+ })),
18
+ getByText = _render.getByText;
19
+
20
+ expect(getByText("Chip")).toBeTruthy();
21
+ });
22
+ test("Calls correct function when clicking on prefix icon", function () {
23
+ var onClick = jest.fn();
24
+
25
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Chip["default"], {
26
+ label: "Chip",
27
+ prefixIcon: _invision["default"],
28
+ onClickPrefix: onClick
29
+ })),
30
+ getByText = _render2.getByText,
31
+ getByRole = _render2.getByRole;
32
+
33
+ expect(getByText("Chip")).toBeTruthy();
34
+
35
+ _react2.fireEvent.click(getByRole("img"));
36
+
37
+ expect(onClick).toHaveBeenCalled();
38
+ });
39
+ test("Calls correct function when clicking on suffix icon", function () {
40
+ var onClick = jest.fn();
41
+
42
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Chip["default"], {
43
+ label: "Chip",
44
+ suffixIcon: _invision["default"],
45
+ onClickSuffix: onClick
46
+ })),
47
+ getByText = _render3.getByText,
48
+ getByRole = _render3.getByRole;
49
+
50
+ expect(getByText("Chip")).toBeTruthy();
51
+
52
+ _react2.fireEvent.click(getByRole("img"));
53
+
54
+ expect(onClick).toHaveBeenCalled();
55
+ });
56
+ });
package/chip/types.d.ts CHANGED
@@ -6,36 +6,28 @@ 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>>;
9
+ declare type SVG = React.SVGProps<SVGSVGElement>;
10
10
  declare type Props = {
11
11
  /**
12
12
  * Text to be placed on the chip.
13
13
  */
14
14
  label?: string;
15
15
  /**
16
- * Element used as icon to be placed after the chip label.
16
+ * Element or path used as icon to be placed after the chip label.
17
17
  */
18
- suffixIcon?: SVG;
18
+ suffixIcon?: string | SVG;
19
19
  /**
20
- * Element used as icon to be placed before the chip label.
20
+ * Element or path used as icon to be placed before the chip label.
21
21
  */
22
- prefixIcon?: SVG;
23
- /**
24
- * @deprecated Path of the icon to be placed after the chip label.
25
- */
26
- suffixIconSrc?: string;
22
+ prefixIcon?: string | SVG;
27
23
  /**
28
24
  * This function will be called when the suffix is clicked.
29
25
  */
30
- onClickSuffix?: (label: string | undefined) => void;
31
- /**
32
- * @deprecated Path of the icon to be placed before the chip label.
33
- */
34
- prefixIconSrc?: string;
26
+ onClickSuffix?: () => void;
35
27
  /**
36
28
  * This function will be called when the prefix is clicked.
37
29
  */
38
- onClickPrefix?: (label: string | undefined) => void;
30
+ onClickPrefix?: () => void;
39
31
  /**
40
32
  * If true, the component will be disabled.
41
33
  */