@dxc-technology/halstack-react 0.0.0-e9d5d69 → 0.0.0-ead0374

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 (563) hide show
  1. package/BackgroundColorContext.d.ts +1 -0
  2. package/BackgroundColorContext.js +30 -0
  3. package/HalstackContext.d.ts +1249 -0
  4. package/HalstackContext.js +310 -0
  5. package/README.md +28 -47
  6. package/accordion/Accordion.d.ts +4 -0
  7. package/accordion/Accordion.js +169 -0
  8. package/accordion/Accordion.stories.tsx +252 -0
  9. package/accordion/Accordion.test.js +56 -0
  10. package/accordion/types.d.ts +57 -0
  11. package/accordion/types.js +5 -0
  12. package/accordion-group/AccordionGroup.d.ts +7 -0
  13. package/accordion-group/AccordionGroup.js +101 -0
  14. package/accordion-group/AccordionGroup.stories.tsx +252 -0
  15. package/accordion-group/AccordionGroup.test.js +98 -0
  16. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  17. package/accordion-group/AccordionGroupAccordion.js +31 -0
  18. package/accordion-group/AccordionGroupContext.d.ts +3 -0
  19. package/accordion-group/AccordionGroupContext.js +8 -0
  20. package/accordion-group/types.d.ts +67 -0
  21. package/accordion-group/types.js +5 -0
  22. package/action-icon/ActionIcon.d.ts +4 -0
  23. package/action-icon/ActionIcon.js +47 -0
  24. package/action-icon/ActionIcon.stories.tsx +41 -0
  25. package/action-icon/ActionIcon.test.js +64 -0
  26. package/action-icon/types.d.ts +26 -0
  27. package/action-icon/types.js +5 -0
  28. package/alert/Alert.d.ts +4 -0
  29. package/alert/Alert.js +254 -0
  30. package/alert/Alert.stories.tsx +198 -0
  31. package/alert/Alert.test.js +75 -0
  32. package/alert/types.d.ts +49 -0
  33. package/alert/types.js +5 -0
  34. package/badge/Badge.d.ts +4 -0
  35. package/badge/Badge.js +159 -0
  36. package/badge/Badge.stories.tsx +210 -0
  37. package/badge/Badge.test.js +30 -0
  38. package/badge/types.d.ts +54 -0
  39. package/badge/types.js +5 -0
  40. package/bleed/Bleed.d.ts +3 -0
  41. package/bleed/Bleed.js +43 -0
  42. package/bleed/Bleed.stories.tsx +342 -0
  43. package/bleed/types.d.ts +37 -0
  44. package/bleed/types.js +5 -0
  45. package/box/Box.d.ts +4 -0
  46. package/box/Box.js +75 -0
  47. package/box/Box.stories.tsx +119 -0
  48. package/box/Box.test.js +13 -0
  49. package/box/types.d.ts +32 -0
  50. package/box/types.js +5 -0
  51. package/bulleted-list/BulletedList.d.ts +7 -0
  52. package/bulleted-list/BulletedList.js +89 -0
  53. package/bulleted-list/BulletedList.stories.tsx +115 -0
  54. package/bulleted-list/types.d.ts +38 -0
  55. package/bulleted-list/types.js +5 -0
  56. package/button/Button.d.ts +4 -0
  57. package/button/Button.js +121 -0
  58. package/button/Button.stories.tsx +326 -0
  59. package/button/Button.test.js +38 -0
  60. package/button/types.d.ts +57 -0
  61. package/button/types.js +5 -0
  62. package/card/Card.d.ts +4 -0
  63. package/card/Card.js +120 -0
  64. package/card/Card.stories.tsx +171 -0
  65. package/card/Card.test.js +39 -0
  66. package/card/types.d.ts +62 -0
  67. package/card/types.js +5 -0
  68. package/checkbox/Checkbox.d.ts +4 -0
  69. package/checkbox/Checkbox.js +215 -0
  70. package/checkbox/Checkbox.stories.tsx +222 -0
  71. package/checkbox/Checkbox.test.js +199 -0
  72. package/checkbox/types.d.ts +72 -0
  73. package/checkbox/types.js +5 -0
  74. package/chip/Chip.d.ts +4 -0
  75. package/chip/Chip.js +121 -0
  76. package/chip/Chip.stories.tsx +214 -0
  77. package/chip/Chip.test.js +41 -0
  78. package/chip/types.d.ts +45 -0
  79. package/chip/types.js +5 -0
  80. package/common/coreTokens.d.ts +237 -0
  81. package/common/coreTokens.js +184 -0
  82. package/common/utils.d.ts +1 -0
  83. package/common/utils.js +16 -0
  84. package/common/variables.d.ts +1395 -0
  85. package/common/variables.js +1267 -0
  86. package/container/Container.d.ts +4 -0
  87. package/container/Container.js +194 -0
  88. package/container/Container.stories.tsx +214 -0
  89. package/container/types.d.ts +74 -0
  90. package/container/types.js +5 -0
  91. package/contextual-menu/ContextualMenu.d.ts +7 -0
  92. package/contextual-menu/ContextualMenu.js +71 -0
  93. package/contextual-menu/ContextualMenu.stories.tsx +182 -0
  94. package/contextual-menu/ContextualMenu.test.js +71 -0
  95. package/contextual-menu/MenuItemAction.d.ts +4 -0
  96. package/contextual-menu/MenuItemAction.js +46 -0
  97. package/contextual-menu/types.d.ts +22 -0
  98. package/contextual-menu/types.js +5 -0
  99. package/date-input/Calendar.d.ts +4 -0
  100. package/date-input/Calendar.js +214 -0
  101. package/date-input/DateInput.d.ts +4 -0
  102. package/date-input/DateInput.js +223 -0
  103. package/date-input/DateInput.stories.tsx +285 -0
  104. package/date-input/DateInput.test.js +808 -0
  105. package/date-input/DatePicker.d.ts +4 -0
  106. package/date-input/DatePicker.js +115 -0
  107. package/date-input/Icons.d.ts +6 -0
  108. package/date-input/Icons.js +58 -0
  109. package/date-input/YearPicker.d.ts +4 -0
  110. package/date-input/YearPicker.js +100 -0
  111. package/date-input/types.d.ts +164 -0
  112. package/date-input/types.js +5 -0
  113. package/dialog/Dialog.d.ts +4 -0
  114. package/dialog/Dialog.js +104 -0
  115. package/dialog/Dialog.stories.tsx +365 -0
  116. package/dialog/Dialog.test.js +307 -0
  117. package/dialog/types.d.ts +36 -0
  118. package/dialog/types.js +5 -0
  119. package/divider/Divider.d.ts +4 -0
  120. package/divider/Divider.js +36 -0
  121. package/divider/Divider.stories.tsx +223 -0
  122. package/divider/Divider.test.js +38 -0
  123. package/divider/types.d.ts +21 -0
  124. package/divider/types.js +5 -0
  125. package/dropdown/Dropdown.d.ts +4 -0
  126. package/dropdown/Dropdown.js +336 -0
  127. package/dropdown/Dropdown.stories.tsx +438 -0
  128. package/dropdown/Dropdown.test.js +599 -0
  129. package/dropdown/DropdownMenu.d.ts +4 -0
  130. package/dropdown/DropdownMenu.js +63 -0
  131. package/dropdown/DropdownMenuItem.d.ts +4 -0
  132. package/dropdown/DropdownMenuItem.js +67 -0
  133. package/dropdown/types.d.ts +98 -0
  134. package/dropdown/types.js +5 -0
  135. package/file-input/FileInput.d.ts +4 -0
  136. package/file-input/FileInput.js +479 -0
  137. package/file-input/FileInput.stories.tsx +618 -0
  138. package/file-input/FileInput.test.js +459 -0
  139. package/file-input/FileItem.d.ts +4 -0
  140. package/file-input/FileItem.js +135 -0
  141. package/file-input/types.d.ts +129 -0
  142. package/file-input/types.js +5 -0
  143. package/flex/Flex.d.ts +4 -0
  144. package/flex/Flex.js +57 -0
  145. package/flex/Flex.stories.tsx +112 -0
  146. package/flex/types.d.ts +97 -0
  147. package/flex/types.js +5 -0
  148. package/footer/Footer.d.ts +4 -0
  149. package/footer/Footer.js +138 -0
  150. package/footer/Footer.stories.tsx +171 -0
  151. package/footer/Footer.test.js +85 -0
  152. package/footer/Icons.d.ts +3 -0
  153. package/footer/Icons.js +136 -0
  154. package/footer/types.d.ts +64 -0
  155. package/footer/types.js +5 -0
  156. package/grid/Grid.d.ts +7 -0
  157. package/grid/Grid.js +76 -0
  158. package/grid/Grid.stories.tsx +219 -0
  159. package/grid/types.d.ts +115 -0
  160. package/grid/types.js +5 -0
  161. package/header/Header.d.ts +8 -0
  162. package/header/Header.js +220 -0
  163. package/header/Header.stories.tsx +251 -0
  164. package/header/Header.test.js +66 -0
  165. package/header/Icons.d.ts +2 -0
  166. package/header/Icons.js +29 -0
  167. package/header/types.d.ts +33 -0
  168. package/header/types.js +5 -0
  169. package/heading/Heading.d.ts +4 -0
  170. package/heading/Heading.js +137 -0
  171. package/heading/Heading.stories.tsx +54 -0
  172. package/heading/Heading.test.js +169 -0
  173. package/heading/types.d.ts +33 -0
  174. package/heading/types.js +5 -0
  175. package/icon/Icon.d.ts +4 -0
  176. package/icon/Icon.js +33 -0
  177. package/icon/Icon.stories.tsx +28 -0
  178. package/icon/types.d.ts +4 -0
  179. package/icon/types.js +5 -0
  180. package/image/Image.d.ts +4 -0
  181. package/image/Image.js +70 -0
  182. package/image/Image.stories.tsx +129 -0
  183. package/image/types.d.ts +72 -0
  184. package/image/types.js +5 -0
  185. package/inset/Inset.d.ts +3 -0
  186. package/inset/Inset.js +43 -0
  187. package/inset/Inset.stories.tsx +230 -0
  188. package/inset/types.d.ts +37 -0
  189. package/inset/types.js +5 -0
  190. package/layout/ApplicationLayout.d.ts +20 -0
  191. package/layout/ApplicationLayout.js +134 -0
  192. package/layout/ApplicationLayout.stories.tsx +162 -0
  193. package/layout/Icons.d.ts +8 -0
  194. package/layout/Icons.js +58 -0
  195. package/layout/types.d.ts +41 -0
  196. package/layout/types.js +5 -0
  197. package/link/Link.d.ts +4 -0
  198. package/link/Link.js +115 -0
  199. package/link/Link.stories.tsx +253 -0
  200. package/link/Link.test.js +63 -0
  201. package/link/types.d.ts +54 -0
  202. package/link/types.js +5 -0
  203. package/main.d.ts +49 -0
  204. package/{dist/main.js → main.js} +177 -99
  205. package/nav-tabs/NavTabs.d.ts +7 -0
  206. package/nav-tabs/NavTabs.js +93 -0
  207. package/nav-tabs/NavTabs.stories.tsx +276 -0
  208. package/nav-tabs/NavTabs.test.js +76 -0
  209. package/nav-tabs/NavTabsContext.d.ts +3 -0
  210. package/nav-tabs/NavTabsContext.js +8 -0
  211. package/nav-tabs/Tab.d.ts +4 -0
  212. package/nav-tabs/Tab.js +118 -0
  213. package/nav-tabs/types.d.ts +52 -0
  214. package/nav-tabs/types.js +5 -0
  215. package/number-input/NumberInput.d.ts +4 -0
  216. package/number-input/NumberInput.js +86 -0
  217. package/number-input/NumberInput.stories.tsx +131 -0
  218. package/number-input/NumberInput.test.js +989 -0
  219. package/number-input/NumberInputContext.d.ts +3 -0
  220. package/number-input/NumberInputContext.js +8 -0
  221. package/number-input/types.d.ts +136 -0
  222. package/number-input/types.js +5 -0
  223. package/package.json +60 -45
  224. package/paginator/Icons.d.ts +5 -0
  225. package/paginator/Icons.js +40 -0
  226. package/paginator/Paginator.d.ts +4 -0
  227. package/paginator/Paginator.js +135 -0
  228. package/paginator/Paginator.stories.tsx +87 -0
  229. package/paginator/Paginator.test.js +335 -0
  230. package/paginator/types.d.ts +38 -0
  231. package/paginator/types.js +5 -0
  232. package/paragraph/Paragraph.d.ts +5 -0
  233. package/paragraph/Paragraph.js +22 -0
  234. package/paragraph/Paragraph.stories.tsx +27 -0
  235. package/password-input/Icons.d.ts +6 -0
  236. package/password-input/Icons.js +35 -0
  237. package/password-input/PasswordInput.d.ts +4 -0
  238. package/password-input/PasswordInput.js +97 -0
  239. package/password-input/PasswordInput.stories.tsx +99 -0
  240. package/password-input/PasswordInput.test.js +198 -0
  241. package/password-input/types.d.ts +111 -0
  242. package/password-input/types.js +5 -0
  243. package/progress-bar/ProgressBar.d.ts +4 -0
  244. package/progress-bar/ProgressBar.js +144 -0
  245. package/progress-bar/ProgressBar.stories.tsx +93 -0
  246. package/progress-bar/ProgressBar.test.js +93 -0
  247. package/progress-bar/types.d.ts +37 -0
  248. package/progress-bar/types.js +5 -0
  249. package/quick-nav/QuickNav.d.ts +4 -0
  250. package/quick-nav/QuickNav.js +94 -0
  251. package/quick-nav/QuickNav.stories.tsx +356 -0
  252. package/quick-nav/types.d.ts +21 -0
  253. package/quick-nav/types.js +5 -0
  254. package/radio-group/Radio.d.ts +4 -0
  255. package/radio-group/Radio.js +124 -0
  256. package/radio-group/RadioGroup.d.ts +4 -0
  257. package/radio-group/RadioGroup.js +235 -0
  258. package/radio-group/RadioGroup.stories.tsx +214 -0
  259. package/radio-group/RadioGroup.test.js +756 -0
  260. package/radio-group/types.d.ts +114 -0
  261. package/radio-group/types.js +5 -0
  262. package/resultset-table/Icons.d.ts +7 -0
  263. package/resultset-table/Icons.js +47 -0
  264. package/resultset-table/ResultsetTable.d.ts +7 -0
  265. package/resultset-table/ResultsetTable.js +166 -0
  266. package/resultset-table/ResultsetTable.stories.tsx +397 -0
  267. package/resultset-table/ResultsetTable.test.js +371 -0
  268. package/resultset-table/types.d.ts +73 -0
  269. package/resultset-table/types.js +5 -0
  270. package/select/Icons.d.ts +10 -0
  271. package/select/Icons.js +89 -0
  272. package/select/Listbox.d.ts +4 -0
  273. package/select/Listbox.js +143 -0
  274. package/select/Option.d.ts +4 -0
  275. package/select/Option.js +87 -0
  276. package/select/Select.d.ts +4 -0
  277. package/select/Select.js +590 -0
  278. package/select/Select.stories.tsx +971 -0
  279. package/select/Select.test.js +2370 -0
  280. package/select/types.d.ts +209 -0
  281. package/select/types.js +5 -0
  282. package/sidenav/Icons.d.ts +7 -0
  283. package/sidenav/Icons.js +47 -0
  284. package/sidenav/Sidenav.d.ts +10 -0
  285. package/sidenav/Sidenav.js +197 -0
  286. package/sidenav/Sidenav.stories.tsx +282 -0
  287. package/sidenav/Sidenav.test.js +37 -0
  288. package/sidenav/SidenavContext.d.ts +5 -0
  289. package/sidenav/SidenavContext.js +13 -0
  290. package/sidenav/types.d.ts +76 -0
  291. package/sidenav/types.js +5 -0
  292. package/slider/Slider.d.ts +4 -0
  293. package/slider/Slider.js +285 -0
  294. package/slider/Slider.test.js +254 -0
  295. package/slider/types.d.ts +86 -0
  296. package/slider/types.js +5 -0
  297. package/spinner/Spinner.d.ts +4 -0
  298. package/spinner/Spinner.js +206 -0
  299. package/spinner/Spinner.stories.tsx +129 -0
  300. package/spinner/Spinner.test.js +55 -0
  301. package/spinner/types.d.ts +32 -0
  302. package/spinner/types.js +5 -0
  303. package/status-light/StatusLight.d.ts +4 -0
  304. package/status-light/StatusLight.js +51 -0
  305. package/status-light/StatusLight.stories.tsx +74 -0
  306. package/status-light/StatusLight.test.js +25 -0
  307. package/status-light/types.d.ts +17 -0
  308. package/status-light/types.js +5 -0
  309. package/switch/Switch.d.ts +4 -0
  310. package/switch/Switch.js +214 -0
  311. package/switch/Switch.stories.tsx +137 -0
  312. package/switch/Switch.test.js +180 -0
  313. package/switch/types.d.ts +66 -0
  314. package/switch/types.js +5 -0
  315. package/table/DropdownTheme.js +62 -0
  316. package/table/Table.d.ts +8 -0
  317. package/table/Table.js +170 -0
  318. package/table/Table.stories.tsx +658 -0
  319. package/table/Table.test.js +113 -0
  320. package/table/types.d.ts +63 -0
  321. package/table/types.js +5 -0
  322. package/tabs/Tab.d.ts +4 -0
  323. package/tabs/Tab.js +116 -0
  324. package/tabs/Tabs.d.ts +4 -0
  325. package/tabs/Tabs.js +384 -0
  326. package/tabs/Tabs.stories.tsx +226 -0
  327. package/tabs/Tabs.test.js +294 -0
  328. package/tabs/types.d.ts +92 -0
  329. package/tabs/types.js +5 -0
  330. package/tag/Tag.d.ts +4 -0
  331. package/tag/Tag.js +151 -0
  332. package/tag/Tag.stories.tsx +155 -0
  333. package/tag/Tag.test.js +49 -0
  334. package/tag/types.d.ts +69 -0
  335. package/tag/types.js +5 -0
  336. package/text-input/Icons.d.ts +8 -0
  337. package/text-input/Icons.js +56 -0
  338. package/text-input/Suggestion.d.ts +4 -0
  339. package/text-input/Suggestion.js +67 -0
  340. package/text-input/Suggestions.d.ts +4 -0
  341. package/text-input/Suggestions.js +84 -0
  342. package/text-input/TextInput.d.ts +4 -0
  343. package/text-input/TextInput.js +565 -0
  344. package/text-input/TextInput.stories.tsx +465 -0
  345. package/text-input/TextInput.test.js +1756 -0
  346. package/text-input/types.d.ts +205 -0
  347. package/text-input/types.js +5 -0
  348. package/textarea/Textarea.d.ts +4 -0
  349. package/textarea/Textarea.js +234 -0
  350. package/textarea/Textarea.stories.tsx +174 -0
  351. package/textarea/Textarea.test.js +406 -0
  352. package/textarea/types.d.ts +141 -0
  353. package/textarea/types.js +5 -0
  354. package/toggle-group/ToggleGroup.d.ts +4 -0
  355. package/toggle-group/ToggleGroup.js +201 -0
  356. package/toggle-group/ToggleGroup.stories.tsx +218 -0
  357. package/toggle-group/ToggleGroup.test.js +137 -0
  358. package/toggle-group/types.d.ts +114 -0
  359. package/toggle-group/types.js +5 -0
  360. package/typography/Typography.d.ts +4 -0
  361. package/typography/Typography.js +23 -0
  362. package/typography/Typography.stories.tsx +198 -0
  363. package/typography/types.d.ts +18 -0
  364. package/typography/types.js +5 -0
  365. package/useTheme.d.ts +1148 -0
  366. package/useTheme.js +15 -0
  367. package/useTranslatedLabels.d.ts +85 -0
  368. package/useTranslatedLabels.js +14 -0
  369. package/utils/BaseTypography.d.ts +21 -0
  370. package/utils/BaseTypography.js +94 -0
  371. package/utils/FocusLock.d.ts +13 -0
  372. package/utils/FocusLock.js +124 -0
  373. package/wizard/Wizard.d.ts +4 -0
  374. package/wizard/Wizard.js +250 -0
  375. package/wizard/Wizard.stories.tsx +253 -0
  376. package/wizard/Wizard.test.js +114 -0
  377. package/wizard/types.d.ts +64 -0
  378. package/wizard/types.js +5 -0
  379. package/babel.config.js +0 -4
  380. package/dist/ThemeContext.js +0 -15
  381. package/dist/accordion/Accordion.js +0 -268
  382. package/dist/accordion/Accordion.stories.js +0 -207
  383. package/dist/accordion/readme.md +0 -96
  384. package/dist/alert/Alert.js +0 -304
  385. package/dist/alert/Alert.stories.js +0 -158
  386. package/dist/alert/close.svg +0 -4
  387. package/dist/alert/error.svg +0 -4
  388. package/dist/alert/info.svg +0 -4
  389. package/dist/alert/readme.md +0 -43
  390. package/dist/alert/success.svg +0 -4
  391. package/dist/alert/warning.svg +0 -4
  392. package/dist/box/Box.js +0 -148
  393. package/dist/button/Button.js +0 -202
  394. package/dist/button/Button.stories.js +0 -224
  395. package/dist/button/readme.md +0 -93
  396. package/dist/card/Card.js +0 -217
  397. package/dist/checkbox/Checkbox.js +0 -240
  398. package/dist/checkbox/Checkbox.stories.js +0 -144
  399. package/dist/checkbox/readme.md +0 -116
  400. package/dist/chip/Chip.js +0 -208
  401. package/dist/common/OpenSans.css +0 -81
  402. package/dist/common/RequiredComponent.js +0 -46
  403. package/dist/common/fonts/OpenSans-Bold.ttf +0 -0
  404. package/dist/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  405. package/dist/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  406. package/dist/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  407. package/dist/common/fonts/OpenSans-Italic.ttf +0 -0
  408. package/dist/common/fonts/OpenSans-Light.ttf +0 -0
  409. package/dist/common/fonts/OpenSans-LightItalic.ttf +0 -0
  410. package/dist/common/fonts/OpenSans-Regular.ttf +0 -0
  411. package/dist/common/fonts/OpenSans-SemiBold.ttf +0 -0
  412. package/dist/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  413. package/dist/common/services/example-service.js +0 -10
  414. package/dist/common/services/example-service.test.js +0 -12
  415. package/dist/common/utils.js +0 -42
  416. package/dist/common/variables.js +0 -434
  417. package/dist/date/Date.js +0 -356
  418. package/dist/date/Date.stories.js +0 -205
  419. package/dist/date/calendar.svg +0 -1
  420. package/dist/date/calendar_dark.svg +0 -1
  421. package/dist/date/readme.md +0 -73
  422. package/dist/dialog/Dialog.js +0 -197
  423. package/dist/dialog/Dialog.stories.js +0 -217
  424. package/dist/dialog/readme.md +0 -32
  425. package/dist/dropdown/Dropdown.js +0 -449
  426. package/dist/dropdown/Dropdown.stories.js +0 -249
  427. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  428. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  429. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  430. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  431. package/dist/dropdown/readme.md +0 -69
  432. package/dist/footer/Footer.js +0 -371
  433. package/dist/footer/Footer.stories.js +0 -94
  434. package/dist/footer/dxc_logo_wht.png +0 -0
  435. package/dist/footer/readme.md +0 -41
  436. package/dist/header/Header.js +0 -373
  437. package/dist/header/Header.stories.js +0 -176
  438. package/dist/header/close_icon.svg +0 -1
  439. package/dist/header/dxc_logo_black.png +0 -0
  440. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  441. package/dist/header/dxc_logo_white.png +0 -0
  442. package/dist/header/hamb_menu_black.svg +0 -1
  443. package/dist/header/hamb_menu_white.svg +0 -1
  444. package/dist/header/readme.md +0 -33
  445. package/dist/heading/Heading.js +0 -153
  446. package/dist/input-text/InputText.js +0 -570
  447. package/dist/input-text/InputText.stories.js +0 -209
  448. package/dist/input-text/error.svg +0 -1
  449. package/dist/input-text/readme.md +0 -91
  450. package/dist/layout/ApplicationLayout.js +0 -335
  451. package/dist/layout/facebook.svg +0 -45
  452. package/dist/layout/linkedin.svg +0 -50
  453. package/dist/layout/twitter.svg +0 -53
  454. package/dist/link/Link.js +0 -189
  455. package/dist/link/readme.md +0 -51
  456. package/dist/paginator/Paginator.js +0 -196
  457. package/dist/paginator/images/next.svg +0 -3
  458. package/dist/paginator/images/nextPage.svg +0 -3
  459. package/dist/paginator/images/previous.svg +0 -3
  460. package/dist/paginator/images/previousPage.svg +0 -3
  461. package/dist/paginator/readme.md +0 -50
  462. package/dist/progress-bar/ProgressBar.js +0 -185
  463. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  464. package/dist/progress-bar/readme.md +0 -63
  465. package/dist/radio/Radio.js +0 -195
  466. package/dist/radio/Radio.stories.js +0 -166
  467. package/dist/radio/readme.md +0 -70
  468. package/dist/resultsetTable/ResultsetTable.js +0 -333
  469. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  470. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  471. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  472. package/dist/select/Select.js +0 -473
  473. package/dist/select/Select.stories.js +0 -235
  474. package/dist/select/readme.md +0 -72
  475. package/dist/sidenav/Sidenav.js +0 -128
  476. package/dist/slider/Slider.js +0 -266
  477. package/dist/slider/Slider.stories.js +0 -241
  478. package/dist/slider/readme.md +0 -64
  479. package/dist/spinner/Spinner.js +0 -193
  480. package/dist/spinner/Spinner.stories.js +0 -183
  481. package/dist/spinner/readme.md +0 -65
  482. package/dist/switch/Switch.js +0 -199
  483. package/dist/switch/Switch.stories.js +0 -134
  484. package/dist/switch/readme.md +0 -133
  485. package/dist/table/Table.js +0 -105
  486. package/dist/tabs/Tabs.js +0 -185
  487. package/dist/tabs/Tabs.stories.js +0 -130
  488. package/dist/tabs/readme.md +0 -78
  489. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  490. package/dist/tabs-for-sections/readme.md +0 -78
  491. package/dist/tag/Tag.js +0 -249
  492. package/dist/textarea/Textarea.js +0 -227
  493. package/dist/toggle/Toggle.js +0 -223
  494. package/dist/toggle/Toggle.stories.js +0 -297
  495. package/dist/toggle/readme.md +0 -80
  496. package/dist/toggle-group/ToggleGroup.js +0 -226
  497. package/dist/toggle-group/readme.md +0 -82
  498. package/dist/upload/Upload.js +0 -200
  499. package/dist/upload/Upload.stories.js +0 -72
  500. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -122
  501. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  502. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  503. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -279
  504. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  505. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  506. package/dist/upload/file-upload/FileToUpload.js +0 -158
  507. package/dist/upload/file-upload/audio-icon.svg +0 -4
  508. package/dist/upload/file-upload/close.svg +0 -4
  509. package/dist/upload/file-upload/file-icon.svg +0 -4
  510. package/dist/upload/file-upload/video-icon.svg +0 -4
  511. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  512. package/dist/upload/readme.md +0 -37
  513. package/dist/upload/transaction/Transaction.js +0 -155
  514. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  515. package/dist/upload/transaction/audio-icon.svg +0 -4
  516. package/dist/upload/transaction/error-icon.svg +0 -4
  517. package/dist/upload/transaction/file-icon-err.svg +0 -4
  518. package/dist/upload/transaction/file-icon.svg +0 -4
  519. package/dist/upload/transaction/image-icon-err.svg +0 -4
  520. package/dist/upload/transaction/image-icon.svg +0 -4
  521. package/dist/upload/transaction/success-icon.svg +0 -4
  522. package/dist/upload/transaction/video-icon-err.svg +0 -4
  523. package/dist/upload/transaction/video-icon.svg +0 -4
  524. package/dist/upload/transactions/Transactions.js +0 -120
  525. package/dist/wizard/Wizard.js +0 -340
  526. package/dist/wizard/invalid_icon.svg +0 -6
  527. package/dist/wizard/valid_icon.svg +0 -6
  528. package/dist/wizard/validation-wrong.svg +0 -6
  529. package/test/Accordion.test.js +0 -33
  530. package/test/Alert.test.js +0 -53
  531. package/test/Box.test.js +0 -10
  532. package/test/Button.test.js +0 -18
  533. package/test/Card.test.js +0 -30
  534. package/test/Checkbox.test.js +0 -45
  535. package/test/Chip.test.js +0 -25
  536. package/test/Date.test.js +0 -393
  537. package/test/Dialog.test.js +0 -23
  538. package/test/Dropdown.test.js +0 -130
  539. package/test/Footer.test.js +0 -99
  540. package/test/Header.test.js +0 -39
  541. package/test/Heading.test.js +0 -35
  542. package/test/InputText.test.js +0 -236
  543. package/test/Link.test.js +0 -33
  544. package/test/Paginator.test.js +0 -165
  545. package/test/ProgressBar.test.js +0 -35
  546. package/test/Radio.test.js +0 -37
  547. package/test/ResultsetTable.test.js +0 -282
  548. package/test/Select.test.js +0 -191
  549. package/test/Sidenav.test.js +0 -45
  550. package/test/Slider.test.js +0 -82
  551. package/test/Spinner.test.js +0 -27
  552. package/test/Switch.test.js +0 -45
  553. package/test/Table.test.js +0 -36
  554. package/test/Tabs.test.js +0 -88
  555. package/test/TabsForSections.test.js +0 -34
  556. package/test/Tag.test.js +0 -32
  557. package/test/TextArea.test.js +0 -52
  558. package/test/Toggle.test.js +0 -43
  559. package/test/ToggleGroup.test.js +0 -81
  560. package/test/Upload.test.js +0 -60
  561. package/test/Wizard.test.js +0 -130
  562. package/test/mocks/pngMock.js +0 -1
  563. package/test/mocks/svgMock.js +0 -1
