@dxc-technology/halstack-react 0.0.0-fc652e4 → 0.0.0-fd5a25e

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 (462) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +47 -0
  3. package/HalstackContext.d.ts +12 -0
  4. package/HalstackContext.js +295 -0
  5. package/accordion/Accordion.d.ts +4 -0
  6. package/accordion/Accordion.js +226 -0
  7. package/accordion/Accordion.stories.tsx +307 -0
  8. package/accordion/Accordion.test.js +72 -0
  9. package/accordion/types.d.ts +68 -0
  10. package/accordion/types.js +5 -0
  11. package/accordion-group/AccordionGroup.d.ts +7 -0
  12. package/accordion-group/AccordionGroup.js +169 -0
  13. package/accordion-group/AccordionGroup.stories.tsx +225 -0
  14. package/accordion-group/AccordionGroup.test.js +151 -0
  15. package/accordion-group/types.d.ts +72 -0
  16. package/accordion-group/types.js +5 -0
  17. package/alert/Alert.d.ts +4 -0
  18. package/{dist/alert → alert}/Alert.js +47 -157
  19. package/alert/Alert.stories.tsx +170 -0
  20. package/alert/Alert.test.js +92 -0
  21. package/alert/types.d.ts +49 -0
  22. package/alert/types.js +5 -0
  23. package/badge/Badge.d.ts +4 -0
  24. package/badge/Badge.js +61 -0
  25. package/badge/types.d.ts +5 -0
  26. package/badge/types.js +5 -0
  27. package/bleed/Bleed.d.ts +3 -0
  28. package/bleed/Bleed.js +51 -0
  29. package/bleed/Bleed.stories.tsx +341 -0
  30. package/bleed/types.d.ts +37 -0
  31. package/bleed/types.js +5 -0
  32. package/box/Box.d.ts +4 -0
  33. package/box/Box.js +116 -0
  34. package/box/Box.stories.tsx +132 -0
  35. package/box/Box.test.js +18 -0
  36. package/box/types.d.ts +43 -0
  37. package/box/types.js +5 -0
  38. package/button/Button.d.ts +4 -0
  39. package/{dist/button → button}/Button.js +34 -98
  40. package/button/Button.stories.tsx +274 -0
  41. package/button/Button.test.js +35 -0
  42. package/button/types.d.ts +53 -0
  43. package/button/types.js +5 -0
  44. package/card/Card.d.ts +4 -0
  45. package/card/Card.js +161 -0
  46. package/card/Card.stories.tsx +201 -0
  47. package/card/Card.test.js +50 -0
  48. package/card/ice-cream.jpg +0 -0
  49. package/card/types.d.ts +67 -0
  50. package/card/types.js +5 -0
  51. package/checkbox/Checkbox.d.ts +4 -0
  52. package/{dist/checkbox → checkbox}/Checkbox.js +55 -98
  53. package/checkbox/Checkbox.stories.tsx +188 -0
  54. package/checkbox/Checkbox.test.js +78 -0
  55. package/checkbox/types.d.ts +64 -0
  56. package/checkbox/types.js +5 -0
  57. package/chip/Chip.d.ts +4 -0
  58. package/chip/Chip.js +161 -0
  59. package/chip/Chip.stories.tsx +119 -0
  60. package/chip/Chip.test.js +56 -0
  61. package/chip/types.d.ts +45 -0
  62. package/chip/types.js +5 -0
  63. package/{dist/common → common}/OpenSans.css +0 -0
  64. package/{dist/common → common}/RequiredComponent.js +3 -11
  65. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  66. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  67. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  68. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  69. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  70. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  71. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  72. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  73. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  74. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  75. package/{dist/common → common}/utils.js +0 -0
  76. package/{dist/common → common}/variables.js +524 -421
  77. package/date-input/DateInput.d.ts +4 -0
  78. package/date-input/DateInput.js +372 -0
  79. package/date-input/DateInput.stories.tsx +138 -0
  80. package/date-input/DateInput.test.js +479 -0
  81. package/date-input/types.d.ts +107 -0
  82. package/date-input/types.js +5 -0
  83. package/dialog/Dialog.d.ts +4 -0
  84. package/dialog/Dialog.js +138 -0
  85. package/dialog/Dialog.stories.tsx +212 -0
  86. package/dialog/Dialog.test.js +40 -0
  87. package/dialog/types.d.ts +43 -0
  88. package/dialog/types.js +5 -0
  89. package/dropdown/Dropdown.d.ts +4 -0
  90. package/{dist/dropdown → dropdown}/Dropdown.js +60 -218
  91. package/dropdown/Dropdown.stories.tsx +249 -0
  92. package/dropdown/Dropdown.test.js +189 -0
  93. package/dropdown/types.d.ts +80 -0
  94. package/dropdown/types.js +5 -0
  95. package/file-input/FileInput.d.ts +4 -0
  96. package/file-input/FileInput.js +593 -0
  97. package/file-input/FileInput.stories.tsx +507 -0
  98. package/file-input/FileInput.test.js +457 -0
  99. package/file-input/FileItem.d.ts +14 -0
  100. package/file-input/FileItem.js +186 -0
  101. package/file-input/types.d.ts +112 -0
  102. package/file-input/types.js +5 -0
  103. package/footer/Footer.d.ts +4 -0
  104. package/footer/Footer.js +185 -0
  105. package/footer/Footer.stories.tsx +130 -0
  106. package/footer/Footer.test.js +109 -0
  107. package/footer/Icons.d.ts +2 -0
  108. package/footer/Icons.js +77 -0
  109. package/footer/types.d.ts +65 -0
  110. package/footer/types.js +5 -0
  111. package/header/Header.d.ts +7 -0
  112. package/header/Header.js +303 -0
  113. package/header/Header.stories.tsx +172 -0
  114. package/header/Header.test.js +79 -0
  115. package/header/Icons.d.ts +2 -0
  116. package/header/Icons.js +34 -0
  117. package/header/types.d.ts +47 -0
  118. package/header/types.js +5 -0
  119. package/heading/Heading.d.ts +4 -0
  120. package/{dist/heading → heading}/Heading.js +31 -90
  121. package/heading/Heading.stories.tsx +54 -0
  122. package/heading/Heading.test.js +186 -0
  123. package/heading/types.d.ts +33 -0
  124. package/heading/types.js +5 -0
  125. package/inline/Inline.d.ts +4 -0
  126. package/inline/Inline.js +60 -0
  127. package/inline/Inline.stories.tsx +319 -0
  128. package/inline/types.d.ts +36 -0
  129. package/inline/types.js +5 -0
  130. package/inset/Inset.d.ts +3 -0
  131. package/inset/Inset.js +51 -0
  132. package/inset/Inset.stories.tsx +229 -0
  133. package/inset/types.d.ts +37 -0
  134. package/inset/types.js +5 -0
  135. package/layout/ApplicationLayout.d.ts +11 -0
  136. package/layout/ApplicationLayout.js +199 -0
  137. package/layout/ApplicationLayout.stories.tsx +126 -0
  138. package/layout/Icons.d.ts +5 -0
  139. package/layout/Icons.js +66 -0
  140. package/layout/SidenavContext.d.ts +5 -0
  141. package/layout/SidenavContext.js +19 -0
  142. package/layout/types.d.ts +52 -0
  143. package/layout/types.js +5 -0
  144. package/link/Link.d.ts +4 -0
  145. package/link/Link.js +136 -0
  146. package/link/Link.stories.tsx +186 -0
  147. package/link/Link.test.js +83 -0
  148. package/link/types.d.ts +54 -0
  149. package/link/types.js +5 -0
  150. package/list/List.d.ts +4 -0
  151. package/list/List.js +47 -0
  152. package/list/List.stories.tsx +89 -0
  153. package/list/types.d.ts +7 -0
  154. package/list/types.js +5 -0
  155. package/main.d.ts +48 -0
  156. package/{dist/main.js → main.js} +151 -101
  157. package/number-input/NumberInput.d.ts +4 -0
  158. package/number-input/NumberInput.js +76 -0
  159. package/number-input/NumberInput.stories.tsx +115 -0
  160. package/number-input/NumberInput.test.js +506 -0
  161. package/number-input/NumberInputContext.d.ts +4 -0
  162. package/{dist/number/NumberContext.js → number-input/NumberInputContext.js} +6 -3
  163. package/number-input/numberInputContextTypes.d.ts +19 -0
  164. package/number-input/numberInputContextTypes.js +5 -0
  165. package/number-input/types.d.ts +124 -0
  166. package/number-input/types.js +5 -0
  167. package/package.json +39 -27
  168. package/paginator/Icons.js +66 -0
  169. package/paginator/Paginator.d.ts +4 -0
  170. package/paginator/Paginator.js +171 -0
  171. package/paginator/Paginator.stories.tsx +63 -0
  172. package/paginator/Paginator.test.js +308 -0
  173. package/paginator/types.d.ts +38 -0
  174. package/paginator/types.js +5 -0
  175. package/password-input/PasswordInput.d.ts +4 -0
  176. package/{dist/password/Password.js → password-input/PasswordInput.js} +48 -82
  177. package/password-input/PasswordInput.stories.tsx +131 -0
  178. package/password-input/PasswordInput.test.js +180 -0
  179. package/password-input/types.d.ts +110 -0
  180. package/password-input/types.js +5 -0
  181. package/progress-bar/ProgressBar.d.ts +4 -0
  182. package/{dist/progress-bar → progress-bar}/ProgressBar.js +23 -95
  183. package/progress-bar/ProgressBar.stories.jsx +58 -0
  184. package/progress-bar/ProgressBar.test.js +65 -0
  185. package/progress-bar/types.d.ts +37 -0
  186. package/progress-bar/types.js +5 -0
  187. package/quick-nav/QuickNav.d.ts +4 -0
  188. package/quick-nav/QuickNav.js +116 -0
  189. package/quick-nav/QuickNav.stories.tsx +264 -0
  190. package/quick-nav/types.d.ts +21 -0
  191. package/quick-nav/types.js +5 -0
  192. package/radio-group/Radio.d.ts +4 -0
  193. package/radio-group/Radio.js +141 -0
  194. package/radio-group/RadioGroup.d.ts +4 -0
  195. package/radio-group/RadioGroup.js +283 -0
  196. package/radio-group/RadioGroup.stories.tsx +100 -0
  197. package/radio-group/RadioGroup.test.js +695 -0
  198. package/radio-group/types.d.ts +114 -0
  199. package/radio-group/types.js +5 -0
  200. package/resultsetTable/ResultsetTable.d.ts +4 -0
  201. package/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +43 -147
  202. package/resultsetTable/ResultsetTable.stories.tsx +275 -0
  203. package/resultsetTable/ResultsetTable.test.js +348 -0
  204. package/resultsetTable/types.d.ts +67 -0
  205. package/resultsetTable/types.js +5 -0
  206. package/row/Row.d.ts +3 -0
  207. package/row/Row.js +127 -0
  208. package/row/Row.stories.tsx +237 -0
  209. package/row/types.d.ts +28 -0
  210. package/row/types.js +5 -0
  211. package/select/Icons.d.ts +10 -0
  212. package/select/Icons.js +93 -0
  213. package/select/Listbox.d.ts +4 -0
  214. package/select/Listbox.js +175 -0
  215. package/select/Option.d.ts +4 -0
  216. package/select/Option.js +110 -0
  217. package/select/Select.d.ts +4 -0
  218. package/select/Select.js +660 -0
  219. package/select/Select.stories.tsx +626 -0
  220. package/select/Select.test.js +2162 -0
  221. package/select/types.d.ts +212 -0
  222. package/select/types.js +5 -0
  223. package/sidenav/Sidenav.d.ts +9 -0
  224. package/sidenav/Sidenav.js +147 -0
  225. package/sidenav/Sidenav.stories.tsx +182 -0
  226. package/sidenav/Sidenav.test.js +56 -0
  227. package/sidenav/types.d.ts +50 -0
  228. package/sidenav/types.js +5 -0
  229. package/slider/Slider.d.ts +4 -0
  230. package/slider/Slider.js +318 -0
  231. package/slider/Slider.stories.tsx +177 -0
  232. package/slider/Slider.test.js +150 -0
  233. package/slider/types.d.ts +82 -0
  234. package/slider/types.js +5 -0
  235. package/spinner/Spinner.d.ts +4 -0
  236. package/spinner/Spinner.js +250 -0
  237. package/spinner/Spinner.stories.jsx +103 -0
  238. package/spinner/Spinner.test.js +64 -0
  239. package/spinner/types.d.ts +32 -0
  240. package/spinner/types.js +5 -0
  241. package/stack/Stack.d.ts +4 -0
  242. package/stack/Stack.js +56 -0
  243. package/stack/Stack.stories.tsx +263 -0
  244. package/stack/types.d.ts +32 -0
  245. package/stack/types.js +5 -0
  246. package/switch/Switch.d.ts +4 -0
  247. package/switch/Switch.js +195 -0
  248. package/switch/Switch.stories.tsx +160 -0
  249. package/switch/Switch.test.js +98 -0
  250. package/switch/types.d.ts +62 -0
  251. package/switch/types.js +5 -0
  252. package/table/Table.d.ts +4 -0
  253. package/{dist/table → table}/Table.js +12 -26
  254. package/table/Table.stories.jsx +277 -0
  255. package/table/Table.test.js +26 -0
  256. package/table/types.d.ts +21 -0
  257. package/table/types.js +5 -0
  258. package/tabs/Tabs.d.ts +4 -0
  259. package/tabs/Tabs.js +211 -0
  260. package/tabs/Tabs.stories.tsx +112 -0
  261. package/tabs/Tabs.test.js +140 -0
  262. package/tabs/types.d.ts +82 -0
  263. package/tabs/types.js +5 -0
  264. package/tabs-nav/NavTabs.d.ts +8 -0
  265. package/tabs-nav/NavTabs.js +125 -0
  266. package/tabs-nav/NavTabs.stories.tsx +170 -0
  267. package/tabs-nav/NavTabs.test.js +82 -0
  268. package/tabs-nav/Tab.d.ts +4 -0
  269. package/tabs-nav/Tab.js +132 -0
  270. package/tabs-nav/types.d.ts +53 -0
  271. package/tabs-nav/types.js +5 -0
  272. package/tag/Tag.d.ts +4 -0
  273. package/tag/Tag.js +183 -0
  274. package/tag/Tag.stories.tsx +142 -0
  275. package/tag/Tag.test.js +60 -0
  276. package/tag/types.d.ts +69 -0
  277. package/tag/types.js +5 -0
  278. package/text/Text.d.ts +7 -0
  279. package/text/Text.js +30 -0
  280. package/text/Text.stories.tsx +19 -0
  281. package/text-input/Suggestion.d.ts +4 -0
  282. package/text-input/Suggestion.js +55 -0
  283. package/text-input/TextInput.d.ts +4 -0
  284. package/text-input/TextInput.js +770 -0
  285. package/text-input/TextInput.stories.tsx +474 -0
  286. package/text-input/TextInput.test.js +1712 -0
  287. package/text-input/types.d.ts +178 -0
  288. package/text-input/types.js +5 -0
  289. package/textarea/Textarea.d.ts +4 -0
  290. package/{dist/new-textarea/NewTextarea.js → textarea/Textarea.js} +88 -157
  291. package/textarea/Textarea.stories.jsx +157 -0
  292. package/textarea/Textarea.test.js +437 -0
  293. package/textarea/types.d.ts +137 -0
  294. package/textarea/types.js +5 -0
  295. package/toggle-group/ToggleGroup.d.ts +4 -0
  296. package/toggle-group/ToggleGroup.js +215 -0
  297. package/toggle-group/ToggleGroup.stories.tsx +173 -0
  298. package/toggle-group/ToggleGroup.test.js +156 -0
  299. package/toggle-group/types.d.ts +105 -0
  300. package/toggle-group/types.js +5 -0
  301. package/useTheme.d.ts +2 -0
  302. package/{dist/useTheme.js → useTheme.js} +2 -2
  303. package/useTranslatedLabels.d.ts +2 -0
  304. package/useTranslatedLabels.js +20 -0
  305. package/wizard/Wizard.d.ts +4 -0
  306. package/wizard/Wizard.js +292 -0
  307. package/wizard/Wizard.stories.tsx +214 -0
  308. package/wizard/Wizard.test.js +141 -0
  309. package/wizard/types.d.ts +64 -0
  310. package/wizard/types.js +5 -0
  311. package/README.md +0 -66
  312. package/babel.config.js +0 -8
  313. package/dist/BackgroundColorContext.js +0 -46
  314. package/dist/ThemeContext.js +0 -241
  315. package/dist/accordion/Accordion.js +0 -353
  316. package/dist/accordion-group/AccordionGroup.js +0 -188
  317. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  318. package/dist/accordion-group/readme.md +0 -70
  319. package/dist/badge/Badge.js +0 -63
  320. package/dist/box/Box.js +0 -156
  321. package/dist/card/Card.js +0 -254
  322. package/dist/checkbox/Checkbox.stories.js +0 -144
  323. package/dist/checkbox/readme.md +0 -116
  324. package/dist/chip/Chip.js +0 -265
  325. package/dist/date/Date.js +0 -381
  326. package/dist/date/Date.stories.js +0 -205
  327. package/dist/date/readme.md +0 -73
  328. package/dist/dialog/Dialog.js +0 -218
  329. package/dist/footer/Footer.js +0 -395
  330. package/dist/footer/Footer.stories.js +0 -94
  331. package/dist/footer/dxc_logo.svg +0 -15
  332. package/dist/footer/readme.md +0 -41
  333. package/dist/header/Header.js +0 -403
  334. package/dist/header/Header.stories.js +0 -176
  335. package/dist/header/close_icon.svg +0 -1
  336. package/dist/header/dxc_logo_black.svg +0 -8
  337. package/dist/header/hamb_menu_black.svg +0 -1
  338. package/dist/header/hamb_menu_white.svg +0 -1
  339. package/dist/header/readme.md +0 -33
  340. package/dist/input-text/InputText.js +0 -707
  341. package/dist/input-text/InputText.stories.js +0 -209
  342. package/dist/input-text/error.svg +0 -1
  343. package/dist/input-text/readme.md +0 -91
  344. package/dist/layout/ApplicationLayout.js +0 -331
  345. package/dist/layout/facebook.svg +0 -45
  346. package/dist/layout/linkedin.svg +0 -50
  347. package/dist/layout/twitter.svg +0 -53
  348. package/dist/link/Link.js +0 -241
  349. package/dist/link/readme.md +0 -51
  350. package/dist/new-date/NewDate.js +0 -403
  351. package/dist/new-input-text/NewInputText.js +0 -961
  352. package/dist/number/Number.js +0 -138
  353. package/dist/paginator/Paginator.js +0 -289
  354. package/dist/paginator/images/next.svg +0 -3
  355. package/dist/paginator/images/nextPage.svg +0 -3
  356. package/dist/paginator/images/previous.svg +0 -3
  357. package/dist/paginator/images/previousPage.svg +0 -3
  358. package/dist/paginator/readme.md +0 -50
  359. package/dist/password/styles.css +0 -3
  360. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  361. package/dist/progress-bar/readme.md +0 -63
  362. package/dist/radio/Radio.js +0 -209
  363. package/dist/radio/Radio.stories.js +0 -166
  364. package/dist/radio/readme.md +0 -70
  365. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  366. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  367. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  368. package/dist/select/Select.js +0 -585
  369. package/dist/select/Select.stories.js +0 -235
  370. package/dist/select/readme.md +0 -72
  371. package/dist/sidenav/Sidenav.js +0 -177
  372. package/dist/slider/Slider.js +0 -319
  373. package/dist/slider/Slider.stories.js +0 -241
  374. package/dist/slider/readme.md +0 -64
  375. package/dist/spinner/Spinner.js +0 -218
  376. package/dist/spinner/Spinner.stories.js +0 -183
  377. package/dist/spinner/readme.md +0 -65
  378. package/dist/switch/Switch.js +0 -222
  379. package/dist/switch/Switch.stories.js +0 -134
  380. package/dist/switch/readme.md +0 -133
  381. package/dist/tabs/Tabs.js +0 -343
  382. package/dist/tabs/Tabs.stories.js +0 -130
  383. package/dist/tabs/readme.md +0 -78
  384. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  385. package/dist/tabs-for-sections/readme.md +0 -78
  386. package/dist/tag/Tag.js +0 -288
  387. package/dist/textarea/Textarea.js +0 -264
  388. package/dist/toggle/Toggle.js +0 -220
  389. package/dist/toggle/Toggle.stories.js +0 -297
  390. package/dist/toggle/readme.md +0 -80
  391. package/dist/toggle-group/ToggleGroup.js +0 -223
  392. package/dist/upload/Upload.js +0 -205
  393. package/dist/upload/Upload.stories.js +0 -72
  394. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -139
  395. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  396. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  397. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  398. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  399. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  400. package/dist/upload/file-upload/FileToUpload.js +0 -184
  401. package/dist/upload/file-upload/audio-icon.svg +0 -4
  402. package/dist/upload/file-upload/close.svg +0 -4
  403. package/dist/upload/file-upload/file-icon.svg +0 -4
  404. package/dist/upload/file-upload/video-icon.svg +0 -4
  405. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  406. package/dist/upload/readme.md +0 -37
  407. package/dist/upload/transaction/Transaction.js +0 -175
  408. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  409. package/dist/upload/transaction/audio-icon.svg +0 -4
  410. package/dist/upload/transaction/error-icon.svg +0 -4
  411. package/dist/upload/transaction/file-icon-err.svg +0 -4
  412. package/dist/upload/transaction/file-icon.svg +0 -4
  413. package/dist/upload/transaction/image-icon-err.svg +0 -4
  414. package/dist/upload/transaction/image-icon.svg +0 -4
  415. package/dist/upload/transaction/success-icon.svg +0 -4
  416. package/dist/upload/transaction/video-icon-err.svg +0 -4
  417. package/dist/upload/transaction/video-icon.svg +0 -4
  418. package/dist/upload/transactions/Transactions.js +0 -138
  419. package/dist/wizard/Wizard.js +0 -411
  420. package/dist/wizard/invalid_icon.svg +0 -5
  421. package/dist/wizard/valid_icon.svg +0 -5
  422. package/dist/wizard/validation-wrong.svg +0 -6
  423. package/test/Accordion.test.js +0 -33
  424. package/test/AccordionGroup.test.js +0 -125
  425. package/test/Alert.test.js +0 -53
  426. package/test/Box.test.js +0 -10
  427. package/test/Button.test.js +0 -18
  428. package/test/Card.test.js +0 -30
  429. package/test/Checkbox.test.js +0 -45
  430. package/test/Chip.test.js +0 -25
  431. package/test/Date.test.js +0 -393
  432. package/test/Dialog.test.js +0 -23
  433. package/test/Dropdown.test.js +0 -145
  434. package/test/Footer.test.js +0 -99
  435. package/test/Header.test.js +0 -39
  436. package/test/Heading.test.js +0 -35
  437. package/test/InputText.test.js +0 -240
  438. package/test/Link.test.js +0 -43
  439. package/test/NewDate.test.js +0 -203
  440. package/test/NewInputText.test.js +0 -817
  441. package/test/NewTextarea.test.js +0 -201
  442. package/test/Number.test.js +0 -241
  443. package/test/Paginator.test.js +0 -177
  444. package/test/Password.test.js +0 -76
  445. package/test/ProgressBar.test.js +0 -35
  446. package/test/Radio.test.js +0 -37
  447. package/test/ResultsetTable.test.js +0 -330
  448. package/test/Select.test.js +0 -189
  449. package/test/Sidenav.test.js +0 -45
  450. package/test/Slider.test.js +0 -82
  451. package/test/Spinner.test.js +0 -27
  452. package/test/Switch.test.js +0 -45
  453. package/test/Table.test.js +0 -36
  454. package/test/Tabs.test.js +0 -109
  455. package/test/TabsForSections.test.js +0 -34
  456. package/test/Tag.test.js +0 -32
  457. package/test/TextArea.test.js +0 -52
  458. package/test/ToggleGroup.test.js +0 -81
  459. package/test/Upload.test.js +0 -60
  460. package/test/Wizard.test.js +0 -130
  461. package/test/mocks/pngMock.js +0 -1
  462. package/test/mocks/svgMock.js +0 -1
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import DateInputPropsType from "./types";
3
+ declare const DxcDateInput: React.ForwardRefExoticComponent<DateInputPropsType & React.RefAttributes<HTMLDivElement>>;
4
+ export default DxcDateInput;
@@ -0,0 +1,372 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = void 0;
11
+
12
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
+
14
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
+
16
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
+
18
+ var _react = _interopRequireWildcard(require("react"));
19
+
20
+ var _pickers = require("@material-ui/pickers");
21
+
22
+ var _core = require("@material-ui/core");
23
+
24
+ var _ClickAwayListener = _interopRequireDefault(require("@material-ui/core/ClickAwayListener"));
25
+
26
+ var _Popover = _interopRequireDefault(require("@material-ui/core/Popover"));
27
+
28
+ var _dayjs = _interopRequireDefault(require("dayjs"));
29
+
30
+ var _dayjs2 = _interopRequireDefault(require("@date-io/dayjs"));
31
+
32
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
33
+
34
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
35
+
36
+ var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
37
+
38
+ var _TextInput = _interopRequireDefault(require("../text-input/TextInput"));
39
+
40
+ var _templateObject;
41
+
42
+ 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); }
43
+
44
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(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; }
45
+
46
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
47
+
48
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
49
+
50
+ var getValueForPicker = function getValueForPicker(value, format) {
51
+ return (0, _dayjs["default"])(value, format.toUpperCase(), true).format();
52
+ };
53
+
54
+ var DxcDateInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
55
+ var label = _ref.label,
56
+ name = _ref.name,
57
+ _ref$defaultValue = _ref.defaultValue,
58
+ defaultValue = _ref$defaultValue === void 0 ? "" : _ref$defaultValue,
59
+ value = _ref.value,
60
+ _ref$format = _ref.format,
61
+ format = _ref$format === void 0 ? "dd-MM-yyyy" : _ref$format,
62
+ helperText = _ref.helperText,
63
+ _ref$placeholder = _ref.placeholder,
64
+ placeholder = _ref$placeholder === void 0 ? false : _ref$placeholder,
65
+ clearable = _ref.clearable,
66
+ disabled = _ref.disabled,
67
+ optional = _ref.optional,
68
+ onChange = _ref.onChange,
69
+ onBlur = _ref.onBlur,
70
+ error = _ref.error,
71
+ autocomplete = _ref.autocomplete,
72
+ margin = _ref.margin,
73
+ size = _ref.size,
74
+ tabIndex = _ref.tabIndex;
75
+
76
+ var _useState = (0, _react.useState)(defaultValue),
77
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
78
+ innerValue = _useState2[0],
79
+ setInnerValue = _useState2[1];
80
+
81
+ var _useState3 = (0, _react.useState)(false),
82
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
83
+ isOpen = _useState4[0],
84
+ setIsOpen = _useState4[1];
85
+
86
+ var _useState5 = (0, _react.useState)(null),
87
+ _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
88
+ anchorEl = _useState6[0],
89
+ setAnchorEl = _useState6[1];
90
+
91
+ var colorsTheme = (0, _useTheme["default"])();
92
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
93
+ var refDate = ref || (0, _react.useRef)(null);
94
+
95
+ var handleCalendarOnKeyDown = function handleCalendarOnKeyDown(event) {
96
+ switch (event.keyCode) {
97
+ case 27:
98
+ // Esc
99
+ event.preventDefault();
100
+ setIsOpen(false);
101
+ break;
102
+ }
103
+ };
104
+
105
+ var handleCalendarOnClick = function handleCalendarOnClick(newDate) {
106
+ var newValue = (0, _dayjs["default"])(newDate).format(format.toUpperCase());
107
+ value !== null && value !== void 0 ? value : setInnerValue(newValue);
108
+ newDate !== null && newDate !== void 0 && newDate.toJSON() ? onChange === null || onChange === void 0 ? void 0 : onChange({
109
+ value: newValue,
110
+ date: newDate
111
+ }) : onChange === null || onChange === void 0 ? void 0 : onChange({
112
+ value: newValue
113
+ });
114
+ };
115
+
116
+ var handleIOnChange = function handleIOnChange(_ref2) {
117
+ var newValue = _ref2.value,
118
+ inputError = _ref2.error;
119
+ value !== null && value !== void 0 ? value : setInnerValue(newValue);
120
+ var dayjsDate = (0, _dayjs["default"])(newValue, format.toUpperCase(), true);
121
+ var invalidDateMessage = newValue !== "" && !dayjsDate.isValid() && translatedLabels.dateInput.invalidDateErrorMessage;
122
+ var callbackParams = inputError || invalidDateMessage ? {
123
+ value: newValue,
124
+ error: inputError || invalidDateMessage
125
+ } : {
126
+ value: newValue
127
+ };
128
+ dayjsDate.isValid() ? onChange === null || onChange === void 0 ? void 0 : onChange(_objectSpread(_objectSpread({}, callbackParams), {}, {
129
+ date: dayjsDate.toDate()
130
+ })) : onChange === null || onChange === void 0 ? void 0 : onChange(callbackParams);
131
+ };
132
+
133
+ var handleIOnBlur = function handleIOnBlur(_ref3) {
134
+ var value = _ref3.value,
135
+ inputError = _ref3.error;
136
+ var dayjsDate = (0, _dayjs["default"])(value, format.toUpperCase(), true);
137
+ var invalidDateMessage = value !== "" && !dayjsDate.isValid() && translatedLabels.dateInput.invalidDateErrorMessage;
138
+ var callbackParams = inputError || invalidDateMessage ? {
139
+ value: value,
140
+ error: inputError || invalidDateMessage
141
+ } : {
142
+ value: value
143
+ };
144
+ dayjsDate.isValid() ? onBlur === null || onBlur === void 0 ? void 0 : onBlur(_objectSpread(_objectSpread({}, callbackParams), {}, {
145
+ date: dayjsDate.toDate()
146
+ })) : onBlur === null || onBlur === void 0 ? void 0 : onBlur(callbackParams);
147
+ };
148
+
149
+ var openCalendar = function openCalendar() {
150
+ var dateBtn = refDate.current.getElementsByTagName("button")[0];
151
+ setIsOpen(!isOpen);
152
+ setAnchorEl(dateBtn);
153
+ };
154
+
155
+ var closeCalendar = function closeCalendar() {
156
+ setIsOpen(false);
157
+ };
158
+
159
+ var calendarAction = {
160
+ onClick: openCalendar,
161
+ icon: /*#__PURE__*/_react["default"].createElement("svg", {
162
+ xmlns: "http://www.w3.org/2000/svg",
163
+ height: "24",
164
+ viewBox: "0 0 24 24",
165
+ width: "24",
166
+ fill: "currentColor"
167
+ }, /*#__PURE__*/_react["default"].createElement("path", {
168
+ d: "M0 0h24v24H0z",
169
+ fill: "none"
170
+ }), /*#__PURE__*/_react["default"].createElement("path", {
171
+ d: "M20 3h-1V1h-2v2H7V1H5v2H4c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 18H4V8h16v13z"
172
+ }))
173
+ };
174
+ var dateTheme = (0, _core.createMuiTheme)({
175
+ overrides: {
176
+ MuiTypography: {
177
+ root: {
178
+ fontFamily: "".concat(colorsTheme.dateInput.pickerFontFamily, " !important")
179
+ }
180
+ },
181
+ MuiPickersYearSelection: {
182
+ container: {
183
+ color: colorsTheme.dateInput.pickerYearFontColor,
184
+ "&::-webkit-scrollbar": {
185
+ width: "3px"
186
+ },
187
+ "&::-webkit-scrollbar-track": {
188
+ backgroundColor: "#D9D9D9",
189
+ borderRadius: "3px"
190
+ },
191
+ "&::-webkit-scrollbar-thumb": {
192
+ backgroundColor: "#666666",
193
+ borderRadius: "3px"
194
+ }
195
+ }
196
+ },
197
+ MuiPickersToolbar: {
198
+ toolbar: {
199
+ backgroundColor: colorsTheme.dateInput.pickerBackgroundColor,
200
+ color: colorsTheme.dateInput.pickerDayFontColor
201
+ }
202
+ },
203
+ MuiIconButton: {
204
+ root: {
205
+ height: "36px",
206
+ width: "36px",
207
+ padding: "0px"
208
+ }
209
+ },
210
+ MuiTouchRipple: {
211
+ child: {
212
+ opacity: "0"
213
+ }
214
+ },
215
+ MuiButtonBase: {
216
+ root: {
217
+ "&:focus": {
218
+ outline: colorsTheme.dateInput.pickerFocusColor + " solid 2px"
219
+ }
220
+ }
221
+ },
222
+ MuiPickersBasePicker: {
223
+ pickerView: {
224
+ minWidth: "unset",
225
+ maxWidth: "unset",
226
+ minHeight: "unset",
227
+ padding: "0px 10px",
228
+ height: colorsTheme.dateInput.pickerHeight,
229
+ width: colorsTheme.dateInput.pickerWidth,
230
+ backgroundColor: colorsTheme.dateInput.pickerBackgroundColor,
231
+ fontFamily: colorsTheme.dateInput.pickerFontFamily
232
+ }
233
+ },
234
+ MuiPickersToolbarText: {
235
+ toolbarTxt: {
236
+ color: colorsTheme.dateInput.pickerActualDateFontColor,
237
+ fontFamily: colorsTheme.dateInput.pickerFontFamily,
238
+ fontSize: "2rem"
239
+ },
240
+ toolbarBtnSelected: {
241
+ color: colorsTheme.dateInput.pickerActualDateFontColor
242
+ }
243
+ },
244
+ MuiPickersCalendarHeader: {
245
+ transitionContainer: {
246
+ color: colorsTheme.dateInput.pickerMonthFontColor
247
+ },
248
+ dayLabel: {
249
+ color: colorsTheme.dateInput.pickerWeekFontColor,
250
+ fontFamily: colorsTheme.dateInput.pickerFontFamily
251
+ },
252
+ switchHeader: {
253
+ backgroundColor: "#ffffff",
254
+ color: colorsTheme.dateInput.pickerDayFontColor
255
+ },
256
+ iconButton: {
257
+ backgroundColor: colorsTheme.dateInput.pickerMonthArrowsBackgroundColor,
258
+ "&:hover": {
259
+ backgroundColor: colorsTheme.dateInput.pickerMonthArrowsBackgroundColor
260
+ }
261
+ }
262
+ },
263
+ MuiPickersCalendar: {
264
+ week: {
265
+ marginBottom: "2px"
266
+ }
267
+ },
268
+ MuiPickersDay: {
269
+ current: {
270
+ color: colorsTheme.dateInput.pickerDayFontColor
271
+ },
272
+ day: {
273
+ fontFamily: colorsTheme.dateInput.pickerFontFamily,
274
+ color: colorsTheme.dateInput.pickerDayFontColor,
275
+ "&:hover": {
276
+ backgroundColor: colorsTheme.dateInput.pickerHoverDateBackgroundColor,
277
+ color: colorsTheme.dateInput.pickerHoverDateFontColor
278
+ }
279
+ },
280
+ daySelected: {
281
+ backgroundColor: colorsTheme.dateInput.pickerSelectedDateBackgroundColor,
282
+ color: colorsTheme.dateInput.pickerSelectedDateColor,
283
+ "&:hover": {
284
+ backgroundColor: colorsTheme.dateInput.pickerSelectedDateBackgroundColor,
285
+ color: colorsTheme.dateInput.pickerSelectedDateColor,
286
+ opacity: "1"
287
+ }
288
+ }
289
+ },
290
+ MuiPickersYear: {
291
+ yearSelected: {
292
+ color: colorsTheme.dateInput.pickerSelectedDateColor,
293
+ backgroundColor: colorsTheme.dateInput.pickerSelectedDateBackgroundColor,
294
+ margin: "0px 100px",
295
+ borderRadius: "20px"
296
+ },
297
+ root: {
298
+ "&:focus": {
299
+ color: colorsTheme.dateInput.pickerHoverDateFontColor,
300
+ backgroundColor: colorsTheme.dateInput.pickerHoverDateBackgroundColor
301
+ }
302
+ }
303
+ },
304
+ MuiPickersModal: {
305
+ dialogAction: {
306
+ color: "pink"
307
+ }
308
+ }
309
+ }
310
+ });
311
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
312
+ theme: colorsTheme
313
+ }, /*#__PURE__*/_react["default"].createElement(_core.MuiThemeProvider, {
314
+ theme: dateTheme
315
+ }, /*#__PURE__*/_react["default"].createElement(_pickers.MuiPickersUtilsProvider, {
316
+ utils: _dayjs2["default"]
317
+ }, /*#__PURE__*/_react["default"].createElement(StyledDPicker, null, /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
318
+ label: label,
319
+ name: name,
320
+ defaultValue: defaultValue,
321
+ value: value !== null && value !== void 0 ? value : innerValue,
322
+ helperText: helperText,
323
+ placeholder: placeholder ? format.toUpperCase() : null,
324
+ action: calendarAction,
325
+ clearable: clearable,
326
+ disabled: disabled,
327
+ optional: optional,
328
+ onChange: handleIOnChange,
329
+ onBlur: handleIOnBlur,
330
+ error: error,
331
+ autocomplete: autocomplete,
332
+ margin: margin,
333
+ size: size,
334
+ tabIndex: tabIndex,
335
+ ref: refDate
336
+ }), /*#__PURE__*/_react["default"].createElement(_Popover["default"], {
337
+ onKeyDown: handleCalendarOnKeyDown,
338
+ open: isOpen,
339
+ anchorEl: anchorEl,
340
+ anchorOrigin: {
341
+ vertical: "bottom",
342
+ horizontal: "left"
343
+ },
344
+ transformOrigin: {
345
+ vertical: "top",
346
+ horizontal: "center"
347
+ },
348
+ PaperProps: {
349
+ style: {
350
+ marginTop: "10px"
351
+ }
352
+ }
353
+ }, /*#__PURE__*/_react["default"].createElement(_ClickAwayListener["default"], {
354
+ onClickAway: closeCalendar
355
+ }, /*#__PURE__*/_react["default"].createElement(_core.Paper, {
356
+ role: "dialog",
357
+ "aria-modal": "true"
358
+ }, /*#__PURE__*/_react["default"].createElement(_pickers.DatePicker, {
359
+ variant: "static",
360
+ value: getValueForPicker(value !== null && value !== void 0 ? value : innerValue, format),
361
+ onChange: function onChange(date) {
362
+ return handleCalendarOnClick(date);
363
+ },
364
+ format: format,
365
+ disabled: disabled
366
+ }))))))));
367
+ });
368
+
369
+ var StyledDPicker = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])([""])));
370
+
371
+ var _default = DxcDateInput;
372
+ exports["default"] = _default;
@@ -0,0 +1,138 @@
1
+ import React from "react";
2
+ import { userEvent, within, fireEvent, screen } from "@storybook/testing-library";
3
+ import DxcDateInput from "./DateInput";
4
+ import Title from "../../.storybook/components/Title";
5
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
6
+ import { BackgroundColorProvider } from "../BackgroundColorContext";
7
+ import DarkContainer from "../../.storybook/components/DarkSection";
8
+
9
+ export default {
10
+ title: "Date input",
11
+ component: DxcDateInput,
12
+ };
13
+
14
+ export const Chromatic = () => (
15
+ <>
16
+ <ExampleContainer>
17
+ <Title title="Complete date input" theme="light" level={4} />
18
+ <DxcDateInput label="Date input" helperText="Help message" format="dd/mm/yy" placeholder optional />
19
+ </ExampleContainer>
20
+ <ExampleContainer>
21
+ <Title title="Disabled" theme="light" level={4} />
22
+ <DxcDateInput label="Disabled date input" helperText="Help message" defaultValue="06-04-2027" clearable disabled />
23
+ </ExampleContainer>
24
+ <ExampleContainer>
25
+ <Title title="Invalid" theme="light" level={4} />
26
+ <DxcDateInput label="Error date input" error="Error message." placeholder />
27
+ </ExampleContainer>
28
+ <ExampleContainer>
29
+ <Title title="Relation between icons" theme="light" level={4} />
30
+ <DxcDateInput label="Error date input" error="Error message." defaultValue="06-04-2027" clearable />
31
+ </ExampleContainer>
32
+ <BackgroundColorProvider color="#333333">
33
+ <DarkContainer>
34
+ <Title title="Dark" theme="dark" level={2} />
35
+ <ExampleContainer>
36
+ <Title title="Complete date input" theme="dark" level={4} />
37
+ <DxcDateInput label="Date input" helperText="Help message" format="yyyy/dd/mm" placeholder optional />
38
+ </ExampleContainer>
39
+ <ExampleContainer>
40
+ <Title title="Disabled" theme="dark" level={4} />
41
+ <DxcDateInput label="Disabled Date input" helperText="Help message" defaultValue="06-04-2027" clearable disabled />
42
+ </ExampleContainer>
43
+ <ExampleContainer>
44
+ <Title title="Invalid" theme="dark" level={4} />
45
+ <DxcDateInput label="Error date input" error="Error message." placeholder />
46
+ </ExampleContainer>
47
+ <ExampleContainer>
48
+ <Title title="Relation between icons" theme="dark" level={4} />
49
+ <DxcDateInput label="Error date input" defaultValue="06-04-2027" error="Error message." clearable />
50
+ </ExampleContainer>
51
+ </DarkContainer>
52
+ </BackgroundColorProvider>
53
+ <Title title="Margins" theme="light" level={2} />
54
+ <ExampleContainer>
55
+ <Title title="Xxsmall" theme="light" level={4} />
56
+ <DxcDateInput label="Xxsmall" margin="xxsmall" />
57
+ </ExampleContainer>
58
+ <ExampleContainer>
59
+ <Title title="Xsmall" theme="light" level={4} />
60
+ <DxcDateInput label="Xsmall" margin="xsmall" />
61
+ </ExampleContainer>
62
+ <ExampleContainer>
63
+ <Title title="Small" theme="light" level={4} />
64
+ <DxcDateInput label="Small" margin="small" />
65
+ </ExampleContainer>
66
+ <ExampleContainer>
67
+ <Title title="Medium" theme="light" level={4} />
68
+ <DxcDateInput label="Medium" margin="medium" />
69
+ </ExampleContainer>
70
+ <ExampleContainer>
71
+ <Title title="Large" theme="light" level={4} />
72
+ <DxcDateInput label="Large" margin="large" />
73
+ </ExampleContainer>
74
+ <ExampleContainer>
75
+ <Title title="Xlarge" theme="light" level={4} />
76
+ <DxcDateInput label="Xlarge" margin="xlarge" />
77
+ </ExampleContainer>
78
+ <ExampleContainer>
79
+ <Title title="Xxlarge" theme="light" level={4} />
80
+ <DxcDateInput label="Xxlarge" margin="xxlarge" />
81
+ </ExampleContainer>
82
+ <Title title="Sizes" theme="light" level={2} />
83
+ <ExampleContainer>
84
+ <Title title="Medium size" theme="light" level={4} />
85
+ <DxcDateInput label="Medium" size="medium" />
86
+ </ExampleContainer>
87
+ <ExampleContainer>
88
+ <Title title="Large size" theme="light" level={4} />
89
+ <DxcDateInput label="Large" size="large" />
90
+ </ExampleContainer>
91
+ <ExampleContainer>
92
+ <Title title="FillParent size" theme="light" level={4} />
93
+ <DxcDateInput label="FillParent" size="fillParent" />
94
+ </ExampleContainer>
95
+ </>
96
+ );
97
+
98
+ const DatePicker = () => (
99
+ <ExampleContainer expanded>
100
+ <Title title="Show date input" theme="light" level={4} />
101
+ <DxcDateInput label="Date input" defaultValue="10-06-2023" />
102
+ </ExampleContainer>
103
+ );
104
+
105
+ export const ShowDatePicker = DatePicker.bind({});
106
+ ShowDatePicker.play = async ({ canvasElement }) => {
107
+ const canvas = within(canvasElement);
108
+ const dateBtn = canvas.getByRole("button");
109
+ await userEvent.click(dateBtn);
110
+ await userEvent.tab();
111
+ };
112
+
113
+ const YearPicker = () => (
114
+ <ExampleContainer expanded>
115
+ <Title title="Show date input" theme="light" level={4} />
116
+ <DxcDateInput label="Date input" defaultValue="10-06-2023" />
117
+ </ExampleContainer>
118
+ );
119
+
120
+ export const ShowYearPicker = YearPicker.bind({});
121
+ ShowYearPicker.play = async () => {
122
+ await fireEvent.click(screen.getByRole("button"));
123
+ await fireEvent.click(screen.getByText("2023"));
124
+ };
125
+
126
+ const YearPickerFocus = () => (
127
+ <ExampleContainer expanded>
128
+ <Title title="Show date input" theme="light" level={4} />
129
+ <DxcDateInput label="Date input" defaultValue="10-06-2023" />
130
+ </ExampleContainer>
131
+ );
132
+
133
+ export const ShowYearPickerFocus = YearPickerFocus.bind({});
134
+ ShowYearPickerFocus.play = async () => {
135
+ await fireEvent.click(screen.getByRole("button"));
136
+ await fireEvent.click(screen.getByText("2023"));
137
+ await screen.getByText("2021").focus();
138
+ };