@dxc-technology/halstack-react 0.0.0-27afd3d → 0.0.0-27e2ae7

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 (542) hide show
  1. package/BackgroundColorContext.d.ts +1 -0
  2. package/BackgroundColorContext.js +30 -0
  3. package/HalstackContext.d.ts +1221 -0
  4. package/HalstackContext.js +310 -0
  5. package/README.md +28 -47
  6. package/accordion/Accordion.d.ts +4 -0
  7. package/accordion/Accordion.js +182 -0
  8. package/accordion/Accordion.stories.tsx +283 -0
  9. package/accordion/Accordion.test.js +56 -0
  10. package/accordion/types.d.ts +57 -0
  11. package/accordion/types.js +5 -0
  12. package/accordion-group/AccordionGroup.d.ts +8 -0
  13. package/accordion-group/AccordionGroup.js +101 -0
  14. package/accordion-group/AccordionGroup.stories.tsx +252 -0
  15. package/accordion-group/AccordionGroup.test.js +98 -0
  16. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  17. package/accordion-group/AccordionGroupAccordion.js +31 -0
  18. package/accordion-group/types.d.ts +67 -0
  19. package/accordion-group/types.js +5 -0
  20. package/action-icon/ActionIcon.d.ts +4 -0
  21. package/action-icon/ActionIcon.js +47 -0
  22. package/action-icon/ActionIcon.stories.tsx +41 -0
  23. package/action-icon/ActionIcon.test.js +64 -0
  24. package/action-icon/types.d.ts +26 -0
  25. package/action-icon/types.js +5 -0
  26. package/alert/Alert.d.ts +4 -0
  27. package/alert/Alert.js +254 -0
  28. package/alert/Alert.stories.tsx +198 -0
  29. package/alert/Alert.test.js +75 -0
  30. package/alert/types.d.ts +49 -0
  31. package/alert/types.js +5 -0
  32. package/badge/Badge.d.ts +4 -0
  33. package/badge/Badge.js +161 -0
  34. package/badge/Badge.stories.tsx +210 -0
  35. package/badge/Badge.test.js +30 -0
  36. package/badge/types.d.ts +54 -0
  37. package/badge/types.js +5 -0
  38. package/bleed/Bleed.d.ts +3 -0
  39. package/bleed/Bleed.js +43 -0
  40. package/bleed/Bleed.stories.tsx +342 -0
  41. package/bleed/types.d.ts +37 -0
  42. package/bleed/types.js +5 -0
  43. package/box/Box.d.ts +4 -0
  44. package/box/Box.js +75 -0
  45. package/box/Box.stories.tsx +119 -0
  46. package/box/Box.test.js +13 -0
  47. package/box/types.d.ts +32 -0
  48. package/box/types.js +5 -0
  49. package/bulleted-list/BulletedList.d.ts +7 -0
  50. package/bulleted-list/BulletedList.js +89 -0
  51. package/bulleted-list/BulletedList.stories.tsx +115 -0
  52. package/bulleted-list/types.d.ts +38 -0
  53. package/bulleted-list/types.js +5 -0
  54. package/button/Button.d.ts +4 -0
  55. package/button/Button.js +120 -0
  56. package/button/Button.stories.tsx +344 -0
  57. package/button/Button.test.js +38 -0
  58. package/button/types.d.ts +57 -0
  59. package/button/types.js +5 -0
  60. package/card/Card.d.ts +4 -0
  61. package/card/Card.js +120 -0
  62. package/card/Card.stories.tsx +171 -0
  63. package/card/Card.test.js +39 -0
  64. package/card/types.d.ts +62 -0
  65. package/card/types.js +5 -0
  66. package/checkbox/Checkbox.d.ts +4 -0
  67. package/checkbox/Checkbox.js +215 -0
  68. package/checkbox/Checkbox.stories.tsx +222 -0
  69. package/checkbox/Checkbox.test.js +199 -0
  70. package/checkbox/types.d.ts +72 -0
  71. package/checkbox/types.js +5 -0
  72. package/chip/Chip.d.ts +4 -0
  73. package/chip/Chip.js +121 -0
  74. package/chip/Chip.stories.tsx +214 -0
  75. package/chip/Chip.test.js +41 -0
  76. package/chip/types.d.ts +45 -0
  77. package/chip/types.js +5 -0
  78. package/common/OpenSans.css +69 -0
  79. package/common/coreTokens.d.ts +237 -0
  80. package/common/coreTokens.js +184 -0
  81. package/common/utils.d.ts +1 -0
  82. package/common/utils.js +16 -0
  83. package/common/variables.d.ts +1367 -0
  84. package/common/variables.js +1239 -0
  85. package/container/Container.d.ts +4 -0
  86. package/container/Container.js +194 -0
  87. package/container/Container.stories.tsx +214 -0
  88. package/container/types.d.ts +74 -0
  89. package/container/types.js +5 -0
  90. package/date-input/Calendar.d.ts +4 -0
  91. package/date-input/Calendar.js +214 -0
  92. package/date-input/DateInput.d.ts +4 -0
  93. package/date-input/DateInput.js +223 -0
  94. package/date-input/DateInput.stories.tsx +285 -0
  95. package/date-input/DateInput.test.js +808 -0
  96. package/date-input/DatePicker.d.ts +4 -0
  97. package/date-input/DatePicker.js +115 -0
  98. package/date-input/Icons.d.ts +6 -0
  99. package/date-input/Icons.js +58 -0
  100. package/date-input/YearPicker.d.ts +4 -0
  101. package/date-input/YearPicker.js +100 -0
  102. package/date-input/types.d.ts +164 -0
  103. package/date-input/types.js +5 -0
  104. package/dialog/Dialog.d.ts +4 -0
  105. package/dialog/Dialog.js +104 -0
  106. package/dialog/Dialog.stories.tsx +365 -0
  107. package/dialog/Dialog.test.js +307 -0
  108. package/dialog/types.d.ts +36 -0
  109. package/dialog/types.js +5 -0
  110. package/dropdown/Dropdown.d.ts +4 -0
  111. package/dropdown/Dropdown.js +334 -0
  112. package/dropdown/Dropdown.stories.tsx +438 -0
  113. package/dropdown/Dropdown.test.js +599 -0
  114. package/dropdown/DropdownMenu.d.ts +4 -0
  115. package/dropdown/DropdownMenu.js +63 -0
  116. package/dropdown/DropdownMenuItem.d.ts +4 -0
  117. package/dropdown/DropdownMenuItem.js +67 -0
  118. package/dropdown/types.d.ts +98 -0
  119. package/dropdown/types.js +5 -0
  120. package/file-input/FileInput.d.ts +4 -0
  121. package/file-input/FileInput.js +479 -0
  122. package/file-input/FileInput.stories.tsx +618 -0
  123. package/file-input/FileInput.test.js +459 -0
  124. package/file-input/FileItem.d.ts +4 -0
  125. package/file-input/FileItem.js +135 -0
  126. package/file-input/types.d.ts +129 -0
  127. package/file-input/types.js +5 -0
  128. package/flex/Flex.d.ts +4 -0
  129. package/flex/Flex.js +57 -0
  130. package/flex/Flex.stories.tsx +112 -0
  131. package/flex/types.d.ts +97 -0
  132. package/flex/types.js +5 -0
  133. package/footer/Footer.d.ts +4 -0
  134. package/footer/Footer.js +138 -0
  135. package/footer/Footer.stories.tsx +171 -0
  136. package/footer/Footer.test.js +85 -0
  137. package/footer/Icons.d.ts +3 -0
  138. package/footer/Icons.js +136 -0
  139. package/footer/types.d.ts +64 -0
  140. package/footer/types.js +5 -0
  141. package/grid/Grid.d.ts +7 -0
  142. package/grid/Grid.js +76 -0
  143. package/grid/Grid.stories.tsx +219 -0
  144. package/grid/types.d.ts +115 -0
  145. package/grid/types.js +5 -0
  146. package/header/Header.d.ts +8 -0
  147. package/header/Header.js +220 -0
  148. package/header/Header.stories.tsx +251 -0
  149. package/header/Header.test.js +66 -0
  150. package/header/Icons.d.ts +2 -0
  151. package/header/Icons.js +29 -0
  152. package/header/types.d.ts +33 -0
  153. package/header/types.js +5 -0
  154. package/heading/Heading.d.ts +4 -0
  155. package/heading/Heading.js +137 -0
  156. package/heading/Heading.stories.tsx +54 -0
  157. package/heading/Heading.test.js +169 -0
  158. package/heading/types.d.ts +33 -0
  159. package/heading/types.js +5 -0
  160. package/image/Image.d.ts +4 -0
  161. package/image/Image.js +70 -0
  162. package/image/Image.stories.tsx +127 -0
  163. package/image/types.d.ts +72 -0
  164. package/image/types.js +5 -0
  165. package/inset/Inset.d.ts +3 -0
  166. package/inset/Inset.js +43 -0
  167. package/inset/Inset.stories.tsx +230 -0
  168. package/inset/types.d.ts +37 -0
  169. package/inset/types.js +5 -0
  170. package/layout/ApplicationLayout.d.ts +20 -0
  171. package/layout/ApplicationLayout.js +134 -0
  172. package/layout/ApplicationLayout.stories.tsx +162 -0
  173. package/layout/Icons.d.ts +8 -0
  174. package/layout/Icons.js +58 -0
  175. package/layout/SidenavContext.d.ts +5 -0
  176. package/layout/SidenavContext.js +13 -0
  177. package/layout/types.d.ts +41 -0
  178. package/layout/types.js +5 -0
  179. package/link/Link.d.ts +4 -0
  180. package/link/Link.js +115 -0
  181. package/link/Link.stories.tsx +253 -0
  182. package/link/Link.test.js +63 -0
  183. package/link/types.d.ts +54 -0
  184. package/link/types.js +5 -0
  185. package/main.d.ts +47 -0
  186. package/{dist/main.js → main.js} +151 -111
  187. package/nav-tabs/NavTabs.d.ts +8 -0
  188. package/nav-tabs/NavTabs.js +93 -0
  189. package/nav-tabs/NavTabs.stories.tsx +276 -0
  190. package/nav-tabs/NavTabs.test.js +76 -0
  191. package/nav-tabs/Tab.d.ts +4 -0
  192. package/nav-tabs/Tab.js +118 -0
  193. package/nav-tabs/types.d.ts +52 -0
  194. package/nav-tabs/types.js +5 -0
  195. package/number-input/NumberInput.d.ts +11 -0
  196. package/number-input/NumberInput.js +67 -0
  197. package/number-input/NumberInput.stories.tsx +131 -0
  198. package/number-input/NumberInput.test.js +830 -0
  199. package/number-input/types.d.ts +130 -0
  200. package/number-input/types.js +5 -0
  201. package/package.json +57 -47
  202. package/paginator/Icons.d.ts +5 -0
  203. package/paginator/Icons.js +40 -0
  204. package/paginator/Paginator.d.ts +4 -0
  205. package/paginator/Paginator.js +135 -0
  206. package/paginator/Paginator.stories.tsx +87 -0
  207. package/paginator/Paginator.test.js +335 -0
  208. package/paginator/types.d.ts +38 -0
  209. package/paginator/types.js +5 -0
  210. package/paragraph/Paragraph.d.ts +5 -0
  211. package/paragraph/Paragraph.js +22 -0
  212. package/paragraph/Paragraph.stories.tsx +27 -0
  213. package/password-input/Icons.d.ts +6 -0
  214. package/password-input/Icons.js +35 -0
  215. package/password-input/PasswordInput.d.ts +4 -0
  216. package/password-input/PasswordInput.js +97 -0
  217. package/password-input/PasswordInput.stories.tsx +99 -0
  218. package/password-input/PasswordInput.test.js +198 -0
  219. package/password-input/types.d.ts +111 -0
  220. package/password-input/types.js +5 -0
  221. package/progress-bar/ProgressBar.d.ts +4 -0
  222. package/progress-bar/ProgressBar.js +144 -0
  223. package/progress-bar/ProgressBar.stories.tsx +93 -0
  224. package/progress-bar/ProgressBar.test.js +93 -0
  225. package/progress-bar/types.d.ts +37 -0
  226. package/progress-bar/types.js +5 -0
  227. package/quick-nav/QuickNav.d.ts +4 -0
  228. package/quick-nav/QuickNav.js +94 -0
  229. package/quick-nav/QuickNav.stories.tsx +356 -0
  230. package/quick-nav/types.d.ts +21 -0
  231. package/quick-nav/types.js +5 -0
  232. package/radio-group/Radio.d.ts +4 -0
  233. package/radio-group/Radio.js +124 -0
  234. package/radio-group/RadioGroup.d.ts +4 -0
  235. package/radio-group/RadioGroup.js +235 -0
  236. package/radio-group/RadioGroup.stories.tsx +214 -0
  237. package/radio-group/RadioGroup.test.js +756 -0
  238. package/radio-group/types.d.ts +114 -0
  239. package/radio-group/types.js +5 -0
  240. package/resultset-table/Icons.d.ts +7 -0
  241. package/resultset-table/Icons.js +47 -0
  242. package/resultset-table/ResultsetTable.d.ts +4 -0
  243. package/resultset-table/ResultsetTable.js +165 -0
  244. package/resultset-table/ResultsetTable.stories.tsx +319 -0
  245. package/resultset-table/ResultsetTable.test.js +305 -0
  246. package/resultset-table/types.d.ts +73 -0
  247. package/resultset-table/types.js +5 -0
  248. package/select/Icons.d.ts +10 -0
  249. package/select/Icons.js +89 -0
  250. package/select/Listbox.d.ts +4 -0
  251. package/select/Listbox.js +143 -0
  252. package/select/Option.d.ts +4 -0
  253. package/select/Option.js +87 -0
  254. package/select/Select.d.ts +4 -0
  255. package/select/Select.js +590 -0
  256. package/select/Select.stories.tsx +971 -0
  257. package/select/Select.test.js +2370 -0
  258. package/select/types.d.ts +209 -0
  259. package/select/types.js +5 -0
  260. package/sidenav/Icons.d.ts +7 -0
  261. package/sidenav/Icons.js +47 -0
  262. package/sidenav/Sidenav.d.ts +10 -0
  263. package/sidenav/Sidenav.js +196 -0
  264. package/sidenav/Sidenav.stories.tsx +282 -0
  265. package/sidenav/Sidenav.test.js +37 -0
  266. package/sidenav/types.d.ts +76 -0
  267. package/sidenav/types.js +5 -0
  268. package/slider/Slider.d.ts +4 -0
  269. package/slider/Slider.js +285 -0
  270. package/slider/Slider.test.js +254 -0
  271. package/slider/types.d.ts +86 -0
  272. package/slider/types.js +5 -0
  273. package/spinner/Spinner.d.ts +4 -0
  274. package/spinner/Spinner.js +206 -0
  275. package/spinner/Spinner.stories.tsx +129 -0
  276. package/spinner/Spinner.test.js +55 -0
  277. package/spinner/types.d.ts +32 -0
  278. package/spinner/types.js +5 -0
  279. package/status-light/StatusLight.d.ts +4 -0
  280. package/status-light/StatusLight.js +51 -0
  281. package/status-light/StatusLight.stories.tsx +74 -0
  282. package/status-light/StatusLight.test.js +25 -0
  283. package/status-light/types.d.ts +17 -0
  284. package/status-light/types.js +5 -0
  285. package/switch/Switch.d.ts +4 -0
  286. package/switch/Switch.js +214 -0
  287. package/switch/Switch.stories.tsx +137 -0
  288. package/switch/Switch.test.js +180 -0
  289. package/switch/types.d.ts +66 -0
  290. package/switch/types.js +5 -0
  291. package/table/Table.d.ts +4 -0
  292. package/table/Table.js +111 -0
  293. package/table/Table.stories.tsx +454 -0
  294. package/table/Table.test.js +21 -0
  295. package/table/types.d.ts +27 -0
  296. package/table/types.js +5 -0
  297. package/tabs/Tab.d.ts +4 -0
  298. package/tabs/Tab.js +116 -0
  299. package/tabs/Tabs.d.ts +4 -0
  300. package/tabs/Tabs.js +384 -0
  301. package/tabs/Tabs.stories.tsx +226 -0
  302. package/tabs/Tabs.test.js +294 -0
  303. package/tabs/types.d.ts +92 -0
  304. package/tabs/types.js +5 -0
  305. package/tag/Tag.d.ts +4 -0
  306. package/tag/Tag.js +151 -0
  307. package/tag/Tag.stories.tsx +155 -0
  308. package/tag/Tag.test.js +49 -0
  309. package/tag/types.d.ts +69 -0
  310. package/tag/types.js +5 -0
  311. package/text-input/Icons.d.ts +8 -0
  312. package/text-input/Icons.js +56 -0
  313. package/text-input/Suggestion.d.ts +4 -0
  314. package/text-input/Suggestion.js +67 -0
  315. package/text-input/Suggestions.d.ts +4 -0
  316. package/text-input/Suggestions.js +84 -0
  317. package/text-input/TextInput.d.ts +4 -0
  318. package/text-input/TextInput.js +572 -0
  319. package/text-input/TextInput.stories.tsx +465 -0
  320. package/text-input/TextInput.test.js +1739 -0
  321. package/text-input/types.d.ts +205 -0
  322. package/text-input/types.js +5 -0
  323. package/textarea/Textarea.d.ts +4 -0
  324. package/textarea/Textarea.js +234 -0
  325. package/textarea/Textarea.stories.tsx +174 -0
  326. package/textarea/Textarea.test.js +406 -0
  327. package/textarea/types.d.ts +141 -0
  328. package/textarea/types.js +5 -0
  329. package/toggle-group/ToggleGroup.d.ts +4 -0
  330. package/toggle-group/ToggleGroup.js +201 -0
  331. package/toggle-group/ToggleGroup.stories.tsx +218 -0
  332. package/toggle-group/ToggleGroup.test.js +137 -0
  333. package/toggle-group/types.d.ts +114 -0
  334. package/toggle-group/types.js +5 -0
  335. package/typography/Typography.d.ts +4 -0
  336. package/typography/Typography.js +23 -0
  337. package/typography/Typography.stories.tsx +198 -0
  338. package/typography/types.d.ts +18 -0
  339. package/typography/types.js +5 -0
  340. package/useTheme.d.ts +1120 -0
  341. package/{dist/useTheme.js → useTheme.js} +4 -11
  342. package/useTranslatedLabels.d.ts +85 -0
  343. package/useTranslatedLabels.js +14 -0
  344. package/utils/BaseTypography.d.ts +21 -0
  345. package/utils/BaseTypography.js +94 -0
  346. package/utils/FocusLock.d.ts +13 -0
  347. package/utils/FocusLock.js +124 -0
  348. package/wizard/Wizard.d.ts +4 -0
  349. package/wizard/Wizard.js +250 -0
  350. package/wizard/Wizard.stories.tsx +253 -0
  351. package/wizard/Wizard.test.js +114 -0
  352. package/wizard/types.d.ts +64 -0
  353. package/wizard/types.js +5 -0
  354. package/babel.config.js +0 -8
  355. package/dist/ThemeContext.js +0 -187
  356. package/dist/accordion/Accordion.js +0 -268
  357. package/dist/accordion/Accordion.stories.js +0 -207
  358. package/dist/accordion/readme.md +0 -96
  359. package/dist/accordion-group/AccordionGroup.js +0 -156
  360. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  361. package/dist/accordion-group/readme.md +0 -70
  362. package/dist/alert/Alert.js +0 -303
  363. package/dist/alert/Alert.stories.js +0 -158
  364. package/dist/alert/close.svg +0 -4
  365. package/dist/alert/error.svg +0 -4
  366. package/dist/alert/info.svg +0 -4
  367. package/dist/alert/readme.md +0 -43
  368. package/dist/alert/success.svg +0 -4
  369. package/dist/alert/warning.svg +0 -4
  370. package/dist/badge/Badge.js +0 -42
  371. package/dist/box/Box.js +0 -145
  372. package/dist/button/Button.js +0 -199
  373. package/dist/button/Button.stories.js +0 -224
  374. package/dist/button/readme.md +0 -93
  375. package/dist/card/Card.js +0 -217
  376. package/dist/checkbox/Checkbox.js +0 -229
  377. package/dist/checkbox/Checkbox.stories.js +0 -144
  378. package/dist/checkbox/readme.md +0 -116
  379. package/dist/chip/Chip.js +0 -205
  380. package/dist/common/OpenSans.css +0 -81
  381. package/dist/common/RequiredComponent.js +0 -40
  382. package/dist/common/services/example-service.js +0 -10
  383. package/dist/common/services/example-service.test.js +0 -12
  384. package/dist/common/utils.js +0 -42
  385. package/dist/common/variables.js +0 -346
  386. package/dist/date/Date.js +0 -352
  387. package/dist/date/Date.stories.js +0 -205
  388. package/dist/date/calendar.svg +0 -1
  389. package/dist/date/calendar_dark.svg +0 -1
  390. package/dist/date/readme.md +0 -73
  391. package/dist/dialog/Dialog.js +0 -195
  392. package/dist/dialog/Dialog.stories.js +0 -217
  393. package/dist/dialog/readme.md +0 -32
  394. package/dist/dropdown/Dropdown.js +0 -446
  395. package/dist/dropdown/Dropdown.stories.js +0 -249
  396. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  397. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  398. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  399. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  400. package/dist/dropdown/readme.md +0 -69
  401. package/dist/footer/Footer.js +0 -366
  402. package/dist/footer/Footer.stories.js +0 -94
  403. package/dist/footer/dxc_logo_wht.png +0 -0
  404. package/dist/footer/readme.md +0 -41
  405. package/dist/header/Header.js +0 -368
  406. package/dist/header/Header.stories.js +0 -176
  407. package/dist/header/close_icon.svg +0 -1
  408. package/dist/header/dxc_logo_black.png +0 -0
  409. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  410. package/dist/header/dxc_logo_white.png +0 -0
  411. package/dist/header/hamb_menu_black.svg +0 -1
  412. package/dist/header/hamb_menu_white.svg +0 -1
  413. package/dist/header/readme.md +0 -33
  414. package/dist/heading/Heading.js +0 -153
  415. package/dist/input-text/InputText.js +0 -559
  416. package/dist/input-text/InputText.stories.js +0 -209
  417. package/dist/input-text/error.svg +0 -1
  418. package/dist/input-text/readme.md +0 -91
  419. package/dist/layout/ApplicationLayout.js +0 -330
  420. package/dist/layout/facebook.svg +0 -45
  421. package/dist/layout/linkedin.svg +0 -50
  422. package/dist/layout/twitter.svg +0 -53
  423. package/dist/link/Link.js +0 -187
  424. package/dist/link/readme.md +0 -51
  425. package/dist/paginator/Paginator.js +0 -247
  426. package/dist/paginator/images/next.svg +0 -3
  427. package/dist/paginator/images/nextPage.svg +0 -3
  428. package/dist/paginator/images/previous.svg +0 -3
  429. package/dist/paginator/images/previousPage.svg +0 -3
  430. package/dist/paginator/readme.md +0 -50
  431. package/dist/progress-bar/ProgressBar.js +0 -184
  432. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  433. package/dist/progress-bar/readme.md +0 -63
  434. package/dist/radio/Radio.js +0 -190
  435. package/dist/radio/Radio.stories.js +0 -166
  436. package/dist/radio/readme.md +0 -70
  437. package/dist/resultsetTable/ResultsetTable.js +0 -327
  438. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  439. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  440. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  441. package/dist/select/Select.js +0 -472
  442. package/dist/select/Select.stories.js +0 -235
  443. package/dist/select/readme.md +0 -72
  444. package/dist/sidenav/Sidenav.js +0 -123
  445. package/dist/slider/Slider.js +0 -257
  446. package/dist/slider/Slider.stories.js +0 -241
  447. package/dist/slider/readme.md +0 -64
  448. package/dist/spinner/Spinner.js +0 -190
  449. package/dist/spinner/Spinner.stories.js +0 -183
  450. package/dist/spinner/readme.md +0 -65
  451. package/dist/switch/Switch.js +0 -190
  452. package/dist/switch/Switch.stories.js +0 -134
  453. package/dist/switch/readme.md +0 -133
  454. package/dist/table/Table.js +0 -102
  455. package/dist/tabs/Tabs.js +0 -302
  456. package/dist/tabs/Tabs.stories.js +0 -130
  457. package/dist/tabs/readme.md +0 -78
  458. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  459. package/dist/tabs-for-sections/readme.md +0 -78
  460. package/dist/tag/Tag.js +0 -249
  461. package/dist/textarea/Textarea.js +0 -220
  462. package/dist/toggle/Toggle.js +0 -223
  463. package/dist/toggle/Toggle.stories.js +0 -297
  464. package/dist/toggle/readme.md +0 -80
  465. package/dist/toggle-group/ToggleGroup.js +0 -221
  466. package/dist/toggle-group/readme.md +0 -82
  467. package/dist/upload/Upload.js +0 -200
  468. package/dist/upload/Upload.stories.js +0 -72
  469. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -122
  470. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  471. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  472. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -279
  473. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  474. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  475. package/dist/upload/file-upload/FileToUpload.js +0 -158
  476. package/dist/upload/file-upload/audio-icon.svg +0 -4
  477. package/dist/upload/file-upload/close.svg +0 -4
  478. package/dist/upload/file-upload/file-icon.svg +0 -4
  479. package/dist/upload/file-upload/video-icon.svg +0 -4
  480. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  481. package/dist/upload/readme.md +0 -37
  482. package/dist/upload/transaction/Transaction.js +0 -155
  483. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  484. package/dist/upload/transaction/audio-icon.svg +0 -4
  485. package/dist/upload/transaction/error-icon.svg +0 -4
  486. package/dist/upload/transaction/file-icon-err.svg +0 -4
  487. package/dist/upload/transaction/file-icon.svg +0 -4
  488. package/dist/upload/transaction/image-icon-err.svg +0 -4
  489. package/dist/upload/transaction/image-icon.svg +0 -4
  490. package/dist/upload/transaction/success-icon.svg +0 -4
  491. package/dist/upload/transaction/video-icon-err.svg +0 -4
  492. package/dist/upload/transaction/video-icon.svg +0 -4
  493. package/dist/upload/transactions/Transactions.js +0 -120
  494. package/dist/wizard/Wizard.js +0 -326
  495. package/dist/wizard/invalid_icon.svg +0 -6
  496. package/dist/wizard/valid_icon.svg +0 -6
  497. package/dist/wizard/validation-wrong.svg +0 -6
  498. package/test/Accordion.test.js +0 -33
  499. package/test/AccordionGroup.test.js +0 -109
  500. package/test/Alert.test.js +0 -53
  501. package/test/Box.test.js +0 -10
  502. package/test/Button.test.js +0 -18
  503. package/test/Card.test.js +0 -30
  504. package/test/Checkbox.test.js +0 -45
  505. package/test/Chip.test.js +0 -25
  506. package/test/Date.test.js +0 -393
  507. package/test/Dialog.test.js +0 -23
  508. package/test/Dropdown.test.js +0 -130
  509. package/test/Footer.test.js +0 -99
  510. package/test/Header.test.js +0 -39
  511. package/test/Heading.test.js +0 -35
  512. package/test/InputText.test.js +0 -240
  513. package/test/Link.test.js +0 -42
  514. package/test/Paginator.test.js +0 -177
  515. package/test/ProgressBar.test.js +0 -35
  516. package/test/Radio.test.js +0 -37
  517. package/test/ResultsetTable.test.js +0 -330
  518. package/test/Select.test.js +0 -192
  519. package/test/Sidenav.test.js +0 -45
  520. package/test/Slider.test.js +0 -82
  521. package/test/Spinner.test.js +0 -27
  522. package/test/Switch.test.js +0 -45
  523. package/test/Table.test.js +0 -36
  524. package/test/Tabs.test.js +0 -109
  525. package/test/TabsForSections.test.js +0 -34
  526. package/test/Tag.test.js +0 -32
  527. package/test/TextArea.test.js +0 -52
  528. package/test/ToggleGroup.test.js +0 -81
  529. package/test/Upload.test.js +0 -60
  530. package/test/Wizard.test.js +0 -130
  531. package/test/mocks/pngMock.js +0 -1
  532. package/test/mocks/svgMock.js +0 -1
  533. /package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  534. /package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  535. /package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  536. /package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  537. /package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  538. /package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  539. /package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  540. /package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  541. /package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  542. /package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
