@dxc-technology/halstack-react 0.0.0-1021ecf → 0.0.0-10af1a2

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 (446) 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.js +71 -0
  7. package/accordion/Accordion.d.ts +1 -1
  8. package/accordion/Accordion.js +105 -192
  9. package/accordion/Accordion.stories.tsx +83 -149
  10. package/accordion/Accordion.test.js +56 -0
  11. package/accordion/types.d.ts +11 -22
  12. package/accordion-group/AccordionGroup.accessibility.test.js +88 -0
  13. package/accordion-group/AccordionGroup.d.ts +3 -3
  14. package/accordion-group/AccordionGroup.js +38 -107
  15. package/accordion-group/AccordionGroup.stories.tsx +95 -68
  16. package/accordion-group/AccordionGroup.test.js +98 -0
  17. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  18. package/accordion-group/AccordionGroupAccordion.js +31 -0
  19. package/accordion-group/AccordionGroupContext.d.ts +3 -0
  20. package/accordion-group/AccordionGroupContext.js +8 -0
  21. package/accordion-group/types.d.ts +17 -22
  22. package/action-icon/ActionIcon.accessibility.test.js +63 -0
  23. package/action-icon/ActionIcon.d.ts +4 -0
  24. package/action-icon/ActionIcon.js +48 -0
  25. package/action-icon/ActionIcon.stories.tsx +41 -0
  26. package/action-icon/ActionIcon.test.js +64 -0
  27. package/action-icon/types.d.ts +26 -0
  28. package/alert/Alert.accessibility.test.js +95 -0
  29. package/alert/Alert.js +40 -127
  30. package/alert/Alert.stories.tsx +28 -0
  31. package/alert/Alert.test.js +75 -0
  32. package/alert/types.d.ts +5 -5
  33. package/badge/Badge.accessibility.test.js +129 -0
  34. package/badge/Badge.d.ts +4 -0
  35. package/badge/Badge.js +142 -40
  36. package/badge/Badge.stories.tsx +210 -0
  37. package/badge/Badge.test.js +30 -0
  38. package/badge/types.d.ts +54 -0
  39. package/bleed/Bleed.d.ts +3 -0
  40. package/bleed/Bleed.js +43 -0
  41. package/bleed/Bleed.stories.tsx +342 -0
  42. package/bleed/types.d.ts +37 -0
  43. package/box/Box.accessibility.test.js +33 -0
  44. package/box/Box.d.ts +1 -1
  45. package/box/Box.js +30 -81
  46. package/box/Box.stories.tsx +38 -51
  47. package/box/Box.test.js +13 -0
  48. package/box/types.d.ts +3 -14
  49. package/breadcrumbs/Breadcrumbs.accessibility.test.d.ts +1 -0
  50. package/breadcrumbs/Breadcrumbs.accessibility.test.js +96 -0
  51. package/breadcrumbs/Breadcrumbs.d.ts +4 -0
  52. package/breadcrumbs/Breadcrumbs.js +79 -0
  53. package/breadcrumbs/Breadcrumbs.stories.tsx +194 -0
  54. package/breadcrumbs/Breadcrumbs.test.d.ts +1 -0
  55. package/breadcrumbs/Breadcrumbs.test.js +169 -0
  56. package/breadcrumbs/Item.d.ts +4 -0
  57. package/breadcrumbs/Item.js +52 -0
  58. package/breadcrumbs/dropdownTheme.d.ts +53 -0
  59. package/breadcrumbs/dropdownTheme.js +62 -0
  60. package/breadcrumbs/types.d.ts +16 -0
  61. package/breadcrumbs/types.js +5 -0
  62. package/bulleted-list/BulletedList.accessibility.test.js +119 -0
  63. package/bulleted-list/BulletedList.d.ts +7 -0
  64. package/bulleted-list/BulletedList.js +92 -0
  65. package/bulleted-list/BulletedList.stories.tsx +115 -0
  66. package/bulleted-list/types.d.ts +38 -0
  67. package/bulleted-list/types.js +5 -0
  68. package/button/Button.accessibility.test.js +127 -0
  69. package/button/Button.d.ts +1 -1
  70. package/button/Button.js +64 -122
  71. package/button/Button.stories.tsx +155 -106
  72. package/button/Button.test.js +38 -0
  73. package/button/types.d.ts +12 -12
  74. package/card/Card.accessibility.test.js +36 -0
  75. package/card/Card.d.ts +1 -1
  76. package/card/Card.js +59 -102
  77. package/card/Card.stories.tsx +12 -42
  78. package/card/Card.test.js +39 -0
  79. package/card/types.d.ts +6 -11
  80. package/checkbox/Checkbox.accessibility.test.js +87 -0
  81. package/checkbox/Checkbox.d.ts +2 -2
  82. package/checkbox/Checkbox.js +143 -181
  83. package/checkbox/Checkbox.stories.tsx +166 -136
  84. package/checkbox/Checkbox.test.js +199 -0
  85. package/checkbox/types.d.ts +18 -6
  86. package/chip/Chip.accessibility.test.js +67 -0
  87. package/chip/Chip.d.ts +1 -1
  88. package/chip/Chip.js +49 -122
  89. package/chip/Chip.stories.tsx +109 -31
  90. package/chip/Chip.test.js +41 -0
  91. package/chip/types.d.ts +8 -16
  92. package/common/coreTokens.d.ts +237 -0
  93. package/common/coreTokens.js +184 -0
  94. package/common/utils.d.ts +1 -0
  95. package/common/utils.js +6 -12
  96. package/common/variables.d.ts +1392 -0
  97. package/common/variables.js +1080 -1428
  98. package/container/Container.d.ts +4 -0
  99. package/container/Container.js +194 -0
  100. package/container/Container.stories.tsx +214 -0
  101. package/container/types.d.ts +74 -0
  102. package/container/types.js +5 -0
  103. package/contextual-menu/ContextualMenu.accessibility.test.js +97 -0
  104. package/contextual-menu/ContextualMenu.d.ts +5 -0
  105. package/contextual-menu/ContextualMenu.js +88 -0
  106. package/contextual-menu/ContextualMenu.stories.tsx +232 -0
  107. package/contextual-menu/ContextualMenu.test.js +205 -0
  108. package/contextual-menu/GroupItem.d.ts +4 -0
  109. package/contextual-menu/GroupItem.js +67 -0
  110. package/contextual-menu/ItemAction.d.ts +4 -0
  111. package/contextual-menu/ItemAction.js +51 -0
  112. package/contextual-menu/MenuItem.d.ts +4 -0
  113. package/contextual-menu/MenuItem.js +29 -0
  114. package/contextual-menu/SingleItem.d.ts +4 -0
  115. package/contextual-menu/SingleItem.js +38 -0
  116. package/contextual-menu/types.d.ts +58 -0
  117. package/contextual-menu/types.js +5 -0
  118. package/date-input/Calendar.d.ts +4 -0
  119. package/date-input/Calendar.js +214 -0
  120. package/date-input/DateInput.accessibility.test.js +228 -0
  121. package/date-input/DateInput.js +170 -306
  122. package/date-input/DateInput.stories.tsx +210 -56
  123. package/date-input/DateInput.test.js +808 -0
  124. package/date-input/DatePicker.d.ts +4 -0
  125. package/date-input/DatePicker.js +121 -0
  126. package/date-input/YearPicker.d.ts +4 -0
  127. package/date-input/YearPicker.js +100 -0
  128. package/date-input/types.d.ts +86 -22
  129. package/dialog/Dialog.accessibility.test.js +69 -0
  130. package/dialog/Dialog.d.ts +1 -1
  131. package/dialog/Dialog.js +56 -129
  132. package/dialog/Dialog.stories.tsx +326 -167
  133. package/dialog/Dialog.test.js +307 -0
  134. package/dialog/types.d.ts +18 -25
  135. package/divider/Divider.accessibility.test.js +33 -0
  136. package/divider/Divider.d.ts +4 -0
  137. package/divider/Divider.js +36 -0
  138. package/divider/Divider.stories.tsx +223 -0
  139. package/divider/Divider.test.js +38 -0
  140. package/divider/types.d.ts +21 -0
  141. package/divider/types.js +5 -0
  142. package/dropdown/Dropdown.accessibility.test.js +180 -0
  143. package/dropdown/Dropdown.d.ts +1 -1
  144. package/dropdown/Dropdown.js +233 -329
  145. package/dropdown/Dropdown.stories.tsx +244 -64
  146. package/dropdown/Dropdown.test.js +599 -0
  147. package/dropdown/DropdownMenu.d.ts +4 -0
  148. package/dropdown/DropdownMenu.js +63 -0
  149. package/dropdown/DropdownMenuItem.d.ts +4 -0
  150. package/dropdown/DropdownMenuItem.js +71 -0
  151. package/dropdown/types.d.ts +37 -30
  152. package/file-input/FileInput.accessibility.test.js +160 -0
  153. package/file-input/FileInput.d.ts +2 -2
  154. package/file-input/FileInput.js +246 -393
  155. package/file-input/FileInput.stories.tsx +123 -12
  156. package/file-input/FileInput.test.js +382 -0
  157. package/file-input/FileItem.d.ts +4 -14
  158. package/file-input/FileItem.js +61 -120
  159. package/file-input/types.d.ts +25 -8
  160. package/flex/Flex.d.ts +4 -0
  161. package/flex/Flex.js +57 -0
  162. package/flex/Flex.stories.tsx +112 -0
  163. package/flex/types.d.ts +97 -0
  164. package/flex/types.js +5 -0
  165. package/footer/Footer.accessibility.test.js +125 -0
  166. package/footer/Footer.d.ts +1 -1
  167. package/footer/Footer.js +73 -193
  168. package/footer/Footer.stories.tsx +99 -21
  169. package/footer/Footer.test.js +85 -0
  170. package/footer/Icons.d.ts +3 -2
  171. package/footer/Icons.js +54 -23
  172. package/footer/types.d.ts +26 -27
  173. package/grid/Grid.d.ts +7 -0
  174. package/grid/Grid.js +76 -0
  175. package/grid/Grid.stories.tsx +219 -0
  176. package/grid/types.d.ts +115 -0
  177. package/grid/types.js +5 -0
  178. package/header/Header.accessibility.test.js +93 -0
  179. package/header/Header.d.ts +4 -3
  180. package/header/Header.js +104 -218
  181. package/header/Header.stories.tsx +168 -63
  182. package/header/Header.test.js +66 -0
  183. package/header/Icons.d.ts +2 -2
  184. package/header/Icons.js +5 -15
  185. package/header/types.d.ts +7 -21
  186. package/heading/Heading.accessibility.test.js +33 -0
  187. package/heading/Heading.js +10 -32
  188. package/heading/Heading.test.js +169 -0
  189. package/heading/types.d.ts +7 -7
  190. package/icon/Icon.accessibility.test.js +30 -0
  191. package/icon/Icon.d.ts +4 -0
  192. package/icon/Icon.js +33 -0
  193. package/icon/Icon.stories.tsx +28 -0
  194. package/icon/types.d.ts +4 -0
  195. package/icon/types.js +5 -0
  196. package/image/Image.accessibility.test.js +56 -0
  197. package/image/Image.d.ts +4 -0
  198. package/image/Image.js +70 -0
  199. package/image/Image.stories.tsx +129 -0
  200. package/image/types.d.ts +72 -0
  201. package/image/types.js +5 -0
  202. package/inset/Inset.d.ts +3 -0
  203. package/inset/Inset.js +43 -0
  204. package/inset/Inset.stories.tsx +230 -0
  205. package/inset/types.d.ts +37 -0
  206. package/inset/types.js +5 -0
  207. package/layout/ApplicationLayout.d.ts +16 -6
  208. package/layout/ApplicationLayout.js +88 -176
  209. package/layout/ApplicationLayout.stories.tsx +85 -94
  210. package/layout/Icons.d.ts +7 -0
  211. package/layout/Icons.js +41 -48
  212. package/layout/types.d.ts +19 -35
  213. package/link/Link.accessibility.test.js +108 -0
  214. package/link/Link.d.ts +3 -2
  215. package/link/Link.js +64 -108
  216. package/link/Link.stories.tsx +161 -54
  217. package/link/Link.test.js +63 -0
  218. package/link/types.d.ts +15 -35
  219. package/main.d.ts +20 -18
  220. package/main.js +89 -120
  221. package/nav-tabs/NavTabs.accessibility.test.js +44 -0
  222. package/nav-tabs/NavTabs.d.ts +7 -0
  223. package/nav-tabs/NavTabs.js +93 -0
  224. package/nav-tabs/NavTabs.stories.tsx +279 -0
  225. package/nav-tabs/NavTabs.test.js +77 -0
  226. package/nav-tabs/NavTabsContext.d.ts +3 -0
  227. package/nav-tabs/NavTabsContext.js +8 -0
  228. package/nav-tabs/Tab.d.ts +4 -0
  229. package/nav-tabs/Tab.js +117 -0
  230. package/nav-tabs/types.d.ts +52 -0
  231. package/nav-tabs/types.js +5 -0
  232. package/number-input/NumberInput.accessibility.test.js +228 -0
  233. package/number-input/NumberInput.js +47 -44
  234. package/number-input/NumberInput.stories.tsx +44 -28
  235. package/number-input/NumberInput.test.js +989 -0
  236. package/number-input/NumberInputContext.d.ts +3 -4
  237. package/number-input/NumberInputContext.js +3 -14
  238. package/number-input/types.d.ts +34 -15
  239. package/package.json +54 -53
  240. package/paginator/Paginator.accessibility.test.js +79 -0
  241. package/paginator/Paginator.js +46 -100
  242. package/paginator/Paginator.stories.tsx +24 -0
  243. package/paginator/Paginator.test.js +335 -0
  244. package/paginator/types.d.ts +3 -3
  245. package/paragraph/Paragraph.accessibility.test.js +28 -0
  246. package/paragraph/Paragraph.d.ts +5 -0
  247. package/paragraph/Paragraph.js +22 -0
  248. package/paragraph/Paragraph.stories.tsx +27 -0
  249. package/password-input/PasswordInput.accessibility.test.js +153 -0
  250. package/password-input/PasswordInput.js +58 -124
  251. package/password-input/PasswordInput.stories.tsx +1 -33
  252. package/password-input/PasswordInput.test.js +198 -0
  253. package/password-input/types.d.ts +21 -17
  254. package/progress-bar/ProgressBar.accessibility.test.js +35 -0
  255. package/progress-bar/ProgressBar.js +68 -92
  256. package/progress-bar/ProgressBar.stories.tsx +93 -0
  257. package/progress-bar/ProgressBar.test.js +93 -0
  258. package/progress-bar/types.d.ts +3 -3
  259. package/quick-nav/QuickNav.accessibility.test.js +57 -0
  260. package/quick-nav/QuickNav.d.ts +4 -0
  261. package/quick-nav/QuickNav.js +94 -0
  262. package/quick-nav/QuickNav.stories.tsx +356 -0
  263. package/quick-nav/types.d.ts +21 -0
  264. package/quick-nav/types.js +5 -0
  265. package/radio-group/Radio.d.ts +1 -1
  266. package/radio-group/Radio.js +67 -73
  267. package/radio-group/RadioGroup.accessibility.test.js +97 -0
  268. package/radio-group/RadioGroup.js +109 -141
  269. package/radio-group/RadioGroup.stories.tsx +171 -36
  270. package/radio-group/RadioGroup.test.js +756 -0
  271. package/radio-group/types.d.ts +88 -10
  272. package/resultset-table/Icons.d.ts +7 -0
  273. package/resultset-table/Icons.js +47 -0
  274. package/resultset-table/ResultsetTable.accessibility.test.js +285 -0
  275. package/resultset-table/ResultsetTable.d.ts +7 -0
  276. package/resultset-table/ResultsetTable.js +171 -0
  277. package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +173 -37
  278. package/resultset-table/ResultsetTable.test.js +381 -0
  279. package/{resultsetTable → resultset-table}/types.d.ts +44 -11
  280. package/resultset-table/types.js +5 -0
  281. package/select/Listbox.d.ts +4 -0
  282. package/select/Listbox.js +155 -0
  283. package/select/Option.d.ts +4 -0
  284. package/select/Option.js +89 -0
  285. package/select/Select.accessibility.test.js +228 -0
  286. package/select/Select.js +243 -504
  287. package/select/Select.stories.tsx +602 -255
  288. package/select/Select.test.js +2265 -0
  289. package/select/types.d.ts +65 -26
  290. package/sidenav/Sidenav.accessibility.test.js +59 -0
  291. package/sidenav/Sidenav.d.ts +6 -5
  292. package/sidenav/Sidenav.js +136 -71
  293. package/sidenav/Sidenav.stories.tsx +246 -151
  294. package/sidenav/Sidenav.test.js +37 -0
  295. package/sidenav/SidenavContext.d.ts +5 -0
  296. package/sidenav/SidenavContext.js +13 -0
  297. package/sidenav/types.d.ts +52 -26
  298. package/slider/Slider.accessibility.test.js +104 -0
  299. package/slider/Slider.d.ts +2 -2
  300. package/slider/Slider.js +149 -180
  301. package/slider/Slider.stories.tsx +68 -65
  302. package/slider/Slider.test.js +254 -0
  303. package/slider/types.d.ts +11 -3
  304. package/spinner/Spinner.accessibility.test.js +96 -0
  305. package/spinner/Spinner.js +34 -74
  306. package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +53 -27
  307. package/spinner/Spinner.test.js +55 -0
  308. package/spinner/types.d.ts +3 -3
  309. package/status-light/StatusLight.accessibility.test.js +157 -0
  310. package/status-light/StatusLight.d.ts +4 -0
  311. package/status-light/StatusLight.js +51 -0
  312. package/status-light/StatusLight.stories.tsx +74 -0
  313. package/status-light/StatusLight.test.js +25 -0
  314. package/status-light/types.d.ts +17 -0
  315. package/status-light/types.js +5 -0
  316. package/switch/Switch.accessibility.test.js +98 -0
  317. package/switch/Switch.d.ts +2 -2
  318. package/switch/Switch.js +149 -114
  319. package/switch/Switch.stories.tsx +56 -67
  320. package/switch/Switch.test.js +180 -0
  321. package/switch/types.d.ts +13 -5
  322. package/table/DropdownTheme.js +62 -0
  323. package/table/Table.accessibility.test.js +93 -0
  324. package/table/Table.d.ts +6 -2
  325. package/table/Table.js +78 -35
  326. package/table/Table.stories.tsx +663 -0
  327. package/table/Table.test.js +113 -0
  328. package/table/types.d.ts +34 -6
  329. package/tabs/Tab.d.ts +4 -0
  330. package/tabs/Tab.js +117 -0
  331. package/tabs/Tabs.accessibility.test.js +56 -0
  332. package/tabs/Tabs.d.ts +1 -1
  333. package/tabs/Tabs.js +306 -146
  334. package/tabs/Tabs.stories.tsx +127 -19
  335. package/tabs/Tabs.test.js +276 -0
  336. package/tabs/types.d.ts +46 -24
  337. package/tag/Tag.accessibility.test.js +69 -0
  338. package/tag/Tag.d.ts +1 -1
  339. package/tag/Tag.js +43 -85
  340. package/tag/Tag.stories.tsx +36 -29
  341. package/tag/Tag.test.js +41 -0
  342. package/tag/types.d.ts +25 -16
  343. package/text-input/Suggestion.d.ts +4 -0
  344. package/text-input/Suggestion.js +67 -0
  345. package/text-input/Suggestions.d.ts +4 -0
  346. package/text-input/Suggestions.js +94 -0
  347. package/text-input/TextInput.accessibility.test.js +321 -0
  348. package/text-input/TextInput.js +334 -557
  349. package/text-input/TextInput.stories.tsx +291 -273
  350. package/text-input/TextInput.test.js +1756 -0
  351. package/text-input/types.d.ts +70 -24
  352. package/textarea/Textarea.accessibility.test.js +155 -0
  353. package/textarea/Textarea.js +86 -135
  354. package/textarea/Textarea.stories.tsx +174 -0
  355. package/textarea/Textarea.test.js +406 -0
  356. package/textarea/types.d.ts +27 -16
  357. package/toggle-group/ToggleGroup.accessibility.test.js +107 -0
  358. package/toggle-group/ToggleGroup.d.ts +2 -2
  359. package/toggle-group/ToggleGroup.js +94 -106
  360. package/toggle-group/ToggleGroup.stories.tsx +56 -11
  361. package/toggle-group/ToggleGroup.test.js +137 -0
  362. package/toggle-group/types.d.ts +36 -19
  363. package/typography/Typography.accessibility.test.js +339 -0
  364. package/typography/Typography.d.ts +4 -0
  365. package/typography/Typography.js +23 -0
  366. package/typography/Typography.stories.tsx +198 -0
  367. package/typography/types.d.ts +18 -0
  368. package/typography/types.js +5 -0
  369. package/useTheme.d.ts +1144 -1
  370. package/useTheme.js +4 -11
  371. package/useTranslatedLabels.d.ts +85 -0
  372. package/useTranslatedLabels.js +14 -0
  373. package/utils/BaseTypography.d.ts +21 -0
  374. package/utils/BaseTypography.js +94 -0
  375. package/utils/FocusLock.d.ts +13 -0
  376. package/utils/FocusLock.js +124 -0
  377. package/wizard/Wizard.accessibility.test.js +55 -0
  378. package/wizard/Wizard.d.ts +1 -1
  379. package/wizard/Wizard.js +78 -120
  380. package/wizard/Wizard.stories.tsx +67 -19
  381. package/wizard/Wizard.test.js +114 -0
  382. package/wizard/types.d.ts +14 -10
  383. package/ThemeContext.d.ts +0 -15
  384. package/ThemeContext.js +0 -243
  385. package/V3Select/V3Select.js +0 -455
  386. package/V3Select/index.d.ts +0 -27
  387. package/V3Textarea/V3Textarea.js +0 -260
  388. package/V3Textarea/index.d.ts +0 -27
  389. package/card/ice-cream.jpg +0 -0
  390. package/common/OpenSans.css +0 -81
  391. package/common/RequiredComponent.js +0 -32
  392. package/common/fonts/OpenSans-Bold.ttf +0 -0
  393. package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  394. package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  395. package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  396. package/common/fonts/OpenSans-Italic.ttf +0 -0
  397. package/common/fonts/OpenSans-Light.ttf +0 -0
  398. package/common/fonts/OpenSans-LightItalic.ttf +0 -0
  399. package/common/fonts/OpenSans-Regular.ttf +0 -0
  400. package/common/fonts/OpenSans-SemiBold.ttf +0 -0
  401. package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  402. package/date/Date.js +0 -373
  403. package/date/index.d.ts +0 -27
  404. package/input-text/Icons.js +0 -22
  405. package/input-text/InputText.js +0 -611
  406. package/input-text/index.d.ts +0 -36
  407. package/list/List.d.ts +0 -8
  408. package/list/List.js +0 -47
  409. package/list/List.stories.tsx +0 -95
  410. package/number-input/numberInputContextTypes.d.ts +0 -19
  411. package/paginator/Icons.js +0 -66
  412. package/progress-bar/ProgressBar.stories.jsx +0 -58
  413. package/radio/Radio.d.ts +0 -4
  414. package/radio/Radio.js +0 -174
  415. package/radio/Radio.stories.tsx +0 -192
  416. package/radio/types.d.ts +0 -54
  417. package/resultsetTable/ResultsetTable.d.ts +0 -4
  418. package/resultsetTable/ResultsetTable.js +0 -251
  419. package/row/Row.d.ts +0 -11
  420. package/row/Row.js +0 -127
  421. package/row/Row.stories.tsx +0 -239
  422. package/stack/Stack.d.ts +0 -10
  423. package/stack/Stack.js +0 -97
  424. package/stack/Stack.stories.tsx +0 -166
  425. package/table/Table.stories.jsx +0 -277
  426. package/text/Text.d.ts +0 -7
  427. package/text/Text.js +0 -30
  428. package/text/Text.stories.tsx +0 -19
  429. package/textarea/Textarea.stories.jsx +0 -136
  430. package/toggle/Toggle.js +0 -186
  431. package/toggle/index.d.ts +0 -21
  432. package/upload/Upload.js +0 -201
  433. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  434. package/upload/buttons-upload/Icons.js +0 -40
  435. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  436. package/upload/dragAndDropArea/Icons.js +0 -39
  437. package/upload/file-upload/FileToUpload.js +0 -115
  438. package/upload/file-upload/Icons.js +0 -66
  439. package/upload/files-upload/FilesToUpload.js +0 -109
  440. package/upload/index.d.ts +0 -15
  441. package/upload/transaction/Icons.js +0 -160
  442. package/upload/transaction/Transaction.js +0 -104
  443. package/upload/transactions/Transactions.js +0 -94
  444. /package/{radio → action-icon}/types.js +0 -0
  445. /package/{resultsetTable → badge}/types.js +0 -0
  446. /package/{number-input/numberInputContextTypes.js → bleed/types.js} +0 -0
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
11
+ var _coreTokens = _interopRequireDefault(require("../common/coreTokens"));
12
+ var _templateObject, _templateObject2, _templateObject3;
13
+ var DxcStatusLight = function DxcStatusLight(_ref) {
14
+ var _ref$mode = _ref.mode,
15
+ mode = _ref$mode === void 0 ? "default" : _ref$mode,
16
+ label = _ref.label,
17
+ _ref$size = _ref.size,
18
+ size = _ref$size === void 0 ? "medium" : _ref$size;
19
+ return /*#__PURE__*/_react["default"].createElement(StatusLightContainer, {
20
+ size: size,
21
+ "aria-label": "".concat(mode, ": ").concat(label),
22
+ "data-testid": "status_light-container"
23
+ }, /*#__PURE__*/_react["default"].createElement(StatusDot, {
24
+ mode: mode,
25
+ size: size,
26
+ "aria-hidden": "true",
27
+ "data-testid": "status-dot"
28
+ }), /*#__PURE__*/_react["default"].createElement(StatusLabel, {
29
+ mode: mode,
30
+ size: size
31
+ }, label));
32
+ };
33
+ var StatusLightContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n align-items: center;\n gap: ", ";\n"])), _coreTokens["default"].spacing_8);
34
+ var StatusDot = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n height: ", ";\n border-radius: 50%;\n background-color: ", ";\n"])), function (_ref2) {
35
+ var size = _ref2.size;
36
+ return size === "small" && _coreTokens["default"].type_scale_01 || size === "medium" && _coreTokens["default"].type_scale_02 || size === "large" && _coreTokens["default"].type_scale_03 || _coreTokens["default"].type_scale_02;
37
+ }, function (_ref3) {
38
+ var size = _ref3.size;
39
+ return size === "small" && _coreTokens["default"].type_scale_01 || size === "medium" && _coreTokens["default"].type_scale_02 || size === "large" && _coreTokens["default"].type_scale_03 || _coreTokens["default"].type_scale_02;
40
+ }, function (_ref4) {
41
+ var mode = _ref4.mode;
42
+ return mode === "default" && _coreTokens["default"].color_grey_700 || mode === "error" && _coreTokens["default"].color_red_700 || mode === "info" && _coreTokens["default"].color_blue_700 || mode === "success" && _coreTokens["default"].color_green_700 || mode === "warning" && _coreTokens["default"].color_orange_700 || _coreTokens["default"].color_grey_700;
43
+ });
44
+ var StatusLabel = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n font-size: ", ";\n font-family: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n text-align: center;\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n"])), function (_ref5) {
45
+ var size = _ref5.size;
46
+ return size === "small" && _coreTokens["default"].type_scale_01 || size === "medium" && _coreTokens["default"].type_scale_02 || size === "large" && _coreTokens["default"].type_scale_03 || _coreTokens["default"].type_scale_02;
47
+ }, _coreTokens["default"].type_sans, _coreTokens["default"].type_normal, _coreTokens["default"].type_semibold, function (_ref6) {
48
+ var mode = _ref6.mode;
49
+ return mode === "default" && _coreTokens["default"].color_grey_700 || mode === "error" && _coreTokens["default"].color_red_700 || mode === "info" && _coreTokens["default"].color_blue_700 || mode === "success" && _coreTokens["default"].color_green_700 || mode === "warning" && _coreTokens["default"].color_orange_700 || _coreTokens["default"].color_grey_700;
50
+ });
51
+ var _default = exports["default"] = DxcStatusLight;
@@ -0,0 +1,74 @@
1
+ import React from "react";
2
+ import Title from "../../.storybook/components/Title";
3
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
4
+ import DxcStatusLight from "./StatusLight";
5
+
6
+ export default {
7
+ title: "Status Light",
8
+ component: DxcStatusLight,
9
+ };
10
+
11
+ export const Chromatic = () => (
12
+ <>
13
+ <ExampleContainer>
14
+ <Title title="Default light small" theme="light" level={4} />
15
+ <DxcStatusLight label="StatusLight" size="small" />
16
+ </ExampleContainer>
17
+ <ExampleContainer>
18
+ <Title title="Default light medium" theme="light" level={4} />
19
+ <DxcStatusLight label="StatusLight" />
20
+ </ExampleContainer>
21
+ <ExampleContainer>
22
+ <Title title="Default light large" theme="light" level={4} />
23
+ <DxcStatusLight label="StatusLight" size="large" />
24
+ </ExampleContainer>
25
+ <ExampleContainer>
26
+ <Title title="Info light small" theme="light" level={4} />
27
+ <DxcStatusLight label="StatusLight" mode="info" size="small" />
28
+ </ExampleContainer>
29
+ <ExampleContainer>
30
+ <Title title="Info light medium" theme="light" level={4} />
31
+ <DxcStatusLight label="StatusLight" mode="info" />
32
+ </ExampleContainer>
33
+ <ExampleContainer>
34
+ <Title title="Info light large" theme="light" level={4} />
35
+ <DxcStatusLight label="StatusLight" mode="info" size="large" />
36
+ </ExampleContainer>
37
+ <ExampleContainer>
38
+ <Title title="Success light small" theme="light" level={4} />
39
+ <DxcStatusLight label="StatusLight" mode="success" size="small" />
40
+ </ExampleContainer>
41
+ <ExampleContainer>
42
+ <Title title="Success lights medium" theme="light" level={4} />
43
+ <DxcStatusLight label="StatusLight" mode="success" />
44
+ </ExampleContainer>
45
+ <ExampleContainer>
46
+ <Title title="Success lights large" theme="light" level={4} />
47
+ <DxcStatusLight label="StatusLight" mode="success" size="large" />
48
+ </ExampleContainer>
49
+ <ExampleContainer>
50
+ <Title title="Warning light small" theme="light" level={4} />
51
+ <DxcStatusLight label="StatusLight" mode="warning" size="small" />
52
+ </ExampleContainer>
53
+ <ExampleContainer>
54
+ <Title title="Warning light medium" theme="light" level={4} />
55
+ <DxcStatusLight label="StatusLight" mode="warning" />
56
+ </ExampleContainer>
57
+ <ExampleContainer>
58
+ <Title title="Warning light large" theme="light" level={4} />
59
+ <DxcStatusLight label="StatusLight" mode="warning" size="large" />
60
+ </ExampleContainer>
61
+ <ExampleContainer>
62
+ <Title title="Error light small" theme="light" level={4} />
63
+ <DxcStatusLight label="StatusLight" mode="error" size="small" />
64
+ </ExampleContainer>
65
+ <ExampleContainer>
66
+ <Title title="Error lights medium" theme="light" level={4} />
67
+ <DxcStatusLight label="StatusLight" mode="error" />
68
+ </ExampleContainer>
69
+ <ExampleContainer>
70
+ <Title title="Error lights large" theme="light" level={4} />
71
+ <DxcStatusLight label="StatusLight" mode="error" size="large" />
72
+ </ExampleContainer>
73
+ </>
74
+ );
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _react = _interopRequireDefault(require("react"));
5
+ var _react2 = require("@testing-library/react");
6
+ var _StatusLight = _interopRequireDefault(require("./StatusLight.tsx"));
7
+ describe("StatusLight component tests", function () {
8
+ test("StatusLight renders with correct label", function () {
9
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_StatusLight["default"], {
10
+ label: "Status Light Test"
11
+ })),
12
+ getByText = _render.getByText;
13
+ expect(getByText("Status Light Test")).toBeTruthy();
14
+ });
15
+ test("StatusLight applies accessibility attributes", function () {
16
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_StatusLight["default"], {
17
+ label: "Status Light Test"
18
+ })),
19
+ getByTestId = _render2.getByTestId;
20
+ var statusLightContainer = getByTestId("status_light-container");
21
+ var statusDot = getByTestId("status-dot");
22
+ expect(statusLightContainer.getAttribute("aria-label")).toBe("default: Status Light Test");
23
+ expect(statusDot.getAttribute("aria-hidden")).toBe("true");
24
+ });
25
+ });
@@ -0,0 +1,17 @@
1
+ type Mode = "default" | "info" | "success" | "warning" | "error";
2
+ type Size = "small" | "medium" | "large";
3
+ type Props = {
4
+ /**
5
+ * It will define the color of the light based on its semantic meaning.
6
+ */
7
+ mode?: Mode;
8
+ /**
9
+ * An auxiliar text that will add some context to the status.
10
+ */
11
+ label: string;
12
+ /**
13
+ * Size of the component. Should be defined based on its importance and/or available space.
14
+ */
15
+ size?: Size;
16
+ };
17
+ export default Props;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,98 @@
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 _Switch = _interopRequireDefault(require("./Switch.tsx"));
10
+ var _disabledRules = require("../../test/accessibility/rules/specific/switch/disabledRules.js");
11
+ var disabledRules = {
12
+ rules: _disabledRules.disabledRules.reduce(function (rulesObj, rule) {
13
+ rulesObj[rule] = {
14
+ enabled: false
15
+ };
16
+ return rulesObj;
17
+ }, {})
18
+ };
19
+ describe("Switch component accessibility tests", function () {
20
+ it("Should not have basic accessibility issues", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
21
+ var _render, container, results;
22
+ return _regenerator["default"].wrap(function _callee$(_context) {
23
+ while (1) switch (_context.prev = _context.next) {
24
+ case 0:
25
+ _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Switch["default"], {
26
+ label: "Default label",
27
+ defaultChecked: true,
28
+ value: "test-defaultChecked",
29
+ name: "test",
30
+ labelPosition: "after",
31
+ margin: "medium",
32
+ size: "medium",
33
+ checked: true
34
+ })), container = _render.container;
35
+ _context.next = 3;
36
+ return (0, _axeHelper.axe)(container, disabledRules);
37
+ case 3:
38
+ results = _context.sent;
39
+ expect(results).toHaveNoViolations();
40
+ case 5:
41
+ case "end":
42
+ return _context.stop();
43
+ }
44
+ }, _callee);
45
+ })));
46
+ it("Should not have basic accessibility issues for optional mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
47
+ var _render2, container, results;
48
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
49
+ while (1) switch (_context2.prev = _context2.next) {
50
+ case 0:
51
+ _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Switch["default"], {
52
+ label: "Default label",
53
+ defaultChecked: true,
54
+ value: "test-defaultChecked",
55
+ name: "test",
56
+ labelPosition: "after",
57
+ margin: "medium",
58
+ size: "medium",
59
+ optional: true
60
+ })), container = _render2.container;
61
+ _context2.next = 3;
62
+ return (0, _axeHelper.axe)(container, disabledRules);
63
+ case 3:
64
+ results = _context2.sent;
65
+ expect(results).toHaveNoViolations();
66
+ case 5:
67
+ case "end":
68
+ return _context2.stop();
69
+ }
70
+ }, _callee2);
71
+ })));
72
+ it("Should not have basic accessibility issues for disabled mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
73
+ var _render3, container, results;
74
+ return _regenerator["default"].wrap(function _callee3$(_context3) {
75
+ while (1) switch (_context3.prev = _context3.next) {
76
+ case 0:
77
+ _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Switch["default"], {
78
+ label: "Default label",
79
+ defaultChecked: true,
80
+ value: "test-defaultChecked",
81
+ name: "test",
82
+ labelPosition: "after",
83
+ margin: "medium",
84
+ size: "medium",
85
+ disabled: true
86
+ })), container = _render3.container;
87
+ _context3.next = 3;
88
+ return (0, _axeHelper.axe)(container, disabledRules);
89
+ case 3:
90
+ results = _context3.sent;
91
+ expect(results).toHaveNoViolations();
92
+ case 5:
93
+ case "end":
94
+ return _context3.stop();
95
+ }
96
+ }, _callee3);
97
+ })));
98
+ });
@@ -1,4 +1,4 @@
1
- /// <reference types="react" />
1
+ import React from "react";
2
2
  import SwitchPropsType from "./types";
