@dxc-technology/halstack-react 0.0.0-b3de035 → 0.0.0-b3e2de9

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 (577) hide show
  1. package/BackgroundColorContext.d.ts +1 -0
  2. package/BackgroundColorContext.js +30 -0
  3. package/HalstackContext.d.ts +1249 -0
  4. package/HalstackContext.js +310 -0
  5. package/README.md +28 -47
  6. package/accordion/Accordion.accessibility.test.js +71 -0
  7. package/accordion/Accordion.d.ts +4 -0
  8. package/accordion/Accordion.js +169 -0
  9. package/accordion/Accordion.stories.tsx +251 -0
  10. package/accordion/Accordion.test.js +56 -0
  11. package/accordion/types.d.ts +57 -0
  12. package/accordion/types.js +5 -0
  13. package/accordion-group/AccordionGroup.accessibility.test.js +88 -0
  14. package/accordion-group/AccordionGroup.d.ts +7 -0
  15. package/accordion-group/AccordionGroup.js +101 -0
  16. package/accordion-group/AccordionGroup.stories.tsx +252 -0
  17. package/accordion-group/AccordionGroup.test.js +98 -0
  18. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  19. package/accordion-group/AccordionGroupAccordion.js +31 -0
  20. package/accordion-group/AccordionGroupContext.d.ts +3 -0
  21. package/accordion-group/AccordionGroupContext.js +8 -0
  22. package/accordion-group/types.d.ts +67 -0
  23. package/accordion-group/types.js +5 -0
  24. package/action-icon/ActionIcon.accessibility.test.js +63 -0
  25. package/action-icon/ActionIcon.d.ts +4 -0
  26. package/action-icon/ActionIcon.js +48 -0
  27. package/action-icon/ActionIcon.stories.tsx +41 -0
  28. package/action-icon/ActionIcon.test.js +64 -0
  29. package/action-icon/types.d.ts +26 -0
  30. package/action-icon/types.js +5 -0
  31. package/alert/Alert.accessibility.test.js +95 -0
  32. package/alert/Alert.d.ts +4 -0
  33. package/alert/Alert.js +200 -0
  34. package/alert/Alert.stories.tsx +198 -0
  35. package/alert/Alert.test.js +75 -0
  36. package/alert/types.d.ts +49 -0
  37. package/alert/types.js +5 -0
  38. package/badge/Badge.accessibility.test.js +129 -0
  39. package/badge/Badge.d.ts +4 -0
  40. package/badge/Badge.js +159 -0
  41. package/badge/Badge.stories.tsx +210 -0
  42. package/badge/Badge.test.js +30 -0
  43. package/badge/types.d.ts +54 -0
  44. package/badge/types.js +5 -0
  45. package/bleed/Bleed.d.ts +3 -0
  46. package/bleed/Bleed.js +43 -0
  47. package/bleed/Bleed.stories.tsx +342 -0
  48. package/bleed/types.d.ts +37 -0
  49. package/bleed/types.js +5 -0
  50. package/box/Box.accessibility.test.js +33 -0
  51. package/box/Box.d.ts +4 -0
  52. package/box/Box.js +75 -0
  53. package/box/Box.stories.tsx +119 -0
  54. package/box/Box.test.js +13 -0
  55. package/box/types.d.ts +32 -0
  56. package/box/types.js +5 -0
  57. package/bulleted-list/BulletedList.accessibility.test.js +107 -0
  58. package/bulleted-list/BulletedList.d.ts +7 -0
  59. package/bulleted-list/BulletedList.js +92 -0
  60. package/bulleted-list/BulletedList.stories.tsx +115 -0
  61. package/bulleted-list/types.d.ts +38 -0
  62. package/bulleted-list/types.js +5 -0
  63. package/button/Button.accessibility.test.js +127 -0
  64. package/button/Button.d.ts +4 -0
  65. package/button/Button.js +121 -0
  66. package/button/Button.stories.tsx +325 -0
  67. package/button/Button.test.js +38 -0
  68. package/button/types.d.ts +57 -0
  69. package/button/types.js +5 -0
  70. package/card/Card.accessibility.test.js +36 -0
  71. package/card/Card.d.ts +4 -0
  72. package/card/Card.js +120 -0
  73. package/card/Card.stories.tsx +171 -0
  74. package/card/Card.test.js +39 -0
  75. package/card/types.d.ts +62 -0
  76. package/card/types.js +5 -0
  77. package/checkbox/Checkbox.accessibility.test.js +87 -0
  78. package/checkbox/Checkbox.d.ts +4 -0
  79. package/checkbox/Checkbox.js +215 -0
  80. package/checkbox/Checkbox.stories.tsx +222 -0
  81. package/checkbox/Checkbox.test.js +199 -0
  82. package/checkbox/types.d.ts +72 -0
  83. package/checkbox/types.js +5 -0
  84. package/chip/Chip.accessibility.test.js +67 -0
  85. package/chip/Chip.d.ts +4 -0
  86. package/chip/Chip.js +124 -0
  87. package/chip/Chip.stories.tsx +195 -0
  88. package/chip/Chip.test.js +41 -0
  89. package/chip/types.d.ts +45 -0
  90. package/chip/types.js +5 -0
  91. package/common/coreTokens.d.ts +237 -0
  92. package/common/coreTokens.js +184 -0
  93. package/common/utils.d.ts +1 -0
  94. package/{dist/common → common}/utils.js +6 -12
  95. package/common/variables.d.ts +1395 -0
  96. package/common/variables.js +1267 -0
  97. package/container/Container.d.ts +4 -0
  98. package/container/Container.js +194 -0
  99. package/container/Container.stories.tsx +214 -0
  100. package/container/types.d.ts +74 -0
  101. package/container/types.js +5 -0
  102. package/contextual-menu/ContextualMenu.accessibility.test.js +86 -0
  103. package/contextual-menu/ContextualMenu.d.ts +7 -0
  104. package/contextual-menu/ContextualMenu.js +71 -0
  105. package/contextual-menu/ContextualMenu.stories.tsx +182 -0
  106. package/contextual-menu/ContextualMenu.test.js +71 -0
  107. package/contextual-menu/MenuItemAction.d.ts +4 -0
  108. package/contextual-menu/MenuItemAction.js +46 -0
  109. package/contextual-menu/types.d.ts +22 -0
  110. package/contextual-menu/types.js +5 -0
  111. package/date-input/Calendar.d.ts +4 -0
  112. package/date-input/Calendar.js +214 -0
  113. package/date-input/DateInput.accessibility.test.js +216 -0
  114. package/date-input/DateInput.d.ts +4 -0
  115. package/date-input/DateInput.js +223 -0
  116. package/date-input/DateInput.stories.tsx +285 -0
  117. package/date-input/DateInput.test.js +808 -0
  118. package/date-input/DatePicker.d.ts +4 -0
  119. package/date-input/DatePicker.js +115 -0
  120. package/date-input/Icons.d.ts +6 -0
  121. package/date-input/Icons.js +58 -0
  122. package/date-input/YearPicker.d.ts +4 -0
  123. package/date-input/YearPicker.js +100 -0
  124. package/date-input/types.d.ts +164 -0
  125. package/date-input/types.js +5 -0
  126. package/dialog/Dialog.accessibility.test.js +69 -0
  127. package/dialog/Dialog.d.ts +4 -0
  128. package/dialog/Dialog.js +104 -0
  129. package/dialog/Dialog.stories.tsx +365 -0
  130. package/dialog/Dialog.test.js +307 -0
  131. package/dialog/types.d.ts +36 -0
  132. package/dialog/types.js +5 -0
  133. package/divider/Divider.accessibility.test.js +33 -0
  134. package/divider/Divider.d.ts +4 -0
  135. package/divider/Divider.js +36 -0
  136. package/divider/Divider.stories.tsx +223 -0
  137. package/divider/Divider.test.js +38 -0
  138. package/divider/types.d.ts +21 -0
  139. package/divider/types.js +5 -0
  140. package/dropdown/Dropdown.accessibility.test.js +180 -0
  141. package/dropdown/Dropdown.d.ts +4 -0
  142. package/dropdown/Dropdown.js +319 -0
  143. package/dropdown/Dropdown.stories.tsx +427 -0
  144. package/dropdown/Dropdown.test.js +599 -0
  145. package/dropdown/DropdownMenu.d.ts +4 -0
  146. package/dropdown/DropdownMenu.js +63 -0
  147. package/dropdown/DropdownMenuItem.d.ts +4 -0
  148. package/dropdown/DropdownMenuItem.js +70 -0
  149. package/dropdown/types.d.ts +96 -0
  150. package/dropdown/types.js +5 -0
  151. package/file-input/FileInput.accessibility.test.js +160 -0
  152. package/file-input/FileInput.d.ts +4 -0
  153. package/file-input/FileInput.js +479 -0
  154. package/file-input/FileInput.stories.tsx +618 -0
  155. package/file-input/FileInput.test.js +459 -0
  156. package/file-input/FileItem.d.ts +4 -0
  157. package/file-input/FileItem.js +135 -0
  158. package/file-input/types.d.ts +129 -0
  159. package/file-input/types.js +5 -0
  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 +117 -0
  166. package/footer/Footer.d.ts +4 -0
  167. package/footer/Footer.js +138 -0
  168. package/footer/Footer.stories.tsx +170 -0
  169. package/footer/Footer.test.js +85 -0
  170. package/footer/Icons.d.ts +3 -0
  171. package/footer/Icons.js +136 -0
  172. package/footer/types.d.ts +64 -0
  173. package/footer/types.js +5 -0
  174. package/grid/Grid.d.ts +7 -0
  175. package/grid/Grid.js +76 -0
  176. package/grid/Grid.stories.tsx +219 -0
  177. package/grid/types.d.ts +115 -0
  178. package/grid/types.js +5 -0
  179. package/header/Header.accessibility.test.js +84 -0
  180. package/header/Header.d.ts +8 -0
  181. package/header/Header.js +220 -0
  182. package/header/Header.stories.tsx +251 -0
  183. package/header/Header.test.js +66 -0
  184. package/header/Icons.d.ts +2 -0
  185. package/{dist/header → header}/Icons.js +9 -39
  186. package/header/types.d.ts +33 -0
  187. package/header/types.js +5 -0
  188. package/heading/Heading.accessibility.test.js +33 -0
  189. package/heading/Heading.d.ts +4 -0
  190. package/{dist/heading → heading}/Heading.js +31 -124
  191. package/heading/Heading.stories.tsx +54 -0
  192. package/heading/Heading.test.js +169 -0
  193. package/heading/types.d.ts +33 -0
  194. package/heading/types.js +5 -0
  195. package/icon/Icon.accessibility.test.js +30 -0
  196. package/icon/Icon.d.ts +4 -0
  197. package/icon/Icon.js +33 -0
  198. package/icon/Icon.stories.tsx +28 -0
  199. package/icon/types.d.ts +4 -0
  200. package/icon/types.js +5 -0
  201. package/image/Image.accessibility.test.js +56 -0
  202. package/image/Image.d.ts +4 -0
  203. package/image/Image.js +70 -0
  204. package/image/Image.stories.tsx +129 -0
  205. package/image/types.d.ts +72 -0
  206. package/image/types.js +5 -0
  207. package/inset/Inset.d.ts +3 -0
  208. package/inset/Inset.js +43 -0
  209. package/inset/Inset.stories.tsx +230 -0
  210. package/inset/types.d.ts +37 -0
  211. package/inset/types.js +5 -0
  212. package/layout/ApplicationLayout.d.ts +20 -0
  213. package/layout/ApplicationLayout.js +134 -0
  214. package/layout/ApplicationLayout.stories.tsx +162 -0
  215. package/layout/Icons.d.ts +8 -0
  216. package/layout/Icons.js +56 -0
  217. package/layout/types.d.ts +41 -0
  218. package/layout/types.js +5 -0
  219. package/link/Link.accessibility.test.js +112 -0
  220. package/link/Link.d.ts +4 -0
  221. package/link/Link.js +117 -0
  222. package/link/Link.stories.tsx +253 -0
  223. package/link/Link.test.js +63 -0
  224. package/link/types.d.ts +54 -0
  225. package/link/types.js +5 -0
  226. package/main.d.ts +49 -0
  227. package/{dist/main.js → main.js} +135 -137
  228. package/nav-tabs/NavTabs.accessibility.test.js +52 -0
  229. package/nav-tabs/NavTabs.d.ts +7 -0
  230. package/nav-tabs/NavTabs.js +93 -0
  231. package/nav-tabs/NavTabs.stories.tsx +276 -0
  232. package/nav-tabs/NavTabs.test.js +76 -0
  233. package/nav-tabs/NavTabsContext.d.ts +3 -0
  234. package/nav-tabs/NavTabsContext.js +8 -0
  235. package/nav-tabs/Tab.d.ts +4 -0
  236. package/nav-tabs/Tab.js +118 -0
  237. package/nav-tabs/types.d.ts +52 -0
  238. package/nav-tabs/types.js +5 -0
  239. package/number-input/NumberInput.accessibility.test.js +228 -0
  240. package/number-input/NumberInput.d.ts +4 -0
  241. package/number-input/NumberInput.js +86 -0
  242. package/number-input/NumberInput.stories.tsx +131 -0
  243. package/number-input/NumberInput.test.js +989 -0
  244. package/number-input/NumberInputContext.d.ts +3 -0
  245. package/number-input/NumberInputContext.js +8 -0
  246. package/number-input/types.d.ts +136 -0
  247. package/number-input/types.js +5 -0
  248. package/package.json +62 -50
  249. package/paginator/Icons.d.ts +5 -0
  250. package/paginator/Icons.js +40 -0
  251. package/paginator/Paginator.accessibility.test.js +79 -0
  252. package/paginator/Paginator.d.ts +4 -0
  253. package/paginator/Paginator.js +135 -0
  254. package/paginator/Paginator.stories.tsx +87 -0
  255. package/paginator/Paginator.test.js +335 -0
  256. package/paginator/types.d.ts +38 -0
  257. package/paginator/types.js +5 -0
  258. package/paragraph/Paragraph.accessibility.test.js +28 -0
  259. package/paragraph/Paragraph.d.ts +5 -0
  260. package/paragraph/Paragraph.js +22 -0
  261. package/paragraph/Paragraph.stories.tsx +27 -0
  262. package/password-input/Icons.d.ts +6 -0
  263. package/password-input/Icons.js +35 -0
  264. package/password-input/PasswordInput.accessibility.test.js +153 -0
  265. package/password-input/PasswordInput.d.ts +4 -0
  266. package/password-input/PasswordInput.js +97 -0
  267. package/password-input/PasswordInput.stories.tsx +99 -0
  268. package/password-input/PasswordInput.test.js +198 -0
  269. package/password-input/types.d.ts +111 -0
  270. package/password-input/types.js +5 -0
  271. package/progress-bar/ProgressBar.accessibility.test.js +35 -0
  272. package/progress-bar/ProgressBar.d.ts +4 -0
  273. package/progress-bar/ProgressBar.js +144 -0
  274. package/progress-bar/ProgressBar.stories.tsx +93 -0
  275. package/progress-bar/ProgressBar.test.js +93 -0
  276. package/progress-bar/types.d.ts +37 -0
  277. package/progress-bar/types.js +5 -0
  278. package/quick-nav/QuickNav.accessibility.test.js +57 -0
  279. package/quick-nav/QuickNav.d.ts +4 -0
  280. package/quick-nav/QuickNav.js +94 -0
  281. package/quick-nav/QuickNav.stories.tsx +356 -0
  282. package/quick-nav/types.d.ts +21 -0
  283. package/quick-nav/types.js +5 -0
  284. package/radio-group/Radio.d.ts +4 -0
  285. package/radio-group/Radio.js +124 -0
  286. package/radio-group/RadioGroup.accessibility.test.js +97 -0
  287. package/radio-group/RadioGroup.d.ts +4 -0
  288. package/radio-group/RadioGroup.js +235 -0
  289. package/radio-group/RadioGroup.stories.tsx +214 -0
  290. package/radio-group/RadioGroup.test.js +756 -0
  291. package/radio-group/types.d.ts +114 -0
  292. package/radio-group/types.js +5 -0
  293. package/resultset-table/Icons.d.ts +7 -0
  294. package/resultset-table/Icons.js +47 -0
  295. package/resultset-table/ResultsetTable.accessibility.test.js +274 -0
  296. package/resultset-table/ResultsetTable.d.ts +7 -0
  297. package/resultset-table/ResultsetTable.js +170 -0
  298. package/resultset-table/ResultsetTable.stories.tsx +401 -0
  299. package/resultset-table/ResultsetTable.test.js +381 -0
  300. package/resultset-table/types.d.ts +100 -0
  301. package/resultset-table/types.js +5 -0
  302. package/select/Icons.d.ts +10 -0
  303. package/select/Icons.js +89 -0
  304. package/select/Listbox.d.ts +4 -0
  305. package/select/Listbox.js +143 -0
  306. package/select/Option.d.ts +4 -0
  307. package/select/Option.js +87 -0
  308. package/select/Select.accessibility.test.js +217 -0
  309. package/select/Select.d.ts +4 -0
  310. package/select/Select.js +590 -0
  311. package/select/Select.stories.tsx +970 -0
  312. package/select/Select.test.js +2370 -0
  313. package/select/types.d.ts +209 -0
  314. package/select/types.js +5 -0
  315. package/sidenav/Icons.d.ts +7 -0
  316. package/sidenav/Icons.js +47 -0
  317. package/sidenav/Sidenav.accessibility.test.js +59 -0
  318. package/sidenav/Sidenav.d.ts +10 -0
  319. package/sidenav/Sidenav.js +197 -0
  320. package/sidenav/Sidenav.stories.tsx +281 -0
  321. package/sidenav/Sidenav.test.js +37 -0
  322. package/sidenav/SidenavContext.d.ts +5 -0
  323. package/sidenav/SidenavContext.js +13 -0
  324. package/sidenav/types.d.ts +76 -0
  325. package/sidenav/types.js +5 -0
  326. package/slider/Slider.accessibility.test.js +104 -0
  327. package/slider/Slider.d.ts +4 -0
  328. package/slider/Slider.js +285 -0
  329. package/slider/Slider.test.js +254 -0
  330. package/slider/types.d.ts +86 -0
  331. package/slider/types.js +5 -0
  332. package/spinner/Spinner.accessibility.test.js +96 -0
  333. package/spinner/Spinner.d.ts +4 -0
  334. package/spinner/Spinner.js +206 -0
  335. package/spinner/Spinner.stories.tsx +129 -0
  336. package/spinner/Spinner.test.js +55 -0
  337. package/spinner/types.d.ts +32 -0
  338. package/spinner/types.js +5 -0
  339. package/status-light/StatusLight.accessibility.test.js +157 -0
  340. package/status-light/StatusLight.d.ts +4 -0
  341. package/status-light/StatusLight.js +51 -0
  342. package/status-light/StatusLight.stories.tsx +74 -0
  343. package/status-light/StatusLight.test.js +25 -0
  344. package/status-light/types.d.ts +17 -0
  345. package/status-light/types.js +5 -0
  346. package/switch/Switch.accessibility.test.js +89 -0
  347. package/switch/Switch.d.ts +4 -0
  348. package/switch/Switch.js +214 -0
  349. package/switch/Switch.stories.tsx +137 -0
  350. package/switch/Switch.test.js +180 -0
  351. package/switch/types.d.ts +66 -0
  352. package/switch/types.js +5 -0
  353. package/table/DropdownTheme.js +62 -0
  354. package/table/Table.accessibility.test.js +82 -0
  355. package/table/Table.d.ts +8 -0
  356. package/table/Table.js +161 -0
  357. package/table/Table.stories.tsx +651 -0
  358. package/table/Table.test.js +113 -0
  359. package/table/types.d.ts +49 -0
  360. package/table/types.js +5 -0
  361. package/tabs/Tab.d.ts +4 -0
  362. package/tabs/Tab.js +116 -0
  363. package/tabs/Tabs.accessibility.test.js +56 -0
  364. package/tabs/Tabs.d.ts +4 -0
  365. package/tabs/Tabs.js +384 -0
  366. package/tabs/Tabs.stories.tsx +226 -0
  367. package/tabs/Tabs.test.js +294 -0
  368. package/tabs/types.d.ts +92 -0
  369. package/tabs/types.js +5 -0
  370. package/tag/Tag.accessibility.test.js +69 -0
  371. package/tag/Tag.d.ts +4 -0
  372. package/tag/Tag.js +151 -0
  373. package/tag/Tag.stories.tsx +155 -0
  374. package/tag/Tag.test.js +49 -0
  375. package/tag/types.d.ts +69 -0
  376. package/tag/types.js +5 -0
  377. package/text-input/Suggestion.d.ts +4 -0
  378. package/text-input/Suggestion.js +67 -0
  379. package/text-input/Suggestions.d.ts +4 -0
  380. package/text-input/Suggestions.js +86 -0
  381. package/text-input/TextInput.accessibility.test.js +321 -0
  382. package/text-input/TextInput.d.ts +4 -0
  383. package/text-input/TextInput.js +567 -0
  384. package/text-input/TextInput.stories.tsx +465 -0
  385. package/text-input/TextInput.test.js +1756 -0
  386. package/text-input/types.d.ts +205 -0
  387. package/text-input/types.js +5 -0
  388. package/textarea/Textarea.accessibility.test.js +155 -0
  389. package/textarea/Textarea.d.ts +4 -0
  390. package/textarea/Textarea.js +234 -0
  391. package/textarea/Textarea.stories.tsx +174 -0
  392. package/textarea/Textarea.test.js +406 -0
  393. package/textarea/types.d.ts +141 -0
  394. package/textarea/types.js +5 -0
  395. package/toggle-group/ToggleGroup.accessibility.test.js +107 -0
  396. package/toggle-group/ToggleGroup.d.ts +4 -0
  397. package/toggle-group/ToggleGroup.js +201 -0
  398. package/toggle-group/ToggleGroup.stories.tsx +218 -0
  399. package/toggle-group/ToggleGroup.test.js +137 -0
  400. package/toggle-group/types.d.ts +114 -0
  401. package/toggle-group/types.js +5 -0
  402. package/typography/Typography.accessibility.test.js +339 -0
  403. package/typography/Typography.d.ts +4 -0
  404. package/typography/Typography.js +23 -0
  405. package/typography/Typography.stories.tsx +198 -0
  406. package/typography/types.d.ts +18 -0
  407. package/typography/types.js +5 -0
  408. package/useTheme.d.ts +1148 -0
  409. package/{dist/useTheme.js → useTheme.js} +4 -11
  410. package/useTranslatedLabels.d.ts +85 -0
  411. package/useTranslatedLabels.js +14 -0
  412. package/utils/BaseTypography.d.ts +21 -0
  413. package/utils/BaseTypography.js +94 -0
  414. package/utils/FocusLock.d.ts +13 -0
  415. package/utils/FocusLock.js +124 -0
  416. package/wizard/Wizard.accessibility.test.js +55 -0
  417. package/wizard/Wizard.d.ts +4 -0
  418. package/wizard/Wizard.js +250 -0
  419. package/wizard/Wizard.stories.tsx +253 -0
  420. package/wizard/Wizard.test.js +114 -0
  421. package/wizard/types.d.ts +64 -0
  422. package/wizard/types.js +5 -0
  423. package/babel.config.js +0 -8
  424. package/dist/BackgroundColorContext.js +0 -46
  425. package/dist/ThemeContext.js +0 -250
  426. package/dist/V3Select/V3Select.js +0 -549
  427. package/dist/V3Select/index.d.ts +0 -27
  428. package/dist/V3Textarea/V3Textarea.js +0 -264
  429. package/dist/V3Textarea/index.d.ts +0 -27
  430. package/dist/accordion/Accordion.js +0 -353
  431. package/dist/accordion/index.d.ts +0 -28
  432. package/dist/accordion-group/AccordionGroup.js +0 -186
  433. package/dist/accordion-group/index.d.ts +0 -16
  434. package/dist/alert/Alert.js +0 -403
  435. package/dist/alert/index.d.ts +0 -51
  436. package/dist/badge/Badge.js +0 -63
  437. package/dist/box/Box.js +0 -156
  438. package/dist/box/index.d.ts +0 -25
  439. package/dist/button/Button.js +0 -238
  440. package/dist/button/index.d.ts +0 -24
  441. package/dist/card/Card.js +0 -254
  442. package/dist/card/index.d.ts +0 -22
  443. package/dist/checkbox/Checkbox.js +0 -299
  444. package/dist/checkbox/index.d.ts +0 -24
  445. package/dist/chip/Chip.js +0 -265
  446. package/dist/chip/index.d.ts +0 -22
  447. package/dist/common/OpenSans.css +0 -81
  448. package/dist/common/RequiredComponent.js +0 -40
  449. package/dist/common/fonts/OpenSans-Bold.ttf +0 -0
  450. package/dist/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  451. package/dist/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  452. package/dist/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  453. package/dist/common/fonts/OpenSans-Italic.ttf +0 -0
  454. package/dist/common/fonts/OpenSans-Light.ttf +0 -0
  455. package/dist/common/fonts/OpenSans-LightItalic.ttf +0 -0
  456. package/dist/common/fonts/OpenSans-Regular.ttf +0 -0
  457. package/dist/common/fonts/OpenSans-SemiBold.ttf +0 -0
  458. package/dist/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  459. package/dist/common/variables.js +0 -1574
  460. package/dist/date/Date.js +0 -379
  461. package/dist/date/index.d.ts +0 -27
  462. package/dist/date-input/DateInput.js +0 -400
  463. package/dist/date-input/index.d.ts +0 -95
  464. package/dist/dialog/Dialog.js +0 -218
  465. package/dist/dialog/index.d.ts +0 -18
  466. package/dist/dropdown/Dropdown.js +0 -544
  467. package/dist/dropdown/index.d.ts +0 -26
  468. package/dist/file-input/FileInput.js +0 -644
  469. package/dist/file-input/FileItem.js +0 -287
  470. package/dist/file-input/index.d.ts +0 -81
  471. package/dist/footer/Footer.js +0 -421
  472. package/dist/footer/Icons.js +0 -77
  473. package/dist/footer/index.d.ts +0 -25
  474. package/dist/header/Header.js +0 -470
  475. package/dist/header/index.d.ts +0 -25
  476. package/dist/heading/index.d.ts +0 -17
  477. package/dist/input-text/Icons.js +0 -22
  478. package/dist/input-text/InputText.js +0 -705
  479. package/dist/input-text/index.d.ts +0 -36
  480. package/dist/layout/ApplicationLayout.js +0 -327
  481. package/dist/layout/Icons.js +0 -55
  482. package/dist/link/Link.js +0 -237
  483. package/dist/link/index.d.ts +0 -23
  484. package/dist/main.d.ts +0 -40
  485. package/dist/number-input/NumberInput.js +0 -136
  486. package/dist/number-input/NumberInputContext.js +0 -16
  487. package/dist/number-input/index.d.ts +0 -113
  488. package/dist/paginator/Icons.js +0 -66
  489. package/dist/paginator/Paginator.js +0 -283
  490. package/dist/paginator/index.d.ts +0 -20
  491. package/dist/password-input/PasswordInput.js +0 -203
  492. package/dist/password-input/index.d.ts +0 -94
  493. package/dist/progress-bar/ProgressBar.js +0 -242
  494. package/dist/progress-bar/index.d.ts +0 -18
  495. package/dist/radio/Radio.js +0 -209
  496. package/dist/radio/index.d.ts +0 -23
  497. package/dist/resultsetTable/ResultsetTable.js +0 -358
  498. package/dist/resultsetTable/index.d.ts +0 -19
  499. package/dist/select/Select.js +0 -1069
  500. package/dist/select/index.d.ts +0 -53
  501. package/dist/sidenav/Sidenav.js +0 -179
  502. package/dist/sidenav/index.d.ts +0 -13
  503. package/dist/slider/Slider.js +0 -404
  504. package/dist/slider/index.d.ts +0 -29
  505. package/dist/spinner/Spinner.js +0 -381
  506. package/dist/spinner/index.d.ts +0 -17
  507. package/dist/switch/Switch.js +0 -222
  508. package/dist/switch/index.d.ts +0 -24
  509. package/dist/table/Table.js +0 -132
  510. package/dist/table/index.d.ts +0 -13
  511. package/dist/tabs/Tabs.js +0 -343
  512. package/dist/tabs/index.d.ts +0 -19
  513. package/dist/tag/Tag.js +0 -282
  514. package/dist/tag/index.d.ts +0 -24
  515. package/dist/text-input/TextInput.js +0 -974
  516. package/dist/text-input/index.d.ts +0 -135
  517. package/dist/textarea/Textarea.js +0 -369
  518. package/dist/textarea/index.d.ts +0 -117
  519. package/dist/toggle/Toggle.js +0 -220
  520. package/dist/toggle/index.d.ts +0 -21
  521. package/dist/toggle-group/ToggleGroup.js +0 -327
  522. package/dist/toggle-group/index.d.ts +0 -21
  523. package/dist/upload/Upload.js +0 -205
  524. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -135
  525. package/dist/upload/buttons-upload/Icons.js +0 -40
  526. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  527. package/dist/upload/dragAndDropArea/Icons.js +0 -39
  528. package/dist/upload/file-upload/FileToUpload.js +0 -189
  529. package/dist/upload/file-upload/Icons.js +0 -66
  530. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  531. package/dist/upload/index.d.ts +0 -15
  532. package/dist/upload/transaction/Icons.js +0 -160
  533. package/dist/upload/transaction/Transaction.js +0 -148
  534. package/dist/upload/transactions/Transactions.js +0 -138
  535. package/dist/wizard/Icons.js +0 -65
  536. package/dist/wizard/Wizard.js +0 -405
  537. package/dist/wizard/index.d.ts +0 -18
  538. package/test/Accordion.test.js +0 -33
  539. package/test/AccordionGroup.test.js +0 -125
  540. package/test/Alert.test.js +0 -53
  541. package/test/Box.test.js +0 -10
  542. package/test/Button.test.js +0 -18
  543. package/test/Card.test.js +0 -30
  544. package/test/Checkbox.test.js +0 -45
  545. package/test/Chip.test.js +0 -25
  546. package/test/Date.test.js +0 -395
  547. package/test/DateInput.test.js +0 -242
  548. package/test/Dialog.test.js +0 -23
  549. package/test/Dropdown.test.js +0 -145
  550. package/test/FileInput.test.js +0 -201
  551. package/test/Footer.test.js +0 -94
  552. package/test/Header.test.js +0 -34
  553. package/test/Heading.test.js +0 -83
  554. package/test/InputText.test.js +0 -248
  555. package/test/Link.test.js +0 -43
  556. package/test/NumberInput.test.js +0 -259
  557. package/test/Paginator.test.js +0 -177
  558. package/test/PasswordInput.test.js +0 -83
  559. package/test/ProgressBar.test.js +0 -35
  560. package/test/Radio.test.js +0 -37
  561. package/test/ResultsetTable.test.js +0 -329
  562. package/test/Sidenav.test.js +0 -45
  563. package/test/Slider.test.js +0 -74
  564. package/test/Spinner.test.js +0 -32
  565. package/test/Switch.test.js +0 -45
  566. package/test/Table.test.js +0 -36
  567. package/test/Tabs.test.js +0 -109
  568. package/test/Tag.test.js +0 -32
  569. package/test/TextInput.test.js +0 -732
  570. package/test/Textarea.test.js +0 -193
  571. package/test/ToggleGroup.test.js +0 -85
  572. package/test/Upload.test.js +0 -60
  573. package/test/V3Select.test.js +0 -212
  574. package/test/V3TextArea.test.js +0 -51
  575. package/test/Wizard.test.js +0 -130
  576. package/test/mocks/pngMock.js +0 -1
  577. package/test/mocks/svgMock.js +0 -1
