@dxc-technology/halstack-react 0.0.0-a4bef7b → 0.0.0-a5074e7

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 (359) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +1 -4
  3. package/HalstackContext.d.ts +12 -0
  4. package/HalstackContext.js +295 -0
  5. package/accordion/Accordion.d.ts +4 -0
  6. package/accordion/Accordion.js +126 -170
  7. package/accordion/Accordion.stories.tsx +306 -0
  8. package/accordion/Accordion.test.js +71 -0
  9. package/accordion/types.d.ts +69 -0
  10. package/accordion/types.js +5 -0
  11. package/accordion-group/AccordionGroup.d.ts +7 -0
  12. package/accordion-group/AccordionGroup.js +61 -96
  13. package/accordion-group/AccordionGroup.stories.tsx +251 -0
  14. package/accordion-group/AccordionGroup.test.js +126 -0
  15. package/accordion-group/types.d.ts +79 -0
  16. package/accordion-group/types.js +5 -0
  17. package/alert/Alert.d.ts +4 -0
  18. package/alert/Alert.js +8 -24
  19. package/alert/Alert.stories.tsx +170 -0
  20. package/alert/Alert.test.js +92 -0
  21. package/alert/types.d.ts +49 -0
  22. package/alert/types.js +5 -0
  23. package/badge/Badge.d.ts +4 -0
  24. package/badge/Badge.js +6 -4
  25. package/badge/types.d.ts +5 -0
  26. package/badge/types.js +5 -0
  27. package/bleed/Bleed.d.ts +3 -0
  28. package/bleed/Bleed.js +51 -0
  29. package/bleed/Bleed.stories.tsx +341 -0
  30. package/bleed/types.d.ts +37 -0
  31. package/bleed/types.js +5 -0
  32. package/box/Box.d.ts +4 -0
  33. package/box/Box.js +29 -65
  34. package/box/Box.stories.tsx +132 -0
  35. package/box/Box.test.js +18 -0
  36. package/box/types.d.ts +44 -0
  37. package/box/types.js +5 -0
  38. package/bulleted-list/BulletedList.d.ts +7 -0
  39. package/bulleted-list/BulletedList.js +123 -0
  40. package/bulleted-list/BulletedList.stories.tsx +200 -0
  41. package/bulleted-list/types.d.ts +11 -0
  42. package/bulleted-list/types.js +5 -0
  43. package/button/Button.d.ts +1 -1
  44. package/button/Button.js +61 -87
  45. package/button/Button.stories.tsx +275 -2
  46. package/button/Button.test.js +35 -0
  47. package/button/types.d.ts +38 -7
  48. package/card/Card.d.ts +4 -0
  49. package/card/Card.js +38 -77
  50. package/card/Card.stories.tsx +201 -0
  51. package/card/Card.test.js +50 -0
  52. package/card/ice-cream.jpg +0 -0
  53. package/card/types.d.ts +68 -0
  54. package/card/types.js +5 -0
  55. package/checkbox/Checkbox.d.ts +4 -0
  56. package/checkbox/Checkbox.js +106 -132
  57. package/checkbox/Checkbox.stories.tsx +208 -0
  58. package/checkbox/Checkbox.test.js +155 -0
  59. package/checkbox/types.d.ts +64 -0
  60. package/checkbox/types.js +5 -0
  61. package/chip/Chip.d.ts +4 -0
  62. package/chip/Chip.js +16 -76
  63. package/chip/Chip.stories.tsx +119 -0
  64. package/chip/Chip.test.js +56 -0
  65. package/chip/types.d.ts +45 -0
  66. package/chip/types.js +5 -0
  67. package/common/variables.js +321 -379
  68. package/date-input/DateInput.d.ts +4 -0
  69. package/date-input/DateInput.js +65 -89
  70. package/date-input/DateInput.stories.tsx +138 -0
  71. package/date-input/DateInput.test.js +479 -0
  72. package/date-input/types.d.ts +107 -0
  73. package/date-input/types.js +5 -0
  74. package/dialog/Dialog.d.ts +4 -0
  75. package/dialog/Dialog.js +52 -74
  76. package/dialog/Dialog.stories.tsx +267 -0
  77. package/dialog/Dialog.test.js +70 -0
  78. package/dialog/types.d.ts +44 -0
  79. package/dialog/types.js +5 -0
  80. package/dropdown/Dropdown.d.ts +4 -0
  81. package/dropdown/Dropdown.js +241 -303
  82. package/dropdown/Dropdown.stories.tsx +312 -0
  83. package/dropdown/Dropdown.test.js +590 -0
  84. package/dropdown/DropdownMenu.d.ts +4 -0
  85. package/dropdown/DropdownMenu.js +80 -0
  86. package/dropdown/DropdownMenuItem.d.ts +4 -0
  87. package/dropdown/DropdownMenuItem.js +92 -0
  88. package/dropdown/types.d.ts +100 -0
  89. package/dropdown/types.js +5 -0
  90. package/file-input/FileInput.d.ts +4 -0
  91. package/file-input/FileInput.js +191 -152
  92. package/file-input/FileInput.stories.tsx +539 -0
  93. package/file-input/FileInput.test.js +498 -0
  94. package/file-input/FileItem.d.ts +14 -0
  95. package/file-input/FileItem.js +36 -55
  96. package/file-input/types.d.ts +112 -0
  97. package/file-input/types.js +5 -0
  98. package/flex/Flex.d.ts +4 -0
  99. package/flex/Flex.js +69 -0
  100. package/flex/Flex.stories.tsx +103 -0
  101. package/flex/types.d.ts +32 -0
  102. package/flex/types.js +5 -0
  103. package/footer/Footer.d.ts +4 -0
  104. package/footer/Footer.js +36 -148
  105. package/footer/Footer.stories.tsx +137 -0
  106. package/footer/Footer.test.js +109 -0
  107. package/footer/Icons.d.ts +2 -0
  108. package/footer/Icons.js +4 -4
  109. package/footer/types.d.ts +66 -0
  110. package/footer/types.js +5 -0
  111. package/header/Header.d.ts +7 -0
  112. package/header/Header.js +119 -140
  113. package/header/Header.stories.tsx +172 -0
  114. package/header/Header.test.js +79 -0
  115. package/header/Icons.d.ts +2 -0
  116. package/header/Icons.js +4 -29
  117. package/header/types.d.ts +48 -0
  118. package/header/types.js +5 -0
  119. package/heading/Heading.d.ts +4 -0
  120. package/heading/Heading.js +7 -24
  121. package/heading/Heading.stories.tsx +54 -0
  122. package/heading/Heading.test.js +186 -0
  123. package/heading/types.d.ts +33 -0
  124. package/heading/types.js +5 -0
  125. package/inset/Inset.d.ts +3 -0
  126. package/inset/Inset.js +51 -0
  127. package/inset/Inset.stories.tsx +229 -0
  128. package/inset/types.d.ts +37 -0
  129. package/inset/types.js +5 -0
  130. package/layout/ApplicationLayout.d.ts +20 -0
  131. package/layout/ApplicationLayout.js +71 -135
  132. package/layout/ApplicationLayout.stories.tsx +162 -0
  133. package/layout/Icons.d.ts +5 -0
  134. package/layout/Icons.js +13 -2
  135. package/layout/SidenavContext.d.ts +5 -0
  136. package/layout/SidenavContext.js +19 -0
  137. package/layout/types.d.ts +42 -0
  138. package/layout/types.js +5 -0
  139. package/link/Link.d.ts +4 -0
  140. package/link/Link.js +60 -107
  141. package/link/Link.stories.tsx +193 -0
  142. package/link/Link.test.js +83 -0
  143. package/link/types.d.ts +54 -0
  144. package/link/types.js +5 -0
  145. package/main.d.ts +12 -12
  146. package/main.js +64 -58
  147. package/number-input/NumberInput.d.ts +4 -0
  148. package/number-input/NumberInput.js +16 -68
  149. package/number-input/NumberInput.stories.tsx +115 -0
  150. package/number-input/NumberInput.test.js +543 -0
  151. package/number-input/NumberInputContext.d.ts +4 -0
  152. package/number-input/NumberInputContext.js +5 -2
  153. package/number-input/numberInputContextTypes.d.ts +19 -0
  154. package/number-input/numberInputContextTypes.js +5 -0
  155. package/number-input/types.d.ts +124 -0
  156. package/number-input/types.js +5 -0
  157. package/package.json +20 -14
  158. package/paginator/Paginator.d.ts +4 -0
  159. package/paginator/Paginator.js +19 -69
  160. package/paginator/Paginator.stories.tsx +63 -0
  161. package/paginator/Paginator.test.js +308 -0
  162. package/paginator/types.d.ts +38 -0
  163. package/paginator/types.js +5 -0
  164. package/paragraph/Paragraph.d.ts +6 -0
  165. package/paragraph/Paragraph.js +38 -0
  166. package/paragraph/Paragraph.stories.tsx +44 -0
  167. package/password-input/PasswordInput.d.ts +4 -0
  168. package/password-input/PasswordInput.js +24 -57
  169. package/password-input/PasswordInput.stories.tsx +131 -0
  170. package/password-input/PasswordInput.test.js +181 -0
  171. package/password-input/types.d.ts +110 -0
  172. package/password-input/types.js +5 -0
  173. package/progress-bar/ProgressBar.d.ts +4 -0
  174. package/progress-bar/ProgressBar.js +60 -72
  175. package/progress-bar/ProgressBar.stories.jsx +60 -0
  176. package/progress-bar/ProgressBar.test.js +110 -0
  177. package/progress-bar/types.d.ts +36 -0
  178. package/progress-bar/types.js +5 -0
  179. package/quick-nav/QuickNav.d.ts +4 -0
  180. package/quick-nav/QuickNav.js +117 -0
  181. package/quick-nav/QuickNav.stories.tsx +342 -0
  182. package/quick-nav/types.d.ts +21 -0
  183. package/quick-nav/types.js +5 -0
  184. package/radio-group/Radio.d.ts +4 -0
  185. package/radio-group/Radio.js +156 -0
  186. package/radio-group/RadioGroup.d.ts +4 -0
  187. package/radio-group/RadioGroup.js +283 -0
  188. package/radio-group/RadioGroup.stories.tsx +101 -0
  189. package/radio-group/RadioGroup.test.js +722 -0
  190. package/radio-group/types.d.ts +114 -0
  191. package/radio-group/types.js +5 -0
  192. package/resultsetTable/ResultsetTable.d.ts +4 -0
  193. package/resultsetTable/ResultsetTable.js +10 -32
  194. package/resultsetTable/ResultsetTable.stories.tsx +275 -0
  195. package/resultsetTable/ResultsetTable.test.js +348 -0
  196. package/resultsetTable/types.d.ts +67 -0
  197. package/resultsetTable/types.js +5 -0
  198. package/select/Icons.d.ts +10 -0
  199. package/select/Icons.js +93 -0
  200. package/select/Listbox.d.ts +4 -0
  201. package/select/Listbox.js +198 -0
  202. package/select/Option.d.ts +4 -0
  203. package/select/Option.js +110 -0
  204. package/select/Select.d.ts +4 -0
  205. package/select/Select.js +216 -435
  206. package/select/Select.stories.tsx +627 -0
  207. package/select/Select.test.js +2233 -0
  208. package/select/types.d.ts +210 -0
  209. package/select/types.js +5 -0
  210. package/sidenav/Sidenav.d.ts +10 -0
  211. package/sidenav/Sidenav.js +186 -63
  212. package/sidenav/Sidenav.stories.tsx +180 -0
  213. package/sidenav/Sidenav.test.js +44 -0
  214. package/sidenav/types.d.ts +73 -0
  215. package/sidenav/types.js +5 -0
  216. package/slider/Slider.d.ts +4 -0
  217. package/slider/Slider.js +155 -153
  218. package/slider/Slider.stories.tsx +183 -0
  219. package/slider/Slider.test.js +250 -0
  220. package/slider/types.d.ts +82 -0
  221. package/slider/types.js +5 -0
  222. package/spinner/Spinner.d.ts +4 -0
  223. package/spinner/Spinner.js +9 -26
  224. package/spinner/Spinner.stories.jsx +103 -0
  225. package/spinner/Spinner.test.js +64 -0
  226. package/spinner/types.d.ts +32 -0
  227. package/spinner/types.js +5 -0
  228. package/switch/Switch.d.ts +4 -0
  229. package/switch/Switch.js +152 -99
  230. package/switch/Switch.stories.tsx +138 -0
  231. package/switch/Switch.test.js +225 -0
  232. package/switch/types.d.ts +61 -0
  233. package/switch/types.js +5 -0
  234. package/table/Table.d.ts +4 -0
  235. package/table/Table.js +4 -4
  236. package/table/Table.stories.jsx +277 -0
  237. package/table/Table.test.js +26 -0
  238. package/table/types.d.ts +21 -0
  239. package/table/types.js +5 -0
  240. package/tabs/Tab.d.ts +4 -0
  241. package/tabs/Tab.js +135 -0
  242. package/tabs/Tabs.d.ts +4 -0
  243. package/tabs/Tabs.js +364 -156
  244. package/tabs/Tabs.stories.tsx +186 -0
  245. package/tabs/Tabs.test.js +351 -0
  246. package/tabs/types.d.ts +92 -0
  247. package/tabs/types.js +5 -0
  248. package/tabs-nav/NavTabs.d.ts +8 -0
  249. package/tabs-nav/NavTabs.js +125 -0
  250. package/tabs-nav/NavTabs.stories.tsx +170 -0
  251. package/tabs-nav/NavTabs.test.js +82 -0
  252. package/tabs-nav/Tab.d.ts +4 -0
  253. package/tabs-nav/Tab.js +130 -0
  254. package/tabs-nav/types.d.ts +53 -0
  255. package/tabs-nav/types.js +5 -0
  256. package/tag/Tag.d.ts +4 -0
  257. package/tag/Tag.js +35 -60
  258. package/tag/Tag.stories.tsx +142 -0
  259. package/tag/Tag.test.js +60 -0
  260. package/tag/types.d.ts +69 -0
  261. package/tag/types.js +5 -0
  262. package/text-input/Icons.d.ts +8 -0
  263. package/text-input/Icons.js +60 -0
  264. package/text-input/Suggestion.d.ts +4 -0
  265. package/text-input/Suggestion.js +57 -0
  266. package/text-input/Suggestions.d.ts +4 -0
  267. package/text-input/Suggestions.js +134 -0
  268. package/text-input/TextInput.d.ts +4 -0
  269. package/text-input/TextInput.js +251 -392
  270. package/text-input/TextInput.stories.tsx +481 -0
  271. package/text-input/TextInput.test.js +1771 -0
  272. package/text-input/types.d.ts +197 -0
  273. package/text-input/types.js +5 -0
  274. package/textarea/Textarea.d.ts +4 -0
  275. package/textarea/Textarea.js +39 -77
  276. package/textarea/Textarea.stories.jsx +157 -0
  277. package/textarea/Textarea.test.js +437 -0
  278. package/textarea/types.d.ts +137 -0
  279. package/textarea/types.js +5 -0
  280. package/toggle-group/ToggleGroup.d.ts +4 -0
  281. package/toggle-group/ToggleGroup.js +18 -46
  282. package/toggle-group/ToggleGroup.stories.tsx +173 -0
  283. package/toggle-group/ToggleGroup.test.js +156 -0
  284. package/toggle-group/types.d.ts +105 -0
  285. package/toggle-group/types.js +5 -0
  286. package/typography/Typography.d.ts +4 -0
  287. package/typography/Typography.js +131 -0
  288. package/typography/Typography.stories.tsx +198 -0
  289. package/typography/types.d.ts +18 -0
  290. package/typography/types.js +5 -0
  291. package/useTheme.d.ts +2 -0
  292. package/useTheme.js +2 -2
  293. package/useTranslatedLabels.d.ts +2 -0
  294. package/useTranslatedLabels.js +20 -0
  295. package/wizard/Wizard.d.ts +4 -0
  296. package/wizard/Wizard.js +118 -104
  297. package/wizard/Wizard.stories.tsx +233 -0
  298. package/wizard/Wizard.test.js +141 -0
  299. package/wizard/types.d.ts +65 -0
  300. package/wizard/types.js +5 -0
  301. package/ThemeContext.js +0 -246
  302. package/V3Select/V3Select.js +0 -455
  303. package/V3Select/index.d.ts +0 -27
  304. package/V3Textarea/V3Textarea.js +0 -260
  305. package/V3Textarea/index.d.ts +0 -27
  306. package/accordion/index.d.ts +0 -28
  307. package/accordion-group/index.d.ts +0 -16
  308. package/alert/index.d.ts +0 -51
  309. package/box/index.d.ts +0 -25
  310. package/card/index.d.ts +0 -22
  311. package/checkbox/index.d.ts +0 -24
  312. package/chip/index.d.ts +0 -22
  313. package/date/Date.js +0 -373
  314. package/date/index.d.ts +0 -27
  315. package/date-input/index.d.ts +0 -95
  316. package/dialog/index.d.ts +0 -18
  317. package/dropdown/index.d.ts +0 -26
  318. package/file-input/index.d.ts +0 -81
  319. package/footer/index.d.ts +0 -25
  320. package/header/index.d.ts +0 -25
  321. package/heading/index.d.ts +0 -17
  322. package/input-text/Icons.js +0 -22
  323. package/input-text/InputText.js +0 -611
  324. package/input-text/index.d.ts +0 -36
  325. package/link/index.d.ts +0 -23
  326. package/number-input/index.d.ts +0 -113
  327. package/paginator/index.d.ts +0 -20
  328. package/password-input/index.d.ts +0 -94
  329. package/progress-bar/index.d.ts +0 -18
  330. package/radio/Radio.js +0 -195
  331. package/radio/index.d.ts +0 -23
  332. package/resultsetTable/index.d.ts +0 -19
  333. package/select/index.d.ts +0 -131
  334. package/sidenav/index.d.ts +0 -13
  335. package/slider/index.d.ts +0 -29
  336. package/spinner/index.d.ts +0 -17
  337. package/switch/index.d.ts +0 -24
  338. package/table/index.d.ts +0 -13
  339. package/tabs/index.d.ts +0 -19
  340. package/tag/index.d.ts +0 -24
  341. package/text-input/index.d.ts +0 -135
  342. package/textarea/index.d.ts +0 -117
  343. package/toggle/Toggle.js +0 -186
  344. package/toggle/index.d.ts +0 -21
  345. package/toggle-group/index.d.ts +0 -21
  346. package/upload/Upload.js +0 -201
  347. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  348. package/upload/buttons-upload/Icons.js +0 -40
  349. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  350. package/upload/dragAndDropArea/Icons.js +0 -39
  351. package/upload/file-upload/FileToUpload.js +0 -115
  352. package/upload/file-upload/Icons.js +0 -66
  353. package/upload/files-upload/FilesToUpload.js +0 -109
  354. package/upload/index.d.ts +0 -15
  355. package/upload/transaction/Icons.js +0 -160
  356. package/upload/transaction/Transaction.js +0 -104
  357. package/upload/transactions/Transactions.js +0 -94
  358. package/wizard/Icons.js +0 -65
  359. package/wizard/index.d.ts +0 -18
