@dxc-technology/halstack-react 0.0.0-e345e78 → 0.0.0-e360842

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