@dxc-technology/halstack-react 0.0.0-e441916 → 0.0.0-e4ccd42

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 (533) hide show
  1. package/BackgroundColorContext.d.ts +1 -0
  2. package/BackgroundColorContext.js +30 -0
  3. package/HalstackContext.d.ts +1249 -0
  4. package/HalstackContext.js +310 -0
  5. package/README.md +28 -47
  6. package/accordion/Accordion.d.ts +4 -0
  7. package/accordion/Accordion.js +182 -0
  8. package/accordion/Accordion.stories.tsx +283 -0
  9. package/accordion/Accordion.test.js +56 -0
  10. package/accordion/types.d.ts +57 -0
  11. package/accordion/types.js +5 -0
  12. package/accordion-group/AccordionGroup.d.ts +8 -0
  13. package/accordion-group/AccordionGroup.js +101 -0
  14. package/accordion-group/AccordionGroup.stories.tsx +252 -0
  15. package/accordion-group/AccordionGroup.test.js +98 -0
  16. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  17. package/accordion-group/AccordionGroupAccordion.js +31 -0
  18. package/accordion-group/types.d.ts +67 -0
  19. package/accordion-group/types.js +5 -0
  20. package/action-icon/ActionIcon.d.ts +4 -0
  21. package/action-icon/ActionIcon.js +47 -0
  22. package/action-icon/ActionIcon.stories.tsx +41 -0
  23. package/action-icon/ActionIcon.test.js +64 -0
  24. package/action-icon/types.d.ts +26 -0
  25. package/action-icon/types.js +5 -0
  26. package/alert/Alert.d.ts +4 -0
  27. package/alert/Alert.js +254 -0
  28. package/alert/Alert.stories.tsx +198 -0
  29. package/alert/Alert.test.js +75 -0
  30. package/alert/types.d.ts +49 -0
  31. package/alert/types.js +5 -0
  32. package/badge/Badge.d.ts +4 -0
  33. package/badge/Badge.js +159 -0
  34. package/badge/Badge.stories.tsx +210 -0
  35. package/badge/Badge.test.js +30 -0
  36. package/badge/types.d.ts +54 -0
  37. package/badge/types.js +5 -0
  38. package/bleed/Bleed.d.ts +3 -0
  39. package/bleed/Bleed.js +43 -0
  40. package/bleed/Bleed.stories.tsx +342 -0
  41. package/bleed/types.d.ts +37 -0
  42. package/bleed/types.js +5 -0
  43. package/box/Box.d.ts +4 -0
  44. package/box/Box.js +75 -0
  45. package/box/Box.stories.tsx +119 -0
  46. package/box/Box.test.js +13 -0
  47. package/box/types.d.ts +32 -0
  48. package/box/types.js +5 -0
  49. package/bulleted-list/BulletedList.d.ts +7 -0
  50. package/bulleted-list/BulletedList.js +89 -0
  51. package/bulleted-list/BulletedList.stories.tsx +115 -0
  52. package/bulleted-list/types.d.ts +38 -0
  53. package/bulleted-list/types.js +5 -0
  54. package/button/Button.d.ts +4 -0
  55. package/button/Button.js +120 -0
  56. package/button/Button.stories.tsx +344 -0
  57. package/button/Button.test.js +38 -0
  58. package/button/types.d.ts +57 -0
  59. package/button/types.js +5 -0
  60. package/card/Card.d.ts +4 -0
  61. package/card/Card.js +120 -0
  62. package/card/Card.stories.tsx +171 -0
  63. package/card/Card.test.js +39 -0
  64. package/card/types.d.ts +62 -0
  65. package/card/types.js +5 -0
  66. package/checkbox/Checkbox.d.ts +4 -0
  67. package/checkbox/Checkbox.js +215 -0
  68. package/checkbox/Checkbox.stories.tsx +222 -0
  69. package/checkbox/Checkbox.test.js +199 -0
  70. package/checkbox/types.d.ts +72 -0
  71. package/checkbox/types.js +5 -0
  72. package/chip/Chip.d.ts +4 -0
  73. package/chip/Chip.js +121 -0
  74. package/chip/Chip.stories.tsx +214 -0
  75. package/chip/Chip.test.js +41 -0
  76. package/chip/types.d.ts +45 -0
  77. package/chip/types.js +5 -0
  78. package/common/OpenSans.css +69 -0
  79. package/common/coreTokens.d.ts +237 -0
  80. package/common/coreTokens.js +184 -0
  81. package/common/utils.d.ts +1 -0
  82. package/common/utils.js +16 -0
  83. package/common/variables.d.ts +1395 -0
  84. package/common/variables.js +1267 -0
  85. package/container/Container.d.ts +4 -0
  86. package/container/Container.js +194 -0
  87. package/container/Container.stories.tsx +214 -0
  88. package/container/types.d.ts +74 -0
  89. package/container/types.js +5 -0
  90. package/date-input/Calendar.d.ts +4 -0
  91. package/date-input/Calendar.js +214 -0
  92. package/date-input/DateInput.d.ts +4 -0
  93. package/date-input/DateInput.js +223 -0
  94. package/date-input/DateInput.stories.tsx +285 -0
  95. package/date-input/DateInput.test.js +808 -0
  96. package/date-input/DatePicker.d.ts +4 -0
  97. package/date-input/DatePicker.js +115 -0
  98. package/date-input/Icons.d.ts +6 -0
  99. package/date-input/Icons.js +58 -0
  100. package/date-input/YearPicker.d.ts +4 -0
  101. package/date-input/YearPicker.js +100 -0
  102. package/date-input/types.d.ts +164 -0
  103. package/date-input/types.js +5 -0
  104. package/dialog/Dialog.d.ts +4 -0
  105. package/dialog/Dialog.js +104 -0
  106. package/dialog/Dialog.stories.tsx +365 -0
  107. package/dialog/Dialog.test.js +307 -0
  108. package/dialog/types.d.ts +36 -0
  109. package/dialog/types.js +5 -0
  110. package/dropdown/Dropdown.d.ts +4 -0
  111. package/dropdown/Dropdown.js +336 -0
  112. package/dropdown/Dropdown.stories.tsx +438 -0
  113. package/dropdown/Dropdown.test.js +599 -0
  114. package/dropdown/DropdownMenu.d.ts +4 -0
  115. package/dropdown/DropdownMenu.js +63 -0
  116. package/dropdown/DropdownMenuItem.d.ts +4 -0
  117. package/dropdown/DropdownMenuItem.js +67 -0
  118. package/dropdown/types.d.ts +98 -0
  119. package/dropdown/types.js +5 -0
  120. package/file-input/FileInput.d.ts +4 -0
  121. package/file-input/FileInput.js +479 -0
  122. package/file-input/FileInput.stories.tsx +618 -0
  123. package/file-input/FileInput.test.js +459 -0
  124. package/file-input/FileItem.d.ts +4 -0
  125. package/file-input/FileItem.js +135 -0
  126. package/file-input/types.d.ts +129 -0
  127. package/file-input/types.js +5 -0
  128. package/flex/Flex.d.ts +4 -0
  129. package/flex/Flex.js +57 -0
  130. package/flex/Flex.stories.tsx +112 -0
  131. package/flex/types.d.ts +97 -0
  132. package/flex/types.js +5 -0
  133. package/footer/Footer.d.ts +4 -0
  134. package/footer/Footer.js +138 -0
  135. package/footer/Footer.stories.tsx +171 -0
  136. package/footer/Footer.test.js +85 -0
  137. package/footer/Icons.d.ts +3 -0
  138. package/footer/Icons.js +136 -0
  139. package/footer/types.d.ts +64 -0
  140. package/footer/types.js +5 -0
  141. package/grid/Grid.d.ts +7 -0
  142. package/grid/Grid.js +76 -0
  143. package/grid/Grid.stories.tsx +219 -0
  144. package/grid/types.d.ts +115 -0
  145. package/grid/types.js +5 -0
  146. package/header/Header.d.ts +8 -0
  147. package/header/Header.js +220 -0
  148. package/header/Header.stories.tsx +251 -0
  149. package/header/Header.test.js +66 -0
  150. package/header/Icons.d.ts +2 -0
  151. package/header/Icons.js +29 -0
  152. package/header/types.d.ts +33 -0
  153. package/header/types.js +5 -0
  154. package/heading/Heading.d.ts +4 -0
  155. package/heading/Heading.js +137 -0
  156. package/heading/Heading.stories.tsx +54 -0
  157. package/heading/Heading.test.js +169 -0
  158. package/heading/types.d.ts +33 -0
  159. package/heading/types.js +5 -0
  160. package/image/Image.d.ts +4 -0
  161. package/image/Image.js +70 -0
  162. package/image/Image.stories.tsx +129 -0
  163. package/image/types.d.ts +72 -0
  164. package/image/types.js +5 -0
  165. package/inset/Inset.d.ts +3 -0
  166. package/inset/Inset.js +43 -0
  167. package/inset/Inset.stories.tsx +230 -0
  168. package/inset/types.d.ts +37 -0
  169. package/inset/types.js +5 -0
  170. package/layout/ApplicationLayout.d.ts +20 -0
  171. package/layout/ApplicationLayout.js +134 -0
  172. package/layout/ApplicationLayout.stories.tsx +162 -0
  173. package/layout/Icons.d.ts +8 -0
  174. package/layout/Icons.js +58 -0
  175. package/layout/SidenavContext.d.ts +5 -0
  176. package/layout/SidenavContext.js +13 -0
  177. package/layout/types.d.ts +41 -0
  178. package/layout/types.js +5 -0
  179. package/link/Link.d.ts +4 -0
  180. package/link/Link.js +115 -0
  181. package/link/Link.stories.tsx +253 -0
  182. package/link/Link.test.js +63 -0
  183. package/link/types.d.ts +54 -0
  184. package/link/types.js +5 -0
  185. package/main.d.ts +47 -0
  186. package/main.js +343 -0
  187. package/nav-tabs/NavTabs.d.ts +8 -0
  188. package/nav-tabs/NavTabs.js +93 -0
  189. package/nav-tabs/NavTabs.stories.tsx +276 -0
  190. package/nav-tabs/NavTabs.test.js +76 -0
  191. package/nav-tabs/Tab.d.ts +4 -0
  192. package/nav-tabs/Tab.js +118 -0
  193. package/nav-tabs/types.d.ts +52 -0
  194. package/nav-tabs/types.js +5 -0
  195. package/number-input/NumberInput.d.ts +11 -0
  196. package/number-input/NumberInput.js +86 -0
  197. package/number-input/NumberInput.stories.tsx +131 -0
  198. package/number-input/NumberInput.test.js +989 -0
  199. package/number-input/types.d.ts +130 -0
  200. package/number-input/types.js +5 -0
  201. package/package.json +60 -44
  202. package/paginator/Icons.d.ts +5 -0
  203. package/paginator/Icons.js +40 -0
  204. package/paginator/Paginator.d.ts +4 -0
  205. package/paginator/Paginator.js +135 -0
  206. package/paginator/Paginator.stories.tsx +87 -0
  207. package/paginator/Paginator.test.js +335 -0
  208. package/paginator/types.d.ts +38 -0
  209. package/paginator/types.js +5 -0
  210. package/paragraph/Paragraph.d.ts +5 -0
  211. package/paragraph/Paragraph.js +22 -0
  212. package/paragraph/Paragraph.stories.tsx +27 -0
  213. package/password-input/Icons.d.ts +6 -0
  214. package/password-input/Icons.js +35 -0
  215. package/password-input/PasswordInput.d.ts +4 -0
  216. package/password-input/PasswordInput.js +97 -0
  217. package/password-input/PasswordInput.stories.tsx +99 -0
  218. package/password-input/PasswordInput.test.js +198 -0
  219. package/password-input/types.d.ts +111 -0
  220. package/password-input/types.js +5 -0
  221. package/progress-bar/ProgressBar.d.ts +4 -0
  222. package/progress-bar/ProgressBar.js +144 -0
  223. package/progress-bar/ProgressBar.stories.tsx +93 -0
  224. package/progress-bar/ProgressBar.test.js +93 -0
  225. package/progress-bar/types.d.ts +37 -0
  226. package/progress-bar/types.js +5 -0
  227. package/quick-nav/QuickNav.d.ts +4 -0
  228. package/quick-nav/QuickNav.js +94 -0
  229. package/quick-nav/QuickNav.stories.tsx +356 -0
  230. package/quick-nav/types.d.ts +21 -0
  231. package/quick-nav/types.js +5 -0
  232. package/radio-group/Radio.d.ts +4 -0
  233. package/radio-group/Radio.js +124 -0
  234. package/radio-group/RadioGroup.d.ts +4 -0
  235. package/radio-group/RadioGroup.js +235 -0
  236. package/radio-group/RadioGroup.stories.tsx +214 -0
  237. package/radio-group/RadioGroup.test.js +756 -0
  238. package/radio-group/types.d.ts +114 -0
  239. package/radio-group/types.js +5 -0
  240. package/resultset-table/Icons.d.ts +7 -0
  241. package/resultset-table/Icons.js +47 -0
  242. package/resultset-table/ResultsetTable.d.ts +7 -0
  243. package/resultset-table/ResultsetTable.js +166 -0
  244. package/resultset-table/ResultsetTable.stories.tsx +397 -0
  245. package/resultset-table/ResultsetTable.test.js +371 -0
  246. package/resultset-table/types.d.ts +73 -0
  247. package/resultset-table/types.js +5 -0
  248. package/select/Icons.d.ts +10 -0
  249. package/select/Icons.js +89 -0
  250. package/select/Listbox.d.ts +4 -0
  251. package/select/Listbox.js +143 -0
  252. package/select/Option.d.ts +4 -0
  253. package/select/Option.js +87 -0
  254. package/select/Select.d.ts +4 -0
  255. package/select/Select.js +590 -0
  256. package/select/Select.stories.tsx +971 -0
  257. package/select/Select.test.js +2370 -0
  258. package/select/types.d.ts +209 -0
  259. package/select/types.js +5 -0
  260. package/sidenav/Icons.d.ts +7 -0
  261. package/sidenav/Icons.js +47 -0
  262. package/sidenav/Sidenav.d.ts +10 -0
  263. package/sidenav/Sidenav.js +196 -0
  264. package/sidenav/Sidenav.stories.tsx +282 -0
  265. package/sidenav/Sidenav.test.js +37 -0
  266. package/sidenav/types.d.ts +76 -0
  267. package/sidenav/types.js +5 -0
  268. package/slider/Slider.d.ts +4 -0
  269. package/slider/Slider.js +285 -0
  270. package/slider/Slider.test.js +254 -0
  271. package/slider/types.d.ts +86 -0
  272. package/slider/types.js +5 -0
  273. package/spinner/Spinner.d.ts +4 -0
  274. package/spinner/Spinner.js +206 -0
  275. package/spinner/Spinner.stories.tsx +129 -0
  276. package/spinner/Spinner.test.js +55 -0
  277. package/spinner/types.d.ts +32 -0
  278. package/spinner/types.js +5 -0
  279. package/status-light/StatusLight.d.ts +4 -0
  280. package/status-light/StatusLight.js +51 -0
  281. package/status-light/StatusLight.stories.tsx +74 -0
  282. package/status-light/StatusLight.test.js +25 -0
  283. package/status-light/types.d.ts +17 -0
  284. package/status-light/types.js +5 -0
  285. package/switch/Switch.d.ts +4 -0
  286. package/switch/Switch.js +214 -0
  287. package/switch/Switch.stories.tsx +137 -0
  288. package/switch/Switch.test.js +180 -0
  289. package/switch/types.d.ts +66 -0
  290. package/switch/types.js +5 -0
  291. package/table/DropdownTheme.js +62 -0
  292. package/table/Table.d.ts +8 -0
  293. package/table/Table.js +170 -0
  294. package/table/Table.stories.tsx +658 -0
  295. package/table/Table.test.js +113 -0
  296. package/table/types.d.ts +63 -0
  297. package/table/types.js +5 -0
  298. package/tabs/Tab.d.ts +4 -0
  299. package/tabs/Tab.js +116 -0
  300. package/tabs/Tabs.d.ts +4 -0
  301. package/tabs/Tabs.js +384 -0
  302. package/tabs/Tabs.stories.tsx +226 -0
  303. package/tabs/Tabs.test.js +294 -0
  304. package/tabs/types.d.ts +92 -0
  305. package/tabs/types.js +5 -0
  306. package/tag/Tag.d.ts +4 -0
  307. package/tag/Tag.js +151 -0
  308. package/tag/Tag.stories.tsx +155 -0
  309. package/tag/Tag.test.js +49 -0
  310. package/tag/types.d.ts +69 -0
  311. package/tag/types.js +5 -0
  312. package/text-input/Icons.d.ts +8 -0
  313. package/text-input/Icons.js +56 -0
  314. package/text-input/Suggestion.d.ts +4 -0
  315. package/text-input/Suggestion.js +67 -0
  316. package/text-input/Suggestions.d.ts +4 -0
  317. package/text-input/Suggestions.js +84 -0
  318. package/text-input/TextInput.d.ts +4 -0
  319. package/text-input/TextInput.js +565 -0
  320. package/text-input/TextInput.stories.tsx +465 -0
  321. package/text-input/TextInput.test.js +1756 -0
  322. package/text-input/types.d.ts +205 -0
  323. package/text-input/types.js +5 -0
  324. package/textarea/Textarea.d.ts +4 -0
  325. package/textarea/Textarea.js +234 -0
  326. package/textarea/Textarea.stories.tsx +174 -0
  327. package/textarea/Textarea.test.js +406 -0
  328. package/textarea/types.d.ts +141 -0
  329. package/textarea/types.js +5 -0
  330. package/toggle-group/ToggleGroup.d.ts +4 -0
  331. package/toggle-group/ToggleGroup.js +201 -0
  332. package/toggle-group/ToggleGroup.stories.tsx +218 -0
  333. package/toggle-group/ToggleGroup.test.js +137 -0
  334. package/toggle-group/types.d.ts +114 -0
  335. package/toggle-group/types.js +5 -0
  336. package/typography/Typography.d.ts +4 -0
  337. package/typography/Typography.js +23 -0
  338. package/typography/Typography.stories.tsx +198 -0
  339. package/typography/types.d.ts +18 -0
  340. package/typography/types.js +5 -0
  341. package/useTheme.d.ts +1148 -0
  342. package/useTheme.js +15 -0
  343. package/useTranslatedLabels.d.ts +85 -0
  344. package/useTranslatedLabels.js +14 -0
  345. package/utils/BaseTypography.d.ts +21 -0
  346. package/utils/BaseTypography.js +94 -0
  347. package/utils/FocusLock.d.ts +13 -0
  348. package/utils/FocusLock.js +124 -0
  349. package/wizard/Wizard.d.ts +4 -0
  350. package/wizard/Wizard.js +250 -0
  351. package/wizard/Wizard.stories.tsx +253 -0
  352. package/wizard/Wizard.test.js +114 -0
  353. package/wizard/types.d.ts +64 -0
  354. package/wizard/types.js +5 -0
  355. package/babel.config.js +0 -4
  356. package/dist/ThemeContext.js +0 -15
  357. package/dist/accordion/Accordion.js +0 -264
  358. package/dist/accordion/Accordion.stories.js +0 -207
  359. package/dist/accordion/readme.md +0 -96
  360. package/dist/alert/Alert.js +0 -302
  361. package/dist/alert/Alert.stories.js +0 -158
  362. package/dist/alert/close.svg +0 -4
  363. package/dist/alert/error.svg +0 -4
  364. package/dist/alert/info.svg +0 -4
  365. package/dist/alert/readme.md +0 -43
  366. package/dist/alert/success.svg +0 -4
  367. package/dist/alert/warning.svg +0 -4
  368. package/dist/box/Box.js +0 -136
  369. package/dist/button/Button.js +0 -183
  370. package/dist/button/Button.stories.js +0 -224
  371. package/dist/button/readme.md +0 -93
  372. package/dist/card/Card.js +0 -246
  373. package/dist/checkbox/Checkbox.js +0 -224
  374. package/dist/checkbox/Checkbox.stories.js +0 -144
  375. package/dist/checkbox/readme.md +0 -116
  376. package/dist/chip/Chip.js +0 -170
  377. package/dist/common/OpenSans.css +0 -81
  378. package/dist/common/RequiredComponent.js +0 -46
  379. package/dist/common/services/example-service.js +0 -10
  380. package/dist/common/services/example-service.test.js +0 -12
  381. package/dist/common/utils.js +0 -42
  382. package/dist/common/variables.js +0 -188
  383. package/dist/date/Date.js +0 -342
  384. package/dist/date/Date.stories.js +0 -205
  385. package/dist/date/calendar.svg +0 -1
  386. package/dist/date/calendar_dark.svg +0 -1
  387. package/dist/date/readme.md +0 -73
  388. package/dist/dialog/Dialog.js +0 -193
  389. package/dist/dialog/Dialog.stories.js +0 -217
  390. package/dist/dialog/readme.md +0 -32
  391. package/dist/dropdown/Dropdown.js +0 -412
  392. package/dist/dropdown/Dropdown.stories.js +0 -249
  393. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  394. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  395. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  396. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  397. package/dist/dropdown/readme.md +0 -69
  398. package/dist/footer/Footer.js +0 -341
  399. package/dist/footer/Footer.stories.js +0 -94
  400. package/dist/footer/dxc_logo_wht.png +0 -0
  401. package/dist/footer/readme.md +0 -41
  402. package/dist/header/Header.js +0 -350
  403. package/dist/header/Header.stories.js +0 -176
  404. package/dist/header/close_icon.svg +0 -1
  405. package/dist/header/dxc_logo_black.png +0 -0
  406. package/dist/header/dxc_logo_white.png +0 -0
  407. package/dist/header/hamb_menu_black.svg +0 -1
  408. package/dist/header/hamb_menu_white.svg +0 -1
  409. package/dist/header/readme.md +0 -33
  410. package/dist/heading/Heading.js +0 -159
  411. package/dist/input-text/InputText.js +0 -515
  412. package/dist/input-text/InputText.stories.js +0 -209
  413. package/dist/input-text/error.svg +0 -1
  414. package/dist/input-text/readme.md +0 -91
  415. package/dist/link/Link.js +0 -129
  416. package/dist/link/readme.md +0 -51
  417. package/dist/main.js +0 -263
  418. package/dist/paginator/Paginator.js +0 -178
  419. package/dist/paginator/images/next.svg +0 -3
  420. package/dist/paginator/images/nextPage.svg +0 -3
  421. package/dist/paginator/images/previous.svg +0 -3
  422. package/dist/paginator/images/previousPage.svg +0 -3
  423. package/dist/paginator/readme.md +0 -50
  424. package/dist/progress-bar/ProgressBar.js +0 -189
  425. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  426. package/dist/progress-bar/readme.md +0 -63
  427. package/dist/radio/Radio.js +0 -191
  428. package/dist/radio/Radio.stories.js +0 -166
  429. package/dist/radio/readme.md +0 -70
  430. package/dist/resultsetTable/ResultsetTable.js +0 -334
  431. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  432. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  433. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  434. package/dist/select/Select.js +0 -425
  435. package/dist/select/Select.stories.js +0 -235
  436. package/dist/select/readme.md +0 -72
  437. package/dist/sidenav/Sidenav.js +0 -217
  438. package/dist/sidenav/arrow_icon.svg +0 -3
  439. package/dist/slider/Slider.js +0 -258
  440. package/dist/slider/Slider.stories.js +0 -241
  441. package/dist/slider/readme.md +0 -64
  442. package/dist/spinner/Spinner.js +0 -196
  443. package/dist/spinner/Spinner.stories.js +0 -183
  444. package/dist/spinner/readme.md +0 -65
  445. package/dist/switch/Switch.js +0 -195
  446. package/dist/switch/Switch.stories.js +0 -134
  447. package/dist/switch/readme.md +0 -133
  448. package/dist/table/Table.js +0 -84
  449. package/dist/tabs/Tabs.js +0 -183
  450. package/dist/tabs/Tabs.stories.js +0 -130
  451. package/dist/tabs/readme.md +0 -78
  452. package/dist/tabs-for-sections/TabsForSections.js +0 -107
  453. package/dist/tabs-for-sections/readme.md +0 -78
  454. package/dist/tag/Tag.js +0 -217
  455. package/dist/textarea/Textarea.js +0 -226
  456. package/dist/toggle/Toggle.js +0 -223
  457. package/dist/toggle/Toggle.stories.js +0 -297
  458. package/dist/toggle/readme.md +0 -80
  459. package/dist/upload/Upload.js +0 -200
  460. package/dist/upload/Upload.stories.js +0 -72
  461. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -125
  462. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  463. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  464. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -282
  465. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  466. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  467. package/dist/upload/file-upload/FileToUpload.js +0 -158
  468. package/dist/upload/file-upload/audio-icon.svg +0 -4
  469. package/dist/upload/file-upload/close.svg +0 -4
  470. package/dist/upload/file-upload/file-icon.svg +0 -4
  471. package/dist/upload/file-upload/video-icon.svg +0 -4
  472. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  473. package/dist/upload/readme.md +0 -37
  474. package/dist/upload/transaction/Transaction.js +0 -155
  475. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  476. package/dist/upload/transaction/audio-icon.svg +0 -4
  477. package/dist/upload/transaction/error-icon.svg +0 -4
  478. package/dist/upload/transaction/file-icon-err.svg +0 -4
  479. package/dist/upload/transaction/file-icon.svg +0 -4
  480. package/dist/upload/transaction/image-icon-err.svg +0 -4
  481. package/dist/upload/transaction/image-icon.svg +0 -4
  482. package/dist/upload/transaction/success-icon.svg +0 -4
  483. package/dist/upload/transaction/video-icon-err.svg +0 -4
  484. package/dist/upload/transaction/video-icon.svg +0 -4
  485. package/dist/upload/transactions/Transactions.js +0 -120
  486. package/dist/wizard/Wizard.js +0 -310
  487. package/dist/wizard/invalid_icon.svg +0 -6
  488. package/dist/wizard/valid_icon.svg +0 -6
  489. package/dist/wizard/validation-wrong.svg +0 -6
  490. package/test/Accordion.test.js +0 -33
  491. package/test/Alert.test.js +0 -53
  492. package/test/Box.test.js +0 -10
  493. package/test/Button.test.js +0 -18
  494. package/test/Card.test.js +0 -30
  495. package/test/Checkbox.test.js +0 -45
  496. package/test/Chip.test.js +0 -25
  497. package/test/Date.test.js +0 -393
  498. package/test/Dialog.test.js +0 -23
  499. package/test/Dropdown.test.js +0 -130
  500. package/test/Footer.test.js +0 -99
  501. package/test/Header.test.js +0 -39
  502. package/test/Heading.test.js +0 -35
  503. package/test/InputText.test.js +0 -236
  504. package/test/Link.test.js +0 -25
  505. package/test/Paginator.test.js +0 -165
  506. package/test/ProgressBar.test.js +0 -35
  507. package/test/Radio.test.js +0 -37
  508. package/test/ResultsetTable.test.js +0 -282
  509. package/test/Select.test.js +0 -191
  510. package/test/Sidenav.test.js +0 -87
  511. package/test/Slider.test.js +0 -65
  512. package/test/Spinner.test.js +0 -27
  513. package/test/Switch.test.js +0 -45
  514. package/test/Table.test.js +0 -36
  515. package/test/Tabs.test.js +0 -88
  516. package/test/TabsForSections.test.js +0 -34
  517. package/test/Tag.test.js +0 -32
  518. package/test/TextArea.test.js +0 -52
  519. package/test/Toggle.test.js +0 -43
  520. package/test/Upload.test.js +0 -60
  521. package/test/Wizard.test.js +0 -130
  522. package/test/mocks/pngMock.js +0 -1
  523. package/test/mocks/svgMock.js +0 -1
  524. /package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  525. /package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  526. /package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  527. /package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  528. /package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  529. /package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  530. /package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  531. /package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  532. /package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  533. /package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
