@dxc-technology/halstack-react 0.0.0-faae6b7 → 0.0.0-fb01aa1

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 (479) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +47 -0
  3. package/HalstackContext.d.ts +12 -0
  4. package/HalstackContext.js +294 -0
  5. package/accordion/Accordion.d.ts +4 -0
  6. package/accordion/Accordion.js +245 -0
  7. package/accordion/Accordion.stories.tsx +306 -0
  8. package/accordion/Accordion.test.js +71 -0
  9. package/accordion/types.d.ts +69 -0
  10. package/accordion/types.js +5 -0
  11. package/accordion-group/AccordionGroup.d.ts +7 -0
  12. package/accordion-group/AccordionGroup.js +149 -0
  13. package/accordion-group/AccordionGroup.stories.tsx +251 -0
  14. package/accordion-group/AccordionGroup.test.js +126 -0
  15. package/accordion-group/types.d.ts +79 -0
  16. package/accordion-group/types.js +5 -0
  17. package/alert/Alert.d.ts +4 -0
  18. package/alert/Alert.js +293 -0
  19. package/alert/Alert.stories.tsx +170 -0
  20. package/alert/Alert.test.js +92 -0
  21. package/alert/types.d.ts +49 -0
  22. package/alert/types.js +5 -0
  23. package/badge/Badge.d.ts +4 -0
  24. package/badge/Badge.js +61 -0
  25. package/badge/types.d.ts +5 -0
  26. package/badge/types.js +5 -0
  27. package/bleed/Bleed.d.ts +3 -0
  28. package/bleed/Bleed.js +51 -0
  29. package/bleed/Bleed.stories.tsx +341 -0
  30. package/bleed/types.d.ts +37 -0
  31. package/bleed/types.js +5 -0
  32. package/box/Box.d.ts +4 -0
  33. package/box/Box.js +116 -0
  34. package/box/Box.stories.tsx +132 -0
  35. package/box/Box.test.js +18 -0
  36. package/box/types.d.ts +44 -0
  37. package/box/types.js +5 -0
  38. package/bulleted-list/BulletedList.d.ts +7 -0
  39. package/bulleted-list/BulletedList.js +123 -0
  40. package/bulleted-list/BulletedList.stories.tsx +200 -0
  41. package/bulleted-list/types.d.ts +11 -0
  42. package/bulleted-list/types.js +5 -0
  43. package/button/Button.d.ts +4 -0
  44. package/button/Button.js +156 -0
  45. package/button/Button.stories.tsx +283 -0
  46. package/button/Button.test.js +35 -0
  47. package/button/types.d.ts +53 -0
  48. package/button/types.js +5 -0
  49. package/card/Card.d.ts +4 -0
  50. package/card/Card.js +161 -0
  51. package/card/Card.stories.tsx +201 -0
  52. package/card/Card.test.js +50 -0
  53. package/card/ice-cream.jpg +0 -0
  54. package/card/types.d.ts +68 -0
  55. package/card/types.js +5 -0
  56. package/checkbox/Checkbox.d.ts +4 -0
  57. package/checkbox/Checkbox.js +250 -0
  58. package/checkbox/Checkbox.stories.tsx +208 -0
  59. package/checkbox/Checkbox.test.js +155 -0
  60. package/checkbox/types.d.ts +68 -0
  61. package/checkbox/types.js +5 -0
  62. package/chip/Chip.d.ts +4 -0
  63. package/chip/Chip.js +161 -0
  64. package/chip/Chip.stories.tsx +119 -0
  65. package/chip/Chip.test.js +56 -0
  66. package/chip/types.d.ts +45 -0
  67. package/chip/types.js +5 -0
  68. package/{dist/common → common}/OpenSans.css +0 -0
  69. package/common/RequiredComponent.js +32 -0
  70. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  71. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  72. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  73. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  74. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  75. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  76. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  77. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  78. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  79. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  80. package/{dist/common → common}/utils.js +0 -0
  81. package/common/variables.js +1508 -0
  82. package/date-input/DateInput.d.ts +4 -0
  83. package/date-input/DateInput.js +372 -0
  84. package/date-input/DateInput.stories.tsx +149 -0
  85. package/date-input/DateInput.test.js +543 -0
  86. package/date-input/types.d.ts +107 -0
  87. package/date-input/types.js +5 -0
  88. package/dialog/Dialog.d.ts +4 -0
  89. package/dialog/Dialog.js +162 -0
  90. package/dialog/Dialog.stories.tsx +267 -0
  91. package/dialog/Dialog.test.js +70 -0
  92. package/dialog/types.d.ts +44 -0
  93. package/dialog/types.js +5 -0
  94. package/dropdown/Dropdown.d.ts +4 -0
  95. package/dropdown/Dropdown.js +391 -0
  96. package/dropdown/Dropdown.stories.tsx +312 -0
  97. package/dropdown/Dropdown.test.js +585 -0
  98. package/dropdown/DropdownMenu.d.ts +4 -0
  99. package/dropdown/DropdownMenu.js +80 -0
  100. package/dropdown/DropdownMenuItem.d.ts +4 -0
  101. package/dropdown/DropdownMenuItem.js +92 -0
  102. package/dropdown/types.d.ts +100 -0
  103. package/dropdown/types.js +5 -0
  104. package/file-input/FileInput.d.ts +4 -0
  105. package/file-input/FileInput.js +551 -0
  106. package/file-input/FileInput.stories.tsx +535 -0
  107. package/file-input/FileInput.test.js +498 -0
  108. package/file-input/FileItem.d.ts +4 -0
  109. package/file-input/FileItem.js +161 -0
  110. package/file-input/types.d.ts +129 -0
  111. package/file-input/types.js +5 -0
  112. package/flex/Flex.d.ts +4 -0
  113. package/flex/Flex.js +69 -0
  114. package/flex/Flex.stories.tsx +103 -0
  115. package/flex/types.d.ts +32 -0
  116. package/flex/types.js +5 -0
  117. package/footer/Footer.d.ts +4 -0
  118. package/footer/Footer.js +185 -0
  119. package/footer/Footer.stories.tsx +137 -0
  120. package/footer/Footer.test.js +109 -0
  121. package/footer/Icons.d.ts +2 -0
  122. package/footer/Icons.js +77 -0
  123. package/footer/types.d.ts +66 -0
  124. package/footer/types.js +5 -0
  125. package/header/Header.d.ts +7 -0
  126. package/header/Header.js +305 -0
  127. package/header/Header.stories.tsx +172 -0
  128. package/header/Header.test.js +79 -0
  129. package/header/Icons.d.ts +2 -0
  130. package/header/Icons.js +34 -0
  131. package/header/types.d.ts +48 -0
  132. package/header/types.js +5 -0
  133. package/heading/Heading.d.ts +4 -0
  134. package/heading/Heading.js +159 -0
  135. package/heading/Heading.stories.tsx +54 -0
  136. package/heading/Heading.test.js +186 -0
  137. package/heading/types.d.ts +33 -0
  138. package/heading/types.js +5 -0
  139. package/inset/Inset.d.ts +3 -0
  140. package/inset/Inset.js +51 -0
  141. package/inset/Inset.stories.tsx +229 -0
  142. package/inset/types.d.ts +37 -0
  143. package/inset/types.js +5 -0
  144. package/layout/ApplicationLayout.d.ts +20 -0
  145. package/layout/ApplicationLayout.js +171 -0
  146. package/layout/ApplicationLayout.stories.tsx +162 -0
  147. package/layout/Icons.d.ts +5 -0
  148. package/layout/Icons.js +66 -0
  149. package/layout/SidenavContext.d.ts +5 -0
  150. package/layout/SidenavContext.js +19 -0
  151. package/layout/types.d.ts +42 -0
  152. package/layout/types.js +5 -0
  153. package/link/Link.d.ts +4 -0
  154. package/link/Link.js +136 -0
  155. package/link/Link.stories.tsx +193 -0
  156. package/link/Link.test.js +83 -0
  157. package/link/types.d.ts +54 -0
  158. package/link/types.js +5 -0
  159. package/main.d.ts +44 -0
  160. package/main.js +369 -0
  161. package/number-input/NumberInput.d.ts +4 -0
  162. package/number-input/NumberInput.js +76 -0
  163. package/number-input/NumberInput.stories.tsx +115 -0
  164. package/number-input/NumberInput.test.js +542 -0
  165. package/number-input/NumberInputContext.d.ts +4 -0
  166. package/{dist/ThemeContext.js → number-input/NumberInputContext.js} +6 -2
  167. package/number-input/numberInputContextTypes.d.ts +19 -0
  168. package/number-input/numberInputContextTypes.js +5 -0
  169. package/number-input/types.d.ts +124 -0
  170. package/number-input/types.js +5 -0
  171. package/package.json +55 -31
  172. package/paginator/Icons.js +66 -0
  173. package/paginator/Paginator.d.ts +4 -0
  174. package/paginator/Paginator.js +171 -0
  175. package/paginator/Paginator.stories.tsx +63 -0
  176. package/paginator/Paginator.test.js +308 -0
  177. package/paginator/types.d.ts +38 -0
  178. package/paginator/types.js +5 -0
  179. package/paragraph/Paragraph.d.ts +6 -0
  180. package/paragraph/Paragraph.js +38 -0
  181. package/paragraph/Paragraph.stories.tsx +44 -0
  182. package/password-input/PasswordInput.d.ts +4 -0
  183. package/password-input/PasswordInput.js +166 -0
  184. package/password-input/PasswordInput.stories.tsx +131 -0
  185. package/password-input/PasswordInput.test.js +181 -0
  186. package/password-input/types.d.ts +110 -0
  187. package/password-input/types.js +5 -0
  188. package/progress-bar/ProgressBar.d.ts +4 -0
  189. package/progress-bar/ProgressBar.js +176 -0
  190. package/progress-bar/ProgressBar.stories.jsx +60 -0
  191. package/progress-bar/ProgressBar.test.js +110 -0
  192. package/progress-bar/types.d.ts +36 -0
  193. package/progress-bar/types.js +5 -0
  194. package/quick-nav/QuickNav.d.ts +4 -0
  195. package/quick-nav/QuickNav.js +117 -0
  196. package/quick-nav/QuickNav.stories.tsx +342 -0
  197. package/quick-nav/types.d.ts +21 -0
  198. package/quick-nav/types.js +5 -0
  199. package/radio-group/Radio.d.ts +4 -0
  200. package/radio-group/Radio.js +156 -0
  201. package/radio-group/RadioGroup.d.ts +4 -0
  202. package/radio-group/RadioGroup.js +283 -0
  203. package/radio-group/RadioGroup.stories.tsx +101 -0
  204. package/radio-group/RadioGroup.test.js +722 -0
  205. package/radio-group/types.d.ts +114 -0
  206. package/radio-group/types.js +5 -0
  207. package/resultsetTable/ResultsetTable.d.ts +4 -0
  208. package/resultsetTable/ResultsetTable.js +252 -0
  209. package/resultsetTable/ResultsetTable.stories.tsx +275 -0
  210. package/resultsetTable/ResultsetTable.test.js +348 -0
  211. package/resultsetTable/types.d.ts +67 -0
  212. package/resultsetTable/types.js +5 -0
  213. package/select/Icons.d.ts +10 -0
  214. package/select/Icons.js +93 -0
  215. package/select/Listbox.d.ts +4 -0
  216. package/select/Listbox.js +198 -0
  217. package/select/Option.d.ts +4 -0
  218. package/select/Option.js +110 -0
  219. package/select/Select.d.ts +4 -0
  220. package/select/Select.js +645 -0
  221. package/select/Select.stories.tsx +627 -0
  222. package/select/Select.test.js +2233 -0
  223. package/select/types.d.ts +210 -0
  224. package/select/types.js +5 -0
  225. package/sidenav/Sidenav.d.ts +10 -0
  226. package/sidenav/Sidenav.js +268 -0
  227. package/sidenav/Sidenav.stories.tsx +180 -0
  228. package/sidenav/Sidenav.test.js +44 -0
  229. package/sidenav/types.d.ts +73 -0
  230. package/sidenav/types.js +5 -0
  231. package/slider/Slider.d.ts +4 -0
  232. package/slider/Slider.js +343 -0
  233. package/slider/Slider.stories.tsx +183 -0
  234. package/slider/Slider.test.js +250 -0
  235. package/slider/types.d.ts +86 -0
  236. package/slider/types.js +5 -0
  237. package/spinner/Spinner.d.ts +4 -0
  238. package/spinner/Spinner.js +250 -0
  239. package/spinner/Spinner.stories.jsx +103 -0
  240. package/spinner/Spinner.test.js +64 -0
  241. package/spinner/types.d.ts +32 -0
  242. package/spinner/types.js +5 -0
  243. package/switch/Switch.d.ts +4 -0
  244. package/switch/Switch.js +262 -0
  245. package/switch/Switch.stories.tsx +138 -0
  246. package/switch/Switch.test.js +225 -0
  247. package/switch/types.d.ts +66 -0
  248. package/switch/types.js +5 -0
  249. package/table/Table.d.ts +4 -0
  250. package/table/Table.js +118 -0
  251. package/table/Table.stories.jsx +277 -0
  252. package/table/Table.test.js +26 -0
  253. package/table/types.d.ts +21 -0
  254. package/table/types.js +5 -0
  255. package/tabs/Tab.d.ts +4 -0
  256. package/tabs/Tab.js +135 -0
  257. package/tabs/Tabs.d.ts +4 -0
  258. package/tabs/Tabs.js +467 -0
  259. package/tabs/Tabs.stories.tsx +186 -0
  260. package/tabs/Tabs.test.js +351 -0
  261. package/tabs/types.d.ts +92 -0
  262. package/tabs/types.js +5 -0
  263. package/tabs-nav/NavTabs.d.ts +8 -0
  264. package/tabs-nav/NavTabs.js +125 -0
  265. package/tabs-nav/NavTabs.stories.tsx +170 -0
  266. package/tabs-nav/NavTabs.test.js +82 -0
  267. package/tabs-nav/Tab.d.ts +4 -0
  268. package/tabs-nav/Tab.js +130 -0
  269. package/tabs-nav/types.d.ts +53 -0
  270. package/tabs-nav/types.js +5 -0
  271. package/tag/Tag.d.ts +4 -0
  272. package/tag/Tag.js +183 -0
  273. package/tag/Tag.stories.tsx +142 -0
  274. package/tag/Tag.test.js +60 -0
  275. package/tag/types.d.ts +69 -0
  276. package/tag/types.js +5 -0
  277. package/text-input/Icons.d.ts +8 -0
  278. package/text-input/Icons.js +60 -0
  279. package/text-input/Suggestion.d.ts +4 -0
  280. package/text-input/Suggestion.js +57 -0
  281. package/text-input/Suggestions.d.ts +4 -0
  282. package/text-input/Suggestions.js +134 -0
  283. package/text-input/TextInput.d.ts +4 -0
  284. package/text-input/TextInput.js +677 -0
  285. package/text-input/TextInput.stories.tsx +481 -0
  286. package/text-input/TextInput.test.js +1624 -0
  287. package/text-input/types.d.ts +197 -0
  288. package/text-input/types.js +5 -0
  289. package/textarea/Textarea.d.ts +4 -0
  290. package/textarea/Textarea.js +277 -0
  291. package/textarea/Textarea.stories.jsx +157 -0
  292. package/textarea/Textarea.test.js +437 -0
  293. package/textarea/types.d.ts +137 -0
  294. package/textarea/types.js +5 -0
  295. package/toggle-group/ToggleGroup.d.ts +4 -0
  296. package/toggle-group/ToggleGroup.js +215 -0
  297. package/toggle-group/ToggleGroup.stories.tsx +173 -0
  298. package/toggle-group/ToggleGroup.test.js +156 -0
  299. package/toggle-group/types.d.ts +105 -0
  300. package/toggle-group/types.js +5 -0
  301. package/typography/Typography.d.ts +4 -0
  302. package/typography/Typography.js +131 -0
  303. package/typography/Typography.stories.tsx +198 -0
  304. package/typography/types.d.ts +18 -0
  305. package/typography/types.js +5 -0
  306. package/useTheme.d.ts +2 -0
  307. package/useTheme.js +22 -0
  308. package/useTranslatedLabels.d.ts +2 -0
  309. package/useTranslatedLabels.js +20 -0
  310. package/wizard/Wizard.d.ts +4 -0
  311. package/wizard/Wizard.js +285 -0
  312. package/wizard/Wizard.stories.tsx +233 -0
  313. package/wizard/Wizard.test.js +141 -0
  314. package/wizard/types.d.ts +65 -0
  315. package/wizard/types.js +5 -0
  316. package/babel.config.js +0 -4
  317. package/dist/accordion/Accordion.js +0 -264
  318. package/dist/accordion/Accordion.stories.js +0 -207
  319. package/dist/accordion/readme.md +0 -96
  320. package/dist/alert/Alert.js +0 -302
  321. package/dist/alert/Alert.stories.js +0 -158
  322. package/dist/alert/close.svg +0 -4
  323. package/dist/alert/error.svg +0 -4
  324. package/dist/alert/info.svg +0 -4
  325. package/dist/alert/readme.md +0 -43
  326. package/dist/alert/success.svg +0 -4
  327. package/dist/alert/warning.svg +0 -4
  328. package/dist/box/Box.js +0 -136
  329. package/dist/button/Button.js +0 -187
  330. package/dist/button/Button.stories.js +0 -224
  331. package/dist/button/readme.md +0 -93
  332. package/dist/card/Card.js +0 -246
  333. package/dist/checkbox/Checkbox.js +0 -221
  334. package/dist/checkbox/Checkbox.stories.js +0 -144
  335. package/dist/checkbox/readme.md +0 -116
  336. package/dist/common/RequiredComponent.js +0 -50
  337. package/dist/common/services/example-service.js +0 -10
  338. package/dist/common/services/example-service.test.js +0 -12
  339. package/dist/common/variables.js +0 -77
  340. package/dist/date/Date.js +0 -345
  341. package/dist/date/Date.stories.js +0 -205
  342. package/dist/date/calendar.svg +0 -1
  343. package/dist/date/calendar_dark.svg +0 -1
  344. package/dist/date/readme.md +0 -73
  345. package/dist/dialog/Dialog.js +0 -164
  346. package/dist/dialog/Dialog.stories.js +0 -217
  347. package/dist/dialog/readme.md +0 -32
  348. package/dist/dropdown/Dropdown.js +0 -412
  349. package/dist/dropdown/Dropdown.stories.js +0 -249
  350. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  351. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  352. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  353. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  354. package/dist/dropdown/readme.md +0 -69
  355. package/dist/footer/Footer.js +0 -341
  356. package/dist/footer/Footer.stories.js +0 -94
  357. package/dist/footer/dxc_logo_wht.png +0 -0
  358. package/dist/footer/readme.md +0 -41
  359. package/dist/header/Header.js +0 -343
  360. package/dist/header/Header.stories.js +0 -176
  361. package/dist/header/close_icon.svg +0 -1
  362. package/dist/header/dxc_logo_black.png +0 -0
  363. package/dist/header/dxc_logo_white.png +0 -0
  364. package/dist/header/hamb_menu_black.svg +0 -1
  365. package/dist/header/hamb_menu_white.svg +0 -1
  366. package/dist/header/readme.md +0 -33
  367. package/dist/heading/Heading.js +0 -159
  368. package/dist/input-text/InputText.js +0 -510
  369. package/dist/input-text/InputText.stories.js +0 -209
  370. package/dist/input-text/error.svg +0 -1
  371. package/dist/input-text/readme.md +0 -91
  372. package/dist/link/Link.js +0 -129
  373. package/dist/link/readme.md +0 -51
  374. package/dist/main.js +0 -263
  375. package/dist/paginator/Paginator.js +0 -178
  376. package/dist/paginator/images/next.svg +0 -3
  377. package/dist/paginator/images/nextPage.svg +0 -3
  378. package/dist/paginator/images/previous.svg +0 -3
  379. package/dist/paginator/images/previousPage.svg +0 -3
  380. package/dist/paginator/readme.md +0 -50
  381. package/dist/progress-bar/ProgressBar.js +0 -189
  382. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  383. package/dist/progress-bar/readme.md +0 -63
  384. package/dist/radio/Radio.js +0 -204
  385. package/dist/radio/Radio.stories.js +0 -166
  386. package/dist/radio/readme.md +0 -70
  387. package/dist/resultsetTable/ResultsetTable.js +0 -334
  388. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  389. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  390. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  391. package/dist/select/Select.js +0 -425
  392. package/dist/select/Select.stories.js +0 -235
  393. package/dist/select/readme.md +0 -72
  394. package/dist/sidenav/Sidenav.js +0 -217
  395. package/dist/sidenav/arrow_icon.svg +0 -3
  396. package/dist/slider/Slider.js +0 -268
  397. package/dist/slider/Slider.stories.js +0 -241
  398. package/dist/slider/readme.md +0 -64
  399. package/dist/spinner/Spinner.js +0 -196
  400. package/dist/spinner/Spinner.stories.js +0 -183
  401. package/dist/spinner/readme.md +0 -65
  402. package/dist/switch/Switch.js +0 -219
  403. package/dist/switch/Switch.stories.js +0 -134
  404. package/dist/switch/readme.md +0 -133
  405. package/dist/table/Table.js +0 -84
  406. package/dist/tabs/Tabs.js +0 -183
  407. package/dist/tabs/Tabs.stories.js +0 -130
  408. package/dist/tabs/readme.md +0 -78
  409. package/dist/tabs-for-sections/TabsForSections.js +0 -107
  410. package/dist/tabs-for-sections/readme.md +0 -78
  411. package/dist/tag/Tag.js +0 -217
  412. package/dist/textarea/Textarea.js +0 -226
  413. package/dist/toggle/Toggle.js +0 -223
  414. package/dist/toggle/Toggle.stories.js +0 -297
  415. package/dist/toggle/readme.md +0 -80
  416. package/dist/upload/Upload.js +0 -200
  417. package/dist/upload/Upload.stories.js +0 -72
  418. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -125
  419. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  420. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  421. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -282
  422. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  423. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  424. package/dist/upload/file-upload/FileToUpload.js +0 -158
  425. package/dist/upload/file-upload/audio-icon.svg +0 -4
  426. package/dist/upload/file-upload/close.svg +0 -4
  427. package/dist/upload/file-upload/file-icon.svg +0 -4
  428. package/dist/upload/file-upload/video-icon.svg +0 -4
  429. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  430. package/dist/upload/readme.md +0 -37
  431. package/dist/upload/transaction/Transaction.js +0 -155
  432. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  433. package/dist/upload/transaction/audio-icon.svg +0 -4
  434. package/dist/upload/transaction/error-icon.svg +0 -4
  435. package/dist/upload/transaction/file-icon-err.svg +0 -4
  436. package/dist/upload/transaction/file-icon.svg +0 -4
  437. package/dist/upload/transaction/image-icon-err.svg +0 -4
  438. package/dist/upload/transaction/image-icon.svg +0 -4
  439. package/dist/upload/transaction/success-icon.svg +0 -4
  440. package/dist/upload/transaction/video-icon-err.svg +0 -4
  441. package/dist/upload/transaction/video-icon.svg +0 -4
  442. package/dist/upload/transactions/Transactions.js +0 -120
  443. package/dist/wizard/Wizard.js +0 -310
  444. package/dist/wizard/invalid_icon.svg +0 -6
  445. package/dist/wizard/valid_icon.svg +0 -6
  446. package/dist/wizard/validation-wrong.svg +0 -6
  447. package/test/Accordion.test.js +0 -33
  448. package/test/Alert.test.js +0 -53
  449. package/test/Box.test.js +0 -10
  450. package/test/Button.test.js +0 -18
  451. package/test/Card.test.js +0 -30
  452. package/test/Checkbox.test.js +0 -45
  453. package/test/Date.test.js +0 -393
  454. package/test/Dialog.test.js +0 -23
  455. package/test/Dropdown.test.js +0 -130
  456. package/test/Footer.test.js +0 -99
  457. package/test/Header.test.js +0 -39
  458. package/test/Heading.test.js +0 -35
  459. package/test/InputText.test.js +0 -236
  460. package/test/Link.test.js +0 -25
  461. package/test/Paginator.test.js +0 -165
  462. package/test/ProgressBar.test.js +0 -35
  463. package/test/Radio.test.js +0 -37
  464. package/test/ResultsetTable.test.js +0 -282
  465. package/test/Select.test.js +0 -191
  466. package/test/Sidenav.test.js +0 -87
  467. package/test/Slider.test.js +0 -65
  468. package/test/Spinner.test.js +0 -27
  469. package/test/Switch.test.js +0 -45
  470. package/test/Table.test.js +0 -36
  471. package/test/Tabs.test.js +0 -88
  472. package/test/TabsForSections.test.js +0 -34
  473. package/test/Tag.test.js +0 -32
  474. package/test/TextArea.test.js +0 -52
  475. package/test/Toggle.test.js +0 -43
  476. package/test/Upload.test.js +0 -60
  477. package/test/Wizard.test.js +0 -130
  478. package/test/mocks/pngMock.js +0 -1
  479. package/test/mocks/svgMock.js +0 -1
