@dxc-technology/halstack-react 0.0.0-22220e6 → 0.0.0-2289057

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 (342) hide show
  1. package/BackgroundColorContext.d.ts +1 -10
  2. package/BackgroundColorContext.js +5 -22
  3. package/HalstackContext.d.ts +1249 -0
  4. package/HalstackContext.js +310 -0
  5. package/README.md +47 -0
  6. package/accordion/Accordion.d.ts +1 -1
  7. package/accordion/Accordion.js +116 -181
  8. package/accordion/Accordion.stories.tsx +103 -127
  9. package/accordion/Accordion.test.js +32 -33
  10. package/accordion/types.d.ts +9 -16
  11. package/accordion-group/AccordionGroup.d.ts +5 -4
  12. package/accordion-group/AccordionGroup.js +38 -107
  13. package/accordion-group/AccordionGroup.stories.tsx +95 -68
  14. package/accordion-group/AccordionGroup.test.js +55 -90
  15. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  16. package/accordion-group/AccordionGroupAccordion.js +31 -0
  17. package/accordion-group/types.d.ts +15 -16
  18. package/action-icon/ActionIcon.d.ts +4 -0
  19. package/action-icon/ActionIcon.js +47 -0
  20. package/action-icon/ActionIcon.stories.tsx +41 -0
  21. package/action-icon/ActionIcon.test.js +64 -0
  22. package/action-icon/types.d.ts +26 -0
  23. package/alert/Alert.js +23 -59
  24. package/alert/Alert.stories.tsx +28 -0
  25. package/alert/Alert.test.js +29 -46
  26. package/alert/types.d.ts +5 -5
  27. package/badge/Badge.d.ts +1 -1
  28. package/badge/Badge.js +141 -41
  29. package/badge/Badge.stories.tsx +210 -0
  30. package/badge/Badge.test.js +30 -0
  31. package/badge/types.d.ts +52 -2
  32. package/bleed/Bleed.js +14 -55
  33. package/bleed/Bleed.stories.tsx +95 -95
  34. package/bleed/types.d.ts +26 -2
  35. package/box/Box.d.ts +1 -1
  36. package/box/Box.js +30 -81
  37. package/box/Box.stories.tsx +38 -51
  38. package/box/Box.test.js +2 -7
  39. package/box/types.d.ts +3 -14
  40. package/bulleted-list/BulletedList.d.ts +7 -0
  41. package/bulleted-list/BulletedList.js +89 -0
  42. package/bulleted-list/BulletedList.stories.tsx +115 -0
  43. package/bulleted-list/types.d.ts +38 -0
  44. package/button/Button.d.ts +1 -1
  45. package/button/Button.js +62 -113
  46. package/button/Button.stories.tsx +160 -90
  47. package/button/Button.test.js +20 -17
  48. package/button/types.d.ts +12 -8
  49. package/card/Card.d.ts +1 -1
  50. package/card/Card.js +58 -102
  51. package/card/Card.stories.tsx +12 -42
  52. package/card/Card.test.js +11 -22
  53. package/card/types.d.ts +6 -11
  54. package/checkbox/Checkbox.d.ts +2 -2
  55. package/checkbox/Checkbox.js +144 -182
  56. package/checkbox/Checkbox.stories.tsx +166 -136
  57. package/checkbox/Checkbox.test.js +163 -29
  58. package/checkbox/types.d.ts +18 -6
  59. package/chip/Chip.js +39 -79
  60. package/chip/Chip.stories.tsx +121 -26
  61. package/chip/Chip.test.js +16 -31
  62. package/chip/types.d.ts +4 -4
  63. package/common/OpenSans.css +68 -80
  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 +1030 -1136
  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 +171 -306
  84. package/date-input/DateInput.stories.tsx +203 -56
  85. package/date-input/DateInput.test.js +708 -369
  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 +86 -22
  93. package/dialog/Dialog.d.ts +1 -1
  94. package/dialog/Dialog.js +68 -130
  95. package/dialog/Dialog.stories.tsx +320 -167
  96. package/dialog/Dialog.test.js +287 -20
  97. package/dialog/types.d.ts +18 -25
  98. package/dropdown/Dropdown.d.ts +1 -1
  99. package/dropdown/Dropdown.js +248 -307
  100. package/dropdown/Dropdown.stories.tsx +245 -56
  101. package/dropdown/Dropdown.test.js +575 -165
  102. package/dropdown/DropdownMenu.d.ts +4 -0
  103. package/dropdown/DropdownMenu.js +63 -0
  104. package/dropdown/DropdownMenuItem.d.ts +4 -0
  105. package/dropdown/DropdownMenuItem.js +67 -0
  106. package/dropdown/types.d.ts +32 -14
  107. package/file-input/FileInput.d.ts +2 -2
  108. package/file-input/FileInput.js +246 -357
  109. package/file-input/FileInput.stories.tsx +123 -12
  110. package/file-input/FileInput.test.js +369 -367
  111. package/file-input/FileItem.d.ts +4 -14
  112. package/file-input/FileItem.js +50 -99
  113. package/file-input/types.d.ts +25 -8
  114. package/flex/Flex.d.ts +4 -0
  115. package/flex/Flex.js +57 -0
  116. package/flex/Flex.stories.tsx +112 -0
  117. package/flex/types.d.ts +97 -0
  118. package/footer/Footer.d.ts +1 -1
  119. package/footer/Footer.js +70 -190
  120. package/footer/Footer.stories.tsx +60 -19
  121. package/footer/Footer.test.js +33 -57
  122. package/footer/Icons.d.ts +3 -2
  123. package/footer/Icons.js +67 -8
  124. package/footer/types.d.ts +25 -26
  125. package/grid/Grid.d.ts +7 -0
  126. package/grid/Grid.js +76 -0
  127. package/grid/Grid.stories.tsx +219 -0
  128. package/grid/types.d.ts +115 -0
  129. package/header/Header.d.ts +4 -3
  130. package/header/Header.js +99 -203
  131. package/header/Header.stories.tsx +152 -63
  132. package/header/Header.test.js +31 -28
  133. package/header/Icons.d.ts +2 -2
  134. package/header/Icons.js +4 -9
  135. package/header/types.d.ts +5 -19
  136. package/heading/Heading.js +10 -32
  137. package/heading/Heading.test.js +71 -88
  138. package/heading/types.d.ts +7 -7
  139. package/image/Image.d.ts +4 -0
  140. package/image/Image.js +70 -0
  141. package/image/Image.stories.tsx +129 -0
  142. package/image/types.d.ts +72 -0
  143. package/image/types.js +5 -0
  144. package/inset/Inset.js +14 -55
  145. package/inset/Inset.stories.tsx +37 -36
  146. package/inset/types.d.ts +26 -2
  147. package/layout/ApplicationLayout.d.ts +16 -6
  148. package/layout/ApplicationLayout.js +84 -181
  149. package/layout/ApplicationLayout.stories.tsx +85 -94
  150. package/layout/Icons.d.ts +8 -0
  151. package/layout/Icons.js +51 -48
  152. package/layout/SidenavContext.d.ts +5 -0
  153. package/layout/SidenavContext.js +13 -0
  154. package/layout/types.d.ts +19 -35
  155. package/link/Link.d.ts +3 -2
  156. package/link/Link.js +61 -99
  157. package/link/Link.stories.tsx +155 -53
  158. package/link/Link.test.js +25 -53
  159. package/link/types.d.ts +15 -31
  160. package/main.d.ts +15 -13
  161. package/main.js +72 -101
  162. package/nav-tabs/NavTabs.d.ts +8 -0
  163. package/nav-tabs/NavTabs.js +93 -0
  164. package/nav-tabs/NavTabs.stories.tsx +276 -0
  165. package/nav-tabs/NavTabs.test.js +76 -0
  166. package/nav-tabs/Tab.d.ts +4 -0
  167. package/nav-tabs/Tab.js +118 -0
  168. package/nav-tabs/types.d.ts +52 -0
  169. package/nav-tabs/types.js +5 -0
  170. package/number-input/NumberInput.d.ts +7 -0
  171. package/number-input/NumberInput.js +48 -45
  172. package/number-input/NumberInput.stories.tsx +44 -28
  173. package/number-input/NumberInput.test.js +862 -381
  174. package/number-input/types.d.ts +28 -15
  175. package/package.json +46 -47
  176. package/paginator/Icons.d.ts +5 -0
  177. package/paginator/Icons.js +21 -47
  178. package/paginator/Paginator.js +34 -91
  179. package/paginator/Paginator.stories.tsx +24 -0
  180. package/paginator/Paginator.test.js +280 -211
  181. package/paginator/types.d.ts +3 -3
  182. package/paragraph/Paragraph.d.ts +5 -0
  183. package/paragraph/Paragraph.js +22 -0
  184. package/paragraph/Paragraph.stories.tsx +27 -0
  185. package/password-input/Icons.d.ts +6 -0
  186. package/password-input/Icons.js +35 -0
  187. package/password-input/PasswordInput.js +57 -123
  188. package/password-input/PasswordInput.stories.tsx +1 -33
  189. package/password-input/PasswordInput.test.js +162 -147
  190. package/password-input/types.d.ts +21 -17
  191. package/progress-bar/ProgressBar.js +65 -91
  192. package/progress-bar/ProgressBar.stories.tsx +93 -0
  193. package/progress-bar/ProgressBar.test.js +72 -44
  194. package/progress-bar/types.d.ts +3 -3
  195. package/quick-nav/QuickNav.d.ts +4 -0
  196. package/quick-nav/QuickNav.js +94 -0
  197. package/quick-nav/QuickNav.stories.tsx +356 -0
  198. package/quick-nav/types.d.ts +21 -0
  199. package/quick-nav/types.js +5 -0
  200. package/radio-group/Radio.d.ts +1 -1
  201. package/radio-group/Radio.js +59 -76
  202. package/radio-group/RadioGroup.js +72 -116
  203. package/radio-group/RadioGroup.stories.tsx +135 -17
  204. package/radio-group/RadioGroup.test.js +529 -467
  205. package/radio-group/types.d.ts +86 -9
  206. package/resultset-table/Icons.d.ts +7 -0
  207. package/resultset-table/Icons.js +47 -0
  208. package/resultset-table/ResultsetTable.d.ts +7 -0
  209. package/resultset-table/ResultsetTable.js +166 -0
  210. package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +152 -30
  211. package/resultset-table/ResultsetTable.test.js +371 -0
  212. package/{resultsetTable → resultset-table}/types.d.ts +13 -7
  213. package/resultset-table/types.js +5 -0
  214. package/select/Icons.d.ts +7 -7
  215. package/select/Icons.js +1 -5
  216. package/select/Listbox.d.ts +4 -0
  217. package/select/Listbox.js +143 -0
  218. package/select/Option.js +27 -50
  219. package/select/Select.js +212 -362
  220. package/select/Select.stories.tsx +534 -145
  221. package/select/Select.test.js +2009 -1539
  222. package/select/types.d.ts +53 -27
  223. package/sidenav/Icons.d.ts +7 -0
  224. package/sidenav/Icons.js +47 -0
  225. package/sidenav/Sidenav.d.ts +6 -5
  226. package/sidenav/Sidenav.js +131 -71
  227. package/sidenav/Sidenav.stories.tsx +251 -151
  228. package/sidenav/Sidenav.test.js +26 -45
  229. package/sidenav/types.d.ts +52 -26
  230. package/slider/Slider.d.ts +2 -2
  231. package/slider/Slider.js +148 -180
  232. package/slider/Slider.test.js +198 -73
  233. package/slider/types.d.ts +11 -3
  234. package/spinner/Spinner.js +31 -75
  235. package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +53 -27
  236. package/spinner/Spinner.test.js +26 -35
  237. package/spinner/types.d.ts +3 -3
  238. package/status-light/StatusLight.d.ts +4 -0
  239. package/status-light/StatusLight.js +51 -0
  240. package/status-light/StatusLight.stories.tsx +74 -0
  241. package/status-light/StatusLight.test.js +25 -0
  242. package/status-light/types.d.ts +17 -0
  243. package/status-light/types.js +5 -0
  244. package/switch/Switch.d.ts +2 -2
  245. package/switch/Switch.js +149 -114
  246. package/switch/Switch.stories.tsx +44 -67
  247. package/switch/Switch.test.js +146 -39
  248. package/switch/types.d.ts +13 -5
  249. package/table/DropdownTheme.js +62 -0
  250. package/table/Table.d.ts +6 -2
  251. package/table/Table.js +87 -35
  252. package/table/Table.stories.tsx +658 -0
  253. package/table/Table.test.js +95 -8
  254. package/table/types.d.ts +48 -6
  255. package/tabs/Tab.d.ts +4 -0
  256. package/tabs/Tab.js +116 -0
  257. package/tabs/Tabs.d.ts +1 -1
  258. package/tabs/Tabs.js +316 -145
  259. package/tabs/Tabs.stories.tsx +120 -14
  260. package/tabs/Tabs.test.js +238 -67
  261. package/tabs/types.d.ts +29 -15
  262. package/tag/Tag.js +41 -78
  263. package/tag/Tag.stories.tsx +25 -8
  264. package/tag/Tag.test.js +20 -31
  265. package/tag/types.d.ts +7 -7
  266. package/text-input/Icons.d.ts +8 -0
  267. package/text-input/Icons.js +56 -0
  268. package/text-input/Suggestion.d.ts +4 -0
  269. package/text-input/Suggestion.js +67 -0
  270. package/text-input/Suggestions.d.ts +4 -0
  271. package/text-input/Suggestions.js +84 -0
  272. package/text-input/TextInput.js +325 -556
  273. package/text-input/TextInput.stories.tsx +272 -281
  274. package/text-input/TextInput.test.js +1442 -1377
  275. package/text-input/types.d.ts +70 -24
  276. package/textarea/Textarea.js +82 -134
  277. package/textarea/Textarea.stories.tsx +174 -0
  278. package/textarea/Textarea.test.js +168 -198
  279. package/textarea/types.d.ts +27 -16
  280. package/toggle-group/ToggleGroup.d.ts +2 -2
  281. package/toggle-group/ToggleGroup.js +92 -105
  282. package/toggle-group/ToggleGroup.stories.tsx +53 -8
  283. package/toggle-group/ToggleGroup.test.js +78 -66
  284. package/toggle-group/types.d.ts +34 -17
  285. package/typography/Typography.d.ts +4 -0
  286. package/typography/Typography.js +23 -0
  287. package/typography/Typography.stories.tsx +198 -0
  288. package/typography/types.d.ts +18 -0
  289. package/typography/types.js +5 -0
  290. package/useTheme.d.ts +1147 -1
  291. package/useTheme.js +4 -11
  292. package/useTranslatedLabels.d.ts +85 -0
  293. package/useTranslatedLabels.js +14 -0
  294. package/utils/BaseTypography.d.ts +21 -0
  295. package/utils/BaseTypography.js +94 -0
  296. package/utils/FocusLock.d.ts +13 -0
  297. package/utils/FocusLock.js +124 -0
  298. package/wizard/Wizard.d.ts +1 -1
  299. package/wizard/Wizard.js +70 -101
  300. package/wizard/Wizard.stories.tsx +48 -19
  301. package/wizard/Wizard.test.js +73 -87
  302. package/wizard/types.d.ts +12 -8
  303. package/ThemeContext.d.ts +0 -10
  304. package/ThemeContext.js +0 -243
  305. package/card/ice-cream.jpg +0 -0
  306. package/common/RequiredComponent.js +0 -32
  307. package/list/List.d.ts +0 -4
  308. package/list/List.js +0 -47
  309. package/list/List.stories.tsx +0 -95
  310. package/list/types.d.ts +0 -7
  311. package/number-input/NumberInputContext.d.ts +0 -4
  312. package/number-input/NumberInputContext.js +0 -19
  313. package/number-input/numberInputContextTypes.d.ts +0 -19
  314. package/progress-bar/ProgressBar.stories.jsx +0 -58
  315. package/radio/Radio.d.ts +0 -4
  316. package/radio/Radio.js +0 -174
  317. package/radio/Radio.stories.tsx +0 -192
  318. package/radio/Radio.test.js +0 -71
  319. package/radio/types.d.ts +0 -54
  320. package/resultsetTable/ResultsetTable.d.ts +0 -4
  321. package/resultsetTable/ResultsetTable.js +0 -254
  322. package/resultsetTable/ResultsetTable.test.js +0 -306
  323. package/row/Row.d.ts +0 -3
  324. package/row/Row.js +0 -127
  325. package/row/Row.stories.tsx +0 -237
  326. package/row/types.d.ts +0 -10
  327. package/slider/Slider.stories.tsx +0 -177
  328. package/stack/Stack.d.ts +0 -3
  329. package/stack/Stack.js +0 -97
  330. package/stack/Stack.stories.tsx +0 -164
  331. package/stack/types.d.ts +0 -9
  332. package/table/Table.stories.jsx +0 -277
  333. package/text/Text.d.ts +0 -7
  334. package/text/Text.js +0 -30
  335. package/text/Text.stories.tsx +0 -19
  336. package/textarea/Textarea.stories.jsx +0 -157
  337. /package/{list → action-icon}/types.js +0 -0
  338. /package/{radio → bulleted-list}/types.js +0 -0
  339. /package/{resultsetTable → container}/types.js +0 -0
  340. /package/{row → contextual-menu}/types.js +0 -0
  341. /package/{stack → flex}/types.js +0 -0
  342. /package/{number-input/numberInputContextTypes.js → grid/types.js} +0 -0
