@dxc-technology/halstack-react 0.0.0-4bc8a44 → 0.0.0-4c0fd86

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 (460) hide show
  1. package/BackgroundColorContext.d.ts +1 -10
  2. package/BackgroundColorContext.js +4 -21
  3. package/HalstackContext.d.ts +77 -144
  4. package/HalstackContext.js +41 -56
  5. package/README.md +47 -0
  6. package/accordion/Accordion.accessibility.test.d.ts +1 -0
  7. package/accordion/Accordion.accessibility.test.js +71 -0
  8. package/accordion/Accordion.d.ts +1 -1
  9. package/accordion/Accordion.js +35 -101
  10. package/accordion/Accordion.stories.tsx +8 -162
  11. package/accordion/Accordion.test.d.ts +1 -0
  12. package/accordion/Accordion.test.js +19 -34
  13. package/accordion/types.d.ts +6 -18
  14. package/accordion-group/AccordionGroup.accessibility.test.d.ts +1 -0
  15. package/accordion-group/AccordionGroup.accessibility.test.js +82 -0
  16. package/accordion-group/AccordionGroup.d.ts +2 -2
  17. package/accordion-group/AccordionGroup.js +27 -75
  18. package/accordion-group/AccordionGroup.stories.tsx +78 -77
  19. package/accordion-group/AccordionGroup.test.d.ts +1 -0
  20. package/accordion-group/AccordionGroup.test.js +42 -74
  21. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  22. package/accordion-group/AccordionGroupAccordion.js +31 -0
  23. package/accordion-group/AccordionGroupContext.d.ts +3 -0
  24. package/accordion-group/AccordionGroupContext.js +8 -0
  25. package/accordion-group/types.d.ts +7 -19
  26. package/action-icon/ActionIcon.accessibility.test.d.ts +1 -0
  27. package/action-icon/ActionIcon.accessibility.test.js +63 -0
  28. package/action-icon/ActionIcon.d.ts +4 -0
  29. package/action-icon/ActionIcon.js +48 -0
  30. package/action-icon/ActionIcon.stories.tsx +41 -0
  31. package/action-icon/ActionIcon.test.d.ts +1 -0
  32. package/action-icon/ActionIcon.test.js +64 -0
  33. package/action-icon/types.d.ts +26 -0
  34. package/alert/Alert.accessibility.test.d.ts +1 -0
  35. package/alert/Alert.accessibility.test.js +95 -0
  36. package/alert/Alert.js +34 -120
  37. package/alert/Alert.test.d.ts +1 -0
  38. package/alert/Alert.test.js +29 -46
  39. package/alert/types.d.ts +5 -5
  40. package/badge/Badge.accessibility.test.d.ts +1 -0
  41. package/badge/Badge.accessibility.test.js +129 -0
  42. package/badge/Badge.d.ts +1 -1
  43. package/badge/Badge.js +142 -42
  44. package/badge/Badge.stories.tsx +210 -0
  45. package/badge/Badge.test.d.ts +1 -0
  46. package/badge/Badge.test.js +30 -0
  47. package/badge/types.d.ts +52 -3
  48. package/bleed/Bleed.js +13 -21
  49. package/bleed/types.d.ts +2 -2
  50. package/box/Box.accessibility.test.d.ts +1 -0
  51. package/box/Box.accessibility.test.js +33 -0
  52. package/box/Box.d.ts +1 -1
  53. package/box/Box.js +16 -55
  54. package/box/Box.stories.tsx +25 -53
  55. package/box/Box.test.d.ts +1 -0
  56. package/box/Box.test.js +2 -7
  57. package/box/types.d.ts +3 -15
  58. package/breadcrumbs/Breadcrumbs.accessibility.test.d.ts +1 -0
  59. package/breadcrumbs/Breadcrumbs.accessibility.test.js +96 -0
  60. package/breadcrumbs/Breadcrumbs.d.ts +4 -0
  61. package/breadcrumbs/Breadcrumbs.js +79 -0
  62. package/breadcrumbs/Breadcrumbs.stories.tsx +194 -0
  63. package/breadcrumbs/Breadcrumbs.test.d.ts +1 -0
  64. package/breadcrumbs/Breadcrumbs.test.js +168 -0
  65. package/breadcrumbs/Item.d.ts +4 -0
  66. package/breadcrumbs/Item.js +52 -0
  67. package/breadcrumbs/dropdownTheme.d.ts +53 -0
  68. package/breadcrumbs/dropdownTheme.js +62 -0
  69. package/breadcrumbs/types.d.ts +40 -0
  70. package/bulleted-list/BulletedList.accessibility.test.d.ts +1 -0
  71. package/bulleted-list/BulletedList.accessibility.test.js +119 -0
  72. package/bulleted-list/BulletedList.js +22 -55
  73. package/bulleted-list/BulletedList.stories.tsx +2 -93
  74. package/bulleted-list/types.d.ts +5 -5
  75. package/button/Button.accessibility.test.d.ts +1 -0
  76. package/button/Button.accessibility.test.js +127 -0
  77. package/button/Button.d.ts +1 -1
  78. package/button/Button.js +68 -100
  79. package/button/Button.stories.tsx +35 -135
  80. package/button/Button.test.d.ts +1 -0
  81. package/button/Button.test.js +20 -17
  82. package/button/types.d.ts +9 -5
  83. package/card/Card.accessibility.test.d.ts +1 -0
  84. package/card/Card.accessibility.test.js +36 -0
  85. package/card/Card.d.ts +1 -1
  86. package/card/Card.js +40 -79
  87. package/card/Card.stories.tsx +1 -30
  88. package/card/Card.test.d.ts +1 -0
  89. package/card/Card.test.js +11 -22
  90. package/card/types.d.ts +6 -12
  91. package/checkbox/Checkbox.accessibility.test.d.ts +1 -0
  92. package/checkbox/Checkbox.accessibility.test.js +87 -0
  93. package/checkbox/Checkbox.js +88 -126
  94. package/checkbox/Checkbox.stories.tsx +16 -54
  95. package/checkbox/Checkbox.test.d.ts +1 -0
  96. package/checkbox/Checkbox.test.js +108 -64
  97. package/checkbox/types.d.ts +8 -4
  98. package/chip/Chip.accessibility.test.d.ts +1 -0
  99. package/chip/Chip.accessibility.test.js +67 -0
  100. package/chip/Chip.js +22 -36
  101. package/chip/Chip.stories.tsx +6 -25
  102. package/chip/Chip.test.d.ts +1 -0
  103. package/chip/Chip.test.js +18 -31
  104. package/chip/types.d.ts +4 -4
  105. package/common/coreTokens.d.ts +105 -15
  106. package/common/coreTokens.js +41 -25
  107. package/common/utils.js +2 -8
  108. package/common/variables.d.ts +83 -144
  109. package/common/variables.js +153 -227
  110. package/container/Container.d.ts +4 -0
  111. package/container/Container.js +194 -0
  112. package/container/Container.stories.tsx +214 -0
  113. package/container/types.d.ts +176 -0
  114. package/container/types.js +5 -0
  115. package/contextual-menu/ContextualMenu.accessibility.test.d.ts +1 -0
  116. package/contextual-menu/ContextualMenu.accessibility.test.js +98 -0
  117. package/contextual-menu/ContextualMenu.d.ts +5 -0
  118. package/contextual-menu/ContextualMenu.js +136 -0
  119. package/contextual-menu/ContextualMenu.stories.tsx +231 -0
  120. package/contextual-menu/ContextualMenu.test.d.ts +1 -0
  121. package/contextual-menu/ContextualMenu.test.js +247 -0
  122. package/contextual-menu/GroupItem.d.ts +4 -0
  123. package/contextual-menu/GroupItem.js +67 -0
  124. package/contextual-menu/ItemAction.d.ts +4 -0
  125. package/contextual-menu/ItemAction.js +88 -0
  126. package/contextual-menu/MenuItem.d.ts +4 -0
  127. package/contextual-menu/MenuItem.js +29 -0
  128. package/contextual-menu/SingleItem.d.ts +4 -0
  129. package/contextual-menu/SingleItem.js +38 -0
  130. package/contextual-menu/types.d.ts +65 -0
  131. package/contextual-menu/types.js +5 -0
  132. package/date-input/Calendar.js +59 -87
  133. package/date-input/DateInput.accessibility.test.d.ts +1 -0
  134. package/date-input/DateInput.accessibility.test.js +229 -0
  135. package/date-input/DateInput.js +70 -111
  136. package/date-input/DateInput.stories.tsx +22 -35
  137. package/date-input/DateInput.test.d.ts +1 -0
  138. package/date-input/DateInput.test.js +675 -702
  139. package/date-input/DatePicker.js +23 -48
  140. package/date-input/YearPicker.js +17 -38
  141. package/date-input/types.d.ts +28 -22
  142. package/dialog/Dialog.accessibility.test.d.ts +1 -0
  143. package/dialog/Dialog.accessibility.test.js +69 -0
  144. package/dialog/Dialog.d.ts +1 -1
  145. package/dialog/Dialog.js +23 -79
  146. package/dialog/Dialog.stories.tsx +219 -169
  147. package/dialog/Dialog.test.d.ts +1 -0
  148. package/dialog/Dialog.test.js +216 -215
  149. package/dialog/types.d.ts +18 -26
  150. package/divider/Divider.accessibility.test.d.ts +1 -0
  151. package/divider/Divider.accessibility.test.js +33 -0
  152. package/divider/Divider.d.ts +4 -0
  153. package/divider/Divider.js +36 -0
  154. package/divider/Divider.stories.tsx +224 -0
  155. package/divider/Divider.test.d.ts +1 -0
  156. package/divider/Divider.test.js +38 -0
  157. package/divider/types.d.ts +21 -0
  158. package/divider/types.js +5 -0
  159. package/dropdown/Dropdown.accessibility.test.d.ts +1 -0
  160. package/dropdown/Dropdown.accessibility.test.js +183 -0
  161. package/dropdown/Dropdown.js +67 -135
  162. package/dropdown/Dropdown.stories.tsx +16 -27
  163. package/dropdown/Dropdown.test.d.ts +1 -0
  164. package/dropdown/Dropdown.test.js +434 -392
  165. package/dropdown/DropdownMenu.js +12 -23
  166. package/dropdown/DropdownMenuItem.js +13 -21
  167. package/dropdown/types.d.ts +20 -24
  168. package/file-input/FileInput.accessibility.test.d.ts +1 -0
  169. package/file-input/FileInput.accessibility.test.js +167 -0
  170. package/file-input/FileInput.js +177 -286
  171. package/file-input/FileInput.stories.tsx +1 -1
  172. package/file-input/FileInput.test.d.ts +1 -0
  173. package/file-input/FileInput.test.js +303 -356
  174. package/file-input/FileItem.js +30 -67
  175. package/file-input/types.d.ts +9 -13
  176. package/flex/Flex.js +25 -39
  177. package/flex/types.d.ts +6 -6
  178. package/footer/Footer.accessibility.test.d.ts +1 -0
  179. package/footer/Footer.accessibility.test.js +125 -0
  180. package/footer/Footer.d.ts +1 -1
  181. package/footer/Footer.js +72 -115
  182. package/footer/Footer.stories.tsx +77 -97
  183. package/footer/Footer.test.d.ts +1 -0
  184. package/footer/Footer.test.js +22 -34
  185. package/footer/Icons.d.ts +3 -2
  186. package/footer/Icons.js +53 -22
  187. package/footer/types.d.ts +26 -28
  188. package/grid/Grid.d.ts +1 -1
  189. package/grid/Grid.js +2 -17
  190. package/grid/Grid.stories.tsx +41 -39
  191. package/grid/types.d.ts +10 -10
  192. package/header/Header.accessibility.test.d.ts +1 -0
  193. package/header/Header.accessibility.test.js +94 -0
  194. package/header/Header.d.ts +2 -2
  195. package/header/Header.js +41 -134
  196. package/header/Header.stories.tsx +24 -72
  197. package/header/Header.test.d.ts +1 -0
  198. package/header/Header.test.js +13 -26
  199. package/header/Icons.d.ts +2 -2
  200. package/header/Icons.js +3 -13
  201. package/header/types.d.ts +7 -22
  202. package/heading/Heading.accessibility.test.d.ts +1 -0
  203. package/heading/Heading.accessibility.test.js +33 -0
  204. package/heading/Heading.js +9 -31
  205. package/heading/Heading.test.d.ts +1 -0
  206. package/heading/Heading.test.js +65 -95
  207. package/heading/types.d.ts +7 -7
  208. package/icon/Icon.accessibility.test.d.ts +1 -0
  209. package/icon/Icon.accessibility.test.js +30 -0
  210. package/icon/Icon.d.ts +4 -0
  211. package/icon/Icon.js +33 -0
  212. package/icon/Icon.stories.tsx +28 -0
  213. package/icon/types.d.ts +4 -0
  214. package/icon/types.js +5 -0
  215. package/image/Image.accessibility.test.d.ts +1 -0
  216. package/image/Image.accessibility.test.js +56 -0
  217. package/image/Image.d.ts +4 -0
  218. package/image/Image.js +70 -0
  219. package/image/Image.stories.tsx +129 -0
  220. package/image/types.d.ts +72 -0
  221. package/image/types.js +5 -0
  222. package/inset/Inset.js +13 -21
  223. package/inset/types.d.ts +2 -2
  224. package/layout/ApplicationLayout.d.ts +3 -3
  225. package/layout/ApplicationLayout.js +35 -69
  226. package/layout/ApplicationLayout.stories.tsx +1 -1
  227. package/layout/Icons.d.ts +7 -5
  228. package/layout/Icons.js +41 -59
  229. package/layout/types.d.ts +3 -3
  230. package/link/Link.accessibility.test.d.ts +1 -0
  231. package/link/Link.accessibility.test.js +108 -0
  232. package/link/Link.js +28 -47
  233. package/link/Link.stories.tsx +4 -4
  234. package/link/Link.test.d.ts +1 -0
  235. package/link/Link.test.js +24 -42
  236. package/link/types.d.ts +14 -14
  237. package/main.d.ts +9 -4
  238. package/main.js +46 -59
  239. package/nav-tabs/NavTabs.accessibility.test.d.ts +1 -0
  240. package/nav-tabs/NavTabs.accessibility.test.js +44 -0
  241. package/nav-tabs/NavTabs.d.ts +2 -3
  242. package/nav-tabs/NavTabs.js +39 -56
  243. package/nav-tabs/NavTabs.stories.tsx +57 -23
  244. package/nav-tabs/NavTabs.test.d.ts +1 -0
  245. package/nav-tabs/NavTabs.test.js +46 -51
  246. package/nav-tabs/NavTabsContext.d.ts +3 -0
  247. package/nav-tabs/NavTabsContext.js +8 -0
  248. package/nav-tabs/Tab.js +53 -86
  249. package/nav-tabs/types.d.ts +15 -16
  250. package/number-input/NumberInput.accessibility.test.d.ts +1 -0
  251. package/number-input/NumberInput.accessibility.test.js +227 -0
  252. package/number-input/NumberInput.js +50 -37
  253. package/number-input/NumberInput.stories.tsx +37 -26
  254. package/number-input/NumberInput.test.d.ts +1 -0
  255. package/number-input/NumberInput.test.js +859 -413
  256. package/number-input/NumberInputContext.d.ts +3 -4
  257. package/number-input/NumberInputContext.js +3 -14
  258. package/number-input/types.d.ts +17 -5
  259. package/package.json +48 -41
  260. package/paginator/Paginator.accessibility.test.d.ts +1 -0
  261. package/paginator/Paginator.accessibility.test.js +78 -0
  262. package/paginator/Paginator.js +28 -53
  263. package/paginator/Paginator.test.d.ts +1 -0
  264. package/paginator/Paginator.test.js +231 -202
  265. package/paginator/types.d.ts +3 -3
  266. package/paragraph/Paragraph.accessibility.test.d.ts +1 -0
  267. package/paragraph/Paragraph.accessibility.test.js +28 -0
  268. package/paragraph/Paragraph.js +3 -19
  269. package/paragraph/Paragraph.stories.tsx +0 -17
  270. package/password-input/PasswordInput.accessibility.test.d.ts +1 -0
  271. package/password-input/PasswordInput.accessibility.test.js +152 -0
  272. package/password-input/PasswordInput.js +62 -128
  273. package/password-input/PasswordInput.stories.tsx +11 -34
  274. package/password-input/PasswordInput.test.d.ts +1 -0
  275. package/password-input/PasswordInput.test.js +157 -141
  276. package/password-input/types.d.ts +8 -7
  277. package/progress-bar/ProgressBar.accessibility.test.d.ts +1 -0
  278. package/progress-bar/ProgressBar.accessibility.test.js +35 -0
  279. package/progress-bar/ProgressBar.js +26 -56
  280. package/progress-bar/{ProgressBar.stories.jsx → ProgressBar.stories.tsx} +1 -1
  281. package/progress-bar/ProgressBar.test.d.ts +1 -0
  282. package/progress-bar/ProgressBar.test.js +36 -53
  283. package/progress-bar/types.d.ts +3 -3
  284. package/quick-nav/QuickNav.accessibility.test.d.ts +1 -0
  285. package/quick-nav/QuickNav.accessibility.test.js +57 -0
  286. package/quick-nav/QuickNav.js +4 -27
  287. package/quick-nav/QuickNav.stories.tsx +1 -1
  288. package/quick-nav/types.d.ts +10 -10
  289. package/radio-group/Radio.d.ts +1 -1
  290. package/radio-group/Radio.js +31 -66
  291. package/radio-group/RadioGroup.accessibility.test.d.ts +1 -0
  292. package/radio-group/RadioGroup.accessibility.test.js +97 -0
  293. package/radio-group/RadioGroup.js +48 -98
  294. package/radio-group/RadioGroup.stories.tsx +10 -10
  295. package/radio-group/RadioGroup.test.d.ts +1 -0
  296. package/radio-group/RadioGroup.test.js +505 -473
  297. package/radio-group/types.d.ts +8 -8
  298. package/resultset-table/Icons.d.ts +7 -0
  299. package/{resultsetTable → resultset-table}/Icons.js +1 -5
  300. package/resultset-table/ResultsetTable.accessibility.test.d.ts +1 -0
  301. package/resultset-table/ResultsetTable.accessibility.test.js +284 -0
  302. package/resultset-table/ResultsetTable.d.ts +7 -0
  303. package/{resultsetTable → resultset-table}/ResultsetTable.js +74 -74
  304. package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +119 -6
  305. package/resultset-table/ResultsetTable.test.d.ts +1 -0
  306. package/resultset-table/ResultsetTable.test.js +450 -0
  307. package/{resultsetTable → resultset-table}/types.d.ts +44 -11
  308. package/resultset-table/types.js +5 -0
  309. package/select/Listbox.js +36 -54
  310. package/select/Option.js +28 -36
  311. package/select/Select.accessibility.test.d.ts +1 -0
  312. package/select/Select.accessibility.test.js +227 -0
  313. package/select/Select.js +114 -178
  314. package/select/Select.stories.tsx +70 -113
  315. package/select/Select.test.d.ts +1 -0
  316. package/select/Select.test.js +1900 -1861
  317. package/select/types.d.ts +15 -16
  318. package/sidenav/Sidenav.accessibility.test.d.ts +1 -0
  319. package/sidenav/Sidenav.accessibility.test.js +59 -0
  320. package/sidenav/Sidenav.js +44 -81
  321. package/sidenav/Sidenav.stories.tsx +5 -10
  322. package/sidenav/Sidenav.test.d.ts +1 -0
  323. package/sidenav/Sidenav.test.js +4 -11
  324. package/{layout → sidenav}/SidenavContext.d.ts +1 -1
  325. package/{layout → sidenav}/SidenavContext.js +3 -9
  326. package/sidenav/types.d.ts +20 -20
  327. package/slider/Slider.accessibility.test.d.ts +1 -0
  328. package/slider/Slider.accessibility.test.js +103 -0
  329. package/slider/Slider.js +66 -125
  330. package/slider/Slider.stories.tsx +0 -60
  331. package/slider/Slider.test.d.ts +1 -0
  332. package/slider/Slider.test.js +118 -112
  333. package/slider/types.d.ts +4 -4
  334. package/spinner/Spinner.accessibility.test.d.ts +1 -0
  335. package/spinner/Spinner.accessibility.test.js +96 -0
  336. package/spinner/Spinner.js +21 -55
  337. package/spinner/Spinner.test.d.ts +1 -0
  338. package/spinner/Spinner.test.js +26 -35
  339. package/spinner/types.d.ts +3 -3
  340. package/status-light/StatusLight.accessibility.test.d.ts +1 -0
  341. package/status-light/StatusLight.accessibility.test.js +157 -0
  342. package/status-light/StatusLight.d.ts +4 -0
  343. package/status-light/StatusLight.js +51 -0
  344. package/status-light/StatusLight.stories.tsx +74 -0
  345. package/status-light/StatusLight.test.d.ts +1 -0
  346. package/status-light/StatusLight.test.js +25 -0
  347. package/status-light/types.d.ts +17 -0
  348. package/status-light/types.js +5 -0
  349. package/switch/Switch.accessibility.test.d.ts +1 -0
  350. package/switch/Switch.accessibility.test.js +98 -0
  351. package/switch/Switch.js +49 -100
  352. package/switch/Switch.stories.tsx +12 -34
  353. package/switch/Switch.test.d.ts +1 -0
  354. package/switch/Switch.test.js +52 -97
  355. package/switch/types.d.ts +4 -4
  356. package/table/DropdownTheme.js +62 -0
  357. package/table/Table.accessibility.test.d.ts +1 -0
  358. package/table/Table.accessibility.test.js +92 -0
  359. package/table/Table.d.ts +6 -2
  360. package/table/Table.js +76 -33
  361. package/table/{Table.stories.jsx → Table.stories.tsx} +309 -2
  362. package/table/Table.test.d.ts +1 -0
  363. package/table/Table.test.js +92 -7
  364. package/table/types.d.ts +34 -6
  365. package/tabs/Tab.js +22 -37
  366. package/tabs/Tabs.accessibility.test.d.ts +1 -0
  367. package/tabs/Tabs.accessibility.test.js +56 -0
  368. package/tabs/Tabs.js +59 -147
  369. package/tabs/Tabs.stories.tsx +8 -4
  370. package/tabs/Tabs.test.d.ts +1 -0
  371. package/tabs/Tabs.test.js +58 -132
  372. package/tabs/types.d.ts +21 -21
  373. package/tag/Tag.accessibility.test.d.ts +1 -0
  374. package/tag/Tag.accessibility.test.js +69 -0
  375. package/tag/Tag.js +27 -57
  376. package/tag/Tag.stories.tsx +5 -8
  377. package/tag/Tag.test.d.ts +1 -0
  378. package/tag/Tag.test.js +18 -37
  379. package/tag/types.d.ts +9 -9
  380. package/text-input/Suggestion.js +9 -26
  381. package/text-input/Suggestions.d.ts +1 -1
  382. package/text-input/Suggestions.js +30 -70
  383. package/text-input/TextInput.accessibility.test.d.ts +1 -0
  384. package/text-input/TextInput.accessibility.test.js +320 -0
  385. package/text-input/TextInput.js +224 -326
  386. package/text-input/TextInput.stories.tsx +68 -160
  387. package/text-input/TextInput.test.d.ts +1 -0
  388. package/text-input/TextInput.test.js +1227 -1195
  389. package/text-input/types.d.ts +25 -17
  390. package/textarea/Textarea.accessibility.test.d.ts +1 -0
  391. package/textarea/Textarea.accessibility.test.js +155 -0
  392. package/textarea/Textarea.js +64 -105
  393. package/textarea/{Textarea.stories.jsx → Textarea.stories.tsx} +58 -100
  394. package/textarea/Textarea.test.d.ts +1 -0
  395. package/textarea/Textarea.test.js +151 -180
  396. package/textarea/types.d.ts +9 -5
  397. package/toggle-group/ToggleGroup.accessibility.test.d.ts +1 -0
  398. package/toggle-group/ToggleGroup.accessibility.test.js +107 -0
  399. package/toggle-group/ToggleGroup.js +90 -109
  400. package/toggle-group/ToggleGroup.stories.tsx +11 -8
  401. package/toggle-group/ToggleGroup.test.d.ts +1 -0
  402. package/toggle-group/ToggleGroup.test.js +69 -88
  403. package/toggle-group/types.d.ts +28 -19
  404. package/tooltip/Tooltip.accessibility.test.d.ts +1 -0
  405. package/tooltip/Tooltip.accessibility.test.js +144 -0
  406. package/tooltip/Tooltip.d.ts +4 -0
  407. package/tooltip/Tooltip.js +50 -0
  408. package/tooltip/Tooltip.stories.tsx +111 -0
  409. package/tooltip/Tooltip.test.d.ts +1 -0
  410. package/tooltip/Tooltip.test.js +112 -0
  411. package/tooltip/types.d.ts +16 -0
  412. package/tooltip/types.js +5 -0
  413. package/typography/Typography.accessibility.test.d.ts +1 -0
  414. package/typography/Typography.accessibility.test.js +339 -0
  415. package/typography/Typography.js +4 -13
  416. package/typography/Typography.stories.tsx +1 -3
  417. package/typography/Typography.test.js +23 -0
  418. package/typography/types.d.ts +1 -1
  419. package/useTheme.d.ts +74 -141
  420. package/useTheme.js +1 -8
  421. package/useTranslatedLabels.js +1 -7
  422. package/utils/BaseTypography.d.ts +2 -2
  423. package/utils/BaseTypography.js +60 -70
  424. package/utils/FocusLock.js +26 -39
  425. package/wizard/Wizard.accessibility.test.d.ts +1 -0
  426. package/wizard/Wizard.accessibility.test.js +55 -0
  427. package/wizard/Wizard.js +27 -73
  428. package/wizard/Wizard.stories.tsx +20 -1
  429. package/wizard/Wizard.test.d.ts +1 -0
  430. package/wizard/Wizard.test.js +54 -81
  431. package/wizard/types.d.ts +8 -8
  432. package/card/ice-cream.jpg +0 -0
  433. package/common/OpenSans.css +0 -69
  434. package/common/fonts/OpenSans-Bold.ttf +0 -0
  435. package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  436. package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  437. package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  438. package/common/fonts/OpenSans-Italic.ttf +0 -0
  439. package/common/fonts/OpenSans-Light.ttf +0 -0
  440. package/common/fonts/OpenSans-LightItalic.ttf +0 -0
  441. package/common/fonts/OpenSans-Regular.ttf +0 -0
  442. package/common/fonts/OpenSans-SemiBold.ttf +0 -0
  443. package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  444. package/date-input/Icons.d.ts +0 -6
  445. package/date-input/Icons.js +0 -75
  446. package/number-input/numberInputContextTypes.d.ts +0 -19
  447. package/paginator/Icons.d.ts +0 -5
  448. package/paginator/Icons.js +0 -54
  449. package/resultsetTable/Icons.d.ts +0 -7
  450. package/resultsetTable/ResultsetTable.d.ts +0 -4
  451. package/resultsetTable/ResultsetTable.test.js +0 -325
  452. package/select/Icons.d.ts +0 -10
  453. package/select/Icons.js +0 -93
  454. package/sidenav/Icons.d.ts +0 -7
  455. package/sidenav/Icons.js +0 -51
  456. package/text-input/Icons.d.ts +0 -8
  457. package/text-input/Icons.js +0 -60
  458. /package/{resultsetTable → action-icon}/types.js +0 -0
  459. /package/{number-input/numberInputContextTypes.js → breadcrumbs/types.js} +0 -0
  460. /package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +0 -0