@@ -0,0 +1,96 @@
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 _jestAxe = require("jest-axe");
9
+ var _Spinner = _interopRequireDefault(require("./Spinner.tsx"));
10
+ var _Flex = _interopRequireDefault(require("../flex/Flex.tsx"));
11
+ describe("Spinner component accessibility tests", function () {
12
+ it("Should not have basic accessibility issues for overlay mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
13
+ var _render, container, results;
14
+ return _regenerator["default"].wrap(function _callee$(_context) {
15
+ while (1) switch (_context.prev = _context.next) {
16
+ case 0:
17
+ _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Flex["default"], null, /*#__PURE__*/_react["default"].createElement(_Spinner["default"], {
18
+ label: "test-loading",
19
+ margin: "medium",
20
+ mode: "overlay",
21
+ value: 50,
22
+ showValue: true
23
+ }), /*#__PURE__*/_react["default"].createElement(_Spinner["default"], {
24
+ label: "test-loading",
25
+ margin: "medium",
26
+ mode: "overlay",
27
+ value: 50
28
+ }))), container = _render.container;
29
+ _context.next = 3;
30
+ return (0, _jestAxe.axe)(container);
31
+ case 3:
32
+ results = _context.sent;
33
+ expect(results).toHaveNoViolations();
34
+ case 5:
35
+ case "end":
36
+ return _context.stop();
37
+ }
38
+ }, _callee);
39
+ })));
40
+ it("Should not have basic accessibility issues for large mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
41
+ var _render2, container, results;
42
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
43
+ while (1) switch (_context2.prev = _context2.next) {
44
+ case 0:
45
+ _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Flex["default"], null, /*#__PURE__*/_react["default"].createElement(_Spinner["default"], {
46
+ label: "test-loading",
47
+ margin: "medium",
48
+ mode: "large",
49
+ value: 50,
50
+ showValue: true
51
+ }), /*#__PURE__*/_react["default"].createElement(_Spinner["default"], {
52
+ label: "test-loading",
53
+ margin: "medium",
54
+ mode: "large",
55
+ value: 50
56
+ }))), container = _render2.container;
57
+ _context2.next = 3;
58
+ return (0, _jestAxe.axe)(container);
59
+ case 3:
60
+ results = _context2.sent;
61
+ expect(results).toHaveNoViolations();
62
+ case 5:
63
+ case "end":
64
+ return _context2.stop();
65
+ }
66
+ }, _callee2);
67
+ })));
68
+ it("Should not have basic accessibility issues for small mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
69
+ var _render3, container, results;
70
+ return _regenerator["default"].wrap(function _callee3$(_context3) {
71
+ while (1) switch (_context3.prev = _context3.next) {
72
+ case 0:
73
+ _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Flex["default"], null, /*#__PURE__*/_react["default"].createElement(_Spinner["default"], {
74
+ label: "test-loading",
75
+ margin: "medium",
76
+ mode: "small",
77
+ value: 50,
78
+ showValue: true
79
+ }), /*#__PURE__*/_react["default"].createElement(_Spinner["default"], {
80
+ label: "test-loading",
81
+ margin: "medium",
82
+ mode: "small",
83
+ value: 50
84
+ }))), container = _render3.container;
85
+ _context3.next = 3;
86
+ return (0, _jestAxe.axe)(container);
87
+ case 3:
88
+ results = _context3.sent;
89
+ expect(results).toHaveNoViolations();
90
+ case 5:
91
+ case "end":
92
+ return _context3.stop();
93
+ }
94
+ }, _callee3);
95
+ })));
96
+ });
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import SpinnerPropsType from "./types";
3
+ declare const DxcSpinner: ({ label, value, showValue, mode, margin, }: SpinnerPropsType) => JSX.Element;
4
+ export default DxcSpinner;
@@ -0,0 +1,206 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof3 = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
10
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
+ var _react = _interopRequireDefault(require("react"));
12
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
13
+ var _variables = require("../common/variables");
14
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
15
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12;
16
+ 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); }
17
+ 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; }
18
+ var DxcSpinner = function DxcSpinner(_ref) {
19
+ var _ref$label = _ref.label,
20
+ label = _ref$label === void 0 ? "" : _ref$label,
21
+ value = _ref.value,
22
+ _ref$showValue = _ref.showValue,
23
+ showValue = _ref$showValue === void 0 ? false : _ref$showValue,
24
+ _ref$mode = _ref.mode,
25
+ mode = _ref$mode === void 0 ? "large" : _ref$mode,
26
+ margin = _ref.margin;
27
+ var colorsTheme = (0, _useTheme["default"])();
28
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
29
+ theme: colorsTheme.spinner
30
+ }, /*#__PURE__*/_react["default"].createElement(DXCSpinner, {
31
+ margin: margin,
32
+ mode: mode
33
+ }, /*#__PURE__*/_react["default"].createElement(SpinnerContainer, {
34
+ mode: mode
35
+ }, mode === "overlay" && /*#__PURE__*/_react["default"].createElement(BackOverlay, null), /*#__PURE__*/_react["default"].createElement(BackgroundSpinner, null, mode !== "small" && /*#__PURE__*/_react["default"].createElement(SVGBackground, {
36
+ viewBox: "0 0 140 140"
37
+ }, /*#__PURE__*/_react["default"].createElement(CircleBackground, {
38
+ cx: "70",
39
+ cy: "70",
40
+ r: "65",
41
+ mode: mode
42
+ })), mode === "small" && /*#__PURE__*/_react["default"].createElement(SVGBackground, {
43
+ viewBox: "0 0 16 16"
44
+ }, /*#__PURE__*/_react["default"].createElement(CircleBackground, {
45
+ cx: "8",
46
+ cy: "8",
47
+ r: "6",
48
+ mode: mode
49
+ }))), value >= 0 && value <= 100 ? /*#__PURE__*/_react["default"].createElement(Spinner, {
50
+ role: "progressbar"
51
+ }, mode !== "small" && /*#__PURE__*/_react["default"].createElement(SVGSpinner, {
52
+ viewBox: "0 0 140 140",
53
+ isDeterminated: true
54
+ }, /*#__PURE__*/_react["default"].createElement(CircleSpinner, {
55
+ cx: "70",
56
+ cy: "70",
57
+ r: "65",
58
+ mode: mode,
59
+ isDeterminated: true,
60
+ value: value
61
+ })), mode === "small" && /*#__PURE__*/_react["default"].createElement(SVGSpinner, {
62
+ viewBox: "0 0 16 16",
63
+ isDeterminated: true
64
+ }, /*#__PURE__*/_react["default"].createElement(CircleSpinner, {
65
+ cx: "8",
66
+ cy: "8",
67
+ r: "6",
68
+ mode: mode,
69
+ isDeterminated: true,
70
+ value: value
71
+ }))) : /*#__PURE__*/_react["default"].createElement(Spinner, {
72
+ role: "progressbar"
73
+ }, mode !== "small" && /*#__PURE__*/_react["default"].createElement(SVGSpinner, {
74
+ viewBox: "0 0 140 140",
75
+ isDeterminated: false
76
+ }, /*#__PURE__*/_react["default"].createElement(CircleSpinner, {
77
+ cx: "70",
78
+ cy: "70",
79
+ r: "65",
80
+ mode: mode,
81
+ isDeterminated: false,
82
+ value: value
83
+ })), mode === "small" && /*#__PURE__*/_react["default"].createElement(SVGSpinner, {
84
+ viewBox: "0 0 16 16",
85
+ isDeterminated: false
86
+ }, /*#__PURE__*/_react["default"].createElement(CircleSpinner, {
87
+ cx: "8",
88
+ cy: "8",
89
+ r: "6",
90
+ mode: mode,
91
+ isDeterminated: false,
92
+ value: value
93
+ }))), mode !== "small" && /*#__PURE__*/_react["default"].createElement(LabelsContainer, null, /*#__PURE__*/_react["default"].createElement(SpinnerLabel, {
94
+ mode: mode
95
+ }, label), (value || value === 0) && showValue && /*#__PURE__*/_react["default"].createElement(SpinnerProgress, {
96
+ value: value,
97
+ mode: mode,
98
+ showValue: showValue
99
+ }, value, "%")))));
100
+ };
101
+ var determinateValue = function determinateValue(value, strokeDashArray) {
102
+ var val = 0;
103
+ if (value >= 0 && value <= 100) {
104
+ val = strokeDashArray * (1 - value / 100);
105
+ }
106
+ return val;
107
+ };
108
+ var DXCSpinner = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n height: ", ";\n width: ", ";\n display: ", ";\n position: ", ";\n top: ", ";\n left: ", ";\n justify-content: ", ";\n align-items: ", ";\n z-index: ", ";\n\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
109
+ return props.mode === "overlay" ? "100vh" : "";
110
+ }, function (props) {
111
+ return props.mode === "overlay" ? "100vw" : "";
112
+ }, function (props) {
113
+ return props.mode === "overlay" ? "flex" : "";
114
+ }, function (props) {
115
+ return props.mode === "overlay" ? "fixed" : "";
116
+ }, function (props) {
117
+ return props.mode === "overlay" ? 0 : "";
118
+ }, function (props) {
119
+ return props.mode === "overlay" ? 0 : "";
120
+ }, function (props) {
121
+ return props.mode === "overlay" ? "center" : "";
122
+ }, function (props) {
123
+ return props.mode === "overlay" ? "center" : "";
124
+ }, function (props) {
125
+ return props.mode === "overlay" ? 1300 : "";
126
+ }, function (props) {
127
+ return props.mode != "overlay" ? props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px" : "";
128
+ }, function (props) {
129
+ return props.mode != "overlay" ? props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "" : "";
130
+ }, function (props) {
131
+ return props.mode != "overlay" ? props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "" : "";
132
+ }, function (props) {
133
+ return props.mode != "overlay" ? props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "" : "";
134
+ }, function (props) {
135
+ return props.mode != "overlay" ? props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "" : "";
136
+ });
137
+ var SpinnerContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n align-items: center;\n display: flex;\n height: ", ";\n width: ", ";\n justify-content: center;\n position: relative;\n background-color: transparent;\n\n @keyframes spinner-svg {\n 0% {\n transform: rotateZ(0deg);\n }\n 100% {\n transform: rotateZ(360deg);\n }\n }\n @keyframes svg-circle-large {\n 0% {\n stroke-dashoffset: 400;\n transform: rotate(0);\n }\n\n 50% {\n stroke-dashoffset: 75;\n transform: rotate(45deg);\n }\n\n 100% {\n stroke-dashoffset: 400;\n transform: rotate(360deg);\n }\n }\n @keyframes svg-circle-small {\n 0% {\n stroke-dashoffset: 35;\n transform: rotate(0);\n }\n\n 50% {\n stroke-dashoffset: 8;\n transform: rotate(45deg);\n }\n\n 100% {\n stroke-dashoffset: 35;\n transform: rotate(360deg);\n }\n }\n"])), function (props) {
138
+ return props.mode === "small" ? "16px" : "140px";
139
+ }, function (props) {
140
+ return props.mode === "small" ? "16px" : "140px";
141
+ });
142
+ var BackOverlay = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n width: 100vw;\n height: 100vh;\n opacity: 1;\n transition: opacity 225ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;\n position: fixed;\n top: 0;\n left: 0;\n background-color: ", ";\n opacity: ", ";\n"])), function (props) {
143
+ return "".concat(props.theme.overlayBackgroundColor);
144
+ }, function (props) {
145
+ return "".concat(props.theme.overlayOpacity);
146
+ });
147
+ var BackgroundSpinner = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n height: inherit;\n width: inherit;\n position: absolute;\n"])));
148
+ var SVGBackground = _styledComponents["default"].svg(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n height: inherit;\n width: inherit;\n"])));
149
+ var CircleBackground = _styledComponents["default"].circle(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n animation: none;\n fill: transparent;\n stroke: ", ";\n stroke-dasharray: ", ";\n stroke-linecap: initial;\n stroke-width: ", ";\n transform-origin: 50% 50%;\n vector-effect: non-scaling-stroke;\n"])), function (props) {
150
+ return "".concat(props.theme.totalCircleColor);
151
+ }, function (props) {
152
+ return props.mode !== "small" ? "409" : "38";
153
+ }, function (props) {
154
+ return props.mode !== "small" ? "8.5px" : "2px";
155
+ });
156
+ var Spinner = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n height: inherit;\n width: inherit;\n position: relative;\n"])));
157
+ var SVGSpinner = _styledComponents["default"].svg(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n height: inherit;\n width: inherit;\n transform: rotate(-90deg);\n top: 0;\n left: 0;\n transform-origin: center;\n overflow: visible;\n animation: ", ";\n"])), function (props) {
158
+ return !props.isDeterminated ? "1.4s linear infinite both spinner-svg" : "";
159
+ });
160
+ var CircleSpinner = _styledComponents["default"].circle(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n fill: transparent;\n stroke-linecap: initial;\n vector-effect: non-scaling-stroke;\n animation: ", ";\n stroke: ", ";\n transform-origin: ", ";\n stroke-dasharray: ", ";\n stroke-width: ", ";\n stroke-dashoffset: ", ";\n"])), function (props) {
161
+ return props.isDeterminated ? "none" : props.mode !== "small" ? "1.4s ease-in-out infinite both svg-circle-large" : "1.4s ease-in-out infinite both svg-circle-small";
162
+ }, function (props) {
163
+ return props.mode === "overlay" ? props.theme.trackCircleColorOverlay : props.theme.trackCircleColor;
164
+ }, function (props) {
165
+ return !props.isDeterminated ? "50% 50%" : "";
166
+ }, function (props) {
167
+ return props.mode !== "small" ? "409" : "38";
168
+ }, function (props) {
169
+ return props.mode !== "small" ? "8.5px" : "2px";
170
+ }, function (props) {
171
+ return props.isDeterminated ? props.mode !== "small" ? determinateValue(props.value, 409) : determinateValue(props.value, 38) : "";
172
+ });
173
+ var LabelsContainer = _styledComponents["default"].div(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n display: block;\n margin: 0 auto;\n position: absolute;\n text-align: center;\n width: 110px;\n"])));
174
+ var SpinnerLabel = _styledComponents["default"].p(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n margin: 0;\n width: 100%;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n font-family: ", ";\n font-weight: ", ";\n font-size: ", ";\n font-style: ", ";\n color: ", ";\n text-align: ", ";\n letter-spacing: ", ";\n"])), function (props) {
175
+ return props.mode === "overlay" ? props.theme.overlayLabelFontFamily : props.theme.labelFontFamily;
176
+ }, function (props) {
177
+ return props.mode === "overlay" ? props.theme.overlayLabelFontWeight : props.theme.labelFontWeight;
178
+ }, function (props) {
179
+ return props.mode === "overlay" ? props.theme.overlayLabelFontSize : props.theme.labelFontSize;
180
+ }, function (props) {
181
+ return props.mode === "overlay" ? props.theme.overlayLabelFontStyle : props.theme.labelFontStyle;
182
+ }, function (props) {
183
+ return props.mode === "overlay" ? props.theme.overlayLabelFontColor : props.theme.labelFontColor;
184
+ }, function (props) {
185
+ return props.mode === "overlay" ? props.theme.overlayLabelTextAlign : props.theme.labelTextAlign;
186
+ }, function (props) {
187
+ return props.mode === "overlay" ? props.theme.overlayLabelLetterSpacing : props.theme.labelLetterSpacing;
188
+ });
189
+ var SpinnerProgress = _styledComponents["default"].p(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["\n margin: 0;\n width: 100%;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n display: ", ";\n font-family: ", ";\n font-weight: ", ";\n font-size: ", ";\n font-style: ", ";\n color: ", ";\n text-align: ", ";\n letter-spacing: ", ";\n"])), function (props) {
190
+ return props.value && props.showValue === true && "block" || "none";
191
+ }, function (props) {
192
+ return props.mode === "overlay" ? props.theme.overlayProgressValueFontFamily : props.theme.progressValueFontFamily;
193
+ }, function (props) {
194
+ return props.mode === "overlay" ? props.theme.overlayProgressValueFontWeight : props.theme.progressValueFontWeight;
195
+ }, function (props) {
196
+ return props.mode === "overlay" ? props.theme.overlayProgressValueFontSize : props.theme.progressValueFontSize;
197
+ }, function (props) {
198
+ return props.mode === "overlay" ? props.theme.overlayProgressValueFontStyle : props.theme.progressValueFontStyle;
199
+ }, function (props) {
200
+ return props.mode === "overlay" ? props.theme.overlayProgressValueFontColor : props.theme.progressValueFontColor;
201
+ }, function (props) {
202
+ return props.mode === "overlay" ? props.theme.overlayProgressValueTextAlign : props.theme.progressValueTextAlign;
203
+ }, function (props) {
204
+ return props.mode === "overlay" ? props.theme.overlayProgressValueLetterSpacing : props.theme.progressValueLetterSpacing;
205
+ });
206
+ var _default = exports["default"] = DxcSpinner;
@@ -0,0 +1,129 @@
1
+ import React from "react";
2
+ import DxcSpinner from "./Spinner";
3
+ import Title from "../../.storybook/components/Title";
4
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
5
+ import { HalstackProvider } from "../HalstackContext";
6
+
7
+ export default {
8
+ title: "Spinner",
9
+ component: DxcSpinner,
10
+ };
11
+
12
+ const opinionatedTheme = {
13
+ spinner: {
14
+ accentColor: "#5f249f",
15
+ baseColor: "#ffffff",
16
+ fontColor: "#000000",
17
+ overlayColor: "#a46ede",
18
+ overlayFontColor: "#ffffff",
19
+ },
20
+ };
21
+
22
+ export const Chromatic = () => (
23
+ <>
24
+ <ExampleContainer>
25
+ <Title title="With label" theme="light" level={4} />
26
+ <DxcSpinner label="Label" value={50}></DxcSpinner>
27
+ <Title title="With value label" theme="light" level={4} />
28
+ <DxcSpinner value={50} showValue></DxcSpinner>
29
+ <Title title="With label and value label" theme="light" level={4} />
30
+ <DxcSpinner label="Label" value={50} showValue></DxcSpinner>
31
+ <Title title="With 100%" theme="light" level={4} />
32
+ <DxcSpinner label="Label" value={100} showValue></DxcSpinner>
33
+ </ExampleContainer>
34
+ <Title title="Modes" theme="light" level={2} />
35
+ <ExampleContainer>
36
+ <Title title="Mode large" theme="light" level={4} />
37
+ <DxcSpinner mode="large" value={50}></DxcSpinner>
38
+ <Title title="Mode small" theme="light" level={4} />
39
+ <DxcSpinner mode="small" value={50}></DxcSpinner>
40
+ <Title title="Mode small with 100%" theme="light" level={4} />
41
+ <DxcSpinner mode="small" value={100} showValue></DxcSpinner>
42
+ </ExampleContainer>
43
+ <Title title="Margins with large mode" theme="light" level={2} />
44
+ <ExampleContainer>
45
+ <Title title="Xxsmall margin" theme="light" level={4} />
46
+ <DxcSpinner margin="xxsmall" value={75}></DxcSpinner>
47
+ <Title title="Xsmall margin" theme="light" level={4} />
48
+ <DxcSpinner margin="xsmall" value={75}></DxcSpinner>
49
+ <Title title="Small margin" theme="light" level={4} />
50
+ <DxcSpinner margin="small" value={75}></DxcSpinner>
51
+ <Title title="Medium margin" theme="light" level={4} />
52
+ <DxcSpinner margin="medium" value={75}></DxcSpinner>
53
+ <Title title="Large margin" theme="light" level={4} />
54
+ <DxcSpinner margin="large" value={75}></DxcSpinner>
55
+ <Title title="Xlarge margin" theme="light" level={4} />
56
+ <DxcSpinner margin="xlarge" value={75}></DxcSpinner>
57
+ <Title title="Xxlarge margin" theme="light" level={4} />
58
+ <DxcSpinner margin="xxlarge" value={75}></DxcSpinner>
59
+ </ExampleContainer>
60
+ <Title title="Margins with small mode" theme="light" level={2} />
61
+ <ExampleContainer>
62
+ <Title title="Xxsmall margin" theme="light" level={4} />
63
+ <DxcSpinner margin="xxsmall" mode="small" value={75}></DxcSpinner>
64
+ <Title title="Xsmall margin" theme="light" level={4} />
65
+ <DxcSpinner margin="xsmall" mode="small" value={75}></DxcSpinner>
66
+ <Title title="Small margin" theme="light" level={4} />
67
+ <DxcSpinner margin="small" mode="small" value={75}></DxcSpinner>
68
+ <Title title="Medium margin" theme="light" level={4} />
69
+ <DxcSpinner margin="medium" mode="small" value={75}></DxcSpinner>
70
+ <Title title="Large margin" theme="light" level={4} />
71
+ <DxcSpinner margin="large" mode="small" value={75}></DxcSpinner>
72
+ <Title title="Xlarge margin" theme="light" level={4} />
73
+ <DxcSpinner margin="xlarge" mode="small" value={75}></DxcSpinner>
74
+ <Title title="Xxlarge margin" theme="light" level={4} />
75
+ <DxcSpinner margin="xxlarge" mode="small" value={75}></DxcSpinner>
76
+ </ExampleContainer>
77
+ <Title title="Opinionated theme" theme="light" level={2} />
78
+ <ExampleContainer>
79
+ <Title title="With label and value label" theme="light" level={4} />
80
+ <HalstackProvider theme={opinionatedTheme}>
81
+ <DxcSpinner label="Label" value={50} showValue></DxcSpinner>
82
+ </HalstackProvider>
83
+ </ExampleContainer>
84
+ </>
85
+ );
86
+
87
+ export const SpinnerOverlay = () => (
88
+ <ExampleContainer>
89
+ <Title title="Mode overlay" theme="light" level={4} />
90
+ <DxcSpinner mode="overlay" value={25}></DxcSpinner>
91
+ </ExampleContainer>
92
+ );
93
+
94
+ export const SpinnerOverlayWith100 = () => (
95
+ <ExampleContainer>
96
+ <Title title="Mode overlay" theme="light" level={4} />
97
+ <DxcSpinner mode="overlay" value={100}></DxcSpinner>
98
+ </ExampleContainer>
99
+ );
100
+
101
+ export const SpinnerOverlayWithLabel = () => (
102
+ <ExampleContainer>
103
+ <Title title="Mode overlay" theme="light" level={4} />
104
+ <DxcSpinner mode="overlay" value={50} label="Label"></DxcSpinner>
105
+ </ExampleContainer>
106
+ );
107
+
108
+ export const SpinnerOverlayWithValue = () => (
109
+ <ExampleContainer>
110
+ <Title title="Mode overlay" theme="light" level={4} />
111
+ <DxcSpinner mode="overlay" value={50} showValue></DxcSpinner>
112
+ </ExampleContainer>
113
+ );
114
+
115
+ export const SpinnerOverlayWithValueAndLabel = () => (
116
+ <ExampleContainer>
117
+ <Title title="Mode overlay" theme="light" level={4} />
118
+ <DxcSpinner mode="overlay" label="Label" value={50} showValue></DxcSpinner>
119
+ </ExampleContainer>
120
+ );
121
+
122
+ export const SpinnerOverlayWithValueAndLabelOpinionated = () => (
123
+ <ExampleContainer>
124
+ <HalstackProvider theme={opinionatedTheme}>
125
+ <Title title="Mode overlay" theme="light" level={4} />
126
+ <DxcSpinner mode="overlay" label="Label" value={50} showValue></DxcSpinner>
127
+ </HalstackProvider>
128
+ </ExampleContainer>
129
+ );
@@ -0,0 +1,55 @@
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 _Spinner = _interopRequireDefault(require("./Spinner.tsx"));
7
+ describe("Spinner component tests", function () {
8
+ test("Spinner renders with correct label", function () {
9
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Spinner["default"], {
10
+ label: "test-loading"
11
+ })),
12
+ getByText = _render.getByText;
13
+ expect(getByText("test-loading")).toBeTruthy();
14
+ });
15
+ test("Spinner shows value correctly", function () {
16
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Spinner["default"], {
17
+ label: "test-loading",
18
+ value: 75,
19
+ showValue: true
20
+ })),
21
+ getByText = _render2.getByText;
22
+ expect(getByText("75%")).toBeTruthy();
23
+ });
24
+ test("Small spinner hides value and label correctly", function () {
25
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Spinner["default"], {
26
+ mode: "small",
27
+ label: "test-loading",
28
+ value: 75,
29
+ showValue: true
30
+ })),
31
+ queryByText = _render3.queryByText;
32
+ expect(queryByText("test-loading")).toBeFalsy();
33
+ expect(queryByText("75%")).toBeFalsy();
34
+ });
35
+ test("Overlay spinner shows value and label correctly", function () {
36
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Spinner["default"], {
37
+ mode: "overlay",
38
+ label: "test-loading",
39
+ value: 75,
40
+ showValue: true
41
+ })),
42
+ getByText = _render4.getByText;
43
+ expect(getByText("test-loading")).toBeTruthy();
44
+ expect(getByText("75%")).toBeTruthy();
45
+ });
46
+ test("Get spinner by role", function () {
47
+ var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Spinner["default"], {
48
+ label: "test-loading",
49
+ value: 75,
50
+ showValue: true
51
+ })),
52
+ getByRole = _render5.getByRole;
53
+ expect(getByRole("progressbar")).toBeTruthy();
54
+ });
55
+ });
@@ -0,0 +1,32 @@
1
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
+ type Margin = {
3
+ top?: Space;
4
+ bottom?: Space;
5
+ left?: Space;
6
+ right?: Space;
7
+ };
8
+ type Props = {
9
+ /**
10
+ * Text to be placed inside the spinner.
11
+ */
12
+ label?: string;
13
+ /**
14
+ * The value of the progress indicator. If it's received the
15
+ * component is determinate, otherwise is indeterminate.
16
+ */
17
+ value?: number;
18
+ /**
19
+ * If true, the value is displayed inside the spinner..
20
+ */
21
+ showValue?: boolean;
22
+ /**
23
+ * Available modes of the spinner.
24
+ */
25
+ mode?: "large" | "small" | "overlay";
26
+ /**
27
+ * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
28
+ * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
29
+ */
30
+ margin?: Space | Margin;
31
+ };
32
+ export default Props;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });