@dxc-technology/halstack-react 0.0.0-b41d935 → 0.0.0-b4aec06

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 (329) hide show
  1. package/BackgroundColorContext.d.ts +1 -10
  2. package/BackgroundColorContext.js +5 -22
  3. package/HalstackContext.d.ts +1243 -6
  4. package/HalstackContext.js +126 -111
  5. package/README.md +47 -0
  6. package/accordion/Accordion.d.ts +1 -1
  7. package/accordion/Accordion.js +42 -118
  8. package/accordion/Accordion.stories.tsx +85 -139
  9. package/accordion/Accordion.test.js +19 -34
  10. package/accordion/types.d.ts +6 -18
  11. package/accordion-group/AccordionGroup.d.ts +2 -2
  12. package/accordion-group/AccordionGroup.js +29 -77
  13. package/accordion-group/AccordionGroup.stories.tsx +78 -77
  14. package/accordion-group/AccordionGroup.test.js +44 -72
  15. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  16. package/accordion-group/AccordionGroupAccordion.js +31 -0
  17. package/accordion-group/AccordionGroupContext.d.ts +3 -0
  18. package/accordion-group/AccordionGroupContext.js +8 -0
  19. package/accordion-group/types.d.ts +7 -19
  20. package/action-icon/ActionIcon.d.ts +4 -0
  21. package/action-icon/ActionIcon.js +48 -0
  22. package/action-icon/ActionIcon.stories.tsx +41 -0
  23. package/action-icon/ActionIcon.test.js +64 -0
  24. package/action-icon/types.d.ts +26 -0
  25. package/alert/Alert.js +31 -124
  26. package/alert/Alert.stories.tsx +28 -0
  27. package/alert/Alert.test.js +29 -46
  28. package/alert/types.d.ts +5 -5
  29. package/badge/Badge.d.ts +1 -1
  30. package/badge/Badge.js +141 -43
  31. package/badge/Badge.stories.tsx +210 -0
  32. package/badge/Badge.test.js +30 -0
  33. package/badge/types.d.ts +52 -3
  34. package/bleed/Bleed.js +13 -21
  35. package/bleed/Bleed.stories.tsx +1 -0
  36. package/bleed/types.d.ts +2 -2
  37. package/box/Box.d.ts +1 -1
  38. package/box/Box.js +18 -59
  39. package/box/Box.stories.tsx +38 -51
  40. package/box/Box.test.js +2 -7
  41. package/box/types.d.ts +3 -15
  42. package/bulleted-list/BulletedList.js +19 -53
  43. package/bulleted-list/BulletedList.stories.tsx +8 -93
  44. package/bulleted-list/types.d.ts +32 -5
  45. package/button/Button.d.ts +1 -1
  46. package/button/Button.js +71 -106
  47. package/button/Button.stories.tsx +144 -101
  48. package/button/Button.test.js +20 -17
  49. package/button/types.d.ts +9 -5
  50. package/card/Card.d.ts +1 -1
  51. package/card/Card.js +48 -89
  52. package/card/Card.stories.tsx +12 -42
  53. package/card/Card.test.js +11 -22
  54. package/card/types.d.ts +6 -12
  55. package/checkbox/Checkbox.d.ts +2 -2
  56. package/checkbox/Checkbox.js +90 -124
  57. package/checkbox/Checkbox.stories.tsx +68 -54
  58. package/checkbox/Checkbox.test.js +108 -64
  59. package/checkbox/types.d.ts +11 -3
  60. package/chip/Chip.js +39 -79
  61. package/chip/Chip.stories.tsx +121 -26
  62. package/chip/Chip.test.js +16 -31
  63. package/chip/types.d.ts +4 -4
  64. package/common/coreTokens.d.ts +237 -0
  65. package/common/coreTokens.js +184 -0
  66. package/common/utils.d.ts +1 -0
  67. package/common/utils.js +6 -12
  68. package/common/variables.d.ts +1395 -0
  69. package/common/variables.js +914 -1156
  70. package/container/Container.d.ts +4 -0
  71. package/container/Container.js +194 -0
  72. package/container/Container.stories.tsx +214 -0
  73. package/container/types.d.ts +74 -0
  74. package/contextual-menu/ContextualMenu.d.ts +7 -0
  75. package/contextual-menu/ContextualMenu.js +71 -0
  76. package/contextual-menu/ContextualMenu.stories.tsx +182 -0
  77. package/contextual-menu/ContextualMenu.test.js +71 -0
  78. package/contextual-menu/MenuItemAction.d.ts +4 -0
  79. package/contextual-menu/MenuItemAction.js +46 -0
  80. package/contextual-menu/types.d.ts +22 -0
  81. package/date-input/Calendar.d.ts +4 -0
  82. package/date-input/Calendar.js +214 -0
  83. package/date-input/DateInput.js +150 -299
  84. package/date-input/DateInput.stories.tsx +203 -56
  85. package/date-input/DateInput.test.js +700 -371
  86. package/date-input/DatePicker.d.ts +4 -0
  87. package/date-input/DatePicker.js +115 -0
  88. package/date-input/Icons.d.ts +6 -0
  89. package/date-input/Icons.js +58 -0
  90. package/date-input/YearPicker.d.ts +4 -0
  91. package/date-input/YearPicker.js +100 -0
  92. package/date-input/types.d.ts +72 -15
  93. package/dialog/Dialog.d.ts +1 -1
  94. package/dialog/Dialog.js +61 -119
  95. package/dialog/Dialog.stories.tsx +310 -212
  96. package/dialog/Dialog.test.js +269 -32
  97. package/dialog/types.d.ts +18 -26
  98. package/divider/Divider.d.ts +4 -0
  99. package/divider/Divider.js +36 -0
  100. package/divider/Divider.stories.tsx +223 -0
  101. package/divider/Divider.test.js +38 -0
  102. package/divider/types.d.ts +21 -0
  103. package/divider/types.js +5 -0
  104. package/dropdown/Dropdown.js +84 -153
  105. package/dropdown/Dropdown.stories.tsx +209 -94
  106. package/dropdown/Dropdown.test.js +409 -400
  107. package/dropdown/DropdownMenu.js +20 -37
  108. package/dropdown/DropdownMenuItem.js +15 -37
  109. package/dropdown/types.d.ts +20 -24
  110. package/file-input/FileInput.d.ts +2 -2
  111. package/file-input/FileInput.js +193 -262
  112. package/file-input/FileInput.stories.tsx +86 -3
  113. package/file-input/FileInput.test.js +356 -395
  114. package/file-input/FileItem.js +15 -41
  115. package/file-input/types.d.ts +13 -9
  116. package/flex/Flex.js +27 -39
  117. package/flex/Flex.stories.tsx +35 -26
  118. package/flex/types.d.ts +74 -9
  119. package/footer/Footer.d.ts +1 -1
  120. package/footer/Footer.js +70 -117
  121. package/footer/Footer.stories.tsx +55 -21
  122. package/footer/Footer.test.js +33 -57
  123. package/footer/Icons.d.ts +3 -2
  124. package/footer/Icons.js +66 -7
  125. package/footer/types.d.ts +25 -27
  126. package/grid/Grid.d.ts +7 -0
  127. package/grid/Grid.js +76 -0
  128. package/grid/Grid.stories.tsx +219 -0
  129. package/grid/types.d.ts +115 -0
  130. package/grid/types.js +5 -0
  131. package/header/Header.d.ts +4 -3
  132. package/header/Header.js +48 -133
  133. package/header/Header.stories.tsx +115 -36
  134. package/header/Header.test.js +13 -26
  135. package/header/Icons.d.ts +2 -2
  136. package/header/Icons.js +2 -7
  137. package/header/types.d.ts +7 -22
  138. package/heading/Heading.js +10 -32
  139. package/heading/Heading.test.js +71 -88
  140. package/heading/types.d.ts +7 -7
  141. package/icon/Icon.d.ts +4 -0
  142. package/icon/Icon.js +33 -0
  143. package/icon/Icon.stories.tsx +28 -0
  144. package/icon/types.d.ts +4 -0
  145. package/icon/types.js +5 -0
  146. package/image/Image.d.ts +4 -0
  147. package/image/Image.js +70 -0
  148. package/image/Image.stories.tsx +129 -0
  149. package/image/types.d.ts +72 -0
  150. package/image/types.js +5 -0
  151. package/inset/Inset.js +13 -21
  152. package/inset/Inset.stories.tsx +2 -1
  153. package/inset/types.d.ts +2 -2
  154. package/layout/ApplicationLayout.d.ts +5 -5
  155. package/layout/ApplicationLayout.js +30 -67
  156. package/layout/ApplicationLayout.stories.tsx +1 -1
  157. package/layout/Icons.d.ts +8 -5
  158. package/layout/Icons.js +51 -59
  159. package/layout/types.d.ts +5 -6
  160. package/link/Link.js +25 -46
  161. package/link/Link.stories.tsx +60 -0
  162. package/link/Link.test.js +24 -44
  163. package/link/types.d.ts +14 -14
  164. package/main.d.ts +10 -5
  165. package/main.js +47 -59
  166. package/nav-tabs/NavTabs.d.ts +7 -0
  167. package/{tabs-nav → nav-tabs}/NavTabs.js +25 -57
  168. package/{tabs-nav → nav-tabs}/NavTabs.stories.tsx +115 -9
  169. package/{tabs-nav → nav-tabs}/NavTabs.test.js +39 -45
  170. package/nav-tabs/NavTabsContext.d.ts +3 -0
  171. package/nav-tabs/NavTabsContext.js +8 -0
  172. package/nav-tabs/Tab.js +118 -0
  173. package/{tabs-nav → nav-tabs}/types.d.ts +14 -15
  174. package/nav-tabs/types.js +5 -0
  175. package/number-input/NumberInput.js +46 -36
  176. package/number-input/NumberInput.stories.tsx +42 -26
  177. package/number-input/NumberInput.test.js +860 -414
  178. package/number-input/NumberInputContext.d.ts +3 -4
  179. package/number-input/NumberInputContext.js +3 -14
  180. package/number-input/types.d.ts +17 -5
  181. package/package.json +37 -40
  182. package/paginator/Icons.d.ts +5 -0
  183. package/paginator/Icons.js +21 -47
  184. package/paginator/Paginator.js +22 -58
  185. package/paginator/Paginator.stories.tsx +24 -0
  186. package/paginator/Paginator.test.js +252 -225
  187. package/paginator/types.d.ts +3 -3
  188. package/paragraph/Paragraph.d.ts +3 -4
  189. package/paragraph/Paragraph.js +6 -22
  190. package/paragraph/Paragraph.stories.tsx +0 -17
  191. package/password-input/Icons.d.ts +6 -0
  192. package/password-input/Icons.js +35 -0
  193. package/password-input/PasswordInput.js +57 -126
  194. package/password-input/PasswordInput.stories.tsx +1 -33
  195. package/password-input/PasswordInput.test.js +158 -141
  196. package/password-input/types.d.ts +8 -7
  197. package/progress-bar/ProgressBar.d.ts +2 -2
  198. package/progress-bar/ProgressBar.js +23 -55
  199. package/progress-bar/{ProgressBar.stories.jsx → ProgressBar.stories.tsx} +36 -3
  200. package/progress-bar/ProgressBar.test.js +36 -53
  201. package/progress-bar/types.d.ts +4 -3
  202. package/quick-nav/QuickNav.js +4 -27
  203. package/quick-nav/QuickNav.stories.tsx +15 -1
  204. package/quick-nav/types.d.ts +10 -10
  205. package/radio-group/Radio.d.ts +1 -1
  206. package/radio-group/Radio.js +31 -63
  207. package/radio-group/RadioGroup.js +45 -93
  208. package/radio-group/RadioGroup.stories.tsx +131 -18
  209. package/radio-group/RadioGroup.test.js +505 -471
  210. package/radio-group/types.d.ts +8 -8
  211. package/resultset-table/Icons.d.ts +7 -0
  212. package/resultset-table/Icons.js +47 -0
  213. package/resultset-table/ResultsetTable.d.ts +7 -0
  214. package/resultset-table/ResultsetTable.js +170 -0
  215. package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +156 -30
  216. package/resultset-table/ResultsetTable.test.js +381 -0
  217. package/{resultsetTable → resultset-table}/types.d.ts +44 -11
  218. package/resultset-table/types.js +5 -0
  219. package/select/Icons.d.ts +7 -7
  220. package/select/Icons.js +1 -5
  221. package/select/Listbox.d.ts +1 -1
  222. package/select/Listbox.js +17 -72
  223. package/select/Option.js +27 -50
  224. package/select/Select.js +120 -175
  225. package/select/Select.stories.tsx +497 -153
  226. package/select/Select.test.js +1974 -1837
  227. package/select/types.d.ts +16 -17
  228. package/sidenav/Icons.d.ts +7 -0
  229. package/{text-input → sidenav}/Icons.js +10 -23
  230. package/sidenav/Sidenav.d.ts +2 -2
  231. package/sidenav/Sidenav.js +83 -154
  232. package/sidenav/Sidenav.stories.tsx +165 -63
  233. package/sidenav/Sidenav.test.js +3 -10
  234. package/{layout → sidenav}/SidenavContext.d.ts +1 -1
  235. package/{layout → sidenav}/SidenavContext.js +3 -9
  236. package/sidenav/types.d.ts +31 -28
  237. package/slider/Slider.d.ts +2 -2
  238. package/slider/Slider.js +77 -134
  239. package/slider/Slider.test.js +108 -104
  240. package/slider/types.d.ts +7 -3
  241. package/spinner/Spinner.js +31 -75
  242. package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +53 -27
  243. package/spinner/Spinner.test.js +26 -35
  244. package/spinner/types.d.ts +3 -3
  245. package/status-light/StatusLight.d.ts +4 -0
  246. package/status-light/StatusLight.js +51 -0
  247. package/status-light/StatusLight.stories.tsx +74 -0
  248. package/status-light/StatusLight.test.js +25 -0
  249. package/status-light/types.d.ts +17 -0
  250. package/status-light/types.js +5 -0
  251. package/switch/Switch.d.ts +3 -3
  252. package/switch/Switch.js +56 -103
  253. package/switch/Switch.stories.tsx +33 -34
  254. package/switch/Switch.test.js +52 -97
  255. package/switch/types.d.ts +8 -3
  256. package/table/DropdownTheme.js +62 -0
  257. package/table/Table.d.ts +6 -2
  258. package/table/Table.js +78 -35
  259. package/table/Table.stories.tsx +651 -0
  260. package/table/Table.test.js +95 -8
  261. package/table/types.d.ts +34 -6
  262. package/tabs/Tab.js +26 -45
  263. package/tabs/Tabs.js +62 -145
  264. package/tabs/Tabs.stories.tsx +46 -6
  265. package/tabs/Tabs.test.js +66 -123
  266. package/tabs/types.d.ts +19 -19
  267. package/tag/Tag.js +28 -60
  268. package/tag/Tag.stories.tsx +14 -1
  269. package/tag/Tag.test.js +20 -31
  270. package/tag/types.d.ts +7 -7
  271. package/text-input/Suggestion.js +35 -25
  272. package/text-input/Suggestions.d.ts +1 -1
  273. package/text-input/Suggestions.js +19 -67
  274. package/text-input/TextInput.js +223 -333
  275. package/text-input/TextInput.stories.tsx +139 -155
  276. package/text-input/TextInput.test.js +1389 -1404
  277. package/text-input/types.d.ts +25 -17
  278. package/textarea/Textarea.js +70 -113
  279. package/textarea/Textarea.stories.tsx +174 -0
  280. package/textarea/Textarea.test.js +152 -183
  281. package/textarea/types.d.ts +9 -5
  282. package/toggle-group/ToggleGroup.d.ts +2 -2
  283. package/toggle-group/ToggleGroup.js +92 -106
  284. package/toggle-group/ToggleGroup.stories.tsx +49 -4
  285. package/toggle-group/ToggleGroup.test.js +69 -88
  286. package/toggle-group/types.d.ts +26 -17
  287. package/typography/Typography.d.ts +2 -2
  288. package/typography/Typography.js +15 -123
  289. package/typography/Typography.stories.tsx +1 -1
  290. package/typography/types.d.ts +1 -1
  291. package/useTheme.d.ts +1147 -1
  292. package/useTheme.js +2 -9
  293. package/useTranslatedLabels.d.ts +84 -1
  294. package/useTranslatedLabels.js +1 -7
  295. package/utils/BaseTypography.d.ts +21 -0
  296. package/utils/BaseTypography.js +94 -0
  297. package/utils/FocusLock.d.ts +13 -0
  298. package/utils/FocusLock.js +124 -0
  299. package/wizard/Wizard.js +16 -51
  300. package/wizard/Wizard.stories.tsx +20 -0
  301. package/wizard/Wizard.test.js +54 -81
  302. package/wizard/types.d.ts +9 -10
  303. package/card/ice-cream.jpg +0 -0
  304. package/common/OpenSans.css +0 -81
  305. package/common/RequiredComponent.js +0 -32
  306. package/common/fonts/OpenSans-Bold.ttf +0 -0
  307. package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  308. package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  309. package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  310. package/common/fonts/OpenSans-Italic.ttf +0 -0
  311. package/common/fonts/OpenSans-Light.ttf +0 -0
  312. package/common/fonts/OpenSans-LightItalic.ttf +0 -0
  313. package/common/fonts/OpenSans-Regular.ttf +0 -0
  314. package/common/fonts/OpenSans-SemiBold.ttf +0 -0
  315. package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  316. package/number-input/numberInputContextTypes.d.ts +0 -19
  317. package/resultsetTable/ResultsetTable.d.ts +0 -4
  318. package/resultsetTable/ResultsetTable.js +0 -252
  319. package/resultsetTable/ResultsetTable.test.js +0 -348
  320. package/slider/Slider.stories.tsx +0 -183
  321. package/table/Table.stories.jsx +0 -277
  322. package/tabs-nav/NavTabs.d.ts +0 -8
  323. package/tabs-nav/Tab.js +0 -130
  324. package/text-input/Icons.d.ts +0 -8
  325. package/textarea/Textarea.stories.jsx +0 -157
  326. /package/{resultsetTable → action-icon}/types.js +0 -0
  327. /package/{tabs-nav → container}/types.js +0 -0
  328. /package/{number-input/numberInputContextTypes.js → contextual-menu/types.js} +0 -0
  329. /package/{tabs-nav → nav-tabs}/Tab.d.ts +0 -0