@@ -1,73 +1,180 @@
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
- test("Everytime the user clicks the component the onchange function is called with the correct value CONTROLLED COMPONENT", function () {
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;
39
+ _react2.fireEvent.focus(getByText("SwitchComponent"));
40
+ _react2.fireEvent.keyDown(getByText("SwitchComponent"), {
41
+ key: "Enter"
42
+ });
43
+ expect(onChange).toHaveBeenCalled();
44
+ _react2.fireEvent.keyDown(getByText("SwitchComponent"), {
45
+ key: " "
46
+ });
47
+ expect(onChange).toHaveBeenCalled();
48
+ });
49
+ test("Everytime the user clicks the component the onchange function is called with the correct value CONTROLLED COMPONENT", function () {
50
+ var onChange = jest.fn();
51
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Switch["default"], {
52
+ label: "SwitchComponent",
53
+ checked: false,
54
+ onChange: onChange
55
+ })),
56
+ getByText = _render4.getByText;
50
57
  _react2.fireEvent.click(getByText("SwitchComponent"));
51
-
52
58
  _react2.fireEvent.click(getByText("SwitchComponent"));
53
-
59
+ expect(onChange.mock.calls[0][0]).toBe(true);
60
+ expect(onChange.mock.calls[1][0]).toBe(true);
61
+ });
62
+ test("Everytime the user use enter in the component, the onchange function is called with the correct value CONTROLLED COMPONENT", function () {
63
+ var onChange = jest.fn();
64
+ var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Switch["default"], {
65
+ label: "SwitchComponent",
66
+ checked: false,
67
+ onChange: onChange
68
+ })),
69
+ getByText = _render5.getByText;
70
+ _react2.fireEvent.focus(getByText("SwitchComponent"));
71
+ _react2.fireEvent.keyDown(getByText("SwitchComponent"), {
72
+ key: "Enter"
73
+ });
74
+ _react2.fireEvent.keyDown(getByText("SwitchComponent"), {
75
+ key: "Enter"
76
+ });
77
+ expect(onChange.mock.calls[0][0]).toBe(true);
78
+ expect(onChange.mock.calls[1][0]).toBe(true);
79
+ });
80
+ test("Everytime the user use space in the component, the onchange function is called with the correct value CONTROLLED COMPONENT", function () {
81
+ var onChange = jest.fn();
82
+ var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Switch["default"], {
83
+ label: "SwitchComponent",
84
+ checked: false,
85
+ onChange: onChange
86
+ })),
87
+ getByText = _render6.getByText;
88
+ _react2.fireEvent.focus(getByText("SwitchComponent"));
89
+ _react2.fireEvent.keyDown(getByText("SwitchComponent"), {
90
+ key: " "
91
+ });
92
+ _react2.fireEvent.keyDown(getByText("SwitchComponent"), {
93
+ key: " "
94
+ });
54
95
  expect(onChange.mock.calls[0][0]).toBe(true);