3
- declare const DxcSwitch: ({ checked, value, label, labelPosition, name, disabled, onChange, required, margin, size, tabIndex, }: SwitchPropsType) => JSX.Element;
3
+ declare const DxcSwitch: React.ForwardRefExoticComponent<SwitchPropsType & React.RefAttributes<HTMLDivElement>>;
4
4
  export default DxcSwitch;
package/switch/Switch.js CHANGED
@@ -1,122 +1,165 @@
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 _core = require("@material-ui/core");
23
-
24
- var _RequiredComponent = _interopRequireDefault(require("../common/RequiredComponent"));
25
-
26
- var _variables = require("../common/variables.js");
27
-
28
- var _utils = require("../common/utils.js");
29
-
14
+ var _uuid = require("uuid");
15
+ var _variables = require("../common/variables");
16
+ var _utils = require("../common/utils");
30
17
  var _useTheme = _interopRequireDefault(require("../useTheme"));
31
-
32
- var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext"));
33
-
34
- var _templateObject, _templateObject2;
35
-
36
- 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); }
37
-
38
- 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; }
39
-
40
- var DxcSwitch = function DxcSwitch(_ref) {
41
- var checked = _ref.checked,
42
- value = _ref.value,
43
- _ref$label = _ref.label,
44
- label = _ref$label === void 0 ? "" : _ref$label,
45
- _ref$labelPosition = _ref.labelPosition,
46
- labelPosition = _ref$labelPosition === void 0 ? "before" : _ref$labelPosition,
47
- _ref$name = _ref.name,
48
- name = _ref$name === void 0 ? "" : _ref$name,
49
- _ref$disabled = _ref.disabled,
50
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
51
- onChange = _ref.onChange,
52
- _ref$required = _ref.required,
53
- required = _ref$required === void 0 ? false : _ref$required,
54
- margin = _ref.margin,
55
- _ref$size = _ref.size,
56
- size = _ref$size === void 0 ? "fitContent" : _ref$size,
57
- _ref$tabIndex = _ref.tabIndex,
58
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
59
-
60
- var _useState = (0, _react.useState)(false),
61
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
62
- innerChecked = _useState2[0],
63
- setInnerChecked = _useState2[1];
64
-
18
+ var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
19
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
20
+ 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); }
21
+ 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; }
22
+ var DxcSwitch = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
23
+ var defaultChecked = _ref.defaultChecked,
24
+ checked = _ref.checked,
25
+ value = _ref.value,
26
+ _ref$label = _ref.label,
27
+ label = _ref$label === void 0 ? "" : _ref$label,
28
+ _ref$labelPosition = _ref.labelPosition,
29
+ labelPosition = _ref$labelPosition === void 0 ? "before" : _ref$labelPosition,
30
+ _ref$name = _ref.name,
31
+ name = _ref$name === void 0 ? "" : _ref$name,
32
+ _ref$disabled = _ref.disabled,
33
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
34
+ _ref$optional = _ref.optional,
35
+ optional = _ref$optional === void 0 ? false : _ref$optional,
36
+ onChange = _ref.onChange,
37
+ margin = _ref.margin,
38
+ _ref$size = _ref.size,
39
+ size = _ref$size === void 0 ? "fitContent" : _ref$size,
40
+ _ref$tabIndex = _ref.tabIndex,
41
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
42
+ var _useState = (0, _react.useState)("switch-".concat((0, _uuid.v4)())),
43
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 1),
44
+ switchId = _useState2[0];
45
+ var labelId = "label-".concat(switchId);
46
+ var _useState3 = (0, _react.useState)(defaultChecked !== null && defaultChecked !== void 0 ? defaultChecked : false),
47
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
48
+ innerChecked = _useState4[0],
49
+ setInnerChecked = _useState4[1];
65
50
  var colorsTheme = (0, _useTheme["default"])();