@@ -0,0 +1,223 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
12
+ var _react = _interopRequireWildcard(require("react"));
13
+ var _dayjs = _interopRequireDefault(require("dayjs"));
14
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
15
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
16
+ var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
17
+ var _TextInput = _interopRequireDefault(require("../text-input/TextInput"));
18
+ var _DatePicker = _interopRequireDefault(require("./DatePicker"));
19
+ var Popover = _interopRequireWildcard(require("@radix-ui/react-popover"));
20
+ var _customParseFormat = _interopRequireDefault(require("dayjs/plugin/customParseFormat"));
21
+ var _uuid = require("uuid");
22
+ var _Icons = require("./Icons");
23
+ var _templateObject;
24
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
25
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
26
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
27
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
28
+ _dayjs["default"].extend(_customParseFormat["default"]);
29
+ var getValueForPicker = function getValueForPicker(value, format) {
30
+ return (0, _dayjs["default"])(value, format.toUpperCase(), true);
31
+ };
32
+ var getDate = function getDate(value, format, lastValidYear, setLastValidYear) {
33
+ if ((value || value === "") && format.toUpperCase().includes("YYYY")) return getValueForPicker(value, format);else {
34
+ var newDate = getValueForPicker(value, format);
35
+ if (!lastValidYear) {
36
+ if (+newDate.format("YY") < 68) {
37
+ setLastValidYear(2000 + +newDate.format("YY"));
38
+ newDate = newDate.set("year", 2000 + +newDate.format("YY"));
39
+ } else {
40
+ setLastValidYear(1900 + +newDate.format("YY"));
41
+ newDate = newDate.set("year", 1900 + +newDate.format("YY"));
42
+ }
43
+ } else {
44
+ newDate = newDate.set("year", (lastValidYear <= 1999 ? 1900 : 2000) + +newDate.format("YY"));
45
+ }
46
+ return newDate;
47
+ }
48
+ };
49
+ var DxcDateInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
50
+ var _ref2;
51
+ var label = _ref.label,
52
+ name = _ref.name,
53
+ _ref$defaultValue = _ref.defaultValue,
54
+ defaultValue = _ref$defaultValue === void 0 ? "" : _ref$defaultValue,
55
+ value = _ref.value,
56
+ _ref$format = _ref.format,
57
+ format = _ref$format === void 0 ? "dd-MM-yyyy" : _ref$format,
58
+ helperText = _ref.helperText,
59
+ _ref$placeholder = _ref.placeholder,
60
+ placeholder = _ref$placeholder === void 0 ? false : _ref$placeholder,
61
+ clearable = _ref.clearable,
62
+ disabled = _ref.disabled,
63
+ readOnly = _ref.readOnly,
64
+ optional = _ref.optional,
65
+ onChange = _ref.onChange,
66
+ onBlur = _ref.onBlur,
67
+ error = _ref.error,
68
+ autocomplete = _ref.autocomplete,
69
+ margin = _ref.margin,
70
+ size = _ref.size,
71
+ tabIndex = _ref.tabIndex;
72
+ var _useState = (0, _react.useState)(defaultValue),
73
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
74
+ innerValue = _useState2[0],
75
+ setInnerValue = _useState2[1];
76
+ var _useState3 = (0, _react.useState)(false),
77
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
78
+ isOpen = _useState4[0],
79
+ setIsOpen = _useState4[1];
80
+ var _useState5 = (0, _react.useState)("date-picker-".concat((0, _uuid.v4)())),
81
+ _useState6 = (0, _slicedToArray2["default"])(_useState5, 1),
82
+ calendarId = _useState6[0];
83
+ var _useState7 = (0, _react.useState)(getValueForPicker((_ref2 = value !== null && value !== void 0 ? value : defaultValue) !== null && _ref2 !== void 0 ? _ref2 : "", format)),
84
+ _useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
85
+ dayjsDate = _useState8[0],
86
+ setDayjsDate = _useState8[1];
87
+ var _useState9 = (0, _react.useState)(innerValue || value ? !format.toUpperCase().includes("YYYY") && +getValueForPicker(value !== null && value !== void 0 ? value : innerValue, format).format("YY") < 68 ? 2000 : 1900 : undefined),
88
+ _useState10 = (0, _slicedToArray2["default"])(_useState9, 2),
89
+ lastValidYear = _useState10[0],
90
+ setLastValidYear = _useState10[1];
91
+ var colorsTheme = (0, _useTheme["default"])();
92
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
93
+ var dateRef = (0, _react.useRef)(null);
94
+ (0, _react.useEffect)(function () {
95
+ if (value || value === "") setDayjsDate(getDate(value, format, lastValidYear, setLastValidYear));
96
+ }, [value, format, lastValidYear]);
97
+ (0, _react.useEffect)(function () {
98
+ if (!disabled) {
99
+ var actionButtonRef = dateRef === null || dateRef === void 0 ? void 0 : dateRef.current.querySelector("[title='Open calendar']");
100
+ actionButtonRef === null || actionButtonRef === void 0 ? void 0 : actionButtonRef.setAttribute("aria-haspopup", true);
101
+ actionButtonRef === null || actionButtonRef === void 0 ? void 0 : actionButtonRef.setAttribute("role", "combobox");
102
+ actionButtonRef === null || actionButtonRef === void 0 ? void 0 : actionButtonRef.setAttribute("aria-expanded", isOpen);
103
+ actionButtonRef === null || actionButtonRef === void 0 ? void 0 : actionButtonRef.setAttribute("aria-controls", calendarId);
104
+ actionButtonRef === null || actionButtonRef === void 0 ? void 0 : actionButtonRef.setAttribute("aria-describedby", calendarId);
105
+ }
106
+ }, [isOpen, disabled, calendarId]);
107
+ var handleCalendarOnClick = function handleCalendarOnClick(newDate) {
108
+ var newValue = newDate.format(format.toUpperCase());
109
+ if (!value) {
110
+ setDayjsDate(newDate);
111
+ setInnerValue(newValue);
112
+ }
113
+ setLastValidYear(newDate.get("year"));
114
+ newDate !== null && newDate !== void 0 && newDate.set("day", newDate.get("date")).toJSON() ? onChange === null || onChange === void 0 ? void 0 : onChange({
115
+ value: newValue,
116
+ date: newDate.toDate()
117
+ }) : onChange === null || onChange === void 0 ? void 0 : onChange({
118
+ value: newValue
119
+ });
120
+ };
121
+ var handleOnChange = function handleOnChange(_ref3) {
122
+ var newValue = _ref3.value,
123
+ inputError = _ref3.error;
124
+ value !== null && value !== void 0 ? value : setInnerValue(newValue);
125
+ var newDate = getDate(newValue, format, lastValidYear, setLastValidYear);
126
+ var invalidDateMessage = newValue !== "" && !newDate.isValid() && translatedLabels.dateInput.invalidDateErrorMessage;
127
+ var callbackParams = inputError || invalidDateMessage ? {
128
+ value: newValue,
129
+ error: inputError || invalidDateMessage
130
+ } : {
131
+ value: newValue
132
+ };
133
+ if (newDate.isValid()) {
134
+ setDayjsDate(newDate);
135
+ onChange === null || onChange === void 0 ? void 0 : onChange(_objectSpread(_objectSpread({}, callbackParams), {}, {
136
+ date: newDate.toDate()
137
+ }));
138
+ } else {
139
+ onChange === null || onChange === void 0 ? void 0 : onChange(callbackParams);
140
+ setLastValidYear(function (validYear) {
141
+ var _dayjsDate$get;
142
+ return (_dayjsDate$get = dayjsDate === null || dayjsDate === void 0 ? void 0 : dayjsDate.get("year")) !== null && _dayjsDate$get !== void 0 ? _dayjsDate$get : validYear;
143
+ });
144
+ setDayjsDate(null);
145
+ }
146
+ };
147
+ var handleOnBlur = function handleOnBlur(_ref4) {
148
+ var value = _ref4.value,
149
+ inputError = _ref4.error;
150
+ var date = getDate(value, format, lastValidYear, setLastValidYear);
151
+ var invalidDateMessage = value !== "" && !date.isValid() && translatedLabels.dateInput.invalidDateErrorMessage;
152
+ var callbackParams = inputError || invalidDateMessage ? {
153
+ value: value,
154
+ error: inputError || invalidDateMessage
155
+ } : {
156
+ value: value
157
+ };
158
+ date.isValid() ? onBlur === null || onBlur === void 0 ? void 0 : onBlur(_objectSpread(_objectSpread({}, callbackParams), {}, {
159
+ date: date.toDate()
160
+ })) : onBlur === null || onBlur === void 0 ? void 0 : onBlur(callbackParams);
161
+ };
162
+ var openCalendar = function openCalendar() {
163
+ setIsOpen(!isOpen);
164
+ };
165
+ var closeCalendar = function closeCalendar() {
166
+ setIsOpen(false);
167
+ };
168
+ var handleDatePickerEscKeydown = function handleDatePickerEscKeydown(event) {
169
+ event.preventDefault();
170
+ closeCalendar();
171
+ dateRef === null || dateRef === void 0 ? void 0 : dateRef.current.getElementsByTagName("input")[0].focus();
172
+ };
173
+ var handleDatePickerOnBlur = function handleDatePickerOnBlur(event) {
174
+ if (!(event !== null && event !== void 0 && event.currentTarget.contains(event.relatedTarget))) closeCalendar();
175
+ };
176
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
177
+ theme: colorsTheme
178
+ }, /*#__PURE__*/_react["default"].createElement("div", {
179
+ ref: ref
180
+ }, /*#__PURE__*/_react["default"].createElement(Popover.Root, {
181
+ open: isOpen
182
+ }, /*#__PURE__*/_react["default"].createElement(Popover.Trigger, {
183
+ asChild: true,
184
+ "aria-controls": undefined
185
+ }, /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
186
+ label: label,
187
+ name: name,
188
+ defaultValue: defaultValue,
189
+ value: value !== null && value !== void 0 ? value : innerValue,
190
+ helperText: helperText,
191
+ placeholder: placeholder ? format.toUpperCase() : null,
192
+ action: {
193
+ onClick: openCalendar,
194
+ icon: _Icons.calendarIcon,
195
+ title: "Open calendar"
196
+ },
197
+ clearable: clearable,
198
+ disabled: disabled,
199
+ readOnly: readOnly,
200
+ optional: optional,
201
+ onChange: handleOnChange,
202
+ onBlur: handleOnBlur,
203
+ error: error,
204
+ autocomplete: autocomplete,
205
+ margin: margin,
206
+ size: size,
207
+ tabIndex: tabIndex,
208
+ ref: dateRef
209
+ })), /*#__PURE__*/_react["default"].createElement(Popover.Portal, null, /*#__PURE__*/_react["default"].createElement(StyledPopoverContent, {
210
+ sideOffset: error ? -18 : 2,
211
+ align: "end",
212
+ "aria-modal": true,
213
+ onBlur: handleDatePickerOnBlur,
214
+ onEscapeKeyDown: handleDatePickerEscKeydown,
215
+ avoidCollisions: false
216
+ }, /*#__PURE__*/_react["default"].createElement(_DatePicker["default"], {
217
+ id: calendarId,
218
+ onDateSelect: handleCalendarOnClick,
219
+ date: dayjsDate
220
+ }))))));
221
+ });
222
+ var StyledPopoverContent = (0, _styledComponents["default"])(Popover.Content)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n z-index: 2147483647;\n &:focus-visible {\n outline: none;\n }\n"])));
223
+ var _default = exports["default"] = DxcDateInput;
@@ -0,0 +1,285 @@
1
+ import React from "react";
2
+ import { userEvent, within, fireEvent, screen } from "@storybook/testing-library";
3
+ import DxcDateInput from "./DateInput";
4
+ import DxcDatePicker from "./DatePicker";
5
+ import YearPicker from "./YearPicker";
6
+ import Calendar from "./Calendar";
7
+ import Title from "../../.storybook/components/Title";
8
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
9
+ import dayjs from "dayjs";
10
+ import useTheme from "../useTheme";
11
+ import { ThemeProvider } from "styled-components";
12
+ import { HalstackProvider } from "../HalstackContext";
13
+
14
+ export default {
15
+ title: "Date Input",
16
+ component: DxcDateInput,
17
+ };
18
+
19
+ const opinionatedTheme = {
20
+ dateInput: {
21
+ baseColor: "#5f249f",
22
+ selectedFontColor: "#ffffff",
23
+ },
24
+ };
25
+
26
+ const DateInputChromatic = () => (
27
+ <>
28
+ <ExampleContainer>
29
+ <Title title="Complete date input" theme="light" level={4} />
30
+ <DxcDateInput label="Date input" helperText="Help message" format="dd/mm/yy" placeholder optional />
31
+ </ExampleContainer>
32
+ <ExampleContainer>
33
+ <Title title="Disabled" theme="light" level={4} />
34
+ <DxcDateInput
35
+ label="Disabled date input"
36
+ helperText="Help message"
37
+ defaultValue="06-04-2007"
38
+ clearable
39
+ disabled
40
+ />
41
+ </ExampleContainer>
42
+ <ExampleContainer>
43
+ <Title title="Read only" theme="light" level={4} />
44
+ <DxcDateInput
45
+ label="Example label"
46
+ helperText="Help message"
47
+ defaultValue="06-04-2007"
48
+ clearable
49
+ readOnly
50
+ />
51
+ </ExampleContainer>
52
+ <ExampleContainer>
53
+ <Title title="Invalid" theme="light" level={4} />
54
+ <DxcDateInput label="Error date input" error="Error message." placeholder />
55
+ </ExampleContainer>
56
+ <ExampleContainer>
57
+ <Title title="Relation between icons" theme="light" level={4} />
58
+ <DxcDateInput label="Error date input" error="Error message." defaultValue="06-04-2007" clearable />
59
+ </ExampleContainer>
60
+ <Title title="Margins" theme="light" level={2} />
61
+ <ExampleContainer>
62
+ <Title title="Xxsmall" theme="light" level={4} />
63
+ <DxcDateInput label="Xxsmall" margin="xxsmall" />
64
+ </ExampleContainer>
65
+ <ExampleContainer>
66
+ <Title title="Xsmall" theme="light" level={4} />
67
+ <DxcDateInput label="Xsmall" margin="xsmall" />
68
+ </ExampleContainer>
69
+ <ExampleContainer>
70
+ <Title title="Small" theme="light" level={4} />
71
+ <DxcDateInput label="Small" margin="small" />
72
+ </ExampleContainer>
73
+ <ExampleContainer>
74
+ <Title title="Medium" theme="light" level={4} />
75
+ <DxcDateInput label="Medium" margin="medium" />
76
+ </ExampleContainer>
77
+ <ExampleContainer>
78
+ <Title title="Large" theme="light" level={4} />
79
+ <DxcDateInput label="Large" margin="large" />
80
+ </ExampleContainer>
81
+ <ExampleContainer>
82
+ <Title title="Xlarge" theme="light" level={4} />
83
+ <DxcDateInput label="Xlarge" margin="xlarge" />
84
+ </ExampleContainer>
85
+ <ExampleContainer>
86
+ <Title title="Xxlarge" theme="light" level={4} />
87
+ <DxcDateInput label="Xxlarge" margin="xxlarge" />
88
+ </ExampleContainer>
89
+ <Title title="Sizes" theme="light" level={2} />
90
+ <ExampleContainer>
91
+ <Title title="Medium size" theme="light" level={4} />
92
+ <DxcDateInput label="Medium" size="medium" />
93
+ </ExampleContainer>
94
+ <ExampleContainer>
95
+ <Title title="Large size" theme="light" level={4} />
96
+ <DxcDateInput label="Large" size="large" />
97
+ </ExampleContainer>
98
+ <ExampleContainer>
99
+ <Title title="FillParent size" theme="light" level={4} />
100
+ <DxcDateInput label="FillParent" size="fillParent" />
101
+ </ExampleContainer>
102
+ <ExampleContainer expanded>
103
+ <Title title="Year picker" theme="light" level={4} />
104
+ <DxcDateInput label="Date input" defaultValue="06-04-1905" />
105
+ </ExampleContainer>
106
+ </>
107
+ );
108
+
109
+ export const Chromatic = DateInputChromatic.bind({});
110
+ Chromatic.play = async ({ canvasElement }) => {
111
+ const canvas = within(canvasElement);
112
+ await userEvent.click(canvas.getAllByRole("combobox")[canvas.getAllByRole("combobox").length - 1]);
113
+ await fireEvent.click(screen.getByText("April 1905"));
114
+ };
115
+
116
+ const DateInputOpinionatedTheme = () => (
117
+ <>
118
+ <Title title="Opinionated theme" theme="light" level={2} />
119
+ <ExampleContainer>
120
+ <Title title="Enabled" theme="light" level={4} />
121
+ <HalstackProvider theme={opinionatedTheme}>
122
+ <DxcDateInput
123
+ label="Date input"
124
+ helperText="Help message"
125
+ format="dd/mm/yy"
126
+ placeholder
127
+ optional
128
+ defaultValue="10-10-2022"
129
+ />
130
+ </HalstackProvider>
131
+ </ExampleContainer>
132
+ <ExampleContainer>
133
+ <Title title="Disabled" theme="light" level={4} />
134
+ <HalstackProvider theme={opinionatedTheme}>
135
+ <DxcDateInput label="Date input" helperText="Help message" format="dd/mm/yy" placeholder optional />
136
+ </HalstackProvider>
137
+ </ExampleContainer>
138
+ <ExampleContainer>
139
+ <Title title="Invalid" theme="light" level={4} />
140
+ <HalstackProvider theme={opinionatedTheme}>
141
+ <DxcDateInput label="Error date input" error="Error message." placeholder />
142
+ </HalstackProvider>
143
+ </ExampleContainer>
144
+ <ExampleContainer expanded>
145
+ <Title title="Date picker" theme="light" level={4} />
146
+ <HalstackProvider theme={opinionatedTheme}>
147
+ <DxcDateInput label="Date input" defaultValue="06-04-1905" />
148
+ </HalstackProvider>
149
+ </ExampleContainer>
150
+ </>
151
+ );
152
+
153
+ export const DateInputOpinionated = DateInputOpinionatedTheme.bind({});
154
+ DateInputOpinionated.play = async ({ canvasElement }) => {
155
+ const canvas = within(canvasElement);
156
+ await userEvent.click(canvas.getAllByRole("combobox")[canvas.getAllByRole("combobox").length - 1]);
157
+ };
158
+
159
+ const YearPickerOpinionatedTheme = () => (
160
+ <ExampleContainer expanded>
161
+ <Title title="Year picker" theme="light" level={4} />
162
+ <HalstackProvider theme={opinionatedTheme}>
163
+ <DxcDateInput label="Date input" defaultValue="06-04-1905" />
164
+ </HalstackProvider>
165
+ </ExampleContainer>
166
+ );
167
+
168
+ export const YearPickerOpinionated = YearPickerOpinionatedTheme.bind({});
169
+ YearPickerOpinionated.play = async ({ canvasElement }) => {
170
+ const canvas = within(canvasElement);
171
+ await userEvent.click(canvas.getByRole("combobox"));
172
+ await fireEvent.click(screen.getByText("April 1905"));
173
+ };
174
+
175
+ const DatePickerButtonStates = () => {
176
+ const colorsTheme: any = useTheme();
177
+ return (
178
+ <>
179
+ <ExampleContainer>
180
+ <Title title="Show date picker over another element with z-index 0" theme="light" level={4} />
181
+ <div
182
+ style={{
183
+ display: "flex",
184
+ flexDirection: "column",
185
+ gap: "20px",
186
+ height: "200px",
187
+ width: "500px",
188
+ marginBottom: "250px",
189
+ padding: "20px",
190
+ border: "1px solid black",
191
+ borderRadius: "4px",
192
+ overflow: "auto",
193
+ zIndex: "1300",
194
+ position: "relative",
195
+ }}
196
+ >
197
+ <DxcDateInput label="From" defaultValue="01-12-1995" />
198
+ <DxcDateInput label="To" />
199
+ <button style={{ zIndex: "1", width: "100px" }}>Submit</button>
200
+ </div>
201
+ </ExampleContainer>
202
+ <ThemeProvider theme={colorsTheme}>
203
+ <ExampleContainer pseudoState="pseudo-focus">
204
+ <Title title="Isolated calendar focused" theme="light" level={4} />
205
+ <DxcDatePicker date={dayjs("06-04-1950", "DD-MM-YYYY")} onDateSelect={() => {}} id="test-calendar" />
206
+ </ExampleContainer>
207
+ <ExampleContainer pseudoState="pseudo-hover">
208
+ <Title title="Isolated calendar hovered" theme="light" level={4} />
209
+ <DxcDatePicker date={dayjs("06-04-1950", "DD-MM-YYYY")} onDateSelect={() => {}} id="test-calendar" />
210
+ </ExampleContainer>
211
+ <ExampleContainer pseudoState="pseudo-active">
212
+ <Title title="Isolated calendar actived" theme="light" level={4} />
213
+ <DxcDatePicker date={dayjs("06-04-1950", "DD-MM-YYYY")} onDateSelect={() => {}} id="test-calendar" />
214
+ </ExampleContainer>
215
+ </ThemeProvider>
216
+ </>
217
+ );
218
+ };
219
+
220
+ export const DatePickerStates = DatePickerButtonStates.bind({});
221
+ DatePickerStates.play = async ({ canvasElement }) => {
222
+ const canvas = within(canvasElement);
223
+ const dateBtn = canvas.getAllByTitle("Open calendar")[0];
224
+ await userEvent.click(dateBtn);
225
+ };
226
+
227
+ export const YearPickerStates = () => {
228
+ const colorsTheme: any = useTheme();
229
+ return (
230
+ <>
231
+ <ThemeProvider theme={colorsTheme}>
232
+ <ExampleContainer pseudoState="pseudo-focus">
233
+ <Title title="Isolated year picker focused" theme="light" level={4} />
234
+ <YearPicker
235
+ selectedDate={dayjs("06-04-1905", "DD-MM-YYYY")}
236
+ onYearSelect={() => {}}
237
+ today={dayjs("1904-04-03", "YYYY-MM-DD")}
238
+ />
239
+ </ExampleContainer>
240
+ <ExampleContainer pseudoState="pseudo-hover">
241
+ <Title title="Isolated year picker hovered" theme="light" level={4} />
242
+ <YearPicker
243
+ selectedDate={dayjs("06-04-1905", "DD-MM-YYYY")}
244
+ onYearSelect={() => {}}
245
+ today={dayjs("1904-04-03", "YYYY-MM-DD")}
246
+ />
247
+ </ExampleContainer>
248
+ <ExampleContainer pseudoState="pseudo-active">
249
+ <Title title="Isolated year picker actived" theme="light" level={4} />
250
+ <YearPicker
251
+ selectedDate={dayjs("06-04-1905", "DD-MM-YYYY")}
252
+ onYearSelect={() => {}}
253
+ today={dayjs("1904-04-03", "YYYY-MM-DD")}
254
+ />
255
+ </ExampleContainer>
256
+ </ThemeProvider>
257
+ </>
258
+ );
259
+ };
260
+
261
+ export const DatePickerWithToday = () => {
262
+ const colorsTheme: any = useTheme();
263
+ return (
264
+ <ThemeProvider theme={colorsTheme}>
265
+ <ExampleContainer>
266
+ <Title title="Isolated calendar with today" theme="light" level={4} />
267
+ <Calendar
268
+ selectedDate={dayjs("06-04-1904", "DD-MM-YYYY")}
269
+ today={dayjs("1904-04-03", "YYYY-MM-DD")}
270
+ onInnerDateChange={() => {}}
271
+ onDaySelect={() => {}}
272
+ innerDate={dayjs("06-04-1904", "DD-MM-YYYY")}
273
+ />
274
+ </ExampleContainer>
275
+ <ExampleContainer>
276
+ <Title title="Isolated year picker with today" theme="light" level={4} />
277
+ <YearPicker
278
+ selectedDate={dayjs("06-04-1905", "DD-MM-YYYY")}
279
+ onYearSelect={() => {}}
280
+ today={dayjs("1904-04-03", "YYYY-MM-DD")}
281
+ />
282
+ </ExampleContainer>
283
+ </ThemeProvider>
284
+ );
285
+ };