package/switch/Switch.js CHANGED
@@ -1,84 +1,60 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  var _typeof3 = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports["default"] = void 0;
11
-
12
9
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
13
-
14
10
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
-
16
11
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
-
18
12
  var _react = _interopRequireWildcard(require("react"));
19
-
20
13
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
-
22
14
  var _uuid = require("uuid");
23
-
24
- var _variables = require("../common/variables.js");
25
-
26
- var _utils = require("../common/utils.js");
27
-
15
+ var _variables = require("../common/variables");
16
+ var _utils = require("../common/utils");
28
17
  var _useTheme = _interopRequireDefault(require("../useTheme"));
29
-
30
18
  var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
31
-
32
- var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext"));
33
-
34
19
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
35
-
36
- 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); }
37
-
38
- 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; }
39
-
40
- var DxcSwitch = function DxcSwitch(_ref) {
20
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
21
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof3(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
22
+ var DxcSwitch = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
41
23
  var defaultChecked = _ref.defaultChecked,
42
- checked = _ref.checked,
43
- value = _ref.value,
44
- _ref$label = _ref.label,
45
- label = _ref$label === void 0 ? "" : _ref$label,
46
- _ref$labelPosition = _ref.labelPosition,
47
- labelPosition = _ref$labelPosition === void 0 ? "before" : _ref$labelPosition,
48
- _ref$name = _ref.name,
49
- name = _ref$name === void 0 ? "" : _ref$name,
50
- _ref$disabled = _ref.disabled,
51
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
52
- _ref$optional = _ref.optional,
53
- optional = _ref$optional === void 0 ? false : _ref$optional,
54
- onChange = _ref.onChange,
55
- margin = _ref.margin,
56
- _ref$size = _ref.size,
57
- size = _ref$size === void 0 ? "fitContent" : _ref$size,
58
- _ref$tabIndex = _ref.tabIndex,
59
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
60
-
24
+ checked = _ref.checked,
25
+ value = _ref.value,
26
+ _ref$label = _ref.label,
27
+ label = _ref$label === void 0 ? "" : _ref$label,
28
+ _ref$labelPosition = _ref.labelPosition,
29
+ labelPosition = _ref$labelPosition === void 0 ? "before" : _ref$labelPosition,
30
+ _ref$name = _ref.name,
31
+ name = _ref$name === void 0 ? "" : _ref$name,
32
+ _ref$disabled = _ref.disabled,
33
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
34
+ _ref$optional = _ref.optional,
35
+ optional = _ref$optional === void 0 ? false : _ref$optional,
36
+ onChange = _ref.onChange,
37
+ margin = _ref.margin,
38
+ _ref$size = _ref.size,
39
+ size = _ref$size === void 0 ? "fitContent" : _ref$size,
40
+ _ref$tabIndex = _ref.tabIndex,
41
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
61
42
  var _useState = (0, _react.useState)("switch-".concat((0, _uuid.v4)())),
62
- _useState2 = (0, _slicedToArray2["default"])(_useState, 1),
63
- switchId = _useState2[0];
64
-
43
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 1),
44
+ switchId = _useState2[0];
65
45
  var labelId = "label-".concat(switchId);
66
-
67
46
  var _useState3 = (0, _react.useState)(defaultChecked !== null && defaultChecked !== void 0 ? defaultChecked : false),
68
- _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
69
- innerChecked = _useState4[0],
70
- setInnerChecked = _useState4[1];
71
-
47
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
48
+ innerChecked = _useState4[0],
49
+ setInnerChecked = _useState4[1];
72
50
  var colorsTheme = (0, _useTheme["default"])();
73
51
  var translatedLabels = (0, _useTranslatedLabels["default"])();
74
- var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
75
52
  var refTrack = (0, _react.useRef)(null);
76
-
77
53
  var handleOnKeyDown = function handleOnKeyDown(event) {
78
54
  switch (event.key) {
79
55
  case "Enter":
80
56
  case " ":
81
- //Space
57
+ // Space
82
58
  event.preventDefault();
83
59
  refTrack.current.focus();
84
60
  var isChecked = !(checked !== null && checked !== void 0 ? checked : innerChecked);
@@ -87,14 +63,12 @@ var DxcSwitch = function DxcSwitch(_ref) {
87
63
  break;
88
64
  }
89
65
  };
90
-
91
66
  var handlerSwitchChange = function handlerSwitchChange(event) {
92
67
  checked !== null && checked !== void 0 ? checked : setInnerChecked(function (innerChecked) {
93
68
  return !innerChecked;
94
69
  });
95
70
  onChange === null || onChange === void 0 ? void 0 : onChange(checked ? !checked : !innerChecked);
96
71
  };
97
-
98
72
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
99
73
  theme: colorsTheme["switch"]
100
74
  }, /*#__PURE__*/_react["default"].createElement(SwitchContainer, {
@@ -102,12 +76,12 @@ var DxcSwitch = function DxcSwitch(_ref) {
102
76
  size: size,
103
77
  onKeyDown: handleOnKeyDown,
104
78
  disabled: disabled,
105
- onClick: !disabled ? handlerSwitchChange : undefined
79
+ onClick: !disabled ? handlerSwitchChange : undefined,
80
+ ref: ref
106
81
  }, labelPosition === "before" && label && /*#__PURE__*/_react["default"].createElement(LabelContainer, {
107
82
  id: labelId,
108
83
  labelPosition: labelPosition,
109
84
  disabled: disabled,
110
- backgroundType: backgroundType,
111
85
  label: label
112
86
  }, label, " ", optional && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, translatedLabels.formFields.optionalLabel)), /*#__PURE__*/_react["default"].createElement(ValueInput, {
113
87
  type: "checkbox",
@@ -119,7 +93,6 @@ var DxcSwitch = function DxcSwitch(_ref) {
119
93
  readOnly: true
120
94
  }), /*#__PURE__*/_react["default"].createElement(SwitchBase, null, /*#__PURE__*/_react["default"].createElement(SwitchTrack, {
121
95
  role: "switch",
122
- backgroundType: backgroundType,
123
96
  "aria-checked": checked !== null && checked !== void 0 ? checked : innerChecked,
124
97
  "aria-disabled": disabled,
125
98
  disabled: disabled,
@@ -130,11 +103,9 @@ var DxcSwitch = function DxcSwitch(_ref) {
130
103
  id: labelId,
131
104
  labelPosition: labelPosition,
132
105
  disabled: disabled,
133
- backgroundType: backgroundType,
134
106
  label: label
135
107
  }, optional && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, translatedLabels.formFields.optionalLabel), " ", label)));
136
- };
137
-
108
+ });
138
109
  var sizes = {
139
110
  small: "60px",
140
111
  medium: "240px",
@@ -142,61 +113,49 @@ var sizes = {
142
113
  fillParent: "100%",
143
114
  fitContent: "fit-content"
144
115
  };
145
-
146
116
  var calculateWidth = function calculateWidth(margin, size) {
147
117
  return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
148
118
  };
149
-
150
- var getDisabledColor = function getDisabledColor(props, element, subelement) {
119
+ var getDisabledColor = function getDisabledColor(theme, element, subElement) {
151
120
  switch (element) {
152
121
  case "track":
153
- switch (subelement) {
122
+ switch (subElement) {
154
123
  case "check":
155
- return props.backgroundType && props.backgroundType === "dark" ? props.theme.disabledCheckedTrackBackgroundColorOnDark : props.theme.disabledCheckedTrackBackgroundColor;
156
-
124
+ return theme.disabledCheckedTrackBackgroundColor;
157
125
  case "uncheck":
158
- return props.backgroundType && props.backgroundType === "dark" ? props.theme.disabledUncheckedTrackBackgroundColorOnDark : props.theme.disabledUncheckedTrackBackgroundColor;
126
+ return theme.disabledUncheckedTrackBackgroundColor;
159
127
  }
160
-
161
128
  case "thumb":
162
- switch (subelement) {
129
+ switch (subElement) {
163
130
  case "check":
164
- return props.backgroundType && props.backgroundType === "dark" ? props.theme.disabledCheckedThumbBackgroundColorOnDark : props.theme.disabledCheckedThumbBackgroundColor;
165
-
131
+ return theme.disabledCheckedThumbBackgroundColor;
166
132
  case "uncheck":
167
- return props.backgroundType && props.backgroundType === "dark" ? props.theme.disabledUncheckedThumbBackgroundColorOnDark : props.theme.disabledUncheckedThumbBackgroundColor;
133
+ return theme.disabledUncheckedThumbBackgroundColor;
168
134
  }
169
-
170
135
  case "label":
171
- return props.backgroundType && props.backgroundType === "dark" ? props.theme.disabledLabelFontColorOnDark : props.theme.disabledLabelFontColor;
136
+ return theme.disabledLabelFontColor;
172
137
  }
173
138
  };
174
-
175
- var getNotDisabledColor = function getNotDisabledColor(props, element, subelement) {
139
+ var getNotDisabledColor = function getNotDisabledColor(theme, element, subElement) {
176
140
  switch (element) {
177
141
  case "track":
178
- switch (subelement) {
142
+ switch (subElement) {
179
143
  case "check":
180
- return props.backgroundType && props.backgroundType === "dark" ? props.theme.checkedTrackBackgroundColorOnDark : props.theme.checkedTrackBackgroundColor;
181
-
144
+ return theme.checkedTrackBackgroundColor;
182
145
  case "uncheck":
183
- return props.backgroundType && props.backgroundType === "dark" ? props.theme.uncheckedTrackBackgroundColorOnDark : props.theme.uncheckedTrackBackgroundColor;
146
+ return theme.uncheckedTrackBackgroundColor;
184
147
  }
185
-
186
148
  case "thumb":
187
- switch (subelement) {
149
+ switch (subElement) {
188
150
  case "check":
189
- return props.backgroundType && props.backgroundType === "dark" ? props.theme.checkedThumbBackgroundColorOnDark : props.theme.checkedThumbBackgroundColor;
190
-
151
+ return theme.checkedThumbBackgroundColor;
191
152
  case "uncheck":
192
- return props.backgroundType && props.backgroundType === "dark" ? props.theme.uncheckedThumbBackgroundColorOnDark : props.theme.uncheckedThumbBackgroundColor;
153
+ return theme.uncheckedThumbBackgroundColor;
193
154
  }
194
-
195
155
  case "label":
196
- return props.backgroundType && props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
156
+ return theme.labelFontColor;
197
157
  }
198
158
  };
199
-
200
159
  var SwitchContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n align-items: center;\n width: ", ";\n height: 40px;\n cursor: ", ";\n\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
201
160
  return calculateWidth(props.margin, props.size);
202
161
  }, function (props) {
@@ -212,9 +171,8 @@ var SwitchContainer = _styledComponents["default"].div(_templateObject || (_temp
212
171
  }, function (props) {
213
172
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
214
173
  });
215
-
216
174
  var LabelContainer = _styledComponents["default"].span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n color: ", ";\n opacity: 1;\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n\n ", ";\n\n ", "\n"])), function (props) {
217
- return props.disabled ? getDisabledColor(props, "label") : getNotDisabledColor(props, "label");
175
+ return props.disabled ? getDisabledColor(props.theme, "label") : getNotDisabledColor(props.theme, "label");
218
176
  }, function (props) {
219
177
  return props.theme.labelFontFamily;
220
178
  }, function (props) {
@@ -228,34 +186,29 @@ var LabelContainer = _styledComponents["default"].span(_templateObject2 || (_tem
228
186
  }, function (props) {
229
187
  return props.labelPosition === "before" && "order: -1";
230
188
  });
231
-
232
189
  var SwitchBase = _styledComponents["default"].label(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: space-between;\n cursor: pointer;\n margin: 0px 12px;\n"])));
233
-
234
190
  var ValueInput = _styledComponents["default"].input(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n display: none;\n"])));
235
-
236
- var SwitchTrack = _styledComponents["default"].span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n border-radius: 15px;\n width: ", ";\n height: ", ";\n position: relative;\n cursor: ", ";\n\n &:focus-visible {\n outline: none;\n ::before {\n outline: ", ";\n outline-offset: 6px;\n }\n }\n\n /* Thumb element */\n ::before {\n content: \"\";\n transform: initial;\n position: absolute;\n width: ", ";\n height: ", ";\n border-radius: 50%;\n z-index: 1;\n box-shadow: 0px 2px 1px -1px rgb(0 0 0 / 20%), 0px 1px 1px 0px rgb(0 0 0 / 14%), 0px 1px 3px 0px rgb(0 0 0 / 12%);\n bottom: -6px;\n left: -4px;\n transform: translateX(0px);\n background-color: ", ";\n }\n\n /* Unchecked */\n background-color: ", ";\n\n /* Checked */\n &[aria-checked=\"true\"] {\n background-color: ", ";\n ::before {\n transform: translateX(", ");\n background-color: ", ";\n }\n }\n"])), function (props) {
191
+ var SwitchTrack = _styledComponents["default"].span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n border-radius: 15px;\n width: ", ";\n height: ", ";\n position: relative;\n cursor: ", ";\n\n &:focus-visible {\n outline: none;\n ::before {\n outline: ", ";\n outline-offset: 6px;\n }\n }\n\n /* Thumb element */\n ::before {\n content: \"\";\n transform: initial;\n position: absolute;\n width: ", ";\n height: ", ";\n border-radius: 50%;\n box-shadow: 0px 2px 1px -1px rgb(0 0 0 / 20%), 0px 1px 1px 0px rgb(0 0 0 / 14%), 0px 1px 3px 0px rgb(0 0 0 / 12%);\n bottom: -6px;\n left: -4px;\n transform: translateX(0px);\n background-color: ", ";\n }\n\n /* Unchecked */\n background-color: ", ";\n\n /* Checked */\n &[aria-checked=\"true\"] {\n background-color: ", ";\n ::before {\n transform: translateX(", ");\n background-color: ", ";\n }\n }\n"])), function (props) {
237
192
  return props.theme.trackWidth;
238
193
  }, function (props) {
239
194
  return props.theme.trackHeight;
240
195
  }, function (props) {
241
196
  return props.disabled ? "not-allowed" : "pointer";
242
197
  }, function (props) {
243
- return "".concat(props.backgroundType === "dark" ? props.theme.thumbFocusColorOnDark : props.theme.thumbFocusColor, " solid 2px");
198
+ return "".concat(props.theme.thumbFocusColor, " solid 2px");
244
199
  }, function (props) {
245
200
  return props.theme.thumbWidth;
246
201
  }, function (props) {
247
202
  return props.theme.thumbHeight;
248
203
  }, function (props) {
249
- return props.disabled ? getDisabledColor(props, "thumb", "uncheck") : getNotDisabledColor(props, "thumb", "uncheck");
204
+ return props.disabled ? getDisabledColor(props.theme, "thumb", "uncheck") : getNotDisabledColor(props.theme, "thumb", "uncheck");
250
205
  }, function (props) {
251
- return props.disabled ? getDisabledColor(props, "track", "uncheck") : getNotDisabledColor(props, "track", "uncheck");
206
+ return props.disabled ? getDisabledColor(props.theme, "track", "uncheck") : getNotDisabledColor(props.theme, "track", "uncheck");
252
207
  }, function (props) {
253
- return props.disabled ? getDisabledColor(props, "track", "check") : getNotDisabledColor(props, "track", "check");
208
+ return props.disabled ? getDisabledColor(props.theme, "track", "check") : getNotDisabledColor(props.theme, "track", "check");
254
209
  }, function (props) {
255
210
  return props.theme.thumbShift;
256
211
  }, function (props) {
257
- return props.disabled ? getDisabledColor(props, "thumb", "check") : getNotDisabledColor(props, "thumb", "check");
212
+ return props.disabled ? getDisabledColor(props.theme, "thumb", "check") : getNotDisabledColor(props.theme, "thumb", "check");
258
213
  });
259
-
260
- var _default = DxcSwitch;
261
- exports["default"] = _default;
214
+ var _default = exports["default"] = DxcSwitch;
@@ -1,15 +1,21 @@
1
1
  import React from "react";
2
2
  import DxcSwitch from "./Switch";
3
- import { BackgroundColorProvider } from "../BackgroundColorContext";
4
3
  import Title from "../../.storybook/components/Title";
5
4
  import ExampleContainer from "../../.storybook/components/ExampleContainer";
6
- import DarkContainer from "../../.storybook/components/DarkSection";
5
+ import { HalstackProvider } from "../HalstackContext";
7
6
 
8
7
  export default {
9
8
  title: "Switch",
10
9
  component: DxcSwitch,
11
10
  };
12
11
 
12
+ const opinionatedTheme = {
13
+ switch: {
14
+ checkedBaseColor: "#5f249f",
15
+ fontColor: "#000000",
16
+ },
17
+ };
18
+
13
19
  export const Chromatic = () => (
14
20
  <>
15
21
  <ExampleContainer>
@@ -44,38 +50,6 @@ export const Chromatic = () => (
44
50
  <Title title="Disabled checked" theme="light" level={4} />
45
51
  <DxcSwitch label="Switch" disabled defaultChecked labelPosition="after" />
46
52
  </ExampleContainer>
47
- <BackgroundColorProvider color="#333333">
48
- <DarkContainer>
49
- <ExampleContainer>
50
- <Title title="With label" theme="dark" level={4} />
51
- <DxcSwitch label="Switch" />
52
- </ExampleContainer>
53
- <ExampleContainer pseudoState="pseudo-focus-visible">
54
- <Title title="Focused" theme="dark" level={4} />
55
- <DxcSwitch label="Switch" labelPosition="after" />
56
- </ExampleContainer>
57
- <ExampleContainer>
58
- <Title title="Checked" theme="dark" level={4} />
59
- <DxcSwitch label="Switch" defaultChecked />
60
- </ExampleContainer>
61
- <ExampleContainer>
62
- <Title title="Optional" theme="dark" level={4} />
63
- <DxcSwitch label="Switch" optional />
64
- </ExampleContainer>
65
- <ExampleContainer>
66
- <Title title="Disabled" theme="dark" level={4} />
67
- <DxcSwitch label="Switch" disabled />
68
- </ExampleContainer>
69
- <ExampleContainer>
70
- <Title title="Disabled optional" theme="dark" level={4} />
71
- <DxcSwitch label="Switch" disabled optional labelPosition="after" />
72
- </ExampleContainer>
73
- <ExampleContainer>
74
- <Title title="Disabled checked" theme="dark" level={4} />
75
- <DxcSwitch label="Switch" disabled defaultChecked labelPosition="after" />
76
- </ExampleContainer>
77
- </DarkContainer>
78
- </BackgroundColorProvider>
79
53
  <Title title="Margins" theme="light" level={2} />
80
54
  <ExampleContainer>
81
55
  <Title title="Xxsmall margin" theme="light" level={4} />
@@ -134,5 +108,30 @@ export const Chromatic = () => (
134
108
  <Title title="FitContent size" theme="light" level={4} />
135
109
  <DxcSwitch label="FitContent" size="fitContent" />
136
110
  </ExampleContainer>
111
+ <Title title="Opinionated theme" theme="light" level={2} />
112
+ <ExampleContainer>
113
+ <Title title="Checked" theme="light" level={4} />
114
+ <HalstackProvider theme={opinionatedTheme}>
115
+ <DxcSwitch label="Switch" defaultChecked />
116
+ </HalstackProvider>
117
+ </ExampleContainer>
118
+ <ExampleContainer>
119
+ <Title title="Default" theme="light" level={4} />
120
+ <HalstackProvider theme={opinionatedTheme}>
121
+ <DxcSwitch label="Switch" />
122
+ </HalstackProvider>
123
+ </ExampleContainer>
124
+ <ExampleContainer>
125
+ <Title title="Disabled" theme="light" level={4} />
126
+ <HalstackProvider theme={opinionatedTheme}>
127
+ <DxcSwitch label="Switch" disabled />
128
+ </HalstackProvider>
129
+ </ExampleContainer>
130
+ <ExampleContainer>
131
+ <Title title="Disabled checked" theme="light" level={4} />
132
+ <HalstackProvider theme={opinionatedTheme}>
133
+ <DxcSwitch label="Switch" disabled defaultChecked />
134
+ </HalstackProvider>
135
+ </ExampleContainer>
137
136
  </>
138
137
  );
@@ -1,186 +1,143 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  var _react = _interopRequireDefault(require("react"));
6
-
7
5
  var _react2 = require("@testing-library/react");
8
-
9
- var _Switch = _interopRequireDefault(require("./Switch"));
10
-
6
+ var _Switch = _interopRequireDefault(require("./Switch.tsx"));
11
7
  describe("Switch component tests", function () {
12
8
  test("Switch renders with correct text", function () {
13
9
  var onChange = jest.fn(function (returnedValue) {
14
10
  expect(returnedValue).toBe(true);
15
11
  });
16
-
17
12
  var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Switch["default"], {
18
- label: "SwitchComponent",
19
- checked: false,
20
- onChange: onChange
21
- })),
22
- getByText = _render.getByText;
23
-
13
+ label: "SwitchComponent",
14
+ checked: false,
15
+ onChange: onChange
16
+ })),
17
+ getByText = _render.getByText;
24
18
  expect(getByText("SwitchComponent")).toBeTruthy();
25
19
  });
26
20
  test("Calls correct function on click", function () {
27
21
  var onChange = jest.fn();
28
-
29
22
  var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Switch["default"], {
30
- label: "SwitchComponent",
31
- checked: false,
32
- onChange: onChange
33
- })),
34
- getByText = _render2.getByText;
35
-
23
+ label: "SwitchComponent",
24
+ checked: false,
25
+ onChange: onChange
26
+ })),
27
+ getByText = _render2.getByText;
36
28
  _react2.fireEvent.click(getByText("SwitchComponent"));
37
-
38
29
  expect(onChange).toHaveBeenCalled();
39
30
  });