66
- var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
67
-
51
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
52
+ var refTrack = (0, _react.useRef)(null);
53
+ var handleOnKeyDown = function handleOnKeyDown(event) {
54
+ switch (event.key) {
55
+ case "Enter":
56
+ case " ":
57
+ // Space
58
+ event.preventDefault();
59
+ refTrack.current.focus();
60
+ var isChecked = !(checked !== null && checked !== void 0 ? checked : innerChecked);
61
+ setInnerChecked(isChecked);
62
+ onChange === null || onChange === void 0 ? void 0 : onChange(isChecked);
63
+ break;
64
+ }
65
+ };
68
66
  var handlerSwitchChange = function handlerSwitchChange(event) {
69
- if (checked === undefined) {
70
- var _event$target$checked;
71
-
72
- var isChecked = (_event$target$checked = event.target.checked) !== null && _event$target$checked !== void 0 ? _event$target$checked : !innerChecked;
73
- setInnerChecked(isChecked);
74
- onChange === null || onChange === void 0 ? void 0 : onChange(isChecked);
75
- } else onChange === null || onChange === void 0 ? void 0 : onChange(!checked);
67
+ checked !== null && checked !== void 0 ? checked : setInnerChecked(function (innerChecked) {
68
+ return !innerChecked;
69
+ });
70
+ onChange === null || onChange === void 0 ? void 0 : onChange(checked ? !checked : !innerChecked);
76
71
  };