@@ -0,0 +1,342 @@
1
+ import React from "react";
2
+ import styled from "styled-components";
3
+ import DxcQuickNav from "./QuickNav";
4
+ import DxcHeading from "../heading/Heading";
5
+ import DxcParagraph from "../paragraph/Paragraph";
6
+ import Title from "../../.storybook/components/Title";
7
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
8
+
9
+ export default {
10
+ title: "QuickNav",
11
+ component: DxcQuickNav,
12
+ };
13
+
14
+ const defaultLinks = [
15
+ {
16
+ label: "Overview",
17
+ },
18
+ {
19
+ label: "Principles",
20
+ links: [{ label: "Color" }, { label: "Spacing" }, { label: "Typography" }],
21
+ },
22
+ {
23
+ label: "Components",
24
+ links: [
25
+ {
26
+ label: "Accordion",
27
+ },
28
+ {
29
+ label: "Button",
30
+ },
31
+ ],
32
+ },
33
+ ];
34
+
35
+ const links = [
36
+ {
37
+ label: "Overview",
38
+ links: [
39
+ {
40
+ label: "Introduction",
41
+ },
42
+ ],
43
+ },
44
+ {
45
+ label: "Components",
46
+ links: [
47
+ {
48
+ label: "Introduction",
49
+ },
50
+ {
51
+ label: "Accordion",
52
+ },
53
+ ],
54
+ },
55
+ {
56
+ label: "Principles very very very very very very very very long",
57
+ links: [
58
+ { label: "Color very very very very very very very very long" },
59
+ { label: "Spacingveryveryveryveryveryveryveryverylong" },
60
+ { label: "Typography" },
61
+ ],
62
+ },
63
+ {
64
+ label: "Componentsveryveryveryveryveryveryveryverylong",
65
+ links: [
66
+ {
67
+ label: "Accordion",
68
+ },
69
+ ],
70
+ },
71
+ ];
72
+
73
+ export const Chromatic = () => (
74
+ <>
75
+ <ExampleContainer>
76
+ <Title title="Default" level={4} />
77
+ <QuickNavContainer>
78
+ <DxcQuickNav links={defaultLinks} />
79
+ </QuickNavContainer>
80
+ </ExampleContainer>
81
+ <ExampleContainer>
82
+ <Title title="Text overflow" level={4} />
83
+ <QuickNavContainer>
84
+ <DxcQuickNav links={links} />
85
+ </QuickNavContainer>
86
+ </ExampleContainer>
87
+ <ExampleContainer pseudoState="pseudo-hover">
88
+ <Title title="Link hovered" level={4} />
89
+ <QuickNavContainer>
90
+ <DxcQuickNav links={links} />
91
+ </QuickNavContainer>
92
+ </ExampleContainer>
93
+ <ExampleContainer pseudoState="pseudo-focus">
94
+ <Title title="Link focus" level={4} />
95
+ <QuickNavContainer>
96
+ <DxcQuickNav links={links} />
97
+ </QuickNavContainer>
98
+ </ExampleContainer>
99
+ <ExampleContainer>
100
+ <Title title="QuickNav with content" level={4} />
101
+ <Container>
102
+ <ContentContainer>
103
+ <Content id="overview">
104
+ <DxcHeading level={1} text="Overview" margin={{ bottom: "small" }} />
105
+ <DxcParagraph>
106
+ Halstack is the DXC Technology's open source design system for insurance products and digital experiences.
107
+ Our system provides all the tools and resources needed to create superior, beautiful but above all,
108
+ functional user experiences. Halstack is the DXC Technology's open source design system for insurance
109
+ products and digital experiences. Our system provides all the tools and resources needed to create
110
+ superior, beautiful but above all, functional user experiences.Halstack is the DXC Technology's open
111
+ source design system for insurance products and digital experiences. Our system provides all the tools and
112
+ resources needed to create superior, beautiful but above all, functional user experiences.Halstack is the
113
+ DXC Technology's open source design system for insurance products and digital experiences. Our system
114
+ provides all the tools and resources needed to create superior, beautiful but above all, functional user
115
+ experiences.Halstack is the DXC Technology's open source design system for insurance products and digital
116
+ experiences. Our system provides all the tools and resources needed to create superior, beautiful but
117
+ above all, functional user experiences.Halstack is the DXC Technology's open source design system for
118
+ insurance products and digital experiences. Our system provides all the tools and resources needed to
119
+ create superior, beautiful but above all, functional user experiences.Halstack is the DXC Technology's
120
+ open source design system for insurance products and digital experiences. Our system provides all the
121
+ tools and resources needed to create superior, beautiful but above all, functional user experiences.
122
+ </DxcParagraph>
123
+ <Content id="overview-introduction">
124
+ <DxcHeading level={2} text="Introduction" margin={{ top: "xsmall", bottom: "xsmall" }} />
125
+ <DxcParagraph>
126
+ Design principles Halstack design principles are the fundamental part of DXC Technology's approach to
127
+ provide guidance for development teams in order to deliver delightful and consistent user experiences to
128
+ our customers: Balance Consistency Visual hierarchy All our components, design tokens, accessibility
129
+ guidelines, responsive design techniques, and layout proposals have been carefully curated by DXC design
130
+ and engineering teams with the objective of creating a unique visual language and ecosystem for our
131
+ applications. This is the DXC way of creating User Experiences. Open Source Halstack is an open source
132
+ design system, this means that we work towards DXC Technology bussines needs, but it is open for anyone
133
+ to use and contribute back to. We are charmed to receive external contributions to help us find bugs,
134
+ design new features, or help us improve the project documentation. If you're interested, definitely
135
+ check out our contribution guidelines.Design principles Halstack design principles are the fundamental
136
+ part of DXC Technology's approach to provide guidance for development teams in order to deliver
137
+ delightful and consistent user experiences to our customers: Balance Consistency Visual hierarchy All
138
+ our components, design tokens, accessibility guidelines, responsive design techniques, and layout
139
+ proposals have been carefully curated by DXC design and engineering teams with the objective of creating
140
+ a unique visual language and ecosystem for our applications. This is the DXC way of creating User
141
+ Experiences. Open Source Halstack is an open source design system, this means that we work towards DXC
142
+ Technology bussines needs, but it is open for anyone to use and contribute back to. We are charmed to
143
+ receive external contributions to help us find bugs, design new features, or help us improve the project
144
+ documentation. If you're interested, definitely check out our contribution guidelines.Design principles
145
+ Halstack design principles are the fundamental part of DXC Technology's approach to provide guidance for
146
+ development teams in order to deliver delightful and consistent user experiences to our customers:
147
+ Balance Consistency Visual hierarchy All our components, design tokens, accessibility guidelines,
148
+ responsive design techniques, and layout proposals have been carefully curated by DXC design and
149
+ engineering teams with the objective of creating a unique visual language and ecosystem for our
150
+ applications. This is the DXC way of creating User Experiences. Open Source Halstack is an open source
151
+ design system, this means that we work towards DXC Technology bussines needs, but it is open for anyone
152
+ to use and contribute back to. We are charmed to receive external contributions to help us find bugs,
153
+ design new features, or help us improve the project documentation. If you're interested, definitely
154
+ check out our contribution guidelines.
155
+ </DxcParagraph>
156
+ </Content>
157
+ </Content>
158
+ <Content id="components">
159
+ <DxcHeading level={1} text="Components" margin={{ top: "small", bottom: "xsmall" }} />
160
+ <Content id="components-introduction">
161
+ <DxcHeading level={2} text="Introduction" margin={{ top: "xsmall", bottom: "xsmall" }} />
162
+ <DxcParagraph>
163
+ Design principles Halstack design principles are the fundamental part of DXC Technology's approach to
164
+ provide guidance for development teams in order to deliver delightful and consistent user experiences to
165
+ our customers: Balance Consistency Visual hierarchy All our components, design tokens, accessibility
166
+ guidelines, responsive design techniques, and layout proposals have been carefully curated by DXC design
167
+ and engineering teams with the objective of creating a unique visual language and ecosystem for our
168
+ applications. This is the DXC way of creating User Experiences. Open Source Halstack is an open source
169
+ design system, this means that we work towards DXC Technology bussines needs, but it is open for anyone
170
+ to use and contribute back to. We are charmed to receive external contributions to help us find bugs,
171
+ design new features, or help us improve the project documentation. If you're interested, definitely
172
+ check out our contribution guidelines.Design principles Halstack design principles are the fundamental
173
+ part of DXC Technology's approach to provide guidance for development teams in order to deliver
174
+ delightful and consistent user experiences to our customers: Balance Consistency Visual hierarchy All
175
+ our components, design tokens, accessibility guidelines, responsive design techniques, and layout
176
+ proposals have been carefully curated by DXC design and engineering teams with the objective of creating
177
+ a unique visual language and ecosystem for our applications. This is the DXC way of creating User
178
+ Experiences. Open Source Halstack is an open source design system, this means that we work towards DXC
179
+ Technology bussines needs, but it is open for anyone to use and contribute back to. We are charmed to
180
+ receive external contributions to help us find bugs, design new features, or help us improve the project
181
+ documentation. If you're interested, definitely check out our contribution guidelines.Design principles
182
+ Halstack design principles are the fundamental part of DXC Technology's approach to provide guidance for
183
+ development teams in order to deliver delightful and consistent user experiences to our customers:
184
+ Balance Consistency Visual hierarchy All our components, design tokens, accessibility guidelines,
185
+ responsive design techniques, and layout proposals have been carefully curated by DXC design and
186
+ engineering teams with the objective of creating a unique visual language and ecosystem for our
187
+ applications. This is the DXC way of creating User Experiences. Open Source Halstack is an open source
188
+ design system, this means that we work towards DXC Technology bussines needs, but it is open for anyone
189
+ to use and contribute back to. We are charmed to receive external contributions to help us find bugs,
190
+ design new features, or help us improve the project documentation. If you're interested, definitely
191
+ check out our contribution guidelines.
192
+ </DxcParagraph>
193
+ </Content>
194
+ <Content id="components-accordion">
195
+ <DxcHeading level={2} text="Accordion" margin={{ top: "xsmall", bottom: "xsmall" }} />
196
+ <DxcParagraph>
197
+ Accordions are used to group similar content and hide or show it depending on user needs or preferences.
198
+ Accordions give users more granular control over the interface and help digest content in stages, rather
199
+ than all at once.
200
+ </DxcParagraph>
201
+ </Content>
202
+ </Content>
203
+ <Content id="principles-very-very-very-very-very-very-very-very-long">
204
+ <DxcHeading level={1} text="Principles" margin={{ top: "small", bottom: "xsmall" }} />
205
+ <Content id="principles-very-very-very-very-very-very-very-very-long-color-very-very-very-very-very-very-very-very-long">
206
+ <DxcHeading level={2} text="Color" margin={{ top: "xsmall", bottom: "xsmall" }} />
207
+ <DxcParagraph>
208
+ The color palette is an essential asset as a communication resource of our design system. Halstack color
209
+ palette brings a unified consistency and helps in guiding the user's perception order. Our color palette
210
+ is based in the HSL model . All our color families are calculated using the lightness value of the
211
+ standard DXC palette colors. Color Tokens Halstack uses tokens to manage color. Appart from a
212
+ multi-purpose greyscale family, purple and blue are the core color families used in our set of
213
+ components. Additional families as red, green and yellow help as feedback role-based color palettes and
214
+ must not be used outside this context.The color palette is an essential asset as a communication
215
+ resource of our design system. Halstack color palette brings a unified consistency and helps in guiding
216
+ the user's perception order. Our color palette is based in the HSL model . All our color families are
217
+ calculated using the lightness value of the standard DXC palette colors. Color Tokens Halstack uses
218
+ tokens to manage color. Appart from a multi-purpose greyscale family, purple and blue are the core color
219
+ families used in our set of components. Additional families as red, green and yellow help as feedback
220
+ role-based color palettes and must not be used outside this context.The color palette is an essential
221
+ asset as a communication resource of our design system. Halstack color palette brings a unified
222
+ consistency and helps in guiding the user's perception order. Our color palette is based in the HSL
223
+ model . All our color families are calculated using the lightness value of the standard DXC palette
224
+ colors. Color Tokens Halstack uses tokens to manage color. Appart from a multi-purpose greyscale family,
225
+ purple and blue are the core color families used in our set of components. Additional families as red,
226
+ green and yellow help as feedback role-based color palettes and must not be used outside this
227
+ context.The color palette is an essential asset as a communication resource of our design system.
228
+ Halstack color palette brings a unified consistency and helps in guiding the user's perception order.
229
+ Our color palette is based in the HSL model . All our color families are calculated using the lightness
230
+ value of the standard DXC palette colors. Color Tokens Halstack uses tokens to manage color. Appart from
231
+ a multi-purpose greyscale family, purple and blue are the core color families used in our set of
232
+ components. Additional families as red, green and yellow help as feedback role-based color palettes and
233
+ must not be used outside this context.The color palette is an essential asset as a communication
234
+ resource of our design system. Halstack color palette brings a unified consistency and helps in guiding
235
+ the user's perception order. Our color palette is based in the HSL model . All our color families are
236
+ calculated using the lightness value of the standard DXC palette colors. Color Tokens Halstack uses
237
+ tokens to manage color. Appart from a multi-purpose greyscale family, purple and blue are the core color
238
+ families used in our set of components. Additional families as red, green and yellow help as feedback
239
+ role-based color palettes and must not be used outside this context.
240
+ </DxcParagraph>
241
+ </Content>
242
+ <Content id="principles-very-very-very-very-very-very-very-very-long-spacingveryveryveryveryveryveryveryverylong">
243
+ <DxcHeading level={2} text="Spacing" margin={{ top: "xsmall", bottom: "xsmall" }} />
244
+ <DxcParagraph>
245
+ In the search of consistent alignment between the elements we provide a spacing scale based on a root
246
+ values of 8px and 4px. The numbers 4 and 8 are easily multiplied, they provide flexible and consistent,
247
+ yet distinct enough, steps between them.In the search of consistent alignment between the elements we
248
+ provide a spacing scale based on a root values of 8px and 4px. The numbers 4 and 8 are easily
249
+ multiplied, they provide flexible and consistent, yet distinct enough, steps between them.In the search
250
+ of consistent alignment between the elements we provide a spacing scale based on a root values of 8px
251
+ and 4px. The numbers 4 and 8 are easily multiplied, they provide flexible and consistent, yet distinct
252
+ enough, steps between them.In the search of consistent alignment between the elements we provide a
253
+ spacing scale based on a root values of 8px and 4px. The numbers 4 and 8 are easily multiplied, they
254
+ provide flexible and consistent, yet distinct enough, steps between them.In the search of consistent
255
+ alignment between the elements we provide a spacing scale based on a root values of 8px and 4px. The
256
+ numbers 4 and 8 are easily multiplied, they provide flexible and consistent, yet distinct enough, steps
257
+ between them.In the search of consistent alignment between the elements we provide a spacing scale based
258
+ on a root values of 8px and 4px. The numbers 4 and 8 are easily multiplied, they provide flexible and
259
+ consistent, yet distinct enough, steps between them.In the search of consistent alignment between the
260
+ elements we provide a spacing scale based on a root values of 8px and 4px. The numbers 4 and 8 are
261
+ easily multiplied, they provide flexible and consistent, yet distinct enough, steps between them.
262
+ </DxcParagraph>
263
+ </Content>
264
+ <Content id="principles-very-very-very-very-very-very-very-very-long-typography">
265
+ <DxcHeading level={2} text="Typography" margin={{ top: "xsmall", bottom: "xsmall" }} />
266
+ <DxcParagraph>
267
+ Our selected typography helps in structuring our user's experience based on the visual impact that it
268
+ has on the user interface content. It defines what is the first noticeable piece of information or data
269
+ based on the font shape, size, color, or type and it highlights some pieces of text over the rest. Some
270
+ typographic elements used in Halstack Design System include headers, body, taglines, captions, and
271
+ labels. Make sure you include all the different typographic variants in order to enhance the
272
+ application's content structure, including the Heading component which defines different levels of page
273
+ and section titles.Our selected typography helps in structuring our user's experience based on the
274
+ visual impact that it has on the user interface content. It defines what is the first noticeable piece
275
+ of information or data based on the font shape, size, color, or type and it highlights some pieces of
276
+ text over the rest. Some typographic elements used in Halstack Design System include headers, body,
277
+ taglines, captions, and labels. Make sure you include all the different typographic variants in order to
278
+ enhance the application's content structure, including the Heading component which defines different
279
+ levels of page and section titles.Our selected typography helps in structuring our user's experience
280
+ based on the visual impact that it has on the user interface content. It defines what is the first
281
+ noticeable piece of information or data based on the font shape, size, color, or type and it highlights
282
+ some pieces of text over the rest. Some typographic elements used in Halstack Design System include
283
+ headers, body, taglines, captions, and labels. Make sure you include all the different typographic
284
+ variants in order to enhance the application's content structure, including the Heading component which
285
+ defines different levels of page and section titles.Our selected typography helps in structuring our
286
+ user's experience based on the visual impact that it has on the user interface content. It defines what
287
+ is the first noticeable piece of information or data based on the font shape, size, color, or type and
288
+ it highlights some pieces of text over the rest. Some typographic elements used in Halstack Design
289
+ System include headers, body, taglines, captions, and labels. Make sure you include all the different
290
+ typographic variants in order to enhance the application's content structure, including the Heading
291
+ component which defines different levels of page and section titles.Our selected typography helps in
292
+ structuring our user's experience based on the visual impact that it has on the user interface content.
293
+ It defines what is the first noticeable piece of information or data based on the font shape, size,
294
+ color, or type and it highlights some pieces of text over the rest. Some typographic elements used in
295
+ Halstack Design System include headers, body, taglines, captions, and labels. Make sure you include all
296
+ the different typographic variants in order to enhance the application's content structure, including
297
+ the Heading component which defines different levels of page and section titles.
298
+ </DxcParagraph>
299
+ </Content>
300
+ </Content>
301
+ <Content id="componentsveryveryveryveryveryveryveryverylong">
302
+ <DxcHeading level={1} text="Components" margin={{ top: "small", bottom: "xsmall" }} />
303
+ <Content id="componentsveryveryveryveryveryveryveryverylong-accordion">
304
+ <DxcHeading level={2} text="Accordion" margin={{ top: "xsmall", bottom: "xsmall" }} />
305
+ <DxcParagraph>
306
+ Accordions are used to group similar content and hide or show it depending on user needs or preferences.
307
+ Accordions give users more granular control over the interface and help digest content in stages, rather
308
+ than all at once.
309
+ </DxcParagraph>
310
+ </Content>
311
+ </Content>
312
+ </ContentContainer>
313
+ <QuickNavContainer>
314
+ <DxcQuickNav title="Sections" links={links} />
315
+ </QuickNavContainer>
316
+ </Container>
317
+ </ExampleContainer>
318
+ </>
319
+ );
320
+
321
+ const Container = styled.div`
322
+ display: flex;
323
+ flex-direction: row;
324
+ width: 100%;
325
+ `;
326
+
327
+ const ContentContainer = styled.div`
328
+ display: flex;
329
+ flex-direction: column;
330
+ padding: 60px;
331
+ margin: 0 auto;
332
+ width: 800px;
333
+ `;
334
+
335
+ const Content = styled.div``;
336
+
337
+ const QuickNavContainer = styled.div`
338
+ max-height: calc(100vh - 100px);
339
+ position: sticky;
340
+ top: 100px;
341
+ width: 300px;
342
+ `;
@@ -0,0 +1,21 @@
1
+ declare type Props = {
2
+ /**
3
+ * Title of the quick nav component.
4
+ */
5
+ title?: string;
6
+ /**
7
+ * Links to be shown inside the quick nav component.
8
+ */
9
+ links: LinkType[];
10
+ };
11
+ declare type LinkType = {
12
+ /**
13
+ * Label to be shown in the link.
14
+ */
15
+ label: string;
16
+ /**
17
+ * Sublinks of the link.
18
+ */
19
+ links?: LinkType[];
20
+ };
21
+ export default Props;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import { RadioProps } from "./types";
3
+ declare const _default: React.MemoExoticComponent<({ label, checked, onClick, error, disabled, focused, readonly, tabIndex, }: RadioProps) => JSX.Element>;
4
+ export default _default;
@@ -0,0 +1,156 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = void 0;
11
+
12
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
+
14
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
+
16
+ var _react = _interopRequireWildcard(require("react"));
17
+
18
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
19
+
20
+ var _uuid = require("uuid");
21
+
22
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
23
+
24
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
25
+
26
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
27
+
28
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
29
+
30
+ var DxcRadio = function DxcRadio(_ref) {
31
+ var label = _ref.label,
32
+ checked = _ref.checked,
33
+ onClick = _ref.onClick,
34
+ error = _ref.error,
35
+ disabled = _ref.disabled,
36
+ focused = _ref.focused,
37
+ readonly = _ref.readonly,
38
+ tabIndex = _ref.tabIndex;
39
+
40
+ var _useState = (0, _react.useState)("radio-".concat((0, _uuid.v4)())),
41
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 1),
42
+ radioLabelId = _useState2[0];
43
+
44
+ var ref = (0, _react.useRef)(null);
45
+ var colorsTheme = (0, _useTheme["default"])();
46
+
47
+ var handleOnClick = function handleOnClick() {
48
+ var _ref$current;
49
+
50
+ onClick();
51
+ document.activeElement !== (ref === null || ref === void 0 ? void 0 : ref.current) && (ref === null || ref === void 0 ? void 0 : (_ref$current = ref.current) === null || _ref$current === void 0 ? void 0 : _ref$current.focus());
52
+ };
53
+
54
+ var _useState3 = (0, _react.useState)(true),
55
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
56
+ firstUpdate = _useState4[0],
57
+ setFirstUpdate = _useState4[1];
58
+
59
+ (0, _react.useLayoutEffect)(function () {
60
+ var _ref$current2;
61
+
62
+ // Don't apply in the first render
63
+ if (firstUpdate) {
64
+ setFirstUpdate(false);
65
+ return;
66
+ }
67
+
68
+ focused && (ref === null || ref === void 0 ? void 0 : (_ref$current2 = ref.current) === null || _ref$current2 === void 0 ? void 0 : _ref$current2.focus());
69
+ }, [focused]);
70
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
71
+ theme: colorsTheme.radioGroup
72
+ }, /*#__PURE__*/_react["default"].createElement(RadioMainContainer, null, /*#__PURE__*/_react["default"].createElement(RadioContainer, {
73
+ error: error,
74
+ disabled: disabled,
75
+ readonly: readonly,
76
+ onClick: disabled ? undefined : handleOnClick
77
+ }, /*#__PURE__*/_react["default"].createElement(RadioInputContainer, null, /*#__PURE__*/_react["default"].createElement(RadioInput, {
78
+ error: error,
79
+ disabled: disabled,
80
+ readonly: readonly,
81
+ role: "radio",
82
+ "aria-checked": checked,
83
+ "aria-disabled": disabled,
84
+ "aria-labelledby": radioLabelId,
85
+ tabIndex: disabled ? -1 : focused ? tabIndex : -1,
86
+ ref: ref
87
+ }, checked && /*#__PURE__*/_react["default"].createElement(Dot, {
88
+ disabled: disabled,
89
+ readonly: readonly,
90
+ error: error
91
+ }))), /*#__PURE__*/_react["default"].createElement(Label, {
92
+ id: radioLabelId,
93
+ disabled: disabled
94
+ }, label))));
95
+ };
96
+
97
+ var getRadioInputStateColor = function getRadioInputStateColor(props, state) {
98
+ switch (state) {
99
+ case "enabled":
100
+ return props.disabled ? props.theme.disabledRadioInputColor : props.error ? props.theme.errorRadioInputColor : props.readonly ? props.theme.readonlyRadioInputColor : props.theme.radioInputColor;
101
+
102
+ case "hover":
103
+ return props.error ? props.theme.hoverErrorRadioInputColor : props.readonly ? props.theme.hoverReadonlyRadioInputColor : props.theme.hoverRadioInputColor;
104
+
105
+ case "active":
106
+ return props.error ? props.theme.activeErrorRadioInputColor : props.readonly ? props.theme.activeReadonlyRadioInputColor : props.theme.activeRadioInputColor;
107
+ }
108
+ };
109
+
110
+ var RadioMainContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n"])));
111
+
112
+ var RadioInputContainer = _styledComponents["default"].span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: center;\n height: 24px;\n width: 24px;\n"])));
113
+
114
+ var RadioInput = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n box-sizing: border-box;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 18px;\n height: 18px;\n border: 2px solid ", ";\n border-radius: 50%;\n\n &:focus {\n outline: 2px solid ", ";\n outline-offset: 1px;\n }\n ", "\n"])), function (props) {
115
+ return getRadioInputStateColor(props, "enabled");
116
+ }, function (props) {
117
+ return props.theme.focusBorderColor;
118
+ }, function (props) {
119
+ return props.disabled && "pointer-events: none;";
120
+ });
121
+
122
+ var Dot = _styledComponents["default"].span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n height: 10px;\n width: 10px;\n border-radius: 50%;\n background-color: ", ";\n"])), function (props) {
123
+ return getRadioInputStateColor(props, "enabled");
124
+ });
125
+
126
+ var Label = _styledComponents["default"].span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n margin-left: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n ", "\n"])), function (props) {
127
+ return props.theme.radioInputLabelMargin;
128
+ }, function (props) {
129
+ return props.theme.fontFamily;
130
+ }, function (props) {
131
+ return props.theme.radioInputLabelFontSize;
132
+ }, function (props) {
133
+ return props.theme.radioInputLabelFontStyle;
134
+ }, function (props) {
135
+ return props.theme.radioInputLabelFontWeight;
136
+ }, function (props) {
137
+ return props.theme.radioInputLabelLineHeight;
138
+ }, function (props) {
139
+ return props.disabled ? "color: ".concat(props.theme.disabledRadioInputLabelFontColor, ";") : "color: ".concat(props.theme.radioInputLabelFontColor);
140
+ });
141
+
142
+ var RadioContainer = _styledComponents["default"].span(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n align-items: center;\n cursor: ", ";\n\n &:hover {\n ", " {\n border-color: ", ";\n }\n ", " {\n background-color: ", ";\n }\n }\n &:active {\n ", " {\n border-color: ", ";\n }\n ", " {\n background-color: ", ";\n }\n }\n"])), function (props) {
143
+ return props.disabled ? "not-allowed" : props.readonly ? "default" : "pointer";
144
+ }, RadioInput, function (props) {
145
+ return !props.disabled && getRadioInputStateColor(props, "hover");
146
+ }, Dot, function (props) {
147
+ return !props.disabled && getRadioInputStateColor(props, "hover");
148
+ }, RadioInput, function (props) {
149
+ return !props.disabled && getRadioInputStateColor(props, "active");
150
+ }, Dot, function (props) {
151
+ return !props.disabled && getRadioInputStateColor(props, "active");
152
+ });
153
+
154
+ var _default = /*#__PURE__*/_react["default"].memo(DxcRadio);
155
+
156
+ exports["default"] = _default;
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import RadioGroupPropsType from "./types";
3
+ declare const DxcRadioGroup: React.ForwardRefExoticComponent<RadioGroupPropsType & React.RefAttributes<HTMLDivElement>>;
4
+ export default DxcRadioGroup;