40
31
  test("Calls correct function on key down", function () {
41
32
  var onChange = jest.fn();
42
-
43
33
  var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Switch["default"], {
44
- label: "SwitchComponent",
45
- checked: false,
46
- onChange: onChange
47
- })),
48
- getByText = _render3.getByText;
49
-
34
+ label: "SwitchComponent",
35
+ checked: false,
36
+ onChange: onChange
37
+ })),
38
+ getByText = _render3.getByText;
50
39
  _react2.fireEvent.focus(getByText("SwitchComponent"));
51
-
52
40
  _react2.fireEvent.keyDown(getByText("SwitchComponent"), {
53
41
  key: "Enter"
54
42
  });
55
-
56
43
  expect(onChange).toHaveBeenCalled();
57
-
58
44
  _react2.fireEvent.keyDown(getByText("SwitchComponent"), {
59
45
  key: " "
60
46
  });
61
-
62
47
  expect(onChange).toHaveBeenCalled();
63
48
  });
64
49
  test("Everytime the user clicks the component the onchange function is called with the correct value CONTROLLED COMPONENT", function () {
65
50
  var onChange = jest.fn();
66
-
67
51
  var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Switch["default"], {
68
- label: "SwitchComponent",
69
- checked: false,
70
- onChange: onChange
71
- })),
72
- getByText = _render4.getByText;
73
-
52
+ label: "SwitchComponent",
53
+ checked: false,
54
+ onChange: onChange
55
+ })),
56
+ getByText = _render4.getByText;
74
57
  _react2.fireEvent.click(getByText("SwitchComponent"));