55
96
  expect(onChange.mock.calls[1][0]).toBe(true);
56
97
  });
57
98
  test("Everytime the user clicks the component the onchange function is called with the correct value UNCONTROLLED COMPONENT", function () {
58
99
  var onChange = jest.fn();
59
-
60
- var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Switch["default"], {
61
- label: "SwitchComponent",
62
- onChange: onChange
63
- })),
64
- getByText = _render4.getByText;
65
-
100
+ var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Switch["default"], {
101
+ label: "SwitchComponent",
102
+ onChange: onChange
103
+ })),
104
+ getByText = _render7.getByText;
66
105
  _react2.fireEvent.click(getByText("SwitchComponent"));
67
-
68
106
  _react2.fireEvent.click(getByText("SwitchComponent"));
69
-
70
107
  expect(onChange.mock.calls[0][0]).toBe(true);
71
108
  expect(onChange.mock.calls[1][0]).toBe(false);
72
109
  });
110
+ test("Everytime the user use enter in the component, the onchange function is called with the correct value UNCONTROLLED COMPONENT", function () {
111
+ var onChange = jest.fn();
112
+ var _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Switch["default"], {
113
+ label: "SwitchComponent",
114
+ onChange: onChange
115
+ })),
116
+ getByText = _render8.getByText;
117
+ _react2.fireEvent.focus(getByText("SwitchComponent"));
118
+ _react2.fireEvent.keyDown(getByText("SwitchComponent"), {
119
+ key: "Enter"
120
+ });
121
+ _react2.fireEvent.keyDown(getByText("SwitchComponent"), {
122
+ key: "Enter"
123
+ });
124
+ expect(onChange.mock.calls[0][0]).toBe(true);
125
+ expect(onChange.mock.calls[1][0]).toBe(false);
126
+ });
127
+ test("Everytime the user use space in the component, the onchange function is called with the correct value UNCONTROLLED COMPONENT", function () {
128
+ var onChange = jest.fn();
129
+ var _render9 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Switch["default"], {
130
+ label: "SwitchComponent",
131
+ onChange: onChange
132
+ })),
133
+ getByText = _render9.getByText;
134
+ _react2.fireEvent.focus(getByText("SwitchComponent"));
135
+ _react2.fireEvent.keyDown(getByText("SwitchComponent"), {
136
+ key: " "
137
+ });
138
+ _react2.fireEvent.keyDown(getByText("SwitchComponent"), {
139
+ key: " "
140
+ });
141
+ expect(onChange.mock.calls[0][0]).toBe(true);
142
+ expect(onChange.mock.calls[1][0]).toBe(false);
143
+ });
144
+ test("Renders with correct initial value and initial state when it is uncontrolled", function () {
145
+ var component = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Switch["default"], {
146
+ label: "Default label",
147
+ defaultChecked: true,
148
+ value: "test-defaultChecked",
149
+ name: "test"
150
+ }));
151
+ var switchEl = component.getByRole("switch");
152
+ var inputEl = component.container.querySelector("input[name=\"test\"]");
153
+ expect(inputEl.value).toBe("test-defaultChecked");
154
+ expect(switchEl.getAttribute("aria-checked")).toBe("true");
155
+ });
156
+ test("Renders with correct aria attributes", function () {
157
+ var _render10 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Switch["default"], {
158
+ label: "Default label"
159
+ })),
160
+ getByText = _render10.getByText,
161
+ getByRole = _render10.getByRole;
162
+ var switchEl = getByRole("switch");
163
+ var label = getByText("Default label");
164
+ expect(switchEl.getAttribute("aria-labelledby")).toBe(label.id);
165
+ expect(switchEl.getAttribute("aria-checked")).toBe("false");
166
+ });
167
+ test("Renders disabled switch correctly", function () {
168
+ var _render11 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Switch["default"], {
169
+ label: "Default label",
170
+ disabled: true
171
+ })),
172
+ getByText = _render11.getByText,
173
+ getByRole = _render11.getByRole;
174
+ var switchEl = getByRole("switch");
175
+ var label = getByText("Default label");
176
+ expect(switchEl.getAttribute("aria-labelledby")).toBe(label.id);
177
+ expect(switchEl.getAttribute("aria-checked")).toBe("false");
178
+ expect(switchEl.getAttribute("aria-disabled")).toBe("true");
179
+ });
73
180
  });