@@ -1,4 +1,4 @@
1
- export declare type Option = {
1
+ export type Option = {
2
2
  /**
3
3
  * Label of the option placed next to the radio input.
4
4
  */
@@ -14,11 +14,11 @@ export declare type Option = {
14
14
  */
15
15
  disabled?: boolean;
16
16
  };
17
- declare type RadioGroupProps = {
17
+ type RadioGroupProps = {
18
18
  /**
19
19
  * Text to be placed above the radio group.
20
20
  */
21
- label: string;
21
+ label?: string;
22
22
  /**
23
23
  * Name attribute of the input element. This attribute will allow users
24
24
  * to find the component's value during the submit event.
@@ -49,9 +49,9 @@ declare type RadioGroupProps = {
49
49
  */
50
50
  optionalItemLabel?: string;
51
51
  /**
52
- * If true, the component will be marked as readonly.
52
+ * If true, the component will not be mutable, meaning the user can not edit the control.
53
53
  */
54
- readonly?: boolean;
54
+ readOnly?: boolean;
55
55
  /**
56
56
  * Sets the orientation of the options within the radio group.
57
57
  */
@@ -97,18 +97,18 @@ declare type RadioGroupProps = {
97
97
  /**
98
98
  * Reference to the component.
99
99
  */
100
- export declare type RefType = HTMLDivElement;
100
+ export type RefType = HTMLDivElement;
101
101
  /**
102
102
  * Single radio prop types.
103
103
  */
104
- export declare type RadioProps = {
104
+ export type RadioProps = {
105
105
  label: string;
106
106
  checked: boolean;
107
107
  onClick: () => void;
108
108
  error?: string;
109
109
  disabled: boolean;
110
110
  focused: boolean;
111
- readonly: boolean;
111
+ readOnly: boolean;
112
112
  tabIndex: number;
113
113
  };
114
114
  export default RadioGroupProps;
@@ -0,0 +1,7 @@
1
+ import React from "react";
2
+ declare const icons: {
3
+ arrowUp: React.JSX.Element;
4
+ arrowDown: React.JSX.Element;
5
+ bothArrows: React.JSX.Element;
6
+ };
7
+ export default icons;
@@ -1,14 +1,11 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports["default"] = void 0;
9
-
10
8
  var _react = _interopRequireDefault(require("react"));
11
-
12
9
  var icons = {
13
10
  arrowUp: /*#__PURE__*/_react["default"].createElement("svg", {
14
11
  xmlns: "http://www.w3.org/2000/svg",
@@ -47,5 +44,4 @@ var icons = {
47
44
  d: "M12 5.83L15.17 9l1.41-1.41L12 3 7.41 7.59 8.83 9 12 5.83zm0 12.34L8.83 15l-1.41 1.41L12 21l4.59-4.59L15.17 15 12 18.17z"
48
45
  }))
49
46
  };
50
- var _default = icons;
51
- exports["default"] = _default;
47
+ var _default = exports["default"] = icons;
@@ -0,0 +1,284 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
5
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
6
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
7
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var _react2 = require("@testing-library/react");
10
+ var _axeHelper = require("../../test/accessibility/axe-helper.js");
11
+ var _ResultsetTable = _interopRequireDefault(require("./ResultsetTable"));
12
+ var _disabledRules = require("../../test/accessibility/rules/specific/resultset-table/disabledRules.js");
13
+ // TODO: REMOVE
14
+
15
+ var disabledRules = {
16
+ rules: _disabledRules.disabledRules.reduce(function (rulesObj, rule) {
17
+ rulesObj[rule] = {
18
+ enabled: false
19
+ };
20
+ return rulesObj;
21
+ }, {})
22
+ };
23
+ var deleteIcon = /*#__PURE__*/_react["default"].createElement("svg", {
24
+ xmlns: "http://www.w3.org/2000/svg",
25
+ height: "24",
26
+ viewBox: "0 0 24 24",
27
+ width: "24"
28
+ }, /*#__PURE__*/_react["default"].createElement("path", {
29
+ fill: "currentColor",
30
+ d: "M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zM19 4h-3.5l-1-1h-5l-1 1H5v2h14V4z"
31
+ }), /*#__PURE__*/_react["default"].createElement("path", {
32
+ d: "M0 0h24v24H0z",
33
+ fill: "none"
34
+ }));
35
+
36
+ // Mocking DOMRect for Radix Primitive Popover
37
+ global.globalThis = global;
38
+ global.DOMRect = {
39
+ fromRect: function fromRect() {
40
+ return {
41
+ top: 0,
42
+ left: 0,
43
+ bottom: 0,
44
+ right: 0,
45
+ width: 0,
46
+ height: 0
47
+ };
48
+ }
49
+ };
50
+ global.ResizeObserver = /*#__PURE__*/function () {
51
+ function ResizeObserver() {
52
+ (0, _classCallCheck2["default"])(this, ResizeObserver);
53
+ }
54
+ return (0, _createClass2["default"])(ResizeObserver, [{
55
+ key: "observe",
56
+ value: function observe() {}
57
+ }, {
58
+ key: "unobserve",
59
+ value: function unobserve() {}
60
+ }, {
61
+ key: "disconnect",
62
+ value: function disconnect() {}
63
+ }]);
64
+ }();
65
+ var actions = [{
66
+ title: "icon",
67
+ onClick: function onClick() {},
68
+ options: [{
69
+ value: "1",
70
+ label: "Amazon with a very long text"
71
+ }, {
72
+ value: "2",
73
+ label: "Ebay"
74
+ }, {
75
+ value: "3",
76
+ label: "Apple"
77
+ }]
78
+ }, {
79
+ icon: "https://www.freepnglogos.com/uploads/facebook-logo-design-1.png",
80
+ title: "icon",
81
+ onClick: function onClick() {}
82
+ }, {
83
+ icon: deleteIcon,
84
+ title: "icon",
85
+ onClick: function onClick() {},
86
+ disabled: true
87
+ }, {
88
+ icon: deleteIcon,
89
+ title: "icon",
90
+ onClick: function onClick() {}
91
+ }];
92
+ var columns = [{
93
+ displayValue: "Id",
94
+ isSortable: false
95
+ }, {
96
+ displayValue: "Name",
97
+ isSortable: true
98
+ }, {
99
+ displayValue: "City",
100
+ isSortable: false
101
+ }];
102
+ var rows = [[{
103
+ displayValue: "001",
104
+ sortValue: "001"
105
+ }, {
106
+ displayValue: "Peter",
107
+ sortValue: "Peter"
108
+ }, {
109
+ displayValue: "Oviedo",
110
+ sortValue: "Oviedo"
111
+ }, {
112
+ displayValue: /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"].ActionsCell, {
113
+ actions: actions
114
+ })
115
+ }], [{
116
+ displayValue: "002",
117
+ sortValue: "002"
118
+ }, {
119
+ displayValue: "Louis",
120
+ sortValue: "Louis"
121
+ }, {
122
+ displayValue: "Oviedo",
123
+ sortValue: "Oviedo"
124
+ }, {
125
+ displayValue: /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"].ActionsCell, {
126
+ actions: actions
127
+ })
128
+ }], [{
129
+ displayValue: "003",
130
+ sortValue: "003"
131
+ }, {
132
+ displayValue: "Lana",
133
+ sortValue: "Lana"
134
+ }, {
135
+ displayValue: "Albacete",
136
+ sortValue: "Albacete"
137
+ }, {
138
+ displayValue: /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"].ActionsCell, {
139
+ actions: actions
140
+ })
141
+ }], [{
142
+ displayValue: "004",
143
+ sortValue: "004"
144
+ }, {
145
+ displayValue: "Rick",
146
+ sortValue: "Rick"
147
+ }, {
148
+ displayValue: "Albacete",
149
+ sortValue: "Albacete"
150
+ }, {
151
+ displayValue: /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"].ActionsCell, {
152
+ actions: actions
153
+ })
154
+ }], [{
155
+ displayValue: "005",
156
+ sortValue: "005"
157
+ }, {
158
+ displayValue: "Mark",
159
+ sortValue: "Mark"
160
+ }, {
161
+ displayValue: "Madrid",
162
+ sortValue: "Madrid"
163
+ }, {
164
+ displayValue: /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"].ActionsCell, {
165
+ actions: actions
166
+ })
167
+ }], [{
168
+ displayValue: "006",
169
+ sortValue: "006"
170
+ }, {
171
+ displayValue: "Cris",
172
+ sortValue: "Cris"
173
+ }, {
174
+ displayValue: "Barcelona",
175
+ sortValue: "Barcelona"
176
+ }, {
177
+ displayValue: /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"].ActionsCell, {
178
+ actions: actions
179
+ })
180
+ }], [{
181
+ displayValue: "007",
182
+ sortValue: "007"
183
+ }, {
184
+ displayValue: "Susan",
185
+ sortValue: "Susan"
186
+ }, {
187
+ displayValue: "Madrid",
188
+ sortValue: "Madrid"
189
+ }, {
190
+ displayValue: /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"].ActionsCell, {
191
+ actions: actions
192
+ })
193
+ }], [{
194
+ displayValue: "008",
195
+ sortValue: "008"
196
+ }, {
197
+ displayValue: "Tina",
198
+ sortValue: "Tina"
199
+ }, {
200
+ displayValue: "Barcelona",
201
+ sortValue: "Barcelona"
202
+ }, {
203
+ displayValue: /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"].ActionsCell, {
204
+ actions: actions
205
+ })
206
+ }], [{
207
+ displayValue: "009",
208
+ sortValue: "009"
209
+ }, {
210
+ displayValue: "Kevin",
211
+ sortValue: "Kevin"
212
+ }, {
213
+ displayValue: "Oviedo",
214
+ sortValue: "Oviedo"
215
+ }, {
216
+ displayValue: /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"].ActionsCell, {
217
+ actions: actions
218
+ })
219
+ }], [{
220
+ displayValue: "010",
221
+ sortValue: "010"
222
+ }, {
223
+ displayValue: "Cosmin",
224
+ sortValue: "Cosmin"
225
+ }, {
226
+ displayValue: "Barcelona",
227
+ sortValue: "Barcelona"
228
+ }, {
229
+ displayValue: /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"].ActionsCell, {
230
+ actions: actions
231
+ })
232
+ }]];
233
+ describe("Resultset Table input component accessibility tests", function () {
234
+ it("Should not have basic accessibility issues", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
235
+ var _render, container, results;
236
+ return _regenerator["default"].wrap(function _callee$(_context) {
237
+ while (1) switch (_context.prev = _context.next) {
238
+ case 0:
239
+ _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"], {
240
+ columns: columns,
241
+ rows: rows,
242
+ itemsPerPage: 2,
243
+ margin: "medium",
244
+ mode: "default",
245
+ itemsPerPageOptions: [2, 3],
246
+ showGoToPage: true
247
+ })), container = _render.container;
248
+ _context.next = 3;
249
+ return (0, _axeHelper.axe)(container, disabledRules);
250
+ case 3:
251
+ results = _context.sent;
252
+ expect(results).toHaveNoViolations();
253
+ case 5:
254
+ case "end":
255
+ return _context.stop();
256
+ }
257
+ }, _callee);
258
+ })));
259
+ it("Should not have basic accessibility issues for reduced mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
260
+ var _render2, container, results;
261
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
262
+ while (1) switch (_context2.prev = _context2.next) {
263
+ case 0:
264
+ _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"], {
265
+ columns: columns,
266
+ rows: rows,
267
+ itemsPerPage: 2,
268
+ margin: "medium",
269
+ mode: "reduced",
270
+ itemsPerPageOptions: [2, 3],
271
+ showGoToPage: true
272
+ })), container = _render2.container;
273
+ _context2.next = 3;
274
+ return (0, _axeHelper.axe)(container, disabledRules);
275
+ case 3:
276
+ results = _context2.sent;
277
+ expect(results).toHaveNoViolations();
278
+ case 5:
279
+ case "end":
280
+ return _context2.stop();
281
+ }
282
+ }, _callee2);
283
+ })));
284
+ });
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ import ResultsetTablePropsType from "./types";
3
+ declare const DxcResultsetTable: {
4
+ ({ columns, rows, hidePaginator, showGoToPage, itemsPerPage, itemsPerPageOptions, itemsPerPageFunction, margin, tabIndex, mode, }: ResultsetTablePropsType): JSX.Element;
5
+ ActionsCell: ({ actions }: import("../table/types").ActionCellsPropsType) => JSX.Element;
6
+ };
7
+ export default DxcResultsetTable;
@@ -1,52 +1,34 @@
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 _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
-
14
10
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
-
16
11
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
17
-
18
12
  var _react = _interopRequireWildcard(require("react"));
