@dxc-technology/halstack-react 0.0.0-402a9ce → 0.0.0-4121d3f

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 (522) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +47 -0
  3. package/HalstackContext.d.ts +1356 -0
  4. package/HalstackContext.js +335 -0
  5. package/README.md +28 -47
  6. package/accordion/Accordion.d.ts +4 -0
  7. package/accordion/Accordion.js +222 -0
  8. package/accordion/Accordion.stories.tsx +297 -0
  9. package/accordion/Accordion.test.js +71 -0
  10. package/accordion/types.d.ts +57 -0
  11. package/accordion/types.js +5 -0
  12. package/accordion-group/AccordionGroup.d.ts +8 -0
  13. package/accordion-group/AccordionGroup.js +128 -0
  14. package/accordion-group/AccordionGroup.stories.tsx +252 -0
  15. package/accordion-group/AccordionGroup.test.js +116 -0
  16. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  17. package/accordion-group/AccordionGroupAccordion.js +43 -0
  18. package/accordion-group/types.d.ts +67 -0
  19. package/accordion-group/types.js +5 -0
  20. package/alert/Alert.d.ts +4 -0
  21. package/alert/Alert.js +289 -0
  22. package/alert/Alert.stories.tsx +198 -0
  23. package/alert/Alert.test.js +92 -0
  24. package/alert/types.d.ts +49 -0
  25. package/alert/types.js +5 -0
  26. package/badge/Badge.d.ts +4 -0
  27. package/badge/Badge.js +61 -0
  28. package/badge/types.d.ts +5 -0
  29. package/badge/types.js +5 -0
  30. package/bleed/Bleed.d.ts +3 -0
  31. package/bleed/Bleed.js +51 -0
  32. package/bleed/Bleed.stories.tsx +342 -0
  33. package/bleed/types.d.ts +37 -0
  34. package/bleed/types.js +5 -0
  35. package/box/Box.d.ts +4 -0
  36. package/box/Box.js +97 -0
  37. package/box/Box.stories.tsx +119 -0
  38. package/box/Box.test.js +18 -0
  39. package/box/types.d.ts +32 -0
  40. package/box/types.js +5 -0
  41. package/bulleted-list/BulletedList.d.ts +7 -0
  42. package/bulleted-list/BulletedList.js +125 -0
  43. package/bulleted-list/BulletedList.stories.tsx +206 -0
  44. package/bulleted-list/types.d.ts +38 -0
  45. package/bulleted-list/types.js +5 -0
  46. package/button/Button.d.ts +4 -0
  47. package/button/Button.js +144 -0
  48. package/button/Button.stories.tsx +425 -0
  49. package/button/Button.test.js +46 -0
  50. package/button/types.d.ts +57 -0
  51. package/button/types.js +5 -0
  52. package/card/Card.d.ts +4 -0
  53. package/card/Card.js +143 -0
  54. package/card/Card.stories.tsx +171 -0
  55. package/card/Card.test.js +50 -0
  56. package/card/types.d.ts +62 -0
  57. package/card/types.js +5 -0
  58. package/checkbox/Checkbox.d.ts +4 -0
  59. package/checkbox/Checkbox.js +269 -0
  60. package/checkbox/Checkbox.stories.tsx +276 -0
  61. package/checkbox/Checkbox.test.js +228 -0
  62. package/checkbox/types.d.ts +72 -0
  63. package/checkbox/types.js +5 -0
  64. package/chip/Chip.d.ts +4 -0
  65. package/chip/Chip.js +140 -0
  66. package/chip/Chip.stories.tsx +214 -0
  67. package/chip/Chip.test.js +54 -0
  68. package/chip/types.d.ts +45 -0
  69. package/chip/types.js +5 -0
  70. package/common/OpenSans.css +69 -0
  71. package/common/coreTokens.d.ts +146 -0
  72. package/common/coreTokens.js +167 -0
  73. package/common/utils.d.ts +1 -0
  74. package/{dist/common → common}/utils.js +4 -4
  75. package/common/variables.d.ts +1499 -0
  76. package/common/variables.js +1378 -0
  77. package/date-input/Calendar.d.ts +4 -0
  78. package/date-input/Calendar.js +258 -0
  79. package/date-input/DateInput.d.ts +4 -0
  80. package/date-input/DateInput.js +271 -0
  81. package/date-input/DateInput.stories.tsx +314 -0
  82. package/date-input/DateInput.test.js +849 -0
  83. package/date-input/DatePicker.d.ts +4 -0
  84. package/date-input/DatePicker.js +146 -0
  85. package/date-input/Icons.d.ts +6 -0
  86. package/date-input/Icons.js +75 -0
  87. package/date-input/YearPicker.d.ts +4 -0
  88. package/date-input/YearPicker.js +126 -0
  89. package/date-input/types.d.ts +164 -0
  90. package/date-input/types.js +5 -0
  91. package/dialog/Dialog.d.ts +4 -0
  92. package/dialog/Dialog.js +131 -0
  93. package/dialog/Dialog.stories.tsx +195 -0
  94. package/dialog/Dialog.test.js +369 -0
  95. package/dialog/types.d.ts +31 -0
  96. package/dialog/types.js +5 -0
  97. package/dropdown/Dropdown.d.ts +4 -0
  98. package/dropdown/Dropdown.js +388 -0
  99. package/dropdown/Dropdown.stories.tsx +438 -0
  100. package/dropdown/Dropdown.test.js +586 -0
  101. package/dropdown/DropdownMenu.d.ts +4 -0
  102. package/dropdown/DropdownMenu.js +74 -0
  103. package/dropdown/DropdownMenuItem.d.ts +4 -0
  104. package/dropdown/DropdownMenuItem.js +79 -0
  105. package/dropdown/types.d.ts +100 -0
  106. package/dropdown/types.js +5 -0
  107. package/file-input/FileInput.d.ts +4 -0
  108. package/file-input/FileInput.js +547 -0
  109. package/file-input/FileInput.stories.tsx +618 -0
  110. package/file-input/FileInput.test.js +457 -0
  111. package/file-input/FileItem.d.ts +4 -0
  112. package/file-input/FileItem.js +162 -0
  113. package/file-input/types.d.ts +129 -0
  114. package/file-input/types.js +5 -0
  115. package/flex/Flex.d.ts +4 -0
  116. package/flex/Flex.js +71 -0
  117. package/flex/Flex.stories.tsx +112 -0
  118. package/flex/types.d.ts +97 -0
  119. package/flex/types.js +5 -0
  120. package/footer/Footer.d.ts +4 -0
  121. package/footer/Footer.js +165 -0
  122. package/footer/Footer.stories.tsx +152 -0
  123. package/footer/Footer.test.js +99 -0
  124. package/footer/Icons.d.ts +2 -0
  125. package/footer/Icons.js +77 -0
  126. package/footer/types.d.ts +64 -0
  127. package/footer/types.js +5 -0
  128. package/grid/Grid.d.ts +7 -0
  129. package/grid/Grid.js +91 -0
  130. package/grid/Grid.stories.tsx +219 -0
  131. package/grid/types.d.ts +115 -0
  132. package/grid/types.js +5 -0
  133. package/header/Header.d.ts +8 -0
  134. package/header/Header.js +276 -0
  135. package/header/Header.stories.tsx +251 -0
  136. package/header/Header.test.js +79 -0
  137. package/header/Icons.d.ts +2 -0
  138. package/header/Icons.js +34 -0
  139. package/header/types.d.ts +34 -0
  140. package/header/types.js +5 -0
  141. package/heading/Heading.d.ts +4 -0
  142. package/heading/Heading.js +159 -0
  143. package/heading/Heading.stories.tsx +54 -0
  144. package/heading/Heading.test.js +186 -0
  145. package/heading/types.d.ts +33 -0
  146. package/heading/types.js +5 -0
  147. package/image/Image.d.ts +4 -0
  148. package/image/Image.js +85 -0
  149. package/image/Image.stories.tsx +127 -0
  150. package/image/types.d.ts +72 -0
  151. package/image/types.js +5 -0
  152. package/inset/Inset.d.ts +3 -0
  153. package/inset/Inset.js +51 -0
  154. package/inset/Inset.stories.tsx +230 -0
  155. package/inset/types.d.ts +37 -0
  156. package/inset/types.js +5 -0
  157. package/layout/ApplicationLayout.d.ts +20 -0
  158. package/layout/ApplicationLayout.js +174 -0
  159. package/layout/ApplicationLayout.stories.tsx +162 -0
  160. package/layout/Icons.d.ts +8 -0
  161. package/layout/Icons.js +62 -0
  162. package/layout/SidenavContext.d.ts +5 -0
  163. package/layout/SidenavContext.js +19 -0
  164. package/layout/types.d.ts +41 -0
  165. package/layout/types.js +5 -0
  166. package/link/Link.d.ts +4 -0
  167. package/link/Link.js +136 -0
  168. package/link/Link.stories.tsx +253 -0
  169. package/link/Link.test.js +81 -0
  170. package/link/types.d.ts +54 -0
  171. package/link/types.js +5 -0
  172. package/main.d.ts +46 -0
  173. package/{dist/main.js → main.js} +161 -87
  174. package/nav-tabs/NavTabs.d.ts +8 -0
  175. package/nav-tabs/NavTabs.js +122 -0
  176. package/nav-tabs/NavTabs.stories.tsx +274 -0
  177. package/nav-tabs/NavTabs.test.js +82 -0
  178. package/nav-tabs/Tab.d.ts +4 -0
  179. package/nav-tabs/Tab.js +146 -0
  180. package/nav-tabs/types.d.ts +52 -0
  181. package/nav-tabs/types.js +5 -0
  182. package/number-input/NumberInput.d.ts +11 -0
  183. package/number-input/NumberInput.js +80 -0
  184. package/number-input/NumberInput.stories.tsx +160 -0
  185. package/number-input/NumberInput.test.js +768 -0
  186. package/number-input/types.d.ts +130 -0
  187. package/number-input/types.js +5 -0
  188. package/package.json +46 -38
  189. package/paginator/Icons.d.ts +5 -0
  190. package/paginator/Icons.js +54 -0
  191. package/paginator/Paginator.d.ts +4 -0
  192. package/paginator/Paginator.js +163 -0
  193. package/paginator/Paginator.stories.tsx +87 -0
  194. package/paginator/Paginator.test.js +318 -0
  195. package/paginator/types.d.ts +38 -0
  196. package/paginator/types.js +5 -0
  197. package/paragraph/Paragraph.d.ts +5 -0
  198. package/paragraph/Paragraph.js +38 -0
  199. package/paragraph/Paragraph.stories.tsx +44 -0
  200. package/password-input/Icons.d.ts +6 -0
  201. package/password-input/Icons.js +39 -0
  202. package/password-input/PasswordInput.d.ts +4 -0
  203. package/password-input/PasswordInput.js +119 -0
  204. package/password-input/PasswordInput.stories.tsx +132 -0
  205. package/password-input/PasswordInput.test.js +174 -0
  206. package/password-input/types.d.ts +110 -0
  207. package/password-input/types.js +5 -0
  208. package/progress-bar/ProgressBar.d.ts +4 -0
  209. package/progress-bar/ProgressBar.js +176 -0
  210. package/progress-bar/ProgressBar.stories.jsx +93 -0
  211. package/progress-bar/ProgressBar.test.js +110 -0
  212. package/progress-bar/types.d.ts +37 -0
  213. package/progress-bar/types.js +5 -0
  214. package/quick-nav/QuickNav.d.ts +4 -0
  215. package/quick-nav/QuickNav.js +117 -0
  216. package/quick-nav/QuickNav.stories.tsx +356 -0
  217. package/quick-nav/types.d.ts +21 -0
  218. package/quick-nav/types.js +5 -0
  219. package/radio-group/Radio.d.ts +4 -0
  220. package/radio-group/Radio.js +156 -0
  221. package/radio-group/RadioGroup.d.ts +4 -0
  222. package/radio-group/RadioGroup.js +281 -0
  223. package/radio-group/RadioGroup.stories.tsx +214 -0
  224. package/radio-group/RadioGroup.test.js +749 -0
  225. package/radio-group/types.d.ts +114 -0
  226. package/radio-group/types.js +5 -0
  227. package/resultset-table/Icons.d.ts +7 -0
  228. package/resultset-table/Icons.js +51 -0
  229. package/resultset-table/ResultsetTable.d.ts +4 -0
  230. package/resultset-table/ResultsetTable.js +195 -0
  231. package/resultset-table/ResultsetTable.stories.tsx +300 -0
  232. package/resultset-table/ResultsetTable.test.js +325 -0
  233. package/resultset-table/types.d.ts +67 -0
  234. package/resultset-table/types.js +5 -0
  235. package/select/Icons.d.ts +10 -0
  236. package/select/Icons.js +93 -0
  237. package/select/Listbox.d.ts +4 -0
  238. package/select/Listbox.js +169 -0
  239. package/select/Option.d.ts +4 -0
  240. package/select/Option.js +97 -0
  241. package/select/Select.d.ts +4 -0
  242. package/select/Select.js +666 -0
  243. package/select/Select.stories.tsx +971 -0
  244. package/select/Select.test.js +2228 -0
  245. package/select/types.d.ts +210 -0
  246. package/select/types.js +5 -0
  247. package/sidenav/Icons.d.ts +7 -0
  248. package/sidenav/Icons.js +51 -0
  249. package/sidenav/Sidenav.d.ts +10 -0
  250. package/sidenav/Sidenav.js +238 -0
  251. package/sidenav/Sidenav.stories.tsx +282 -0
  252. package/sidenav/Sidenav.test.js +44 -0
  253. package/sidenav/types.d.ts +76 -0
  254. package/sidenav/types.js +5 -0
  255. package/slider/Slider.d.ts +4 -0
  256. package/slider/Slider.js +342 -0
  257. package/slider/Slider.stories.tsx +240 -0
  258. package/slider/Slider.test.js +250 -0
  259. package/slider/types.d.ts +86 -0
  260. package/slider/types.js +5 -0
  261. package/spinner/Spinner.d.ts +4 -0
  262. package/spinner/Spinner.js +244 -0
  263. package/spinner/Spinner.stories.jsx +129 -0
  264. package/spinner/Spinner.test.js +64 -0
  265. package/spinner/types.d.ts +32 -0
  266. package/spinner/types.js +5 -0
  267. package/switch/Switch.d.ts +4 -0
  268. package/switch/Switch.js +262 -0
  269. package/switch/Switch.stories.tsx +171 -0
  270. package/switch/Switch.test.js +225 -0
  271. package/switch/types.d.ts +66 -0
  272. package/switch/types.js +5 -0
  273. package/table/Table.d.ts +4 -0
  274. package/table/Table.js +118 -0
  275. package/table/Table.stories.jsx +356 -0
  276. package/table/Table.test.js +26 -0
  277. package/table/types.d.ts +21 -0
  278. package/table/types.js +5 -0
  279. package/tabs/Tab.d.ts +4 -0
  280. package/tabs/Tab.js +132 -0
  281. package/tabs/Tabs.d.ts +4 -0
  282. package/tabs/Tabs.js +461 -0
  283. package/tabs/Tabs.stories.tsx +226 -0
  284. package/tabs/Tabs.test.js +350 -0
  285. package/tabs/types.d.ts +92 -0
  286. package/tabs/types.js +5 -0
  287. package/tag/Tag.d.ts +4 -0
  288. package/tag/Tag.js +181 -0
  289. package/tag/Tag.stories.tsx +155 -0
  290. package/tag/Tag.test.js +60 -0
  291. package/tag/types.d.ts +69 -0
  292. package/tag/types.js +5 -0
  293. package/text-input/Icons.d.ts +8 -0
  294. package/text-input/Icons.js +60 -0
  295. package/text-input/Suggestion.d.ts +4 -0
  296. package/text-input/Suggestion.js +84 -0
  297. package/text-input/Suggestions.d.ts +4 -0
  298. package/text-input/Suggestions.js +134 -0
  299. package/text-input/TextInput.d.ts +4 -0
  300. package/text-input/TextInput.js +651 -0
  301. package/text-input/TextInput.stories.tsx +608 -0
  302. package/text-input/TextInput.test.js +1834 -0
  303. package/text-input/types.d.ts +203 -0
  304. package/text-input/types.js +5 -0
  305. package/textarea/Textarea.d.ts +4 -0
  306. package/textarea/Textarea.js +278 -0
  307. package/textarea/Textarea.stories.jsx +224 -0
  308. package/textarea/Textarea.test.js +479 -0
  309. package/textarea/types.d.ts +141 -0
  310. package/textarea/types.js +5 -0
  311. package/toggle-group/ToggleGroup.d.ts +4 -0
  312. package/toggle-group/ToggleGroup.js +241 -0
  313. package/toggle-group/ToggleGroup.stories.tsx +218 -0
  314. package/toggle-group/ToggleGroup.test.js +170 -0
  315. package/toggle-group/types.d.ts +114 -0
  316. package/toggle-group/types.js +5 -0
  317. package/typography/Typography.d.ts +4 -0
  318. package/typography/Typography.js +32 -0
  319. package/typography/Typography.stories.tsx +198 -0
  320. package/typography/types.d.ts +18 -0
  321. package/typography/types.js +5 -0
  322. package/useTheme.d.ts +1252 -0
  323. package/{dist/useTheme.js → useTheme.js} +3 -3
  324. package/useTranslatedLabels.d.ts +85 -0
  325. package/useTranslatedLabels.js +20 -0
  326. package/utils/BaseTypography.d.ts +21 -0
  327. package/utils/BaseTypography.js +108 -0
  328. package/utils/FocusLock.d.ts +13 -0
  329. package/utils/FocusLock.js +138 -0
  330. package/wizard/Wizard.d.ts +4 -0
  331. package/wizard/Wizard.js +285 -0
  332. package/wizard/Wizard.stories.tsx +253 -0
  333. package/wizard/Wizard.test.js +141 -0
  334. package/wizard/types.d.ts +64 -0
  335. package/wizard/types.js +5 -0
  336. package/babel.config.js +0 -8
  337. package/dist/BackgroundColorContext.js +0 -46
  338. package/dist/ThemeContext.js +0 -216
  339. package/dist/accordion/Accordion.js +0 -284
  340. package/dist/accordion/Accordion.stories.js +0 -207
  341. package/dist/accordion/readme.md +0 -96
  342. package/dist/accordion-group/AccordionGroup.js +0 -154
  343. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  344. package/dist/accordion-group/readme.md +0 -70
  345. package/dist/alert/Alert.js +0 -318
  346. package/dist/alert/Alert.stories.js +0 -158
  347. package/dist/alert/close.svg +0 -4
  348. package/dist/alert/error.svg +0 -4
  349. package/dist/alert/info.svg +0 -4
  350. package/dist/alert/readme.md +0 -43
  351. package/dist/alert/success.svg +0 -4
  352. package/dist/alert/warning.svg +0 -4
  353. package/dist/badge/Badge.js +0 -40
  354. package/dist/box/Box.js +0 -147
  355. package/dist/button/Button.js +0 -219
  356. package/dist/button/Button.stories.js +0 -224
  357. package/dist/button/readme.md +0 -93
  358. package/dist/card/Card.js +0 -247
  359. package/dist/checkbox/Checkbox.js +0 -233
  360. package/dist/checkbox/Checkbox.stories.js +0 -144
  361. package/dist/checkbox/readme.md +0 -116
  362. package/dist/chip/Chip.js +0 -223
  363. package/dist/common/OpenSans.css +0 -81
  364. package/dist/common/RequiredComponent.js +0 -40
  365. package/dist/common/variables.js +0 -523
  366. package/dist/date/Date.js +0 -357
  367. package/dist/date/Date.stories.js +0 -205
  368. package/dist/date/calendar.svg +0 -1
  369. package/dist/date/calendar_dark.svg +0 -1
  370. package/dist/date/readme.md +0 -73
  371. package/dist/dialog/Dialog.js +0 -203
  372. package/dist/dialog/Dialog.stories.js +0 -217
  373. package/dist/dialog/readme.md +0 -32
  374. package/dist/dropdown/Dropdown.js +0 -456
  375. package/dist/dropdown/Dropdown.stories.js +0 -249
  376. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  377. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  378. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  379. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  380. package/dist/dropdown/readme.md +0 -69
  381. package/dist/footer/Footer.js +0 -379
  382. package/dist/footer/Footer.stories.js +0 -94
  383. package/dist/footer/dxc_logo_wht.png +0 -0
  384. package/dist/footer/readme.md +0 -41
  385. package/dist/header/Header.js +0 -385
  386. package/dist/header/Header.stories.js +0 -176
  387. package/dist/header/close_icon.svg +0 -1
  388. package/dist/header/dxc_logo_black.png +0 -0
  389. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  390. package/dist/header/dxc_logo_white.png +0 -0
  391. package/dist/header/hamb_menu_black.svg +0 -1
  392. package/dist/header/hamb_menu_white.svg +0 -1
  393. package/dist/header/readme.md +0 -33
  394. package/dist/heading/Heading.js +0 -163
  395. package/dist/input-text/InputText.js +0 -609
  396. package/dist/input-text/InputText.stories.js +0 -209
  397. package/dist/input-text/error.svg +0 -1
  398. package/dist/input-text/readme.md +0 -91
  399. package/dist/layout/ApplicationLayout.js +0 -331
  400. package/dist/layout/facebook.svg +0 -45
  401. package/dist/layout/linkedin.svg +0 -50
  402. package/dist/layout/twitter.svg +0 -53
  403. package/dist/link/Link.js +0 -200
  404. package/dist/link/readme.md +0 -51
  405. package/dist/paginator/Paginator.js +0 -261
  406. package/dist/paginator/images/next.svg +0 -3
  407. package/dist/paginator/images/nextPage.svg +0 -3
  408. package/dist/paginator/images/previous.svg +0 -3
  409. package/dist/paginator/images/previousPage.svg +0 -3
  410. package/dist/paginator/readme.md +0 -50
  411. package/dist/progress-bar/ProgressBar.js +0 -192
  412. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  413. package/dist/progress-bar/readme.md +0 -63
  414. package/dist/radio/Radio.js +0 -190
  415. package/dist/radio/Radio.stories.js +0 -166
  416. package/dist/radio/readme.md +0 -70
  417. package/dist/resultsetTable/ResultsetTable.js +0 -332
  418. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  419. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  420. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  421. package/dist/select/Select.js +0 -490
  422. package/dist/select/Select.stories.js +0 -235
  423. package/dist/select/readme.md +0 -72
  424. package/dist/sidenav/Sidenav.js +0 -155
  425. package/dist/slider/Slider.js +0 -267
  426. package/dist/slider/Slider.stories.js +0 -241
  427. package/dist/slider/readme.md +0 -64
  428. package/dist/spinner/Spinner.js +0 -198
  429. package/dist/spinner/Spinner.stories.js +0 -183
  430. package/dist/spinner/readme.md +0 -65
  431. package/dist/switch/Switch.js +0 -194
  432. package/dist/switch/Switch.stories.js +0 -134
  433. package/dist/switch/readme.md +0 -133
  434. package/dist/table/Table.js +0 -98
  435. package/dist/tabs/Tabs.js +0 -325
  436. package/dist/tabs/Tabs.stories.js +0 -130
  437. package/dist/tabs/readme.md +0 -78
  438. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  439. package/dist/tabs-for-sections/readme.md +0 -78
  440. package/dist/tag/Tag.js +0 -268
  441. package/dist/textarea/Textarea.js +0 -238
  442. package/dist/toggle/Toggle.js +0 -220
  443. package/dist/toggle/Toggle.stories.js +0 -297
  444. package/dist/toggle/readme.md +0 -80
  445. package/dist/toggle-group/ToggleGroup.js +0 -223
  446. package/dist/toggle-group/readme.md +0 -82
  447. package/dist/upload/Upload.js +0 -209
  448. package/dist/upload/Upload.stories.js +0 -72
  449. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -123
  450. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  451. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  452. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -293
  453. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  454. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  455. package/dist/upload/file-upload/FileToUpload.js +0 -162
  456. package/dist/upload/file-upload/audio-icon.svg +0 -4
  457. package/dist/upload/file-upload/close.svg +0 -4
  458. package/dist/upload/file-upload/file-icon.svg +0 -4
  459. package/dist/upload/file-upload/video-icon.svg +0 -4
  460. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  461. package/dist/upload/readme.md +0 -37
  462. package/dist/upload/transaction/Transaction.js +0 -152
  463. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  464. package/dist/upload/transaction/audio-icon.svg +0 -4
  465. package/dist/upload/transaction/error-icon.svg +0 -4
  466. package/dist/upload/transaction/file-icon-err.svg +0 -4
  467. package/dist/upload/transaction/file-icon.svg +0 -4
  468. package/dist/upload/transaction/image-icon-err.svg +0 -4
  469. package/dist/upload/transaction/image-icon.svg +0 -4
  470. package/dist/upload/transaction/success-icon.svg +0 -4
  471. package/dist/upload/transaction/video-icon-err.svg +0 -4
  472. package/dist/upload/transaction/video-icon.svg +0 -4
  473. package/dist/upload/transactions/Transactions.js +0 -122
  474. package/dist/wizard/Wizard.js +0 -355
  475. package/dist/wizard/invalid_icon.svg +0 -6
  476. package/dist/wizard/valid_icon.svg +0 -6
  477. package/dist/wizard/validation-wrong.svg +0 -6
  478. package/test/Accordion.test.js +0 -33
  479. package/test/AccordionGroup.test.js +0 -125
  480. package/test/Alert.test.js +0 -53
  481. package/test/Box.test.js +0 -10
  482. package/test/Button.test.js +0 -18
  483. package/test/Card.test.js +0 -30
  484. package/test/Checkbox.test.js +0 -45
  485. package/test/Chip.test.js +0 -25
  486. package/test/Date.test.js +0 -393
  487. package/test/Dialog.test.js +0 -23
  488. package/test/Dropdown.test.js +0 -130
  489. package/test/Footer.test.js +0 -99
  490. package/test/Header.test.js +0 -39
  491. package/test/Heading.test.js +0 -35
  492. package/test/InputText.test.js +0 -240
  493. package/test/Link.test.js +0 -42
  494. package/test/Paginator.test.js +0 -177
  495. package/test/ProgressBar.test.js +0 -35
  496. package/test/Radio.test.js +0 -37
  497. package/test/ResultsetTable.test.js +0 -330
  498. package/test/Select.test.js +0 -192
  499. package/test/Sidenav.test.js +0 -45
  500. package/test/Slider.test.js +0 -82
  501. package/test/Spinner.test.js +0 -27
  502. package/test/Switch.test.js +0 -45
  503. package/test/Table.test.js +0 -36
  504. package/test/Tabs.test.js +0 -109
  505. package/test/TabsForSections.test.js +0 -34
  506. package/test/Tag.test.js +0 -32
  507. package/test/TextArea.test.js +0 -52
  508. package/test/ToggleGroup.test.js +0 -81
  509. package/test/Upload.test.js +0 -60
  510. package/test/Wizard.test.js +0 -130
  511. package/test/mocks/pngMock.js +0 -1
  512. package/test/mocks/svgMock.js +0 -1
  513. /package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  514. /package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  515. /package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  516. /package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  517. /package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  518. /package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  519. /package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  520. /package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  521. /package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  522. /package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
@@ -9,12 +9,12 @@ exports["default"] = void 0;
9
9
 
10
10
  var _react = require("react");
11
11
 
12
- var _variables = require("./common/variables.js");
12
+ var _variables = require("./common/variables");
13
13
 
14
- var _ThemeContext = _interopRequireDefault(require("./ThemeContext.js"));
14
+ var _HalstackContext = _interopRequireDefault(require("./HalstackContext"));
15
15
 
16
16
  var useTheme = function useTheme() {
17
- var colorsTheme = (0, _react.useContext)(_ThemeContext["default"]);
17
+ var colorsTheme = (0, _react.useContext)(_HalstackContext["default"]);
18
18
  return colorsTheme || _variables.componentTokens;
19
19
  };
20
20
 
@@ -0,0 +1,85 @@
1
+ declare const useTranslatedLabels: () => {
2
+ formFields?: Partial<{
3
+ optionalLabel: string;
4
+ requiredSelectionErrorMessage: string;
5
+ requiredValueErrorMessage: string;
6
+ formatRequestedErrorMessage: string;
7
+ lengthErrorMessage: (minLength?: number, maxLength?: number) => string;
8
+ logoAlternativeText: string;
9
+ }>;
10
+ applicationLayout?: Partial<{
11
+ visibilityToggleTitle: string;
12
+ }>;
13
+ alert?: Partial<{
14
+ infoTitleText: string;
15
+ successTitleText: string;
16
+ warningTitleText: string;
17
+ errorTitleText: string;
18
+ }>;
19
+ dateInput?: Partial<{
20
+ invalidDateErrorMessage: string;
21
+ }>;
22
+ dialog?: Partial<{
23
+ closeIconAriaLabel: string;
24
+ }>;
25
+ fileInput?: Partial<{
26
+ fileSizeGreaterThanErrorMessage: string;
27
+ fileSizeLessThanErrorMessage: string;
28
+ multipleButtonLabelDefault: string;
29
+ singleButtonLabelDefault: string;
30
+ dropAreaButtonLabelDefault: string;
31
+ multipleDropAreaLabelDefault: string;
32
+ singleDropAreaLabelDefault: string;
33
+ deleteFileActionTitle: string;
34
+ }>;
35
+ footer?: Partial<{
36
+ copyrightText: (year: number) => string;
37
+ }>;
38
+ header?: Partial<{
39
+ closeIcon: string;
40
+ hamburguerTitle: string;
41
+ }>;
42
+ numberInput?: Partial<{
43
+ valueGreaterThanOrEqualToErrorMessage: (value: number) => string;
44
+ valueLessThanOrEqualToErrorMessage: (value: number) => string;
45
+ decrementValueTitle: string;
46
+ incrementValueTitle: string;
47
+ }>;
48
+ paginator?: Partial<{
49
+ itemsPerPageText: string;
50
+ minToMaxOfText: (minNumberOfItems: number, maxNumberOfItems: number, totalItems: number) => string;
51
+ goToPageText: string;
52
+ pageOfText: (pageNumber: number, totalPagesNumber: number) => string;
53
+ }>;
54
+ passwordInput?: Partial<{
55
+ inputShowPasswordTitle: string;
56
+ inputHidePasswordTitle: string;
57
+ }>;
58
+ quickNav?: Partial<{
59
+ contentTitle: string;
60
+ }>;
61
+ radioGroup?: Partial<{
62
+ optionalItemLabelDefault: string;
63
+ }>;
64
+ select?: Partial<{
65
+ noMatchesErrorMessage: string;
66
+ actionClearSelectionTitle: string;
67
+ actionClearSearchTitle: string;
68
+ }>;
69
+ tabs?: Partial<{
70
+ scrollLeft: string;
71
+ scrollRight: string;
72
+ }>;
73
+ textInput?: Partial<{
74
+ clearFieldActionTitle: string;
75
+ searchingMessage: string;
76
+ fetchingDataErrorMessage: string;
77
+ }>;
78
+ calendar?: Partial<{
79
+ daysShort: string[];
80
+ months: string[];
81
+ previousMonthTitle: string;
82
+ nextMonthTitle: string;
83
+ }>;
84
+ };
85
+ export default useTranslatedLabels;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+
8
+ var _react = require("react");
9
+
10
+ var _variables = require("./common/variables");
11
+
12
+ var _HalstackContext = require("./HalstackContext");
13
+
14
+ var useTranslatedLabels = function useTranslatedLabels() {
15
+ var labels = (0, _react.useContext)(_HalstackContext.HalstackLanguageContext);
16
+ return labels || _variables.defaultTranslatedComponentLabels;
17
+ };
18
+
19
+ var _default = useTranslatedLabels;
20
+ exports["default"] = _default;
@@ -0,0 +1,21 @@
1
+ import React from "react";
2
+ declare type TypographyContextProps = {
3
+ as?: keyof HTMLElementTagNameMap;
4
+ display?: string;
5
+ fontFamily?: string;
6
+ fontSize?: string;
7
+ fontStyle?: string;
8
+ fontWeight?: string;
9
+ letterSpacing?: string;
10
+ lineHeight?: string;
11
+ textAlign?: string;
12
+ color?: string;
13
+ textDecoration?: string;
14
+ textOverflow?: string;
15
+ whiteSpace?: string;
16
+ };
17
+ declare type BaseTypographyProps = TypographyContextProps & {
18
+ children: React.ReactNode;
19
+ };
20
+ declare const BaseTypography: ({ as, display, fontFamily, fontSize, fontStyle, fontWeight, letterSpacing, lineHeight, textAlign, color, textDecoration, textOverflow, whiteSpace, children, }: BaseTypographyProps) => JSX.Element;
21
+ export default BaseTypography;
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = void 0;
11
+
12
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
+
14
+ var _react = _interopRequireWildcard(require("react"));
15
+
16
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
17
+
18
+ var _templateObject;
19
+
20
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
21
+
22
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
23
+
24
+ var TypographyContext = /*#__PURE__*/_react["default"].createContext(null);
25
+
26
+ var BaseTypography = function BaseTypography(_ref) {
27
+ var as = _ref.as,
28
+ display = _ref.display,
29
+ fontFamily = _ref.fontFamily,
30
+ fontSize = _ref.fontSize,
31
+ fontStyle = _ref.fontStyle,
32
+ fontWeight = _ref.fontWeight,
33
+ letterSpacing = _ref.letterSpacing,
34
+ lineHeight = _ref.lineHeight,
35
+ textAlign = _ref.textAlign,
36
+ color = _ref.color,
37
+ textDecoration = _ref.textDecoration,
38
+ textOverflow = _ref.textOverflow,
39
+ whiteSpace = _ref.whiteSpace,
40
+ children = _ref.children;
41
+ var componentContext = (0, _react.useContext)(TypographyContext);
42
+ var contextValue = (0, _react.useMemo)(function () {
43
+ var _ref2, _ref3, _ref4, _ref5, _ref6, _ref7, _ref8, _ref9, _ref10, _ref11, _ref12, _ref13, _ref14;
44
+
45
+ return {
46
+ as: (_ref2 = as !== null && as !== void 0 ? as : componentContext === null || componentContext === void 0 ? void 0 : componentContext.as) !== null && _ref2 !== void 0 ? _ref2 : "span",
47
+ display: (_ref3 = display !== null && display !== void 0 ? display : componentContext === null || componentContext === void 0 ? void 0 : componentContext.display) !== null && _ref3 !== void 0 ? _ref3 : "inline",
48
+ fontFamily: (_ref4 = fontFamily !== null && fontFamily !== void 0 ? fontFamily : componentContext === null || componentContext === void 0 ? void 0 : componentContext.fontFamily) !== null && _ref4 !== void 0 ? _ref4 : "Open Sans, sans-serif",
49
+ fontSize: (_ref5 = fontSize !== null && fontSize !== void 0 ? fontSize : componentContext === null || componentContext === void 0 ? void 0 : componentContext.fontSize) !== null && _ref5 !== void 0 ? _ref5 : "1rem",
50
+ fontStyle: (_ref6 = fontStyle !== null && fontStyle !== void 0 ? fontStyle : componentContext === null || componentContext === void 0 ? void 0 : componentContext.fontStyle) !== null && _ref6 !== void 0 ? _ref6 : "normal",
51
+ fontWeight: (_ref7 = fontWeight !== null && fontWeight !== void 0 ? fontWeight : componentContext === null || componentContext === void 0 ? void 0 : componentContext.fontWeight) !== null && _ref7 !== void 0 ? _ref7 : "400",
52
+ letterSpacing: (_ref8 = letterSpacing !== null && letterSpacing !== void 0 ? letterSpacing : componentContext === null || componentContext === void 0 ? void 0 : componentContext.letterSpacing) !== null && _ref8 !== void 0 ? _ref8 : "0em",
53
+ lineHeight: (_ref9 = lineHeight !== null && lineHeight !== void 0 ? lineHeight : componentContext === null || componentContext === void 0 ? void 0 : componentContext.lineHeight) !== null && _ref9 !== void 0 ? _ref9 : "1.5em",
54
+ textAlign: (_ref10 = textAlign !== null && textAlign !== void 0 ? textAlign : componentContext === null || componentContext === void 0 ? void 0 : componentContext.textAlign) !== null && _ref10 !== void 0 ? _ref10 : "left",
55
+ color: (_ref11 = color !== null && color !== void 0 ? color : componentContext === null || componentContext === void 0 ? void 0 : componentContext.color) !== null && _ref11 !== void 0 ? _ref11 : "#000000",
56
+ textDecoration: (_ref12 = textDecoration !== null && textDecoration !== void 0 ? textDecoration : componentContext === null || componentContext === void 0 ? void 0 : componentContext.textDecoration) !== null && _ref12 !== void 0 ? _ref12 : "none",
57
+ textOverflow: (_ref13 = textOverflow !== null && textOverflow !== void 0 ? textOverflow : componentContext === null || componentContext === void 0 ? void 0 : componentContext.textOverflow) !== null && _ref13 !== void 0 ? _ref13 : "unset",
58
+ whiteSpace: (_ref14 = whiteSpace !== null && whiteSpace !== void 0 ? whiteSpace : componentContext === null || componentContext === void 0 ? void 0 : componentContext.whiteSpace) !== null && _ref14 !== void 0 ? _ref14 : "normal"
59
+ };
60
+ }, [as, display, fontFamily, fontSize, fontStyle, fontWeight, letterSpacing, lineHeight, textAlign, color, textDecoration, textOverflow, whiteSpace]);
61
+ return /*#__PURE__*/_react["default"].createElement(TypographyContext.Provider, {
62
+ value: contextValue
63
+ }, /*#__PURE__*/_react["default"].createElement(StyledTypography, contextValue, children));
64
+ };
65
+
66
+ var StyledTypography = _styledComponents["default"].span(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: ", ";\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n line-height: ", ";\n text-align: ", ";\n text-decoration: ", ";\n text-overflow: ", ";\n white-space: ", ";\n overflow: ", ";\n margin: 0;\n"])), function (_ref15) {
67
+ var display = _ref15.display;
68
+ return display;
69
+ }, function (_ref16) {
70
+ var color = _ref16.color;
71
+ return color;
72
+ }, function (_ref17) {
73
+ var fontFamily = _ref17.fontFamily;
74
+ return fontFamily;
75
+ }, function (_ref18) {
76
+ var fontSize = _ref18.fontSize;
77
+ return fontSize;
78
+ }, function (_ref19) {
79
+ var fontStyle = _ref19.fontStyle;
80
+ return fontStyle;
81
+ }, function (_ref20) {
82
+ var fontWeight = _ref20.fontWeight;
83
+ return fontWeight;
84
+ }, function (_ref21) {
85
+ var letterSpacing = _ref21.letterSpacing;
86
+ return letterSpacing;
87
+ }, function (_ref22) {
88
+ var lineHeight = _ref22.lineHeight;
89
+ return lineHeight;
90
+ }, function (_ref23) {
91
+ var textAlign = _ref23.textAlign;
92
+ return textAlign;
93
+ }, function (_ref24) {
94
+ var textDecoration = _ref24.textDecoration;
95
+ return textDecoration;
96
+ }, function (_ref25) {
97
+ var textOverflow = _ref25.textOverflow;
98
+ return textOverflow;
99
+ }, function (_ref26) {
100
+ var whiteSpace = _ref26.whiteSpace;
101
+ return whiteSpace;
102
+ }, function (_ref27) {
103
+ var textOverflow = _ref27.textOverflow;
104
+ return textOverflow !== "unset" ? "hidden" : "visible";
105
+ });
106
+
107
+ var _default = BaseTypography;
108
+ exports["default"] = _default;
@@ -0,0 +1,13 @@
1
+ import React from "react";
2
+ /**
3
+ * Traps the focus inside the children of the component. It will focus the first focusable element when the component is mounted.
4
+ * When the focus is on the last focusable element and the user tries to focus the next element, it will focus the first element.
5
+ * When the focus is on the first focusable element and the user tries to focus the previous element, it will focus the last element.
6
+ * The focus can't be moved outside the children unless the children are removed from the DOM (for example, a Dialog, a Modal, etc).
7
+ * @param children: React.ReactNode
8
+ * @returns
9
+ */
10
+ declare const FocusLock: ({ children }: {
11
+ children: React.ReactNode;
12
+ }) => JSX.Element;
13
+ export default FocusLock;
@@ -0,0 +1,138 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = void 0;
11
+
12
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
+
14
+ var _react = _interopRequireWildcard(require("react"));
15
+
16
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
17
+
18
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
19
+
20
+ var not = {
21
+ negTabIndex: ':not([tabindex^="-"])',
22
+ disabled: ":not(:disabled)"
23
+ };
24
+ var focusableQuery = ["a[href]".concat(not.negTabIndex), "area[href]".concat(not.negTabIndex), "input:not([type=\"hidden\"])".concat(not.negTabIndex).concat(not.disabled), "select".concat(not.negTabIndex).concat(not.disabled), "textarea".concat(not.negTabIndex).concat(not.disabled), "button".concat(not.negTabIndex).concat(not.disabled), "details > summary:first-of-type".concat(not.negTabIndex), "iframe".concat(not.negTabIndex), "audio[controls]".concat(not.negTabIndex), "video[controls]".concat(not.negTabIndex), "[contenteditable]".concat(not.negTabIndex), "[tabindex]".concat(not.negTabIndex).concat(not.disabled)].join(",");
25
+
26
+ var getFocusableElements = function getFocusableElements(container) {
27
+ return Array.prototype.slice.call(container.querySelectorAll(focusableQuery)).filter(function (element) {
28
+ return element.getAttribute("aria-hidden") !== "true" && window.getComputedStyle(element).display !== "none" && window.getComputedStyle(element).visibility !== "hidden";
29
+ });
30
+ };
31
+ /**
32
+ * This function will try to focus the element and return true if it was able to receive the focus.
33
+ * Even if the element is focusable (passes any of the conditions of our selector), there is the possibility
34
+ * that the element may not be focusable at all.
35
+ * @param element: HTMLElement
36
+ * @returns
37
+ */
38
+
39
+
40
+ var attempFocus = function attempFocus(element) {
41
+ element === null || element === void 0 ? void 0 : element.focus();
42
+ return document.activeElement === element;
43
+ };
44
+ /**
45
+ * @param element: HTMLElement
46
+ * @returns boolean: true if element is contained inside a Radix Portal, false otherwise.
47
+ */
48
+
49
+
50
+ var radixPortalContains = function radixPortalContains(activeElement) {
51
+ var radixPortals = document.querySelectorAll("[data-radix-portal]");
52
+ return Array.prototype.slice.call(radixPortals).some(function (portal) {
53
+ return portal.contains(activeElement);
54
+ });
55
+ };
56
+ /**
57
+ * Custom hook that returns an array of focusable elements inside a container.
58
+ * @param ref: React.MutableRefObject<HTMLDivElement>
59
+ * @returns
60
+ */
61
+
62
+
63
+ var useFocusableElements = function useFocusableElements(ref) {
64
+ var _useState = (0, _react.useState)(),
65
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
66
+ focusableElements = _useState2[0],
67
+ setFocusableElements = _useState2[1];
68
+
69
+ (0, _react.useEffect)(function () {
70
+ if (ref.current != null) {
71
+ setFocusableElements(getFocusableElements(ref.current));
72
+ var observer = new MutationObserver(function () {
73
+ setFocusableElements(getFocusableElements(ref.current));
74
+ });
75
+ observer.observe(ref.current, {
76
+ childList: true,
77
+ subtree: true,
78
+ attributes: true
79
+ });
80
+ return function () {
81
+ observer.disconnect();
82
+ };
83
+ }
84
+ }, []);
85
+ return focusableElements;
86
+ };
87
+ /**
88
+ * Traps the focus inside the children of the component. It will focus the first focusable element when the component is mounted.
89
+ * When the focus is on the last focusable element and the user tries to focus the next element, it will focus the first element.
90
+ * When the focus is on the first focusable element and the user tries to focus the previous element, it will focus the last element.
91
+ * The focus can't be moved outside the children unless the children are removed from the DOM (for example, a Dialog, a Modal, etc).
92
+ * @param children: React.ReactNode
93
+ * @returns
94
+ */
95
+
96
+
97
+ var FocusLock = function FocusLock(_ref) {
98
+ var children = _ref.children;
99
+ var childrenContainerRef = (0, _react.useRef)();
100
+ var focusableElements = useFocusableElements(childrenContainerRef);
101
+ var focusFirst = (0, _react.useCallback)(function () {
102
+ var _childrenContainerRef;
103
+
104
+ if ((focusableElements === null || focusableElements === void 0 ? void 0 : focusableElements.length) === 0) (_childrenContainerRef = childrenContainerRef.current) === null || _childrenContainerRef === void 0 ? void 0 : _childrenContainerRef.focus();else if ((focusableElements === null || focusableElements === void 0 ? void 0 : focusableElements.length) > 0) for (var i = 0; i < focusableElements.length; i++) {
105
+ if (attempFocus(focusableElements[i])) return;
106
+ }
107
+ }, [focusableElements]);
108
+
109
+ var focusLast = function focusLast() {
110
+ for (var i = focusableElements.length - 1; i >= 0; i--) {
111
+ if (attempFocus(focusableElements[i])) return;
112
+ }
113
+ };
114
+
115
+ var focusLock = function focusLock(event) {
116
+ if (event.key === "Tab") focusableElements.length === 0 && event.preventDefault();else if (event.key === "Tab" && event.key === "Shift") focusableElements.length === 0 && event.preventDefault();
117
+ };
118
+
119
+ (0, _react.useEffect)(function () {
120
+ var _childrenContainerRef2;
121
+
122
+ if (!((_childrenContainerRef2 = childrenContainerRef.current) !== null && _childrenContainerRef2 !== void 0 && _childrenContainerRef2.contains(document.activeElement)) && !radixPortalContains(document.activeElement)) focusFirst();
123
+ }, [focusFirst]);
124
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("div", {
125
+ onFocus: focusLast,
126
+ tabIndex: 0
127
+ }), /*#__PURE__*/_react["default"].createElement("div", {
128
+ onKeyDown: focusLock,
129
+ ref: childrenContainerRef,
130
+ tabIndex: (focusableElements === null || focusableElements === void 0 ? void 0 : focusableElements.length) === 0 ? 0 : -1
131
+ }, children), /*#__PURE__*/_react["default"].createElement("div", {
132
+ onFocus: focusFirst,
133
+ tabIndex: 0
134
+ }));
135
+ };
136
+
137
+ var _default = FocusLock;
138
+ exports["default"] = _default;
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import WizardPropsType from "./types";
3
+ declare const DxcWizard: ({ mode, defaultCurrentStep, currentStep, onStepClick, steps, margin, tabIndex, }: WizardPropsType) => JSX.Element;
4
+ export default DxcWizard;