@dxc-technology/halstack-react 0.0.0-9b341c0 → 0.0.0-9bd9511

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 (465) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +37 -0
  3. package/HalstackContext.d.ts +13 -0
  4. package/HalstackContext.js +318 -0
  5. package/accordion/Accordion.d.ts +4 -0
  6. package/accordion/Accordion.js +203 -0
  7. package/accordion/Accordion.stories.tsx +395 -0
  8. package/accordion/Accordion.test.js +56 -0
  9. package/accordion/types.d.ts +69 -0
  10. package/accordion/types.js +5 -0
  11. package/accordion-group/AccordionGroup.d.ts +7 -0
  12. package/accordion-group/AccordionGroup.js +121 -0
  13. package/accordion-group/AccordionGroup.stories.tsx +251 -0
  14. package/accordion-group/AccordionGroup.test.js +108 -0
  15. package/accordion-group/types.d.ts +79 -0
  16. package/accordion-group/types.js +5 -0
  17. package/alert/Alert.d.ts +4 -0
  18. package/{dist/alert → alert}/Alert.js +57 -198
  19. package/alert/Alert.stories.tsx +198 -0
  20. package/alert/Alert.test.js +75 -0
  21. package/alert/types.d.ts +49 -0
  22. package/alert/types.js +5 -0
  23. package/badge/Badge.d.ts +4 -0
  24. package/badge/Badge.js +49 -0
  25. package/badge/types.d.ts +5 -0
  26. package/badge/types.js +5 -0
  27. package/bleed/Bleed.d.ts +3 -0
  28. package/bleed/Bleed.js +43 -0
  29. package/bleed/Bleed.stories.tsx +341 -0
  30. package/bleed/types.d.ts +37 -0
  31. package/bleed/types.js +5 -0
  32. package/box/Box.d.ts +4 -0
  33. package/box/Box.js +97 -0
  34. package/box/Box.stories.tsx +147 -0
  35. package/box/Box.test.js +13 -0
  36. package/box/types.d.ts +44 -0
  37. package/box/types.js +5 -0
  38. package/bulleted-list/BulletedList.d.ts +7 -0
  39. package/bulleted-list/BulletedList.js +98 -0
  40. package/bulleted-list/BulletedList.stories.tsx +200 -0
  41. package/bulleted-list/types.d.ts +11 -0
  42. package/bulleted-list/types.js +5 -0
  43. package/button/Button.d.ts +4 -0
  44. package/button/Button.js +132 -0
  45. package/button/Button.stories.tsx +425 -0
  46. package/button/Button.test.js +26 -0
  47. package/button/types.d.ts +53 -0
  48. package/button/types.js +5 -0
  49. package/card/Card.d.ts +4 -0
  50. package/card/Card.js +138 -0
  51. package/card/Card.stories.tsx +201 -0
  52. package/card/Card.test.js +39 -0
  53. package/card/ice-cream.jpg +0 -0
  54. package/card/types.d.ts +68 -0
  55. package/card/types.js +5 -0
  56. package/checkbox/Checkbox.d.ts +4 -0
  57. package/checkbox/Checkbox.js +206 -0
  58. package/checkbox/Checkbox.stories.tsx +260 -0
  59. package/checkbox/Checkbox.test.js +128 -0
  60. package/checkbox/types.d.ts +68 -0
  61. package/checkbox/types.js +5 -0
  62. package/chip/Chip.d.ts +4 -0
  63. package/chip/Chip.js +137 -0
  64. package/chip/Chip.stories.tsx +206 -0
  65. package/chip/Chip.test.js +42 -0
  66. package/chip/types.d.ts +45 -0
  67. package/chip/types.js +5 -0
  68. package/{dist/common → common}/utils.js +1 -6
  69. package/common/variables.d.ts +1431 -0
  70. package/{dist/common → common}/variables.js +588 -624
  71. package/date-input/Calendar.d.ts +4 -0
  72. package/date-input/Calendar.js +215 -0
  73. package/date-input/DateInput.d.ts +4 -0
  74. package/date-input/DateInput.js +222 -0
  75. package/date-input/DateInput.stories.tsx +304 -0
  76. package/date-input/DateInput.test.js +648 -0
  77. package/date-input/DatePicker.d.ts +4 -0
  78. package/date-input/DatePicker.js +116 -0
  79. package/date-input/Icons.d.ts +6 -0
  80. package/date-input/Icons.js +63 -0
  81. package/date-input/YearPicker.d.ts +4 -0
  82. package/date-input/YearPicker.js +101 -0
  83. package/date-input/types.d.ts +158 -0
  84. package/date-input/types.js +5 -0
  85. package/dialog/Dialog.d.ts +4 -0
  86. package/dialog/Dialog.js +134 -0
  87. package/dialog/Dialog.stories.tsx +289 -0
  88. package/dialog/Dialog.test.js +56 -0
  89. package/dialog/types.d.ts +44 -0
  90. package/dialog/types.js +5 -0
  91. package/dropdown/Dropdown.d.ts +4 -0
  92. package/dropdown/Dropdown.js +334 -0
  93. package/dropdown/Dropdown.stories.tsx +438 -0
  94. package/dropdown/Dropdown.test.js +479 -0
  95. package/dropdown/DropdownMenu.d.ts +4 -0
  96. package/dropdown/DropdownMenu.js +60 -0
  97. package/dropdown/DropdownMenuItem.d.ts +4 -0
  98. package/dropdown/DropdownMenuItem.js +70 -0
  99. package/dropdown/types.d.ts +100 -0
  100. package/dropdown/types.js +5 -0
  101. package/file-input/FileInput.d.ts +4 -0
  102. package/file-input/FileInput.js +463 -0
  103. package/file-input/FileInput.stories.tsx +618 -0
  104. package/file-input/FileInput.test.js +445 -0
  105. package/file-input/FileItem.d.ts +4 -0
  106. package/file-input/FileItem.js +135 -0
  107. package/file-input/types.d.ts +129 -0
  108. package/file-input/types.js +5 -0
  109. package/flex/Flex.d.ts +4 -0
  110. package/flex/Flex.js +57 -0
  111. package/flex/Flex.stories.tsx +103 -0
  112. package/flex/types.d.ts +32 -0
  113. package/flex/types.js +5 -0
  114. package/footer/Footer.d.ts +4 -0
  115. package/footer/Footer.js +153 -0
  116. package/footer/Footer.stories.tsx +228 -0
  117. package/footer/Footer.test.js +92 -0
  118. package/footer/Icons.d.ts +2 -0
  119. package/{dist/footer → footer}/Icons.js +16 -20
  120. package/footer/types.d.ts +66 -0
  121. package/footer/types.js +5 -0
  122. package/header/Header.d.ts +7 -0
  123. package/header/Header.js +259 -0
  124. package/header/Header.stories.tsx +315 -0
  125. package/header/Header.test.js +66 -0
  126. package/header/Icons.d.ts +2 -0
  127. package/{dist/header → header}/Icons.js +9 -38
  128. package/header/types.d.ts +48 -0
  129. package/header/types.js +5 -0
  130. package/heading/Heading.d.ts +4 -0
  131. package/{dist/heading → heading}/Heading.js +31 -123
  132. package/heading/Heading.stories.tsx +54 -0
  133. package/heading/Heading.test.js +169 -0
  134. package/heading/types.d.ts +33 -0
  135. package/heading/types.js +5 -0
  136. package/inset/Inset.d.ts +3 -0
  137. package/inset/Inset.js +43 -0
  138. package/inset/Inset.stories.tsx +229 -0
  139. package/inset/types.d.ts +37 -0
  140. package/inset/types.js +5 -0
  141. package/layout/ApplicationLayout.d.ts +20 -0
  142. package/layout/ApplicationLayout.js +132 -0
  143. package/layout/ApplicationLayout.stories.tsx +162 -0
  144. package/layout/Icons.d.ts +5 -0
  145. package/{dist/layout → layout}/Icons.js +17 -16
  146. package/layout/SidenavContext.d.ts +5 -0
  147. package/layout/SidenavContext.js +15 -0
  148. package/layout/types.d.ts +42 -0
  149. package/layout/types.js +5 -0
  150. package/link/Link.d.ts +4 -0
  151. package/link/Link.js +116 -0
  152. package/link/Link.stories.tsx +253 -0
  153. package/link/Link.test.js +65 -0
  154. package/link/types.d.ts +54 -0
  155. package/link/types.js +5 -0
  156. package/main.d.ts +44 -0
  157. package/{dist/main.js → main.js} +102 -139
  158. package/nav-tabs/NavTabs.d.ts +8 -0
  159. package/nav-tabs/NavTabs.js +95 -0
  160. package/nav-tabs/NavTabs.stories.tsx +260 -0
  161. package/nav-tabs/NavTabs.test.js +75 -0
  162. package/nav-tabs/Tab.d.ts +4 -0
  163. package/nav-tabs/Tab.js +120 -0
  164. package/nav-tabs/types.d.ts +53 -0
  165. package/nav-tabs/types.js +5 -0
  166. package/number-input/NumberInput.d.ts +4 -0
  167. package/number-input/NumberInput.js +66 -0
  168. package/number-input/NumberInput.stories.tsx +115 -0
  169. package/number-input/NumberInput.test.js +406 -0
  170. package/number-input/NumberInputContext.d.ts +4 -0
  171. package/{dist/number-input → number-input}/NumberInputContext.js +4 -6
  172. package/number-input/numberInputContextTypes.d.ts +19 -0
  173. package/number-input/numberInputContextTypes.js +5 -0
  174. package/number-input/types.d.ts +124 -0
  175. package/number-input/types.js +5 -0
  176. package/package.json +44 -34
  177. package/paginator/Icons.d.ts +5 -0
  178. package/paginator/Icons.js +44 -0
  179. package/paginator/Paginator.d.ts +4 -0
  180. package/paginator/Paginator.js +141 -0
  181. package/paginator/Paginator.stories.tsx +87 -0
  182. package/paginator/Paginator.test.js +266 -0
  183. package/paginator/types.d.ts +38 -0
  184. package/paginator/types.js +5 -0
  185. package/paragraph/Paragraph.d.ts +6 -0
  186. package/paragraph/Paragraph.js +28 -0
  187. package/paragraph/Paragraph.stories.tsx +44 -0
  188. package/password-input/PasswordInput.d.ts +4 -0
  189. package/password-input/PasswordInput.js +137 -0
  190. package/password-input/PasswordInput.stories.tsx +131 -0
  191. package/password-input/PasswordInput.test.js +138 -0
  192. package/password-input/types.d.ts +110 -0
  193. package/password-input/types.js +5 -0
  194. package/progress-bar/ProgressBar.d.ts +4 -0
  195. package/progress-bar/ProgressBar.js +151 -0
  196. package/progress-bar/ProgressBar.stories.jsx +93 -0
  197. package/progress-bar/ProgressBar.test.js +93 -0
  198. package/progress-bar/types.d.ts +36 -0
  199. package/progress-bar/types.js +5 -0
  200. package/quick-nav/QuickNav.d.ts +4 -0
  201. package/quick-nav/QuickNav.js +95 -0
  202. package/quick-nav/QuickNav.stories.tsx +356 -0
  203. package/quick-nav/types.d.ts +21 -0
  204. package/quick-nav/types.js +5 -0
  205. package/radio-group/Radio.d.ts +4 -0
  206. package/radio-group/Radio.js +125 -0
  207. package/radio-group/RadioGroup.d.ts +4 -0
  208. package/radio-group/RadioGroup.js +238 -0
  209. package/radio-group/RadioGroup.stories.tsx +214 -0
  210. package/radio-group/RadioGroup.test.js +620 -0
  211. package/radio-group/types.d.ts +114 -0
  212. package/radio-group/types.js +5 -0
  213. package/resultsetTable/Icons.d.ts +7 -0
  214. package/resultsetTable/Icons.js +48 -0
  215. package/resultsetTable/ResultsetTable.d.ts +4 -0
  216. package/resultsetTable/ResultsetTable.js +160 -0
  217. package/resultsetTable/ResultsetTable.stories.tsx +300 -0
  218. package/resultsetTable/ResultsetTable.test.js +292 -0
  219. package/resultsetTable/types.d.ts +67 -0
  220. package/resultsetTable/types.js +5 -0
  221. package/select/Icons.d.ts +10 -0
  222. package/select/Icons.js +90 -0
  223. package/select/Listbox.d.ts +4 -0
  224. package/select/Listbox.js +144 -0
  225. package/select/Option.d.ts +4 -0
  226. package/select/Option.js +81 -0
  227. package/select/Select.d.ts +4 -0
  228. package/select/Select.js +579 -0
  229. package/select/Select.stories.tsx +971 -0
  230. package/select/Select.test.js +1845 -0
  231. package/select/types.d.ts +210 -0
  232. package/select/types.js +5 -0
  233. package/sidenav/Sidenav.d.ts +10 -0
  234. package/sidenav/Sidenav.js +226 -0
  235. package/sidenav/Sidenav.stories.tsx +282 -0
  236. package/sidenav/Sidenav.test.js +37 -0
  237. package/sidenav/types.d.ts +73 -0
  238. package/sidenav/types.js +5 -0
  239. package/slider/Slider.d.ts +4 -0
  240. package/slider/Slider.js +296 -0
  241. package/slider/Slider.stories.tsx +240 -0
  242. package/slider/Slider.test.js +222 -0
  243. package/slider/types.d.ts +86 -0
  244. package/slider/types.js +5 -0
  245. package/spinner/Spinner.d.ts +4 -0
  246. package/spinner/Spinner.js +221 -0
  247. package/spinner/Spinner.stories.jsx +129 -0
  248. package/spinner/Spinner.test.js +55 -0
  249. package/spinner/types.d.ts +32 -0
  250. package/spinner/types.js +5 -0
  251. package/switch/Switch.d.ts +4 -0
  252. package/switch/Switch.js +220 -0
  253. package/switch/Switch.stories.tsx +171 -0
  254. package/switch/Switch.test.js +180 -0
  255. package/switch/types.d.ts +66 -0
  256. package/switch/types.js +5 -0
  257. package/table/Table.d.ts +4 -0
  258. package/{dist/table → table}/Table.js +15 -47
  259. package/table/Table.stories.jsx +356 -0
  260. package/table/Table.test.js +21 -0
  261. package/table/types.d.ts +21 -0
  262. package/table/types.js +5 -0
  263. package/tabs/Tab.d.ts +4 -0
  264. package/tabs/Tab.js +115 -0
  265. package/tabs/Tabs.d.ts +4 -0
  266. package/tabs/Tabs.js +392 -0
  267. package/tabs/Tabs.stories.tsx +226 -0
  268. package/tabs/Tabs.test.js +295 -0
  269. package/tabs/types.d.ts +92 -0
  270. package/tabs/types.js +5 -0
  271. package/tag/Tag.d.ts +4 -0
  272. package/tag/Tag.js +154 -0
  273. package/tag/Tag.stories.tsx +155 -0
  274. package/tag/Tag.test.js +49 -0
  275. package/tag/types.d.ts +69 -0
  276. package/tag/types.js +5 -0
  277. package/text-input/Icons.d.ts +8 -0
  278. package/text-input/Icons.js +57 -0
  279. package/text-input/Suggestion.d.ts +4 -0
  280. package/text-input/Suggestion.js +68 -0
  281. package/text-input/Suggestions.d.ts +4 -0
  282. package/text-input/Suggestions.js +109 -0
  283. package/text-input/TextInput.d.ts +4 -0
  284. package/text-input/TextInput.js +588 -0
  285. package/text-input/TextInput.stories.tsx +569 -0
  286. package/text-input/TextInput.test.js +1404 -0
  287. package/text-input/types.d.ts +197 -0
  288. package/text-input/types.js +5 -0
  289. package/textarea/Textarea.d.ts +4 -0
  290. package/{dist/textarea → textarea}/Textarea.js +79 -207
  291. package/textarea/Textarea.stories.jsx +216 -0
  292. package/textarea/Textarea.test.js +360 -0
  293. package/textarea/types.d.ts +137 -0
  294. package/textarea/types.js +5 -0
  295. package/toggle-group/ToggleGroup.d.ts +4 -0
  296. package/{dist/toggle-group → toggle-group}/ToggleGroup.js +52 -199
  297. package/toggle-group/ToggleGroup.stories.tsx +215 -0
  298. package/toggle-group/ToggleGroup.test.js +124 -0
  299. package/toggle-group/types.d.ts +105 -0
  300. package/toggle-group/types.js +5 -0
  301. package/translatedLabelsType.d.ts +82 -0
  302. package/translatedLabelsType.js +5 -0
  303. package/typography/Typography.d.ts +4 -0
  304. package/typography/Typography.js +119 -0
  305. package/typography/Typography.stories.tsx +198 -0
  306. package/typography/types.d.ts +18 -0
  307. package/typography/types.js +5 -0
  308. package/useTheme.d.ts +2 -0
  309. package/{dist/useTheme.js → useTheme.js} +3 -9
  310. package/useTranslatedLabels.d.ts +3 -0
  311. package/useTranslatedLabels.js +15 -0
  312. package/wizard/Wizard.d.ts +4 -0
  313. package/wizard/Wizard.js +251 -0
  314. package/wizard/Wizard.stories.tsx +253 -0
  315. package/wizard/Wizard.test.js +114 -0
  316. package/wizard/types.d.ts +65 -0
  317. package/wizard/types.js +5 -0
  318. package/README.md +0 -66
  319. package/babel.config.js +0 -8
  320. package/dist/BackgroundColorContext.js +0 -46
  321. package/dist/ThemeContext.js +0 -250
  322. package/dist/V3Select/V3Select.js +0 -549
  323. package/dist/V3Select/index.d.ts +0 -27
  324. package/dist/V3Textarea/V3Textarea.js +0 -264
  325. package/dist/V3Textarea/index.d.ts +0 -27
  326. package/dist/accordion/Accordion.js +0 -353
  327. package/dist/accordion/index.d.ts +0 -28
  328. package/dist/accordion-group/AccordionGroup.js +0 -186
  329. package/dist/accordion-group/index.d.ts +0 -16
  330. package/dist/alert/index.d.ts +0 -51
  331. package/dist/badge/Badge.js +0 -63
  332. package/dist/box/Box.js +0 -156
  333. package/dist/box/index.d.ts +0 -25
  334. package/dist/button/Button.js +0 -238
  335. package/dist/button/index.d.ts +0 -24
  336. package/dist/card/Card.js +0 -254
  337. package/dist/card/index.d.ts +0 -22
  338. package/dist/checkbox/Checkbox.js +0 -299
  339. package/dist/checkbox/index.d.ts +0 -24
  340. package/dist/chip/Chip.js +0 -265
  341. package/dist/chip/index.d.ts +0 -22
  342. package/dist/common/RequiredComponent.js +0 -40
  343. package/dist/date/Date.js +0 -379
  344. package/dist/date/index.d.ts +0 -27
  345. package/dist/date-input/DateInput.js +0 -400
  346. package/dist/date-input/index.d.ts +0 -95
  347. package/dist/dialog/Dialog.js +0 -218
  348. package/dist/dialog/index.d.ts +0 -18
  349. package/dist/dropdown/Dropdown.js +0 -544
  350. package/dist/dropdown/index.d.ts +0 -26
  351. package/dist/file-input/FileInput.js +0 -644
  352. package/dist/file-input/FileItem.js +0 -287
  353. package/dist/file-input/index.d.ts +0 -81
  354. package/dist/footer/Footer.js +0 -421
  355. package/dist/footer/index.d.ts +0 -25
  356. package/dist/header/Header.js +0 -470
  357. package/dist/header/index.d.ts +0 -25
  358. package/dist/heading/index.d.ts +0 -17
  359. package/dist/input-text/Icons.js +0 -22
  360. package/dist/input-text/InputText.js +0 -705
  361. package/dist/input-text/index.d.ts +0 -36
  362. package/dist/layout/ApplicationLayout.js +0 -327
  363. package/dist/link/Link.js +0 -237
  364. package/dist/link/index.d.ts +0 -23
  365. package/dist/main.d.ts +0 -40
  366. package/dist/number-input/NumberInput.js +0 -136
  367. package/dist/number-input/index.d.ts +0 -113
  368. package/dist/paginator/Icons.js +0 -66
  369. package/dist/paginator/Paginator.js +0 -283
  370. package/dist/paginator/index.d.ts +0 -20
  371. package/dist/password-input/PasswordInput.js +0 -203
  372. package/dist/password-input/index.d.ts +0 -94
  373. package/dist/progress-bar/ProgressBar.js +0 -242
  374. package/dist/progress-bar/index.d.ts +0 -18
  375. package/dist/radio/Radio.js +0 -209
  376. package/dist/radio/index.d.ts +0 -23
  377. package/dist/resultsetTable/ResultsetTable.js +0 -358
  378. package/dist/resultsetTable/index.d.ts +0 -19
  379. package/dist/select/Select.js +0 -1069
  380. package/dist/select/index.d.ts +0 -53
  381. package/dist/sidenav/Sidenav.js +0 -179
  382. package/dist/sidenav/index.d.ts +0 -13
  383. package/dist/slider/Slider.js +0 -404
  384. package/dist/slider/index.d.ts +0 -29
  385. package/dist/spinner/Spinner.js +0 -381
  386. package/dist/spinner/index.d.ts +0 -17
  387. package/dist/switch/Switch.js +0 -222
  388. package/dist/switch/index.d.ts +0 -24
  389. package/dist/table/index.d.ts +0 -13
  390. package/dist/tabs/Tabs.js +0 -343
  391. package/dist/tabs/index.d.ts +0 -19
  392. package/dist/tag/Tag.js +0 -282
  393. package/dist/tag/index.d.ts +0 -24
  394. package/dist/text-input/TextInput.js +0 -974
  395. package/dist/text-input/index.d.ts +0 -135
  396. package/dist/textarea/index.d.ts +0 -117
  397. package/dist/toggle/Toggle.js +0 -220
  398. package/dist/toggle/index.d.ts +0 -21
  399. package/dist/toggle-group/index.d.ts +0 -21
  400. package/dist/upload/Upload.js +0 -205
  401. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -135
  402. package/dist/upload/buttons-upload/Icons.js +0 -40
  403. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  404. package/dist/upload/dragAndDropArea/Icons.js +0 -39
  405. package/dist/upload/file-upload/FileToUpload.js +0 -189
  406. package/dist/upload/file-upload/Icons.js +0 -66
  407. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  408. package/dist/upload/index.d.ts +0 -15
  409. package/dist/upload/transaction/Icons.js +0 -160
  410. package/dist/upload/transaction/Transaction.js +0 -148
  411. package/dist/upload/transactions/Transactions.js +0 -138
  412. package/dist/wizard/Icons.js +0 -65
  413. package/dist/wizard/Wizard.js +0 -405
  414. package/dist/wizard/index.d.ts +0 -18
  415. package/test/Accordion.test.js +0 -33
  416. package/test/AccordionGroup.test.js +0 -125
  417. package/test/Alert.test.js +0 -53
  418. package/test/Box.test.js +0 -10
  419. package/test/Button.test.js +0 -18
  420. package/test/Card.test.js +0 -30
  421. package/test/Checkbox.test.js +0 -45
  422. package/test/Chip.test.js +0 -25
  423. package/test/Date.test.js +0 -395
  424. package/test/DateInput.test.js +0 -242
  425. package/test/Dialog.test.js +0 -23
  426. package/test/Dropdown.test.js +0 -145
  427. package/test/FileInput.test.js +0 -201
  428. package/test/Footer.test.js +0 -94
  429. package/test/Header.test.js +0 -34
  430. package/test/Heading.test.js +0 -83
  431. package/test/InputText.test.js +0 -240
  432. package/test/Link.test.js +0 -43
  433. package/test/NumberInput.test.js +0 -259
  434. package/test/Paginator.test.js +0 -177
  435. package/test/PasswordInput.test.js +0 -83
  436. package/test/ProgressBar.test.js +0 -35
  437. package/test/Radio.test.js +0 -37
  438. package/test/ResultsetTable.test.js +0 -329
  439. package/test/Sidenav.test.js +0 -45
  440. package/test/Slider.test.js +0 -74
  441. package/test/Spinner.test.js +0 -32
  442. package/test/Switch.test.js +0 -45
  443. package/test/Table.test.js +0 -36
  444. package/test/Tabs.test.js +0 -109
  445. package/test/Tag.test.js +0 -32
  446. package/test/TextInput.test.js +0 -732
  447. package/test/Textarea.test.js +0 -193
  448. package/test/ToggleGroup.test.js +0 -85
  449. package/test/Upload.test.js +0 -60
  450. package/test/V3Select.test.js +0 -212
  451. package/test/V3TextArea.test.js +0 -51
  452. package/test/Wizard.test.js +0 -130
  453. package/test/mocks/pngMock.js +0 -1
  454. package/test/mocks/svgMock.js +0 -1
  455. /package/{dist/common → common}/OpenSans.css +0 -0
  456. /package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  457. /package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  458. /package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  459. /package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  460. /package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  461. /package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  462. /package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  463. /package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  464. /package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  465. /package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
@@ -0,0 +1,648 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
5
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
6
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
7
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var _react2 = require("@testing-library/react");
10
+ var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
11
+ var _dayjs = _interopRequireDefault(require("dayjs"));
12
+ var _DateInput = _interopRequireDefault(require("./DateInput.tsx"));
13
+ // Mocking DOMRect for Radix Primitive Popover
14
+ global.globalThis = global;
15
+ global.ResizeObserver = /*#__PURE__*/function () {
16
+ function ResizeObserver(cb) {
17
+ (0, _classCallCheck2["default"])(this, ResizeObserver);
18
+ this.cb = cb;
19
+ }
20
+ (0, _createClass2["default"])(ResizeObserver, [{
21
+ key: "observe",
22
+ value: function observe() {
23
+ this.cb([{
24
+ borderBoxSize: {
25
+ inlineSize: 0,
26
+ blockSize: 0
27
+ }
28
+ }]);
29
+ }
30
+ }, {
31
+ key: "unobserve",
32
+ value: function unobserve() {}
33
+ }]);
34
+ return ResizeObserver;
35
+ }();
36
+ global.DOMRect = {
37
+ fromRect: function fromRect() {
38
+ return {
39
+ top: 0,
40
+ left: 0,
41
+ bottom: 0,
42
+ right: 0,
43
+ width: 0,
44
+ height: 0
45
+ };
46
+ }
47
+ };
48
+ describe("DateInput component tests", function () {
49
+ test("Renders with correct label, helper text, optional, placeholder and clearable action", function () {
50
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
51
+ label: "Example label",
52
+ helperText: "Example of helper text",
53
+ placeholder: true,
54
+ optional: true,
55
+ clearable: true
56
+ })),
57
+ getByText = _render.getByText,
58
+ getByRole = _render.getByRole,
59
+ getAllByRole = _render.getAllByRole;
60
+ var input = getByRole("textbox");
61
+ expect(getByText("Example label")).toBeTruthy();
62
+ expect(getByText("Example of helper text")).toBeTruthy();
63
+ expect(getByText("(Optional)")).toBeTruthy();
64
+ expect(input.getAttribute("placeholder")).toBe("DD-MM-YYYY");
65
+ _userEvent["default"].type(input, "10/10/2010");
66
+ var closeAction = getAllByRole("button")[0];
67
+ _userEvent["default"].click(closeAction);
68
+ expect(input.value).toBe("");
69
+ });
70
+ test("Renders with custom error", function () {
71
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
72
+ error: "Personalized error."
73
+ })),
74
+ getByText = _render2.getByText;
75
+ expect(getByText("Personalized error.")).toBeTruthy();
76
+ });
77
+ test("Renders with an initial value when it is uncontrolled", function () {
78
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
79
+ label: "Default label",
80
+ placeholder: "Placeholder",
81
+ defaultValue: "21-10-2015"
82
+ })),
83
+ getByText = _render3.getByText,
84
+ getByRole = _render3.getByRole;
85
+ var input = getByRole("textbox");
86
+ var calendarAction = getByRole("combobox");
87
+ expect(input.value).toBe("21-10-2015");
88
+ _userEvent["default"].click(calendarAction);
89
+ expect(getByText("21").getAttribute("aria-selected")).toBe("true");
90
+ expect(getByText("October 2015")).toBeTruthy();
91
+ });
92
+ test("Renders with correct format: user typed date but it's invalid, onBlur error", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
93
+ var onBlur, _render4, getByRole, input;
94
+ return _regenerator["default"].wrap(function _callee$(_context) {
95
+ while (1) switch (_context.prev = _context.next) {
96
+ case 0:
97
+ onBlur = jest.fn(function (_ref2) {
98
+ var value = _ref2.value,
99
+ error = _ref2.error;
100
+ expect(value).toBe("10/90/2010");
101
+ expect(error).toBe("Invalid date.");
102
+ });
103
+ _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
104
+ label: "With format MM/dd/yyyy",
105
+ format: "MM/dd/yyyy",
106
+ onBlur: onBlur
107
+ })), getByRole = _render4.getByRole;
108
+ input = getByRole("textbox");
109
+ _userEvent["default"].click(input);
110
+ _context.next = 6;
111
+ return _userEvent["default"].keyboard("10");
112
+ case 6:
113
+ _context.next = 8;
114
+ return _userEvent["default"].keyboard("/");
115
+ case 8:
116
+ _context.next = 10;
117
+ return _userEvent["default"].keyboard("90");
118
+ case 10:
119
+ _context.next = 12;
120
+ return _userEvent["default"].keyboard("/");
121
+ case 12:
122
+ _context.next = 14;
123
+ return _userEvent["default"].keyboard("2010");
124
+ case 14:
125
+ _react2.fireEvent.blur(input);
126
+ case 15:
127
+ case "end":
128
+ return _context.stop();
129
+ }
130
+ }, _callee);
131
+ })));
132
+ test("Renders with correct format: user typed date but it's invalid, onChange error", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
133
+ var onChange, _render5, getByRole, input;
134
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
135
+ while (1) switch (_context2.prev = _context2.next) {
136
+ case 0:
137
+ onChange = jest.fn();
138
+ _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
139
+ label: "With format MM/dd/yyyy",
140
+ format: "MM/dd/yyyy",
141
+ onChange: onChange
142
+ })), getByRole = _render5.getByRole;
143
+ input = getByRole("textbox");
144
+ _userEvent["default"].click(input);
145
+ _context2.next = 6;
146
+ return _userEvent["default"].keyboard("10");
147
+ case 6:
148
+ _context2.next = 8;
149
+ return _userEvent["default"].keyboard("/");
150
+ case 8:
151
+ _context2.next = 10;
152
+ return _userEvent["default"].keyboard("90");
153
+ case 10:
154
+ _context2.next = 12;
155
+ return _userEvent["default"].keyboard("/");
156
+ case 12:
157
+ _context2.next = 14;
158
+ return _userEvent["default"].keyboard("2010");
159
+ case 14:
160
+ expect(onChange).toHaveBeenCalledTimes(10);
161
+ expect(onChange).toHaveBeenCalledWith({
162
+ value: "10/90/2010",
163
+ error: "Invalid date."
164
+ });
165
+ case 16:
166
+ case "end":
167
+ return _context2.stop();
168
+ }
169
+ }, _callee2);
170
+ })));
171
+ test("Calendar renders with correct date: today's date", function () {
172
+ var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], null)),
173
+ getByText = _render6.getByText,
174
+ getByRole = _render6.getByRole,
175
+ getAllByText = _render6.getAllByText;
176
+ var calendarAction = getByRole("combobox");
177
+ var d = (0, _dayjs["default"])();
178
+ _userEvent["default"].click(calendarAction);
179
+ expect(document.activeElement === getAllByText(d.get("date")).length === 2 && +d.get("date") > 20 ? getAllByText(d.get("date"))[1] : getAllByText(d.get("date"))[0]).toBeTruthy();
180
+ expect(getByText(d.format("MMMM YYYY"))).toBeTruthy();
181
+ });
182
+ test("Calendar renders with correct date: value prop", function () {
183
+ var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
184
+ value: "20-10-2019"
185
+ })),
186
+ getByText = _render7.getByText,
187
+ getByRole = _render7.getByRole,
188
+ getAllByText = _render7.getAllByText;
189
+ var calendarAction = getByRole("combobox");
190
+ var d = (0, _dayjs["default"])("2019-10-20");
191
+ _userEvent["default"].click(calendarAction);
192
+ expect(getAllByText(d.get("date"))[0].getAttribute("aria-selected")).toBe("true");
193
+ expect(getByText(d.format("MMMM YYYY"))).toBeTruthy();
194
+ });
195
+ test("Calendar renders with correct date: user typed value", function () {
196
+ var _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], null)),
197
+ getByText = _render8.getByText,
198
+ getByRole = _render8.getByRole,
199
+ getAllByText = _render8.getAllByText;
200
+ var calendarAction = getByRole("combobox");
201
+ var d = (0, _dayjs["default"])("2010-1-1");
202
+ var input = getByRole("textbox");
203
+ _userEvent["default"].type(input, "01-01-2010");
204
+ _userEvent["default"].click(calendarAction);
205
+ expect(getAllByText(d.get("date"))[0].getAttribute("aria-selected")).toBe("true");
206
+ expect(getByText(d.format("MMMM YYYY"))).toBeTruthy();
207
+ });
208
+ test("Calendar renders with correct date: invalid date, renders with today's date", function () {
209
+ var onBlur = jest.fn();
210
+ var _render9 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
211
+ onBlur: onBlur
212
+ })),
213
+ getByText = _render9.getByText,
214
+ getByRole = _render9.getByRole,
215
+ getAllByText = _render9.getAllByText;
216
+ var calendarAction = getByRole("combobox");
217
+ var d = (0, _dayjs["default"])();
218
+ var input = getByRole("textbox");
219
+ _userEvent["default"].type(input, "01-01-xxxx");
220
+ _react2.fireEvent.blur(input);
221
+ expect(onBlur).toHaveBeenCalled();
222
+ expect(onBlur).toHaveBeenCalledWith({
223
+ value: "01-01-xxxx",
224
+ error: "Invalid date."
225
+ });
226
+ _userEvent["default"].click(calendarAction);
227
+ expect(document.activeElement === getAllByText(d.get("date")).length === 2 && +d.get("date") > 20 ? getAllByText(d.get("date"))[1] : getAllByText(d.get("date"))[0]).toBeTruthy();
228
+ expect(getByText(d.format("MMMM YYYY"))).toBeTruthy();
229
+ });
230
+ test("Selecting a date from the calendar with an specific format", function () {
231
+ var _render10 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
232
+ label: "With format M-dd-yyyy",
233
+ format: "M-dd-yyyy"
234
+ })),
235
+ getAllByText = _render10.getAllByText,
236
+ getByText = _render10.getByText,
237
+ getByRole = _render10.getByRole;
238
+ var input = getByRole("textbox");
239
+ var calendarAction = getByRole("combobox");
240
+ _userEvent["default"].click(calendarAction);
241
+ var dayButton = getAllByText("10")[0].closest("button");
242
+ _react2.fireEvent.click(dayButton);
243
+ var d = (0, _dayjs["default"])();
244
+ d = d.set("date", 10);
245
+ expect(getAllByText(d.get("date"))[0].getAttribute("aria-selected")).toBe("true");
246
+ expect(getByText(d.format("MMMM YYYY"))).toBeTruthy();
247
+ _react2.fireEvent.keyDown(document, {
248
+ key: "Escape",
249
+ code: "Escape",
250
+ keyCode: 27,
251
+ charCode: 27
252
+ });
253
+ expect(input.value).toBe(d.format("M-DD-YYYY"));
254
+ });
255
+ test("Changing months using the arrows", function () {
256
+ var _render11 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
257
+ label: "label",
258
+ format: "dd-mm-yyyy",
259
+ defaultValue: "10-10-2000"
260
+ })),
261
+ getByText = _render11.getByText,
262
+ getByRole = _render11.getByRole,
263
+ getByTitle = _render11.getByTitle;
264
+ var calendarAction = getByRole("combobox");
265
+ _userEvent["default"].click(calendarAction);
266
+ var d = (0, _dayjs["default"])("10-10-2000", "DD-MM-YYYY", true);
267
+ d = d.set("date", 10);
268
+ expect(getByText(d.format("MMMM YYYY"))).toBeTruthy();
269
+ var previousMonth = getByTitle("Previous month");
270
+ _userEvent["default"].click(previousMonth);
271
+ expect(getByText(d.set("month", d.get("month") - 1).format("MMMM YYYY"))).toBeTruthy();
272
+ var nextMonth = getByTitle("Next month");
273
+ _userEvent["default"].click(nextMonth);
274
+ expect(getByText(d.format("MMMM YYYY"))).toBeTruthy();
275
+ });
276
+ test("Selecting a date from the calendar from another month", function () {
277
+ var _render12 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
278
+ format: "dd-mm-yyyy",
279
+ defaultValue: "10-08-2021"
280
+ })),
281
+ getAllByText = _render12.getAllByText,
282
+ getByText = _render12.getByText,
283
+ getByRole = _render12.getByRole;
284
+ var input = getByRole("textbox");
285
+ var calendarAction = getByRole("combobox");
286
+ _userEvent["default"].click(calendarAction);
287
+ var dayButton = getAllByText("31")[0].closest("button");
288
+ _react2.fireEvent.click(dayButton);
289
+ var d = (0, _dayjs["default"])("10-08-2021", "DD-MM-YYYY", true);
290
+ d = d.set("date", 31).set("month", 6);
291
+ expect(getAllByText(d.get("date"))[0].getAttribute("aria-selected")).toBe("true");
292
+ expect(getByText(d.format("MMMM YYYY"))).toBeTruthy();
293
+ _react2.fireEvent.keyDown(document, {
294
+ key: "Escape",
295
+ code: "Escape",
296
+ keyCode: 27,
297
+ charCode: 27
298
+ });
299
+ expect(input.value).toBe(d.format("DD-MM-YYYY"));
300
+ });
301
+ test("Selecting a year from the calendar year picker", function () {
302
+ var _render13 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
303
+ format: "dd-mm-yyyy",
304
+ defaultValue: "10-08-2021"
305
+ })),
306
+ getByText = _render13.getByText,
307
+ getByRole = _render13.getByRole;
308
+ var input = getByRole("textbox");
309
+ var calendarAction = getByRole("combobox");
310
+ _userEvent["default"].click(calendarAction);
311
+ var d = (0, _dayjs["default"])("10-08-2021", "DD-MM-YYYY", true);
312
+ _userEvent["default"].click(getByText(d.format("MMMM YYYY")));
313
+ expect(getByText("2024")).toBeTruthy();
314
+ _userEvent["default"].click(getByText("2024"));
315
+ _userEvent["default"].click(getByText(d.set("year", 2024).format("MMMM YYYY")));
316
+ _react2.fireEvent.keyDown(document, {
317
+ key: "Escape",
318
+ code: "Escape",
319
+ keyCode: 27,
320
+ charCode: 27
321
+ });
322
+ expect(input.value).toBe(d.format("DD-MM-YYYY"));
323
+ });
324
+ test("Selecting a date from the calendar (using keyboard presses)", function () {
325
+ var _render14 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], null)),
326
+ getByRole = _render14.getByRole,
327
+ getAllByText = _render14.getAllByText,
328
+ getByText = _render14.getByText;
329
+ var calendarAction = getByRole("combobox");
330
+ var input = getByRole("textbox");
331
+ _userEvent["default"].type(input, "01-01-2010");
332
+ expect(input.value).toBe("01-01-2010");
333
+ _userEvent["default"].click(calendarAction);
334
+ expect(document.activeElement === getAllByText("1")[0].closest("button")).toBeTruthy();
335
+ _react2.fireEvent.keyDown(getAllByText("1")[0].closest("button"), {
336
+ key: "ArrowRight",
337
+ code: "ArrowRight",
338
+ keyCode: 39,
339
+ charCode: 39
340
+ });
341
+ expect(document.activeElement === getAllByText("2")[0].closest("button")).toBeTruthy();
342
+ _react2.fireEvent.keyDown(getAllByText("2")[0].closest("button"), {
343
+ key: "PageUp",
344
+ code: "PageUp",
345
+ keyCode: 33,
346
+ charCode: 33
347
+ });
348
+ expect(document.activeElement === getAllByText("2")[0].closest("button")).toBeTruthy();
349
+ expect(getByText("December 2009")).toBeTruthy();
350
+ _react2.fireEvent.keyDown(getAllByText("2")[0].closest("button"), {
351
+ key: "PageDown",
352
+ code: "PageDown",
353
+ keyCode: 34,
354
+ charCode: 34
355
+ });
356
+ expect(document.activeElement === getAllByText("2")[0].closest("button")).toBeTruthy();
357
+ expect(getByText("January 2010")).toBeTruthy();
358
+ _react2.fireEvent.keyDown(getAllByText("2")[0].closest("button"), {
359
+ key: "PageDown",
360
+ code: "PageDown",
361
+ keyCode: 34,
362
+ charCode: 34,
363
+ shiftKey: true
364
+ });
365
+ expect(getByText("January 2011")).toBeTruthy();
366
+ _react2.fireEvent.keyDown(getAllByText("2")[0].closest("button"), {
367
+ key: "PageUp",
368
+ code: "PageUp",
369
+ keyCode: 33,
370
+ charCode: 33,
371
+ shiftKey: true
372
+ });
373
+ expect(getByText("January 2010")).toBeTruthy();
374
+ expect(document.activeElement === getAllByText("2")[0].closest("button")).toBeTruthy();
375
+ _react2.fireEvent.click(getAllByText("2")[0].closest("button"), {
376
+ key: " ",
377
+ code: "Space",
378
+ keyCode: 32,
379
+ charCode: 32
380
+ });
381
+ expect(getAllByText("2")[0].closest("button").getAttribute("aria-selected")).toBe("true");
382
+ _react2.fireEvent.keyDown(document, {
383
+ key: "Escape",
384
+ code: "Escape",
385
+ keyCode: 27,
386
+ charCode: 27
387
+ });
388
+ expect(input.value).toBe("02-01-2010");
389
+ });
390
+ test("Selecting a date from the calendar (using keyboard presses) part II", function () {
391
+ var _render15 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], null)),
392
+ getByRole = _render15.getByRole,
393
+ getAllByText = _render15.getAllByText;
394
+ var calendarAction = getByRole("combobox");
395
+ var input = getByRole("textbox");
396
+ _userEvent["default"].type(input, "01-01-2010");
397
+ expect(input.value).toBe("01-01-2010");
398
+ _userEvent["default"].click(calendarAction);
399
+ expect(document.activeElement === getAllByText("1")[0].closest("button")).toBeTruthy();
400
+ _react2.fireEvent.keyDown(getAllByText("1")[0].closest("button"), {
401
+ key: "ArrowDown",
402
+ code: "ArrowDown",
403
+ keyCode: 40,
404
+ charCode: 40
405
+ });
406
+ expect(document.activeElement === getAllByText("8")[0].closest("button")).toBeTruthy();
407
+ _react2.fireEvent.keyDown(getAllByText("8")[0].closest("button"), {
408
+ key: "ArrowDown",
409
+ code: "ArrowDown",
410
+ keyCode: 40,
411
+ charCode: 40
412
+ });
413
+ expect(document.activeElement === getAllByText("15")[0].closest("button")).toBeTruthy();
414
+ _react2.fireEvent.keyDown(getAllByText("15")[0].closest("button"), {
415
+ key: "ArrowUp",
416
+ code: "ArrowUp",
417
+ keyCode: 38,
418
+ charCode: 38
419
+ });
420
+ expect(document.activeElement === getAllByText("8")[0].closest("button")).toBeTruthy();
421
+ _react2.fireEvent.keyDown(getAllByText("8")[0].closest("button"), {
422
+ key: "End",
423
+ code: "End",
424
+ keyCode: 35,
425
+ charCode: 35
426
+ });
427
+ expect(document.activeElement === getAllByText("10")[0].closest("button")).toBeTruthy();
428
+ _react2.fireEvent.keyDown(getAllByText("10")[0].closest("button"), {
429
+ key: "Home",
430
+ code: "Home",
431
+ keyCode: 36,
432
+ charCode: 36
433
+ });
434
+ _react2.fireEvent.keyDown(getAllByText("10")[0].closest("button"), {
435
+ key: " ",
436
+ code: "Space",
437
+ keyCode: 32,
438
+ charCode: 32
439
+ });
440
+ expect(input.value).toBe("10-01-2010");
441
+ });
442
+ test("onChange & onBlur functions are called correctly", function () {
443
+ var onBlur = jest.fn();
444
+ var onChange = jest.fn();
445
+ var _render16 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
446
+ onChange: onChange,
447
+ onBlur: onBlur
448
+ })),
449
+ getByRole = _render16.getByRole;
450
+ var input = getByRole("textbox");
451
+ var d = new Date(2011, 9, 10);
452
+ _userEvent["default"].type(input, "10-10-2011");
453
+ expect(input.value).toBe("10-10-2011");
454
+ expect(onChange).toHaveBeenCalledTimes(10);
455
+ expect(onChange).toHaveBeenCalledWith({
456
+ value: "10-10-2011",
457
+ date: d
458
+ });
459
+ _react2.fireEvent.blur(input);
460
+ expect(onBlur).toHaveBeenCalled();
461
+ expect(onBlur).toHaveBeenCalledWith({
462
+ value: "10-10-2011",
463
+ date: d
464
+ });
465
+ });
466
+ test("onChange & onBlur functions are called correctly, also with errors", function () {
467
+ var onBlur = jest.fn();
468
+ var onChange = jest.fn();
469
+ var _render17 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
470
+ onChange: onChange,
471
+ onBlur: onBlur
472
+ })),
473
+ getByRole = _render17.getByRole;
474
+ var input = getByRole("textbox");
475
+ _userEvent["default"].type(input, "10-10-");
476
+ expect(input.value).toBe("10-10-");
477
+ expect(onChange).toHaveBeenCalledTimes(6);
478
+ expect(onChange).toHaveBeenCalledWith({
479
+ value: "10-10-",
480
+ error: "Invalid date."
481
+ });
482
+ _react2.fireEvent.blur(input);
483
+ expect(onBlur).toHaveBeenCalled();
484
+ expect(onBlur).toHaveBeenCalledWith({
485
+ value: "10-10-",
486
+ error: "Invalid date."
487
+ });
488
+ });
489
+ test("onBlur function removes the error when it is fixed", function () {
490
+ var onBlur = jest.fn();
491
+ var _render18 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
492
+ onBlur: onBlur
493
+ })),
494
+ getByRole = _render18.getByRole;
495
+ var input = getByRole("textbox");
496
+ var d = new Date(2002, 1, 20);
497
+ _userEvent["default"].type(input, "test");
498
+ expect(input.value).toBe("test");
499
+ _react2.fireEvent.blur(input);
500
+ expect(onBlur).toHaveBeenCalled();
501
+ expect(onBlur).toHaveBeenCalledWith({
502
+ value: "test",
503
+ error: "Invalid date."
504
+ });
505
+ _userEvent["default"].clear(input);
506
+ _userEvent["default"].type(input, "20-02-2002");
507
+ expect(input.value).toBe("20-02-2002");
508
+ _react2.fireEvent.blur(input);
509
+ expect(onBlur).toHaveBeenCalled();
510
+ expect(onBlur).toHaveBeenCalledWith({
511
+ value: "20-02-2002",
512
+ date: d
513
+ });
514
+ });
515
+ test("onBlur function removes the error when the input is empty", function () {
516
+ var onBlur = jest.fn();
517
+ var _render19 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
518
+ onBlur: onBlur,
519
+ optional: true
520
+ })),
521
+ getByRole = _render19.getByRole;
522
+ var input = getByRole("textbox");
523
+ _userEvent["default"].type(input, "test");
524
+ expect(input.value).toBe("test");
525
+ _react2.fireEvent.blur(input);
526
+ expect(onBlur).toHaveBeenCalled();
527
+ expect(onBlur).toHaveBeenCalledWith({
528
+ value: "test",
529
+ error: "Invalid date."
530
+ });
531
+ _userEvent["default"].clear(input);
532
+ _react2.fireEvent.blur(input);
533
+ expect(onBlur).toHaveBeenCalled();
534
+ expect(onBlur).toHaveBeenCalledWith({
535
+ value: ""
536
+ });
537
+ });
538
+ test("onBlur & onChange functions error: required field (not optional)", function () {
539
+ var onBlur = jest.fn();
540
+ var onChange = jest.fn();
541
+ var _render20 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
542
+ onBlur: onBlur,
543
+ onChange: onChange
544
+ })),
545
+ getByRole = _render20.getByRole;
546
+ var date = getByRole("textbox");
547
+ _userEvent["default"].type(date, "t");
548
+ expect(date.value).toBe("t");
549
+ _userEvent["default"].clear(date);
550
+ _react2.fireEvent.blur(date);
551
+ expect(onBlur).toHaveBeenCalled();
552
+ expect(onBlur).toHaveBeenCalledWith({
553
+ value: "",
554
+ error: "This field is required. Please, enter a value."
555
+ });
556
+ expect(onChange).toHaveBeenCalled();
557
+ expect(onChange).toHaveBeenCalledWith({
558
+ value: "",
559
+ error: "This field is required. Please, enter a value."
560
+ });
561
+ });
562
+ test("Disabled date input (calendar action must be shown but not clickable)", function () {
563
+ var _render21 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
564
+ disabled: true
565
+ })),
566
+ getByRole = _render21.getByRole,
567
+ queryByText = _render21.queryByText;
568
+ var calendarAction = getByRole("button");
569
+ var d = new Date();
570
+ var options = {
571
+ weekday: "short",
572
+ month: "short",
573
+ day: "numeric"
574
+ };
575
+ expect(getByRole("textbox").disabled).toBeTruthy();
576
+ _userEvent["default"].click(calendarAction);
577
+ expect(queryByText(d.toLocaleString("en-US", options))).toBeFalsy();
578
+ });
579
+ test("Input has correct accesibility attributes", function () {
580
+ var _render22 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
581
+ label: "Date input label"
582
+ })),
583
+ getByRole = _render22.getByRole;
584
+ var input = getByRole("textbox");
585
+ expect(input.getAttribute("aria-autocomplete")).toBeNull();
586
+ expect(input.getAttribute("aria-controls")).toBeNull();
587
+ expect(input.getAttribute("aria-expanded")).toBeNull();
588
+ var calendarAction = getByRole("combobox");
589
+ expect(calendarAction.getAttribute("aria-autocomplete")).toBeNull();
590
+ expect(calendarAction.getAttribute("aria-controls")).toBeTruthy();
591
+ expect(calendarAction.getAttribute("aria-describedby")).toBeTruthy();
592
+ expect(calendarAction.getAttribute("aria-describedby") === calendarAction.getAttribute("aria-controls")).toBeTruthy();
593
+ expect(calendarAction.getAttribute("aria-expanded")).toBe("false");
594
+ _userEvent["default"].click(calendarAction);
595
+ var datePicker = getByRole("dialog");
596
+ expect(datePicker.getAttribute("aria-modal")).toBe("true");
597
+ expect(calendarAction.getAttribute("aria-expanded")).toBe("true");
598
+ expect(document.getElementById(calendarAction.getAttribute("aria-describedby"))).toBeTruthy();
599
+ _react2.fireEvent.keyDown(document, {
600
+ key: "Escape",
601
+ code: "Escape",
602
+ keyCode: 27,
603
+ charCode: 27
604
+ });
605
+ expect(calendarAction.getAttribute("aria-expanded")).toBe("false");
606
+ });
607
+ test("Chooses the correct year when two digit format", function () {
608
+ var _render23 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_DateInput["default"], {
609
+ label: "Default label",
610
+ placeholder: "Placeholder",
611
+ format: "dd-mm-yy",
612
+ defaultValue: "21-10-80"
613
+ })),
614
+ getByText = _render23.getByText,
615
+ getByRole = _render23.getByRole,
616
+ getAllByText = _render23.getAllByText;
617
+ var input = getByRole("textbox");
618
+ var calendarAction = getByRole("combobox");
619
+ expect(input.value).toBe("21-10-80");
620
+ _userEvent["default"].click(calendarAction);
621
+ expect(getByText("21").getAttribute("aria-selected")).toBe("true");
622
+ expect(getByText("October 1980")).toBeTruthy();
623
+ _react2.fireEvent.keyDown(document, {
624
+ key: "Escape",
625
+ code: "Escape",
626
+ keyCode: 27,
627
+ charCode: 27
628
+ });
629
+ _react2.fireEvent.change(input, {
630
+ target: {
631
+ value: "21-10-10"
632
+ }
633
+ });
634
+ _userEvent["default"].click(calendarAction);
635
+ expect(getByText("October 1910")).toBeTruthy();
636
+ _userEvent["default"].click(getByText("October 1910"));
637
+ _userEvent["default"].click(getByText("2010"));
638
+ _userEvent["default"].click(getAllByText("1")[0]);
639
+ expect(input.value).toBe("01-10-10");
640
+ _react2.fireEvent.change(input, {
641
+ target: {
642
+ value: "21-10-80"
643
+ }
644
+ });
645
+ _userEvent["default"].click(calendarAction);
646
+ expect(getByText("October 2080")).toBeTruthy();
647
+ });
648
+ });
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import { DatePickerPropsType } from "./types";
3
+ declare const _default: React.MemoExoticComponent<({ date, onDateSelect, id }: DatePickerPropsType) => JSX.Element>;
4
+ export default _default;