75
-
76
58
  _react2.fireEvent.click(getByText("SwitchComponent"));
77
-
78
59
  expect(onChange.mock.calls[0][0]).toBe(true);
79
60
  expect(onChange.mock.calls[1][0]).toBe(true);
80
61
  });
81
62
  test("Everytime the user use enter in the component, the onchange function is called with the correct value CONTROLLED COMPONENT", function () {
82
63
  var onChange = jest.fn();
83
-
84
64
  var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Switch["default"], {
85
- label: "SwitchComponent",
86
- checked: false,
87
- onChange: onChange
88
- })),
89
- getByText = _render5.getByText;
90
-
65
+ label: "SwitchComponent",
66
+ checked: false,
67
+ onChange: onChange
68
+ })),
69
+ getByText = _render5.getByText;
91
70
  _react2.fireEvent.focus(getByText("SwitchComponent"));
92
-
93
71
  _react2.fireEvent.keyDown(getByText("SwitchComponent"), {
94
72
  key: "Enter"
95
73
  });
96
-
97
74
  _react2.fireEvent.keyDown(getByText("SwitchComponent"), {
98
75
  key: "Enter"
99
76
  });
100
-
101
77
  expect(onChange.mock.calls[0][0]).toBe(true);
102
78
  expect(onChange.mock.calls[1][0]).toBe(true);
103
79
  });
104
80
  test("Everytime the user use space in the component, the onchange function is called with the correct value CONTROLLED COMPONENT", function () {
105
81
  var onChange = jest.fn();
106
-
107
82
  var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Switch["default"], {
108
- label: "SwitchComponent",
109
- checked: false,
110
- onChange: onChange
111
- })),
112
- getByText = _render6.getByText;
113
-
83
+ label: "SwitchComponent",
84
+ checked: false,
85
+ onChange: onChange
86
+ })),
87
+ getByText = _render6.getByText;
114
88
  _react2.fireEvent.focus(getByText("SwitchComponent"));
115
-
116
89
  _react2.fireEvent.keyDown(getByText("SwitchComponent"), {
117
90
  key: " "
118
91
  });
119
-
120
92
  _react2.fireEvent.keyDown(getByText("SwitchComponent"), {
121
93
  key: " "
122
94
  });
123
-
124
95
  expect(onChange.mock.calls[0][0]).toBe(true);
125
96
  expect(onChange.mock.calls[1][0]).toBe(true);
126
97
  });
127
98
  test("Everytime the user clicks the component the onchange function is called with the correct value UNCONTROLLED COMPONENT", function () {
128
99
  var onChange = jest.fn();
129
-
130
100
  var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Switch["default"], {
131
- label: "SwitchComponent",
132
- onChange: onChange
133
- })),
134
- getByText = _render7.getByText;
135
-
101
+ label: "SwitchComponent",
102
+ onChange: onChange
103
+ })),
104
+ getByText = _render7.getByText;
136
105
  _react2.fireEvent.click(getByText("SwitchComponent"));
137
-
138
106
  _react2.fireEvent.click(getByText("SwitchComponent"));
139
-
140
107
  expect(onChange.mock.calls[0][0]).toBe(true);
141
108
  expect(onChange.mock.calls[1][0]).toBe(false);
142
109
  });
143
110
  test("Everytime the user use enter in the component, the onchange function is called with the correct value UNCONTROLLED COMPONENT", function () {
144
111
  var onChange = jest.fn();
145
-
146
112
  var _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Switch["default"], {
147
- label: "SwitchComponent",
148
- onChange: onChange
149
- })),
150
- getByText = _render8.getByText;
151
-
113
+ label: "SwitchComponent",
114
+ onChange: onChange
115
+ })),
116
+ getByText = _render8.getByText;
152
117
  _react2.fireEvent.focus(getByText("SwitchComponent"));
153
-
154
118
  _react2.fireEvent.keyDown(getByText("SwitchComponent"), {
155
119
  key: "Enter"
156
120
  });
157
-
158
121
  _react2.fireEvent.keyDown(getByText("SwitchComponent"), {
159
122
  key: "Enter"
160
123
  });
161
-
162
124
  expect(onChange.mock.calls[0][0]).toBe(true);
163
125
  expect(onChange.mock.calls[1][0]).toBe(false);
