@dxc-technology/halstack-react 0.0.0-8c5a0f7 → 0.0.0-8d625da

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 (508) hide show
  1. package/BackgroundColorContext.d.ts +1 -10
  2. package/BackgroundColorContext.js +5 -22
  3. package/HalstackContext.d.ts +1246 -0
  4. package/HalstackContext.js +310 -0
  5. package/README.md +47 -0
  6. package/accordion/Accordion.accessibility.test.d.ts +1 -0
  7. package/accordion/Accordion.accessibility.test.js +71 -0
  8. package/accordion/Accordion.d.ts +1 -1
  9. package/accordion/Accordion.js +102 -181
  10. package/accordion/Accordion.stories.tsx +83 -149
  11. package/accordion/Accordion.test.d.ts +1 -0
  12. package/accordion/Accordion.test.js +31 -32
  13. package/accordion/types.d.ts +10 -17
  14. package/accordion-group/AccordionGroup.accessibility.test.d.ts +1 -0
  15. package/accordion-group/AccordionGroup.accessibility.test.js +82 -0
  16. package/accordion-group/AccordionGroup.d.ts +3 -3
  17. package/accordion-group/AccordionGroup.js +38 -107
  18. package/accordion-group/AccordionGroup.stories.tsx +95 -68
  19. package/accordion-group/AccordionGroup.test.d.ts +1 -0
  20. package/accordion-group/AccordionGroup.test.js +52 -91
  21. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  22. package/accordion-group/AccordionGroupAccordion.js +31 -0
  23. package/accordion-group/AccordionGroupContext.d.ts +3 -0
  24. package/accordion-group/AccordionGroupContext.js +8 -0
  25. package/accordion-group/types.d.ts +16 -17
  26. package/action-icon/ActionIcon.accessibility.test.d.ts +1 -0
  27. package/action-icon/ActionIcon.accessibility.test.js +63 -0
  28. package/action-icon/ActionIcon.d.ts +4 -0
  29. package/action-icon/ActionIcon.js +48 -0
  30. package/action-icon/ActionIcon.stories.tsx +41 -0
  31. package/action-icon/ActionIcon.test.d.ts +1 -0
  32. package/action-icon/ActionIcon.test.js +64 -0
  33. package/action-icon/types.d.ts +26 -0
  34. package/alert/Alert.accessibility.test.d.ts +1 -0
  35. package/alert/Alert.accessibility.test.js +95 -0
  36. package/alert/Alert.js +40 -127
  37. package/alert/Alert.stories.tsx +28 -0
  38. package/alert/Alert.test.d.ts +1 -0
  39. package/alert/Alert.test.js +28 -45
  40. package/alert/types.d.ts +5 -5
  41. package/badge/Badge.accessibility.test.d.ts +1 -0
  42. package/badge/Badge.accessibility.test.js +129 -0
  43. package/badge/Badge.d.ts +1 -1
  44. package/badge/Badge.js +142 -40
  45. package/badge/Badge.stories.tsx +210 -0
  46. package/badge/Badge.test.d.ts +1 -0
  47. package/badge/Badge.test.js +30 -0
  48. package/badge/types.d.ts +52 -2
  49. package/bleed/Bleed.js +14 -55
  50. package/bleed/Bleed.stories.tsx +95 -95
  51. package/bleed/types.d.ts +26 -2
  52. package/box/Box.accessibility.test.d.ts +1 -0
  53. package/box/Box.accessibility.test.js +33 -0
  54. package/box/Box.d.ts +1 -1
  55. package/box/Box.js +30 -81
  56. package/box/Box.stories.tsx +38 -51
  57. package/box/Box.test.d.ts +1 -0
  58. package/box/Box.test.js +1 -6
  59. package/box/types.d.ts +3 -14
  60. package/breadcrumbs/Breadcrumbs.accessibility.test.d.ts +1 -0
  61. package/breadcrumbs/Breadcrumbs.accessibility.test.js +96 -0
  62. package/breadcrumbs/Breadcrumbs.d.ts +4 -0
  63. package/breadcrumbs/Breadcrumbs.js +79 -0
  64. package/breadcrumbs/Breadcrumbs.stories.tsx +194 -0
  65. package/breadcrumbs/Breadcrumbs.test.d.ts +1 -0
  66. package/breadcrumbs/Breadcrumbs.test.js +169 -0
  67. package/breadcrumbs/Item.d.ts +4 -0
  68. package/breadcrumbs/Item.js +52 -0
  69. package/breadcrumbs/dropdownTheme.d.ts +53 -0
  70. package/breadcrumbs/dropdownTheme.js +62 -0
  71. package/breadcrumbs/types.d.ts +16 -0
  72. package/bulleted-list/BulletedList.accessibility.test.d.ts +1 -0
  73. package/bulleted-list/BulletedList.accessibility.test.js +119 -0
  74. package/bulleted-list/BulletedList.d.ts +7 -0
  75. package/bulleted-list/BulletedList.js +92 -0
  76. package/bulleted-list/BulletedList.stories.tsx +115 -0
  77. package/bulleted-list/types.d.ts +38 -0
  78. package/button/Button.accessibility.test.d.ts +1 -0
  79. package/button/Button.accessibility.test.js +127 -0
  80. package/button/Button.d.ts +1 -1
  81. package/button/Button.js +63 -113
  82. package/button/Button.stories.tsx +151 -100
  83. package/button/Button.test.d.ts +1 -0
  84. package/button/Button.test.js +19 -16
  85. package/button/types.d.ts +12 -8
  86. package/card/Card.accessibility.test.d.ts +1 -0
  87. package/card/Card.accessibility.test.js +36 -0
  88. package/card/Card.d.ts +1 -1
  89. package/card/Card.js +59 -102
  90. package/card/Card.stories.tsx +12 -42
  91. package/card/Card.test.d.ts +1 -0
  92. package/card/Card.test.js +10 -21
  93. package/card/types.d.ts +6 -11
  94. package/checkbox/Checkbox.accessibility.test.d.ts +1 -0
  95. package/checkbox/Checkbox.accessibility.test.js +87 -0
  96. package/checkbox/Checkbox.d.ts +2 -2
  97. package/checkbox/Checkbox.js +140 -181
  98. package/checkbox/Checkbox.stories.tsx +166 -136
  99. package/checkbox/Checkbox.test.d.ts +1 -0
  100. package/checkbox/Checkbox.test.js +162 -28
  101. package/checkbox/types.d.ts +18 -6
  102. package/chip/Chip.accessibility.test.d.ts +1 -0
  103. package/chip/Chip.accessibility.test.js +67 -0
  104. package/chip/Chip.js +45 -80
  105. package/chip/Chip.stories.tsx +107 -27
  106. package/chip/Chip.test.d.ts +1 -0
  107. package/chip/Chip.test.js +17 -32
  108. package/chip/types.d.ts +4 -4
  109. package/common/coreTokens.d.ts +237 -0
  110. package/common/coreTokens.js +184 -0
  111. package/common/utils.d.ts +1 -0
  112. package/common/utils.js +6 -12
  113. package/common/variables.d.ts +1392 -0
  114. package/common/variables.js +1081 -1190
  115. package/container/Container.d.ts +4 -0
  116. package/container/Container.js +194 -0
  117. package/container/Container.stories.tsx +214 -0
  118. package/container/types.d.ts +74 -0
  119. package/contextual-menu/ContextualMenu.accessibility.test.d.ts +1 -0
  120. package/contextual-menu/ContextualMenu.accessibility.test.js +98 -0
  121. package/contextual-menu/ContextualMenu.d.ts +5 -0
  122. package/contextual-menu/ContextualMenu.js +88 -0
  123. package/contextual-menu/ContextualMenu.stories.tsx +232 -0
  124. package/contextual-menu/ContextualMenu.test.d.ts +1 -0
  125. package/contextual-menu/ContextualMenu.test.js +205 -0
  126. package/contextual-menu/GroupItem.d.ts +4 -0
  127. package/contextual-menu/GroupItem.js +67 -0
  128. package/contextual-menu/ItemAction.d.ts +4 -0
  129. package/contextual-menu/ItemAction.js +51 -0
  130. package/contextual-menu/MenuItem.d.ts +4 -0
  131. package/contextual-menu/MenuItem.js +29 -0
  132. package/contextual-menu/SingleItem.d.ts +4 -0
  133. package/contextual-menu/SingleItem.js +38 -0
  134. package/contextual-menu/types.d.ts +58 -0
  135. package/date-input/Calendar.d.ts +4 -0
  136. package/date-input/Calendar.js +214 -0
  137. package/date-input/DateInput.accessibility.test.d.ts +1 -0
  138. package/date-input/DateInput.accessibility.test.js +230 -0
  139. package/date-input/DateInput.js +170 -306
  140. package/date-input/DateInput.stories.tsx +210 -56
  141. package/date-input/DateInput.test.d.ts +1 -0
  142. package/date-input/DateInput.test.js +708 -368
  143. package/date-input/DatePicker.d.ts +4 -0
  144. package/date-input/DatePicker.js +121 -0
  145. package/date-input/YearPicker.d.ts +4 -0
  146. package/date-input/YearPicker.js +100 -0
  147. package/date-input/types.d.ts +86 -22
  148. package/dialog/Dialog.accessibility.test.d.ts +1 -0
  149. package/dialog/Dialog.accessibility.test.js +69 -0
  150. package/dialog/Dialog.d.ts +1 -1
  151. package/dialog/Dialog.js +56 -129
  152. package/dialog/Dialog.stories.tsx +325 -167
  153. package/dialog/Dialog.test.d.ts +1 -0
  154. package/dialog/Dialog.test.js +350 -19
  155. package/dialog/types.d.ts +18 -25
  156. package/divider/Divider.accessibility.test.d.ts +1 -0
  157. package/divider/Divider.accessibility.test.js +33 -0
  158. package/divider/Divider.d.ts +4 -0
  159. package/divider/Divider.js +36 -0
  160. package/divider/Divider.stories.tsx +223 -0
  161. package/divider/Divider.test.d.ts +1 -0
  162. package/divider/Divider.test.js +38 -0
  163. package/divider/types.d.ts +21 -0
  164. package/dropdown/Dropdown.accessibility.test.d.ts +1 -0
  165. package/dropdown/Dropdown.accessibility.test.js +184 -0
  166. package/dropdown/Dropdown.d.ts +1 -1
  167. package/dropdown/Dropdown.js +232 -307
  168. package/dropdown/Dropdown.stories.tsx +235 -57
  169. package/dropdown/Dropdown.test.d.ts +1 -0
  170. package/dropdown/Dropdown.test.js +604 -164
  171. package/dropdown/DropdownMenu.d.ts +4 -0
  172. package/dropdown/DropdownMenu.js +63 -0
  173. package/dropdown/DropdownMenuItem.d.ts +4 -0
  174. package/dropdown/DropdownMenuItem.js +71 -0
  175. package/dropdown/types.d.ts +35 -19
  176. package/file-input/FileInput.accessibility.test.d.ts +1 -0
  177. package/file-input/FileInput.accessibility.test.js +167 -0
  178. package/file-input/FileInput.d.ts +2 -2
  179. package/file-input/FileInput.js +245 -395
  180. package/file-input/FileInput.stories.tsx +123 -12
  181. package/file-input/FileInput.test.d.ts +1 -0
  182. package/file-input/FileInput.test.js +314 -367
  183. package/file-input/FileItem.d.ts +4 -14
  184. package/file-input/FileItem.js +61 -120
  185. package/file-input/types.d.ts +25 -8
  186. package/flex/Flex.d.ts +4 -0
  187. package/flex/Flex.js +57 -0
  188. package/flex/Flex.stories.tsx +112 -0
  189. package/flex/types.d.ts +97 -0
  190. package/flex/types.js +5 -0
  191. package/footer/Footer.accessibility.test.d.ts +1 -0
  192. package/footer/Footer.accessibility.test.js +125 -0
  193. package/footer/Footer.d.ts +1 -1
  194. package/footer/Footer.js +73 -191
  195. package/footer/Footer.stories.tsx +99 -21
  196. package/footer/Footer.test.d.ts +1 -0
  197. package/footer/Footer.test.js +32 -56
  198. package/footer/Icons.d.ts +3 -2
  199. package/footer/Icons.js +54 -23
  200. package/footer/types.d.ts +26 -27
  201. package/grid/Grid.d.ts +7 -0
  202. package/grid/Grid.js +76 -0
  203. package/grid/Grid.stories.tsx +219 -0
  204. package/grid/types.d.ts +115 -0
  205. package/grid/types.js +5 -0
  206. package/header/Header.accessibility.test.d.ts +1 -0
  207. package/header/Header.accessibility.test.js +94 -0
  208. package/header/Header.d.ts +4 -3
  209. package/header/Header.js +104 -218
  210. package/header/Header.stories.tsx +168 -63
  211. package/header/Header.test.d.ts +1 -0
  212. package/header/Header.test.js +30 -27
  213. package/header/Icons.d.ts +2 -2
  214. package/header/Icons.js +5 -15
  215. package/header/types.d.ts +7 -21
  216. package/heading/Heading.accessibility.test.d.ts +1 -0
  217. package/heading/Heading.accessibility.test.js +33 -0
  218. package/heading/Heading.js +10 -32
  219. package/heading/Heading.test.d.ts +1 -0
  220. package/heading/Heading.test.js +64 -94
  221. package/heading/types.d.ts +7 -7
  222. package/icon/Icon.accessibility.test.d.ts +1 -0
  223. package/icon/Icon.accessibility.test.js +30 -0
  224. package/icon/Icon.d.ts +4 -0
  225. package/icon/Icon.js +33 -0
  226. package/icon/Icon.stories.tsx +28 -0
  227. package/icon/types.d.ts +4 -0
  228. package/icon/types.js +5 -0
  229. package/image/Image.accessibility.test.d.ts +1 -0
  230. package/image/Image.accessibility.test.js +56 -0
  231. package/image/Image.d.ts +4 -0
  232. package/image/Image.js +70 -0
  233. package/image/Image.stories.tsx +129 -0
  234. package/image/types.d.ts +72 -0
  235. package/image/types.js +5 -0
  236. package/inset/Inset.js +14 -55
  237. package/inset/Inset.stories.tsx +37 -36
  238. package/inset/types.d.ts +26 -2
  239. package/layout/ApplicationLayout.d.ts +16 -6
  240. package/layout/ApplicationLayout.js +88 -182
  241. package/layout/ApplicationLayout.stories.tsx +85 -94
  242. package/layout/Icons.d.ts +7 -0
  243. package/layout/Icons.js +41 -48
  244. package/layout/types.d.ts +19 -35
  245. package/link/Link.accessibility.test.d.ts +1 -0
  246. package/link/Link.accessibility.test.js +108 -0
  247. package/link/Link.d.ts +3 -2
  248. package/link/Link.js +65 -101
  249. package/link/Link.stories.tsx +157 -55
  250. package/link/Link.test.d.ts +1 -0
  251. package/link/Link.test.js +24 -52
  252. package/link/types.d.ts +15 -31
  253. package/main.d.ts +17 -13
  254. package/main.js +86 -101
  255. package/nav-tabs/NavTabs.accessibility.test.d.ts +1 -0
  256. package/nav-tabs/NavTabs.accessibility.test.js +44 -0
  257. package/nav-tabs/NavTabs.d.ts +7 -0
  258. package/nav-tabs/NavTabs.js +108 -0
  259. package/nav-tabs/NavTabs.stories.tsx +294 -0
  260. package/nav-tabs/NavTabs.test.d.ts +1 -0
  261. package/nav-tabs/NavTabs.test.js +77 -0
  262. package/nav-tabs/NavTabsContext.d.ts +3 -0
  263. package/nav-tabs/NavTabsContext.js +8 -0
  264. package/nav-tabs/Tab.d.ts +4 -0
  265. package/nav-tabs/Tab.js +117 -0
  266. package/nav-tabs/types.d.ts +52 -0
  267. package/nav-tabs/types.js +5 -0
  268. package/number-input/NumberInput.accessibility.test.d.ts +1 -0
  269. package/number-input/NumberInput.accessibility.test.js +228 -0
  270. package/number-input/NumberInput.js +47 -44
  271. package/number-input/NumberInput.stories.tsx +44 -28
  272. package/number-input/NumberInput.test.d.ts +1 -0
  273. package/number-input/NumberInput.test.js +861 -380
  274. package/number-input/NumberInputContext.d.ts +3 -4
  275. package/number-input/NumberInputContext.js +3 -14
  276. package/number-input/types.d.ts +34 -15
  277. package/package.json +55 -54
  278. package/paginator/Paginator.accessibility.test.d.ts +1 -0
  279. package/paginator/Paginator.accessibility.test.js +79 -0
  280. package/paginator/Paginator.js +46 -100
  281. package/paginator/Paginator.stories.tsx +24 -0
  282. package/paginator/Paginator.test.d.ts +1 -0
  283. package/paginator/Paginator.test.js +279 -210
  284. package/paginator/types.d.ts +3 -3
  285. package/paragraph/Paragraph.accessibility.test.d.ts +1 -0
  286. package/paragraph/Paragraph.accessibility.test.js +28 -0
  287. package/paragraph/Paragraph.d.ts +5 -0
  288. package/paragraph/Paragraph.js +22 -0
  289. package/paragraph/Paragraph.stories.tsx +27 -0
  290. package/password-input/PasswordInput.accessibility.test.d.ts +1 -0
  291. package/password-input/PasswordInput.accessibility.test.js +153 -0
  292. package/password-input/PasswordInput.js +58 -124
  293. package/password-input/PasswordInput.stories.tsx +1 -33
  294. package/password-input/PasswordInput.test.d.ts +1 -0
  295. package/password-input/PasswordInput.test.js +161 -146
  296. package/password-input/types.d.ts +21 -17
  297. package/progress-bar/ProgressBar.accessibility.test.d.ts +1 -0
  298. package/progress-bar/ProgressBar.accessibility.test.js +35 -0
  299. package/progress-bar/ProgressBar.js +68 -92
  300. package/progress-bar/ProgressBar.stories.tsx +93 -0
  301. package/progress-bar/ProgressBar.test.d.ts +1 -0
  302. package/progress-bar/ProgressBar.test.js +71 -43
  303. package/progress-bar/types.d.ts +3 -3
  304. package/quick-nav/QuickNav.accessibility.test.d.ts +1 -0
  305. package/quick-nav/QuickNav.accessibility.test.js +57 -0
  306. package/quick-nav/QuickNav.d.ts +4 -0
  307. package/quick-nav/QuickNav.js +94 -0
  308. package/quick-nav/QuickNav.stories.tsx +356 -0
  309. package/quick-nav/types.d.ts +21 -0
  310. package/quick-nav/types.js +5 -0
  311. package/radio-group/Radio.d.ts +1 -1
  312. package/radio-group/Radio.js +59 -79
  313. package/radio-group/RadioGroup.accessibility.test.d.ts +1 -0
  314. package/radio-group/RadioGroup.accessibility.test.js +97 -0
  315. package/radio-group/RadioGroup.js +74 -121
  316. package/radio-group/RadioGroup.stories.tsx +132 -18
  317. package/radio-group/RadioGroup.test.d.ts +1 -0
  318. package/radio-group/RadioGroup.test.js +518 -459
  319. package/radio-group/types.d.ts +10 -10
  320. package/resultset-table/Icons.d.ts +7 -0
  321. package/resultset-table/Icons.js +47 -0
  322. package/resultset-table/ResultsetTable.accessibility.test.d.ts +1 -0
  323. package/resultset-table/ResultsetTable.accessibility.test.js +285 -0
  324. package/resultset-table/ResultsetTable.d.ts +7 -0
  325. package/resultset-table/ResultsetTable.js +171 -0
  326. package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +168 -30
  327. package/resultset-table/ResultsetTable.test.d.ts +1 -0
  328. package/resultset-table/ResultsetTable.test.js +380 -0
  329. package/{resultsetTable → resultset-table}/types.d.ts +44 -11
  330. package/resultset-table/types.js +5 -0
  331. package/select/Listbox.d.ts +4 -0
  332. package/select/Listbox.js +151 -0
  333. package/select/Option.js +35 -56
  334. package/select/Select.accessibility.test.d.ts +1 -0
  335. package/select/Select.accessibility.test.js +228 -0
  336. package/select/Select.js +225 -365
  337. package/select/Select.stories.tsx +533 -196
  338. package/select/Select.test.d.ts +1 -0
  339. package/select/Select.test.js +1956 -1588
  340. package/select/types.d.ts +54 -28
  341. package/sidenav/Sidenav.accessibility.test.d.ts +1 -0
  342. package/sidenav/Sidenav.accessibility.test.js +59 -0
  343. package/sidenav/Sidenav.d.ts +6 -5
  344. package/sidenav/Sidenav.js +136 -71
  345. package/sidenav/Sidenav.stories.tsx +246 -151
  346. package/sidenav/Sidenav.test.d.ts +1 -0
  347. package/sidenav/Sidenav.test.js +25 -44
  348. package/sidenav/SidenavContext.d.ts +5 -0
  349. package/sidenav/SidenavContext.js +13 -0
  350. package/sidenav/types.d.ts +52 -26
  351. package/slider/Slider.accessibility.test.d.ts +1 -0
  352. package/slider/Slider.accessibility.test.js +104 -0
  353. package/slider/Slider.d.ts +2 -2
  354. package/slider/Slider.js +147 -181
  355. package/slider/Slider.stories.tsx +68 -65
  356. package/slider/Slider.test.d.ts +1 -0
  357. package/slider/Slider.test.js +205 -77
  358. package/slider/types.d.ts +11 -3
  359. package/spinner/Spinner.accessibility.test.d.ts +1 -0
  360. package/spinner/Spinner.accessibility.test.js +96 -0
  361. package/spinner/Spinner.js +34 -74
  362. package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +53 -27
  363. package/spinner/Spinner.test.d.ts +1 -0
  364. package/spinner/Spinner.test.js +25 -34
  365. package/spinner/types.d.ts +3 -3
  366. package/status-light/StatusLight.accessibility.test.d.ts +1 -0
  367. package/status-light/StatusLight.accessibility.test.js +157 -0
  368. package/status-light/StatusLight.d.ts +4 -0
  369. package/status-light/StatusLight.js +51 -0
  370. package/status-light/StatusLight.stories.tsx +74 -0
  371. package/status-light/StatusLight.test.d.ts +1 -0
  372. package/status-light/StatusLight.test.js +25 -0
  373. package/status-light/types.d.ts +17 -0
  374. package/status-light/types.js +5 -0
  375. package/switch/Switch.accessibility.test.d.ts +1 -0
  376. package/switch/Switch.accessibility.test.js +98 -0
  377. package/switch/Switch.d.ts +2 -2
  378. package/switch/Switch.js +146 -114
  379. package/switch/Switch.stories.tsx +56 -67
  380. package/switch/Switch.test.d.ts +1 -0
  381. package/switch/Switch.test.js +145 -38
  382. package/switch/types.d.ts +13 -5
  383. package/table/DropdownTheme.js +62 -0
  384. package/table/Table.accessibility.test.d.ts +1 -0
  385. package/table/Table.accessibility.test.js +93 -0
  386. package/table/Table.d.ts +6 -2
  387. package/table/Table.js +78 -35
  388. package/table/Table.stories.tsx +663 -0
  389. package/table/Table.test.d.ts +1 -0
  390. package/table/Table.test.js +93 -7
  391. package/table/types.d.ts +34 -6
  392. package/tabs/Tab.d.ts +4 -0
  393. package/tabs/Tab.js +117 -0
  394. package/tabs/Tabs.accessibility.test.d.ts +1 -0
  395. package/tabs/Tabs.accessibility.test.js +56 -0
  396. package/tabs/Tabs.d.ts +1 -1
  397. package/tabs/Tabs.js +305 -145
  398. package/tabs/Tabs.stories.tsx +124 -14
  399. package/tabs/Tabs.test.d.ts +1 -0
  400. package/tabs/Tabs.test.js +219 -66
  401. package/tabs/types.d.ts +31 -17
  402. package/tag/Tag.accessibility.test.d.ts +1 -0
  403. package/tag/Tag.accessibility.test.js +69 -0
  404. package/tag/Tag.js +38 -73
  405. package/tag/Tag.stories.tsx +18 -8
  406. package/tag/Tag.test.d.ts +1 -0
  407. package/tag/Tag.test.js +17 -36
  408. package/tag/types.d.ts +9 -9
  409. package/text-input/Suggestion.d.ts +4 -0
  410. package/text-input/Suggestion.js +67 -0
  411. package/text-input/Suggestions.d.ts +4 -0
  412. package/text-input/Suggestions.js +94 -0
  413. package/text-input/TextInput.accessibility.test.d.ts +1 -0
  414. package/text-input/TextInput.accessibility.test.js +321 -0
  415. package/text-input/TextInput.js +327 -556
  416. package/text-input/TextInput.stories.tsx +276 -276
  417. package/text-input/TextInput.test.d.ts +1 -0
  418. package/text-input/TextInput.test.js +1429 -1398
  419. package/text-input/types.d.ts +66 -24
  420. package/textarea/Textarea.accessibility.test.d.ts +1 -0
  421. package/textarea/Textarea.accessibility.test.js +155 -0
  422. package/textarea/Textarea.js +78 -131
  423. package/textarea/Textarea.stories.tsx +174 -0
  424. package/textarea/Textarea.test.d.ts +1 -0
  425. package/textarea/Textarea.test.js +161 -202
  426. package/textarea/types.d.ts +23 -16
  427. package/toggle-group/ToggleGroup.accessibility.test.d.ts +1 -0
  428. package/toggle-group/ToggleGroup.accessibility.test.js +107 -0
  429. package/toggle-group/ToggleGroup.d.ts +2 -2
  430. package/toggle-group/ToggleGroup.js +92 -107
  431. package/toggle-group/ToggleGroup.stories.tsx +56 -11
  432. package/toggle-group/ToggleGroup.test.d.ts +1 -0
  433. package/toggle-group/ToggleGroup.test.js +77 -65
  434. package/toggle-group/types.d.ts +36 -19
  435. package/typography/Typography.accessibility.test.d.ts +1 -0
  436. package/typography/Typography.accessibility.test.js +339 -0
  437. package/typography/Typography.d.ts +4 -0
  438. package/typography/Typography.js +23 -0
  439. package/typography/Typography.stories.tsx +198 -0
  440. package/typography/types.d.ts +18 -0
  441. package/typography/types.js +5 -0
  442. package/useTheme.d.ts +1144 -1
  443. package/useTheme.js +4 -11
  444. package/useTranslatedLabels.d.ts +85 -0
  445. package/useTranslatedLabels.js +14 -0
  446. package/utils/BaseTypography.d.ts +21 -0
  447. package/utils/BaseTypography.js +94 -0
  448. package/utils/FocusLock.d.ts +13 -0
  449. package/utils/FocusLock.js +124 -0
  450. package/wizard/Wizard.accessibility.test.d.ts +1 -0
  451. package/wizard/Wizard.accessibility.test.js +55 -0
  452. package/wizard/Wizard.d.ts +1 -1
  453. package/wizard/Wizard.js +78 -120
  454. package/wizard/Wizard.stories.tsx +67 -19
  455. package/wizard/Wizard.test.d.ts +1 -0
  456. package/wizard/Wizard.test.js +72 -86
  457. package/wizard/types.d.ts +14 -10
  458. package/ThemeContext.d.ts +0 -10
  459. package/ThemeContext.js +0 -243
  460. package/card/ice-cream.jpg +0 -0
  461. package/common/OpenSans.css +0 -81
  462. package/common/RequiredComponent.js +0 -32
  463. package/common/fonts/OpenSans-Bold.ttf +0 -0
  464. package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  465. package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  466. package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  467. package/common/fonts/OpenSans-Italic.ttf +0 -0
  468. package/common/fonts/OpenSans-Light.ttf +0 -0
  469. package/common/fonts/OpenSans-LightItalic.ttf +0 -0
  470. package/common/fonts/OpenSans-Regular.ttf +0 -0
  471. package/common/fonts/OpenSans-SemiBold.ttf +0 -0
  472. package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  473. package/list/List.d.ts +0 -4
  474. package/list/List.js +0 -47
  475. package/list/List.stories.tsx +0 -95
  476. package/list/types.d.ts +0 -7
  477. package/number-input/numberInputContextTypes.d.ts +0 -19
  478. package/paginator/Icons.js +0 -66
  479. package/progress-bar/ProgressBar.stories.jsx +0 -58
  480. package/radio/Radio.d.ts +0 -4
  481. package/radio/Radio.js +0 -174
  482. package/radio/Radio.stories.tsx +0 -192
  483. package/radio/Radio.test.js +0 -71
  484. package/radio/types.d.ts +0 -54
  485. package/resultsetTable/ResultsetTable.d.ts +0 -4
  486. package/resultsetTable/ResultsetTable.js +0 -254
  487. package/resultsetTable/ResultsetTable.test.js +0 -306
  488. package/row/Row.d.ts +0 -3
  489. package/row/Row.js +0 -127
  490. package/row/Row.stories.tsx +0 -237
  491. package/row/types.d.ts +0 -10
  492. package/select/Icons.d.ts +0 -10
  493. package/select/Icons.js +0 -93
  494. package/stack/Stack.d.ts +0 -3
  495. package/stack/Stack.js +0 -97
  496. package/stack/Stack.stories.tsx +0 -164
  497. package/stack/types.d.ts +0 -9
  498. package/table/Table.stories.jsx +0 -277
  499. package/text/Text.d.ts +0 -7
  500. package/text/Text.js +0 -30
  501. package/text/Text.stories.tsx +0 -19
  502. package/textarea/Textarea.stories.jsx +0 -157
  503. /package/{list → action-icon}/types.js +0 -0
  504. /package/{radio → breadcrumbs}/types.js +0 -0
  505. /package/{resultsetTable → bulleted-list}/types.js +0 -0
  506. /package/{row → container}/types.js +0 -0
  507. /package/{stack → contextual-menu}/types.js +0 -0
  508. /package/{number-input/numberInputContextTypes.js → divider/types.js} +0 -0