77
-
78
72
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
79
73
  theme: colorsTheme["switch"]
80
74
  }, /*#__PURE__*/_react["default"].createElement(SwitchContainer, {
81
75
  margin: margin,
76
+ size: size,
77
+ onKeyDown: handleOnKeyDown,
82
78
  disabled: disabled,
79
+ onClick: !disabled ? handlerSwitchChange : undefined,
80
+ ref: ref
81
+ }, labelPosition === "before" && label && /*#__PURE__*/_react["default"].createElement(LabelContainer, {
82
+ id: labelId,
83
83
  labelPosition: labelPosition,
84
- size: size,
85
- backgroundType: backgroundType
86
- }, /*#__PURE__*/_react["default"].createElement(_core.Switch, {
87
- checked: checked !== null && checked !== void 0 ? checked : innerChecked,
88
- inputProps: {
89
- name: name,
90
- tabIndex: tabIndex
91
- },
92
- onChange: handlerSwitchChange,
84
+ disabled: disabled,
85
+ label: label
86
+ }, label, " ", optional && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, translatedLabels.formFields.optionalLabel)), /*#__PURE__*/_react["default"].createElement(ValueInput, {
87
+ type: "checkbox",
88
+ name: name,
89
+ "aria-hidden": true,
93
90
  value: value,
94
91
  disabled: disabled,
95
- disableRipple: true
96
- }), /*#__PURE__*/_react["default"].createElement(LabelContainer, {
92
+ checked: checked !== null && checked !== void 0 ? checked : innerChecked,
93
+ readOnly: true
94
+ }), /*#__PURE__*/_react["default"].createElement(SwitchBase, null, /*#__PURE__*/_react["default"].createElement(SwitchTrack, {
95
+ role: "switch",
96
+ "aria-checked": checked !== null && checked !== void 0 ? checked : innerChecked,
97
+ "aria-disabled": disabled,
98
+ disabled: disabled,
99
+ "aria-labelledby": labelId,
100
+ tabIndex: !disabled ? tabIndex : -1,
101
+ ref: refTrack
102
+ })), labelPosition === "after" && label && /*#__PURE__*/_react["default"].createElement(LabelContainer, {
103
+ id: labelId,
97
104
  labelPosition: labelPosition,
98
- onClick: !disabled && handlerSwitchChange,
99
105
  disabled: disabled,
100
- backgroundType: backgroundType
101
- }, required && /*#__PURE__*/_react["default"].createElement(_RequiredComponent["default"], null), label)));
102
- };
103
-
106
+ label: label
107
+ }, optional && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, translatedLabels.formFields.optionalLabel), " ", label)));
108
+ });
104
109
  var sizes = {
105
110
  small: "60px",
106
111
  medium: "240px",
107
112
  large: "480px",
108
113
  fillParent: "100%",
109
- fitContent: "unset"
114
+ fitContent: "fit-content"
110
115
  };
