@dxc-technology/halstack-react 0.0.0-4d89cae → 0.0.0-4dc980c

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 (372) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +7 -6
  3. package/HalstackContext.d.ts +12 -0
  4. package/HalstackContext.js +294 -0
  5. package/accordion/Accordion.d.ts +4 -0
  6. package/accordion/Accordion.js +129 -237
  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 +68 -105
  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 +44 -154
  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 +15 -17
  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 +37 -77
  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 +4 -0
  44. package/button/Button.js +63 -145
  45. package/button/Button.stories.tsx +283 -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 +44 -137
  51. package/card/Card.stories.tsx +201 -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 +110 -159
  58. package/checkbox/Checkbox.stories.tsx +208 -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 +26 -130
  64. package/chip/Chip.stories.tsx +119 -0
  65. package/chip/Chip.test.js +56 -0
  66. package/chip/types.d.ts +45 -0
  67. package/chip/types.js +5 -0
  68. package/common/variables.js +327 -382
  69. package/date-input/Calendar.d.ts +4 -0
  70. package/date-input/Calendar.js +258 -0
  71. package/date-input/DateInput.d.ts +4 -0
  72. package/date-input/DateInput.js +130 -303
  73. package/date-input/DateInput.stories.tsx +151 -0
  74. package/date-input/DateInput.test.js +752 -0
  75. package/date-input/DatePicker.d.ts +4 -0
  76. package/date-input/DatePicker.js +160 -0
  77. package/date-input/YearPicker.d.ts +4 -0
  78. package/date-input/YearPicker.js +115 -0
  79. package/date-input/types.d.ts +160 -0
  80. package/date-input/types.js +5 -0
  81. package/dialog/Dialog.d.ts +4 -0
  82. package/dialog/Dialog.js +60 -116
  83. package/dialog/Dialog.stories.tsx +267 -0
  84. package/dialog/Dialog.test.js +70 -0
  85. package/dialog/types.d.ts +44 -0
  86. package/dialog/types.js +5 -0
  87. package/dropdown/Dropdown.d.ts +4 -0
  88. package/dropdown/Dropdown.js +243 -396
  89. package/dropdown/Dropdown.stories.tsx +312 -0
  90. package/dropdown/Dropdown.test.js +585 -0
  91. package/dropdown/DropdownMenu.d.ts +4 -0
  92. package/dropdown/DropdownMenu.js +80 -0
  93. package/dropdown/DropdownMenuItem.d.ts +4 -0
  94. package/dropdown/DropdownMenuItem.js +92 -0
  95. package/dropdown/types.d.ts +100 -0
  96. package/dropdown/types.js +5 -0
  97. package/file-input/FileInput.d.ts +4 -0
  98. package/file-input/FileInput.js +212 -305
  99. package/file-input/FileInput.stories.tsx +535 -0
  100. package/file-input/FileInput.test.js +498 -0
  101. package/file-input/FileItem.d.ts +4 -0
  102. package/file-input/FileItem.js +57 -183
  103. package/file-input/types.d.ts +129 -0
  104. package/file-input/types.js +5 -0
  105. package/flex/Flex.d.ts +4 -0
  106. package/flex/Flex.js +69 -0
  107. package/flex/Flex.stories.tsx +103 -0
  108. package/flex/types.d.ts +32 -0
  109. package/flex/types.js +5 -0
  110. package/footer/Footer.d.ts +4 -0
  111. package/footer/Footer.js +50 -286
  112. package/footer/Footer.stories.tsx +137 -0
  113. package/footer/Footer.test.js +109 -0
  114. package/footer/Icons.d.ts +2 -0
  115. package/footer/Icons.js +16 -16
  116. package/footer/types.d.ts +66 -0
  117. package/footer/types.js +5 -0
  118. package/header/Header.d.ts +7 -0
  119. package/header/Header.js +131 -296
  120. package/header/Header.stories.tsx +172 -0
  121. package/header/Header.test.js +79 -0
  122. package/header/Icons.d.ts +2 -0
  123. package/header/Icons.js +9 -34
  124. package/header/types.d.ts +48 -0
  125. package/header/types.js +5 -0
  126. package/heading/Heading.d.ts +4 -0
  127. package/heading/Heading.js +25 -96
  128. package/heading/Heading.stories.tsx +54 -0
  129. package/heading/Heading.test.js +186 -0
  130. package/heading/types.d.ts +33 -0
  131. package/heading/types.js +5 -0
  132. package/inset/Inset.d.ts +3 -0
  133. package/inset/Inset.js +51 -0
  134. package/inset/Inset.stories.tsx +229 -0
  135. package/inset/types.d.ts +37 -0
  136. package/inset/types.js +5 -0
  137. package/layout/ApplicationLayout.d.ts +20 -0
  138. package/layout/ApplicationLayout.js +76 -232
  139. package/layout/ApplicationLayout.stories.tsx +162 -0
  140. package/layout/Icons.d.ts +5 -0
  141. package/layout/Icons.js +19 -8
  142. package/layout/SidenavContext.d.ts +5 -0
  143. package/layout/SidenavContext.js +19 -0
  144. package/layout/types.d.ts +42 -0
  145. package/layout/types.js +5 -0
  146. package/link/Link.d.ts +4 -0
  147. package/link/Link.js +65 -166
  148. package/link/Link.stories.tsx +193 -0
  149. package/link/Link.test.js +83 -0
  150. package/link/types.d.ts +54 -0
  151. package/link/types.js +5 -0
  152. package/main.d.ts +44 -40
  153. package/main.js +114 -104
  154. package/number-input/NumberInput.d.ts +4 -0
  155. package/number-input/NumberInput.js +21 -81
  156. package/number-input/NumberInput.stories.tsx +115 -0
  157. package/number-input/NumberInput.test.js +542 -0
  158. package/number-input/NumberInputContext.d.ts +4 -0
  159. package/number-input/NumberInputContext.js +5 -2
  160. package/number-input/numberInputContextTypes.d.ts +19 -0
  161. package/number-input/numberInputContextTypes.js +5 -0
  162. package/number-input/types.d.ts +124 -0
  163. package/number-input/types.js +5 -0
  164. package/package.json +34 -32
  165. package/paginator/Icons.js +9 -9
  166. package/paginator/Paginator.d.ts +4 -0
  167. package/paginator/Paginator.js +32 -166
  168. package/paginator/Paginator.stories.tsx +63 -0
  169. package/paginator/Paginator.test.js +308 -0
  170. package/paginator/types.d.ts +38 -0
  171. package/paginator/types.js +5 -0
  172. package/paragraph/Paragraph.d.ts +6 -0
  173. package/paragraph/Paragraph.js +38 -0
  174. package/paragraph/Paragraph.stories.tsx +44 -0
  175. package/password-input/PasswordInput.d.ts +4 -0
  176. package/password-input/PasswordInput.js +40 -77
  177. package/password-input/PasswordInput.stories.tsx +131 -0
  178. package/password-input/PasswordInput.test.js +181 -0
  179. package/password-input/types.d.ts +110 -0
  180. package/password-input/types.js +5 -0
  181. package/progress-bar/ProgressBar.d.ts +4 -0
  182. package/progress-bar/ProgressBar.js +72 -138
  183. package/progress-bar/ProgressBar.stories.jsx +60 -0
  184. package/progress-bar/ProgressBar.test.js +110 -0
  185. package/progress-bar/types.d.ts +36 -0
  186. package/progress-bar/types.js +5 -0
  187. package/quick-nav/QuickNav.d.ts +4 -0
  188. package/quick-nav/QuickNav.js +117 -0
  189. package/quick-nav/QuickNav.stories.tsx +342 -0
  190. package/quick-nav/types.d.ts +21 -0
  191. package/quick-nav/types.js +5 -0
  192. package/radio-group/Radio.d.ts +4 -0
  193. package/radio-group/Radio.js +156 -0
  194. package/radio-group/RadioGroup.d.ts +4 -0
  195. package/radio-group/RadioGroup.js +283 -0
  196. package/radio-group/RadioGroup.stories.tsx +101 -0
  197. package/radio-group/RadioGroup.test.js +722 -0
  198. package/radio-group/types.d.ts +114 -0
  199. package/radio-group/types.js +5 -0
  200. package/resultsetTable/Icons.d.ts +7 -0
  201. package/resultsetTable/Icons.js +51 -0
  202. package/resultsetTable/ResultsetTable.d.ts +4 -0
  203. package/resultsetTable/ResultsetTable.js +60 -223
  204. package/resultsetTable/ResultsetTable.stories.tsx +300 -0
  205. package/resultsetTable/ResultsetTable.test.js +330 -0
  206. package/resultsetTable/types.d.ts +67 -0
  207. package/resultsetTable/types.js +5 -0
  208. package/select/Icons.d.ts +10 -0
  209. package/select/Icons.js +93 -0
  210. package/select/Listbox.d.ts +4 -0
  211. package/select/Listbox.js +198 -0
  212. package/select/Option.d.ts +4 -0
  213. package/select/Option.js +110 -0
  214. package/select/Select.d.ts +4 -0
  215. package/select/Select.js +231 -724
  216. package/select/Select.stories.tsx +624 -0
  217. package/select/Select.test.js +2233 -0
  218. package/select/types.d.ts +210 -0
  219. package/select/types.js +5 -0
  220. package/sidenav/Sidenav.d.ts +10 -0
  221. package/sidenav/Sidenav.js +194 -105
  222. package/sidenav/Sidenav.stories.tsx +180 -0
  223. package/sidenav/Sidenav.test.js +44 -0
  224. package/sidenav/types.d.ts +73 -0
  225. package/sidenav/types.js +5 -0
  226. package/slider/Slider.d.ts +4 -0
  227. package/slider/Slider.js +166 -227
  228. package/slider/Slider.stories.tsx +183 -0
  229. package/slider/Slider.test.js +250 -0
  230. package/slider/types.d.ts +86 -0
  231. package/slider/types.js +5 -0
  232. package/spinner/Spinner.d.ts +4 -0
  233. package/spinner/Spinner.js +46 -177
  234. package/spinner/Spinner.stories.jsx +103 -0
  235. package/spinner/Spinner.test.js +64 -0
  236. package/spinner/types.d.ts +32 -0
  237. package/spinner/types.js +5 -0
  238. package/switch/Switch.d.ts +4 -0
  239. package/switch/Switch.js +161 -121
  240. package/switch/Switch.stories.tsx +138 -0
  241. package/switch/Switch.test.js +225 -0
  242. package/switch/types.d.ts +66 -0
  243. package/switch/types.js +5 -0
  244. package/table/Table.d.ts +4 -0
  245. package/table/Table.js +12 -26
  246. package/table/Table.stories.jsx +277 -0
  247. package/table/Table.test.js +26 -0
  248. package/table/types.d.ts +21 -0
  249. package/table/types.js +5 -0
  250. package/tabs/Tab.d.ts +4 -0
  251. package/tabs/Tab.js +135 -0
  252. package/tabs/Tabs.d.ts +4 -0
  253. package/tabs/Tabs.js +353 -229
  254. package/tabs/Tabs.stories.tsx +185 -0
  255. package/tabs/Tabs.test.js +351 -0
  256. package/tabs/types.d.ts +92 -0
  257. package/tabs/types.js +5 -0
  258. package/tabs-nav/NavTabs.d.ts +8 -0
  259. package/tabs-nav/NavTabs.js +125 -0
  260. package/tabs-nav/NavTabs.stories.tsx +170 -0
  261. package/tabs-nav/NavTabs.test.js +82 -0
  262. package/tabs-nav/Tab.d.ts +4 -0
  263. package/tabs-nav/Tab.js +130 -0
  264. package/tabs-nav/types.d.ts +53 -0
  265. package/tabs-nav/types.js +5 -0
  266. package/tag/Tag.d.ts +4 -0
  267. package/tag/Tag.js +45 -144
  268. package/tag/Tag.stories.tsx +142 -0
  269. package/tag/Tag.test.js +60 -0
  270. package/tag/types.d.ts +69 -0
  271. package/tag/types.js +5 -0
  272. package/text-input/Icons.d.ts +8 -0
  273. package/text-input/Icons.js +60 -0
  274. package/text-input/Suggestion.d.ts +4 -0
  275. package/text-input/Suggestion.js +57 -0
  276. package/text-input/Suggestions.d.ts +4 -0
  277. package/text-input/Suggestions.js +134 -0
  278. package/text-input/TextInput.d.ts +4 -0
  279. package/text-input/TextInput.js +261 -576
  280. package/text-input/TextInput.stories.tsx +481 -0
  281. package/text-input/TextInput.test.js +1624 -0
  282. package/text-input/types.d.ts +197 -0
  283. package/text-input/types.js +5 -0
  284. package/textarea/Textarea.d.ts +4 -0
  285. package/textarea/Textarea.js +50 -142
  286. package/textarea/Textarea.stories.jsx +157 -0
  287. package/textarea/Textarea.test.js +437 -0
  288. package/textarea/types.d.ts +137 -0
  289. package/textarea/types.js +5 -0
  290. package/toggle-group/ToggleGroup.d.ts +4 -0
  291. package/toggle-group/ToggleGroup.js +36 -148
  292. package/toggle-group/ToggleGroup.stories.tsx +173 -0
  293. package/toggle-group/ToggleGroup.test.js +156 -0
  294. package/toggle-group/types.d.ts +105 -0
  295. package/toggle-group/types.js +5 -0
  296. package/typography/Typography.d.ts +4 -0
  297. package/typography/Typography.js +131 -0
  298. package/typography/Typography.stories.tsx +198 -0
  299. package/typography/types.d.ts +18 -0
  300. package/typography/types.js +5 -0
  301. package/useTheme.d.ts +2 -0
  302. package/useTheme.js +2 -2
  303. package/useTranslatedLabels.d.ts +2 -0
  304. package/useTranslatedLabels.js +20 -0
  305. package/wizard/Wizard.d.ts +4 -0
  306. package/wizard/Wizard.js +132 -252
  307. package/wizard/Wizard.stories.tsx +233 -0
  308. package/wizard/Wizard.test.js +141 -0
  309. package/wizard/types.d.ts +65 -0
  310. package/wizard/types.js +5 -0
  311. package/ThemeContext.js +0 -250
  312. package/V3Select/V3Select.js +0 -549
  313. package/V3Select/index.d.ts +0 -27
  314. package/V3Textarea/V3Textarea.js +0 -264
  315. package/V3Textarea/index.d.ts +0 -27
  316. package/accordion/index.d.ts +0 -28
  317. package/accordion-group/index.d.ts +0 -16
  318. package/alert/index.d.ts +0 -51
  319. package/box/index.d.ts +0 -25
  320. package/button/Button.stories.js +0 -27
  321. package/button/index.d.ts +0 -24
  322. package/card/index.d.ts +0 -22
  323. package/checkbox/index.d.ts +0 -24
  324. package/chip/index.d.ts +0 -22
  325. package/common/RequiredComponent.js +0 -40
  326. package/date/Date.js +0 -379
  327. package/date/index.d.ts +0 -27
  328. package/date-input/index.d.ts +0 -95
  329. package/dialog/index.d.ts +0 -18
  330. package/dropdown/index.d.ts +0 -26
  331. package/file-input/index.d.ts +0 -81
  332. package/footer/index.d.ts +0 -25
  333. package/header/index.d.ts +0 -25
  334. package/heading/index.d.ts +0 -17
  335. package/input-text/Icons.js +0 -22
  336. package/input-text/InputText.js +0 -705
  337. package/input-text/index.d.ts +0 -36
  338. package/link/index.d.ts +0 -23
  339. package/number-input/index.d.ts +0 -113
  340. package/paginator/index.d.ts +0 -20
  341. package/password-input/index.d.ts +0 -94
  342. package/progress-bar/index.d.ts +0 -18
  343. package/radio/Radio.js +0 -209
  344. package/radio/index.d.ts +0 -23
  345. package/resultsetTable/index.d.ts +0 -19
  346. package/select/index.d.ts +0 -131
  347. package/sidenav/index.d.ts +0 -13
  348. package/slider/index.d.ts +0 -29
  349. package/spinner/index.d.ts +0 -17
  350. package/switch/index.d.ts +0 -24
  351. package/table/index.d.ts +0 -13
  352. package/tabs/index.d.ts +0 -19
  353. package/tag/index.d.ts +0 -24
  354. package/text-input/index.d.ts +0 -135
  355. package/textarea/index.d.ts +0 -117
  356. package/toggle/Toggle.js +0 -220
  357. package/toggle/index.d.ts +0 -21
  358. package/toggle-group/index.d.ts +0 -21
  359. package/upload/Upload.js +0 -205
  360. package/upload/buttons-upload/ButtonsUpload.js +0 -135
  361. package/upload/buttons-upload/Icons.js +0 -40
  362. package/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  363. package/upload/dragAndDropArea/Icons.js +0 -39
  364. package/upload/file-upload/FileToUpload.js +0 -189
  365. package/upload/file-upload/Icons.js +0 -66
  366. package/upload/files-upload/FilesToUpload.js +0 -123
  367. package/upload/index.d.ts +0 -15
  368. package/upload/transaction/Icons.js +0 -160
  369. package/upload/transaction/Transaction.js +0 -148
  370. package/upload/transactions/Transactions.js +0 -138
  371. package/wizard/Icons.js +0 -65
  372. package/wizard/index.d.ts +0 -18
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
-
5
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
4
 