@@ -1,11 +1,11 @@
1
- declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
- declare type Margin = {
1
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
+ type Margin = {
3
3
  top?: Space;
4
4
  bottom?: Space;
5
5
  left?: Space;
6
6
  right?: Space;
7
7
  };
8
- declare type Props = {
8
+ type Props = {
9
9
  /**
10
10
  * Text to be placed above the textarea.
11
11
  */
@@ -34,6 +34,10 @@ declare type Props = {
34
34
  * If true, the component will be disabled.
35
35
  */
36
36
  disabled?: boolean;
37
+ /**
38
+ * If true, the component will not be mutable, meaning the user can not edit the control.
39
+ */
40
+ readOnly?: boolean;
37
41
  /**
38
42
  * If true, the textarea will be optional, showing '(Optional)'
39
43
  * next to the label. Otherwise, the field will be considered required
@@ -56,26 +60,29 @@ declare type Props = {
56
60
  * This function will be called when the user types within the textarea.
57
61
  * An object including the current value and the error (if the value
58
62
  * entered is not valid) will be passed to this function.
59
- * If there is no error, error will be null.
63
+ * If there is no error, error will not be defined.
60
64
  */
61
65
  onChange?: (val: {
62
66
  value: string;
63
- error: string | null;
67
+ error?: string;
64
68
  }) => void;
65
69
  /**
66
70
  * This function will be called when the textarea loses the focus. An
67
71
  * object including the textarea value and the error (if the value entered
68
72
  * is not valid) will be passed to this function. If there is no error,
69
- * error will be null.
73
+ * error will not be defined.
70
74
  */
71
75
  onBlur?: (val: {
72
76
  value: string;
73
- error: string | null;
77
+ error?: string;
74
78
  }) => void;
75
79
  /**
76
- * If it is defined, the component will change its appearance, showing
77
- * the error below the textarea. If it is not defined, the error
78
- * messages will be managed internally, but never displayed on its own.
80
+ * If it is a defined value and also a truthy string, the component will
81
+ * change its appearance, showing the error below the textarea. If the
82
+ * defined value is an empty string, it will reserve a space below the
83
+ * component for a future error, but it would not change its look. In
84
+ * case of being undefined or null, both the appearance and the space for
85
+ * the error message would not be modified.
79
86
  */
80
87
  error?: string;
81
88
  /**
@@ -85,17 +92,17 @@ declare type Props = {
85
92
  * pattern, the onBlur and onChange functions will be called with the
86
93
  * current value and an internal error informing that this value does not
87
94
  * match the pattern. If the pattern is met, the error parameter of both
88
- * events will be null.
95
+ * events will not be defined.
89
96
  */
90
97
  pattern?: string;
91
98
  /**
92
- * Specifies the minimun length allowed by the textarea.
99
+ * Specifies the minimum length allowed by the textarea.
93
100
  * This will be checked both when the textarea loses the
94
101
  * focus and while typing within it. If the string entered does not
95
102
  * comply the minimum length, the onBlur and onChange functions will be called
96
103
  * with the current value and an internal error informing that the value
97
104
  * length does not comply the specified range. If a valid length is
98
- * reached, the error parameter of both events will be null.
105
+ * reached, the error parameter of both events will not be defined.
99
106
  */
100
107
  minLength?: number;
101
108
  /**
@@ -105,7 +112,7 @@ declare type Props = {
105
112
  * comply the maximum length, the onBlur and onChange functions will be called
106
113
  * with the current value and an internal error informing that the value
107
114
  * length does not comply the specified range. If a valid length is
108
- * reached, the error parameter of both events will be null.
115
+ * reached, the error parameter of both events will not be defined.
109
116
  */
110
117
  maxLength?: number;
111
118
  /**
@@ -119,7 +126,7 @@ declare type Props = {
119
126
  */
120
127
  margin?: Space | Margin;
121
128
  /**
122
- * Size of the component ('small' | 'medium' | 'large' | 'fillParent').
129
+ * Size of the component.
123
130
  */
124
131
  size?: "small" | "medium" | "large" | "fillParent";
125
132
  /**
@@ -130,5 +137,5 @@ declare type Props = {
130
137
  /**
131
138
  * Reference to the component.
132
139
  */
133
- export declare type RefType = HTMLDivElement;
140
+ export type RefType = HTMLDivElement;
134
141
  export default Props;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,107 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
5
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
6
+ var _react = _interopRequireDefault(require("react"));
7
+ var _react2 = require("@testing-library/react");
8
+ var _axeHelper = require("../../test/accessibility/axe-helper.js");
9
+ var _ToggleGroup = _interopRequireDefault(require("./ToggleGroup"));
10
+ var ethernetSVG = /*#__PURE__*/_react["default"].createElement("svg", {
11
+ xmlns: "http://www.w3.org/2000/svg",
12
+ height: "24px",
13
+ viewBox: "0 0 24 24",
14
+ width: "24px",
15
+ fill: "currentColor"
16
+ }, /*#__PURE__*/_react["default"].createElement("path", {
17
+ d: "M0 0h24v24H0V0z",
18
+ fill: "none"
19
+ }), /*#__PURE__*/_react["default"].createElement("path", {
20
+ d: "M7.77 6.76L6.23 5.48.82 12l5.41 6.52 1.54-1.28L3.42 12l4.35-5.24zM7 13h2v-2H7v2zm10-2h-2v2h2v-2zm-6 2h2v-2h-2v2zm6.77-7.52l-1.54 1.28L20.58 12l-4.35 5.24 1.54 1.28L23.18 12l-5.41-6.52z"
21
+ }));
22
+ var gMobileSVG = /*#__PURE__*/_react["default"].createElement("svg", {
23
+ xmlns: "http://www.w3.org/2000/svg",
24
+ height: "24px",
25
+ viewBox: "0 0 24 24",
26
+ width: "24px",
27
+ fill: "currentColor"
28
+ }, /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("path", {
29
+ d: "M0,0h24v24H0V0z",
30
+ fill: "none"
31
+ })), /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("path", {
32
+ d: "M3,7v2h5v2H4v2h4v2H3v2h5c1.1,0,2-0.9,2-2v-1.5c0-0.83-0.67-1.5-1.5-1.5c0.83,0,1.5-0.67,1.5-1.5V9c0-1.1-0.9-2-2-2H3z M21,11v4c0,1.1-0.9,2-2,2h-5c-1.1,0-2-0.9-2-2V9c0-1.1,0.9-2,2-2h5c1.1,0,2,0.9,2,2h-7v6h5v-2h-2.5v-2H21z"
33
+ }))));
34
+ var wifiSVG = /*#__PURE__*/_react["default"].createElement("svg", {
35
+ xmlns: "http://www.w3.org/2000/svg",
36
+ height: "24px",
37
+ viewBox: "0 0 24 24",
38
+ width: "24px",
39
+ fill: "currentColor"
40
+ }, /*#__PURE__*/_react["default"].createElement("path", {
41
+ d: "M0 0h24v24H0V0zm0 0h24v24H0V0z",
42
+ fill: "none"
43
+ }), /*#__PURE__*/_react["default"].createElement("path", {
44
+ d: "M1 9l2 2c4.97-4.97 13.03-4.97 18 0l2-2C16.93 2.93 7.08 2.93 1 9zm8 8l3 3 3-3c-1.65-1.66-4.34-1.66-6 0zm-4-4l2 2c2.76-2.76 7.24-2.76 10 0l2-2C15.14 9.14 8.87 9.14 5 13z"
45
+ }));
46
+ var options = [{
47
+ value: 1,
48
+ icon: wifiSVG,
49
+ title: "WiFi connection"
50
+ }, {
51
+ value: 2,
52
+ icon: ethernetSVG,
53
+ title: "Ethernet connection"
54
+ }, {
55
+ value: 3,
56
+ icon: gMobileSVG,
57
+ title: "3G Mobile data connection"
58
+ }];
59
+ describe("Toggle group component accessibility tests", function () {
60
+ it("Should not have basic accessibility issues", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
61
+ var _render, container, results;
62
+ return _regenerator["default"].wrap(function _callee$(_context) {
63
+ while (1) switch (_context.prev = _context.next) {
64
+ case 0:
65
+ _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ToggleGroup["default"], {
66
+ label: "Toggle group label",
67
+ helperText: "Toggle group helper text",
68
+ options: options,
69
+ margin: "medium",
70
+ defaultValue: [2],
71
+ multiple: true
72
+ })), container = _render.container;
73
+ _context.next = 3;
74
+ return (0, _axeHelper.axe)(container);
75
+ case 3:
76
+ results = _context.sent;
77
+ expect(results).toHaveNoViolations();
78
+ case 5:
79
+ case "end":
80
+ return _context.stop();
81
+ }
82
+ }, _callee);
83
+ })));
84
+ it("Should not have basic accessibility issues for disabled mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
85
+ var _render2, container, results;
86
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
87
+ while (1) switch (_context2.prev = _context2.next) {
88
+ case 0:
89
+ _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ToggleGroup["default"], {
90
+ label: "Toggle group label",
91
+ helperText: "Toggle group helper text",
92
+ options: options,
93
+ margin: "medium",
94
+ disabled: true
95
+ })), container = _render2.container;
96
+ _context2.next = 3;
97
+ return (0, _axeHelper.axe)(container);
98
+ case 3:
99
+ results = _context2.sent;
100
+ expect(results).toHaveNoViolations();
101
+ case 5:
102
+ case "end":
103
+ return _context2.stop();
104
+ }
105
+ }, _callee2);
106
+ })));
107
+ });
@@ -1,4 +1,4 @@
1
1
  /// <reference types="react" />