package/switch/types.d.ts CHANGED
@@ -1,11 +1,15 @@
1
- declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
- declare type Margin = {
1
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
+ type Margin = {
3
3
  top?: Space;
4
4
  bottom?: Space;
5
5
  left?: Space;
6
6
  right?: Space;
7
7
  };
8
- declare type Props = {
8
+ type Props = {
9
+ /**
10
+ * Initial state of the switch, only when it is uncontrolled.
11
+ */
12
+ defaultChecked?: boolean;
9
13
  /**
10
14
  * If true, the component is checked. If undefined, the component will be uncontrolled
11
15
  * and the checked attribute will be managed internally by the component.
@@ -38,9 +42,9 @@ declare type Props = {
38
42
  */
39
43
  onChange?: (checked: boolean) => void;
40
44
  /**
41
- * If true, the switch will change its appearence, showing that the value is required.
45
+ * If true, the component will display '(Optional)' next to the label.
42
46
  */
43
- required?: boolean;
47
+ optional?: boolean;
44
48
  /**
45
49
  * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
46
50
  * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
@@ -55,4 +59,8 @@ declare type Props = {
55
59
  */
56
60
  tabIndex?: number;
57
61
  };
62
+ /**
63
+ * Reference to the component.
64
+ */
65
+ export type RefType = HTMLDivElement;
58
66
  export default Props;
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+ var _variables = require("../common/variables");
8
+ var _default = exports["default"] = {
9
+ dropdown: {
10
+ // ActionIcon size tokens
11
+ buttonIconSize: "16px",
12
+ buttonPaddingTop: "4px",
13
+ buttonPaddingBottom: "4px",
14
+ buttonPaddingLeft: "4px",
15
+ buttonPaddingRight: "4px",
16
+ buttonHeight: "24px",
17
+ buttonBorderRadius: "2px",
18
+ buttonBorderStyle: "none",
19
+ buttonBorderThickness: "0px",
20
+ buttonBorderColor: "transparent",
21
+ optionFontSize: "14px",
22
+ optionPaddingTop: "0px",
23
+ optionPaddingBottom: "0px",
24
+ optionPaddingLeft: "16px",
25
+ optionPaddingRight: "16px",
26
+ // Dropdown tokens
27
+ buttonBackgroundColor: _variables.componentTokens.table.actionBackgroundColor,
28
+ hoverButtonBackgroundColor: _variables.componentTokens.table.hoverActionBackgroundColor,
29
+ activeButtonBackgroundColor: _variables.componentTokens.table.activeActionBackgroundColor,
30
+ buttonFontFamily: _variables.componentTokens.dropdown.buttonFontFamily,
31
+ buttonFontSize: _variables.componentTokens.dropdown.buttonFontSize,
32
+ buttonFontStyle: _variables.componentTokens.dropdown.buttonFontStyle,
33
+ buttonFontWeight: _variables.componentTokens.dropdown.buttonFontWeight,
34
+ buttonFontColor: _variables.componentTokens.dropdown.buttonFontColor,
35
+ buttonIconSpacing: _variables.componentTokens.dropdown.buttonIconSpacing,
36
+ buttonIconColor: _variables.componentTokens.table.actionIconColor,
37
+ disabledColor: _variables.componentTokens.table.disabledActionIconColor,
38
+ disabledButtonBorderColor: _variables.componentTokens.dropdown.disabledButtonBorderColor,
39
+ disabledButtonBackgroundColor: _variables.componentTokens.table.disabledActionBackgroundColor,
40
+ disabledBorderColor: _variables.componentTokens.dropdown.disabledBorderColor,
41
+ optionBackgroundColor: _variables.componentTokens.dropdown.optionBackgroundColor,
42
+ hoverOptionBackgroundColor: _variables.componentTokens.dropdown.hoverOptionBackgroundColor,
43
+ activeOptionBackgroundColor: _variables.componentTokens.dropdown.activeOptionBackgroundColor,
44
+ optionFontFamily: _variables.componentTokens.dropdown.optionFontFamily,
45
+ optionFontStyle: _variables.componentTokens.dropdown.optionFontStyle,
46
+ optionFontWeight: _variables.componentTokens.dropdown.optionFontWeight,
47
+ optionFontColor: _variables.componentTokens.dropdown.optionFontColor,
48
+ optionIconSize: _variables.componentTokens.dropdown.optionIconSize,
49
+ optionIconSpacing: _variables.componentTokens.dropdown.optionIconSpacing,
50
+ optionIconColor: _variables.componentTokens.dropdown.optionIconColor,
51
+ caretIconSize: _variables.componentTokens.dropdown.caretIconSize,
52
+ caretIconColor: _variables.componentTokens.dropdown.caretIconColor,
53
+ caretIconSpacing: _variables.componentTokens.dropdown.caretIconSpacing,
54
+ borderRadius: _variables.componentTokens.dropdown.borderRadius,
55
+ borderStyle: _variables.componentTokens.dropdown.borderStyle,
56
+ borderThickness: _variables.componentTokens.dropdown.borderThickness,
57
+ borderColor: _variables.componentTokens.dropdown.borderColor,
58
+ scrollBarThumbColor: _variables.componentTokens.dropdown.scrollBarThumbColor,
59
+ scrollBarTrackColor: _variables.componentTokens.dropdown.scrollBarTrackColor,
60
+ focusColor: _variables.componentTokens.table.focusActionBorderColor
61
+ }
62
+ };
package/table/Table.d.ts CHANGED
@@ -1,4 +1,8 @@
1
1
  /// <reference types="react" />
2
- import TablePropsType from "./types";
3
- declare const DxcTable: ({ children, margin }: TablePropsType) => JSX.Element;
2
+ import TablePropsType, { ActionCellsPropsType } from "./types";
3
+ export declare const DxcActionsCell: ({ actions }: ActionCellsPropsType) => JSX.Element;
4
+ declare const DxcTable: {
5
+ ({ children, margin, mode }: TablePropsType): JSX.Element;
6
+ ActionsCell: ({ actions }: ActionCellsPropsType) => JSX.Element;
7
+ };
4
8
  export default DxcTable;
package/table/Table.js CHANGED
@@ -1,53 +1,97 @@
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
- exports["default"] = void 0;
11
-
8
+ exports["default"] = exports.DxcActionsCell = void 0;
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 _react = _interopRequireDefault(require("react"));
17
-
18
12
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
19
-
20
- var _variables = require("../common/variables.js");
21
-
22
- var _utils = require("../common/utils.js");
23
-
13
+ var _variables = require("../common/variables");
14
+ var _utils = require("../common/utils");
24
15
  var _useTheme = _interopRequireDefault(require("../useTheme"));
25
-
26
- var _BackgroundColorContext = require("../BackgroundColorContext");
27
-
16
+ var _DropdownTheme = _interopRequireDefault(require("./DropdownTheme"));
17
+ var _Dropdown = _interopRequireDefault(require("../dropdown/Dropdown"));
18
+ var _Flex = _interopRequireDefault(require("../flex/Flex"));
19
+ var _HalstackContext = require("../HalstackContext");
20
+ var _ActionIcon = _interopRequireDefault(require("../action-icon/ActionIcon"));
28
21
  var _templateObject, _templateObject2;
29
-
30
- 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); }
31
-
32
- 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; }
33
-
34
- var DxcTable = function DxcTable(_ref) {
35
- var children = _ref.children,
36
- margin = _ref.margin;
22
+ 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); }
23
+ 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; }
24
+ var moreVertIcon = /*#__PURE__*/_react["default"].createElement("svg", {
25
+ xmlns: "http://www.w3.org/2000/svg",
26
+ height: "24",
27
+ viewBox: "0 -960 960 960",
28
+ width: "24",
29
+ fill: "currentColor"
30
+ }, /*#__PURE__*/_react["default"].createElement("path", {
31
+ d: "M480-160q-33 0-56.5-23.5T400-240q0-33 23.5-56.5T480-320q33 0 56.5 23.5T560-240q0 33-23.5 56.5T480-160Zm0-240q-33 0-56.5-23.5T400-480q0-33 23.5-56.5T480-560q33 0 56.5 23.5T560-480q0 33-23.5 56.5T480-400Zm0-240q-33 0-56.5-23.5T400-720q0-33 23.5-56.5T480-800q33 0 56.5 23.5T560-720q0 33-23.5 56.5T480-640Z"
32
+ }));
33
+ var overwriteTheme = function overwriteTheme(theme) {
34
+ var newTheme = _DropdownTheme["default"];
35
+ newTheme.dropdown.buttonBackgroundColor = theme.table.actionBackgroundColor;
36
+ newTheme.dropdown.hoverButtonBackgroundColor = theme.table.hoverActionBackgroundColor;
37
+ newTheme.dropdown.activeButtonBackgroundColor = theme.table.activeActionBackgroundColor;
38
+ newTheme.dropdown.buttonIconColor = theme.table.actionIconColor;
39
+ newTheme.dropdown.disabledColor = theme.table.disabledActionIconColor;
40
+ newTheme.dropdown.disabledButtonBackgroundColor = theme.table.disabledActionBackgroundColor;
41
+ return newTheme;
42
+ };
43
+ var DxcActionsCell = exports.DxcActionsCell = function DxcActionsCell(_ref) {
44
+ var actions = _ref.actions;
45
+ var actionIcons = actions.filter(function (action) {
46
+ return !action.options;
47
+ });
48
+ var actionDropdown = actions.find(function (action) {
49
+ return action.options;
50
+ });
51
+ var maxNumberOfActions = actionDropdown ? 2 : 3;
52
+ var colorsTheme = (0, _useTheme["default"])();
53
+ return /*#__PURE__*/_react["default"].createElement(_Flex["default"], {
54
+ gap: "0.5rem",
55
+ alignItems: "center"
56
+ }, actionIcons.map(function (action, index) {
57
+ var _action$disabled, _action$tabIndex;
58
+ return index < maxNumberOfActions && /*#__PURE__*/_react["default"].createElement(_ActionIcon["default"], {
59
+ icon: action.icon,
60
+ title: action.title,
61
+ onClick: action.onClick,
62
+ disabled: (_action$disabled = action.disabled) !== null && _action$disabled !== void 0 ? _action$disabled : false,
63
+ tabIndex: (_action$tabIndex = action.tabIndex) !== null && _action$tabIndex !== void 0 ? _action$tabIndex : 0,
64
+ key: "action-".concat(index)
65
+ });
66
+ }), actionDropdown && /*#__PURE__*/_react["default"].createElement(_HalstackContext.HalstackProvider, {
67
+ advancedTheme: overwriteTheme(colorsTheme),
68
+ key: "provider-dropdown"
69
+ }, /*#__PURE__*/_react["default"].createElement(_Dropdown["default"], {
70
+ options: actionDropdown.options,
71
+ onSelectOption: actionDropdown.onClick,
72
+ disabled: actionDropdown.disabled,
73
+ icon: moreVertIcon,
74
+ tabIndex: actionDropdown.tabIndex,
75
+ caretHidden: true
76
+ })));
77
+ };
78
+ var DxcTable = function DxcTable(_ref2) {
79
+ var children = _ref2.children,
80
+ margin = _ref2.margin,
81
+ _ref2$mode = _ref2.mode,
82
+ mode = _ref2$mode === void 0 ? "default" : _ref2$mode;
37
83
  var colorsTheme = (0, _useTheme["default"])();
38
84
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
39
85
  theme: colorsTheme.table
40
86
  }, /*#__PURE__*/_react["default"].createElement(DxcTableContainer, {
41
87
  margin: margin
42
- }, /*#__PURE__*/_react["default"].createElement(DxcTableContent, null, /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
43
- color: colorsTheme.table.dataBackgroundColor
44
- }, children))));
88
+ }, /*#__PURE__*/_react["default"].createElement(DxcTableContent, {
89
+ mode: mode
90
+ }, children)));
45
91
  };
