@dxc-technology/halstack-react 0.0.0-c6243ef → 0.0.0-c680086

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 (411) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +47 -0
  3. package/ThemeContext.d.ts +15 -0
  4. package/ThemeContext.js +243 -0
  5. package/{dist/select/Select.js → V3Select/V3Select.js} +40 -134
  6. package/V3Select/index.d.ts +27 -0
  7. package/{dist/textarea/Textarea.js → V3Textarea/V3Textarea.js} +16 -20
  8. package/V3Textarea/index.d.ts +27 -0
  9. package/accordion/Accordion.d.ts +4 -0
  10. package/accordion/Accordion.js +247 -0
  11. package/accordion/Accordion.stories.tsx +307 -0
  12. package/accordion/types.d.ts +64 -0
  13. package/accordion/types.js +5 -0
  14. package/accordion-group/AccordionGroup.d.ts +7 -0
  15. package/accordion-group/AccordionGroup.js +170 -0
  16. package/accordion-group/AccordionGroup.stories.tsx +225 -0
  17. package/accordion-group/types.d.ts +68 -0
  18. package/accordion-group/types.js +5 -0
  19. package/alert/Alert.d.ts +4 -0
  20. package/{dist/alert → alert}/Alert.js +40 -153
  21. package/alert/Alert.stories.tsx +170 -0
  22. package/alert/types.d.ts +49 -0
  23. package/alert/types.js +5 -0
  24. package/badge/Badge.js +59 -0
  25. package/bleed/Bleed.d.ts +3 -0
  26. package/bleed/Bleed.js +84 -0
  27. package/bleed/Bleed.stories.tsx +342 -0
  28. package/bleed/types.d.ts +13 -0
  29. package/bleed/types.js +5 -0
  30. package/box/Box.d.ts +4 -0
  31. package/{dist/box → box}/Box.js +15 -45
  32. package/box/Box.stories.tsx +132 -0
  33. package/box/types.d.ts +43 -0
  34. package/box/types.js +5 -0
  35. package/button/Button.d.ts +4 -0
  36. package/{dist/button → button}/Button.js +27 -94
  37. package/button/Button.stories.tsx +274 -0
  38. package/button/types.d.ts +53 -0
  39. package/button/types.js +5 -0
  40. package/card/Card.d.ts +4 -0
  41. package/{dist/card → card}/Card.js +34 -124
  42. package/card/Card.stories.tsx +201 -0
  43. package/card/ice-cream.jpg +0 -0
  44. package/card/types.d.ts +67 -0
  45. package/card/types.js +5 -0
  46. package/checkbox/Checkbox.d.ts +4 -0
  47. package/{dist/checkbox → checkbox}/Checkbox.js +18 -65
  48. package/checkbox/Checkbox.stories.tsx +192 -0
  49. package/checkbox/types.d.ts +60 -0
  50. package/checkbox/types.js +5 -0
  51. package/chip/Chip.d.ts +4 -0
  52. package/chip/Chip.js +161 -0
  53. package/chip/Chip.stories.tsx +119 -0
  54. package/chip/types.d.ts +45 -0
  55. package/chip/types.js +5 -0
  56. package/{dist/common → common}/OpenSans.css +0 -0
  57. package/{dist/common → common}/RequiredComponent.js +3 -11
  58. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  59. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  60. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  61. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  62. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  63. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  64. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  65. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  66. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  67. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  68. package/{dist/common → common}/utils.js +0 -0
  69. package/{dist/common → common}/variables.js +216 -174
  70. package/{dist/date → date}/Date.js +17 -23
  71. package/date/index.d.ts +27 -0
  72. package/date-input/DateInput.d.ts +4 -0
  73. package/{dist/new-date/NewDate.js → date-input/DateInput.js} +64 -106
  74. package/date-input/DateInput.stories.tsx +138 -0
  75. package/date-input/types.d.ts +100 -0
  76. package/date-input/types.js +5 -0
  77. package/dialog/Dialog.d.ts +4 -0
  78. package/{dist/dialog → dialog}/Dialog.js +24 -76
  79. package/dialog/Dialog.stories.tsx +212 -0
  80. package/dialog/types.d.ts +43 -0
  81. package/dialog/types.js +5 -0
  82. package/dropdown/Dropdown.d.ts +4 -0
  83. package/{dist/dropdown → dropdown}/Dropdown.js +48 -197
  84. package/dropdown/Dropdown.stories.tsx +249 -0
  85. package/dropdown/types.d.ts +80 -0
  86. package/dropdown/types.js +5 -0
  87. package/file-input/FileInput.d.ts +4 -0
  88. package/file-input/FileInput.js +590 -0
  89. package/file-input/FileInput.stories.tsx +507 -0
  90. package/file-input/FileItem.d.ts +14 -0
  91. package/file-input/FileItem.js +184 -0
  92. package/file-input/types.d.ts +112 -0
  93. package/file-input/types.js +5 -0
  94. package/footer/Footer.d.ts +4 -0
  95. package/footer/Footer.js +258 -0
  96. package/footer/Footer.stories.tsx +130 -0
  97. package/footer/Icons.d.ts +2 -0
  98. package/footer/Icons.js +77 -0
  99. package/footer/types.d.ts +65 -0
  100. package/footer/types.js +5 -0
  101. package/header/Header.d.ts +7 -0
  102. package/header/Header.js +324 -0
  103. package/header/Header.stories.tsx +162 -0
  104. package/header/Icons.d.ts +2 -0
  105. package/header/Icons.js +34 -0
  106. package/header/types.d.ts +47 -0
  107. package/header/types.js +5 -0
  108. package/heading/Heading.d.ts +4 -0
  109. package/{dist/heading → heading}/Heading.js +31 -90
  110. package/heading/Heading.stories.tsx +54 -0
  111. package/heading/types.d.ts +33 -0
  112. package/heading/types.js +5 -0
  113. package/input-text/Icons.js +22 -0
  114. package/{dist/input-text → input-text}/InputText.js +39 -135
  115. package/input-text/index.d.ts +36 -0
  116. package/inset/Inset.d.ts +3 -0
  117. package/inset/Inset.js +84 -0
  118. package/inset/Inset.stories.tsx +229 -0
  119. package/inset/types.d.ts +13 -0
  120. package/inset/types.js +5 -0
  121. package/layout/ApplicationLayout.d.ts +10 -0
  122. package/{dist/layout → layout}/ApplicationLayout.js +43 -149
  123. package/layout/ApplicationLayout.stories.tsx +171 -0
  124. package/layout/Icons.js +55 -0
  125. package/layout/types.d.ts +57 -0
  126. package/layout/types.js +5 -0
  127. package/link/Link.d.ts +3 -0
  128. package/{dist/link → link}/Link.js +22 -106
  129. package/link/Link.stories.tsx +151 -0
  130. package/link/types.d.ts +70 -0
  131. package/link/types.js +5 -0
  132. package/list/List.d.ts +4 -0
  133. package/list/List.js +47 -0
  134. package/list/List.stories.tsx +95 -0
  135. package/list/types.d.ts +7 -0
  136. package/list/types.js +5 -0
  137. package/main.d.ts +49 -0
  138. package/{dist/main.js → main.js} +130 -94
  139. package/number-input/NumberInput.d.ts +4 -0
  140. package/number-input/NumberInput.js +83 -0
  141. package/number-input/NumberInput.stories.tsx +115 -0
  142. package/number-input/NumberInputContext.d.ts +4 -0
  143. package/{dist/number/NumberContext.js → number-input/NumberInputContext.js} +6 -3
  144. package/number-input/numberInputContextTypes.d.ts +19 -0
  145. package/number-input/numberInputContextTypes.js +5 -0
  146. package/number-input/types.d.ts +117 -0
  147. package/number-input/types.js +5 -0
  148. package/package.json +34 -25
  149. package/paginator/Icons.js +66 -0
  150. package/paginator/Paginator.d.ts +4 -0
  151. package/paginator/Paginator.js +192 -0
  152. package/paginator/Paginator.stories.tsx +63 -0
  153. package/paginator/types.d.ts +38 -0
  154. package/paginator/types.js +5 -0
  155. package/password-input/PasswordInput.d.ts +4 -0
  156. package/{dist/password-input → password-input}/PasswordInput.js +43 -78
  157. package/password-input/PasswordInput.stories.tsx +131 -0
  158. package/password-input/types.d.ts +107 -0
  159. package/password-input/types.js +5 -0
  160. package/progress-bar/ProgressBar.d.ts +4 -0
  161. package/{dist/progress-bar → progress-bar}/ProgressBar.js +22 -94
  162. package/progress-bar/ProgressBar.stories.jsx +58 -0
  163. package/progress-bar/types.d.ts +37 -0
  164. package/progress-bar/types.js +5 -0
  165. package/radio/Radio.d.ts +4 -0
  166. package/{dist/radio → radio}/Radio.js +17 -52
  167. package/radio/Radio.stories.tsx +192 -0
  168. package/radio/types.d.ts +54 -0
  169. package/radio/types.js +5 -0
  170. package/radio-group/Radio.d.ts +4 -0
  171. package/radio-group/Radio.js +140 -0
  172. package/radio-group/RadioGroup.d.ts +4 -0
  173. package/radio-group/RadioGroup.js +273 -0
  174. package/radio-group/RadioGroup.stories.tsx +79 -0
  175. package/radio-group/RadioGroup.test.js +248 -0
  176. package/radio-group/types.d.ts +36 -0
  177. package/radio-group/types.js +5 -0
  178. package/resultsetTable/ResultsetTable.d.ts +4 -0
  179. package/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +43 -147
  180. package/resultsetTable/ResultsetTable.stories.tsx +275 -0
  181. package/resultsetTable/types.d.ts +67 -0
  182. package/resultsetTable/types.js +5 -0
  183. package/row/Row.d.ts +3 -0
  184. package/row/Row.js +127 -0
  185. package/row/Row.stories.tsx +237 -0
  186. package/row/types.d.ts +10 -0
  187. package/row/types.js +5 -0
  188. package/select/Select.d.ts +4 -0
  189. package/select/Select.js +863 -0
  190. package/select/Select.stories.tsx +572 -0
  191. package/select/types.d.ts +170 -0
  192. package/select/types.js +5 -0
  193. package/sidenav/Sidenav.d.ts +9 -0
  194. package/{dist/sidenav → sidenav}/Sidenav.js +21 -64
  195. package/sidenav/Sidenav.stories.tsx +182 -0
  196. package/sidenav/types.d.ts +50 -0
  197. package/sidenav/types.js +5 -0
  198. package/slider/Slider.d.ts +4 -0
  199. package/{dist/slider → slider}/Slider.js +78 -155
  200. package/slider/Slider.stories.tsx +177 -0
  201. package/slider/types.d.ts +78 -0
  202. package/slider/types.js +5 -0
  203. package/spinner/Spinner.d.ts +4 -0
  204. package/spinner/Spinner.js +250 -0
  205. package/spinner/Spinner.stories.jsx +103 -0
  206. package/spinner/types.d.ts +32 -0
  207. package/spinner/types.js +5 -0
  208. package/stack/Stack.d.ts +3 -0
  209. package/stack/Stack.js +97 -0
  210. package/stack/Stack.stories.tsx +164 -0
  211. package/stack/types.d.ts +9 -0
  212. package/stack/types.js +5 -0
  213. package/switch/Switch.d.ts +4 -0
  214. package/{dist/switch → switch}/Switch.js +28 -71
  215. package/switch/Switch.stories.tsx +160 -0
  216. package/switch/types.d.ts +58 -0
  217. package/switch/types.js +5 -0
  218. package/table/Table.d.ts +4 -0
  219. package/{dist/table → table}/Table.js +12 -26
  220. package/table/Table.stories.jsx +277 -0
  221. package/table/types.d.ts +21 -0
  222. package/table/types.js +5 -0
  223. package/tabs/Tabs.d.ts +4 -0
  224. package/tabs/Tabs.js +213 -0
  225. package/tabs/Tabs.stories.tsx +120 -0
  226. package/tabs/types.d.ts +78 -0
  227. package/tabs/types.js +5 -0
  228. package/tag/Tag.d.ts +4 -0
  229. package/tag/Tag.js +188 -0
  230. package/tag/Tag.stories.tsx +138 -0
  231. package/tag/types.d.ts +69 -0
  232. package/tag/types.js +5 -0
  233. package/text/Text.d.ts +7 -0
  234. package/text/Text.js +30 -0
  235. package/text/Text.stories.tsx +19 -0
  236. package/text-input/TextInput.d.ts +4 -0
  237. package/text-input/TextInput.js +794 -0
  238. package/text-input/TextInput.stories.tsx +456 -0
  239. package/text-input/types.d.ts +159 -0
  240. package/text-input/types.js +5 -0
  241. package/textarea/Textarea.d.ts +4 -0
  242. package/{dist/new-textarea/NewTextarea.js → textarea/Textarea.js} +40 -125
  243. package/textarea/Textarea.stories.jsx +136 -0
  244. package/textarea/types.d.ts +130 -0
  245. package/textarea/types.js +5 -0
  246. package/{dist/toggle → toggle}/Toggle.js +16 -50
  247. package/toggle/index.d.ts +21 -0
  248. package/toggle-group/ToggleGroup.d.ts +4 -0
  249. package/{dist/toggle-group → toggle-group}/ToggleGroup.js +35 -148
  250. package/toggle-group/ToggleGroup.stories.tsx +173 -0
  251. package/toggle-group/types.d.ts +97 -0
  252. package/toggle-group/types.js +5 -0
  253. package/{dist/upload → upload}/Upload.js +11 -15
  254. package/upload/buttons-upload/ButtonsUpload.js +111 -0
  255. package/upload/buttons-upload/Icons.js +40 -0
  256. package/upload/dragAndDropArea/DragAndDropArea.js +225 -0
  257. package/upload/dragAndDropArea/Icons.js +39 -0
  258. package/upload/file-upload/FileToUpload.js +115 -0
  259. package/upload/file-upload/Icons.js +66 -0
  260. package/{dist/upload → upload}/files-upload/FilesToUpload.js +13 -27
  261. package/upload/index.d.ts +15 -0
  262. package/upload/transaction/Icons.js +160 -0
  263. package/upload/transaction/Transaction.js +104 -0
  264. package/upload/transactions/Transactions.js +94 -0
  265. package/useTheme.d.ts +2 -0
  266. package/{dist/useTheme.js → useTheme.js} +1 -1
  267. package/wizard/Wizard.d.ts +4 -0
  268. package/wizard/Wizard.js +281 -0
  269. package/wizard/Wizard.stories.tsx +224 -0
  270. package/wizard/types.d.ts +60 -0
  271. package/wizard/types.js +5 -0
  272. package/README.md +0 -66
  273. package/babel.config.js +0 -8
  274. package/dist/BackgroundColorContext.js +0 -46
  275. package/dist/ThemeContext.js +0 -248
  276. package/dist/accordion/Accordion.js +0 -353
  277. package/dist/accordion-group/AccordionGroup.js +0 -186
  278. package/dist/alert/index.d.ts +0 -51
  279. package/dist/badge/Badge.js +0 -63
  280. package/dist/checkbox/Checkbox.stories.js +0 -144
  281. package/dist/checkbox/readme.md +0 -116
  282. package/dist/chip/Chip.js +0 -265
  283. package/dist/date/Date.stories.js +0 -205
  284. package/dist/date/readme.md +0 -73
  285. package/dist/file-input/FileInput.js +0 -644
  286. package/dist/file-input/FileItem.js +0 -280
  287. package/dist/file-input/index.d.ts +0 -81
  288. package/dist/footer/Footer.js +0 -395
  289. package/dist/footer/dxc_logo.svg +0 -15
  290. package/dist/footer/readme.md +0 -41
  291. package/dist/header/Header.js +0 -403
  292. package/dist/header/Header.stories.js +0 -176
  293. package/dist/header/close_icon.svg +0 -1
  294. package/dist/header/dxc_logo_black.svg +0 -8
  295. package/dist/header/hamb_menu_black.svg +0 -1
  296. package/dist/header/hamb_menu_white.svg +0 -1
  297. package/dist/header/readme.md +0 -33
  298. package/dist/input-text/error.svg +0 -1
  299. package/dist/input-text/readme.md +0 -91
  300. package/dist/layout/facebook.svg +0 -45
  301. package/dist/layout/linkedin.svg +0 -50
  302. package/dist/layout/twitter.svg +0 -53
  303. package/dist/link/readme.md +0 -51
  304. package/dist/main.d.ts +0 -8
  305. package/dist/new-date/index.d.ts +0 -95
  306. package/dist/new-select/NewSelect.js +0 -836
  307. package/dist/new-select/index.d.ts +0 -53
  308. package/dist/new-textarea/index.d.ts +0 -117
  309. package/dist/number/Number.js +0 -136
  310. package/dist/number/index.d.ts +0 -113
  311. package/dist/paginator/Paginator.js +0 -289
  312. package/dist/paginator/images/next.svg +0 -3
  313. package/dist/paginator/images/nextPage.svg +0 -3
  314. package/dist/paginator/images/previous.svg +0 -3
  315. package/dist/paginator/images/previousPage.svg +0 -3
  316. package/dist/paginator/readme.md +0 -50
  317. package/dist/password-input/index.d.ts +0 -94
  318. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  319. package/dist/progress-bar/readme.md +0 -63
  320. package/dist/radio/Radio.stories.js +0 -166
  321. package/dist/radio/readme.md +0 -70
  322. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  323. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  324. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  325. package/dist/slider/Slider.stories.js +0 -241
  326. package/dist/slider/readme.md +0 -64
  327. package/dist/spinner/Spinner.js +0 -381
  328. package/dist/spinner/Spinner.stories.js +0 -183
  329. package/dist/spinner/readme.md +0 -65
  330. package/dist/switch/Switch.stories.js +0 -134
  331. package/dist/switch/readme.md +0 -133
  332. package/dist/tabs/Tabs.js +0 -343
  333. package/dist/tabs/Tabs.stories.js +0 -130
  334. package/dist/tabs/readme.md +0 -78
  335. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  336. package/dist/tabs-for-sections/readme.md +0 -78
  337. package/dist/tag/Tag.js +0 -282
  338. package/dist/text-input/TextInput.js +0 -971
  339. package/dist/text-input/index.d.ts +0 -135
  340. package/dist/toggle/Toggle.stories.js +0 -297
  341. package/dist/toggle/readme.md +0 -80
  342. package/dist/upload/Upload.stories.js +0 -72
  343. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -139
  344. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  345. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  346. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  347. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  348. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  349. package/dist/upload/file-upload/FileToUpload.js +0 -184
  350. package/dist/upload/file-upload/audio-icon.svg +0 -4
  351. package/dist/upload/file-upload/close.svg +0 -4
  352. package/dist/upload/file-upload/file-icon.svg +0 -4
  353. package/dist/upload/file-upload/video-icon.svg +0 -4
  354. package/dist/upload/readme.md +0 -37
  355. package/dist/upload/transaction/Transaction.js +0 -175
  356. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  357. package/dist/upload/transaction/audio-icon.svg +0 -4
  358. package/dist/upload/transaction/error-icon.svg +0 -4
  359. package/dist/upload/transaction/file-icon-err.svg +0 -4
  360. package/dist/upload/transaction/file-icon.svg +0 -4
  361. package/dist/upload/transaction/image-icon-err.svg +0 -4
  362. package/dist/upload/transaction/image-icon.svg +0 -4
  363. package/dist/upload/transaction/success-icon.svg +0 -4
  364. package/dist/upload/transaction/video-icon-err.svg +0 -4
  365. package/dist/upload/transaction/video-icon.svg +0 -4
  366. package/dist/upload/transactions/Transactions.js +0 -138
  367. package/dist/wizard/Wizard.js +0 -411
  368. package/dist/wizard/invalid_icon.svg +0 -5
  369. package/dist/wizard/valid_icon.svg +0 -5
  370. package/dist/wizard/validation-wrong.svg +0 -6
  371. package/test/Accordion.test.js +0 -33
  372. package/test/AccordionGroup.test.js +0 -125
  373. package/test/Alert.test.js +0 -53
  374. package/test/Box.test.js +0 -10
  375. package/test/Button.test.js +0 -18
  376. package/test/Card.test.js +0 -30
  377. package/test/Checkbox.test.js +0 -45
  378. package/test/Chip.test.js +0 -25
  379. package/test/Date.test.js +0 -393
  380. package/test/Dialog.test.js +0 -23
  381. package/test/Dropdown.test.js +0 -145
  382. package/test/FileInput.test.js +0 -201
  383. package/test/Footer.test.js +0 -99
  384. package/test/Header.test.js +0 -39
  385. package/test/Heading.test.js +0 -35
  386. package/test/InputText.test.js +0 -240
  387. package/test/Link.test.js +0 -43
  388. package/test/NewDate.test.js +0 -232
  389. package/test/NewTextarea.test.js +0 -195
  390. package/test/Number.test.js +0 -257
  391. package/test/Paginator.test.js +0 -177
  392. package/test/PasswordInput.test.js +0 -83
  393. package/test/ProgressBar.test.js +0 -35
  394. package/test/Radio.test.js +0 -37
  395. package/test/ResultsetTable.test.js +0 -329
  396. package/test/Select.test.js +0 -212
  397. package/test/Sidenav.test.js +0 -45
  398. package/test/Slider.test.js +0 -82
  399. package/test/Spinner.test.js +0 -32
  400. package/test/Switch.test.js +0 -45
  401. package/test/Table.test.js +0 -36
  402. package/test/Tabs.test.js +0 -109
  403. package/test/TabsForSections.test.js +0 -34
  404. package/test/Tag.test.js +0 -32
  405. package/test/TextArea.test.js +0 -52
  406. package/test/TextInput.test.js +0 -732
  407. package/test/ToggleGroup.test.js +0 -85
  408. package/test/Upload.test.js +0 -60
  409. package/test/Wizard.test.js +0 -130
  410. package/test/mocks/pngMock.js +0 -1
  411. package/test/mocks/svgMock.js +0 -1
