@dxc-technology/halstack-react 0.0.0-c7ec4d1 → 0.0.0-c83579c

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (446) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +47 -0
  3. package/HalstackContext.d.ts +1336 -0
  4. package/HalstackContext.js +335 -0
  5. package/accordion/Accordion.d.ts +4 -0
  6. package/accordion/Accordion.js +234 -0
  7. package/accordion/Accordion.stories.tsx +395 -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 +149 -0
  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/{dist/alert → alert}/Alert.js +45 -157
  19. package/alert/Alert.stories.tsx +198 -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 +61 -0
  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 +342 -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 +114 -0
  34. package/box/Box.stories.tsx +147 -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 +4 -0
  44. package/button/Button.js +153 -0
  45. package/button/Button.stories.tsx +425 -0
  46. package/button/Button.test.js +35 -0
  47. package/button/types.d.ts +53 -0
  48. package/button/types.js +5 -0
  49. package/card/Card.d.ts +4 -0
  50. package/card/Card.js +160 -0
  51. package/card/Card.stories.tsx +200 -0
  52. package/card/Card.test.js +50 -0
  53. package/card/ice-cream.jpg +0 -0
  54. package/card/types.d.ts +68 -0
  55. package/card/types.js +5 -0
  56. package/checkbox/Checkbox.d.ts +4 -0
  57. package/checkbox/Checkbox.js +250 -0
  58. package/checkbox/Checkbox.stories.tsx +260 -0
  59. package/checkbox/Checkbox.test.js +155 -0
  60. package/checkbox/types.d.ts +68 -0
  61. package/checkbox/types.js +5 -0
  62. package/chip/Chip.d.ts +4 -0
  63. package/chip/Chip.js +153 -0
  64. package/chip/Chip.stories.tsx +206 -0
  65. package/chip/Chip.test.js +54 -0
  66. package/chip/types.d.ts +45 -0
  67. package/chip/types.js +5 -0
  68. package/common/OpenSans.css +69 -0
  69. package/common/coreTokens.d.ts +146 -0
  70. package/common/coreTokens.js +167 -0
  71. package/common/utils.d.ts +1 -0
  72. package/{dist/common → common}/utils.js +4 -4
  73. package/common/variables.d.ts +1482 -0
  74. package/common/variables.js +1361 -0
  75. package/date-input/Calendar.d.ts +4 -0
  76. package/date-input/Calendar.js +258 -0
  77. package/date-input/DateInput.d.ts +4 -0
  78. package/date-input/DateInput.js +269 -0
  79. package/date-input/DateInput.stories.tsx +304 -0
  80. package/date-input/DateInput.test.js +835 -0
  81. package/date-input/DatePicker.d.ts +4 -0
  82. package/date-input/DatePicker.js +146 -0
  83. package/date-input/Icons.d.ts +6 -0
  84. package/date-input/Icons.js +75 -0
  85. package/date-input/YearPicker.d.ts +4 -0
  86. package/date-input/YearPicker.js +126 -0
  87. package/date-input/types.d.ts +158 -0
  88. package/date-input/types.js +5 -0
  89. package/dialog/Dialog.d.ts +4 -0
  90. package/dialog/Dialog.js +149 -0
  91. package/dialog/Dialog.stories.tsx +319 -0
  92. package/dialog/Dialog.test.js +369 -0
  93. package/dialog/types.d.ts +44 -0
  94. package/dialog/types.js +5 -0
  95. package/dropdown/Dropdown.d.ts +4 -0
  96. package/dropdown/Dropdown.js +388 -0
  97. package/dropdown/Dropdown.stories.tsx +438 -0
  98. package/dropdown/Dropdown.test.js +586 -0
  99. package/dropdown/DropdownMenu.d.ts +4 -0
  100. package/dropdown/DropdownMenu.js +74 -0
  101. package/dropdown/DropdownMenuItem.d.ts +4 -0
  102. package/dropdown/DropdownMenuItem.js +79 -0
  103. package/dropdown/types.d.ts +100 -0
  104. package/dropdown/types.js +5 -0
  105. package/file-input/FileInput.d.ts +4 -0
  106. package/file-input/FileInput.js +547 -0
  107. package/file-input/FileInput.stories.tsx +618 -0
  108. package/file-input/FileInput.test.js +457 -0
  109. package/file-input/FileItem.d.ts +4 -0
  110. package/file-input/FileItem.js +162 -0
  111. package/file-input/types.d.ts +129 -0
  112. package/file-input/types.js +5 -0
  113. package/flex/Flex.d.ts +4 -0
  114. package/flex/Flex.js +71 -0
  115. package/flex/Flex.stories.tsx +112 -0
  116. package/flex/types.d.ts +97 -0
  117. package/flex/types.js +5 -0
  118. package/footer/Footer.d.ts +4 -0
  119. package/footer/Footer.js +183 -0
  120. package/footer/Footer.stories.tsx +228 -0
  121. package/footer/Footer.test.js +97 -0
  122. package/footer/Icons.d.ts +2 -0
  123. package/{dist/footer → footer}/Icons.js +16 -16
  124. package/footer/types.d.ts +66 -0
  125. package/footer/types.js +5 -0
  126. package/grid/Grid.d.ts +7 -0
  127. package/grid/Grid.js +91 -0
  128. package/grid/Grid.stories.tsx +219 -0
  129. package/grid/types.d.ts +115 -0
  130. package/grid/types.js +5 -0
  131. package/header/Header.d.ts +8 -0
  132. package/header/Header.js +303 -0
  133. package/header/Header.stories.tsx +315 -0
  134. package/header/Header.test.js +79 -0
  135. package/header/Icons.d.ts +2 -0
  136. package/{dist/header → header}/Icons.js +9 -34
  137. package/header/types.d.ts +48 -0
  138. package/header/types.js +5 -0
  139. package/heading/Heading.d.ts +4 -0
  140. package/{dist/heading → heading}/Heading.js +26 -97
  141. package/heading/Heading.stories.tsx +54 -0
  142. package/heading/Heading.test.js +186 -0
  143. package/heading/types.d.ts +33 -0
  144. package/heading/types.js +5 -0
  145. package/inset/Inset.d.ts +3 -0
  146. package/inset/Inset.js +51 -0
  147. package/inset/Inset.stories.tsx +230 -0
  148. package/inset/types.d.ts +37 -0
  149. package/inset/types.js +5 -0
  150. package/layout/ApplicationLayout.d.ts +20 -0
  151. package/layout/ApplicationLayout.js +171 -0
  152. package/layout/ApplicationLayout.stories.tsx +162 -0
  153. package/layout/Icons.d.ts +5 -0
  154. package/{dist/layout → layout}/Icons.js +19 -8
  155. package/layout/SidenavContext.d.ts +5 -0
  156. package/layout/SidenavContext.js +19 -0
  157. package/layout/types.d.ts +41 -0
  158. package/layout/types.js +5 -0
  159. package/link/Link.d.ts +4 -0
  160. package/link/Link.js +136 -0
  161. package/link/Link.stories.tsx +253 -0
  162. package/link/Link.test.js +81 -0
  163. package/link/types.d.ts +54 -0
  164. package/link/types.js +5 -0
  165. package/main.d.ts +45 -0
  166. package/{dist/main.js → main.js} +122 -104
  167. package/nav-tabs/NavTabs.d.ts +8 -0
  168. package/nav-tabs/NavTabs.js +125 -0
  169. package/nav-tabs/NavTabs.stories.tsx +260 -0
  170. package/nav-tabs/NavTabs.test.js +82 -0
  171. package/nav-tabs/Tab.d.ts +4 -0
  172. package/nav-tabs/Tab.js +150 -0
  173. package/nav-tabs/types.d.ts +53 -0
  174. package/nav-tabs/types.js +5 -0
  175. package/number-input/NumberInput.d.ts +4 -0
  176. package/number-input/NumberInput.js +76 -0
  177. package/number-input/NumberInput.stories.tsx +115 -0
  178. package/number-input/NumberInput.test.js +542 -0
  179. package/number-input/NumberInputContext.d.ts +4 -0
  180. package/{dist/number-input → number-input}/NumberInputContext.js +5 -2
  181. package/number-input/numberInputContextTypes.d.ts +19 -0
  182. package/number-input/numberInputContextTypes.js +5 -0
  183. package/number-input/types.d.ts +124 -0
  184. package/number-input/types.js +5 -0
  185. package/package.json +45 -35
  186. package/paginator/Icons.d.ts +5 -0
  187. package/paginator/Icons.js +54 -0
  188. package/paginator/Paginator.d.ts +4 -0
  189. package/paginator/Paginator.js +163 -0
  190. package/paginator/Paginator.stories.tsx +87 -0
  191. package/paginator/Paginator.test.js +305 -0
  192. package/paginator/types.d.ts +38 -0
  193. package/paginator/types.js +5 -0
  194. package/paragraph/Paragraph.d.ts +5 -0
  195. package/paragraph/Paragraph.js +38 -0
  196. package/paragraph/Paragraph.stories.tsx +44 -0
  197. package/password-input/PasswordInput.d.ts +4 -0
  198. package/{dist/password-input → password-input}/PasswordInput.js +40 -77
  199. package/password-input/PasswordInput.stories.tsx +131 -0
  200. package/password-input/PasswordInput.test.js +181 -0
  201. package/password-input/types.d.ts +110 -0
  202. package/password-input/types.js +5 -0
  203. package/progress-bar/ProgressBar.d.ts +4 -0
  204. package/progress-bar/ProgressBar.js +176 -0
  205. package/progress-bar/ProgressBar.stories.jsx +93 -0
  206. package/progress-bar/ProgressBar.test.js +110 -0
  207. package/progress-bar/types.d.ts +37 -0
  208. package/progress-bar/types.js +5 -0
  209. package/quick-nav/QuickNav.d.ts +4 -0
  210. package/quick-nav/QuickNav.js +117 -0
  211. package/quick-nav/QuickNav.stories.tsx +356 -0
  212. package/quick-nav/types.d.ts +21 -0
  213. package/quick-nav/types.js +5 -0
  214. package/radio-group/Radio.d.ts +4 -0
  215. package/radio-group/Radio.js +156 -0
  216. package/radio-group/RadioGroup.d.ts +4 -0
  217. package/radio-group/RadioGroup.js +283 -0
  218. package/radio-group/RadioGroup.stories.tsx +214 -0
  219. package/radio-group/RadioGroup.test.js +722 -0
  220. package/radio-group/types.d.ts +114 -0
  221. package/radio-group/types.js +5 -0
  222. package/resultsetTable/Icons.d.ts +7 -0
  223. package/resultsetTable/Icons.js +51 -0
  224. package/resultsetTable/ResultsetTable.d.ts +4 -0
  225. package/resultsetTable/ResultsetTable.js +195 -0
  226. package/resultsetTable/ResultsetTable.stories.tsx +300 -0
  227. package/resultsetTable/ResultsetTable.test.js +325 -0
  228. package/resultsetTable/types.d.ts +67 -0
  229. package/resultsetTable/types.js +5 -0
  230. package/select/Icons.d.ts +10 -0
  231. package/select/Icons.js +93 -0
  232. package/select/Listbox.d.ts +4 -0
  233. package/select/Listbox.js +169 -0
  234. package/select/Option.d.ts +4 -0
  235. package/select/Option.js +97 -0
  236. package/select/Select.d.ts +4 -0
  237. package/select/Select.js +666 -0
  238. package/select/Select.stories.tsx +971 -0
  239. package/select/Select.test.js +2228 -0
  240. package/select/types.d.ts +210 -0
  241. package/select/types.js +5 -0
  242. package/sidenav/Icons.d.ts +7 -0
  243. package/sidenav/Icons.js +51 -0
  244. package/sidenav/Sidenav.d.ts +10 -0
  245. package/sidenav/Sidenav.js +238 -0
  246. package/sidenav/Sidenav.stories.tsx +282 -0
  247. package/sidenav/Sidenav.test.js +44 -0
  248. package/sidenav/types.d.ts +76 -0
  249. package/sidenav/types.js +5 -0
  250. package/slider/Slider.d.ts +4 -0
  251. package/slider/Slider.js +342 -0
  252. package/slider/Slider.stories.tsx +240 -0
  253. package/slider/Slider.test.js +250 -0
  254. package/slider/types.d.ts +86 -0
  255. package/slider/types.js +5 -0
  256. package/spinner/Spinner.d.ts +4 -0
  257. package/spinner/Spinner.js +244 -0
  258. package/spinner/Spinner.stories.jsx +129 -0
  259. package/spinner/Spinner.test.js +64 -0
  260. package/spinner/types.d.ts +32 -0
  261. package/spinner/types.js +5 -0
  262. package/switch/Switch.d.ts +4 -0
  263. package/switch/Switch.js +262 -0
  264. package/switch/Switch.stories.tsx +171 -0
  265. package/switch/Switch.test.js +225 -0
  266. package/switch/types.d.ts +66 -0
  267. package/switch/types.js +5 -0
  268. package/table/Table.d.ts +4 -0
  269. package/{dist/table → table}/Table.js +14 -28
  270. package/table/Table.stories.jsx +356 -0
  271. package/table/Table.test.js +26 -0
  272. package/table/types.d.ts +21 -0
  273. package/table/types.js +5 -0
  274. package/tabs/Tab.d.ts +4 -0
  275. package/tabs/Tab.js +132 -0
  276. package/tabs/Tabs.d.ts +4 -0
  277. package/tabs/Tabs.js +461 -0
  278. package/tabs/Tabs.stories.tsx +226 -0
  279. package/tabs/Tabs.test.js +350 -0
  280. package/tabs/types.d.ts +92 -0
  281. package/tabs/types.js +5 -0
  282. package/tag/Tag.d.ts +4 -0
  283. package/tag/Tag.js +181 -0
  284. package/tag/Tag.stories.tsx +155 -0
  285. package/tag/Tag.test.js +60 -0
  286. package/tag/types.d.ts +69 -0
  287. package/tag/types.js +5 -0
  288. package/text-input/Icons.d.ts +8 -0
  289. package/text-input/Icons.js +60 -0
  290. package/text-input/Suggestion.d.ts +4 -0
  291. package/text-input/Suggestion.js +84 -0
  292. package/text-input/Suggestions.d.ts +4 -0
  293. package/text-input/Suggestions.js +134 -0
  294. package/text-input/TextInput.d.ts +4 -0
  295. package/text-input/TextInput.js +673 -0
  296. package/text-input/TextInput.stories.tsx +569 -0
  297. package/text-input/TextInput.test.js +1723 -0
  298. package/text-input/types.d.ts +197 -0
  299. package/text-input/types.js +5 -0
  300. package/textarea/Textarea.d.ts +4 -0
  301. package/{dist/textarea → textarea}/Textarea.js +51 -144
  302. package/textarea/Textarea.stories.jsx +216 -0
  303. package/textarea/Textarea.test.js +435 -0
  304. package/textarea/types.d.ts +137 -0
  305. package/textarea/types.js +5 -0
  306. package/toggle-group/ToggleGroup.d.ts +4 -0
  307. package/{dist/toggle-group → toggle-group}/ToggleGroup.js +42 -151
  308. package/toggle-group/ToggleGroup.stories.tsx +215 -0
  309. package/toggle-group/ToggleGroup.test.js +156 -0
  310. package/toggle-group/types.d.ts +105 -0
  311. package/toggle-group/types.js +5 -0
  312. package/typography/Typography.d.ts +4 -0
  313. package/typography/Typography.js +32 -0
  314. package/typography/Typography.stories.tsx +198 -0
  315. package/typography/types.d.ts +18 -0
  316. package/typography/types.js +5 -0
  317. package/useTheme.d.ts +1235 -0
  318. package/{dist/useTheme.js → useTheme.js} +3 -3
  319. package/useTranslatedLabels.d.ts +85 -0
  320. package/useTranslatedLabels.js +20 -0
  321. package/utils/BaseTypography.d.ts +21 -0
  322. package/utils/BaseTypography.js +108 -0
  323. package/utils/FocusLock.d.ts +13 -0
  324. package/utils/FocusLock.js +139 -0
  325. package/wizard/Wizard.d.ts +4 -0
  326. package/wizard/Wizard.js +285 -0
  327. package/wizard/Wizard.stories.tsx +253 -0
  328. package/wizard/Wizard.test.js +141 -0
  329. package/wizard/types.d.ts +64 -0
  330. package/wizard/types.js +5 -0
  331. package/README.md +0 -66
  332. package/babel.config.js +0 -8
  333. package/dist/BackgroundColorContext.js +0 -46
  334. package/dist/ThemeContext.js +0 -250
  335. package/dist/V3Select/V3Select.js +0 -549
  336. package/dist/V3Textarea/V3Textarea.js +0 -264
  337. package/dist/accordion/Accordion.js +0 -353
  338. package/dist/accordion-group/AccordionGroup.js +0 -186
  339. package/dist/alert/index.d.ts +0 -51
  340. package/dist/badge/Badge.js +0 -63
  341. package/dist/box/Box.js +0 -156
  342. package/dist/button/Button.js +0 -238
  343. package/dist/card/Card.js +0 -254
  344. package/dist/checkbox/Checkbox.js +0 -299
  345. package/dist/chip/Chip.js +0 -265
  346. package/dist/common/OpenSans.css +0 -81
  347. package/dist/common/RequiredComponent.js +0 -40
  348. package/dist/common/variables.js +0 -1582
  349. package/dist/date/Date.js +0 -379
  350. package/dist/date-input/DateInput.js +0 -400
  351. package/dist/date-input/index.d.ts +0 -95
  352. package/dist/dialog/Dialog.js +0 -218
  353. package/dist/dropdown/Dropdown.js +0 -544
  354. package/dist/file-input/FileInput.js +0 -644
  355. package/dist/file-input/FileItem.js +0 -287
  356. package/dist/file-input/index.d.ts +0 -81
  357. package/dist/footer/Footer.js +0 -421
  358. package/dist/header/Header.js +0 -470
  359. package/dist/input-text/Icons.js +0 -22
  360. package/dist/input-text/InputText.js +0 -705
  361. package/dist/layout/ApplicationLayout.js +0 -327
  362. package/dist/link/Link.js +0 -237
  363. package/dist/main.d.ts +0 -8
  364. package/dist/number-input/NumberInput.js +0 -136
  365. package/dist/number-input/index.d.ts +0 -113
  366. package/dist/paginator/Icons.js +0 -66
  367. package/dist/paginator/Paginator.js +0 -283
  368. package/dist/password-input/index.d.ts +0 -94
  369. package/dist/progress-bar/ProgressBar.js +0 -242
  370. package/dist/radio/Radio.js +0 -209
  371. package/dist/resultsetTable/ResultsetTable.js +0 -358
  372. package/dist/select/Select.js +0 -1085
  373. package/dist/select/index.d.ts +0 -53
  374. package/dist/sidenav/Sidenav.js +0 -179
  375. package/dist/slider/Slider.js +0 -404
  376. package/dist/spinner/Spinner.js +0 -381
  377. package/dist/switch/Switch.js +0 -222
  378. package/dist/tabs/Tabs.js +0 -343
  379. package/dist/tag/Tag.js +0 -282
  380. package/dist/text-input/TextInput.js +0 -974
  381. package/dist/text-input/index.d.ts +0 -135
  382. package/dist/textarea/index.d.ts +0 -117
  383. package/dist/toggle/Toggle.js +0 -220
  384. package/dist/upload/Upload.js +0 -205
  385. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -135
  386. package/dist/upload/buttons-upload/Icons.js +0 -40
  387. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  388. package/dist/upload/dragAndDropArea/Icons.js +0 -39
  389. package/dist/upload/file-upload/FileToUpload.js +0 -189
  390. package/dist/upload/file-upload/Icons.js +0 -66
  391. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  392. package/dist/upload/transaction/Icons.js +0 -160
  393. package/dist/upload/transaction/Transaction.js +0 -148
  394. package/dist/upload/transactions/Transactions.js +0 -138
  395. package/dist/wizard/Icons.js +0 -65
  396. package/dist/wizard/Wizard.js +0 -405
  397. package/test/Accordion.test.js +0 -33
  398. package/test/AccordionGroup.test.js +0 -125
  399. package/test/Alert.test.js +0 -53
  400. package/test/Box.test.js +0 -10
  401. package/test/Button.test.js +0 -18
  402. package/test/Card.test.js +0 -30
  403. package/test/Checkbox.test.js +0 -45
  404. package/test/Chip.test.js +0 -25
  405. package/test/Date.test.js +0 -397
  406. package/test/DateInput.test.js +0 -242
  407. package/test/Dialog.test.js +0 -23
  408. package/test/Dropdown.test.js +0 -145
  409. package/test/FileInput.test.js +0 -201
  410. package/test/Footer.test.js +0 -94
  411. package/test/Header.test.js +0 -34
  412. package/test/Heading.test.js +0 -83
  413. package/test/InputText.test.js +0 -248
  414. package/test/Link.test.js +0 -43
  415. package/test/NumberInput.test.js +0 -259
  416. package/test/Paginator.test.js +0 -177
  417. package/test/PasswordInput.test.js +0 -83
  418. package/test/ProgressBar.test.js +0 -35
  419. package/test/Radio.test.js +0 -37
  420. package/test/ResultsetTable.test.js +0 -329
  421. package/test/Sidenav.test.js +0 -45
  422. package/test/Slider.test.js +0 -74
  423. package/test/Spinner.test.js +0 -32
  424. package/test/Switch.test.js +0 -45
  425. package/test/Table.test.js +0 -36
  426. package/test/Tabs.test.js +0 -109
  427. package/test/Tag.test.js +0 -32
  428. package/test/TextInput.test.js +0 -732
  429. package/test/Textarea.test.js +0 -193
  430. package/test/ToggleGroup.test.js +0 -85
  431. package/test/Upload.test.js +0 -60
  432. package/test/V3Select.test.js +0 -212
  433. package/test/V3TextArea.test.js +0 -51
  434. package/test/Wizard.test.js +0 -130
  435. package/test/mocks/pngMock.js +0 -1
  436. package/test/mocks/svgMock.js +0 -1
  437. /package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  438. /package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  439. /package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  440. /package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  441. /package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  442. /package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  443. /package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  444. /package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  445. /package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  446. /package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