19
-
20
13
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
-
22
14
  var _variables = require("../common/variables");
23
-
24
- var _Table = _interopRequireDefault(require("../table/Table"));
25
-
26
15
  var _Paginator = _interopRequireDefault(require("../paginator/Paginator"));
27
-
16
+ var _Table = _interopRequireWildcard(require("../table/Table"));
28
17
  var _useTheme = _interopRequireDefault(require("../useTheme"));
29
-
30
18
  var _Icons = _interopRequireDefault(require("./Icons"));
31
-
32
19
  var _utils = require("../common/utils");
33
-
20
+ var _coreTokens = _interopRequireDefault(require("../common/coreTokens"));
34
21
  var _templateObject, _templateObject2, _templateObject3;
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
-
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 && {}.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; }
40
24
  var normalizeSortValue = function normalizeSortValue(sortValue) {
41
25
  return typeof sortValue === "string" ? sortValue.toUpperCase() : sortValue;
42
26
  };
43
-
44
27
  var sortArray = function sortArray(index, order, resultset) {
45
28
  return resultset.slice().sort(function (element1, element2) {
46
- var sortValueA = normalizeSortValue(element1[index].sortValue || element1[index].displayValue);
47
- var sortValueB = normalizeSortValue(element2[index].sortValue || element2[index].displayValue);
29
+ var sortValueA = normalizeSortValue(element1.cells[index].sortValue || element1[index].displayValue);
30
+ var sortValueB = normalizeSortValue(element2.cells[index].sortValue || element2[index].displayValue);
48
31
  var comparison = 0;
49
-
50
32
  if ((0, _typeof2["default"])(sortValueA) === "object") {
51
33
  comparison = -1;
52
34
  } else if ((0, _typeof2["default"])(sortValueB) === "object") {
@@ -56,48 +38,59 @@ var sortArray = function sortArray(index, order, resultset) {
56
38
  } else if (sortValueA < sortValueB) {
57
39
  comparison = -1;
58
40
  }
59
-
60
41
  return order === "descending" ? comparison * -1 : comparison;
61
42
  });
62
43
  };
63
-
64
44
  var getMinItemsPerPageIndex = function getMinItemsPerPageIndex(currentPageInternal, itemsPerPage, page) {
65
45
  return currentPageInternal === 1 ? 0 : itemsPerPage * (page - 1);
66
46
  };
67
-
68
47
  var getMaxItemsPerPageIndex = function getMaxItemsPerPageIndex(minItemsPerPageIndex, itemsPerPage, resultset, page) {
69
48
  return minItemsPerPageIndex + itemsPerPage > resultset.length ? resultset.length : itemsPerPage * page - 1;
70
49
  };
71
-
50
+ var assignIdsToRows = function assignIdsToRows(resultset) {
51
+ if (resultset.length > 0) {
52
+ return resultset.map(function (row, index) {
53
+ return {
54
+ cells: row,
55
+ id: "row_".concat(index)
56
+ };
57
+ });
58
+ }
59
+ return [];
60
+ };
72
61
  var DxcResultsetTable = function DxcResultsetTable(_ref) {
73
62
  var columns = _ref.columns,
74
- rows = _ref.rows,
75
- _ref$showGoToPage = _ref.showGoToPage,
76
- showGoToPage = _ref$showGoToPage === void 0 ? true : _ref$showGoToPage,
77
- _ref$itemsPerPage = _ref.itemsPerPage,
78
- itemsPerPage = _ref$itemsPerPage === void 0 ? 5 : _ref$itemsPerPage,
79
- itemsPerPageOptions = _ref.itemsPerPageOptions,
80
- itemsPerPageFunction = _ref.itemsPerPageFunction,
81
- margin = _ref.margin,
82
- _ref$tabIndex = _ref.tabIndex,
83
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
63
+ rows = _ref.rows,
64
+ _ref$hidePaginator = _ref.hidePaginator,
65
+ hidePaginator = _ref$hidePaginator === void 0 ? false : _ref$hidePaginator,
66
+ _ref$showGoToPage = _ref.showGoToPage,
67
+ showGoToPage = _ref$showGoToPage === void 0 ? true : _ref$showGoToPage,
68
+ _ref$itemsPerPage = _ref.itemsPerPage,
69
+ itemsPerPage = _ref$itemsPerPage === void 0 ? 5 : _ref$itemsPerPage,
70
+ itemsPerPageOptions = _ref.itemsPerPageOptions,
71
+ itemsPerPageFunction = _ref.itemsPerPageFunction,
72
+ margin = _ref.margin,
73
+ _ref$tabIndex = _ref.tabIndex,
74
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex,
75
+ _ref$mode = _ref.mode,
76
+ mode = _ref$mode === void 0 ? "default" : _ref$mode;
84
77
  var colorsTheme = (0, _useTheme["default"])();
85
-
86
78
  var _useState = (0, _react.useState)(1),
87
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
88
- page = _useState2[0],
89
- changePage = _useState2[1];
90
-
79
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
80
+ page = _useState2[0],
81
+ changePage = _useState2[1];
91
82
  var _useState3 = (0, _react.useState)(-1),
92
- _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
93
- sortColumnIndex = _useState4[0],
94
- changeSortColumnIndex = _useState4[1];
95
-
83
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
84
+ sortColumnIndex = _useState4[0],
85
+ changeSortColumnIndex = _useState4[1];
96
86
  var _useState5 = (0, _react.useState)("ascending"),
97
- _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
98
- sortOrder = _useState6[0],
99
- changeSortOrder = _useState6[1];
100
-
87
+ _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
88
+ sortOrder = _useState6[0],
89
+ changeSortOrder = _useState6[1];
90
+ var prevRowCountRef = (0, _react.useRef)(rows.length);
91
+ var rowsWithIds = (0, _react.useMemo)(function () {
92
+ return assignIdsToRows(rows);
93
+ }, [rows]);
101
94
  var minItemsPerPageIndex = (0, _react.useMemo)(function () {
102
95
  return getMinItemsPerPageIndex(page, itemsPerPage, page);
103
96
  }, [itemsPerPage, page]);
@@ -105,30 +98,40 @@ var DxcResultsetTable = function DxcResultsetTable(_ref) {
105
98
  return getMaxItemsPerPageIndex(minItemsPerPageIndex, itemsPerPage, rows, page);
106
99
  }, [itemsPerPage, minItemsPerPageIndex, page, rows]);
107
100
  var sortedResultset = (0, _react.useMemo)(function () {
108
- return sortColumnIndex !== -1 ? sortArray(sortColumnIndex, sortOrder, rows) : rows;
109
- }, [sortColumnIndex, sortOrder, rows]);
101
+ return sortColumnIndex !== -1 ? sortArray(sortColumnIndex, sortOrder, rowsWithIds) : rowsWithIds;
102
+ }, [sortColumnIndex, sortOrder, rowsWithIds]);
110
103
  var filteredResultset = (0, _react.useMemo)(function () {
111
104
  return sortedResultset && sortedResultset.slice(minItemsPerPageIndex, maxItemsPerPageIndex + 1);
112
105
  }, [sortedResultset, minItemsPerPageIndex, maxItemsPerPageIndex]);
