@dxc-technology/halstack-react 0.0.0-90f64ff → 0.0.0-910214a

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 (455) 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 +168 -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 +518 -409
  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 +54 -207
  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/inset/Inset.d.ts +3 -0
  126. package/inset/Inset.js +84 -0
  127. package/inset/Inset.stories.tsx +229 -0
  128. package/inset/types.d.ts +37 -0
  129. package/inset/types.js +5 -0
  130. package/layout/ApplicationLayout.d.ts +11 -0
  131. package/layout/ApplicationLayout.js +199 -0
  132. package/layout/ApplicationLayout.stories.tsx +126 -0
  133. package/layout/Icons.d.ts +5 -0
  134. package/layout/Icons.js +66 -0
  135. package/layout/SidenavContext.d.ts +5 -0
  136. package/layout/SidenavContext.js +19 -0
  137. package/layout/types.d.ts +52 -0
  138. package/layout/types.js +5 -0
  139. package/link/Link.d.ts +4 -0
  140. package/link/Link.js +136 -0
  141. package/link/Link.stories.tsx +186 -0
  142. package/link/Link.test.js +83 -0
  143. package/link/types.d.ts +54 -0
  144. package/link/types.js +5 -0
  145. package/list/List.d.ts +4 -0
  146. package/list/List.js +47 -0
  147. package/list/List.stories.tsx +95 -0
  148. package/list/types.d.ts +7 -0
  149. package/list/types.js +5 -0
  150. package/main.d.ts +47 -0
  151. package/{dist/main.js → main.js} +145 -103
  152. package/number-input/NumberInput.d.ts +4 -0
  153. package/number-input/NumberInput.js +76 -0
  154. package/number-input/NumberInput.stories.tsx +115 -0
  155. package/number-input/NumberInput.test.js +506 -0
  156. package/number-input/NumberInputContext.d.ts +4 -0
  157. package/{dist/number/NumberContext.js → number-input/NumberInputContext.js} +6 -3
  158. package/number-input/numberInputContextTypes.d.ts +19 -0
  159. package/number-input/numberInputContextTypes.js +5 -0
  160. package/number-input/types.d.ts +124 -0
  161. package/number-input/types.js +5 -0
  162. package/package.json +38 -27
  163. package/paginator/Icons.js +66 -0
  164. package/paginator/Paginator.d.ts +4 -0
  165. package/paginator/Paginator.js +171 -0
  166. package/paginator/Paginator.stories.tsx +63 -0
  167. package/paginator/Paginator.test.js +266 -0
  168. package/paginator/types.d.ts +38 -0
  169. package/paginator/types.js +5 -0
  170. package/password-input/PasswordInput.d.ts +4 -0
  171. package/{dist/password/Password.js → password-input/PasswordInput.js} +48 -82
  172. package/password-input/PasswordInput.stories.tsx +131 -0
  173. package/password-input/PasswordInput.test.js +180 -0
  174. package/password-input/types.d.ts +110 -0
  175. package/password-input/types.js +5 -0
  176. package/progress-bar/ProgressBar.d.ts +4 -0
  177. package/{dist/progress-bar → progress-bar}/ProgressBar.js +23 -95
  178. package/progress-bar/ProgressBar.stories.jsx +58 -0
  179. package/progress-bar/ProgressBar.test.js +65 -0
  180. package/progress-bar/types.d.ts +37 -0
  181. package/progress-bar/types.js +5 -0
  182. package/quick-nav/QuickNav.d.ts +4 -0
  183. package/quick-nav/QuickNav.js +112 -0
  184. package/quick-nav/QuickNav.stories.tsx +237 -0
  185. package/quick-nav/types.d.ts +21 -0
  186. package/quick-nav/types.js +5 -0
  187. package/radio-group/Radio.d.ts +4 -0
  188. package/radio-group/Radio.js +141 -0
  189. package/radio-group/RadioGroup.d.ts +4 -0
  190. package/radio-group/RadioGroup.js +282 -0
  191. package/radio-group/RadioGroup.stories.tsx +100 -0
  192. package/radio-group/RadioGroup.test.js +695 -0
  193. package/radio-group/types.d.ts +114 -0
  194. package/radio-group/types.js +5 -0
  195. package/resultsetTable/ResultsetTable.d.ts +4 -0
  196. package/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +43 -147
  197. package/resultsetTable/ResultsetTable.stories.tsx +275 -0
  198. package/resultsetTable/ResultsetTable.test.js +306 -0
  199. package/resultsetTable/types.d.ts +67 -0
  200. package/resultsetTable/types.js +5 -0
  201. package/row/Row.d.ts +3 -0
  202. package/row/Row.js +127 -0
  203. package/row/Row.stories.tsx +237 -0
  204. package/row/types.d.ts +28 -0
  205. package/row/types.js +5 -0
  206. package/select/Icons.d.ts +10 -0
  207. package/select/Icons.js +93 -0
  208. package/select/Listbox.d.ts +4 -0
  209. package/select/Listbox.js +152 -0
  210. package/select/Option.d.ts +4 -0
  211. package/select/Option.js +110 -0
  212. package/select/Select.d.ts +4 -0
  213. package/select/Select.js +645 -0
  214. package/select/Select.stories.tsx +594 -0
  215. package/select/Select.test.js +2120 -0
  216. package/select/types.d.ts +213 -0
  217. package/select/types.js +5 -0
  218. package/sidenav/Sidenav.d.ts +9 -0
  219. package/sidenav/Sidenav.js +147 -0
  220. package/sidenav/Sidenav.stories.tsx +182 -0
  221. package/sidenav/Sidenav.test.js +56 -0
  222. package/sidenav/types.d.ts +50 -0
  223. package/sidenav/types.js +5 -0
  224. package/slider/Slider.d.ts +4 -0
  225. package/slider/Slider.js +318 -0
  226. package/slider/Slider.stories.tsx +177 -0
  227. package/slider/Slider.test.js +150 -0
  228. package/slider/types.d.ts +82 -0
  229. package/slider/types.js +5 -0
  230. package/spinner/Spinner.d.ts +4 -0
  231. package/spinner/Spinner.js +250 -0
  232. package/spinner/Spinner.stories.jsx +103 -0
  233. package/spinner/Spinner.test.js +64 -0
  234. package/spinner/types.d.ts +32 -0
  235. package/spinner/types.js +5 -0
  236. package/stack/Stack.d.ts +3 -0
  237. package/stack/Stack.js +97 -0
  238. package/stack/Stack.stories.tsx +164 -0
  239. package/stack/types.d.ts +24 -0
  240. package/stack/types.js +5 -0
  241. package/switch/Switch.d.ts +4 -0
  242. package/switch/Switch.js +195 -0
  243. package/switch/Switch.stories.tsx +160 -0
  244. package/switch/Switch.test.js +98 -0
  245. package/switch/types.d.ts +62 -0
  246. package/switch/types.js +5 -0
  247. package/table/Table.d.ts +4 -0
  248. package/{dist/table → table}/Table.js +12 -26
  249. package/table/Table.stories.jsx +277 -0
  250. package/table/Table.test.js +26 -0
  251. package/table/types.d.ts +21 -0
  252. package/table/types.js +5 -0
  253. package/tabs/Tabs.d.ts +4 -0
  254. package/tabs/Tabs.js +211 -0
  255. package/tabs/Tabs.stories.tsx +112 -0
  256. package/tabs/Tabs.test.js +140 -0
  257. package/tabs/types.d.ts +82 -0
  258. package/tabs/types.js +5 -0
  259. package/tabs-nav/NavTabs.d.ts +8 -0
  260. package/tabs-nav/NavTabs.js +125 -0
  261. package/tabs-nav/NavTabs.stories.tsx +170 -0
  262. package/tabs-nav/NavTabs.test.js +82 -0
  263. package/tabs-nav/Tab.d.ts +4 -0
  264. package/tabs-nav/Tab.js +132 -0
  265. package/tabs-nav/types.d.ts +53 -0
  266. package/tabs-nav/types.js +5 -0
  267. package/tag/Tag.d.ts +4 -0
  268. package/tag/Tag.js +183 -0
  269. package/tag/Tag.stories.tsx +142 -0
  270. package/tag/Tag.test.js +60 -0
  271. package/tag/types.d.ts +69 -0
  272. package/tag/types.js +5 -0
  273. package/text/Text.d.ts +7 -0
  274. package/text/Text.js +30 -0
  275. package/text/Text.stories.tsx +19 -0
  276. package/text-input/Suggestion.d.ts +4 -0
  277. package/text-input/Suggestion.js +55 -0
  278. package/text-input/TextInput.d.ts +4 -0
  279. package/text-input/TextInput.js +770 -0
  280. package/text-input/TextInput.stories.tsx +474 -0
  281. package/text-input/TextInput.test.js +1712 -0
  282. package/text-input/types.d.ts +178 -0
  283. package/text-input/types.js +5 -0
  284. package/textarea/Textarea.d.ts +4 -0
  285. package/{dist/new-textarea/NewTextarea.js → textarea/Textarea.js} +88 -157
  286. package/textarea/Textarea.stories.jsx +157 -0
  287. package/textarea/Textarea.test.js +437 -0
  288. package/textarea/types.d.ts +137 -0
  289. package/textarea/types.js +5 -0
  290. package/toggle-group/ToggleGroup.d.ts +4 -0
  291. package/toggle-group/ToggleGroup.js +215 -0
  292. package/toggle-group/ToggleGroup.stories.tsx +173 -0
  293. package/toggle-group/ToggleGroup.test.js +156 -0
  294. package/toggle-group/types.d.ts +105 -0
  295. package/toggle-group/types.js +5 -0
  296. package/useTheme.d.ts +2 -0
  297. package/{dist/useTheme.js → useTheme.js} +2 -2
  298. package/useTranslatedLabels.d.ts +2 -0
  299. package/useTranslatedLabels.js +20 -0
  300. package/wizard/Wizard.d.ts +4 -0
  301. package/wizard/Wizard.js +292 -0
  302. package/wizard/Wizard.stories.tsx +214 -0
  303. package/wizard/Wizard.test.js +141 -0
  304. package/wizard/types.d.ts +64 -0
  305. package/wizard/types.js +5 -0
  306. package/README.md +0 -66
  307. package/babel.config.js +0 -8
  308. package/dist/BackgroundColorContext.js +0 -46
  309. package/dist/ThemeContext.js +0 -240
  310. package/dist/accordion/Accordion.js +0 -353
  311. package/dist/accordion-group/AccordionGroup.js +0 -186
  312. package/dist/badge/Badge.js +0 -63
  313. package/dist/box/Box.js +0 -156
  314. package/dist/card/Card.js +0 -254
  315. package/dist/checkbox/Checkbox.stories.js +0 -144
  316. package/dist/checkbox/readme.md +0 -116
  317. package/dist/chip/Chip.js +0 -265
  318. package/dist/date/Date.js +0 -381
  319. package/dist/date/Date.stories.js +0 -205
  320. package/dist/date/readme.md +0 -73
  321. package/dist/dialog/Dialog.js +0 -218
  322. package/dist/footer/Footer.js +0 -395
  323. package/dist/footer/Footer.stories.js +0 -94
  324. package/dist/footer/dxc_logo.svg +0 -15
  325. package/dist/footer/readme.md +0 -41
  326. package/dist/header/Header.js +0 -403
  327. package/dist/header/Header.stories.js +0 -176
  328. package/dist/header/close_icon.svg +0 -1
  329. package/dist/header/dxc_logo_black.svg +0 -8
  330. package/dist/header/hamb_menu_black.svg +0 -1
  331. package/dist/header/hamb_menu_white.svg +0 -1
  332. package/dist/header/readme.md +0 -33
  333. package/dist/input-text/InputText.js +0 -707
  334. package/dist/input-text/InputText.stories.js +0 -209
  335. package/dist/input-text/error.svg +0 -1
  336. package/dist/input-text/readme.md +0 -91
  337. package/dist/layout/ApplicationLayout.js +0 -331
  338. package/dist/layout/facebook.svg +0 -45
  339. package/dist/layout/linkedin.svg +0 -50
  340. package/dist/layout/twitter.svg +0 -53
  341. package/dist/link/Link.js +0 -241
  342. package/dist/link/readme.md +0 -51
  343. package/dist/new-date/NewDate.js +0 -403
  344. package/dist/new-input-text/NewInputText.js +0 -961
  345. package/dist/number/Number.js +0 -138
  346. package/dist/paginator/Paginator.js +0 -289
  347. package/dist/paginator/images/next.svg +0 -3
  348. package/dist/paginator/images/nextPage.svg +0 -3
  349. package/dist/paginator/images/previous.svg +0 -3
  350. package/dist/paginator/images/previousPage.svg +0 -3
  351. package/dist/paginator/readme.md +0 -50
  352. package/dist/password/styles.css +0 -3
  353. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  354. package/dist/progress-bar/readme.md +0 -63
  355. package/dist/radio/Radio.js +0 -209
  356. package/dist/radio/Radio.stories.js +0 -166
  357. package/dist/radio/readme.md +0 -70
  358. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  359. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  360. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  361. package/dist/select/Select.js +0 -585
  362. package/dist/select/Select.stories.js +0 -235
  363. package/dist/select/readme.md +0 -72
  364. package/dist/sidenav/Sidenav.js +0 -177
  365. package/dist/slider/Slider.js +0 -319
  366. package/dist/slider/Slider.stories.js +0 -241
  367. package/dist/slider/readme.md +0 -64
  368. package/dist/spinner/Spinner.js +0 -381
  369. package/dist/spinner/Spinner.stories.js +0 -183
  370. package/dist/spinner/readme.md +0 -65
  371. package/dist/switch/Switch.js +0 -222
  372. package/dist/switch/Switch.stories.js +0 -134
  373. package/dist/switch/readme.md +0 -133
  374. package/dist/tabs/Tabs.js +0 -343
  375. package/dist/tabs/Tabs.stories.js +0 -130
  376. package/dist/tabs/readme.md +0 -78
  377. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  378. package/dist/tabs-for-sections/readme.md +0 -78
  379. package/dist/tag/Tag.js +0 -288
  380. package/dist/textarea/Textarea.js +0 -264
  381. package/dist/toggle/Toggle.js +0 -220
  382. package/dist/toggle/Toggle.stories.js +0 -297
  383. package/dist/toggle/readme.md +0 -80
  384. package/dist/toggle-group/ToggleGroup.js +0 -223
  385. package/dist/upload/Upload.js +0 -205
  386. package/dist/upload/Upload.stories.js +0 -72
  387. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -139
  388. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  389. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  390. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  391. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  392. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  393. package/dist/upload/file-upload/FileToUpload.js +0 -184
  394. package/dist/upload/file-upload/audio-icon.svg +0 -4
  395. package/dist/upload/file-upload/close.svg +0 -4
  396. package/dist/upload/file-upload/file-icon.svg +0 -4
  397. package/dist/upload/file-upload/video-icon.svg +0 -4
  398. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  399. package/dist/upload/readme.md +0 -37
  400. package/dist/upload/transaction/Transaction.js +0 -175
  401. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  402. package/dist/upload/transaction/audio-icon.svg +0 -4
  403. package/dist/upload/transaction/error-icon.svg +0 -4
  404. package/dist/upload/transaction/file-icon-err.svg +0 -4
  405. package/dist/upload/transaction/file-icon.svg +0 -4
  406. package/dist/upload/transaction/image-icon-err.svg +0 -4
  407. package/dist/upload/transaction/image-icon.svg +0 -4
  408. package/dist/upload/transaction/success-icon.svg +0 -4
  409. package/dist/upload/transaction/video-icon-err.svg +0 -4
  410. package/dist/upload/transaction/video-icon.svg +0 -4
  411. package/dist/upload/transactions/Transactions.js +0 -138
  412. package/dist/wizard/Wizard.js +0 -411
  413. package/dist/wizard/invalid_icon.svg +0 -5
  414. package/dist/wizard/valid_icon.svg +0 -5
  415. package/dist/wizard/validation-wrong.svg +0 -6
  416. package/test/Accordion.test.js +0 -33
  417. package/test/AccordionGroup.test.js +0 -125
  418. package/test/Alert.test.js +0 -53
  419. package/test/Box.test.js +0 -10
  420. package/test/Button.test.js +0 -18
  421. package/test/Card.test.js +0 -30
  422. package/test/Checkbox.test.js +0 -45
  423. package/test/Chip.test.js +0 -25
  424. package/test/Date.test.js +0 -393
  425. package/test/Dialog.test.js +0 -23
  426. package/test/Dropdown.test.js +0 -145
  427. package/test/Footer.test.js +0 -99
  428. package/test/Header.test.js +0 -39
  429. package/test/Heading.test.js +0 -35
  430. package/test/InputText.test.js +0 -240
  431. package/test/Link.test.js +0 -43
  432. package/test/NewDate.test.js +0 -203
  433. package/test/NewInputText.test.js +0 -817
  434. package/test/NewTextarea.test.js +0 -201
  435. package/test/Number.test.js +0 -241
  436. package/test/Paginator.test.js +0 -177
  437. package/test/Password.test.js +0 -76
  438. package/test/ProgressBar.test.js +0 -35
  439. package/test/Radio.test.js +0 -37
  440. package/test/ResultsetTable.test.js +0 -330
  441. package/test/Select.test.js +0 -189
  442. package/test/Sidenav.test.js +0 -45
  443. package/test/Slider.test.js +0 -82
  444. package/test/Spinner.test.js +0 -32
  445. package/test/Switch.test.js +0 -45
  446. package/test/Table.test.js +0 -36
  447. package/test/Tabs.test.js +0 -109
  448. package/test/TabsForSections.test.js +0 -34
  449. package/test/Tag.test.js +0 -32
  450. package/test/TextArea.test.js +0 -52
  451. package/test/ToggleGroup.test.js +0 -81
  452. package/test/Upload.test.js +0 -60
  453. package/test/Wizard.test.js +0 -130
  454. package/test/mocks/pngMock.js +0 -1
  455. 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
+ };