@dxc-technology/halstack-react 0.0.0-652d679 → 0.0.0-65c8e88

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 (530) hide show
  1. package/BackgroundColorContext.d.ts +1 -0
  2. package/BackgroundColorContext.js +30 -0
  3. package/HalstackContext.d.ts +1235 -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 +43 -0
  22. package/action-icon/types.d.ts +26 -0
  23. package/action-icon/types.js +5 -0
  24. package/alert/Alert.d.ts +4 -0
  25. package/alert/Alert.js +254 -0
  26. package/alert/Alert.stories.tsx +198 -0
  27. package/alert/Alert.test.js +75 -0
  28. package/alert/types.d.ts +49 -0
  29. package/alert/types.js +5 -0
  30. package/badge/Badge.d.ts +4 -0
  31. package/badge/Badge.js +48 -0
  32. package/badge/types.d.ts +5 -0
  33. package/badge/types.js +5 -0
  34. package/bleed/Bleed.d.ts +3 -0
  35. package/bleed/Bleed.js +43 -0
  36. package/bleed/Bleed.stories.tsx +342 -0
  37. package/bleed/types.d.ts +37 -0
  38. package/bleed/types.js +5 -0
  39. package/box/Box.d.ts +4 -0
  40. package/box/Box.js +75 -0
  41. package/box/Box.stories.tsx +119 -0
  42. package/box/Box.test.js +13 -0
  43. package/box/types.d.ts +32 -0
  44. package/box/types.js +5 -0
  45. package/bulleted-list/BulletedList.d.ts +7 -0
  46. package/bulleted-list/BulletedList.js +89 -0
  47. package/bulleted-list/BulletedList.stories.tsx +115 -0
  48. package/bulleted-list/types.d.ts +38 -0
  49. package/bulleted-list/types.js +5 -0
  50. package/button/Button.d.ts +4 -0
  51. package/button/Button.js +120 -0
  52. package/button/Button.stories.tsx +344 -0
  53. package/button/Button.test.js +36 -0
  54. package/button/types.d.ts +57 -0
  55. package/button/types.js +5 -0
  56. package/card/Card.d.ts +4 -0
  57. package/card/Card.js +120 -0
  58. package/card/Card.stories.tsx +171 -0
  59. package/card/Card.test.js +39 -0
  60. package/card/types.d.ts +62 -0
  61. package/card/types.js +5 -0
  62. package/checkbox/Checkbox.d.ts +4 -0
  63. package/checkbox/Checkbox.js +215 -0
  64. package/checkbox/Checkbox.stories.tsx +222 -0
  65. package/checkbox/Checkbox.test.js +199 -0
  66. package/checkbox/types.d.ts +72 -0
  67. package/checkbox/types.js +5 -0
  68. package/chip/Chip.d.ts +4 -0
  69. package/chip/Chip.js +121 -0
  70. package/chip/Chip.stories.tsx +214 -0
  71. package/chip/Chip.test.js +41 -0
  72. package/chip/types.d.ts +45 -0
  73. package/chip/types.js +5 -0
  74. package/common/OpenSans.css +69 -0
  75. package/common/coreTokens.d.ts +237 -0
  76. package/common/coreTokens.js +184 -0
  77. package/common/utils.d.ts +1 -0
  78. package/common/utils.js +16 -0
  79. package/common/variables.d.ts +1381 -0
  80. package/common/variables.js +1253 -0
  81. package/container/Container.d.ts +4 -0
  82. package/container/Container.js +194 -0
  83. package/container/Container.stories.tsx +214 -0
  84. package/container/types.d.ts +74 -0
  85. package/container/types.js +5 -0
  86. package/date-input/Calendar.d.ts +4 -0
  87. package/date-input/Calendar.js +214 -0
  88. package/date-input/DateInput.d.ts +4 -0
  89. package/date-input/DateInput.js +223 -0
  90. package/date-input/DateInput.stories.tsx +285 -0
  91. package/date-input/DateInput.test.js +808 -0
  92. package/date-input/DatePicker.d.ts +4 -0
  93. package/date-input/DatePicker.js +115 -0
  94. package/date-input/Icons.d.ts +6 -0
  95. package/date-input/Icons.js +58 -0
  96. package/date-input/YearPicker.d.ts +4 -0
  97. package/date-input/YearPicker.js +100 -0
  98. package/date-input/types.d.ts +164 -0
  99. package/date-input/types.js +5 -0
  100. package/dialog/Dialog.d.ts +4 -0
  101. package/dialog/Dialog.js +104 -0
  102. package/dialog/Dialog.stories.tsx +365 -0
  103. package/dialog/Dialog.test.js +307 -0
  104. package/dialog/types.d.ts +36 -0
  105. package/dialog/types.js +5 -0
  106. package/dropdown/Dropdown.d.ts +4 -0
  107. package/dropdown/Dropdown.js +334 -0
  108. package/dropdown/Dropdown.stories.tsx +438 -0
  109. package/dropdown/Dropdown.test.js +599 -0
  110. package/dropdown/DropdownMenu.d.ts +4 -0
  111. package/dropdown/DropdownMenu.js +63 -0
  112. package/dropdown/DropdownMenuItem.d.ts +4 -0
  113. package/dropdown/DropdownMenuItem.js +67 -0
  114. package/dropdown/types.d.ts +98 -0
  115. package/dropdown/types.js +5 -0
  116. package/file-input/FileInput.d.ts +4 -0
  117. package/file-input/FileInput.js +479 -0
  118. package/file-input/FileInput.stories.tsx +618 -0
  119. package/file-input/FileInput.test.js +459 -0
  120. package/file-input/FileItem.d.ts +4 -0
  121. package/file-input/FileItem.js +135 -0
  122. package/file-input/types.d.ts +129 -0
  123. package/file-input/types.js +5 -0
  124. package/flex/Flex.d.ts +4 -0
  125. package/flex/Flex.js +57 -0
  126. package/flex/Flex.stories.tsx +112 -0
  127. package/flex/types.d.ts +97 -0
  128. package/flex/types.js +5 -0
  129. package/footer/Footer.d.ts +4 -0
  130. package/footer/Footer.js +125 -0
  131. package/footer/Footer.stories.tsx +152 -0
  132. package/footer/Footer.test.js +85 -0
  133. package/footer/Icons.d.ts +2 -0
  134. package/footer/Icons.js +72 -0
  135. package/footer/types.d.ts +58 -0
  136. package/footer/types.js +5 -0
  137. package/grid/Grid.d.ts +7 -0
  138. package/grid/Grid.js +76 -0
  139. package/grid/Grid.stories.tsx +219 -0
  140. package/grid/types.d.ts +115 -0
  141. package/grid/types.js +5 -0
  142. package/header/Header.d.ts +8 -0
  143. package/header/Header.js +220 -0
  144. package/header/Header.stories.tsx +251 -0
  145. package/header/Header.test.js +66 -0
  146. package/header/Icons.d.ts +2 -0
  147. package/header/Icons.js +29 -0
  148. package/header/types.d.ts +33 -0
  149. package/header/types.js +5 -0
  150. package/heading/Heading.d.ts +4 -0
  151. package/heading/Heading.js +137 -0
  152. package/heading/Heading.stories.tsx +54 -0
  153. package/heading/Heading.test.js +169 -0
  154. package/heading/types.d.ts +33 -0
  155. package/heading/types.js +5 -0
  156. package/image/Image.d.ts +4 -0
  157. package/image/Image.js +70 -0
  158. package/image/Image.stories.tsx +127 -0
  159. package/image/types.d.ts +72 -0
  160. package/image/types.js +5 -0
  161. package/inset/Inset.d.ts +3 -0
  162. package/inset/Inset.js +43 -0
  163. package/inset/Inset.stories.tsx +230 -0
  164. package/inset/types.d.ts +37 -0
  165. package/inset/types.js +5 -0
  166. package/layout/ApplicationLayout.d.ts +20 -0
  167. package/layout/ApplicationLayout.js +134 -0
  168. package/layout/ApplicationLayout.stories.tsx +162 -0
  169. package/layout/Icons.d.ts +8 -0
  170. package/layout/Icons.js +58 -0
  171. package/layout/SidenavContext.d.ts +5 -0
  172. package/layout/SidenavContext.js +13 -0
  173. package/layout/types.d.ts +41 -0
  174. package/layout/types.js +5 -0
  175. package/link/Link.d.ts +4 -0
  176. package/link/Link.js +115 -0
  177. package/link/Link.stories.tsx +253 -0
  178. package/link/Link.test.js +63 -0
  179. package/link/types.d.ts +54 -0
  180. package/link/types.js +5 -0
  181. package/main.d.ts +46 -0
  182. package/{dist/main.js → main.js} +156 -99
  183. package/nav-tabs/NavTabs.d.ts +8 -0
  184. package/nav-tabs/NavTabs.js +93 -0
  185. package/nav-tabs/NavTabs.stories.tsx +274 -0
  186. package/nav-tabs/NavTabs.test.js +75 -0
  187. package/nav-tabs/Tab.d.ts +4 -0
  188. package/nav-tabs/Tab.js +117 -0
  189. package/nav-tabs/types.d.ts +52 -0
  190. package/nav-tabs/types.js +5 -0
  191. package/number-input/NumberInput.d.ts +11 -0
  192. package/number-input/NumberInput.js +67 -0
  193. package/number-input/NumberInput.stories.tsx +131 -0
  194. package/number-input/NumberInput.test.js +830 -0
  195. package/number-input/types.d.ts +130 -0
  196. package/number-input/types.js +5 -0
  197. package/package.json +60 -44
  198. package/paginator/Icons.d.ts +5 -0
  199. package/paginator/Icons.js +40 -0
  200. package/paginator/Paginator.d.ts +4 -0
  201. package/paginator/Paginator.js +135 -0
  202. package/paginator/Paginator.stories.tsx +87 -0
  203. package/paginator/Paginator.test.js +335 -0
  204. package/paginator/types.d.ts +38 -0
  205. package/paginator/types.js +5 -0
  206. package/paragraph/Paragraph.d.ts +5 -0
  207. package/paragraph/Paragraph.js +22 -0
  208. package/paragraph/Paragraph.stories.tsx +27 -0
  209. package/password-input/Icons.d.ts +6 -0
  210. package/password-input/Icons.js +35 -0
  211. package/password-input/PasswordInput.d.ts +4 -0
  212. package/password-input/PasswordInput.js +97 -0
  213. package/password-input/PasswordInput.stories.tsx +99 -0
  214. package/password-input/PasswordInput.test.js +198 -0
  215. package/password-input/types.d.ts +111 -0
  216. package/password-input/types.js +5 -0
  217. package/progress-bar/ProgressBar.d.ts +4 -0
  218. package/progress-bar/ProgressBar.js +144 -0
  219. package/progress-bar/ProgressBar.stories.tsx +93 -0
  220. package/progress-bar/ProgressBar.test.js +93 -0
  221. package/progress-bar/types.d.ts +37 -0
  222. package/progress-bar/types.js +5 -0
  223. package/quick-nav/QuickNav.d.ts +4 -0
  224. package/quick-nav/QuickNav.js +94 -0
  225. package/quick-nav/QuickNav.stories.tsx +356 -0
  226. package/quick-nav/types.d.ts +21 -0
  227. package/quick-nav/types.js +5 -0
  228. package/radio-group/Radio.d.ts +4 -0
  229. package/radio-group/Radio.js +124 -0
  230. package/radio-group/RadioGroup.d.ts +4 -0
  231. package/radio-group/RadioGroup.js +235 -0
  232. package/radio-group/RadioGroup.stories.tsx +214 -0
  233. package/radio-group/RadioGroup.test.js +756 -0
  234. package/radio-group/types.d.ts +114 -0
  235. package/radio-group/types.js +5 -0
  236. package/resultset-table/Icons.d.ts +7 -0
  237. package/resultset-table/Icons.js +47 -0
  238. package/resultset-table/ResultsetTable.d.ts +4 -0
  239. package/resultset-table/ResultsetTable.js +159 -0
  240. package/resultset-table/ResultsetTable.stories.tsx +300 -0
  241. package/resultset-table/ResultsetTable.test.js +305 -0
  242. package/resultset-table/types.d.ts +67 -0
  243. package/resultset-table/types.js +5 -0
  244. package/select/Icons.d.ts +10 -0
  245. package/select/Icons.js +89 -0
  246. package/select/Listbox.d.ts +4 -0
  247. package/select/Listbox.js +143 -0
  248. package/select/Option.d.ts +4 -0
  249. package/select/Option.js +80 -0
  250. package/select/Select.d.ts +4 -0
  251. package/select/Select.js +581 -0
  252. package/select/Select.stories.tsx +971 -0
  253. package/select/Select.test.js +2370 -0
  254. package/select/types.d.ts +209 -0
  255. package/select/types.js +5 -0
  256. package/sidenav/Icons.d.ts +7 -0
  257. package/sidenav/Icons.js +47 -0
  258. package/sidenav/Sidenav.d.ts +10 -0
  259. package/sidenav/Sidenav.js +196 -0
  260. package/sidenav/Sidenav.stories.tsx +282 -0
  261. package/sidenav/Sidenav.test.js +37 -0
  262. package/sidenav/types.d.ts +76 -0
  263. package/sidenav/types.js +5 -0
  264. package/slider/Slider.d.ts +4 -0
  265. package/slider/Slider.js +285 -0
  266. package/slider/Slider.test.js +254 -0
  267. package/slider/types.d.ts +86 -0
  268. package/slider/types.js +5 -0
  269. package/spinner/Spinner.d.ts +4 -0
  270. package/spinner/Spinner.js +206 -0
  271. package/spinner/Spinner.stories.tsx +129 -0
  272. package/spinner/Spinner.test.js +55 -0
  273. package/spinner/types.d.ts +32 -0
  274. package/spinner/types.js +5 -0
  275. package/switch/Switch.d.ts +4 -0
  276. package/switch/Switch.js +214 -0
  277. package/switch/Switch.stories.tsx +137 -0
  278. package/switch/Switch.test.js +180 -0
  279. package/switch/types.d.ts +66 -0
  280. package/switch/types.js +5 -0
  281. package/table/Table.d.ts +4 -0
  282. package/table/Table.js +96 -0
  283. package/table/Table.stories.tsx +356 -0
  284. package/table/Table.test.js +21 -0
  285. package/table/types.d.ts +21 -0
  286. package/table/types.js +5 -0
  287. package/tabs/Tab.d.ts +4 -0
  288. package/tabs/Tab.js +113 -0
  289. package/tabs/Tabs.d.ts +4 -0
  290. package/tabs/Tabs.js +384 -0
  291. package/tabs/Tabs.stories.tsx +226 -0
  292. package/tabs/Tabs.test.js +294 -0
  293. package/tabs/types.d.ts +92 -0
  294. package/tabs/types.js +5 -0
  295. package/tag/Tag.d.ts +4 -0
  296. package/tag/Tag.js +151 -0
  297. package/tag/Tag.stories.tsx +155 -0
  298. package/tag/Tag.test.js +49 -0
  299. package/tag/types.d.ts +69 -0
  300. package/tag/types.js +5 -0
  301. package/text-input/Icons.d.ts +8 -0
  302. package/text-input/Icons.js +56 -0
  303. package/text-input/Suggestion.d.ts +4 -0
  304. package/text-input/Suggestion.js +67 -0
  305. package/text-input/Suggestions.d.ts +4 -0
  306. package/text-input/Suggestions.js +84 -0
  307. package/text-input/TextInput.d.ts +4 -0
  308. package/text-input/TextInput.js +572 -0
  309. package/text-input/TextInput.stories.tsx +465 -0
  310. package/text-input/TextInput.test.js +1739 -0
  311. package/text-input/types.d.ts +205 -0
  312. package/text-input/types.js +5 -0
  313. package/textarea/Textarea.d.ts +4 -0
  314. package/textarea/Textarea.js +234 -0
  315. package/textarea/Textarea.stories.tsx +174 -0
  316. package/textarea/Textarea.test.js +406 -0
  317. package/textarea/types.d.ts +141 -0
  318. package/textarea/types.js +5 -0
  319. package/toggle-group/ToggleGroup.d.ts +4 -0
  320. package/toggle-group/ToggleGroup.js +201 -0
  321. package/toggle-group/ToggleGroup.stories.tsx +218 -0
  322. package/toggle-group/ToggleGroup.test.js +137 -0
  323. package/toggle-group/types.d.ts +114 -0
  324. package/toggle-group/types.js +5 -0
  325. package/typography/Typography.d.ts +4 -0
  326. package/typography/Typography.js +23 -0
  327. package/typography/Typography.stories.tsx +198 -0
  328. package/typography/types.d.ts +18 -0
  329. package/typography/types.js +5 -0
  330. package/useTheme.d.ts +1134 -0
  331. package/useTheme.js +15 -0
  332. package/useTranslatedLabels.d.ts +85 -0
  333. package/useTranslatedLabels.js +14 -0
  334. package/utils/BaseTypography.d.ts +21 -0
  335. package/utils/BaseTypography.js +94 -0
  336. package/utils/FocusLock.d.ts +13 -0
  337. package/utils/FocusLock.js +121 -0
  338. package/wizard/Wizard.d.ts +4 -0
  339. package/wizard/Wizard.js +250 -0
  340. package/wizard/Wizard.stories.tsx +253 -0
  341. package/wizard/Wizard.test.js +114 -0
  342. package/wizard/types.d.ts +64 -0
  343. package/wizard/types.js +5 -0
  344. package/babel.config.js +0 -4
  345. package/dist/ThemeContext.js +0 -15
  346. package/dist/accordion/Accordion.js +0 -248
  347. package/dist/accordion/Accordion.stories.js +0 -207
  348. package/dist/accordion/readme.md +0 -96
  349. package/dist/alert/Alert.js +0 -304
  350. package/dist/alert/Alert.stories.js +0 -158
  351. package/dist/alert/close.svg +0 -4
  352. package/dist/alert/error.svg +0 -4
  353. package/dist/alert/info.svg +0 -4
  354. package/dist/alert/readme.md +0 -43
  355. package/dist/alert/success.svg +0 -4
  356. package/dist/alert/warning.svg +0 -4
  357. package/dist/box/Box.js +0 -148
  358. package/dist/button/Button.js +0 -181
  359. package/dist/button/Button.stories.js +0 -224
  360. package/dist/button/readme.md +0 -93
  361. package/dist/card/Card.js +0 -217
  362. package/dist/checkbox/Checkbox.js +0 -240
  363. package/dist/checkbox/Checkbox.stories.js +0 -144
  364. package/dist/checkbox/readme.md +0 -116
  365. package/dist/chip/Chip.js +0 -173
  366. package/dist/common/OpenSans.css +0 -81
  367. package/dist/common/RequiredComponent.js +0 -46
  368. package/dist/common/services/example-service.js +0 -10
  369. package/dist/common/services/example-service.test.js +0 -12
  370. package/dist/common/utils.js +0 -42
  371. package/dist/common/variables.js +0 -438
  372. package/dist/date/Date.js +0 -356
  373. package/dist/date/Date.stories.js +0 -205
  374. package/dist/date/calendar.svg +0 -1
  375. package/dist/date/calendar_dark.svg +0 -1
  376. package/dist/date/readme.md +0 -73
  377. package/dist/dialog/Dialog.js +0 -197
  378. package/dist/dialog/Dialog.stories.js +0 -217
  379. package/dist/dialog/readme.md +0 -32
  380. package/dist/dropdown/Dropdown.js +0 -416
  381. package/dist/dropdown/Dropdown.stories.js +0 -249
  382. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  383. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  384. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  385. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  386. package/dist/dropdown/readme.md +0 -69
  387. package/dist/footer/Footer.js +0 -346
  388. package/dist/footer/Footer.stories.js +0 -94
  389. package/dist/footer/dxc_logo_wht.png +0 -0
  390. package/dist/footer/readme.md +0 -41
  391. package/dist/header/Header.js +0 -360
  392. package/dist/header/Header.stories.js +0 -176
  393. package/dist/header/close_icon.svg +0 -1
  394. package/dist/header/dxc_logo_black.png +0 -0
  395. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  396. package/dist/header/dxc_logo_white.png +0 -0
  397. package/dist/header/hamb_menu_black.svg +0 -1
  398. package/dist/header/hamb_menu_white.svg +0 -1
  399. package/dist/header/readme.md +0 -33
  400. package/dist/heading/Heading.js +0 -153
  401. package/dist/input-text/InputText.js +0 -519
  402. package/dist/input-text/InputText.stories.js +0 -209
  403. package/dist/input-text/error.svg +0 -1
  404. package/dist/input-text/readme.md +0 -91
  405. package/dist/layout/ApplicationLayout.js +0 -320
  406. package/dist/layout/SideNav.js +0 -67
  407. package/dist/layout/facebook.svg +0 -45
  408. package/dist/layout/linkedin.svg +0 -50
  409. package/dist/layout/twitter.svg +0 -53
  410. package/dist/link/Link.js +0 -136
  411. package/dist/link/readme.md +0 -51
  412. package/dist/paginator/Paginator.js +0 -196
  413. package/dist/paginator/images/next.svg +0 -3
  414. package/dist/paginator/images/nextPage.svg +0 -3
  415. package/dist/paginator/images/previous.svg +0 -3
  416. package/dist/paginator/images/previousPage.svg +0 -3
  417. package/dist/paginator/readme.md +0 -50
  418. package/dist/progress-bar/ProgressBar.js +0 -185
  419. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  420. package/dist/progress-bar/readme.md +0 -63
  421. package/dist/radio/Radio.js +0 -195
  422. package/dist/radio/Radio.stories.js +0 -166
  423. package/dist/radio/readme.md +0 -70
  424. package/dist/resultsetTable/ResultsetTable.js +0 -333
  425. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  426. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  427. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  428. package/dist/select/Select.js +0 -451
  429. package/dist/select/Select.stories.js +0 -235
  430. package/dist/select/readme.md +0 -72
  431. package/dist/sidenav/Sidenav.js +0 -222
  432. package/dist/sidenav/arrow_icon.svg +0 -3
  433. package/dist/slider/Slider.js +0 -258
  434. package/dist/slider/Slider.stories.js +0 -241
  435. package/dist/slider/readme.md +0 -64
  436. package/dist/spinner/Spinner.js +0 -193
  437. package/dist/spinner/Spinner.stories.js +0 -183
  438. package/dist/spinner/readme.md +0 -65
  439. package/dist/switch/Switch.js +0 -199
  440. package/dist/switch/Switch.stories.js +0 -134
  441. package/dist/switch/readme.md +0 -133
  442. package/dist/table/Table.js +0 -93
  443. package/dist/tabs/Tabs.js +0 -172
  444. package/dist/tabs/Tabs.stories.js +0 -130
  445. package/dist/tabs/readme.md +0 -78
  446. package/dist/tabs-for-sections/TabsForSections.js +0 -107
  447. package/dist/tabs-for-sections/readme.md +0 -78
  448. package/dist/tag/Tag.js +0 -217
  449. package/dist/textarea/Textarea.js +0 -227
  450. package/dist/toggle/Toggle.js +0 -223
  451. package/dist/toggle/Toggle.stories.js +0 -297
  452. package/dist/toggle/readme.md +0 -80
  453. package/dist/toggle-group/ToggleGroup.js +0 -214
  454. package/dist/toggle-group/readme.md +0 -82
  455. package/dist/upload/Upload.js +0 -200
  456. package/dist/upload/Upload.stories.js +0 -72
  457. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -122
  458. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  459. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  460. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -279
  461. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  462. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  463. package/dist/upload/file-upload/FileToUpload.js +0 -158
  464. package/dist/upload/file-upload/audio-icon.svg +0 -4
  465. package/dist/upload/file-upload/close.svg +0 -4
  466. package/dist/upload/file-upload/file-icon.svg +0 -4
  467. package/dist/upload/file-upload/video-icon.svg +0 -4
  468. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  469. package/dist/upload/readme.md +0 -37
  470. package/dist/upload/transaction/Transaction.js +0 -155
  471. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  472. package/dist/upload/transaction/audio-icon.svg +0 -4
  473. package/dist/upload/transaction/error-icon.svg +0 -4
  474. package/dist/upload/transaction/file-icon-err.svg +0 -4
  475. package/dist/upload/transaction/file-icon.svg +0 -4
  476. package/dist/upload/transaction/image-icon-err.svg +0 -4
  477. package/dist/upload/transaction/image-icon.svg +0 -4
  478. package/dist/upload/transaction/success-icon.svg +0 -4
  479. package/dist/upload/transaction/video-icon-err.svg +0 -4
  480. package/dist/upload/transaction/video-icon.svg +0 -4
  481. package/dist/upload/transactions/Transactions.js +0 -120
  482. package/dist/wizard/Wizard.js +0 -327
  483. package/dist/wizard/invalid_icon.svg +0 -6
  484. package/dist/wizard/valid_icon.svg +0 -6
  485. package/dist/wizard/validation-wrong.svg +0 -6
  486. package/test/Accordion.test.js +0 -33
  487. package/test/Alert.test.js +0 -53
  488. package/test/Box.test.js +0 -10
  489. package/test/Button.test.js +0 -18
  490. package/test/Card.test.js +0 -30
  491. package/test/Checkbox.test.js +0 -45
  492. package/test/Chip.test.js +0 -25
  493. package/test/Date.test.js +0 -393
  494. package/test/Dialog.test.js +0 -23
  495. package/test/Dropdown.test.js +0 -130
  496. package/test/Footer.test.js +0 -99
  497. package/test/Header.test.js +0 -39
  498. package/test/Heading.test.js +0 -35
  499. package/test/InputText.test.js +0 -236
  500. package/test/Link.test.js +0 -25
  501. package/test/Paginator.test.js +0 -165
  502. package/test/ProgressBar.test.js +0 -35
  503. package/test/Radio.test.js +0 -37
  504. package/test/ResultsetTable.test.js +0 -282
  505. package/test/Select.test.js +0 -191
  506. package/test/Sidenav.test.js +0 -87
  507. package/test/Slider.test.js +0 -65
  508. package/test/Spinner.test.js +0 -27
  509. package/test/Switch.test.js +0 -45
  510. package/test/Table.test.js +0 -36
  511. package/test/Tabs.test.js +0 -88
  512. package/test/TabsForSections.test.js +0 -34
  513. package/test/Tag.test.js +0 -32
  514. package/test/TextArea.test.js +0 -52
  515. package/test/Toggle.test.js +0 -43
  516. package/test/ToggleGroup.test.js +0 -81
  517. package/test/Upload.test.js +0 -60
  518. package/test/Wizard.test.js +0 -130
  519. package/test/mocks/pngMock.js +0 -1
  520. package/test/mocks/svgMock.js +0 -1
  521. /package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  522. /package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  523. /package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  524. /package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  525. /package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  526. /package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  527. /package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  528. /package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  529. /package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  530. /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,121 @@
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
+ return Array.prototype.slice.call(radixPortals).some(function (portal) {
43
+ return portal.contains(activeElement);
44
+ });
45
+ };
46
+
47
+ /**
48
+ * Custom hook that returns an array of focusable elements inside a container.
49
+ * @param ref: React.MutableRefObject<HTMLDivElement>
50
+ * @returns
51
+ */
52
+ var useFocusableElements = function useFocusableElements(ref) {
53
+ var _useState = (0, _react.useState)(),
54
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
55
+ focusableElements = _useState2[0],
56
+ setFocusableElements = _useState2[1];
57
+ (0, _react.useEffect)(function () {
58
+ if (ref.current != null) {
59
+ setFocusableElements(getFocusableElements(ref.current));
60
+ var observer = new MutationObserver(function () {
61
+ setFocusableElements(getFocusableElements(ref.current));
62
+ });
63
+ observer.observe(ref.current, {
64
+ childList: true,
65
+ subtree: true,
66
+ attributes: true
67
+ });
68
+ return function () {
69
+ observer.disconnect();
70
+ };
71
+ }
72
+ }, []);
73
+ return focusableElements;
74
+ };
75
+
76
+ /**
77
+ * Traps the focus inside the children of the component. It will focus the first focusable element when the component is mounted.
78
+ * When the focus is on the last focusable element and the user tries to focus the next element, it will focus the first element.
79
+ * When the focus is on the first focusable element and the user tries to focus the previous element, it will focus the last element.
80
+ * The focus can't be moved outside the children unless the children are removed from the DOM (for example, a Dialog, a Modal, etc).
81
+ * @param children: React.ReactNode
82
+ * @returns
83
+ */
84
+ var FocusLock = function FocusLock(_ref) {
85
+ var children = _ref.children;
86
+ var childrenContainerRef = (0, _react.useRef)();
87
+ var focusableElements = useFocusableElements(childrenContainerRef);
88
+ var focusFirst = (0, _react.useCallback)(function () {
89
+ var _childrenContainerRef;
90
+ 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) {
91
+ return attemptFocus(element);
92
+ });
93
+ }, [focusableElements]);
94
+ var focusLast = function focusLast() {
95
+ focusableElements.reverse().some(function (element) {
96
+ return attemptFocus(element);
97
+ });
98
+ };
99
+ var focusLock = function focusLock(event) {
100
+ if (event.key === "Tab") focusableElements.length === 0 && event.preventDefault();
101
+ };
102
+ (0, _react.useEffect)(function () {
103
+ var _childrenContainerRef2;
104
+ if (!((_childrenContainerRef2 = childrenContainerRef.current) !== null && _childrenContainerRef2 !== void 0 && _childrenContainerRef2.contains(document.activeElement)) && !radixPortalContains(document.activeElement)) focusFirst();
105
+ }, [focusFirst]);
106
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("div", {
107
+ onFocus: focusLast,
108
+ tabIndex: 0
109
+ }), /*#__PURE__*/_react["default"].createElement("div", {
110
+ onKeyDown: focusLock,
111
+ ref: childrenContainerRef,
112
+ tabIndex: (focusableElements === null || focusableElements === void 0 ? void 0 : focusableElements.length) === 0 ? 0 : -1,
113
+ style: {
114
+ outline: "none"
115
+ }
116
+ }, children), /*#__PURE__*/_react["default"].createElement("div", {
117
+ onFocus: focusFirst,
118
+ tabIndex: 0
119
+ }));
120
+ };
121
+ 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;