164
126
  });
165
127
  test("Everytime the user use space in the component, the onchange function is called with the correct value UNCONTROLLED COMPONENT", function () {
166
128
  var onChange = jest.fn();
167
-
168
129
  var _render9 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Switch["default"], {
169
- label: "SwitchComponent",
170
- onChange: onChange
171
- })),
172
- getByText = _render9.getByText;
173
-
130
+ label: "SwitchComponent",
131
+ onChange: onChange
132
+ })),
133
+ getByText = _render9.getByText;
174
134
  _react2.fireEvent.focus(getByText("SwitchComponent"));
175
-
176
135
  _react2.fireEvent.keyDown(getByText("SwitchComponent"), {
177
136
  key: " "
178
137
  });
179
-
180
138
  _react2.fireEvent.keyDown(getByText("SwitchComponent"), {
181
139
  key: " "
182
140
  });
183
-
184
141
  expect(onChange.mock.calls[0][0]).toBe(true);
185
142
  expect(onChange.mock.calls[1][0]).toBe(false);
186
143
  });
@@ -198,11 +155,10 @@ describe("Switch component tests", function () {
198
155
  });
199
156
  test("Renders with correct aria attributes", function () {
200
157
  var _render10 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Switch["default"], {
201
- label: "Default label"
202
- })),
203
- getByText = _render10.getByText,
204
- getByRole = _render10.getByRole;
205
-
158
+ label: "Default label"
159
+ })),
160
+ getByText = _render10.getByText,
161
+ getByRole = _render10.getByRole;
206
162
  var switchEl = getByRole("switch");
207
163
  var label = getByText("Default label");
208
164
  expect(switchEl.getAttribute("aria-labelledby")).toBe(label.id);
@@ -210,12 +166,11 @@ describe("Switch component tests", function () {
210
166
  });
211
167
  test("Renders disabled switch correctly", function () {
212
168
  var _render11 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Switch["default"], {
213
- label: "Default label",
214
- disabled: true
215
- })),
216
- getByText = _render11.getByText,
217
- getByRole = _render11.getByRole;
218
-
169
+ label: "Default label",
170
+ disabled: true
171
+ })),
172
+ getByText = _render11.getByText,
173
+ getByRole = _render11.getByRole;
219
174
  var switchEl = getByRole("switch");
220
175
  var label = getByText("Default label");
221
176
  expect(switchEl.getAttribute("aria-labelledby")).toBe(label.id);