package/useTheme.js ADDED
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var _react = require("react");
9
+ var _variables = require("./common/variables");
10
+ var _HalstackContext = _interopRequireDefault(require("./HalstackContext"));
11
+ var useTheme = function useTheme() {
12
+ var colorsTheme = (0, _react.useContext)(_HalstackContext["default"]);
13
+ return colorsTheme || _variables.componentTokens;
14
+ };
15
+ var _default = exports["default"] = useTheme;
@@ -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,14 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+ var _react = require("react");
8
+ var _variables = require("./common/variables");
9
+ var _HalstackContext = require("./HalstackContext");
10
+ var useTranslatedLabels = function useTranslatedLabels() {
11
+ var labels = (0, _react.useContext)(_HalstackContext.HalstackLanguageContext);
12
+ return labels || _variables.defaultTranslatedComponentLabels;
13
+ };
14
+ var _default = exports["default"] = useTranslatedLabels;
@@ -0,0 +1,21 @@
1
+ import React from "react";
2
+ 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
+ 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,94 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
10
+ var _react = _interopRequireWildcard(require("react"));
11
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
12
+ var _templateObject;
13
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
14
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
15
+ var TypographyContext = /*#__PURE__*/_react["default"].createContext(null);
16
+ var BaseTypography = function BaseTypography(_ref) {
17
+ var as = _ref.as,
18
+ display = _ref.display,
19
+ fontFamily = _ref.fontFamily,
20
+ fontSize = _ref.fontSize,
21
+ fontStyle = _ref.fontStyle,
22
+ fontWeight = _ref.fontWeight,
23
+ letterSpacing = _ref.letterSpacing,
24
+ lineHeight = _ref.lineHeight,
25
+ textAlign = _ref.textAlign,
26
+ color = _ref.color,
27
+ textDecoration = _ref.textDecoration,
28
+ textOverflow = _ref.textOverflow,
29
+ whiteSpace = _ref.whiteSpace,
30
+ children = _ref.children;
31
+ var componentContext = (0, _react.useContext)(TypographyContext);
32
+ var contextValue = (0, _react.useMemo)(function () {
33
+ var _ref2, _ref3, _ref4, _ref5, _ref6, _ref7, _ref8, _ref9, _ref10, _ref11, _ref12, _ref13, _ref14;
34
+ return {
35
+ as: (_ref2 = as !== null && as !== void 0 ? as : componentContext === null || componentContext === void 0 ? void 0 : componentContext.as) !== null && _ref2 !== void 0 ? _ref2 : "span",
36
+ display: (_ref3 = display !== null && display !== void 0 ? display : componentContext === null || componentContext === void 0 ? void 0 : componentContext.display) !== null && _ref3 !== void 0 ? _ref3 : "inline",
37
+ 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",
38
+ fontSize: (_ref5 = fontSize !== null && fontSize !== void 0 ? fontSize : componentContext === null || componentContext === void 0 ? void 0 : componentContext.fontSize) !== null && _ref5 !== void 0 ? _ref5 : "1rem",
39
+ fontStyle: (_ref6 = fontStyle !== null && fontStyle !== void 0 ? fontStyle : componentContext === null || componentContext === void 0 ? void 0 : componentContext.fontStyle) !== null && _ref6 !== void 0 ? _ref6 : "normal",
40
+ fontWeight: (_ref7 = fontWeight !== null && fontWeight !== void 0 ? fontWeight : componentContext === null || componentContext === void 0 ? void 0 : componentContext.fontWeight) !== null && _ref7 !== void 0 ? _ref7 : "400",
41
+ letterSpacing: (_ref8 = letterSpacing !== null && letterSpacing !== void 0 ? letterSpacing : componentContext === null || componentContext === void 0 ? void 0 : componentContext.letterSpacing) !== null && _ref8 !== void 0 ? _ref8 : "0em",
42
+ lineHeight: (_ref9 = lineHeight !== null && lineHeight !== void 0 ? lineHeight : componentContext === null || componentContext === void 0 ? void 0 : componentContext.lineHeight) !== null && _ref9 !== void 0 ? _ref9 : "1.5em",
43
+ textAlign: (_ref10 = textAlign !== null && textAlign !== void 0 ? textAlign : componentContext === null || componentContext === void 0 ? void 0 : componentContext.textAlign) !== null && _ref10 !== void 0 ? _ref10 : "left",
44
+ color: (_ref11 = color !== null && color !== void 0 ? color : componentContext === null || componentContext === void 0 ? void 0 : componentContext.color) !== null && _ref11 !== void 0 ? _ref11 : "#000000",
45
+ textDecoration: (_ref12 = textDecoration !== null && textDecoration !== void 0 ? textDecoration : componentContext === null || componentContext === void 0 ? void 0 : componentContext.textDecoration) !== null && _ref12 !== void 0 ? _ref12 : "none",
46
+ textOverflow: (_ref13 = textOverflow !== null && textOverflow !== void 0 ? textOverflow : componentContext === null || componentContext === void 0 ? void 0 : componentContext.textOverflow) !== null && _ref13 !== void 0 ? _ref13 : "unset",
47
+ whiteSpace: (_ref14 = whiteSpace !== null && whiteSpace !== void 0 ? whiteSpace : componentContext === null || componentContext === void 0 ? void 0 : componentContext.whiteSpace) !== null && _ref14 !== void 0 ? _ref14 : "normal"
48
+ };
49
+ }, [as, display, fontFamily, fontSize, fontStyle, fontWeight, letterSpacing, lineHeight, textAlign, color, textDecoration, textOverflow, whiteSpace]);
50
+ return /*#__PURE__*/_react["default"].createElement(TypographyContext.Provider, {
51
+ value: contextValue
52
+ }, /*#__PURE__*/_react["default"].createElement(StyledTypography, contextValue, children));
53
+ };
54
+ 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) {
55
+ var display = _ref15.display;
56
+ return display;
57
+ }, function (_ref16) {
58
+ var color = _ref16.color;
59
+ return color;
60
+ }, function (_ref17) {
61
+ var fontFamily = _ref17.fontFamily;
62
+ return fontFamily;
63
+ }, function (_ref18) {
64
+ var fontSize = _ref18.fontSize;
65
+ return fontSize;
66
+ }, function (_ref19) {
67
+ var fontStyle = _ref19.fontStyle;
68
+ return fontStyle;
69
+ }, function (_ref20) {
70
+ var fontWeight = _ref20.fontWeight;
71
+ return fontWeight;
72
+ }, function (_ref21) {
73
+ var letterSpacing = _ref21.letterSpacing;
74
+ return letterSpacing;
75
+ }, function (_ref22) {
76
+ var lineHeight = _ref22.lineHeight;
77
+ return lineHeight;
78
+ }, function (_ref23) {
79
+ var textAlign = _ref23.textAlign;
80
+ return textAlign;
81
+ }, function (_ref24) {
82
+ var textDecoration = _ref24.textDecoration;
83
+ return textDecoration;
84
+ }, function (_ref25) {
85
+ var textOverflow = _ref25.textOverflow;
86
+ return textOverflow;
87
+ }, function (_ref26) {
88
+ var whiteSpace = _ref26.whiteSpace;
89
+ return whiteSpace;
90
+ }, function (_ref27) {
91
+ var textOverflow = _ref27.textOverflow;
92
+ return textOverflow !== "unset" ? "hidden" : "visible";
93
+ });
94
+ var _default = exports["default"] = BaseTypography;
@@ -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,124 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
+ var _react = _interopRequireWildcard(require("react"));
11
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
12
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
13
+ var not = {
14
+ negTabIndex: ':not([tabindex^="-"])',
15
+ disabled: ":not(:disabled)"
16
+ };
17
+ 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(",");
18
+ var getFocusableElements = function getFocusableElements(container) {
19
+ return Array.prototype.slice.call(container.querySelectorAll(focusableQuery)).filter(function (element) {
20
+ return element.getAttribute("aria-hidden") !== "true" && window.getComputedStyle(element).display !== "none" && window.getComputedStyle(element).visibility !== "hidden";
21
+ });
22
+ };
23
+
24
+ /**
25
+ * This function will try to focus the element and return true if it was able to receive the focus.
26
+ * Even if the element is focusable (passes any of the conditions of our selector), there is the possibility
27
+ * that the element may not be focusable at all.
28
+ * @param element: HTMLElement
29
+ * @returns
30
+ */
31
+ var attemptFocus = function attemptFocus(element) {
32
+ element === null || element === void 0 ? void 0 : element.focus();
33
+ return document.activeElement === element;
34
+ };
35
+
36
+ /**
37
+ * @param element: HTMLElement
38
+ * @returns boolean: true if element is contained inside a Radix Portal, false otherwise.
39
+ */
40
+ var radixPortalContains = function radixPortalContains(activeElement) {
41
+ var radixPortals = document.querySelectorAll("[data-radix-portal]");
42
+ var radixPoppers = document.querySelectorAll("[data-radix-popper-content-wrapper]");
43
+ return Array.prototype.slice.call(radixPortals).some(function (portal) {
44
+ return portal.contains(activeElement);
45
+ }) || Array.prototype.slice.call(radixPoppers).some(function (popper) {
46
+ return popper.contains(activeElement);
47
+ });
48
+ };
49
+
50
+ /**
51
+ * Custom hook that returns an array of focusable elements inside a container.
52
+ * @param ref: React.MutableRefObject<HTMLDivElement>
53
+ * @returns
54
+ */
55
+ var useFocusableElements = function useFocusableElements(ref) {
56
+ var _useState = (0, _react.useState)(),
57
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
58
+ focusableElements = _useState2[0],
59
+ setFocusableElements = _useState2[1];
60
+ (0, _react.useEffect)(function () {
61
+ if (ref.current != null) {
62
+ setFocusableElements(getFocusableElements(ref.current));
63
+ var observer = new MutationObserver(function () {
64
+ setFocusableElements(getFocusableElements(ref.current));
65
+ });
66
+ observer.observe(ref.current, {
67
+ childList: true,
68
+ subtree: true,
69
+ attributes: true
70
+ });
71
+ return function () {
72
+ observer.disconnect();
73
+ };
74
+ }
75
+ }, []);
76
+ return focusableElements;
77
+ };
78
+
79
+ /**
80
+ * Traps the focus inside the children of the component. It will focus the first focusable element when the component is mounted.
81
+ * When the focus is on the last focusable element and the user tries to focus the next element, it will focus the first element.
82
+ * When the focus is on the first focusable element and the user tries to focus the previous element, it will focus the last element.
83
+ * The focus can't be moved outside the children unless the children are removed from the DOM (for example, a Dialog, a Modal, etc).
84
+ * @param children: React.ReactNode
85
+ * @returns
86
+ */
87
+ var FocusLock = function FocusLock(_ref) {
88
+ var children = _ref.children;
89
+ var childrenContainerRef = (0, _react.useRef)();
90
+ var focusableElements = useFocusableElements(childrenContainerRef);
91
+ var focusFirst = (0, _react.useCallback)(function () {
92
+ var _childrenContainerRef;
93
+ 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) focusableElements.some(function (element) {
94
+ return attemptFocus(element);
95
+ });
96
+ }, [focusableElements]);
97
+ var focusLast = function focusLast() {
98
+ focusableElements.reverse().some(function (element) {
99
+ return attemptFocus(element);
100
+ });
101
+ };
102
+ var focusLock = function focusLock(event) {
103
+ if (event.key === "Tab") focusableElements.length === 0 && event.preventDefault();
104
+ };
105
+ (0, _react.useEffect)(function () {
106
+ var _childrenContainerRef2;
107
+ if (!((_childrenContainerRef2 = childrenContainerRef.current) !== null && _childrenContainerRef2 !== void 0 && _childrenContainerRef2.contains(document.activeElement)) && !radixPortalContains(document.activeElement)) focusFirst();
108
+ }, [focusFirst]);
109
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("div", {
110
+ onFocus: focusLast,
111
+ tabIndex: 0
112
+ }), /*#__PURE__*/_react["default"].createElement("div", {
113
+ onKeyDown: focusLock,
114
+ ref: childrenContainerRef,
115
+ tabIndex: (focusableElements === null || focusableElements === void 0 ? void 0 : focusableElements.length) === 0 ? 0 : -1,
116
+ style: {
117
+ outline: "none"
118
+ }
119
+ }, children), /*#__PURE__*/_react["default"].createElement("div", {
120
+ onFocus: focusFirst,
121
+ tabIndex: 0
122
+ }));
123
+ };
124
+ var _default = exports["default"] = FocusLock;
@@ -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;
@@ -0,0 +1,250 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof3 = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
10
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
12
+ var _react = _interopRequireWildcard(require("react"));
13
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
14
+ var _variables = require("../common/variables");
15
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
16
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13;
17
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
18
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof3(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
19
+ var icons = {
20
+ validIcon: /*#__PURE__*/_react["default"].createElement("svg", {
21
+ id: "check_circle_black_18dp",
22
+ xmlns: "http://www.w3.org/2000/svg",
23
+ width: "18",
24
+ height: "18",
25
+ viewBox: "0 0 18 18"
26
+ }, /*#__PURE__*/_react["default"].createElement("path", {
27
+ id: "Path_2946",
28
+ "data-name": "Path 2946",
29
+ d: "M0,0H18V18H0Z",
30
+ fill: "none"
31
+ }), /*#__PURE__*/_react["default"].createElement("path", {
32
+ id: "Path_2947",
33
+ "data-name": "Path 2947",
34
+ d: "M9.986,4a5.986,5.986,0,1,0,5.986,5.986A5.994,5.994,0,0,0,9.986,4Zm-1.5,9.727L5.5,10.734,6.551,9.679l1.938,1.93L13.42,6.679l1.055,1.063Z",
35
+ transform: "translate(-0.986 -0.986)",
36
+ fill: "#eafaef",
37
+ opacity: "0.999"
38
+ }), /*#__PURE__*/_react["default"].createElement("path", {
39
+ id: "Path_2948",
40
+ "data-name": "Path 2948",
41
+ d: "M9.493,2a7.493,7.493,0,1,0,7.493,7.493A7.5,7.5,0,0,0,9.493,2Zm0,13.487a5.994,5.994,0,1,1,5.994-5.994A6,6,0,0,1,9.493,15.487Zm3.439-9.306L7.994,11.119,6.054,9.186,5,10.242l3,3,5.994-5.994Z",
42
+ transform: "translate(-0.493 -0.493)",
43
+ fill: "#24a148"
44
+ })),
45
+ invalidIcon: /*#__PURE__*/_react["default"].createElement("svg", {
46
+ id: "highlight_off_black_18dp",
47
+ xmlns: "http://www.w3.org/2000/svg",
48
+ width: "18",
49
+ height: "18",
50
+ viewBox: "0 0 18 18"
51
+ }, /*#__PURE__*/_react["default"].createElement("path", {
52
+ id: "Path_2943",
53
+ "data-name": "Path 2943",
54
+ d: "M0,0H18V18H0Z",
55
+ fill: "none"
56
+ }), /*#__PURE__*/_react["default"].createElement("path", {
57
+ id: "Path_2944",
58
+ "data-name": "Path 2944",
59
+ d: "M10,4a6,6,0,1,0,6,6A6.01,6.01,0,0,0,10,4Zm3,7.945L11.945,13,10,11.06,8.059,13,7,11.945,8.944,10,7,8.059,8.059,7,10,8.944,11.945,7,13,8.059,11.06,10Z",
60
+ transform: "translate(-1.002 -1.002)",
61
+ fill: "#ffe6e9"
62
+ }), /*#__PURE__*/_react["default"].createElement("path", {
63
+ id: "Path_2945",
64
+ "data-name": "Path 2945",
65
+ d: "M11.444,6.5,9.5,8.443,7.558,6.5,6.5,7.558,8.443,9.5,6.5,11.444,7.558,12.5,9.5,10.558,11.444,12.5,12.5,11.444,10.558,9.5,12.5,7.558ZM9.5,2A7.5,7.5,0,1,0,17,9.5,7.494,7.494,0,0,0,9.5,2Zm0,13.5a6,6,0,1,1,6-6A6.009,6.009,0,0,1,9.5,15.5Z",
66
+ transform: "translate(-0.501 -0.501)",
67
+ fill: "#d0011b"
68
+ }))
69
+ };
70
+ var DxcWizard = function DxcWizard(_ref) {
71
+ var _ref2;
72
+ var _ref$mode = _ref.mode,
73
+ mode = _ref$mode === void 0 ? "horizontal" : _ref$mode,
74
+ defaultCurrentStep = _ref.defaultCurrentStep,
75
+ currentStep = _ref.currentStep,
76
+ onStepClick = _ref.onStepClick,
77
+ steps = _ref.steps,
78
+ margin = _ref.margin,
79
+ _ref$tabIndex = _ref.tabIndex,
80
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
81
+ var _useState = (0, _react.useState)((_ref2 = currentStep !== null && currentStep !== void 0 ? currentStep : defaultCurrentStep) !== null && _ref2 !== void 0 ? _ref2 : 0),
82
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
83
+ innerCurrent = _useState2[0],
84
+ setInnerCurrentStep = _useState2[1];
85
+ var renderedCurrent = currentStep == null ? innerCurrent : currentStep;
86
+ var colorsTheme = (0, _useTheme["default"])();
87
+ var handleStepClick = function handleStepClick(newValue) {
88
+ if (currentStep == null) {
89
+ setInnerCurrentStep(newValue);
90
+ }
91
+ if (onStepClick) {
92
+ onStepClick(newValue);
93
+ }
94
+ };
95
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
96
+ theme: colorsTheme.wizard
97
+ }, /*#__PURE__*/_react["default"].createElement(StepsContainer, {
98
+ mode: mode,
99
+ margin: margin,
100
+ role: "group"
101
+ }, steps === null || steps === void 0 ? void 0 : steps.map(function (step, i) {
102
+ return /*#__PURE__*/_react["default"].createElement(StepContainer, {
103
+ key: "step".concat(i),
104
+ mode: mode,
105
+ lastStep: i === (steps === null || steps === void 0 ? void 0 : steps.length) - 1
106
+ }, /*#__PURE__*/_react["default"].createElement(Step, {
107
+ onClick: function onClick() {
108
+ handleStepClick(i);
109
+ },
110
+ disabled: step.disabled,
111
+ mode: mode,
112
+ first: i === 0,
113
+ last: i === (steps === null || steps === void 0 ? void 0 : steps.length) - 1,
114
+ "aria-current": renderedCurrent === i ? "step" : "false",
115
+ tabIndex: tabIndex
116
+ }, /*#__PURE__*/_react["default"].createElement(StepHeader, {
117
+ validityIcon: step.valid !== undefined
118
+ }, /*#__PURE__*/_react["default"].createElement(IconContainer, {
119
+ current: i === renderedCurrent,
120
+ visited: i < renderedCurrent,
121
+ disabled: step.disabled
122
+ }, step.icon ? /*#__PURE__*/_react["default"].createElement(StepIconContainer, null, typeof step.icon === "string" ? /*#__PURE__*/_react["default"].createElement(Icon, {
123
+ src: step.icon
124
+ }) : step.icon) : /*#__PURE__*/_react["default"].createElement(Number, null, i + 1)), step.valid !== undefined && (step.valid ? /*#__PURE__*/_react["default"].createElement(ValidityIconContainer, null, icons.validIcon) : /*#__PURE__*/_react["default"].createElement(ValidityIconContainer, null, icons.invalidIcon))), (step.label || step.description) && /*#__PURE__*/_react["default"].createElement(InfoContainer, null, step.label && /*#__PURE__*/_react["default"].createElement(Label, {
125
+ current: i === renderedCurrent,
126
+ disabled: step.disabled,
127
+ visited: i <= innerCurrent
128
+ }, step.label), step.description && /*#__PURE__*/_react["default"].createElement(Description, {
129
+ current: i === renderedCurrent,
130
+ disabled: step.disabled,
131
+ visited: i <= innerCurrent
132
+ }, step.description))), i === steps.length - 1 ? "" : /*#__PURE__*/_react["default"].createElement(StepSeparator, {
133
+ mode: mode
134
+ }));
135
+ })));
136
+ };
137
+ var StepsContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: ", ";\n justify-content: center;\n ", ";\n font-family: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
138
+ return props.mode === "vertical" ? "column" : "row";
139
+ }, function (props) {
140
+ return props.mode === "vertical" && "height: 500px";
141
+ }, function (props) {
142
+ return props.theme.fontFamily;
143
+ }, function (props) {
144
+ return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
145
+ }, function (props) {
146
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
147
+ }, function (props) {
148
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
149
+ }, function (props) {
150
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
151
+ }, function (props) {
152
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
153
+ });
154
+ var StepContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n ", "\n flex-grow: ", ";\n flex-direction: ", ";\n ", "\n"])), function (props) {
155
+ return props.mode !== "vertical" && "align-items: center;";
156
+ }, function (props) {
157
+ return props.lastStep ? "0" : "1";
158
+ }, function (props) {
159
+ return props.mode === "vertical" ? "column" : "row";
160
+ }, function (props) {
161
+ return props.mode === "vertical" && "width: fit-content;";
162
+ });
163
+ var Step = _styledComponents["default"].button(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: flex-start;\n align-items: center;\n border: none;\n border-radius: 0.25rem;\n background: inherit;\n margin: ", ";\n\n padding: 0px;\n ", ";\n\n &:hover {\n ", ";\n }\n &:focus {\n outline: 2px solid ", ";\n }\n"])), function (props) {
164
+ return props.first ? props.mode === "vertical" ? "0 0 24px 0" : "0 24px 0 0" : props.last ? props.mode === "vertical" ? "24px 0 0 0" : "0 0 0 24px" : props.mode === "vertical" ? "24px 0" : "0 24px";
165
+ }, function (props) {
166
+ return props.disabled ? "cursor: not-allowed" : "";
167
+ }, function (props) {
168
+ return props.disabled ? "" : "cursor: pointer";
169
+ }, function (props) {
170
+ return props.theme.focusColor;
171
+ });
172
+ var StepHeader = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n position: relative;\n display: inline-flex;\n ", "\n"])), function (props) {
173
+ return props.validityIcon && "padding-bottom: 4px;";
174
+ });
175
+ var IconContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n height: ", ";\n\n ", "\n ", ";\n\n border-radius: ", ";\n\n display: flex;\n justify-content: center;\n align-items: center;\n"])), function (props) {
176
+ return props.disabled ? props.theme.disabledStepWidth : props.current ? props.theme.selectedStepWidth : props.theme.stepWidth;
177
+ }, function (props) {
178
+ return props.disabled ? props.theme.disabledStepHeight : props.current ? props.theme.selectedStepHeight : props.theme.stepHeight;
179
+ }, function (props) {
180
+ return "\n ".concat(props.disabled ? "border: ".concat(props.theme.disabledStepBorderThickness, " ").concat(props.theme.disabledStepBorderStyle, " ").concat(props.theme.disabledStepBorderColor, ";") : props.current ? "border: ".concat(props.theme.selectedStepBorderThickness, " ").concat(props.theme.selectedStepBorderStyle, " ").concat(props.theme.selectedStepBorderColor, ";") : props.visited ? "border: ".concat(props.theme.stepBorderThickness, " ").concat(props.theme.stepBorderStyle, " ").concat(props.theme.visitedStepBorderColor, ";") : "border: ".concat(props.theme.stepBorderThickness, " ").concat(props.theme.stepBorderStyle, " ").concat(props.theme.unvisitedStepBorderColor, ";"), "\n background: ").concat(props.disabled ? "".concat(props.theme.disabledStepBackgroundColor) : props.current ? "".concat(props.theme.selectedStepBackgroundColor) : !props.visited ? "".concat(props.theme.unvisitedStepBackgroundColor) : "".concat(props.theme.visitedStepBackgroundColor), ";\n ");
181
+ }, function (props) {
182
+ return props.disabled ? "color: ".concat(props.theme.disabledStepFontColor, ";") : "color: ".concat(props.current ? props.theme.selectedStepFontColor : !props.visited ? props.theme.unvisitedStepFontColor : props.theme.visitedStepFontColor, ";");
183
+ }, function (props) {
184
+ return !props.current && !props.disabled ? props.theme.stepBorderRadius : props.current ? props.theme.selectedStepBorderRadius : props.disabled ? props.theme.disabledStepBorderRadius : "";
185
+ });
186
+ var Icon = _styledComponents["default"].img(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n height: ", ";\n"])), function (props) {
187
+ return props.theme.stepIconSize;
188
+ }, function (props) {
189
+ return props.theme.stepIconSize;
190
+ });
191
+ var StepIconContainer = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n height: ", ";\n overflow: hidden;\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"])), function (props) {
192
+ return props.theme.stepIconSize;
193
+ }, function (props) {
194
+ return props.theme.stepIconSize;
195
+ });
196
+ var Number = _styledComponents["default"].p(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n font-size: ", ";\n font-family: ", ";\n font-style: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n opacity: 1;\n margin: 0px 0px 0px 1px;\n"])), function (props) {
197
+ return props.theme.stepFontSize;
198
+ }, function (props) {
199
+ return props.theme.stepFontFamily;
200
+ }, function (props) {
201
+ return props.theme.stepFontStyle;
202
+ }, function (props) {
203
+ return props.theme.stepFontWeight;
204
+ }, function (props) {
205
+ return props.theme.stepFontTracking;
206
+ });
207
+ var ValidityIconContainer = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n width: 18px;\n height: 18px;\n position: absolute;\n top: 22.5px;\n left: 22.5px;\n"])));
208
+ var InfoContainer = _styledComponents["default"].div(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n margin-left: 12px;\n"])));
209
+ var Label = _styledComponents["default"].p(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n text-align: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n ", ";\n text-transform: ", ";\n margin: 0;\n"])), function (props) {
210
+ return props.theme.labelTextAlign;
211
+ }, function (props) {
212
+ return props.theme.labelFontFamily;
213
+ }, function (props) {
214
+ return props.theme.labelFontSize;
215
+ }, function (props) {
216
+ return props.theme.labelFontStyle;
217
+ }, function (props) {
218
+ return props.theme.labelFontWeight;
219
+ }, function (props) {
220
+ return props.theme.labelFontTracking;
221
+ }, function (props) {
222
+ return props.disabled ? "color: ".concat(props.theme.disabledLabelFontColor, ";") : "color: ".concat(!props.visited ? props.theme.unvisitedLabelFontColor : props.current ? props.theme.selectedLabelFontColor : props.theme.visitedLabelFontColor, ";");
223
+ }, function (props) {
224
+ return props.theme.labelFontTextTransform;
225
+ });
226
+ var Description = _styledComponents["default"].p(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["\n text-align: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n text-transform: ", ";\n ", ";\n margin: 0;\n"])), function (props) {
227
+ return props.theme.helperTextTextAlign;
228
+ }, function (props) {
229
+ return props.theme.helperTextFontFamily;
230
+ }, function (props) {
231
+ return props.theme.helperTextFontSize;
232
+ }, function (props) {
233
+ return props.theme.helperTextFontStyle;
234
+ }, function (props) {
235
+ return props.theme.helperTextFontWeight;
236
+ }, function (props) {
237
+ return props.theme.helperTextFontTracking;
238
+ }, function (props) {
239
+ return props.theme.helperTextFontTextTransform;
240
+ }, function (props) {
241
+ return props.disabled ? "color: ".concat(props.theme.disabledHelperTextFontColor, ";") : "color: ".concat(!props.visited ? props.theme.unvisitedHelperTextFontColor : props.current ? props.theme.selectedHelperTextFontColor : props.theme.visitedHelperTextFontColor, ";");
242
+ });
243
+ var StepSeparator = _styledComponents["default"].div(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2["default"])(["\n ", ";\n ", "\n border: ", ";\n opacity: 1;\n flex-grow: 1;\n"])), function (props) {
244
+ return props.mode === "horizontal" ? "height: 0;" : "width: 0;";
245
+ }, function (props) {
246
+ return props.mode === "vertical" && "margin: 0 18px;";
247
+ }, function (props) {
248
+ return "".concat(props.theme.separatorBorderStyle, " ").concat(props.theme.separatorBorderThickness, " ").concat(props.theme.separatorColor);
249
+ });
250
+ var _default = exports["default"] = DxcWizard;