111
-
112
116
  var calculateWidth = function calculateWidth(margin, size) {
113
117
  return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
114
118
  };
115
-
116
- var SwitchContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n display: inline-flex;\n align-items: center;\n flex-direction: ", ";\n \n\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n cursor: ", ";\n\n .MuiSwitch-root {\n align-items: center;\n width: ", ";\n height: 45px;\n margin: 3px;\n\n .Mui-focusVisible {\n outline: ", ";\n outline-offset: -3px;\n }\n\n .MuiSwitch-track {\n /*Enabled and unchecked bar*/\n background-color: ", ";\n height: ", ";\n }\n\n .MuiSwitch-switchBase + .MuiSwitch-track {\n opacity: 1;\n }\n\n .MuiIconButton-root {\n /*Enabled and unchecked*/\n top: unset;\n .MuiSwitch-thumb {\n /*Only for thumb in all states*/\n width: ", ";\n height: ", ";\n }\n color: ", ";\n &:hover {\n background-color: transparent;\n }\n &.Mui-disabled {\n /*Disabled and unchecked*/\n color: ", ";\n + .MuiSwitch-track {\n /*Disabled and unchecked bar*/\n background-color: ", ";\n }\n }\n &.Mui-disabled.Mui-checked {\n /*Disabled and checked*/\n color: ", ";\n + .MuiSwitch-track {\n /*Disabled and checked bar*/\n background-color: ", ";\n }\n }\n &.Mui-checked {\n /*Enabled and checked*/\n color: ", ";\n transform: translateX(", ");\n &:hover {\n background-color: transparent;\n }\n + .MuiSwitch-track {\n /*Enabled and checked bar*/\n background-color: ", ";\n }\n }\n }\n }\n"])), function (props) {
119
+ var getDisabledColor = function getDisabledColor(theme, element, subElement) {
120
+ switch (element) {
121
+ case "track":
122
+ switch (subElement) {
123
+ case "check":
124
+ return theme.disabledCheckedTrackBackgroundColor;
125
+ case "uncheck":
126
+ return theme.disabledUncheckedTrackBackgroundColor;
127
+ }
128
+ case "thumb":
129
+ switch (subElement) {
130
+ case "check":
131
+ return theme.disabledCheckedThumbBackgroundColor;
132
+ case "uncheck":
133
+ return theme.disabledUncheckedThumbBackgroundColor;
134
+ }
135
+ case "label":
136
+ return theme.disabledLabelFontColor;
137
+ }
138
+ };
139
+ var getNotDisabledColor = function getNotDisabledColor(theme, element, subElement) {
140
+ switch (element) {
141
+ case "track":
142
+ switch (subElement) {
143
+ case "check":
144
+ return theme.checkedTrackBackgroundColor;
145
+ case "uncheck":
146
+ return theme.uncheckedTrackBackgroundColor;
147
+ }
148
+ case "thumb":
149
+ switch (subElement) {
150
+ case "check":
151
+ return theme.checkedThumbBackgroundColor;
152
+ case "uncheck":
153
+ return theme.uncheckedThumbBackgroundColor;
154
+ }
155
+ case "label":
156
+ return theme.labelFontColor;
157
+ }
158
+ };
159
+ var SwitchContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n align-items: center;\n width: ", ";\n height: 40px;\n cursor: ", ";\n\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
117
160
  return calculateWidth(props.margin, props.size);
118
161
  }, function (props) {
119
- return props.labelPosition === "after" ? "row" : "row-reverse";
162
+ return props.disabled === true ? "not-allowed" : "pointer";
120
163
  }, function (props) {
121
164
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
122
165
  }, function (props) {
@@ -127,53 +170,45 @@ var SwitchContainer = _styledComponents["default"].div(_templateObject || (_temp
127
170
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
128
171
  }, function (props) {
129
172
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
173
+ });
174
+ var LabelContainer = _styledComponents["default"].span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n color: ", ";\n opacity: 1;\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n\n ", ";\n\n ", "\n"])), function (props) {
175
+ return props.disabled ? getDisabledColor(props.theme, "label") : getNotDisabledColor(props.theme, "label");
130
176
  }, function (props) {
131
- return props.disabled ? "not-allowed" : "default";
132
- }, function (props) {
133
- return props.theme.trackWidth;
134
- }, function (props) {
135
- return "".concat(props.backgroundType === "dark" ? props.theme.thumbFocusColorOnDark : props.theme.thumbFocusColor, " solid 2px");
136
- }, function (props) {
137
- return props.backgroundType === "dark" ? props.theme.uncheckedTrackBackgroundColorOnDark : props.theme.uncheckedTrackBackgroundColor;
138
- }, function (props) {
139
- return props.theme.trackHeight;
140
- }, function (props) {
141
- return props.theme.thumbWidth;
177
+ return props.theme.labelFontFamily;
142
178
  }, function (props) {
143
- return props.theme.thumbHeight;
179
+ return props.theme.labelFontSize;
144
180
  }, function (props) {
145
- return props.backgroundType === "dark" ? props.theme.uncheckedThumbBackgroundColorOnDark : props.theme.uncheckedThumbBackgroundColor;
181
+ return props.disabled ? props.theme.disabledLabelFontStyle : props.theme.labelFontStyle;
146
182
  }, function (props) {
147
- return props.backgroundType === "dark" ? props.theme.disabledUncheckedThumbBackgroundColorOnDark : props.theme.disabledUncheckedThumbBackgroundColor;
183
+ return props.theme.labelFontWeight;
148
184
  }, function (props) {
149
- return props.backgroundType === "dark" ? props.theme.disabledUncheckedTrackBackgroundColorOnDark : props.theme.disabledUncheckedTrackBackgroundColor;
185
+ return !props.label ? "margin: 0px;" : props.labelPosition === "after" ? "margin-left: ".concat(props.theme.spaceBetweenLabelSwitch, ";") : "margin-right: ".concat(props.theme.spaceBetweenLabelSwitch, ";");
150
186
  }, function (props) {
151
- return props.backgroundType === "dark" ? props.theme.disabledCheckedThumbBackgroundColorOnDark : props.theme.disabledCheckedThumbBackgroundColor;
187
+ return props.labelPosition === "before" && "order: -1";
188
+ });
189
+ var SwitchBase = _styledComponents["default"].label(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: space-between;\n cursor: pointer;\n margin: 0px 12px;\n"])));
190
+ var ValueInput = _styledComponents["default"].input(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n display: none;\n"])));
191
+ var SwitchTrack = _styledComponents["default"].span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n border-radius: 15px;\n width: ", ";\n height: ", ";\n position: relative;\n cursor: ", ";\n\n &:focus-visible {\n outline: none;\n ::before {\n outline: ", ";\n outline-offset: 6px;\n }\n }\n\n /* Thumb element */\n ::before {\n content: \"\";\n transform: initial;\n position: absolute;\n width: ", ";\n height: ", ";\n border-radius: 50%;\n box-shadow: 0px 2px 1px -1px rgb(0 0 0 / 20%), 0px 1px 1px 0px rgb(0 0 0 / 14%), 0px 1px 3px 0px rgb(0 0 0 / 12%);\n bottom: -6px;\n left: -4px;\n transform: translateX(0px);\n background-color: ", ";\n }\n\n /* Unchecked */\n background-color: ", ";\n\n /* Checked */\n &[aria-checked=\"true\"] {\n background-color: ", ";\n ::before {\n transform: translateX(", ");\n background-color: ", ";\n }\n }\n"])), function (props) {
192
+ return props.theme.trackWidth;
152
193
  }, function (props) {
153
- return props.backgroundType === "dark" ? props.theme.disabledCheckedTrackBackgroundColorOnDark : props.theme.disabledCheckedTrackBackgroundColor;
194
+ return props.theme.trackHeight;
154
195
  }, function (props) {
155
- return props.backgroundType === "dark" ? props.theme.checkedThumbBackgroundColorOnDark : props.theme.checkedThumbBackgroundColor;
196
+ return props.disabled ? "not-allowed" : "pointer";
156
197
  }, function (props) {
157
- return props.theme.thumbShift;
198
+ return "".concat(props.theme.thumbFocusColor, " solid 2px");
158
199
  }, function (props) {
159
- return props.backgroundType === "dark" ? props.theme.checkedTrackBackgroundColorOnDark : props.theme.checkedTrackBackgroundColor;
160
- });
161
-
162
- var LabelContainer = _styledComponents["default"].span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n color: ", ";\n opacity: 1;\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n cursor: ", ";\n ", "\n"])), function (props) {
163
- return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledLabelFontColorOnDark : props.theme.disabledLabelFontColor : props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
200
+ return props.theme.thumbWidth;
164
201
  }, function (props) {
165
- return props.theme.labelFontFamily;
202
+ return props.theme.thumbHeight;
166
203
  }, function (props) {
167
- return props.theme.labelFontSize;
204
+ return props.disabled ? getDisabledColor(props.theme, "thumb", "uncheck") : getNotDisabledColor(props.theme, "thumb", "uncheck");
168
205
  }, function (props) {
169
- return props.disabled ? props.theme.disabledLabelFontStyle : props.theme.labelFontStyle;
206
+ return props.disabled ? getDisabledColor(props.theme, "track", "uncheck") : getNotDisabledColor(props.theme, "track", "uncheck");
170
207
  }, function (props) {
171
- return props.theme.labelFontWeight;
208
+ return props.disabled ? getDisabledColor(props.theme, "track", "check") : getNotDisabledColor(props.theme, "track", "check");
172
209
  }, function (props) {
173
- return props.disabled === true ? "not-allowed" : "pointer";
210
+ return props.theme.thumbShift;
174
211
  }, function (props) {
175
- return props.labelPosition === "after" ? "margin-left: ".concat(props.theme.spaceBetweenLabelSwitch, ";") : "margin-right: ".concat(props.theme.spaceBetweenLabelSwitch, ";");
212
+ return props.disabled ? getDisabledColor(props.theme, "thumb", "check") : getNotDisabledColor(props.theme, "thumb", "check");
176
213
  });
177
-
178
- var _default = DxcSwitch;
179
- exports["default"] = _default;
214
+ var _default = exports["default"] = DxcSwitch;