113
-
114
106
  var goToPage = function goToPage(newPage) {
115
107
  changePage(newPage);
116
108
  };
117
-
118
109
  var changeSorting = function changeSorting(columnIndex) {
119
110
  changePage(1);
120
111
  changeSortColumnIndex(columnIndex);
121
112
  changeSortOrder(sortColumnIndex === -1 || sortColumnIndex !== columnIndex ? "ascending" : sortOrder === "ascending" ? "descending" : "ascending");
122
113
  };
123
-
124
114
  (0, _react.useEffect)(function () {
125
- rows.length > 0 ? changePage(1) : changePage(0);
126
- }, [rows]);
115
+ if (!hidePaginator) {
116
+ if (rows.length === 0) {
117
+ changePage(0);
118
+ } else if (rows.length < prevRowCountRef.current) {
119
+ var lastPage = Math.ceil(rows.length / itemsPerPage);
120
+ var prevLastPage = Math.ceil(prevRowCountRef.current / itemsPerPage);
121
+ if (lastPage < prevLastPage) {
122
+ changePage(Math.min(lastPage, page));
123
+ }
124
+ }
125
+ prevRowCountRef.current = rows.length;
126
+ }
127
+ }, [rows.length]);
127
128
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
128
129
  theme: colorsTheme.table
129
130
  }, /*#__PURE__*/_react["default"].createElement(DxcResultsetTableContainer, {
130
131
  margin: margin
131
- }, /*#__PURE__*/_react["default"].createElement(_Table["default"], null, /*#__PURE__*/_react["default"].createElement("thead", null, /*#__PURE__*/_react["default"].createElement("tr", null, columns.map(function (column, index) {
132
+ }, /*#__PURE__*/_react["default"].createElement(_Table["default"], {
133
+ mode: mode
134
+ }, /*#__PURE__*/_react["default"].createElement("thead", null, /*#__PURE__*/_react["default"].createElement("tr", null, columns.map(function (column, index) {
132
135
  return /*#__PURE__*/_react["default"].createElement("th", {
133
136
  key: "tableHeader_".concat(index),
134
137
  "aria-sort": column.isSortable ? sortColumnIndex === index ? sortOrder : "none" : undefined
@@ -139,17 +142,19 @@ var DxcResultsetTable = function DxcResultsetTable(_ref) {
139
142
  column.isSortable && changeSorting(index);
140
143
  },
141
144
  tabIndex: column.isSortable ? tabIndex : -1,
142
- isSortable: column.isSortable
145
+ isSortable: column.isSortable,
146
+ mode: mode,
147
+ "aria-label": column.isSortable ? "Sort column" : undefined
143
148
  }, /*#__PURE__*/_react["default"].createElement("span", null, column.displayValue), column.isSortable && /*#__PURE__*/_react["default"].createElement(SortIcon, null, sortColumnIndex === index ? sortOrder === "ascending" ? _Icons["default"].arrowUp : _Icons["default"].arrowDown : _Icons["default"].bothArrows)));
144
- }))), /*#__PURE__*/_react["default"].createElement("tbody", null, filteredResultset.map(function (cells, index) {
149
+ }))), /*#__PURE__*/_react["default"].createElement("tbody", null, filteredResultset.map(function (row) {
145
150
  return /*#__PURE__*/_react["default"].createElement("tr", {
146
- key: "resultSetTableCell_".concat(index)
147
- }, cells.map(function (cellContent, index) {
151
+ key: "resultSetTableCell_".concat(row.id)
152
+ }, row.cells.map(function (cellContent, cellIndex) {
148
153
  return /*#__PURE__*/_react["default"].createElement("td", {
149
- key: "resultSetTableCellContent_".concat(index)
154
+ key: "resultSetTableCellContent_".concat(cellIndex)
150
155
  }, cellContent.displayValue);
151
156
  }));
152
- }))), /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
157
+ }))), !hidePaginator && /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
153
158
  totalItems: rows.length,
154
159
  itemsPerPage: itemsPerPage,
155
160
  itemsPerPageOptions: itemsPerPageOptions,
@@ -160,11 +165,9 @@ var DxcResultsetTable = function DxcResultsetTable(_ref) {
160
165
  tabIndex: tabIndex
161
166
  })));
162
167
  };
163
-
164
168
  var calculateWidth = function calculateWidth(margin) {
165
169
  return "calc(100% - ".concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
166
170
  };
167
-
168
171
  var DxcResultsetTableContainer = _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"])), function (props) {
169
172
  return calculateWidth(props.margin);
170
173
  }, function (props) {
@@ -178,18 +181,15 @@ var DxcResultsetTableContainer = _styledComponents["default"].div(_templateObjec
178
181
  }, function (props) {
179
182
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
180
183
  });
181
-
182
- var HeaderContainer = _styledComponents["default"].span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: ", ";\n gap: 8px;\n width: fit-content;\n border: 1px solid transparent;\n border-radius: 2px;\n padding: 3px;\n cursor: ", ";\n\n ", "\n"])), function (props) {
184
+ var HeaderContainer = _styledComponents["default"].span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: ", ";\n gap: ", ";\n width: fit-content;\n border: 1px solid transparent;\n border-radius: 2px;\n cursor: ", ";\n\n ", "\n"])), function (props) {
183
185
  return props.theme.headerTextAlign === "center" ? "center" : props.theme.headerTextAlign === "right" ? "flex-end" : "flex-start";
184
- }, function (props) {
186
+ }, _coreTokens["default"].spacing_8, function (props) {
185
187
  return props.isSortable ? "pointer" : "default";
186
188
  }, function (props) {
187
189
  return props.isSortable && "&:focus {\n outline: #0095ff solid 2px;\n }";
188
190
  });
189
-
190
191
  var SortIcon = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n height: 14px;\n width: 14px;\n color: ", ";\n\n svg {\n height: 100%;\n width: 100%;\n }\n"])), function (props) {
191
192
  return props.theme.sortIconColor;
192
193
  });
193
-
194
- var _default = DxcResultsetTable;
195
- exports["default"] = _default;
194
+ DxcResultsetTable.ActionsCell = _Table.DxcActionsCell;
195
+ var _default = exports["default"] = DxcResultsetTable;