@dxc-technology/halstack-react 0.0.0-b1729d7 → 0.0.0-b18ba60

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 (680) hide show
  1. package/BackgroundColorContext.d.ts +1 -0
  2. package/BackgroundColorContext.js +30 -0
  3. package/HalstackContext.d.ts +1247 -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/{dist/common → common}/utils.js +6 -12
  129. package/common/variables.d.ts +1390 -0
  130. package/common/variables.js +1262 -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/{dist/header → header}/Icons.js +8 -43
  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/{dist/heading → heading}/Heading.js +34 -115
  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/{dist/main.js → main.js} +141 -144
  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 +64 -56
  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 +1143 -0
  503. package/{dist/useTheme.js → useTheme.js} +4 -11
  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 -8
  520. package/dist/BackgroundColorContext.js +0 -46
  521. package/dist/ThemeContext.js +0 -248
  522. package/dist/V3Textarea/V3Textarea.js +0 -264
  523. package/dist/accordion/Accordion.js +0 -353
  524. package/dist/accordion-group/AccordionGroup.js +0 -186
  525. package/dist/alert/Alert.js +0 -403
  526. package/dist/alert/index.d.ts +0 -51
  527. package/dist/badge/Badge.js +0 -63
  528. package/dist/box/Box.js +0 -156
  529. package/dist/button/Button.js +0 -238
  530. package/dist/card/Card.js +0 -254
  531. package/dist/checkbox/Checkbox.js +0 -300
  532. package/dist/checkbox/Checkbox.stories.js +0 -144
  533. package/dist/checkbox/readme.md +0 -116
  534. package/dist/chip/Chip.js +0 -265
  535. package/dist/common/OpenSans.css +0 -81
  536. package/dist/common/RequiredComponent.js +0 -40
  537. package/dist/common/fonts/OpenSans-Bold.ttf +0 -0
  538. package/dist/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  539. package/dist/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  540. package/dist/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  541. package/dist/common/fonts/OpenSans-Italic.ttf +0 -0
  542. package/dist/common/fonts/OpenSans-Light.ttf +0 -0
  543. package/dist/common/fonts/OpenSans-LightItalic.ttf +0 -0
  544. package/dist/common/fonts/OpenSans-Regular.ttf +0 -0
  545. package/dist/common/fonts/OpenSans-SemiBold.ttf +0 -0
  546. package/dist/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  547. package/dist/common/variables.js +0 -1569
  548. package/dist/date/Date.js +0 -379
  549. package/dist/date/Date.stories.js +0 -205
  550. package/dist/date/readme.md +0 -73
  551. package/dist/date-input/DateInput.js +0 -400
  552. package/dist/date-input/index.d.ts +0 -95
  553. package/dist/dialog/Dialog.js +0 -218
  554. package/dist/dropdown/Dropdown.js +0 -544
  555. package/dist/file-input/FileInput.js +0 -644
  556. package/dist/file-input/FileItem.js +0 -280
  557. package/dist/file-input/index.d.ts +0 -81
  558. package/dist/footer/Footer.js +0 -421
  559. package/dist/footer/Icons.js +0 -77
  560. package/dist/header/Header.js +0 -434
  561. package/dist/input-text/Icons.js +0 -22
  562. package/dist/input-text/InputText.js +0 -705
  563. package/dist/layout/ApplicationLayout.js +0 -327
  564. package/dist/layout/Icons.js +0 -55
  565. package/dist/link/Link.js +0 -237
  566. package/dist/link/readme.md +0 -51
  567. package/dist/main.d.ts +0 -8
  568. package/dist/new-select/NewSelect.js +0 -836
  569. package/dist/new-select/index.d.ts +0 -53
  570. package/dist/number-input/NumberInput.js +0 -136
  571. package/dist/number-input/NumberInputContext.js +0 -16
  572. package/dist/number-input/index.d.ts +0 -113
  573. package/dist/paginator/Icons.js +0 -66
  574. package/dist/paginator/Paginator.js +0 -283
  575. package/dist/password-input/PasswordInput.js +0 -198
  576. package/dist/password-input/index.d.ts +0 -94
  577. package/dist/progress-bar/ProgressBar.js +0 -242
  578. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  579. package/dist/progress-bar/readme.md +0 -63
  580. package/dist/radio/Radio.js +0 -209
  581. package/dist/radio/Radio.stories.js +0 -166
  582. package/dist/radio/readme.md +0 -70
  583. package/dist/resultsetTable/ResultsetTable.js +0 -358
  584. package/dist/select/Select.js +0 -549
  585. package/dist/sidenav/Sidenav.js +0 -179
  586. package/dist/slider/Slider.js +0 -404
  587. package/dist/slider/readme.md +0 -64
  588. package/dist/spinner/Spinner.js +0 -381
  589. package/dist/spinner/Spinner.stories.js +0 -183
  590. package/dist/spinner/readme.md +0 -65
  591. package/dist/switch/Switch.js +0 -222
  592. package/dist/switch/Switch.stories.js +0 -134
  593. package/dist/switch/readme.md +0 -133
  594. package/dist/table/Table.js +0 -132
  595. package/dist/tabs/Tabs.js +0 -343
  596. package/dist/tabs/Tabs.stories.js +0 -130
  597. package/dist/tabs/readme.md +0 -78
  598. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  599. package/dist/tabs-for-sections/readme.md +0 -78
  600. package/dist/tag/Tag.js +0 -282
  601. package/dist/text-input/TextInput.js +0 -971
  602. package/dist/text-input/index.d.ts +0 -135
  603. package/dist/textarea/Textarea.js +0 -369
  604. package/dist/textarea/index.d.ts +0 -117
  605. package/dist/toggle/Toggle.js +0 -220
  606. package/dist/toggle/Toggle.stories.js +0 -297
  607. package/dist/toggle/readme.md +0 -80
  608. package/dist/toggle-group/ToggleGroup.js +0 -327
  609. package/dist/upload/Upload.js +0 -205
  610. package/dist/upload/Upload.stories.js +0 -72
  611. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -139
  612. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  613. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  614. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  615. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  616. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  617. package/dist/upload/file-upload/FileToUpload.js +0 -184
  618. package/dist/upload/file-upload/audio-icon.svg +0 -4
  619. package/dist/upload/file-upload/close.svg +0 -4
  620. package/dist/upload/file-upload/file-icon.svg +0 -4
  621. package/dist/upload/file-upload/video-icon.svg +0 -4
  622. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  623. package/dist/upload/readme.md +0 -37
  624. package/dist/upload/transaction/Transaction.js +0 -175
  625. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  626. package/dist/upload/transaction/audio-icon.svg +0 -4
  627. package/dist/upload/transaction/error-icon.svg +0 -4
  628. package/dist/upload/transaction/file-icon-err.svg +0 -4
  629. package/dist/upload/transaction/file-icon.svg +0 -4
  630. package/dist/upload/transaction/image-icon-err.svg +0 -4
  631. package/dist/upload/transaction/image-icon.svg +0 -4
  632. package/dist/upload/transaction/success-icon.svg +0 -4
  633. package/dist/upload/transaction/video-icon-err.svg +0 -4
  634. package/dist/upload/transaction/video-icon.svg +0 -4
  635. package/dist/upload/transactions/Transactions.js +0 -138
  636. package/dist/wizard/Wizard.js +0 -411
  637. package/dist/wizard/invalid_icon.svg +0 -5
  638. package/dist/wizard/valid_icon.svg +0 -5
  639. package/dist/wizard/validation-wrong.svg +0 -6
  640. package/test/Accordion.test.js +0 -33
  641. package/test/AccordionGroup.test.js +0 -125
  642. package/test/Alert.test.js +0 -53
  643. package/test/Box.test.js +0 -10
  644. package/test/Button.test.js +0 -18
  645. package/test/Card.test.js +0 -30
  646. package/test/Checkbox.test.js +0 -45
  647. package/test/Chip.test.js +0 -25
  648. package/test/Date.test.js +0 -397
  649. package/test/DateInput.test.js +0 -242
  650. package/test/Dialog.test.js +0 -23
  651. package/test/Dropdown.test.js +0 -145
  652. package/test/FileInput.test.js +0 -201
  653. package/test/Footer.test.js +0 -94
  654. package/test/Header.test.js +0 -34
  655. package/test/Heading.test.js +0 -35
  656. package/test/InputText.test.js +0 -248
  657. package/test/Link.test.js +0 -43
  658. package/test/NumberInput.test.js +0 -259
  659. package/test/Paginator.test.js +0 -177
  660. package/test/PasswordInput.test.js +0 -83
  661. package/test/ProgressBar.test.js +0 -35
  662. package/test/Radio.test.js +0 -37
  663. package/test/ResultsetTable.test.js +0 -329
  664. package/test/Select.test.js +0 -212
  665. package/test/Sidenav.test.js +0 -45
  666. package/test/Slider.test.js +0 -74
  667. package/test/Spinner.test.js +0 -32
  668. package/test/Switch.test.js +0 -45
  669. package/test/Table.test.js +0 -36
  670. package/test/Tabs.test.js +0 -109
  671. package/test/TabsForSections.test.js +0 -34
  672. package/test/Tag.test.js +0 -32
  673. package/test/TextInput.test.js +0 -732
  674. package/test/Textarea.test.js +0 -193
  675. package/test/ToggleGroup.test.js +0 -85
  676. package/test/Upload.test.js +0 -60
  677. package/test/V3TextArea.test.js +0 -51
  678. package/test/Wizard.test.js +0 -130
  679. package/test/mocks/pngMock.js +0 -1
  680. 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 {};