2
- import ToogleGroupPropsType from "./types";
3
- declare const DxcToggleGroup: ({ label, helperText, value, onChange, disabled, options, margin, multiple, tabIndex, }: ToogleGroupPropsType) => JSX.Element;
2
+ import ToggleGroupPropsType from "./types";
3
+ declare const DxcToggleGroup: ({ label, helperText, defaultValue, value, onChange, disabled, options, margin, multiple, tabIndex, }: ToggleGroupPropsType) => JSX.Element;
4
4
  export default DxcToggleGroup;
@@ -1,138 +1,126 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  var _typeof3 = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports["default"] = void 0;
11
-
12
9
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
13
-
14
10
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
-
16
11
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
-
18
12
  var _react = _interopRequireWildcard(require("react"));
19
-
20
13
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
-
22
- var _uuid = require("uuid");
23
-
24
- var _variables = require("../common/variables.js");
25
-
14
+ var _variables = require("../common/variables");
26
15
  var _useTheme = _interopRequireDefault(require("../useTheme"));
27
-
28
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9;
29
-
30
- 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); }
31
-
32
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(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; }
33
-
16
+ var _Flex = _interopRequireDefault(require("../flex/Flex"));
17
+ var _Icon = _interopRequireDefault(require("../icon/Icon"));
18
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7;
19
+ 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); }
20
+ 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 && {}.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; }
34
21
  var DxcToggleGroup = function DxcToggleGroup(_ref) {
35
22
  var label = _ref.label,
36
- helperText = _ref.helperText,
37
- value = _ref.value,
38
- onChange = _ref.onChange,
39
- _ref$disabled = _ref.disabled,
40
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
41
- options = _ref.options,
42
- margin = _ref.margin,
43
- _ref$multiple = _ref.multiple,
44
- multiple = _ref$multiple === void 0 ? false : _ref$multiple,
45
- _ref$tabIndex = _ref.tabIndex,
46
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
23
+ helperText = _ref.helperText,
24
+ defaultValue = _ref.defaultValue,
25
+ value = _ref.value,
26
+ onChange = _ref.onChange,
27
+ _ref$disabled = _ref.disabled,
28
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
29
+ options = _ref.options,
30
+ margin = _ref.margin,
31
+ _ref$multiple = _ref.multiple,
32
+ multiple = _ref$multiple === void 0 ? false : _ref$multiple,
33
+ _ref$tabIndex = _ref.tabIndex,
34
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
35
+ var toggleGroupLabelId = "label-toggle-group-".concat((0, _react.useId)());
36
+ var _useState = (0, _react.useState)(defaultValue !== null && defaultValue !== void 0 ? defaultValue : multiple ? [] : -1),
37
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
38
+ selectedValue = _useState2[0],
39
+ setSelectedValue = _useState2[1];
47
40
  var colorsTheme = (0, _useTheme["default"])();
48
-
49
- var _useState = (0, _react.useState)(multiple ? [] : -1),
50
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
51
- selectedValue = _useState2[0],
52
- setSelectedValue = _useState2[1];
53
-
54
- var _useState3 = (0, _react.useState)("toggle-group-".concat((0, _uuid.v4)())),
55
- _useState4 = (0, _slicedToArray2["default"])(_useState3, 1),
56
- toggleGroupId = _useState4[0];
57
-
58
41
  var handleToggleChange = function handleToggleChange(selectedOption) {
59
42
  var newSelectedOptions;
60
-
61
43
  if (value == null) {
62
44
  if (multiple && Array.isArray(selectedValue)) {
63
45
  newSelectedOptions = selectedValue.map(function (value) {
64
46
  return value;
65
47
  });
66
-
67
48
  if (newSelectedOptions.includes(selectedOption)) {
68
49
  var index = newSelectedOptions.indexOf(selectedOption);
69
50
  newSelectedOptions.splice(index, 1);
70
51
  } else {
71
52
  newSelectedOptions.push(selectedOption);
72
53
  }
73
-
74
54
  setSelectedValue(newSelectedOptions);
75
55
  } else setSelectedValue(selectedOption === selectedValue ? null : selectedOption);
76
56
  } else if (multiple) {
77
57
  newSelectedOptions = Array.isArray(value) ? value.map(function (v) {
78
58
  return v;
79
59
  }) : value;
80
-
81
60
  if (newSelectedOptions.includes(selectedOption)) {
82
61
  var _index = newSelectedOptions.indexOf(selectedOption);
83
-
84
62
  newSelectedOptions.splice(_index, 1);
85
63
  } else newSelectedOptions.push(selectedOption);
86
64
  }
87
-
88
65
  onChange === null || onChange === void 0 ? void 0 : onChange(multiple ? newSelectedOptions : selectedOption);
89
66
  };
90
-
91
- var handleKeyPress = function handleKeyPress(event, optionValue) {
92
- event.preventDefault();
93
- if (!disabled && (event.nativeEvent.code === "Enter" || event.nativeEvent.code === "Space")) handleToggleChange(optionValue);
67
+ var handleOnKeyDown = function handleOnKeyDown(event, optionValue) {
68
+ switch (event.key) {
69
+ case "Enter":
70
+ case " ":
71
+ event.preventDefault();
72
+ handleToggleChange(optionValue);
73
+ }
94
74
  };
95
-
96
75
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
97
76
  theme: colorsTheme.toggleGroup
98
77
  }, /*#__PURE__*/_react["default"].createElement(ToggleGroup, {
99
- margin: margin,
100
- disabled: disabled
78
+ margin: margin
101
79
  }, /*#__PURE__*/_react["default"].createElement(Label, {
102
- htmlFor: toggleGroupId,
80
+ id: toggleGroupLabelId,
103
81
  disabled: disabled
104
82
  }, label), /*#__PURE__*/_react["default"].createElement(HelperText, {
105
83
  disabled: disabled
106
84
  }, helperText), /*#__PURE__*/_react["default"].createElement(OptionsContainer, {
107
- id: toggleGroupId,
108
- role: multiple ? "group" : "radiogroup"
85
+ "aria-labelledby": toggleGroupLabelId
109
86
  }, options.map(function (option, i) {
110
- return /*#__PURE__*/_react["default"].createElement(ToggleContainer, {
111
- selected: multiple && Array.isArray(value) ? value ? value.includes(option.value) : Array.isArray(selectedValue) && selectedValue.includes(option.value) : value ? option.value === value : option.value === selectedValue,
112
- role: multiple ? "switch" : "radio",
113
- "aria-checked": multiple && Array.isArray(value) ? value ? value.includes(option.value) : Array.isArray(selectedValue) && selectedValue.includes(option.value) : value ? option.value === value : option.value === selectedValue,
114
- tabIndex: !disabled ? tabIndex : -1,
87
+ return /*#__PURE__*/_react["default"].createElement(ToggleButton, {
88
+ key: "toggle-".concat(i, "-").concat(option.label),
89
+ "aria-label": option.title,
90
+ "aria-pressed": multiple ? value ? Array.isArray(value) && value.includes(option.value) : Array.isArray(selectedValue) && selectedValue.includes(option.value) : value ? option.value === value : option.value === selectedValue,
91
+ disabled: disabled,
115
92
  onClick: function onClick() {
116
- return !disabled && handleToggleChange(option.value);
93
+ handleToggleChange(option.value);
117
94
  },
118
- isFirst: i === 0,
119
- isLast: i === options.length - 1,
120
- isIcon: option.icon,
121
- optionLabel: option.label,
122
- disabled: disabled,
123
- onKeyPress: function onKeyPress(event) {
124
- handleKeyPress(event, option.value);
95
+ onKeyDown: function onKeyDown(event) {
96
+ handleOnKeyDown(event, option.value);
125
97
  },
126
- key: "toggle-".concat(i, "-").concat(option.label)
127
- }, /*#__PURE__*/_react["default"].createElement(OptionContent, null, option.icon && /*#__PURE__*/_react["default"].createElement(IconContainer, {
98
+ tabIndex: !disabled ? tabIndex : -1,
99
+ title: option.title,
100
+ hasIcon: option.icon,
101
+ optionLabel: option.label,
102
+ selected: multiple ? value ? Array.isArray(value) && value.includes(option.value) : Array.isArray(selectedValue) && selectedValue.includes(option.value) : value ? option.value === value : option.value === selectedValue
103
+ }, /*#__PURE__*/_react["default"].createElement(_Flex["default"], {
104
+ alignItems: "center"
105
+ }, option.icon && /*#__PURE__*/_react["default"].createElement(IconContainer, {
128
106
  optionLabel: option.label
129
- }, typeof option.icon === "string" ? /*#__PURE__*/_react["default"].createElement(Icon, {
130
- src: option.icon
107
+ }, typeof option.icon === "string" ? /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
108
+ icon: option.icon
131
109
  }) : option.icon), option.label && /*#__PURE__*/_react["default"].createElement(LabelContainer, null, option.label)));
132
110
  }))));
133
111
  };
134
-
135
- var Label = _styledComponents["default"].label(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"])), function (props) {
112
+ var ToggleGroup = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n flex-direction: column;\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
113
+ return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
114
+ }, function (props) {
115
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
116
+ }, function (props) {
117
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
118
+ }, function (props) {
119
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
120
+ }, function (props) {
121
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
122
+ });
123
+ var Label = _styledComponents["default"].label(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"])), function (props) {
136
124
  return props.disabled ? props.theme.disabledLabelFontColor : props.theme.labelFontColor;
137
125
  }, function (props) {
138
126
  return props.theme.labelFontFamily;
@@ -145,8 +133,7 @@ var Label = _styledComponents["default"].label(_templateObject || (_templateObje
145
133
  }, function (props) {
146
134
  return props.theme.labelLineHeight;
147
135
  });
148
-
149
- var HelperText = _styledComponents["default"].span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"])), function (props) {
136
+ var HelperText = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"])), function (props) {
150
137
  return props.disabled ? props.theme.disabledHelperTextFontcolor : props.theme.helperTextFontColor;
151
138
  }, function (props) {
152
139
  return props.theme.helperTextFontFamily;
@@ -159,20 +146,7 @@ var HelperText = _styledComponents["default"].span(_templateObject2 || (_templat
159
146
  }, function (props) {
160
147
  return props.theme.helperTextLineHeight;
161
148
  });
162
-
163
- var ToggleGroup = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n flex-direction: column;\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
164
- return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
165
- }, function (props) {
166
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
167
- }, function (props) {
168
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
169
- }, function (props) {
170
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
171
- }, function (props) {
172
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
173
- });
174
-
175
- var OptionsContainer = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: row;\n opacity: 1;\n height: calc(48px - 4px - 4px);\n border-width: ", ";\n border-style: ", ";\n border-radius: ", ";\n border-color: ", ";\n background-color: ", ";\n padding: 4px;\n margin-top: ", ";\n"])), function (props) {
149
+ var OptionsContainer = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n gap: 0.25rem;\n width: max-content;\n height: calc(48px - 4px - 4px);\n padding: 0.25rem;\n border-width: ", ";\n border-style: ", ";\n border-radius: ", ";\n border-color: ", ";\n margin-top: ", ";\n background-color: ", ";\n"])), function (props) {
176
150
  return props.theme.containerBorderThickness;
177
151
  }, function (props) {
178
152
  return props.theme.containerBorderStyle;
@@ -180,18 +154,36 @@ var OptionsContainer = _styledComponents["default"].div(_templateObject4 || (_te
180
154
  return props.theme.containerBorderRadius;
181
155
  }, function (props) {
182
156
  return props.theme.containerBorderColor;
183
- }, function (props) {
184
- return props.theme.containerBackgroundColor;
185
157
  }, function (props) {
186
158
  return props.theme.containerMarginTop;
159
+ }, function (props) {
160
+ return props.theme.containerBackgroundColor;
187
161
  });
188
-
189
- var ToggleContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n justify-content: center;\n margin-right: ", ";\n\n ", "\n"])), function (props) {
190
- return !props.isLast && "4px";
162
+ var ToggleButton = _styledComponents["default"].button(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n justify-content: center;\n padding-left: ", ";\n padding-right: ", ";\n border-width: ", ";\n border-style: ", ";\n border-radius: ", ";\n background-color: ", ";\n color: ", ";\n cursor: pointer;\n\n &:hover {\n background-color: ", ";\n }\n &:active {\n background-color: ", ";\n color: #ffffff;\n }\n &:focus {\n outline: none;\n box-shadow: ", ";\n }\n &:disabled {\n background-color: ", ";\n color: ", ";\n cursor: not-allowed;\n }\n"])), function (props) {
163
+ return props.optionLabel && props.hasIcon || props.optionLabel && !props.hasIcon ? props.theme.labelPaddingLeft : props.theme.iconPaddingLeft;
164
+ }, function (props) {
165
+ return props.optionLabel && props.hasIcon || props.optionLabel && !props.hasIcon ? props.theme.labelPaddingRight : props.theme.iconPaddingRight;
166
+ }, function (props) {
167
+ return props.theme.optionBorderThickness;
168
+ }, function (props) {
169
+ return props.theme.optionBorderStyle;
170
+ }, function (props) {
171
+ return props.theme.optionBorderRadius;
172
+ }, function (props) {
173
+ return props.selected ? props.theme.selectedBackgroundColor : props.theme.unselectedBackgroundColor;
174
+ }, function (props) {
175
+ return props.selected ? props.theme.selectedFontColor : props.theme.unselectedFontColor;
191
176
  }, function (props) {
192
- return "\n background-color: ".concat(props.selected ? props.disabled ? props.theme.selectedDisabledBackgroundColor : props.theme.selectedBackgroundColor : props.disabled ? props.theme.unselectedDisabledBackgroundColor : props.theme.unselectedBackgroundColor, ";\n border-width: ").concat(props.theme.optionBorderThickness, ";\n border-style: ").concat(props.theme.optionBorderStyle, ";\n border-radius: ").concat(props.theme.optionBorderRadius, ";\n padding-left: ").concat(props.optionLabel && props.isIcon || props.optionLabel && !props.isIcon ? props.theme.labelPaddingLeft : props.theme.iconPaddingLeft, ";\n padding-right: ").concat(props.optionLabel && props.isIcon || props.optionLabel && !props.isIcon ? props.theme.labelPaddingRight : props.theme.iconPaddingRight, ";\n ").concat(!props.disabled ? ":hover {\n background-color: ".concat(props.selected ? props.theme.selectedHoverBackgroundColor : props.theme.unselectedHoverBackgroundColor, ";\n }\n :active {\n background-color: ").concat(props.selected ? props.theme.selectedActiveBackgroundColor : props.theme.unselectedActiveBackgroundColor, ";\n color: #ffffff;\n } \n :focus {\n border-color: transparent;\n box-shadow: 0 0 0 ").concat(props.theme.optionFocusBorderThickness, " ").concat(props.backgroundType === "dark" ? props.theme.focusColorOnDark : props.theme.focusColor, ";\n }\n &:focus-visible {\n outline: none;\n }\n cursor: pointer;\n color: ").concat(props.selected ? props.theme.selectedFontColor : props.theme.unselectedFontColor, ";\n") : "color: ".concat(props.selected ? props.theme.selectedDisabledFontColor : props.theme.unselectedDisabledFontColor, ";\n cursor: not-allowed;"), "\n ");
177
+ return props.selected ? props.theme.selectedHoverBackgroundColor : props.theme.unselectedHoverBackgroundColor;
178
+ }, function (props) {
179
+ return props.selected ? props.theme.selectedActiveBackgroundColor : props.theme.unselectedActiveBackgroundColor;
180
+ }, function (props) {
181
+ return "0 0 0 ".concat(props.theme.optionFocusBorderThickness, " ").concat(props.theme.focusColor);
182
+ }, function (props) {
183
+ return props.selected ? props.theme.selectedDisabledBackgroundColor : props.theme.unselectedDisabledBackgroundColor;
184
+ }, function (props) {
185
+ return props.selected ? props.theme.selectedDisabledFontColor : props.theme.unselectedDisabledFontColor;
193
186
  });
194
-
195
187
  var LabelContainer = _styledComponents["default"].span(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n"])), function (props) {
196
188
  return props.theme.optionLabelFontFamily;
197
189
  }, function (props) {
@@ -201,14 +193,7 @@ var LabelContainer = _styledComponents["default"].span(_templateObject6 || (_tem
201
193
  }, function (props) {
202
194
  return props.theme.optionLabelFontWeight;
203
195
  });
204
-
205
- var OptionContent = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: row;\n align-items: center;\n"])));
206
-
207
- var Icon = _styledComponents["default"].img(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])([""])));
208
-
209
- var IconContainer = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: ", ";\n height: 24px;\n width: 24px;\n overflow: hidden;\n display: flex;\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"])), function (props) {
196
+ var IconContainer = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n margin-right: ", ";\n overflow: hidden;\n font-size: 24px;\n svg {\n height: 24px;\n width: 24px;\n }\n"])), function (props) {
210
197
  return props.optionLabel && props.theme.iconMarginRight;
211
198
  });
212
-
213
- var _default = DxcToggleGroup;
214
- exports["default"] = _default;
199
+ var _default = exports["default"] = DxcToggleGroup;