5
+ var _typeof3 = require("@babel/runtime/helpers/typeof");
6
+
7
7
  Object.defineProperty(exports, "__esModule", {
8
8
  value: true
9
9
  });
@@ -13,186 +13,101 @@ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
13
13
 
14
14
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
15
 
16
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
17
-
18
16
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
19
17
 
18
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
19
+
20
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
21
+
20
22
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
21
23
 
22
24
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
23
25
 
24
26
  var _react = _interopRequireWildcard(require("react"));
25
27
 
26
- var _propTypes = _interopRequireDefault(require("prop-types"));
27
-
28
28
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
29
29
 
30
30
  var _uuid = require("uuid");
31
31
 
32
32
  var _variables = require("../common/variables.js");
33
33
 
34
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
34
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
35
+
36
+ var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
35
37
 
36
38
  var _Button = _interopRequireDefault(require("../button/Button"));
37
39
 
38
40
  var _FileItem = _interopRequireDefault(require("./FileItem"));
39
41
 
40
- function _templateObject11() {
41
- var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n line-height: ", ";\n"]);
42
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11;
42
43
 
43
- _templateObject11 = function _templateObject11() {
44
- return data;
45
- };
46
-
47
- return data;
48
- }
49
-
50
- function _templateObject10() {
51
- var data = (0, _taggedTemplateLiteral2["default"])(["\n margin-top: ", ";\n margin-left: ", ";\n"]);
52
-
53
- _templateObject10 = function _templateObject10() {
54
- return data;
55
- };
56
-
57
- return data;
58
- }
59
-
60
- function _templateObject9() {
61
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n margin-top: 0.25rem;\n"]);
62
-
63
- _templateObject9 = function _templateObject9() {
64
- return data;
65
- };
44
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
66
45
 
67
- return data;
68
- }
46
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
69
47
 
