@dxc-technology/halstack-react 0.0.0-1fafc5b → 0.0.0-1fb45b6

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 (532) hide show
  1. package/BackgroundColorContext.d.ts +1 -0
  2. package/BackgroundColorContext.js +30 -0
  3. package/HalstackContext.d.ts +1221 -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 +161 -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 +1367 -0
  84. package/common/variables.js +1239 -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 +334 -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 +127 -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 +67 -0
  197. package/number-input/NumberInput.stories.tsx +131 -0
  198. package/number-input/NumberInput.test.js +830 -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 +4 -0
  243. package/resultset-table/ResultsetTable.js +165 -0
  244. package/resultset-table/ResultsetTable.stories.tsx +319 -0
  245. package/resultset-table/ResultsetTable.test.js +305 -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/Table.d.ts +4 -0
  292. package/table/Table.js +111 -0
  293. package/table/Table.stories.tsx +454 -0
  294. package/table/Table.test.js +21 -0
  295. package/table/types.d.ts +27 -0
  296. package/table/types.js +5 -0
  297. package/tabs/Tab.d.ts +4 -0
  298. package/tabs/Tab.js +116 -0
  299. package/tabs/Tabs.d.ts +4 -0
  300. package/tabs/Tabs.js +384 -0
  301. package/tabs/Tabs.stories.tsx +226 -0
  302. package/tabs/Tabs.test.js +294 -0
  303. package/tabs/types.d.ts +92 -0
  304. package/tabs/types.js +5 -0
  305. package/tag/Tag.d.ts +4 -0
  306. package/tag/Tag.js +151 -0
  307. package/tag/Tag.stories.tsx +155 -0
  308. package/tag/Tag.test.js +49 -0
  309. package/tag/types.d.ts +69 -0
  310. package/tag/types.js +5 -0
  311. package/text-input/Icons.d.ts +8 -0
  312. package/text-input/Icons.js +56 -0
  313. package/text-input/Suggestion.d.ts +4 -0
  314. package/text-input/Suggestion.js +67 -0
  315. package/text-input/Suggestions.d.ts +4 -0
  316. package/text-input/Suggestions.js +84 -0
  317. package/text-input/TextInput.d.ts +4 -0
  318. package/text-input/TextInput.js +572 -0
  319. package/text-input/TextInput.stories.tsx +465 -0
  320. package/text-input/TextInput.test.js +1739 -0
  321. package/text-input/types.d.ts +205 -0
  322. package/text-input/types.js +5 -0
  323. package/textarea/Textarea.d.ts +4 -0
  324. package/textarea/Textarea.js +234 -0
  325. package/textarea/Textarea.stories.tsx +174 -0
  326. package/textarea/Textarea.test.js +406 -0
  327. package/textarea/types.d.ts +141 -0
  328. package/textarea/types.js +5 -0
  329. package/toggle-group/ToggleGroup.d.ts +4 -0
  330. package/toggle-group/ToggleGroup.js +201 -0
  331. package/toggle-group/ToggleGroup.stories.tsx +218 -0
  332. package/toggle-group/ToggleGroup.test.js +137 -0
  333. package/toggle-group/types.d.ts +114 -0
  334. package/toggle-group/types.js +5 -0
  335. package/typography/Typography.d.ts +4 -0
  336. package/typography/Typography.js +23 -0
  337. package/typography/Typography.stories.tsx +198 -0
  338. package/typography/types.d.ts +18 -0
  339. package/typography/types.js +5 -0
  340. package/useTheme.d.ts +1120 -0
  341. package/useTheme.js +15 -0
  342. package/useTranslatedLabels.d.ts +85 -0
  343. package/useTranslatedLabels.js +14 -0
  344. package/utils/BaseTypography.d.ts +21 -0
  345. package/utils/BaseTypography.js +94 -0
  346. package/utils/FocusLock.d.ts +13 -0
  347. package/utils/FocusLock.js +124 -0
  348. package/wizard/Wizard.d.ts +4 -0
  349. package/wizard/Wizard.js +250 -0
  350. package/wizard/Wizard.stories.tsx +253 -0
  351. package/wizard/Wizard.test.js +114 -0
  352. package/wizard/types.d.ts +64 -0
  353. package/wizard/types.js +5 -0
  354. package/babel.config.js +0 -4
  355. package/dist/ThemeContext.js +0 -15
  356. package/dist/accordion/Accordion.js +0 -242
  357. package/dist/accordion/Accordion.stories.js +0 -207
  358. package/dist/accordion/readme.md +0 -96
  359. package/dist/alert/Alert.js +0 -304
  360. package/dist/alert/Alert.stories.js +0 -158
  361. package/dist/alert/close.svg +0 -4
  362. package/dist/alert/error.svg +0 -4
  363. package/dist/alert/info.svg +0 -4
  364. package/dist/alert/readme.md +0 -43
  365. package/dist/alert/success.svg +0 -4
  366. package/dist/alert/warning.svg +0 -4
  367. package/dist/box/Box.js +0 -148
  368. package/dist/button/Button.js +0 -181
  369. package/dist/button/Button.stories.js +0 -224
  370. package/dist/button/readme.md +0 -93
  371. package/dist/card/Card.js +0 -217
  372. package/dist/checkbox/Checkbox.js +0 -240
  373. package/dist/checkbox/Checkbox.stories.js +0 -144
  374. package/dist/checkbox/readme.md +0 -116
  375. package/dist/chip/Chip.js +0 -173
  376. package/dist/common/OpenSans.css +0 -81
  377. package/dist/common/RequiredComponent.js +0 -46
  378. package/dist/common/services/example-service.js +0 -10
  379. package/dist/common/services/example-service.test.js +0 -12
  380. package/dist/common/utils.js +0 -42
  381. package/dist/common/variables.js +0 -400
  382. package/dist/date/Date.js +0 -357
  383. package/dist/date/Date.stories.js +0 -205
  384. package/dist/date/calendar.svg +0 -1
  385. package/dist/date/calendar_dark.svg +0 -1
  386. package/dist/date/readme.md +0 -73
  387. package/dist/dialog/Dialog.js +0 -197
  388. package/dist/dialog/Dialog.stories.js +0 -217
  389. package/dist/dialog/readme.md +0 -32
  390. package/dist/dropdown/Dropdown.js +0 -424
  391. package/dist/dropdown/Dropdown.stories.js +0 -249
  392. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  393. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  394. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  395. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  396. package/dist/dropdown/readme.md +0 -69
  397. package/dist/footer/Footer.js +0 -346
  398. package/dist/footer/Footer.stories.js +0 -94
  399. package/dist/footer/dxc_logo_wht.png +0 -0
  400. package/dist/footer/readme.md +0 -41
  401. package/dist/header/Header.js +0 -372
  402. package/dist/header/Header.stories.js +0 -176
  403. package/dist/header/close_icon.svg +0 -1
  404. package/dist/header/dxc_logo_black.png +0 -0
  405. package/dist/header/dxc_logo_white.png +0 -0
  406. package/dist/header/hamb_menu_black.svg +0 -1
  407. package/dist/header/hamb_menu_white.svg +0 -1
  408. package/dist/header/readme.md +0 -33
  409. package/dist/heading/Heading.js +0 -153
  410. package/dist/input-text/InputText.js +0 -519
  411. package/dist/input-text/InputText.stories.js +0 -209
  412. package/dist/input-text/error.svg +0 -1
  413. package/dist/input-text/readme.md +0 -91
  414. package/dist/link/Link.js +0 -136
  415. package/dist/link/readme.md +0 -51
  416. package/dist/main.js +0 -263
  417. package/dist/paginator/Paginator.js +0 -196
  418. package/dist/paginator/images/next.svg +0 -3
  419. package/dist/paginator/images/nextPage.svg +0 -3
  420. package/dist/paginator/images/previous.svg +0 -3
  421. package/dist/paginator/images/previousPage.svg +0 -3
  422. package/dist/paginator/readme.md +0 -50
  423. package/dist/progress-bar/ProgressBar.js +0 -185
  424. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  425. package/dist/progress-bar/readme.md +0 -63
  426. package/dist/radio/Radio.js +0 -195
  427. package/dist/radio/Radio.stories.js +0 -166
  428. package/dist/radio/readme.md +0 -70
  429. package/dist/resultsetTable/ResultsetTable.js +0 -333
  430. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  431. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  432. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  433. package/dist/select/Select.js +0 -451
  434. package/dist/select/Select.stories.js +0 -235
  435. package/dist/select/readme.md +0 -72
  436. package/dist/sidenav/Sidenav.js +0 -236
  437. package/dist/sidenav/arrow_icon.svg +0 -3
  438. package/dist/slider/Slider.js +0 -258
  439. package/dist/slider/Slider.stories.js +0 -241
  440. package/dist/slider/readme.md +0 -64
  441. package/dist/spinner/Spinner.js +0 -193
  442. package/dist/spinner/Spinner.stories.js +0 -183
  443. package/dist/spinner/readme.md +0 -65
  444. package/dist/switch/Switch.js +0 -199
  445. package/dist/switch/Switch.stories.js +0 -134
  446. package/dist/switch/readme.md +0 -133
  447. package/dist/table/Table.js +0 -87
  448. package/dist/tabs/Tabs.js +0 -172
  449. package/dist/tabs/Tabs.stories.js +0 -130
  450. package/dist/tabs/readme.md +0 -78
  451. package/dist/tabs-for-sections/TabsForSections.js +0 -107
  452. package/dist/tabs-for-sections/readme.md +0 -78
  453. package/dist/tag/Tag.js +0 -217
  454. package/dist/textarea/Textarea.js +0 -227
  455. package/dist/toggle/Toggle.js +0 -223
  456. package/dist/toggle/Toggle.stories.js +0 -297
  457. package/dist/toggle/readme.md +0 -80
  458. package/dist/upload/Upload.js +0 -200
  459. package/dist/upload/Upload.stories.js +0 -72
  460. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -122
  461. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  462. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  463. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -279
  464. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  465. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  466. package/dist/upload/file-upload/FileToUpload.js +0 -158
  467. package/dist/upload/file-upload/audio-icon.svg +0 -4
  468. package/dist/upload/file-upload/close.svg +0 -4
  469. package/dist/upload/file-upload/file-icon.svg +0 -4
  470. package/dist/upload/file-upload/video-icon.svg +0 -4
  471. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  472. package/dist/upload/readme.md +0 -37
  473. package/dist/upload/transaction/Transaction.js +0 -155
  474. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  475. package/dist/upload/transaction/audio-icon.svg +0 -4
  476. package/dist/upload/transaction/error-icon.svg +0 -4
  477. package/dist/upload/transaction/file-icon-err.svg +0 -4
  478. package/dist/upload/transaction/file-icon.svg +0 -4
  479. package/dist/upload/transaction/image-icon-err.svg +0 -4
  480. package/dist/upload/transaction/image-icon.svg +0 -4
  481. package/dist/upload/transaction/success-icon.svg +0 -4
  482. package/dist/upload/transaction/video-icon-err.svg +0 -4
  483. package/dist/upload/transaction/video-icon.svg +0 -4
  484. package/dist/upload/transactions/Transactions.js +0 -120
  485. package/dist/wizard/Wizard.js +0 -327
  486. package/dist/wizard/invalid_icon.svg +0 -6
  487. package/dist/wizard/valid_icon.svg +0 -6
  488. package/dist/wizard/validation-wrong.svg +0 -6
  489. package/test/Accordion.test.js +0 -33
  490. package/test/Alert.test.js +0 -53
  491. package/test/Box.test.js +0 -10
  492. package/test/Button.test.js +0 -18
  493. package/test/Card.test.js +0 -30
  494. package/test/Checkbox.test.js +0 -45
  495. package/test/Chip.test.js +0 -25
  496. package/test/Date.test.js +0 -393
  497. package/test/Dialog.test.js +0 -23
  498. package/test/Dropdown.test.js +0 -130
  499. package/test/Footer.test.js +0 -99
  500. package/test/Header.test.js +0 -39
  501. package/test/Heading.test.js +0 -35
  502. package/test/InputText.test.js +0 -236
  503. package/test/Link.test.js +0 -25
  504. package/test/Paginator.test.js +0 -165
  505. package/test/ProgressBar.test.js +0 -35
  506. package/test/Radio.test.js +0 -37
  507. package/test/ResultsetTable.test.js +0 -282
  508. package/test/Select.test.js +0 -191
  509. package/test/Sidenav.test.js +0 -87
  510. package/test/Slider.test.js +0 -65
  511. package/test/Spinner.test.js +0 -27
  512. package/test/Switch.test.js +0 -45
  513. package/test/Table.test.js +0 -36
  514. package/test/Tabs.test.js +0 -88
  515. package/test/TabsForSections.test.js +0 -34
  516. package/test/Tag.test.js +0 -32
  517. package/test/TextArea.test.js +0 -52
  518. package/test/Toggle.test.js +0 -43
  519. package/test/Upload.test.js +0 -60
  520. package/test/Wizard.test.js +0 -130
  521. package/test/mocks/pngMock.js +0 -1
  522. package/test/mocks/svgMock.js +0 -1
  523. /package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  524. /package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  525. /package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  526. /package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  527. /package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  528. /package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  529. /package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  530. /package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  531. /package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  532. /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;