@@ -0,0 +1,618 @@
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
+ import { HalstackProvider } from "../HalstackContext";
7
+
8
+ export default {
9
+ title: "File input",
10
+ component: DxcFileInput,
11
+ };
12
+
13
+ const picPreview = "https://cdn.mos.cms.futurecdn.net/CAZ6JXi6huSuN4QGE627NR.jpg";
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(["file5"], "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: "This error message is a multiline paragraph for testing.",
58
+ file: file5,
59
+ },
60
+ {
61
+ error: "Error message",
62
+ file: file3,
63
+ preview: picPreview,
64
+ },
65
+ ];
66
+
67
+ const opinionatedTheme = {
68
+ fileInput: {
69
+ fontColor: "#000000",
70
+ },
71
+ };
72
+
73
+ export const Chromatic = () => (
74
+ <>
75
+ <Title title="File item states" theme="light" level={2} />
76
+ <ExampleContainer pseudoState="pseudo-hover">
77
+ <Title title="Hovered" theme="light" level={4} />
78
+ <FileItem
79
+ fileName="file"
80
+ error=""
81
+ singleFileMode={false}
82
+ showPreview={false}
83
+ preview={picPreview}
84
+ type="image/png"
85
+ onDelete={() => {}}
86
+ tabIndex={0}
87
+ />
88
+ </ExampleContainer>
89
+ <ExampleContainer pseudoState="pseudo-focus">
90
+ <Title title="Focused" theme="light" level={4} />
91
+ <FileItem
92
+ fileName="file"
93
+ error=""
94
+ singleFileMode={false}
95
+ showPreview={false}
96
+ preview={picPreview}
97
+ type="image/png"
98
+ onDelete={() => {}}
99
+ tabIndex={0}
100
+ />
101
+ </ExampleContainer>
102
+ <ExampleContainer pseudoState="pseudo-active">
103
+ <Title title="Actived" theme="light" level={4} />
104
+ <FileItem
105
+ fileName="file"
106
+ error=""
107
+ singleFileMode={false}
108
+ showPreview={false}
109
+ preview={picPreview}
110
+ type="image/png"
111
+ onDelete={() => {}}
112
+ tabIndex={0}
113
+ />
114
+ </ExampleContainer>
115
+ <Title title="File" theme="light" level={2} />
116
+ <ExampleContainer>
117
+ <Title title="Without label" theme="light" level={4} />
118
+ <DxcFileInput value={[]} callbackFile={() => {}} />
119
+ </ExampleContainer>
120
+ <ExampleContainer>
121
+ <Title title="With label" theme="light" level={4} />
122
+ <DxcFileInput label="File input" value={[]} callbackFile={() => {}} />
123
+ </ExampleContainer>
124
+ <ExampleContainer>
125
+ <Title title="With label and helper text" theme="light" level={4} />
126
+ <DxcFileInput label="File input" helperText="Please select files" value={[]} callbackFile={() => {}} />
127
+ </ExampleContainer>
128
+ <ExampleContainer>
129
+ <Title title="Single file" theme="light" level={4} />
130
+ <DxcFileInput
131
+ label="File input"
132
+ helperText="Please select files"
133
+ value={fileExample}
134
+ multiple={false}
135
+ callbackFile={() => {}}
136
+ />
137
+ </ExampleContainer>
138
+ <ExampleContainer>
139
+ <Title title="Invalid single file" theme="light" level={4} />
140
+ <DxcFileInput
141
+ label="File input"
142
+ helperText="Please select files"
143
+ value={fileExampleError}
144
+ multiple={false}
145
+ callbackFile={() => {}}
146
+ />
147
+ </ExampleContainer>
148
+ <ExampleContainer>
149
+ <Title title="Multiple files" theme="light" level={4} />
150
+ <DxcFileInput label="File input" helperText="Please select files" value={filesExamples} callbackFile={() => {}} />
151
+ </ExampleContainer>
152
+ <ExampleContainer>
153
+ <Title title="Show preview" theme="light" level={4} />
154
+ <DxcFileInput
155
+ label="File input"
156
+ helperText="Please select files"
157
+ value={filesExamples}
158
+ callbackFile={() => {}}
159
+ showPreview
160
+ />
161
+ </ExampleContainer>
162
+ <ExampleContainer>
163
+ <Title title="Disabled" theme="light" level={4} />
164
+ <DxcFileInput label="File input" helperText="Please select files" disabled value={[]} callbackFile={() => {}} />
165
+ </ExampleContainer>
166
+ <Title title="Margins" theme="light" level={3} />
167
+ <ExampleContainer>
168
+ <Title title="Xxsmall margin" theme="light" level={4} />
169
+ <DxcFileInput
170
+ label="File input"
171
+ helperText="Please select files"
172
+ value={fileExample}
173
+ callbackFile={() => {}}
174
+ margin="xxsmall"
175
+ />
176
+ </ExampleContainer>
177
+ <ExampleContainer>
178
+ <Title title="Xsmall margin" theme="light" level={4} />
179
+ <DxcFileInput
180
+ label="File input"
181
+ helperText="Please select files"
182
+ value={fileExample}
183
+ callbackFile={() => {}}
184
+ margin="xsmall"
185
+ />
186
+ </ExampleContainer>
187
+ <ExampleContainer>
188
+ <Title title="Small margin" theme="light" level={4} />
189
+ <DxcFileInput
190
+ label="File input"
191
+ helperText="Please select files"
192
+ value={fileExample}
193
+ callbackFile={() => {}}
194
+ margin="small"
195
+ />
196
+ </ExampleContainer>
197
+ <ExampleContainer>
198
+ <Title title="Medium margin" theme="light" level={4} />
199
+ <DxcFileInput
200
+ label="File input"
201
+ helperText="Please select files"
202
+ value={fileExample}
203
+ callbackFile={() => {}}
204
+ margin="medium"
205
+ />
206
+ </ExampleContainer>
207
+ <ExampleContainer>
208
+ <Title title="Large margin" theme="light" level={4} />
209
+ <DxcFileInput
210
+ label="File input"
211
+ helperText="Please select files"
212
+ value={fileExample}
213
+ callbackFile={() => {}}
214
+ margin="large"
215
+ />
216
+ </ExampleContainer>
217
+ <ExampleContainer>
218
+ <Title title="Xlarge margin" theme="light" level={4} />
219
+ <DxcFileInput
220
+ label="File input"
221
+ helperText="Please select files"
222
+ value={fileExample}
223
+ callbackFile={() => {}}
224
+ margin="xlarge"
225
+ />
226
+ </ExampleContainer>
227
+ <ExampleContainer>
228
+ <Title title="Xxlarge margin" theme="light" level={4} />
229
+ <DxcFileInput
230
+ label="File input"
231
+ helperText="Please select files"
232
+ value={fileExample}
233
+ callbackFile={() => {}}
234
+ margin="xxlarge"
235
+ />
236
+ </ExampleContainer>
237
+ <Title title="Filedrop" theme="light" level={2} />
238
+ <ExampleContainer>
239
+ <Title title="Without label" theme="light" level={4} />
240
+ <DxcFileInput mode="filedrop" value={[]} callbackFile={() => {}} />
241
+ </ExampleContainer>
242
+ <ExampleContainer>
243
+ <Title title="With label" theme="light" level={4} />
244
+ <DxcFileInput mode="filedrop" label="File input" value={[]} callbackFile={() => {}} />
245
+ </ExampleContainer>
246
+ <ExampleContainer>
247
+ <Title title="With label, helper text and ellipsis" theme="light" level={4} />
248
+ <DxcFileInput
249
+ mode="filedrop"
250
+ label="File input"
251
+ dropAreaLabel="or drop files or drop files or drop files or drop files or drop files"
252
+ helperText="Please select files"
253
+ value={[]}
254
+ callbackFile={() => {}}
255
+ />
256
+ </ExampleContainer>
257
+ <ExampleContainer>
258
+ <Title title="Single file" theme="light" level={4} />
259
+ <DxcFileInput
260
+ mode="filedrop"
261
+ label="File input"
262
+ helperText="Please select files"
263
+ value={fileExample}
264
+ multiple={false}
265
+ callbackFile={() => {}}
266
+ />
267
+ </ExampleContainer>
268
+ <ExampleContainer>
269
+ <Title title="Invalid single file" theme="light" level={4} />
270
+ <DxcFileInput
271
+ mode="filedrop"
272
+ label="File input"
273
+ helperText="Please select files"
274
+ value={fileExampleError}
275
+ multiple={false}
276
+ callbackFile={() => {}}
277
+ />
278
+ </ExampleContainer>
279
+ <ExampleContainer>
280
+ <Title title="Multiple files" theme="light" level={4} />
281
+ <DxcFileInput
282
+ mode="filedrop"
283
+ label="File input"
284
+ helperText="Please select files"
285
+ value={filesExamples}
286
+ callbackFile={() => {}}
287
+ />
288
+ </ExampleContainer>
289
+ <ExampleContainer>
290
+ <Title title="Show preview" theme="light" level={4} />
291
+ <DxcFileInput
292
+ mode="filedrop"
293
+ label="File input"
294
+ helperText="Please select files"
295
+ value={filesExamples}
296
+ callbackFile={() => {}}
297
+ showPreview
298
+ />
299
+ </ExampleContainer>
300
+ <ExampleContainer>
301
+ <Title title="Disabled" theme="light" level={4} />
302
+ <DxcFileInput
303
+ label="File input"
304
+ helperText="Please select files"
305
+ mode="filedrop"
306
+ disabled
307
+ value={[]}
308
+ callbackFile={() => {}}
309
+ />
310
+ </ExampleContainer>
311
+ <Title title="Margins" theme="light" level={3} />
312
+ <ExampleContainer>
313
+ <Title title="Xxsmall margin" theme="light" level={4} />
314
+ <DxcFileInput
315
+ label="File input"
316
+ helperText="Please select files"
317
+ value={fileExample}
318
+ callbackFile={() => {}}
319
+ mode="filedrop"
320
+ margin="xxsmall"
321
+ />
322
+ </ExampleContainer>
323
+ <ExampleContainer>
324
+ <Title title="Xsmall margin" theme="light" level={4} />
325
+ <DxcFileInput
326
+ label="File input"
327
+ helperText="Please select files"
328
+ value={fileExample}
329
+ callbackFile={() => {}}
330
+ mode="filedrop"
331
+ margin="xsmall"
332
+ />
333
+ </ExampleContainer>
334
+ <ExampleContainer>
335
+ <Title title="Small margin" theme="light" level={4} />
336
+ <DxcFileInput
337
+ label="File input"
338
+ helperText="Please select files"
339
+ value={fileExample}
340
+ callbackFile={() => {}}
341
+ mode="filedrop"
342
+ margin="small"
343
+ />
344
+ </ExampleContainer>
345
+ <ExampleContainer>
346
+ <Title title="Medium margin" theme="light" level={4} />
347
+ <DxcFileInput
348
+ label="File input"
349
+ helperText="Please select files"
350
+ value={fileExample}
351
+ callbackFile={() => {}}
352
+ mode="filedrop"
353
+ margin="medium"
354
+ />
355
+ </ExampleContainer>
356
+ <ExampleContainer>
357
+ <Title title="Large margin" theme="light" level={4} />
358
+ <DxcFileInput
359
+ label="File input"
360
+ helperText="Please select files"
361
+ value={fileExample}
362
+ callbackFile={() => {}}
363
+ mode="filedrop"
364
+ margin="large"
365
+ />
366
+ </ExampleContainer>
367
+ <ExampleContainer>
368
+ <Title title="Xlarge margin" theme="light" level={4} />
369
+ <DxcFileInput
370
+ label="File input"
371
+ helperText="Please select files"
372
+ value={fileExample}
373
+ callbackFile={() => {}}
374
+ margin="xlarge"
375
+ />
376
+ </ExampleContainer>
377
+ <ExampleContainer>
378
+ <Title title="Xxlarge margin" theme="light" level={4} />
379
+ <DxcFileInput
380
+ label="File input"
381
+ helperText="Please select files"
382
+ value={fileExample}
383
+ callbackFile={() => {}}
384
+ mode="filedrop"
385
+ margin="xxlarge"
386
+ />
387
+ </ExampleContainer>
388
+ <Title title="Dropzone" theme="light" level={2} />
389
+ <ExampleContainer>
390
+ <Title title="Without label" theme="light" level={4} />
391
+ <DxcFileInput mode="dropzone" value={[]} callbackFile={() => {}} />
392
+ </ExampleContainer>
393
+ <ExampleContainer>
394
+ <Title title="With label" theme="light" level={4} />
395
+ <DxcFileInput label="File input" mode="dropzone" value={[]} callbackFile={() => {}} />
396
+ </ExampleContainer>
397
+ <ExampleContainer>
398
+ <Title title="With label, helper text and ellipsis" theme="light" level={4} />
399
+ <DxcFileInput
400
+ label="File input"
401
+ helperText="Please select files"
402
+ mode="dropzone"
403
+ 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"
404
+ value={[]}
405
+ callbackFile={() => {}}
406
+ />
407
+ </ExampleContainer>
408
+ <ExampleContainer>
409
+ <Title title="Single file" theme="light" level={4} />
410
+ <DxcFileInput
411
+ label="File input"
412
+ helperText="Please select files"
413
+ mode="dropzone"
414
+ value={fileExample}
415
+ callbackFile={() => {}}
416
+ multiple={false}
417
+ />
418
+ </ExampleContainer>
419
+ <ExampleContainer>
420
+ <Title title="Invalid single file" theme="light" level={4} />
421
+ <DxcFileInput
422
+ label="File input"
423
+ helperText="Please select files"
424
+ mode="dropzone"
425
+ value={fileExampleError}
426
+ callbackFile={() => {}}
427
+ multiple={false}
428
+ />
429
+ </ExampleContainer>
430
+ <ExampleContainer>
431
+ <Title title="Multiple files" theme="light" level={4} />
432
+ <DxcFileInput
433
+ mode="dropzone"
434
+ label="File input"
435
+ helperText="Please select files"
436
+ value={filesExamples}
437
+ callbackFile={() => {}}
438
+ />
439
+ </ExampleContainer>
440
+ <ExampleContainer>
441
+ <Title title="Show preview" theme="light" level={4} />
442
+ <DxcFileInput
443
+ mode="dropzone"
444
+ label="File input"
445
+ helperText="Please select files"
446
+ value={filesExamples}
447
+ callbackFile={() => {}}
448
+ showPreview
449
+ />
450
+ </ExampleContainer>
451
+ <ExampleContainer>
452
+ <Title title="Disabled" theme="light" level={4} />
453
+ <DxcFileInput
454
+ label="File input"
455
+ helperText="Please select files"
456
+ mode="dropzone"
457
+ disabled
458
+ value={[]}
459
+ callbackFile={() => {}}
460
+ />
461
+ </ExampleContainer>
462
+ <Title title="Margins" theme="light" level={3} />
463
+ <ExampleContainer>
464
+ <Title title="Xxsmall margin" theme="light" level={4} />
465
+ <DxcFileInput
466
+ label="File input"
467
+ helperText="Please select files"
468
+ value={fileExample}
469
+ callbackFile={() => {}}
470
+ mode="dropzone"
471
+ margin="xxsmall"
472
+ />
473
+ </ExampleContainer>
474
+ <ExampleContainer>
475
+ <Title title="Xsmall margin" theme="light" level={4} />
476
+ <DxcFileInput
477
+ label="File input"
478
+ helperText="Please select files"
479
+ value={fileExample}
480
+ callbackFile={() => {}}
481
+ mode="dropzone"
482
+ margin="xsmall"
483
+ />
484
+ </ExampleContainer>
485
+ <ExampleContainer>
486
+ <Title title="Small margin" theme="light" level={4} />
487
+ <DxcFileInput
488
+ label="File input"
489
+ helperText="Please select files"
490
+ value={fileExample}
491
+ callbackFile={() => {}}
492
+ mode="dropzone"
493
+ margin="small"
494
+ />
495
+ </ExampleContainer>
496
+ <ExampleContainer>
497
+ <Title title="Medium margin" theme="light" level={4} />
498
+ <DxcFileInput
499
+ label="File input"
500
+ helperText="Please select files"
501
+ value={fileExample}
502
+ callbackFile={() => {}}
503
+ mode="dropzone"
504
+ margin="medium"
505
+ />
506
+ </ExampleContainer>
507
+ <ExampleContainer>
508
+ <Title title="Large margin" theme="light" level={4} />
509
+ <DxcFileInput
510
+ label="File input"
511
+ helperText="Please select files"
512
+ value={fileExample}
513
+ callbackFile={() => {}}
514
+ mode="dropzone"
515
+ margin="large"
516
+ />
517
+ </ExampleContainer>
518
+ <ExampleContainer>
519
+ <Title title="Xlarge margin" theme="light" level={4} />
520
+ <DxcFileInput
521
+ label="File input"
522
+ helperText="Please select files"
523
+ value={fileExample}
524
+ callbackFile={() => {}}
525
+ mode="dropzone"
526
+ margin="xlarge"
527
+ />
528
+ </ExampleContainer>
529
+ <ExampleContainer>
530
+ <Title title="Xxlarge margin" theme="light" level={4} />
531
+ <DxcFileInput
532
+ label="File input"
533
+ helperText="Please select files"
534
+ value={fileExample}
535
+ callbackFile={() => {}}
536
+ mode="dropzone"
537
+ margin="xxlarge"
538
+ />
539
+ </ExampleContainer>
540
+ <Title title="Opinionated theme" theme="light" level={2} />
541
+ <ExampleContainer>
542
+ <HalstackProvider theme={opinionatedTheme}>
543
+ <Title title="Single file" theme="light" level={4} />
544
+ <DxcFileInput
545
+ label="File input"
546
+ helperText="Please select files"
547
+ value={fileExample}
548
+ multiple={false}
549
+ callbackFile={() => {}}
550
+ />
551
+ </HalstackProvider>
552
+ </ExampleContainer>
553
+ <ExampleContainer>
554
+ <HalstackProvider theme={opinionatedTheme}>
555
+ <Title title="Invalid single file" theme="light" level={4} />
556
+ <DxcFileInput
557
+ label="File input"
558
+ helperText="Please select files"
559
+ value={fileExampleError}
560
+ multiple={false}
561
+ callbackFile={() => {}}
562
+ />
563
+ </HalstackProvider>
564
+ </ExampleContainer>
565
+ <ExampleContainer>
566
+ <Title title="Single file" theme="light" level={4} />
567
+ <HalstackProvider theme={opinionatedTheme}>
568
+ <DxcFileInput
569
+ mode="filedrop"
570
+ label="File input"
571
+ helperText="Please select files"
572
+ value={fileExample}
573
+ multiple={false}
574
+ callbackFile={() => {}}
575
+ />
576
+ </HalstackProvider>
577
+ </ExampleContainer>
578
+ <ExampleContainer>
579
+ <Title title="Invalid single file" theme="light" level={4} />
580
+ <HalstackProvider theme={opinionatedTheme}>
581
+ <DxcFileInput
582
+ mode="filedrop"
583
+ label="File input"
584
+ helperText="Please select files"
585
+ value={fileExampleError}
586
+ multiple={false}
587
+ callbackFile={() => {}}
588
+ />
589
+ </HalstackProvider>
590
+ </ExampleContainer>
591
+ <ExampleContainer>
592
+ <Title title="Single file" theme="light" level={4} />
593
+ <HalstackProvider theme={opinionatedTheme}>
594
+ <DxcFileInput
595
+ label="File input"
596
+ helperText="Please select files"
597
+ mode="dropzone"
598
+ value={fileExample}
599
+ callbackFile={() => {}}
600
+ multiple={false}
601
+ />
602
+ </HalstackProvider>
603
+ </ExampleContainer>
604
+ <ExampleContainer>
605
+ <Title title="Invalid single file" theme="light" level={4} />{" "}
606
+ <HalstackProvider theme={opinionatedTheme}>
607
+ <DxcFileInput
608
+ label="File input"
609
+ helperText="Please select files"
610
+ mode="dropzone"
611
+ value={fileExampleError}
612
+ callbackFile={() => {}}
613
+ multiple={false}
614
+ />
615
+ </HalstackProvider>
616
+ </ExampleContainer>
617
+ </>
618
+ );