70
- function _templateObject8() {
71
- var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n"]);
48
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
72
49
 
73
- _templateObject8 = function _templateObject8() {
74
- return data;
75
- };
76
-
77
- return data;
78
- }
79
-
80
- function _templateObject7() {
81
- var data = (0, _taggedTemplateLiteral2["default"])(["\n padding: ", ";\n input[type=\"file\"] {\n visibility: hidden;\n position: absolute;\n width: 0px;\n height: 0px;\n }\n"]);
82
-
83
- _templateObject7 = function _templateObject7() {
84
- return data;
85
- };
86
-
87
- return data;
88
- }
89
-
90
- function _templateObject6() {
91
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n margin-top: 0.25rem;\n\n input[type=\"file\"] {\n visibility: hidden;\n position: absolute;\n width: 0px;\n height: 0px;\n }\n"]);
92
-
93
- _templateObject6 = function _templateObject6() {
94
- return data;
95
- };
96
-
97
- return data;
98
- }
99
-
100
- function _templateObject5() {
101
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: ", ";\n"]);
102
-
103
- _templateObject5 = function _templateObject5() {
104
- return data;
105
- };
106
-
107
- return data;
108
- }
109
-
110
- function _templateObject4() {
111
- var data = (0, _taggedTemplateLiteral2["default"])(["\n height: ", ";\n width: calc(320px - 2px);\n display: flex;\n flex-direction: ", ";\n align-items: center;\n border-radius: ", ";\n border-width: ", ";\n border-style: ", ";\n background-color: ", ";\n border-color: ", ";\n cursor: ", ";\n"]);
112
-
113
- _templateObject4 = function _templateObject4() {
114
- return data;
115
- };
50
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
116
51
 
117
- return data;
118
- }
119
-
120
- function _templateObject3() {
121
- var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n line-height: ", ";\n"]);
122
-
123
- _templateObject3 = function _templateObject3() {
124
- return data;
125
- };
126
-
127
- return data;
128
- }
129
-
130
- function _templateObject2() {
131
- var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n line-height: ", ";\n"]);
132
-
133
- _templateObject2 = function _templateObject2() {
134
- return data;
135
- };
136
-
137
- return data;
138
- }
139
-
140
- function _templateObject() {
141
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n width: fit-content;\n"]);
142
-
143
- _templateObject = function _templateObject() {
144
- return data;
145
- };
146
-
147
- return data;
148
- }
149
-
150
- var audioIcon = _react["default"].createElement("svg", {
52
+ var audioIcon = /*#__PURE__*/_react["default"].createElement("svg", {
151
53
  xmlns: "http://www.w3.org/2000/svg",
152
54
  width: "24",
153
55
  height: "24",
154
56
  viewBox: "0 0 24 24",
155
57
  fill: "currentColor"
156
- }, _react["default"].createElement("path", {
58
+ }, /*#__PURE__*/_react["default"].createElement("path", {
157
59
  fill: "none",
158
60
  d: "M0 0h24v24H0V0z"
159
- }), _react["default"].createElement("path", {
61
+ }), /*#__PURE__*/_react["default"].createElement("path", {
160
62
  d: "M21 3H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H3V5h18v14zM8 15c0-1.66 1.34-3 3-3 .35 0 .69.07 1 .18V6h5v2h-3v7.03c-.02 1.64-1.35 2.97-3 2.97-1.66 0-3-1.34-3-3z"
161
63
  }));
162
64
 
163
- var videoIcon = _react["default"].createElement("svg", {
65
+ var videoIcon = /*#__PURE__*/_react["default"].createElement("svg", {
164
66
  xmlns: "http://www.w3.org/2000/svg",
165
67
  width: "24",
166
68
  height: "24",
167
69
  viewBox: "0 0 24 24",
168
70
  fill: "currentColor"
169
- }, _react["default"].createElement("path", {
71
+ }, /*#__PURE__*/_react["default"].createElement("path", {
170
72
  d: "M18 4l2 4h-3l-2-4h-2l2 4h-3l-2-4H8l2 4H7L5 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V4h-4z"
171
- }), _react["default"].createElement("path", {
73
+ }), /*#__PURE__*/_react["default"].createElement("path", {
172
74
  d: "M0 0h24v24H0z",
173
75
  fill: "none"
174
76
  }));
175
77
 
176
- var fileIcon = _react["default"].createElement("svg", {
78
+ var fileIcon = /*#__PURE__*/_react["default"].createElement("svg", {
177
79
  xmlns: "http://www.w3.org/2000/svg",
178
80
  width: "24",
179
81
  height: "24",
180
82
  viewBox: "0 0 24 24",
181
83
  fill: "currentColor"
182
- }, _react["default"].createElement("path", {
84
+ }, /*#__PURE__*/_react["default"].createElement("path", {
183
85
  fill: "none",
184
86
  d: "M0 0h24v24H0V0z"
185
- }), _react["default"].createElement("path", {
87
+ }), /*#__PURE__*/_react["default"].createElement("path", {
186
88
  d: "M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6zM6 20V4h7v5h5v11H6z"
187
89
  }));
188
90
 
189
- var DxcFileInput = function DxcFileInput(_ref) {
91
+ var getFilePreview = function getFilePreview(file) {
92
+ if (file.type.includes("video")) return videoIcon;else if (file.type.includes("audio")) return audioIcon;else if (file.type.includes("image")) return new Promise(function (resolve) {
93
+ var reader = new FileReader();
94
+ reader.readAsDataURL(file);
95
+
96
+ reader.onload = function (e) {
97
+ resolve(e.target.result);
98
+ };
99
+ });else return fileIcon;
100
+ };
101
+
102
+ var DxcFileInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
190
103
  var _ref$name = _ref.name,
191
104
  name = _ref$name === void 0 ? "" : _ref$name,
192
105
  _ref$mode = _ref.mode,
193
106
  mode = _ref$mode === void 0 ? "file" : _ref$mode,
194
107
  _ref$label = _ref.label,
195
108
  label = _ref$label === void 0 ? "" : _ref$label,
109
+ buttonLabel = _ref.buttonLabel,
110
+ dropAreaLabel = _ref.dropAreaLabel,
196
111
  _ref$helperText = _ref.helperText,
197
112
  helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
198
113
  accept = _ref.accept,
@@ -207,7 +122,8 @@ var DxcFileInput = function DxcFileInput(_ref) {
207
122
  callbackFile = _ref.callbackFile,
208
123
  value = _ref.value,
209
124
  margin = _ref.margin,
210
- tabIndex = _ref.tabIndex;
125
+ _ref$tabIndex = _ref.tabIndex,
126
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
211
127
 
212
128
  var _useState = (0, _react.useState)(false),
213
129
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
@@ -224,57 +140,14 @@ var DxcFileInput = function DxcFileInput(_ref) {
224
140
  fileInputId = _useState6[0];
225
141
 
226
142
  var colorsTheme = (0, _useTheme["default"])();
227
- (0, _react.useEffect)(function () {
228
- if (value) {
229
- setFiles(value);
230
- } else {
231
- setFiles([]);
232
- }
233
- }, [value]);
234
-
235
- var handleClick = function handleClick() {
236
- document.getElementById(fileInputId).click();
237
- };
143
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
238
144
 
239
145
  var checkFileSize = function checkFileSize(file) {
240
- if (file.size < minSize) {
241
- return "File size must be greater than min size.";
242
- }
243
-
244
- if (file.size > maxSize) {
245
- return "File size must be less than max size.";
246
- }
247
- };
248
-
249
- var getFilePreview = function getFilePreview(file) {
250
- if (file.type.includes("video")) {
251
- return videoIcon;
252
- }
253
-
254
- if (file.type.includes("audio")) {
255
- return audioIcon;
256
- }
257
-
258
- if (file.type.includes("image")) {
259
- return new Promise(function (resolve) {
260
- var reader = new FileReader();
261
- reader.readAsDataURL(file);
262
-
263
- reader.onload = function (e) {
264
- resolve(e.target.result);
265
- };
266
- });
267
- }
268
-
269
- return fileIcon;
146
+ if (file.size < minSize) return translatedLabels.fileInput.fileSizeGreaterThanErrorMessage;else if (file.size > maxSize) return translatedLabels.fileInput.fileSizeLessThanErrorMessage;
270
147
  };
271
148
 
272
- var getFilesToAdd =
273
- /*#__PURE__*/
274
- function () {
275
- var _ref2 = (0, _asyncToGenerator2["default"])(
276
- /*#__PURE__*/
277
- _regenerator["default"].mark(function _callee(selectedFiles) {
149
+ var getFilesToAdd = /*#__PURE__*/function () {
150
+ var _ref2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(selectedFiles) {
278
151
  var filesToAdd;
279
152
  return _regenerator["default"].wrap(function _callee$(_context) {
280
153
  while (1) {
@@ -284,10 +157,10 @@ var DxcFileInput = function DxcFileInput(_ref) {
284
157
  return Promise.all(selectedFiles.map(function (selectedFile) {
285
158
  return getFilePreview(selectedFile);
286
159
  })).then(function (previews) {
287
- return selectedFiles.map(function (selectedFile, index) {
160
+ return selectedFiles.map(function (file, index) {
288
161
  var fileInfo = {
289
- file: selectedFile,
290
- error: checkFileSize(selectedFile),
162
+ file: file,
163
+ error: checkFileSize(file),
291
164
  preview: previews[index]
292
165
  };
293
166
  return fileInfo;
@@ -311,12 +184,8 @@ var DxcFileInput = function DxcFileInput(_ref) {
311
184
  };
312
185
  }();
313
186
 
314
- var addFile =
315
- /*#__PURE__*/
316
- function () {
317
- var _ref3 = (0, _asyncToGenerator2["default"])(
318
- /*#__PURE__*/
319
- _regenerator["default"].mark(function _callee2(selectedFiles) {
187
+ var addFile = /*#__PURE__*/function () {
188
+ var _ref3 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(selectedFiles) {
320
189
  var filesToAdd, finalFiles, fileToAdd;
321
190
  return _regenerator["default"].wrap(function _callee2$(_context2) {
322
191
  while (1) {
@@ -333,11 +202,7 @@ var DxcFileInput = function DxcFileInput(_ref) {
333
202
  case 3:
334
203
  filesToAdd = _context2.sent;
335
204
  finalFiles = [].concat((0, _toConsumableArray2["default"])(files), (0, _toConsumableArray2["default"])(filesToAdd));
336
-
337
- if (typeof callbackFile === "function") {
338
- callbackFile(finalFiles);
339
- }
340
-
205
+ callbackFile === null || callbackFile === void 0 ? void 0 : callbackFile(finalFiles);
341
206
  _context2.next = 19;
342
207
  break;
343
208
 
@@ -364,10 +229,7 @@ var DxcFileInput = function DxcFileInput(_ref) {
364
229
 
365
230
  case 17:
366
231
  fileToAdd = _context2.t0;
367
-
368
- if (typeof callbackFile === "function") {
369
- callbackFile(fileToAdd);
370
- }
232
+ callbackFile === null || callbackFile === void 0 ? void 0 : callbackFile(fileToAdd);
371
233
 
372
234
  case 19:
373
235
  case "end":
@@ -390,17 +252,18 @@ var DxcFileInput = function DxcFileInput(_ref) {
390
252
  addFile(filesArray);
391
253
  };
392
254
 
393
- var onDelete = function onDelete(fileName) {
255
+ var onDelete = (0, _react.useCallback)(function (fileName) {
394
256
  var filesCopy = (0, _toConsumableArray2["default"])(files);
395
257
  var fileToRemove = filesCopy.find(function (file) {
396
258
  return file.file.name === fileName;
397
259
  });
398
260
  var fileIndex = filesCopy.indexOf(fileToRemove);
399
261
  filesCopy.splice(fileIndex, 1);
262
+ callbackFile === null || callbackFile === void 0 ? void 0 : callbackFile(filesCopy);
263
+ }, [files, callbackFile]);
400
264
 
401
- if (typeof callbackFile === "function") {
402
- callbackFile(filesCopy);
403
- }
265
+ var handleClick = function handleClick() {
266
+ document.getElementById(fileInputId).click();
404
267
  };
405
268
 
406
269
  var handleDrag = function handleDrag(e) {
@@ -409,18 +272,14 @@ var DxcFileInput = function DxcFileInput(_ref) {
409
272
  };
410
273
 
411
274
  var handleDragIn = function handleDragIn(e) {
412
- e.preventDefault();
413
- e.stopPropagation();
275
+ var _e$dataTransfer$items;
414
276
 
415
- if (e.dataTransfer.items && e.dataTransfer.items.length > 0) {
416
- setIsDragging(true);
417
- }
277
+ if (((_e$dataTransfer$items = e.dataTransfer.items) === null || _e$dataTransfer$items === void 0 ? void 0 : _e$dataTransfer$items.length) > 0) setIsDragging(true);
418
278
  };
419
279
 
420
280
  var handleDragOut = function handleDragOut(e) {
421
- e.preventDefault();
422
- e.stopPropagation();
423
- setIsDragging(false);
281
+ // only if dragged items leave container (outside, not to childs)
282
+ if (!e.currentTarget.contains(e.relatedTarget)) setIsDragging(false);
424
283
  };
425
284
 
426
285
  var handleDrop = function handleDrop(e) {
@@ -429,7 +288,7 @@ var DxcFileInput = function DxcFileInput(_ref) {
429
288
  setIsDragging(false);
430
289
  var filesObject = e.dataTransfer.files;
431
290
 
432
- if (filesObject && filesObject.length > 0) {
291
+ if ((filesObject === null || filesObject === void 0 ? void 0 : filesObject.length) > 0) {
433
292
  var filesArray = Object.keys(filesObject).map(function (key) {
434
293
  return filesObject[key];
435
294
  });
@@ -437,52 +296,129 @@ var DxcFileInput = function DxcFileInput(_ref) {
437
296
  }
438
297
  };
439
298
 
440
- return _react["default"].createElement(_styledComponents.ThemeProvider, {
299
+ (0, _react.useEffect)(function () {
300
+ var getFiles = /*#__PURE__*/function () {
301
+ var _ref4 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4() {
302
+ var valueFiles;
303
+ return _regenerator["default"].wrap(function _callee4$(_context4) {
304
+ while (1) {
305
+ switch (_context4.prev = _context4.next) {
306
+ case 0:
307
+ if (!value) {
308
+ _context4.next = 5;
309
+ break;
310
+ }
311
+
312
+ _context4.next = 3;
313
+ return Promise.all(value.map( /*#__PURE__*/function () {
314
+ var _ref5 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3(file) {
315
+ var preview;
316
+ return _regenerator["default"].wrap(function _callee3$(_context3) {
317
+ while (1) {
318
+ switch (_context3.prev = _context3.next) {
319
+ case 0:
320
+ if (!file.preview) {
321
+ _context3.next = 4;
322
+ break;
323
+ }
324
+
325
+ return _context3.abrupt("return", file);
326
+
327
+ case 4:
328
+ _context3.next = 6;
329
+ return getFilePreview(file.file);
330
+
331
+ case 6:
332
+ preview = _context3.sent;
333
+ return _context3.abrupt("return", _objectSpread(_objectSpread({}, file), {}, {
334
+ preview: preview
335
+ }));
336
+
337
+ case 8:
338
+ case "end":
339
+ return _context3.stop();
340
+ }
341
+ }
342
+ }, _callee3);
343
+ }));
344
+
345
+ return function (_x3) {
346
+ return _ref5.apply(this, arguments);
347
+ };
348
+ }()));
349
+
350
+ case 3:
351
+ valueFiles = _context4.sent;
352
+ setFiles(valueFiles);
353
+
354
+ case 5:
355
+ case "end":
356
+ return _context4.stop();
357
+ }
358
+ }
359
+ }, _callee4);
360
+ }));
361
+
362
+ return function getFiles() {
363
+ return _ref4.apply(this, arguments);
364
+ };
365
+ }();
366
+
367
+ getFiles();
368
+ }, [value]);
369
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
441
370
  theme: colorsTheme.fileInput
442
- }, _react["default"].createElement(FileInputContainer, {
371
+ }, /*#__PURE__*/_react["default"].createElement(FileInputContainer, {
443
372
  margin: margin,
444
373
  name: name,
445
- tabIndex: tabIndex
446
- }, _react["default"].createElement(Label, {
374
+ ref: ref
375
+ }, /*#__PURE__*/_react["default"].createElement(Label, {
447
376
  htmlFor: fileInputId,
448
377
  disabled: disabled
449
- }, label), _react["default"].createElement(HelperText, {
378
+ }, label), /*#__PURE__*/_react["default"].createElement(HelperText, {
450
379
  disabled: disabled
451
- }, helperText), mode === "file" ? _react["default"].createElement(FileContainer, {
380
+ }, helperText), mode === "file" ? /*#__PURE__*/_react["default"].createElement(FileContainer, {
381
+ singleFileMode: !multiple && files.length === 1
382
+ }, /*#__PURE__*/_react["default"].createElement(ValueInput, {
383
+ id: fileInputId,
384
+ type: "file",
385
+ accept: accept,
452
386
  multiple: multiple,
453
- files: files
454
- }, _react["default"].createElement(ButtonErrorContainer, null, _react["default"].createElement(_Button["default"], {
387
+ onChange: selectFiles,
388
+ name: name,
389
+ disabled: disabled,
390
+ readOnly: true,
391
+ "aria-hidden": "true"
392
+ }), /*#__PURE__*/_react["default"].createElement(_Button["default"], {
455
393
  mode: "secondary",
456
- label: "Select files",
394
+ label: buttonLabel !== null && buttonLabel !== void 0 ? buttonLabel : multiple ? translatedLabels.fileInput.multipleButtonLabelDefault : translatedLabels.fileInput.singleButtonLabelDefault,
457
395
  onClick: handleClick,
458
396
  disabled: disabled,
459
- size: "medium",
397
+ size: "fitContent",
460
398
  tabIndex: tabIndex
461
- }), _react["default"].createElement("input", {
462
- id: fileInputId,
463
- type: "file",
464
- accept: accept,
465
- multiple: multiple,
466
- onChange: selectFiles
467
- }), files.length === 1 && files.map(function (file) {
468
- return file.error && mode === "file" && !multiple && _react["default"].createElement(ErrorMessage, null, file.error);
469
- })), files.map(function (file) {
470
- return _react["default"].createElement(_react["default"].Fragment, null, _react["default"].createElement(FileItemContainer, {
471
- mode: mode,
472
- multiple: multiple,
473
- files: files
474
- }, _react["default"].createElement(_FileItem["default"], {
475
- mode: mode,
476
- multiple: multiple,
477
- name: file.file.name,
399
+ }), files.length > 0 && /*#__PURE__*/_react["default"].createElement(FileItemListContainer, null, files.map(function (file, index) {
400
+ return /*#__PURE__*/_react["default"].createElement(_FileItem["default"], {
401
+ fileName: file.file.name,
478
402
  error: file.error,
403
+ singleFileMode: !multiple && files.length === 1,
479
404
  showPreview: mode === "file" && !multiple ? false : showPreview,
480
- numFiles: files.length,
481
405
  preview: file.preview,
482
406
  type: file.file.type,
483
- onDelete: onDelete
484
- })));
485
- })) : _react["default"].createElement(Container, null, _react["default"].createElement(DragDropArea, {
407
+ onDelete: onDelete,
408
+ tabIndex: tabIndex,
409
+ key: "file-".concat(index)
410
+ });
411
+ }))) : /*#__PURE__*/_react["default"].createElement(Container, null, /*#__PURE__*/_react["default"].createElement(ValueInput, {
412
+ id: fileInputId,
413
+ type: "file",
414
+ accept: accept,
415
+ multiple: multiple,
416
+ onChange: selectFiles,
417
+ name: name,
418
+ disabled: disabled,
419
+ readOnly: true,
420
+ "aria-hidden": "true"
421
+ }), /*#__PURE__*/_react["default"].createElement(DragDropArea, {
486
422
  isDragging: isDragging,
487
423
  disabled: disabled,
488
424
  mode: mode,
@@ -490,42 +426,32 @@ var DxcFileInput = function DxcFileInput(_ref) {
490
426
  onDragEnter: handleDragIn,
491
427
  onDragOver: handleDrag,
492
428
  onDragLeave: handleDragOut
493
- }, _react["default"].createElement(ButtonContainer, {
494
- mode: mode
495
- }, _react["default"].createElement(_Button["default"], {
429
+ }, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
496
430
  mode: "secondary",
497
- label: "Select",
431
+ label: buttonLabel !== null && buttonLabel !== void 0 ? buttonLabel : translatedLabels.fileInput.dropAreaButtonLabelDefault,
498
432
  onClick: handleClick,
499
433
  disabled: disabled,
500
434
  size: "fitContent"
501
- }), _react["default"].createElement("input", {
502
- id: fileInputId,
503
- type: "file",
504
- accept: accept,
505
- multiple: multiple,
506
- onChange: selectFiles
507
- })), _react["default"].createElement(DropLabel, {
435
+ }), mode === "dropzone" ? /*#__PURE__*/_react["default"].createElement(DropzoneLabel, {
508
436
  disabled: disabled
509
- }, "or drop files")), files.map(function (file) {
510
- return _react["default"].createElement(FileItemContainer, {
511
- mode: mode,
512
- multiple: multiple,
513
- files: files
514
- }, _react["default"].createElement(_FileItem["default"], {
515
- mode: mode,
516
- multiple: multiple,
517
- name: file.file.name,
437
+ }, dropAreaLabel !== null && dropAreaLabel !== void 0 ? dropAreaLabel : multiple ? translatedLabels.fileInput.multipleDropAreaLabelDefault : translatedLabels.fileInput.singleDropAreaLabelDefault) : /*#__PURE__*/_react["default"].createElement(FiledropLabel, {
438
+ disabled: disabled
439
+ }, dropAreaLabel !== null && dropAreaLabel !== void 0 ? dropAreaLabel : multiple ? translatedLabels.fileInput.multipleDropAreaLabelDefault : translatedLabels.fileInput.singleDropAreaLabelDefault)), files.length > 0 && /*#__PURE__*/_react["default"].createElement(FileItemListContainer, null, files.map(function (file, index) {
440
+ return /*#__PURE__*/_react["default"].createElement(_FileItem["default"], {
441
+ fileName: file.file.name,
518
442
  error: file.error,
443
+ singleFileMode: false,
519
444
  showPreview: showPreview,
520
- numFiles: files.length,
521
445
  preview: file.preview,
522
446
  type: file.file.type,
523
- onDelete: onDelete
524
- }));
525
- }))));
526
- };
447
+ onDelete: onDelete,
448
+ tabIndex: tabIndex,
449
+ key: "file-".concat(index)
450
+ });
451
+ }))), mode === "file" && !multiple && files.length === 1 && files[0].error && /*#__PURE__*/_react["default"].createElement(ErrorMessage, null, files[0].error)));
452
+ });
527
453
 
528
- var FileInputContainer = _styledComponents["default"].div(_templateObject(), function (props) {
454
+ var FileInputContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n width: fit-content;\n"])), function (props) {
529
455
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
530
456
  }, function (props) {
531
457
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
@@ -537,7 +463,7 @@ var FileInputContainer = _styledComponents["default"].div(_templateObject(), fun
537
463
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
538
464
  });
539
465
 
540
- var Label = _styledComponents["default"].label(_templateObject2(), function (props) {
466
+ var Label = _styledComponents["default"].label(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n line-height: ", ";\n"])), function (props) {
541
467
  return props.disabled ? props.theme.disabledLabelFontColor : props.theme.labelFontColor;
542
468
  }, function (props) {
543
469
  return props.theme.labelFontFamily;
@@ -549,7 +475,7 @@ var Label = _styledComponents["default"].label(_templateObject2(), function (pro
549
475
  return props.theme.labelLineHeight;
550
476
  });
551
477
 
552
- var HelperText = _styledComponents["default"].span(_templateObject3(), function (props) {
478
+ var HelperText = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n line-height: ", ";\n"])), function (props) {
553
479
  return props.disabled ? props.theme.disabledHelperTextFontcolor : props.theme.helperTextFontColor;
554
480
  }, function (props) {
555
481
  return props.theme.helperTextFontFamily;
@@ -561,35 +487,35 @@ var HelperText = _styledComponents["default"].span(_templateObject3(), function
561
487
  return props.theme.helperTextLineHeight;
562
488
  });
563
489
 
564
- var DragDropArea = _styledComponents["default"].div(_templateObject4(), function (props) {
565
- return props.mode === "filedrop" ? "calc(48px - 2px)" : "calc(160px - 2px)";
490
+ var FileContainer = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n ", "\n margin-top: 0.25rem;\n"])), function (props) {
491
+ return props.singleFileMode ? "flex-direction: row; column-gap: 0.25rem;" : "flex-direction: column; row-gap: 0.25rem;";
492
+ });
493
+
494
+ var ValueInput = _styledComponents["default"].input(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: none;\n"])));
495
+
496
+ var FileItemListContainer = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n row-gap: 0.25rem;\n"])));
497
+
498
+ var Container = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n row-gap: 0.25rem;\n margin-top: 0.25rem;\n"])));
499
+
500
+ var DragDropArea = _styledComponents["default"].div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n box-sizing: border-box;\n display: flex;\n ", "\n align-items: center;\n width: 320px;\n padding: ", ";\n overflow: hidden;\n box-shadow: 0 0 0 2px transparent;\n border-radius: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n ", "\n cursor: ", ";\n"])), function (props) {
501
+ return props.mode === "filedrop" ? "flex-direction: row; column-gap: 0.75rem; height: 48px;" : "justify-content: center; flex-direction: column; row-gap: 0.5rem; height: 160px;";
566
502
  }, function (props) {
567
- return props.mode === "filedrop" ? "row" : "column";
503
+ return props.mode === "filedrop" ? "calc(4px - ".concat(props.theme.dropBorderThickness, ") 1rem calc(4px - ").concat(props.theme.dropBorderThickness, ") calc(4px - ").concat(props.theme.dropBorderThickness, ")") : "1rem";
568
504
  }, function (props) {
569
505
  return props.theme.dropBorderRadius;
570
506
  }, function (props) {
571
- return !props.isDragging ? props.theme.dropBorderThickness : "2px";
507
+ return props.theme.dropBorderThickness;
572
508
  }, function (props) {
573
- return !props.isDragging ? props.theme.dropBorderStyle : "solid";
509
+ return props.theme.dropBorderStyle;
574
510
  }, function (props) {
575
- return props.isDragging && props.theme.dragoverDropBackgroundColor;
511
+ return props.disabled ? props.theme.disabledDropBorderColor : props.theme.dropBorderColor;
576
512
  }, function (props) {
577
- return props.disabled ? props.theme.disabledDropBorderColor : props.isDragging ? props.theme.focusDropBorderColor : props.theme.dropBorderColor;
513
+ return props.isDragging && "\n background-color: ".concat(props.theme.dragoverDropBackgroundColor, ";\n border-color: transparent;\n box-shadow: 0 0 0 2px ").concat(props.theme.focusDropBorderColor, ";\n ");
578
514
  }, function (props) {
579
515
  return props.disabled && "not-allowed";
580
516
  });
581
517
 
582
- var FileContainer = _styledComponents["default"].div(_templateObject5(), function (props) {
583
- return props.multiple || props.files.length > 1 ? "column" : "row";
584
- });
585
-
586
- var ButtonErrorContainer = _styledComponents["default"].div(_templateObject6());
587
-
588
- var ButtonContainer = _styledComponents["default"].div(_templateObject7(), function (props) {
589
- return props.mode === "filedrop" ? "2px 12px 2px 2px" : "47px 122px 8px 122px";
590
- });
591
-
592
- var DropLabel = _styledComponents["default"].span(_templateObject8(), function (props) {
518
+ var DropzoneLabel = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n display: -webkit-box;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n -webkit-line-clamp: 3;\n text-align: center;\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n"])), function (props) {
593
519
  return props.disabled ? props.theme.disabledDropLabelFontColor : props.theme.dropLabelFontColor;
594
520
  }, function (props) {
595
521
  return props.theme.dropLabelFontFamily;
@@ -599,15 +525,17 @@ var DropLabel = _styledComponents["default"].span(_templateObject8(), function (
599
525
  return props.theme.dropLabelFontWeight;
600
526
  });
601
527
 
602
- var Container = _styledComponents["default"].div(_templateObject9());
603
-
604
- var FileItemContainer = _styledComponents["default"].div(_templateObject10(), function (props) {
605
- return (props.multiple || props.files.length > 1 || props.mode !== "file") && "4px";
528
+ var FiledropLabel = _styledComponents["default"].span(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n"])), function (props) {
529
+ return props.disabled ? props.theme.disabledDropLabelFontColor : props.theme.dropLabelFontColor;
530
+ }, function (props) {
531
+ return props.theme.dropLabelFontFamily;
606
532
  }, function (props) {
607
- return props.mode === "file" && props.files.length === 1 && !props.multiple && "4px";
533
+ return props.theme.dropLabelFontSize;
534
+ }, function (props) {
535
+ return props.theme.dropLabelFontWeight;
608
536
  });
609
537
 
610
- var ErrorMessage = _styledComponents["default"].div(_templateObject11(), function (props) {
538
+ var ErrorMessage = _styledComponents["default"].div(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n line-height: ", ";\n margin-top: 0.25rem;\n"])), function (props) {
611
539
  return props.theme.errorMessageFontColor;
612
540
  }, function (props) {
613
541
  return props.theme.errorMessageFontFamily;
@@ -619,26 +547,5 @@ var ErrorMessage = _styledComponents["default"].div(_templateObject11(), functio
619
547
  return props.theme.errorMessageLineHeight;
620
548
  });
621
549
 
622
- DxcFileInput.propTypes = {
623
- name: _propTypes["default"].string,
624
- mode: _propTypes["default"].oneOf(["file", "filedrop", "dropzone"]),
625
- label: _propTypes["default"].string,
626
- helperText: _propTypes["default"].string,
627
- accept: _propTypes["default"].array,
628
- maxSize: _propTypes["default"].number,
629
- minSize: _propTypes["default"].number,
630
- multiple: _propTypes["default"].bool,
631
- showPreview: _propTypes["default"].bool,
632
- disabled: _propTypes["default"].bool,
633
- callbackFile: _propTypes["default"].func,
634
- value: _propTypes["default"].array,
635
- tabIndex: _propTypes["default"].number,
636
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
637
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
638
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
639
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
640
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
641
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
642
- };
643
550
  var _default = DxcFileInput;
644
551
  exports["default"] = _default;