@@ -0,0 +1,539 @@
1
+ import React from "react";
2
+ import DxcFileInput from "./FileInput";
3
+ import Title from "../../.storybook/components/Title";
4
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
5
+ import FileItem from "./FileItem";
6
+
7
+ export default {
8
+ title: "File input",
9
+ component: DxcFileInput,
10
+ };
11
+
12
+ const picPreview =
13
+ "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAABmJLR0QA/wD/AP+gvaeTAAAEDklEQVRogdXaXaxcUxQH8J/etloajVT1I9qgCbdIUB8PXPeKBJHgsV5ExAuVivBUgtSDxgNBVMVHxEeRUhIhkpJ40BYhoTShaQglQtA2VR+ttjMe1j45c6cztzNnzszc+09Ocs/Za+39/++zzt5rr7l0D1diA35P14b0bMJgAE+g2uR6FpP7xq4NZCL2YjlOSNdt6VkVj/eNXYu4VhD9G+c3aL8gtVWS7bjEsfhRCFk2ht2yZPNT8hl3WCUIfoZJY9gdhY+T7QM94NUWFmEfDuHCFuyXJNv9OL2LvNrGO2KGn2rD55nks6ErjAog+8B3YXYbfrPwR/Lt+4d/NLYLMrcW8F+efL/DtBJ5tY17EpEvxEbYLgawJfVxXxObRZhbiF2LWCjfE4Y66OeS1Mc/OLnm+Uw8ggP4oYP+j4hHxUy+VEJfL6e+3hTL8/X4RZ7W/FvCGE1xOdZp7wNvhvny9CULtSo+1QMhZWImPpQL+A03YbouCpkqXn8ZqA+jg1iD41P7NF0QMiAy2N0ipDrFWUa/hU9wXp1N6UIuEktsNug3HfY3gD2pr4rYTxrlZ6UJmY3n0mBZ7JYhhDi3ZP1+i6sb2HQsZBJuEEfUqljjV+Ic5QkhzifZylTF+xisae9IyBIRr1nnb+PU1DaoXCHkk5blXfvxGGYoKGQWnhbpdZb/XFNn0w0hGebgBXm4fY/rtClkOn6Wz8j96Vk9uikkw5DRm2JLQrKV4hB2pr+niJznuPI5toRN4rx/u1jZiLfUMqZiBf4Ss7Bb7Bu1WW0v3kgt5mA17i7iPB8vymN1Cy5Obb0W0jFm4Fd5jFbEfjJsggl5UBDeiLvk4bZP/4RcJj76W1p1OE2sXAfFBkgcotYrL0UpghF5BfOkVhzeTQ5rGrRdIXbiVWWxaxNvCG6vHckwq4jsFPXa8YYF8gPYVc2MaisiN/eGVyGsEBy3C86H4d5k8LliFZFeYSq+FlwP218WiJWpIpbY8Y5heeXllNqGdcqriPQKrwrO67MHZwh1ezGvT6SKIKu8VLCYWGareKgPZEZECrS5oP/Dgvtq2Jpuzi6FWmuYh7XyfK5asJ9zk++X5EWARuePsjEZd9SM+afOhBwjz9TtSDeDY3mUgBH526/gFRHnnQhZLD9NejLdvG7sn8yKoj6MtuLSmvaiQibJ8781RNl+V3rwEZaKpGxKQeIZ6sNoD+5s0G87QqYkbksT1yydWpQZDMl/kS16bawb9AN5GK3VfGnvZMwd0qEv+w+ETTgTN4rEcRAninSgVdTP6oE2fFvFf6JIuA1v4XmRkXQVk+UFhGoacKXDJ6eTj72nmGt0DWCbONdkmDBCMgzjK6MrmAtNQCGUvyH2HfXhNmGFZBgRNYD3Ou3ofwlpcfptqgzTAAAAAElFTkSuQmCC";
14
+
15
+ const file1 = new File(["file1"], "file.pdf", { type: "text/plain" });
16
+ const file2 = new File(["file2"], "file2.mp3", {
17
+ type: "audio",
18
+ });
19
+ const file3 = new File(["file3"], "file3.png", {
20
+ type: "image/png",
21
+ });
22
+ const file4 = new File(["file4"], "file4file4file4file4file4file4file4file4file4.mp4", {
23
+ type: "video",
24
+ });
25
+ const file5 = new File(["file4"], "file5file5file5file5file5file5file5file5file5.mp4", {
26
+ type: "video",
27
+ });
28
+
29
+ const fileExample = [
30
+ {
31
+ file: file1,
32
+ },
33
+ ];
34
+
35
+ const fileExampleError = [
36
+ {
37
+ error: "Error message",
38
+ file: file1,
39
+ },
40
+ ];
41
+
42
+ const filesExamples = [
43
+ {
44
+ file: file1,
45
+ },
46
+ {
47
+ file: file2,
48
+ },
49
+ {
50
+ file: file3,
51
+ preview: picPreview,
52
+ },
53
+ {
54
+ file: file4,
55
+ },
56
+ {
57
+ error: "Error message error message error message error message",
58
+ file: file5,
59
+ },
60
+ {
61
+ error: "Error message",
62
+ file: file3,
63
+ preview: picPreview,
64
+ },
65
+ ];
66
+
67
+ export const Chromatic = () => (
68
+ <>
69
+ <Title title="File item states" theme="light" level={2} />
70
+ <ExampleContainer pseudoState="pseudo-hover">
71
+ <Title title="Hovered" theme="light" level={4} />
72
+ <FileItem
73
+ mode="dropzone"
74
+ multiple={true}
75
+ name="file"
76
+ showPreview={false}
77
+ numFiles={1}
78
+ preview={picPreview}
79
+ type="image/png"
80
+ onDelete={() => {}}
81
+ tabIndex={0}
82
+ />
83
+ </ExampleContainer>
84
+ <ExampleContainer pseudoState="pseudo-focus">
85
+ <Title title="Focused" theme="light" level={4} />
86
+ <FileItem
87
+ mode="dropzone"
88
+ multiple={true}
89
+ name="file"
90
+ showPreview={false}
91
+ numFiles={1}
92
+ preview={picPreview}
93
+ type="image/png"
94
+ onDelete={() => {}}
95
+ tabIndex={0}
96
+ />
97
+ </ExampleContainer>
98
+ <ExampleContainer pseudoState="pseudo-active">
99
+ <Title title="Actived" theme="light" level={4} />
100
+ <FileItem
101
+ mode="dropzone"
102
+ multiple={true}
103
+ name="file"
104
+ showPreview={false}
105
+ numFiles={1}
106
+ preview={picPreview}
107
+ type="image/png"
108
+ onDelete={() => {}}
109
+ tabIndex={0}
110
+ />
111
+ </ExampleContainer>
112
+ <Title title="File" theme="light" level={2} />
113
+ <ExampleContainer>
114
+ <Title title="Without label" theme="light" level={4} />
115
+ <DxcFileInput value={[]} callbackFile={() => {}} />
116
+ </ExampleContainer>
117
+ <ExampleContainer>
118
+ <Title title="With label" theme="light" level={4} />
119
+ <DxcFileInput label="File input" value={[]} callbackFile={() => {}} />
120
+ </ExampleContainer>
121
+ <ExampleContainer>
122
+ <Title title="With label and helper text" theme="light" level={4} />
123
+ <DxcFileInput label="File input" helperText="Please select files" value={[]} callbackFile={() => {}} />
124
+ </ExampleContainer>
125
+ <ExampleContainer>
126
+ <Title title="Single file" theme="light" level={4} />
127
+ <DxcFileInput
128
+ label="File input"
129
+ helperText="Please select files"
130
+ value={fileExample}
131
+ multiple={false}
132
+ callbackFile={() => {}}
133
+ />
134
+ </ExampleContainer>
135
+ <ExampleContainer>
136
+ <Title title="Invalid single file" theme="light" level={4} />
137
+ <DxcFileInput
138
+ label="File input"
139
+ helperText="Please select files"
140
+ value={fileExampleError}
141
+ multiple={false}
142
+ callbackFile={() => {}}
143
+ />
144
+ </ExampleContainer>
145
+ <ExampleContainer>
146
+ <Title title="Multiple files" theme="light" level={4} />
147
+ <DxcFileInput label="File input" helperText="Please select files" value={filesExamples} callbackFile={() => {}} />
148
+ </ExampleContainer>
149
+ <ExampleContainer>
150
+ <Title title="Show preview" theme="light" level={4} />
151
+ <DxcFileInput
152
+ label="File input"
153
+ helperText="Please select files"
154
+ value={filesExamples}
155
+ callbackFile={() => {}}
156
+ showPreview
157
+ />
158
+ </ExampleContainer>
159
+ <ExampleContainer>
160
+ <Title title="Disabled" theme="light" level={4} />
161
+ <DxcFileInput label="File input" helperText="Please select files" disabled value={[]} callbackFile={() => {}} />
162
+ </ExampleContainer>
163
+ <Title title="Margins" theme="light" level={3} />
164
+ <ExampleContainer>
165
+ <Title title="Xxsmall margin" theme="light" level={4} />
166
+ <DxcFileInput
167
+ label="File input"
168
+ helperText="Please select files"
169
+ value={fileExample}
170
+ callbackFile={() => {}}
171
+ margin="xxsmall"
172
+ />
173
+ </ExampleContainer>
174
+ <ExampleContainer>
175
+ <Title title="Xsmall margin" theme="light" level={4} />
176
+ <DxcFileInput
177
+ label="File input"
178
+ helperText="Please select files"
179
+ value={fileExample}
180
+ callbackFile={() => {}}
181
+ margin="xsmall"
182
+ />
183
+ </ExampleContainer>
184
+ <ExampleContainer>
185
+ <Title title="Small margin" theme="light" level={4} />
186
+ <DxcFileInput
187
+ label="File input"
188
+ helperText="Please select files"
189
+ value={fileExample}
190
+ callbackFile={() => {}}
191
+ margin="small"
192
+ />
193
+ </ExampleContainer>
194
+ <ExampleContainer>
195
+ <Title title="Medium margin" theme="light" level={4} />
196
+ <DxcFileInput
197
+ label="File input"
198
+ helperText="Please select files"
199
+ value={fileExample}
200
+ callbackFile={() => {}}
201
+ margin="medium"
202
+ />
203
+ </ExampleContainer>
204
+ <ExampleContainer>
205
+ <Title title="Large margin" theme="light" level={4} />
206
+ <DxcFileInput
207
+ label="File input"
208
+ helperText="Please select files"
209
+ value={fileExample}
210
+ callbackFile={() => {}}
211
+ margin="large"
212
+ />
213
+ </ExampleContainer>
214
+ <ExampleContainer>
215
+ <Title title="Xlarge margin" theme="light" level={4} />
216
+ <DxcFileInput
217
+ label="File input"
218
+ helperText="Please select files"
219
+ value={fileExample}
220
+ callbackFile={() => {}}
221
+ margin="xlarge"
222
+ />
223
+ </ExampleContainer>
224
+ <ExampleContainer>
225
+ <Title title="Xxlarge margin" theme="light" level={4} />
226
+ <DxcFileInput
227
+ label="File input"
228
+ helperText="Please select files"
229
+ value={fileExample}
230
+ callbackFile={() => {}}
231
+ margin="xxlarge"
232
+ />
233
+ </ExampleContainer>
234
+ <Title title="Filedrop" theme="light" level={2} />
235
+ <ExampleContainer>
236
+ <Title title="Without label" theme="light" level={4} />
237
+ <DxcFileInput mode="filedrop" value={[]} callbackFile={() => {}} />
238
+ </ExampleContainer>
239
+ <ExampleContainer>
240
+ <Title title="With label" theme="light" level={4} />
241
+ <DxcFileInput mode="filedrop" label="File input" value={[]} callbackFile={() => {}} />
242
+ </ExampleContainer>
243
+ <ExampleContainer>
244
+ <Title title="With label, helper text and ellipsis" theme="light" level={4} />
245
+ <DxcFileInput
246
+ mode="filedrop"
247
+ label="File input"
248
+ dropAreaLabel="or drop files or drop files or drop files or drop files or drop files"
249
+ helperText="Please select files"
250
+ value={[]}
251
+ callbackFile={() => {}}
252
+ />
253
+ </ExampleContainer>
254
+ <ExampleContainer>
255
+ <Title title="Single file" theme="light" level={4} />
256
+ <DxcFileInput
257
+ mode="filedrop"
258
+ label="File input"
259
+ helperText="Please select files"
260
+ value={fileExample}
261
+ multiple={false}
262
+ callbackFile={() => {}}
263
+ />
264
+ </ExampleContainer>
265
+ <ExampleContainer>
266
+ <Title title="Invalid single file" theme="light" level={4} />
267
+ <DxcFileInput
268
+ mode="filedrop"
269
+ label="File input"
270
+ helperText="Please select files"
271
+ value={fileExampleError}
272
+ multiple={false}
273
+ callbackFile={() => {}}
274
+ />
275
+ </ExampleContainer>
276
+ <ExampleContainer>
277
+ <Title title="Multiple files" theme="light" level={4} />
278
+ <DxcFileInput
279
+ mode="filedrop"
280
+ label="File input"
281
+ helperText="Please select files"
282
+ value={filesExamples}
283
+ callbackFile={() => {}}
284
+ />
285
+ </ExampleContainer>
286
+ <ExampleContainer>
287
+ <Title title="Show preview" theme="light" level={4} />
288
+ <DxcFileInput
289
+ mode="filedrop"
290
+ label="File input"
291
+ helperText="Please select files"
292
+ value={filesExamples}
293
+ callbackFile={() => {}}
294
+ showPreview
295
+ />
296
+ </ExampleContainer>
297
+ <ExampleContainer>
298
+ <Title title="Disabled" theme="light" level={4} />
299
+ <DxcFileInput
300
+ label="File input"
301
+ helperText="Please select files"
302
+ mode="filedrop"
303
+ disabled
304
+ value={[]}
305
+ callbackFile={() => {}}
306
+ />
307
+ </ExampleContainer>
308
+ <Title title="Margins" theme="light" level={3} />
309
+ <ExampleContainer>
310
+ <Title title="Xxsmall margin" theme="light" level={4} />
311
+ <DxcFileInput
312
+ label="File input"
313
+ helperText="Please select files"
314
+ value={fileExample}
315
+ callbackFile={() => {}}
316
+ mode="filedrop"
317
+ margin="xxsmall"
318
+ />
319
+ </ExampleContainer>
320
+ <ExampleContainer>
321
+ <Title title="Xsmall margin" theme="light" level={4} />
322
+ <DxcFileInput
323
+ label="File input"
324
+ helperText="Please select files"
325
+ value={fileExample}
326
+ callbackFile={() => {}}
327
+ mode="filedrop"
328
+ margin="xsmall"
329
+ />
330
+ </ExampleContainer>
331
+ <ExampleContainer>
332
+ <Title title="Small margin" theme="light" level={4} />
333
+ <DxcFileInput
334
+ label="File input"
335
+ helperText="Please select files"
336
+ value={fileExample}
337
+ callbackFile={() => {}}
338
+ mode="filedrop"
339
+ margin="small"
340
+ />
341
+ </ExampleContainer>
342
+ <ExampleContainer>
343
+ <Title title="Medium margin" theme="light" level={4} />
344
+ <DxcFileInput
345
+ label="File input"
346
+ helperText="Please select files"
347
+ value={fileExample}
348
+ callbackFile={() => {}}
349
+ mode="filedrop"
350
+ margin="medium"
351
+ />
352
+ </ExampleContainer>
353
+ <ExampleContainer>
354
+ <Title title="Large margin" theme="light" level={4} />
355
+ <DxcFileInput
356
+ label="File input"
357
+ helperText="Please select files"
358
+ value={fileExample}
359
+ callbackFile={() => {}}
360
+ mode="filedrop"
361
+ margin="large"
362
+ />
363
+ </ExampleContainer>
364
+ <ExampleContainer>
365
+ <Title title="Xlarge margin" theme="light" level={4} />
366
+ <DxcFileInput
367
+ label="File input"
368
+ helperText="Please select files"
369
+ value={fileExample}
370
+ callbackFile={() => {}}
371
+ margin="xlarge"
372
+ />
373
+ </ExampleContainer>
374
+ <ExampleContainer>
375
+ <Title title="Xxlarge margin" theme="light" level={4} />
376
+ <DxcFileInput
377
+ label="File input"
378
+ helperText="Please select files"
379
+ value={fileExample}
380
+ callbackFile={() => {}}
381
+ mode="filedrop"
382
+ margin="xxlarge"
383
+ />
384
+ </ExampleContainer>
385
+ <Title title="Dropzone" theme="light" level={2} />
386
+ <ExampleContainer>
387
+ <Title title="Without label" theme="light" level={4} />
388
+ <DxcFileInput mode="dropzone" value={[]} callbackFile={() => {}} />
389
+ </ExampleContainer>
390
+ <ExampleContainer>
391
+ <Title title="With label" theme="light" level={4} />
392
+ <DxcFileInput label="File input" mode="dropzone" value={[]} callbackFile={() => {}} />
393
+ </ExampleContainer>
394
+ <ExampleContainer>
395
+ <Title title="With label, helper text and ellipsis" theme="light" level={4} />
396
+ <DxcFileInput
397
+ label="File input"
398
+ helperText="Please select files"
399
+ mode="dropzone"
400
+ dropAreaLabel="or drop files or drop files or drop files or drop files or drop files or drop files or drop files or drop files or drop files or drop files or drop files or drop files or drop files or drop files"
401
+ value={[]}
402
+ callbackFile={() => {}}
403
+ />
404
+ </ExampleContainer>
405
+ <ExampleContainer>
406
+ <Title title="Single file" theme="light" level={4} />
407
+ <DxcFileInput
408
+ label="File input"
409
+ helperText="Please select files"
410
+ mode="dropzone"
411
+ value={fileExample}
412
+ callbackFile={() => {}}
413
+ multiple={false}
414
+ />
415
+ </ExampleContainer>
416
+ <ExampleContainer>
417
+ <Title title="Invalid single file" theme="light" level={4} />
418
+ <DxcFileInput
419
+ label="File input"
420
+ helperText="Please select files"
421
+ mode="dropzone"
422
+ value={fileExampleError}
423
+ callbackFile={() => {}}
424
+ multiple={false}
425
+ />
426
+ </ExampleContainer>
427
+ <ExampleContainer>
428
+ <Title title="Multiple files" theme="light" level={4} />
429
+ <DxcFileInput
430
+ mode="dropzone"
431
+ label="File input"
432
+ helperText="Please select files"
433
+ value={filesExamples}
434
+ callbackFile={() => {}}
435
+ />
436
+ </ExampleContainer>
437
+ <ExampleContainer>
438
+ <Title title="Show preview" theme="light" level={4} />
439
+ <DxcFileInput
440
+ mode="dropzone"
441
+ label="File input"
442
+ helperText="Please select files"
443
+ value={filesExamples}
444
+ callbackFile={() => {}}
445
+ showPreview
446
+ />
447
+ </ExampleContainer>
448
+ <ExampleContainer>
449
+ <Title title="Disabled" theme="light" level={4} />
450
+ <DxcFileInput
451
+ label="File input"
452
+ helperText="Please select files"
453
+ mode="dropzone"
454
+ disabled
455
+ value={[]}
456
+ callbackFile={() => {}}
457
+ />
458
+ </ExampleContainer>
459
+ <Title title="Margins" theme="light" level={3} />
460
+ <ExampleContainer>
461
+ <Title title="Xxsmall margin" theme="light" level={4} />
462
+ <DxcFileInput
463
+ label="File input"
464
+ helperText="Please select files"
465
+ value={fileExample}
466
+ callbackFile={() => {}}
467
+ mode="dropzone"
468
+ margin="xxsmall"
469
+ />
470
+ </ExampleContainer>
471
+ <ExampleContainer>
472
+ <Title title="Xsmall margin" theme="light" level={4} />
473
+ <DxcFileInput
474
+ label="File input"
475
+ helperText="Please select files"
476
+ value={fileExample}
477
+ callbackFile={() => {}}
478
+ mode="dropzone"
479
+ margin="xsmall"
480
+ />
481
+ </ExampleContainer>
482
+ <ExampleContainer>
483
+ <Title title="Small margin" theme="light" level={4} />
484
+ <DxcFileInput
485
+ label="File input"
486
+ helperText="Please select files"
487
+ value={fileExample}
488
+ callbackFile={() => {}}
489
+ mode="dropzone"
490
+ margin="small"
491
+ />
492
+ </ExampleContainer>
493
+ <ExampleContainer>
494
+ <Title title="Medium margin" theme="light" level={4} />
495
+ <DxcFileInput
496
+ label="File input"
497
+ helperText="Please select files"
498
+ value={fileExample}
499
+ callbackFile={() => {}}
500
+ mode="dropzone"
501
+ margin="medium"
502
+ />
503
+ </ExampleContainer>
504
+ <ExampleContainer>
505
+ <Title title="Large margin" theme="light" level={4} />
506
+ <DxcFileInput
507
+ label="File input"
508
+ helperText="Please select files"
509
+ value={fileExample}
510
+ callbackFile={() => {}}
511
+ mode="dropzone"
512
+ margin="large"
513
+ />
514
+ </ExampleContainer>
515
+ <ExampleContainer>
516
+ <Title title="Xlarge margin" theme="light" level={4} />
517
+ <DxcFileInput
518
+ label="File input"
519
+ helperText="Please select files"
520
+ value={fileExample}
521
+ callbackFile={() => {}}
522
+ mode="dropzone"
523
+ margin="xlarge"
524
+ />
525
+ </ExampleContainer>
526
+ <ExampleContainer>
527
+ <Title title="Xxlarge margin" theme="light" level={4} />
528
+ <DxcFileInput
529
+ label="File input"
530
+ helperText="Please select files"
531
+ value={fileExample}
532
+ callbackFile={() => {}}
533
+ mode="dropzone"
534
+ margin="xxlarge"
535
+ />
536
+ <hr />
537
+ </ExampleContainer>
538
+ </>
539
+ );