@@ -0,0 +1,101 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof3 = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = exports.AccordionGroupAccordionContext = void 0;
9
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
10
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
12
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
+ var _react = _interopRequireWildcard(require("react"));
14
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
15
+ var _utils = require("../common/utils");
16
+ var _variables = require("../common/variables");
17
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
18
+ var _AccordionGroupAccordion = _interopRequireDefault(require("./AccordionGroupAccordion"));
19
+ var _templateObject;
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 && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
22
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
23
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
24
+ var AccordionGroupAccordionContext = exports.AccordionGroupAccordionContext = /*#__PURE__*/(0, _react.createContext)(null);
25
+ var DxcAccordionGroup = function DxcAccordionGroup(_ref) {
26
+ var defaultIndexActive = _ref.defaultIndexActive,
27
+ indexActive = _ref.indexActive,
28
+ _ref$disabled = _ref.disabled,
29
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
30
+ onActiveChange = _ref.onActiveChange,
31
+ margin = _ref.margin,
32
+ children = _ref.children;
33
+ var colorsTheme = (0, _useTheme["default"])();
34
+ var _useState = (0, _react.useState)(defaultIndexActive !== null && defaultIndexActive !== void 0 ? defaultIndexActive : -1),
35
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
36
+ innerIndexActive = _useState2[0],
37
+ setInnerIndexActive = _useState2[1];
38
+ var handlerActiveChange = (0, _react.useCallback)(function (index) {
39
+ indexActive !== null && indexActive !== void 0 ? indexActive : setInnerIndexActive(function (prev) {
40
+ return index === prev ? -1 : index;
41
+ });
42
+ !disabled && (onActiveChange === null || onActiveChange === void 0 ? void 0 : onActiveChange(index));
43
+ }, [disabled, indexActive, onActiveChange]);
44
+ var contextValue = (0, _react.useMemo)(function () {
45
+ return {
46
+ activeIndex: indexActive !== null && indexActive !== void 0 ? indexActive : innerIndexActive,
47
+ handlerActiveChange: handlerActiveChange,
48
+ disabled: disabled
49
+ };
50
+ }, [indexActive, innerIndexActive, handlerActiveChange, disabled]);
51
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
52
+ theme: colorsTheme.accordion
53
+ }, /*#__PURE__*/_react["default"].createElement(AccordionGroupContainer, {
54
+ margin: margin,
55
+ disabled: disabled
56
+ }, _react.Children.map(children, function (accordion, index) {
57
+ return /*#__PURE__*/_react["default"].createElement(AccordionGroupAccordionContext.Provider, {
58
+ key: "accordion-".concat(index),
59
+ value: _objectSpread({
60
+ index: index
61
+ }, contextValue)
62
+ }, accordion);
63
+ })));
64
+ };
65
+ DxcAccordionGroup.Accordion = _AccordionGroupAccordion["default"];
66
+ var calculateWidth = function calculateWidth(margin) {
67
+ return "calc(100% - ".concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
68
+ };
69
+ var AccordionGroupContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n cursor: ", ";\n\n > div:not(:last-of-type):not(:only-of-type) {\n border-bottom: ", ";\n border-color: ", ";\n }\n > div:not(:first-of-type):not(:last-of-type):not(:only-of-type) {\n border-radius: 0;\n & > h3 > button {\n border-radius: 0;\n }\n }\n > div:first-of-type:not(:only-of-type) {\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n border-top-left-radius: ", ";\n border-top-right-radius: ", ";\n\n & > h3 > button {\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n }\n }\n > div:last-of-type:not(:only-of-type) {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n border-bottom-left-radius: ", ";\n border-bottom-right-radius: ", ";\n\n & > h3 > button {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n }\n }\n"])), function (props) {
70
+ return calculateWidth(props.margin);
71
+ }, function (_ref2) {
72
+ var margin = _ref2.margin;
73
+ return margin && (0, _typeof2["default"])(margin) !== "object" ? _variables.spaces[margin] : "0px";
74
+ }, function (_ref3) {
75
+ var margin = _ref3.margin;
76
+ return margin && (0, _typeof2["default"])(margin) === "object" && margin.top ? _variables.spaces[margin.top] : "";
77
+ }, function (_ref4) {
78
+ var margin = _ref4.margin;
79
+ return margin && (0, _typeof2["default"])(margin) === "object" && margin.right ? _variables.spaces[margin.right] : "";
80
+ }, function (_ref5) {
81
+ var margin = _ref5.margin;
82
+ return margin && (0, _typeof2["default"])(margin) === "object" && margin.bottom ? _variables.spaces[margin.bottom] : "";
83
+ }, function (_ref6) {
84
+ var margin = _ref6.margin;
85
+ return margin && (0, _typeof2["default"])(margin) === "object" && margin.left ? _variables.spaces[margin.left] : "";
86
+ }, function (props) {
87
+ return props.disabled ? "not-allowed" : "pointer";
88
+ }, function (props) {
89
+ return "".concat(props.theme.accordionGroupSeparatorBorderThickness, " ").concat(props.theme.accordionGroupSeparatorBorderStyle);
90
+ }, function (props) {
91
+ return props.theme.accordionGroupSeparatorBorderColor;
92
+ }, function (props) {
93
+ return props.theme.borderRadius;
94
+ }, function (props) {
95
+ return props.theme.borderRadius;
96
+ }, function (props) {
97
+ return props.theme.borderRadius;
98
+ }, function (props) {
99
+ return props.theme.borderRadius;
100
+ });
101
+ var _default = exports["default"] = DxcAccordionGroup;
@@ -0,0 +1,252 @@
1
+ import React from "react";
2
+ import DxcAccordionGroup from "./AccordionGroup";
3
+ import DxcInset from "../inset/Inset";
4
+ import Title from "../../.storybook/components/Title";
5
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
6
+
7
+ export default {
8
+ title: "Accordion Group",
9
+ component: DxcAccordionGroup,
10
+ };
11
+
12
+ export const Chromatic = () => (
13
+ <>
14
+ <Title title="States" theme="light" level={2} />
15
+ <ExampleContainer>
16
+ <Title title="Default" theme="light" level={4} />
17
+ <DxcAccordionGroup>
18
+ <DxcAccordionGroup.Accordion label="Accordion1" assistiveText="Assistive text">
19
+ <DxcInset space="2rem">
20
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
21
+ leo lobortis eget.
22
+ </DxcInset>
23
+ </DxcAccordionGroup.Accordion>
24
+ <DxcAccordionGroup.Accordion label="Accordion2" assistiveText="Assistive text">
25
+ <DxcInset space="2rem">
26
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
27
+ leo lobortis eget.
28
+ </DxcInset>
29
+ </DxcAccordionGroup.Accordion>
30
+ <DxcAccordionGroup.Accordion label="Accordion2" assistiveText="Assistive text">
31
+ <DxcInset space="2rem">
32
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
33
+ leo lobortis eget.
34
+ </DxcInset>
35
+ </DxcAccordionGroup.Accordion>
36
+ </DxcAccordionGroup>
37
+ </ExampleContainer>
38
+ <ExampleContainer>
39
+ <Title title="Expanded" theme="light" level={4} />
40
+ <DxcAccordionGroup defaultIndexActive={1}>
41
+ <DxcAccordionGroup.Accordion label="Accordion1">
42
+ <DxcInset space="2rem">
43
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
44
+ dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex
45
+ ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat
46
+ nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit
47
+ anim id est laborum.
48
+ </DxcInset>
49
+ </DxcAccordionGroup.Accordion>
50
+ <DxcAccordionGroup.Accordion label="Accordion2">
51
+ <DxcInset space="2rem">
52
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
53
+ leo lobortis eget.
54
+ </DxcInset>
55
+ </DxcAccordionGroup.Accordion>
56
+ <DxcAccordionGroup.Accordion label="Accordion2">
57
+ <DxcInset space="2rem">
58
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
59
+ leo lobortis eget.
60
+ </DxcInset>
61
+ </DxcAccordionGroup.Accordion>
62
+ </DxcAccordionGroup>
63
+ </ExampleContainer>
64
+ <ExampleContainer>
65
+ <Title title="Disabled" theme="light" level={4} />
66
+ <DxcAccordionGroup disabled>
67
+ <DxcAccordionGroup.Accordion label="Accordion1">
68
+ <DxcInset space="2rem">
69
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
70
+ dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex
71
+ ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat
72
+ nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit
73
+ anim id est laborum.
74
+ </DxcInset>
75
+ </DxcAccordionGroup.Accordion>
76
+ <DxcAccordionGroup.Accordion label="Accordion2">
77
+ <DxcInset space="2rem">
78
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
79
+ leo lobortis eget.
80
+ </DxcInset>
81
+ </DxcAccordionGroup.Accordion>
82
+ </DxcAccordionGroup>
83
+ </ExampleContainer>
84
+ <ExampleContainer pseudoState="pseudo-focus">
85
+ <Title title="Focused" theme="light" level={4} />
86
+ <DxcAccordionGroup defaultIndexActive={2}>
87
+ <DxcAccordionGroup.Accordion label="Accordion1">
88
+ <DxcInset space="2rem">
89
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
90
+ dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex
91
+ ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat
92
+ nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit
93
+ anim id est laborum.
94
+ </DxcInset>
95
+ </DxcAccordionGroup.Accordion>
96
+ <DxcAccordionGroup.Accordion label="Accordion2">
97
+ <DxcInset space="2rem">
98
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
99
+ leo lobortis eget.
100
+ </DxcInset>
101
+ </DxcAccordionGroup.Accordion>
102
+ <DxcAccordionGroup.Accordion label="Accordion2">
103
+ <DxcInset space="2rem">
104
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
105
+ leo lobortis eget.
106
+ </DxcInset>
107
+ </DxcAccordionGroup.Accordion>
108
+ </DxcAccordionGroup>
109
+ </ExampleContainer>
110
+ <Title title="Margins" theme="light" level={2} />
111
+ <ExampleContainer>
112
+ <Title title="Xxsmall" theme="light" level={4} />
113
+ <DxcAccordionGroup margin="xxsmall">
114
+ <DxcAccordionGroup.Accordion label="Accordion1">
115
+ <DxcInset space="2rem">
116
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
117
+ dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex
118
+ ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat
119
+ nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit
120
+ anim id est laborum.
121
+ </DxcInset>
122
+ </DxcAccordionGroup.Accordion>
123
+ <DxcAccordionGroup.Accordion label="Accordion2">
124
+ <DxcInset space="2rem">
125
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
126
+ leo lobortis eget.
127
+ </DxcInset>
128
+ </DxcAccordionGroup.Accordion>
129
+ </DxcAccordionGroup>
130
+ </ExampleContainer>
131
+ <ExampleContainer>
132
+ <Title title="Xsmall" theme="light" level={4} />
133
+ <DxcAccordionGroup margin="xsmall">
134
+ <DxcAccordionGroup.Accordion label="Accordion1">
135
+ <DxcInset space="2rem">
136
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
137
+ dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex
138
+ ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat
139
+ nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit
140
+ anim id est laborum.
141
+ </DxcInset>
142
+ </DxcAccordionGroup.Accordion>
143
+ <DxcAccordionGroup.Accordion label="Accordion2">
144
+ <DxcInset space="2rem">
145
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
146
+ leo lobortis eget.
147
+ </DxcInset>
148
+ </DxcAccordionGroup.Accordion>
149
+ </DxcAccordionGroup>
150
+ </ExampleContainer>
151
+ <ExampleContainer>
152
+ <Title title="Small" theme="light" level={4} />
153
+ <DxcAccordionGroup margin="small">
154
+ <DxcAccordionGroup.Accordion label="Accordion1">
155
+ <DxcInset space="2rem">
156
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
157
+ dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex
158
+ ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat
159
+ nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit
160
+ anim id est laborum.
161
+ </DxcInset>
162
+ </DxcAccordionGroup.Accordion>
163
+ <DxcAccordionGroup.Accordion label="Accordion2">
164
+ <DxcInset space="2rem">
165
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
166
+ leo lobortis eget.
167
+ </DxcInset>
168
+ </DxcAccordionGroup.Accordion>
169
+ </DxcAccordionGroup>
170
+ </ExampleContainer>
171
+ <ExampleContainer>
172
+ <Title title="Medium" theme="light" level={4} />
173
+ <DxcAccordionGroup margin="medium">
174
+ <DxcAccordionGroup.Accordion label="Accordion1">
175
+ <DxcInset space="2rem">
176
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
177
+ dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex
178
+ ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat
179
+ nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit
180
+ anim id est laborum.
181
+ </DxcInset>
182
+ </DxcAccordionGroup.Accordion>
183
+ <DxcAccordionGroup.Accordion label="Accordion2">
184
+ <DxcInset space="2rem">
185
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
186
+ leo lobortis eget.
187
+ </DxcInset>
188
+ </DxcAccordionGroup.Accordion>
189
+ </DxcAccordionGroup>
190
+ </ExampleContainer>
191
+ <ExampleContainer>
192
+ <Title title="Large" theme="light" level={4} />
193
+ <DxcAccordionGroup margin="large">
194
+ <DxcAccordionGroup.Accordion label="Accordion1">
195
+ <DxcInset space="2rem">
196
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
197
+ dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex
198
+ ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat
199
+ nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit
200
+ anim id est laborum.
201
+ </DxcInset>
202
+ </DxcAccordionGroup.Accordion>
203
+ <DxcAccordionGroup.Accordion label="Accordion2">
204
+ <DxcInset space="2rem">
205
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
206
+ leo lobortis eget.
207
+ </DxcInset>
208
+ </DxcAccordionGroup.Accordion>
209
+ </DxcAccordionGroup>
210
+ </ExampleContainer>
211
+ <ExampleContainer>
212
+ <Title title="Xlarge" theme="light" level={4} />
213
+ <DxcAccordionGroup margin="xlarge">
214
+ <DxcAccordionGroup.Accordion label="Accordion1">
215
+ <DxcInset space="2rem">
216
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
217
+ dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex
218
+ ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat
219
+ nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit
220
+ anim id est laborum.
221
+ </DxcInset>
222
+ </DxcAccordionGroup.Accordion>
223
+ <DxcAccordionGroup.Accordion label="Accordion2">
224
+ <DxcInset space="2rem">
225
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
226
+ leo lobortis eget.
227
+ </DxcInset>
228
+ </DxcAccordionGroup.Accordion>
229
+ </DxcAccordionGroup>
230
+ </ExampleContainer>
231
+ <ExampleContainer>
232
+ <Title title="Xxlarge" theme="light" level={4} />
233
+ <DxcAccordionGroup margin="xxlarge">
234
+ <DxcAccordionGroup.Accordion label="Accordion1">
235
+ <DxcInset space="2rem">
236
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
237
+ dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex
238
+ ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat
239
+ nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit
240
+ anim id est laborum.
241
+ </DxcInset>
242
+ </DxcAccordionGroup.Accordion>
243
+ <DxcAccordionGroup.Accordion label="Accordion2">
244
+ <DxcInset space="2rem">
245
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
246
+ leo lobortis eget.
247
+ </DxcInset>
248
+ </DxcAccordionGroup.Accordion>
249
+ </DxcAccordionGroup>
250
+ </ExampleContainer>
251
+ </>
252
+ );
@@ -0,0 +1,98 @@
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 _AccordionGroup = _interopRequireDefault(require("./AccordionGroup.tsx"));
7
+ describe("Accordion component tests", function () {
8
+ test("Uncontrolled accordion group calls correct function on click", function () {
9
+ var onActiveChange = jest.fn();
10
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"], {
11
+ margin: "large",
12
+ onActiveChange: onActiveChange
13
+ }, /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"].Accordion, {
14
+ label: "Accordion1",
15
+ margin: "large"
16
+ }, /*#__PURE__*/_react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget.")), /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"].Accordion, {
17
+ label: "Accordion2"
18
+ }, /*#__PURE__*/_react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget.")))),
19
+ getByText = _render.getByText,
20
+ getAllByRole = _render.getAllByRole;
21
+ expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("false");
22
+ expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("false");
23
+ _react2.fireEvent.click(getByText("Accordion1"));
24
+ expect(onActiveChange).toHaveBeenCalled();
25
+ expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("true");
26
+ expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("false");
27
+ });
28
+ test("Uncontrolled accordion group renders initially with an accordion expanded using defaultIndexActive", function () {
29
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"], {
30
+ defaultIndexActive: 1
31
+ }, /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"].Accordion, {
32
+ label: "Accordion1"
33
+ }, /*#__PURE__*/_react["default"].createElement("div", null, "First accordion")), /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"].Accordion, {
34
+ label: "Accordion2"
35
+ }, /*#__PURE__*/_react["default"].createElement("div", null, "Second accordion")))),
36
+ queryByText = _render2.queryByText,
37
+ getByText = _render2.getByText,
38
+ getAllByRole = _render2.getAllByRole;
39
+ expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("false");
40
+ expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("true");
41
+ expect(getByText("Second accordion")).toBeTruthy();
42
+ expect(queryByText("First accordion")).toBeFalsy();
43
+ });
44
+ test("Controlled accordion with indexActive change", function () {
45
+ var onActiveChange = jest.fn();
46
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"], {
47
+ margin: "large",
48
+ indexActive: 1,
49
+ onActiveChange: onActiveChange
50
+ }, /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"].Accordion, {
51
+ label: "Accordion1",
52
+ margin: "large"
53
+ }, /*#__PURE__*/_react["default"].createElement("div", null, "Text1")), /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"].Accordion, {
54
+ label: "Accordion2"
55
+ }, /*#__PURE__*/_react["default"].createElement("div", null, "Text2")))),
56
+ queryByText = _render3.queryByText,
57
+ getByText = _render3.getByText,
58
+ getAllByRole = _render3.getAllByRole,
59
+ rerender = _render3.rerender;
60
+ expect(queryByText("Text1")).toBeFalsy();
61
+ expect(getByText("Text2")).toBeTruthy();
62
+ _react2.fireEvent.click(getByText("Accordion1"));
63
+ _react2.fireEvent.click(getByText("Accordion2"));
64
+ expect(onActiveChange.mock.calls[0][0]).toBe(0);
65
+ expect(onActiveChange.mock.calls[1][0]).toBe(1);
66
+ expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("false");
67
+ expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("true");
68
+ rerender( /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"], {
69
+ margin: "large",
70
+ indexActive: 0,
71
+ onActiveChange: onActiveChange
72
+ }, /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"].Accordion, {
73
+ label: "Accordion1",
74
+ margin: "large"
75
+ }, /*#__PURE__*/_react["default"].createElement("div", null, "Text1")), /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"].Accordion, {
76
+ label: "Accordion2"
77
+ }, /*#__PURE__*/_react["default"].createElement("div", null, "Text2"))));
78
+ expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("true");
79
+ expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("false");
80
+ });
81
+ test("Disabled uncontrolled accordion group", function () {
82
+ var onActiveChange = jest.fn();
83
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"], {
84
+ margin: "large",
85
+ onActiveChange: onActiveChange,
86
+ disabled: true
87
+ }, /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"].Accordion, {
88
+ label: "Accordion1",
89
+ margin: "large"
90
+ }, /*#__PURE__*/_react["default"].createElement("div", null, "Text1")), /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"].Accordion, {
91
+ label: "Accordion2"
92
+ }, /*#__PURE__*/_react["default"].createElement("div", null, "Text2")))),
93
+ getByText = _render4.getByText;
94
+ _react2.fireEvent.click(getByText("Accordion1"));
95
+ _react2.fireEvent.click(getByText("Accordion2"));
96
+ expect(onActiveChange).toHaveBeenCalledTimes(0);
97
+ });
98
+ });
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { AccordionPropsType } from "./types";
3
+ declare const AccordionGroupAccordion: ({ ...childProps }: AccordionPropsType) => JSX.Element;
4
+ export default AccordionGroupAccordion;
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+ var _objectDestructuringEmpty2 = _interopRequireDefault(require("@babel/runtime/helpers/objectDestructuringEmpty"));
10
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
+ var _react = _interopRequireWildcard(require("react"));
12
+ var _Accordion = _interopRequireDefault(require("../accordion/Accordion"));
13
+ var _AccordionGroup = require("./AccordionGroup");
14
+ 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); }
15
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
16
+ var AccordionGroupAccordion = function AccordionGroupAccordion(_ref) {
17
+ var childProps = (0, _extends2["default"])({}, ((0, _objectDestructuringEmpty2["default"])(_ref), _ref));
18
+ var _useContext = (0, _react.useContext)(_AccordionGroup.AccordionGroupAccordionContext),
19
+ activeIndex = _useContext.activeIndex,
20
+ handlerActiveChange = _useContext.handlerActiveChange,
21
+ disabled = _useContext.disabled,
22
+ index = _useContext.index;
23
+ return /*#__PURE__*/_react["default"].createElement(_Accordion["default"], (0, _extends2["default"])({
24
+ isExpanded: activeIndex === index,
25
+ onChange: function onChange() {
26
+ handlerActiveChange(index);
27
+ },
28
+ disabled: disabled
29
+ }, childProps), childProps.children);
30
+ };
31
+ var _default = exports["default"] = AccordionGroupAccordion;
@@ -0,0 +1,67 @@
1
+ /// <reference types="react" />
2
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ type Margin = {
4
+ top?: Space;
5
+ bottom?: Space;
6
+ left?: Space;
7
+ right?: Space;
8
+ };
9
+ type SVG = React.ReactNode & React.SVGProps<SVGSVGElement>;
10
+ export type AccordionPropsType = {
11
+ /**
12
+ * The panel label.
13
+ */
14
+ label: string;
15
+ /**
16
+ * Element or path used as the icon that will be placed next to panel label.
17
+ */
18
+ icon?: string | SVG;
19
+ /**
20
+ * Assistive text to be placed on the right side of the panel.
21
+ */
22
+ assistiveText?: string;
23
+ /**
24
+ * If true, the component will be disabled.
25
+ */
26
+ disabled?: boolean;
27
+ /**
28
+ * The expanded panel of the accordion. This area can be used to render
29
+ * custom content.
30
+ */
31
+ children: React.ReactNode;
32
+ };
33
+ type Props = {
34
+ /**
35
+ * Initially active accordion, only when it is uncontrolled.
36
+ */
37
+ defaultIndexActive?: number;
38
+ /**
39
+ * The index of the active accordion. If undefined, the component will be uncontrolled and the active accordion will be managed internally by the component.
40
+ * If null, the component will be controlled and all accordions will be closed.
41
+ */
42
+ indexActive?: number;
43
+ /**
44
+ * If true, the component will be disabled.
45
+ */
46
+ disabled?: boolean;
47
+ /**
48
+ * This function will be called when the user clicks on an accordion. The index of the clicked accordion will be passed as a parameter.
49
+ */
50
+ onActiveChange?: (indexActive: number) => void;
51
+ /**
52
+ * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
53
+ * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
54
+ */
55
+ margin?: Space | Margin;
56
+ /**
57
+ * Customized accordion(s) that are allowed inside an Accordion Group.
58
+ */
59
+ children: React.ReactElement<AccordionPropsType>[] | React.ReactElement<AccordionPropsType>;
60
+ };
61
+ export type AccordionGroupAccordionContextProps = {
62
+ activeIndex: number;
63
+ handlerActiveChange: (index: number) => void;
64
+ disabled: boolean;
65
+ index: number;
66
+ };
67
+ export default Props;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import ActionIconPropsTypes from "./types";
3
+ declare const DxcActionIcon: React.ForwardRefExoticComponent<ActionIconPropsTypes & React.RefAttributes<HTMLButtonElement>>;
4
+ export default DxcActionIcon;
@@ -0,0 +1,47 @@
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;
13
+ var DxcActionIcon = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
14
+ var _ref$disabled = _ref.disabled,
15
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
16
+ title = _ref.title,
17
+ icon = _ref.icon,
18
+ onClick = _ref.onClick,
19
+ tabIndex = _ref.tabIndex;
20
+ return /*#__PURE__*/_react["default"].createElement(ActionIcon, {
21
+ "aria-label": title,
22
+ disabled: disabled,
23
+ onClick: onClick,
24
+ onMouseDown: function onMouseDown(event) {
25
+ event.stopPropagation();
26
+ },
27
+ tabIndex: tabIndex,
28
+ title: title,
29
+ type: "button",
30
+ ref: ref
31
+ }, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement("img", {
32
+ src: icon
33
+ }) : icon);
34
+ });
35
+ var ActionIcon = _styledComponents["default"].button(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n border: none;\n border-radius: 2px;\n width: 24px;\n height: 24px;\n padding: 3px;\n ", "\n\n box-shadow: 0 0 0 2px transparent;\n background-color: ", ";\n color: ", ";\n\n ", "\n\n img, svg {\n width: 16px;\n height: 16px;\n }\n"])), function (props) {
36
+ return props.disabled ? "cursor: not-allowed;" : "cursor: pointer;";
37
+ }, function (props) {
38
+ var _props$theme$disabled, _props$theme$actionBa;
39
+ return props.disabled ? (_props$theme$disabled = props.theme.disabledActionBackgroundColor) !== null && _props$theme$disabled !== void 0 ? _props$theme$disabled : _coreTokens["default"].color_transparent : (_props$theme$actionBa = props.theme.actionBackgroundColor) !== null && _props$theme$actionBa !== void 0 ? _props$theme$actionBa : _coreTokens["default"].color_transparent;
40
+ }, function (props) {
41
+ var _props$theme$disabled2, _props$theme$actionIc;
42
+ return props.disabled ? (_props$theme$disabled2 = props.theme.disabledActionIconColor) !== null && _props$theme$disabled2 !== void 0 ? _props$theme$disabled2 : _coreTokens["default"].color_grey_500 : (_props$theme$actionIc = props.theme.actionIconColor) !== null && _props$theme$actionIc !== void 0 ? _props$theme$actionIc : _coreTokens["default"].color_black;
43
+ }, function (props) {
44
+ var _props$theme$focusAct, _props$theme$focusAct2, _props$theme$hoverAct, _props$theme$hoverAct2, _props$theme$activeAc, _props$theme$activeAc2;
45
+ return !props.disabled && "\n &:focus,\n &:focus-visible {\n outline: none;\n box-shadow: 0 0 0 2px ".concat((_props$theme$focusAct = props.theme.focusActionBorderColor) !== null && _props$theme$focusAct !== void 0 ? _props$theme$focusAct : _coreTokens["default"].color_blue_600, ";\n color: ").concat((_props$theme$focusAct2 = props.theme.focusActionIconColor) !== null && _props$theme$focusAct2 !== void 0 ? _props$theme$focusAct2 : _coreTokens["default"].color_black, ";\n }\n &:hover {\n background-color: ").concat((_props$theme$hoverAct = props.theme.hoverActionBackgroundColor) !== null && _props$theme$hoverAct !== void 0 ? _props$theme$hoverAct : _coreTokens["default"].color_grey_100, ";\n color: ").concat((_props$theme$hoverAct2 = props.theme.hoverActionIconColor) !== null && _props$theme$hoverAct2 !== void 0 ? _props$theme$hoverAct2 : _coreTokens["default"].color_black, ";\n }\n &:active {\n background-color: ").concat((_props$theme$activeAc = props.theme.activeActionBackgroundColor) !== null && _props$theme$activeAc !== void 0 ? _props$theme$activeAc : _coreTokens["default"].color_grey_300, ";\n color: ").concat((_props$theme$activeAc2 = props.theme.activeActionIconColor) !== null && _props$theme$activeAc2 !== void 0 ? _props$theme$activeAc2 : _coreTokens["default"].color_black, ";\n }\n ");
46
+ });
47
+ var _default = exports["default"] = DxcActionIcon;