@@ -1,16 +1,14 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
-
5
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
4
 
5
+ var _typeof3 = require("@babel/runtime/helpers/typeof");
6
+
7
7
  Object.defineProperty(exports, "__esModule", {
8
8
  value: true
9
9
  });
10
10
  exports["default"] = void 0;
11
11
 
12
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
-
14
12
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
13
 
16
14
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
@@ -21,105 +19,19 @@ var _react = _interopRequireWildcard(require("react"));
21
19
 
22
20
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
23
21
 
24
- var _propTypes = _interopRequireDefault(require("prop-types"));
25
-
26
22
  var _variables = require("../common/variables.js");
27
23
 
28
24
  var _Table = _interopRequireDefault(require("../table/Table"));
29
25
 
30
26
  var _Paginator = _interopRequireDefault(require("../paginator/Paginator"));
31
27
 
32
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
33
-
34
- function _templateObject9() {
35
- var data = (0, _taggedTemplateLiteral2["default"])(["\n font-size: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n overflow: hidden;\n"]);
36
-
37
- _templateObject9 = function _templateObject9() {
38
- return data;
39
- };
40
-
41
- return data;
42
- }
43
-
44
- function _templateObject8() {
45
- var data = (0, _taggedTemplateLiteral2["default"])(["\n height: 60px;\n"]);
46
-
47
- _templateObject8 = function _templateObject8() {
48
- return data;
49
- };
50
-
51
- return data;
52
- }
53
-
54
- function _templateObject7() {
55
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: ", ";\n width: 100%;\n"]);
56
-
57
- _templateObject7 = function _templateObject7() {
58
- return data;
59
- };
60
-
61
- return data;
62
- }
63
-
64
- function _templateObject6() {
65
- var data = (0, _taggedTemplateLiteral2["default"])([""]);
66
-
67
- _templateObject6 = function _templateObject6() {
68
- return data;
69
- };
70
-
71
- return data;
72
- }
73
-
74
- function _templateObject5() {
75
- var data = (0, _taggedTemplateLiteral2["default"])(["\n cursor: ", ";\n"]);
28
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
76
29
 
77
- _templateObject5 = function _templateObject5() {
78
- return data;
79
- };
80
-
81
- return data;
82
- }
83
-
84
- function _templateObject4() {
85
- var data = (0, _taggedTemplateLiteral2["default"])(["\n top: 409px;\n left: 390px;\n height: 14px;\n cursor: pointer;\n color: ", ";\n\n svg {\n height: 100%;\n width: 100%;\n }\n"]);
30
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9;
86
31
 
87
- _templateObject4 = function _templateObject4() {
88
- return data;
89
- };
90
-
91
- return data;
92
- }
32
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
93
33
 