46
-
47
92
  var calculateWidth = function calculateWidth(margin) {
48
93
  return "calc(100% - ".concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
49
94
  };
50
-
51
95
  var DxcTableContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n overflow: auto;\n &::-webkit-scrollbar {\n width: 8px;\n height: 8px;\n }\n &::-webkit-scrollbar-thumb {\n background-color: ", ";\n border-radius: 6px;\n }\n &::-webkit-scrollbar-track {\n background-color: ", ";\n border-radius: 6px;\n }\n"])), function (props) {
52
96
  return calculateWidth(props.margin);
53
97
  }, function (props) {
@@ -65,9 +109,10 @@ var DxcTableContainer = _styledComponents["default"].div(_templateObject || (_te
65
109
  }, function (props) {
66
110
  return props.theme.scrollBarTrackColor;
67
111
  });
68
-
69
- var DxcTableContent = _styledComponents["default"].table(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n border-collapse: collapse;\n width: 100%;\n\n & tr {\n border-bottom: ", ";\n }\n & td {\n background-color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n text-transform: ", ";\n text-align: ", ";\n line-height: ", ";\n padding: ", ";\n }\n & th {\n background-color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n text-transform: ", ";\n text-align: ", ";\n line-height: ", ";\n padding: ", ";\n }\n & th:first-child {\n border-top-left-radius: ", ";\n }\n & th:last-child {\n border-top-right-radius: ", ";\n }\n"])), function (props) {
112
+ var DxcTableContent = _styledComponents["default"].table(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n border-collapse: collapse;\n width: 100%;\n\n & tr {\n border-bottom: ", ";\n height: ", ";\n }\n & td {\n background-color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n text-transform: ", ";\n text-align: ", ";\n line-height: ", ";\n padding: ", ";\n }\n & th {\n background-color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n text-transform: ", ";\n text-align: ", ";\n line-height: ", ";\n padding: ", ";\n }\n & th:first-child {\n border-top-left-radius: ", ";\n padding-left: ", ";\n }\n & th:last-child {\n border-top-right-radius: ", ";\n padding-right: ", ";\n }\n & td:first-child {\n padding-left: ", ";\n }\n & td:last-child {\n padding-right: ", ";\n }\n"])), function (props) {
70
113
  return "".concat(props.theme.rowSeparatorThickness, " ").concat(props.theme.rowSeparatorStyle, " ").concat(props.theme.rowSeparatorColor);
114
+ }, function (props) {
115
+ return props.mode === "default" ? "60px" : "36px";
71
116
  }, function (props) {
72
117
  return props.theme.dataBackgroundColor;
73
118
  }, function (props) {
@@ -87,7 +132,7 @@ var DxcTableContent = _styledComponents["default"].table(_templateObject2 || (_t
87
132
  }, function (props) {
88
133
  return props.theme.dataTextLineHeight;
89
134
  }, function (props) {
90
- return "".concat(props.theme.dataPaddingTop, " ").concat(props.theme.dataPaddingRight, " ").concat(props.theme.dataPaddingBottom, " ").concat(props.theme.dataPaddingLeft);
135
+ return props.mode === "default" ? "".concat(props.theme.dataPaddingTop, " ").concat(props.theme.dataPaddingRight, " ").concat(props.theme.dataPaddingBottom, " ").concat(props.theme.dataPaddingLeft) : "".concat(props.theme.dataPaddingTopReduced, " ").concat(props.theme.dataPaddingRightReduced, " ").concat(props.theme.dataPaddingBottomReduced, " ").concat(props.theme.dataPaddingLeftReduced);
91
136
  }, function (props) {
92
137
  return props.theme.headerBackgroundColor;
93
138
  }, function (props) {
@@ -107,12 +152,19 @@ var DxcTableContent = _styledComponents["default"].table(_templateObject2 || (_t
107
152
  }, function (props) {
108
153
  return props.theme.headerTextLineHeight;
109
154
  }, function (props) {
110
- return "".concat(props.theme.headerPaddingTop, " ").concat(props.theme.headerPaddingRight, " ").concat(props.theme.headerPaddingBottom, " ").concat(props.theme.headerPaddingLeft);
155
+ return props.mode === "default" ? "".concat(props.theme.headerPaddingTop, " ").concat(props.theme.headerPaddingRight, " ").concat(props.theme.headerPaddingBottom, " ").concat(props.theme.headerPaddingLeft) : "".concat(props.theme.headerPaddingTopReduced, " ").concat(props.theme.headerPaddingRightReduced, " ").concat(props.theme.headerPaddingBottomReduced, " ").concat(props.theme.headerPaddingLeftReduced);
111
156
  }, function (props) {
112
157
  return props.theme.headerBorderRadius;
158
+ }, function (props) {
159
+ return props.mode === "default" ? props.theme.firstChildPaddingLeft : props.theme.firstChildPaddingLeftReduced;
113
160
  }, function (props) {
114
161
  return props.theme.headerBorderRadius;
162
+ }, function (props) {
163
+ return props.mode === "default" ? props.theme.lastChildPaddingRight : props.theme.lastChildPaddingRightReduced;
164
+ }, function (props) {
165
+ return props.mode === "default" ? props.theme.firstChildPaddingLeft : props.theme.firstChildPaddingLeftReduced;
166
+ }, function (props) {
167
+ return props.mode === "default" ? props.theme.lastChildPaddingRight : props.theme.lastChildPaddingRightReduced;
115
168
  });
116
-
117
- var _default = DxcTable;
118
- exports["default"] = _default;
169
+ DxcTable.ActionsCell = DxcActionsCell;
170
+ var _default = exports["default"] = DxcTable;