94
- function _templateObject3() {
95
- var data = (0, _taggedTemplateLiteral2["default"])(["\n > div:nth-child(1) {\n position: absolute;\n left: calc(50% - 68.5px);\n bottom: calc(50% - 68.5px - 30px);\n }\n & tr {\n height: ", ";\n }\n"]);
96
-
97
- _templateObject3 = function _templateObject3() {
98
- return data;
99
- };
100
-
101
- return data;
102
- }
103
-
104
- function _templateObject2() {
105
- var data = (0, _taggedTemplateLiteral2["default"])([""]);
106
-
107
- _templateObject2 = function _templateObject2() {
108
- return data;
109
- };
110
-
111
- return data;
112
- }
113
-
114
- function _templateObject() {
115
- var data = (0, _taggedTemplateLiteral2["default"])(["\n & table {\n table-layout: auto;\n }\n"]);
116
-
117
- _templateObject = function _templateObject() {
118
- return data;
119
- };
120
-
121
- return data;
122
- }
34
+ 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; }
123
35
 
124
36
  function normalizeSortValue(sortValue) {
125
37
  return typeof sortValue === "string" ? sortValue.toUpperCase() : sortValue;
@@ -154,46 +66,46 @@ var getMaxItemsPerPageIndex = function getMaxItemsPerPageIndex(minItemsPerPageIn
154
66
  };
155
67
 
156
68
  var ArrowUp = function ArrowUp() {
157
- return _react["default"].createElement("svg", {
69
+ return /*#__PURE__*/_react["default"].createElement("svg", {
158
70
  xmlns: "http://www.w3.org/2000/svg",
159
71
  height: "24",
160
72
  viewBox: "0 0 24 24",
161
73
  width: "24",
162
74
  fill: "currentColor"
163
- }, _react["default"].createElement("path", {
75
+ }, /*#__PURE__*/_react["default"].createElement("path", {
164
76
  d: "M0 0h24v24H0V0z",
165
77
  fill: "none"
166
- }), _react["default"].createElement("path", {
78
+ }), /*#__PURE__*/_react["default"].createElement("path", {
167
79
  d: "M4 12l1.41 1.41L11 7.83V20h2V7.83l5.58 5.59L20 12l-8-8-8 8z"
168
80
  }));
169
81
  };
170
82
 
171
83
  var ArrowDown = function ArrowDown() {
172
- return _react["default"].createElement("svg", {
84
+ return /*#__PURE__*/_react["default"].createElement("svg", {
173
85
  xmlns: "http://www.w3.org/2000/svg",
174
86
  height: "24",
175
87
  viewBox: "0 0 24 24",
176
88
  width: "24",
177
89
  fill: "currentColor"
178
- }, _react["default"].createElement("path", {
90
+ }, /*#__PURE__*/_react["default"].createElement("path", {
179
91
  d: "M0 0h24v24H0V0z",
180
92
  fill: "none"
181
- }), _react["default"].createElement("path", {
93
+ }), /*#__PURE__*/_react["default"].createElement("path", {
182
94
  d: "M20 12l-1.41-1.41L13 16.17V4h-2v12.17l-5.58-5.59L4 12l8 8 8-8z"
183
95
  }));
184
96
  };
185
97
 
186
98
  var BothArrows = function BothArrows() {
187
- return _react["default"].createElement("svg", {
99
+ return /*#__PURE__*/_react["default"].createElement("svg", {
188
100
  xmlns: "http://www.w3.org/2000/svg",
189
101
  height: "24",
190
102
  viewBox: "0 0 24 24",
191
103
  width: "24",
192
104
  fill: "currentColor"
193
- }, _react["default"].createElement("path", {
105
+ }, /*#__PURE__*/_react["default"].createElement("path", {
194
106
  d: "M0 0h24v24H0z",
195
107
  fill: "none"
196
- }), _react["default"].createElement("path", {
108
+ }), /*#__PURE__*/_react["default"].createElement("path", {
197
109
  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"
198
110
  }));
199
111
  };
@@ -201,6 +113,8 @@ var BothArrows = function BothArrows() {
201
113
  var DxcResultsetTable = function DxcResultsetTable(_ref) {
202
114
  var columns = _ref.columns,
203
115
  rows = _ref.rows,
116
+ _ref$showGoToPage = _ref.showGoToPage,
117
+ showGoToPage = _ref$showGoToPage === void 0 ? true : _ref$showGoToPage,
204
118
  _ref$itemsPerPage = _ref.itemsPerPage,
205
119
  itemsPerPage = _ref$itemsPerPage === void 0 ? 5 : _ref$itemsPerPage,
206
120
  itemsPerPageOptions = _ref.itemsPerPageOptions,
@@ -243,7 +157,7 @@ var DxcResultsetTable = function DxcResultsetTable(_ref) {
243
157
  };
244
158
 
245
159
  var getIconForSortableColumn = function getIconForSortableColumn(clickedColumnIndex) {
246
- return sortColumnIndex === clickedColumnIndex ? sortOrder === "asc" ? _react["default"].createElement(ArrowUp, null) : _react["default"].createElement(ArrowDown, null) : _react["default"].createElement(BothArrows, null);
160
+ return sortColumnIndex === clickedColumnIndex ? sortOrder === "asc" ? /*#__PURE__*/_react["default"].createElement(ArrowUp, null) : /*#__PURE__*/_react["default"].createElement(ArrowDown, null) : /*#__PURE__*/_react["default"].createElement(BothArrows, null);
247
161
  };
248
162
 
249
163
  (0, _react.useEffect)(function () {
@@ -259,67 +173,70 @@ var DxcResultsetTable = function DxcResultsetTable(_ref) {
259
173
  var filteredResultset = (0, _react.useMemo)(function () {
260
174
  return sortedResultset && sortedResultset.slice(minItemsPerPageIndex, maxItemsPerPageIndex + 1);
261
175
  }, [sortedResultset, minItemsPerPageIndex, maxItemsPerPageIndex]);
262
- return _react["default"].createElement(_styledComponents.ThemeProvider, {
176
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
263
177
  theme: colorsTheme.table
264
- }, _react["default"].createElement(DxcResultsetTableContainer, {
178
+ }, /*#__PURE__*/_react["default"].createElement(DxcResultsetTableContainer, {
265
179
  margin: margin
266
- }, _react["default"].createElement(TableContainer, null, _react["default"].createElement(_Table["default"], null, _react["default"].createElement(HeaderRow, null, _react["default"].createElement("tr", null, columns.map(function (column, index) {
267
- return _react["default"].createElement(TableHeader, {
180
+ }, /*#__PURE__*/_react["default"].createElement(TableContainer, null, /*#__PURE__*/_react["default"].createElement(_Table["default"], null, /*#__PURE__*/_react["default"].createElement(HeaderRow, null, /*#__PURE__*/_react["default"].createElement("tr", null, columns.map(function (column, index) {
181
+ return /*#__PURE__*/_react["default"].createElement(TableHeader, {
268
182
  key: "tableHeader_".concat(index)
269
- }, _react["default"].createElement(HeaderContainer, {
183
+ }, /*#__PURE__*/_react["default"].createElement(HeaderContainer, {
270
184
  key: "headerContainer_".concat(index),
271
185
  onClick: function onClick() {
272
186
  return column.isSortable && changeSorting(index);
273
187
  },
274
- tabIndex: column.isSortable ? tabIndex : -1
275
- }, _react["default"].createElement(TitleDiv, {
188
+ tabIndex: column.isSortable ? tabIndex : -1,
189
+ isSortable: column.isSortable
190
+ }, /*#__PURE__*/_react["default"].createElement(TitleDiv, {
276
191
  isSortable: column.isSortable
277
- }, column.displayValue), column.isSortable && _react["default"].createElement(SortIcon, null, getIconForSortableColumn(index))));
278
- }))), _react["default"].createElement(TableRowGroup, null, filteredResultset.map(function (cells, index) {
279
- return _react["default"].createElement("tr", {
192
+ }, column.displayValue), column.isSortable && /*#__PURE__*/_react["default"].createElement(SortIcon, null, getIconForSortableColumn(index))));
193
+ }))), /*#__PURE__*/_react["default"].createElement(TableRowGroup, null, filteredResultset.map(function (cells, index) {
194
+ return /*#__PURE__*/_react["default"].createElement("tr", {
280
195
  key: "resultSetTableCell_".concat(index)
281
196
  }, cells.map(function (cellContent, index) {
282
- return _react["default"].createElement("td", {
197
+ return /*#__PURE__*/_react["default"].createElement("td", {
283
198
  key: "resultSetTableCellContent_".concat(index)
284
199
  }, cellContent.displayValue);
285
200
  }));
286
- })))), _react["default"].createElement(PaginatorContainer, null, _react["default"].createElement(_Paginator["default"], {
201
+ })))), /*#__PURE__*/_react["default"].createElement(PaginatorContainer, null, /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
287
202
  totalItems: rows.length,
288
203
  itemsPerPage: itemsPerPage,
289
204
  itemsPerPageOptions: itemsPerPageOptions,
290
205
  itemsPerPageFunction: itemsPerPageFunction,
291
206
  currentPage: page,
292
- showGoToPage: true,
207
+ showGoToPage: showGoToPage,
293
208
  onPageChange: goToPage,
294
209
  tabIndex: tabIndex
295
210
  }))));
296
211
  };
297
212
 
298
- var TableContainer = _styledComponents["default"].div(_templateObject());
213
+ var TableContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n & table {\n table-layout: auto;\n }\n"])));
299
214
 
300
- var PaginatorContainer = _styledComponents["default"].div(_templateObject2());
215
+ var PaginatorContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])([""])));
301
216
 
302
- var TableRowGroup = _styledComponents["default"].tbody(_templateObject3(), function (props) {
217
+ var TableRowGroup = _styledComponents["default"].tbody(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n > div:nth-child(1) {\n position: absolute;\n left: calc(50% - 68.5px);\n bottom: calc(50% - 68.5px - 30px);\n }\n & tr {\n height: ", ";\n }\n"])), function (props) {
303
218
  return props.theme.rowHeight || "70px";
304
219
  });
305
220
 
306
- var SortIcon = _styledComponents["default"].div(_templateObject4(), function (props) {
221
+ var SortIcon = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n top: 409px;\n left: 390px;\n height: 14px;\n cursor: pointer;\n color: ", ";\n\n svg {\n height: 100%;\n width: 100%;\n }\n"])), function (props) {
307
222
  return props.theme.sortIconColor;
308
223
  });
309
224
 
310
- var TitleDiv = _styledComponents["default"].div(_templateObject5(), function (props) {
225
+ var TitleDiv = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n cursor: ", ";\n"])), function (props) {
311
226
  return props.isSortable && "pointer" || "default";
312
227
  });
313
228
 
314
- var TableHeader = _styledComponents["default"].th(_templateObject6());
229
+ var TableHeader = _styledComponents["default"].th(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])([""])));
315
230
 
316
- var HeaderContainer = _styledComponents["default"].div(_templateObject7(), function (props) {
231
+ var HeaderContainer = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: ", ";\n width: fit-content;\n :focus {\n ", "\n }\n"])), function (props) {
317
232
  return props.theme.headerTextAlign === "center" ? "center" : props.theme.headerTextAlign === "right" ? "flex-end" : "flex-start";
233
+ }, function (props) {
234
+ return props.isSortable && "outline: #0095ff solid 2px; \n outline-offset: 4px;";
318
235
  });
319
236
 
320
- var HeaderRow = _styledComponents["default"].thead(_templateObject8());
237
+ var HeaderRow = _styledComponents["default"].thead(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n height: 60px;\n"])));
321
238
 
322
- var DxcResultsetTableContainer = _styledComponents["default"].div(_templateObject9(), function (props) {
239
+ var DxcResultsetTableContainer = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n font-size: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
323
240
  return props.theme.fontSizeBase;
324
241
  }, function (props) {
325
242
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
@@ -333,26 +250,5 @@ var DxcResultsetTableContainer = _styledComponents["default"].div(_templateObjec
333
250
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
334
251
  });
335
252
 
336
- DxcResultsetTable.propTypes = {
337
- rows: _propTypes["default"].array,
338
- columns: _propTypes["default"].array,
339
- itemsPerPage: _propTypes["default"].number,
340
- itemsPerPageOptions: _propTypes["default"].arrayOf(_propTypes["default"].number),
341
- itemsPerPageFunction: _propTypes["default"].func,
342
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
343
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
344
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
345
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
346
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
347
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
348
- tabIndex: _propTypes["default"].number
349
- };
350
- DxcResultsetTable.defaultProps = {
351
- rows: [],
352
- columns: [],
353
- itemsPerPage: 5,
354
- itemsPerPageOptions: null,
355
- itemsPerPageFunction: null
356
- };
357
253
  var _default = DxcResultsetTable;
358
254
  exports["default"] = _default;
@@ -0,0 +1,275 @@
1
+ import React from "react";
2
+ import DxcResultsetTable from "./ResultsetTable";
3
+ import DxcButton from "../button/Button";
4
+ import Title from "../../.storybook/components/Title";
5
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
6
+ import { userEvent, within } from "@storybook/testing-library";
7
+
8
+ export default {
9
+ title: "Resultset Table",
10
+ component: DxcResultsetTable,
11
+ };
12
+
13
+ const deleteIcon = (
14
+ <svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24">
15
+ <path d="M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zM19 4h-3.5l-1-1h-5l-1 1H5v2h14V4z" />
16
+ <path d="M0 0h24v24H0z" fill="none" />
17
+ </svg>
18
+ );
19
+
20
+ const columns = [{ displayValue: "Id" }, { displayValue: "Name" }, { displayValue: "City" }];
21
+
22
+ const rows = [
23
+ [{ displayValue: "001" }, { displayValue: "Peter" }, { displayValue: "Miami" }],
24
+ [{ displayValue: "002" }, { displayValue: "Louis" }, { displayValue: "London" }],
25
+ [{ displayValue: "003" }, { displayValue: "Lana" }, { displayValue: "Amsterdam" }],
26
+ [{ displayValue: "004" }, { displayValue: "Rick" }, { displayValue: "London" }],
27
+ [{ displayValue: "005" }, { displayValue: "Mark" }, { displayValue: "Miami" }],
28
+ [{ displayValue: "006" }, { displayValue: "Cris" }, { displayValue: "Paris" }],
29
+ ];
30
+
31
+ const rowsIcon = [
32
+ [
33
+ { displayValue: "001", sortValue: "001" },
34
+ { displayValue: "Peter" },
35
+ { displayValue: <DxcButton icon={deleteIcon} /> },
36
+ ],
37
+ [{ displayValue: "002", sortValue: "002" }, { displayValue: "Louis" }, { displayValue: "" }],
38
+ [
39
+ { displayValue: "003", sortValue: "003" },
40
+ { displayValue: "Mark" },
41
+ { displayValue: <DxcButton icon={deleteIcon} /> },
42
+ ],
43
+ ];
44
+
45
+ const columnsSortable = [
46
+ { displayValue: "Id", isSortable: true },
47
+ { displayValue: "Name", isSortable: true },
48
+ { displayValue: "City", isSortable: false },
49
+ ];
50
+
51
+ const rowsSortable = [
52
+ [
53
+ { displayValue: "001", sortValue: "001" },
54
+ { displayValue: "Peter", sortValue: "Peter" },
55
+ { displayValue: "Miami", sortValue: "Miami" },
56
+ ],
57
+ [
58
+ { displayValue: "002", sortValue: "002" },
59
+ { displayValue: "Louis", sortValue: "Louis" },
60
+ { displayValue: "London", sortValue: "London" },
61
+ ],
62
+ [
63
+ { displayValue: "003", sortValue: "003" },
64
+ { displayValue: "Aida", sortValue: "Aida" },
65
+ { displayValue: "Wroclaw", sortValue: "Wroclaw" },
66
+ ],
67
+ [
68
+ { displayValue: "004", sortValue: "004" },
69
+ { displayValue: "Lana", sortValue: "Lana" },
70
+ { displayValue: "Amsterdam", sortValue: "Amsterdam" },
71
+ ],
72
+ ];
73
+
74
+ const longColumns = [
75
+ { displayValue: "Column1" },
76
+ { displayValue: "Column2" },
77
+ { displayValue: "Column3" },
78
+ { displayValue: "Column4" },
79
+ { displayValue: "Column5" },
80
+ { displayValue: "Column6" },
81
+ { displayValue: "Column7" },
82
+ { displayValue: "Column8" },
83
+ { displayValue: "Column9" },
84
+ { displayValue: "Column10" },
85
+ { displayValue: "Column11" },
86
+ { displayValue: "Column12" },
87
+ { displayValue: "Column13" },
88
+ { displayValue: "Column14" },
89
+ { displayValue: "Column15" },
90
+ { displayValue: "Column16" },
91
+ { displayValue: "Column17" },
92
+ { displayValue: "Column18" },
93
+ { displayValue: "Column19" },
94
+ { displayValue: "Column20" },
95
+ ];
96
+
97
+ const longRows = [
98
+ [
99
+ { displayValue: "001", sortValue: "001" },
100
+ { displayValue: "Peter", sortValue: "Peter" },
101
+ { displayValue: "Miami", sortValue: "Miami" },
102
+ { displayValue: "001", sortValue: "001" },
103
+ { displayValue: "Peter", sortValue: "Peter" },
104
+ { displayValue: "Miami", sortValue: "Miami" },
105
+ { displayValue: "Miami", sortValue: "Miami" },
106
+ { displayValue: "001", sortValue: "001" },
107
+ { displayValue: "Peter", sortValue: "Peter" },
108
+ { displayValue: "Miami", sortValue: "Miami" },
109
+ { displayValue: "002", sortValue: "002" },
110
+ { displayValue: "Louis", sortValue: "Louis" },
111
+ { displayValue: "London", sortValue: "London" },
112
+ { displayValue: "002", sortValue: "002" },
113
+ { displayValue: "Louis", sortValue: "Louis" },
114
+ { displayValue: "London", sortValue: "London" },
115
+ { displayValue: "002", sortValue: "002" },
116
+ { displayValue: "Louis", sortValue: "Louis" },
117
+ { displayValue: "London", sortValue: "London" },
118
+ { displayValue: "London", sortValue: "London" },
119
+ ],
120
+ [
121
+ { displayValue: "002", sortValue: "002" },
122
+ { displayValue: "Louis", sortValue: "Louis" },
123
+ { displayValue: "London", sortValue: "London" },
124
+ { displayValue: "002", sortValue: "002" },
125
+ { displayValue: "Louis", sortValue: "Louis" },
126
+ { displayValue: "London", sortValue: "London" },
127
+ { displayValue: "002", sortValue: "002" },
128
+ { displayValue: "Louis", sortValue: "Louis" },
129
+ { displayValue: "London", sortValue: "London" },
130
+ { displayValue: "London", sortValue: "London" },
131
+ { displayValue: "002", sortValue: "002" },
132
+ { displayValue: "Louis", sortValue: "Louis" },
133
+ { displayValue: "London", sortValue: "London" },
134
+ { displayValue: "002", sortValue: "002" },
135
+ { displayValue: "Louis", sortValue: "Louis" },
136
+ { displayValue: "London", sortValue: "London" },
137
+ { displayValue: "002", sortValue: "002" },
138
+ { displayValue: "Louis", sortValue: "Louis" },
139
+ { displayValue: "London", sortValue: "London" },
140
+ { displayValue: "London", sortValue: "London" },
141
+ ],
142
+ [
143
+ { displayValue: "002", sortValue: "002" },
144
+ { displayValue: "Louis", sortValue: "Louis" },
145
+ { displayValue: "London", sortValue: "London" },
146
+ { displayValue: "002", sortValue: "002" },
147
+ { displayValue: "Louis", sortValue: "Louis" },
148
+ { displayValue: "London", sortValue: "London" },
149
+ { displayValue: "002", sortValue: "002" },
150
+ { displayValue: "Louis", sortValue: "Louis" },
151
+ { displayValue: "London", sortValue: "London" },
152
+ { displayValue: "London", sortValue: "London" },
153
+ { displayValue: "002", sortValue: "002" },
154
+ { displayValue: "Louis", sortValue: "Louis" },
155
+ { displayValue: "London", sortValue: "London" },
156
+ { displayValue: "002", sortValue: "002" },
157
+ { displayValue: "Louis", sortValue: "Louis" },
158
+ { displayValue: "London", sortValue: "London" },
159
+ { displayValue: "002", sortValue: "002" },
160
+ { displayValue: "Louis", sortValue: "Louis" },
161
+ { displayValue: "London", sortValue: "London" },
162
+ { displayValue: "London", sortValue: "London" },
163
+ ],
164
+ ];
165
+
166
+ export const Chromatic = () => (
167
+ <>
168
+ <ExampleContainer>
169
+ <Title title="Sortable table" theme="light" level={4} />
170
+ <DxcResultsetTable columns={columnsSortable} rows={rowsSortable}></DxcResultsetTable>
171
+ </ExampleContainer>
172
+ <ExampleContainer>
173
+ <Title title="With action" theme="light" level={4} />
174
+ <DxcResultsetTable columns={columns} rows={rowsIcon}></DxcResultsetTable>
175
+ </ExampleContainer>
176
+ <ExampleContainer>
177
+ <Title title="With items per page option" theme="light" level={4} />
178
+ <DxcResultsetTable
179
+ columns={columns}
180
+ rows={rows}
181
+ itemsPerPage={2}
182
+ itemsPerPageOptions={[2, 3]}
183
+ ></DxcResultsetTable>
184
+ </ExampleContainer>
185
+ <ExampleContainer>
186
+ <Title title="Scroll resultset table" theme="light" level={4} />
187
+ <DxcResultsetTable columns={longColumns} rows={longRows}></DxcResultsetTable>
188
+ </ExampleContainer>
189
+ <Title title="Margins" theme="light" level={2} />
190
+ <ExampleContainer>
191
+ <Title title="Xxsmall" theme="light" level={4} />
192
+ <DxcResultsetTable columns={columns} rows={rows} margin={"xxsmall"}></DxcResultsetTable>
193
+ </ExampleContainer>
194
+ <ExampleContainer>
195
+ <Title title="Xsmall" theme="light" level={4} />
196
+ <DxcResultsetTable columns={columns} rows={rows} margin={"xsmall"}></DxcResultsetTable>
197
+ </ExampleContainer>
198
+ <ExampleContainer>
199
+ <Title title="Small" theme="light" level={4} />
200
+ <DxcResultsetTable columns={columns} rows={rows} margin={"small"}></DxcResultsetTable>
201
+ </ExampleContainer>
202
+ <ExampleContainer>
203
+ <Title title="Medium" theme="light" level={4} />
204
+ <DxcResultsetTable columns={columns} rows={rows} margin={"medium"}></DxcResultsetTable>
205
+ </ExampleContainer>
206
+ <ExampleContainer>
207
+ <Title title="Large" theme="light" level={4} />
208
+ <DxcResultsetTable columns={columns} rows={rows} margin={"large"}></DxcResultsetTable>
209
+ </ExampleContainer>
210
+ <ExampleContainer>
211
+ <Title title="Xlarge" theme="light" level={4} />
212
+ <DxcResultsetTable columns={columns} rows={rows} margin={"xlarge"}></DxcResultsetTable>
213
+ </ExampleContainer>
214
+ <ExampleContainer>
215
+ <Title title="Xxlarge" theme="light" level={4} />
216
+ <DxcResultsetTable columns={columns} rows={rows} margin={"xxlarge"}></DxcResultsetTable>
217
+ <hr />
218
+ </ExampleContainer>
219
+ </>
220
+ );
221
+
222
+ const ResultsetTableAsc = () => (
223
+ <ExampleContainer>
224
+ <Title title="Ascendant sorting" theme="light" level={4} />
225
+ <DxcResultsetTable columns={columnsSortable} rows={rowsSortable}></DxcResultsetTable>
226
+ </ExampleContainer>
227
+ );
228
+
229
+ export const AscendentSorting = ResultsetTableAsc.bind({});
230
+ AscendentSorting.play = async ({ canvasElement }) => {
231
+ const canvas = within(canvasElement);
232
+ await userEvent.click(canvas.queryByText("Name"));
233
+ };
234
+
235
+ const ResultsetTableDesc = () => (
236
+ <ExampleContainer>
237
+ <Title title="Descendant sorting" theme="light" level={4} />
238
+ <DxcResultsetTable columns={columnsSortable} rows={rowsSortable}></DxcResultsetTable>
239
+ </ExampleContainer>
240
+ );
241
+
242
+ export const DescendantSorting = ResultsetTableDesc.bind({});
243
+ DescendantSorting.play = async ({ canvasElement }) => {
244
+ const canvas = within(canvasElement);
245
+ await userEvent.click(canvas.queryByText("Name"));
246
+ await userEvent.click(canvas.queryByText("Name"));
247
+ };
248
+
249
+ const ResultsetTableMiddle = () => (
250
+ <ExampleContainer>
251
+ <Title title="Middle page" theme="light" level={4} />
252
+ <DxcResultsetTable columns={columns} rows={rows} itemsPerPage={2}></DxcResultsetTable>
253
+ </ExampleContainer>
254
+ );
255
+
256
+ export const MiddlePage = ResultsetTableMiddle.bind({});
257
+ MiddlePage.play = async ({ canvasElement }) => {
258
+ const canvas = within(canvasElement);
259
+ const nextButton = canvas.getAllByRole("button")[2];
260
+ await userEvent.click(nextButton);
261
+ };
262
+
263
+ const ResultsetTableLast = () => (
264
+ <ExampleContainer>
265
+ <Title title="Last page" theme="light" level={4} />
266
+ <DxcResultsetTable columns={columns} rows={rows} itemsPerPage={2}></DxcResultsetTable>
267
+ </ExampleContainer>
268
+ );
269
+
270
+ export const LastPage = ResultsetTableLast.bind({});
271
+ LastPage.play = async ({ canvasElement }) => {
272
+ const canvas = within(canvasElement);
273
+ const nextButton = canvas.getAllByRole("button")[3];
274
+ await userEvent.click(nextButton);
275
+ };
@@ -0,0 +1,67 @@
1
+ /// <reference types="react" />
2
+ declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ declare type Margin = {
4
+ top?: Space;
5
+ bottom?: Space;
6
+ left?: Space;
7
+ right?: Space;
8
+ };
9
+ declare type Column = {
10
+ /**
11
+ * Column display value.
12
+ */
13
+ displayValue: React.ReactNode;
14
+ /**
15
+ * Boolean value to indicate whether the column is sortable or not.
16
+ */
17
+ isSortable?: boolean;
18
+ };
19
+ declare type Row = {
20
+ /**
21
+ * Value to be displayed in the cell.
22
+ */
23
+ displayValue: React.ReactNode;
24
+ /**
25
+ * Value to be used when sorting the table by that
26
+ * column. If not indicated displayValue will be used for sorting.
27
+ */
28
+ sortValue?: string;
29
+ };
30
+ declare type Props = {
31
+ /**
32
+ * An array of objects representing the columns of the table.
33
+ */
34
+ columns: Column[];
35
+ /**
36
+ * An array of objects representing the rows of the table, you will have
37
+ * as many objects as columns in the table.
38
+ */
39
+ rows: Row[][];
40
+ /**
41
+ * If true, a select component for navigation between pages will be displayed.
42
+ */
43
+ showGoToPage?: boolean;
44
+ /**
45
+ * Number of items per page.
46
+ */
47
+ itemsPerPage?: number;
48
+ /**
49
+ * An array of numbers representing the items per page options.
50
+ */
51
+ itemsPerPageOptions?: number[];
52
+ /**
53
+ * This function will be called when the user selects an item per page
54
+ * option. The value selected will be passed as a parameter.
55
+ */
56
+ itemsPerPageFunction?: (newValue: number) => void;
57
+ /**
58
+ * Size of the margin to be applied to the component. You can pass an object with 'top',
59
+ * 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
60
+ */
61
+ margin?: Space | Margin;
62
+ /**
63
+ * Value of the tabindex attribute given to the sortable icon.
64
+ */
65
+ tabIndex?: number;
66
+ };
67
+ export default Props;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });