@dxc-technology/halstack-react 0.0.0-b39a1d2 → 0.0.0-b3b8a35

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 (342) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +7 -22
  3. package/HalstackContext.d.ts +1353 -0
  4. package/HalstackContext.js +310 -0
  5. package/README.md +47 -0
  6. package/accordion/Accordion.d.ts +1 -1
  7. package/accordion/Accordion.js +119 -192
  8. package/accordion/Accordion.stories.tsx +283 -0
  9. package/accordion/Accordion.test.js +56 -0
  10. package/accordion/types.d.ts +12 -23
  11. package/accordion-group/AccordionGroup.d.ts +5 -4
  12. package/accordion-group/AccordionGroup.js +39 -108
  13. package/accordion-group/AccordionGroup.stories.tsx +95 -68
  14. package/accordion-group/AccordionGroup.test.js +98 -0
  15. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  16. package/accordion-group/AccordionGroupAccordion.js +31 -0
  17. package/accordion-group/types.d.ts +18 -23
  18. package/alert/Alert.js +24 -57
  19. package/alert/Alert.stories.tsx +28 -0
  20. package/alert/Alert.test.js +75 -0
  21. package/alert/types.d.ts +5 -5
  22. package/badge/Badge.d.ts +4 -0
  23. package/badge/Badge.js +9 -20
  24. package/badge/types.d.ts +5 -0
  25. package/bleed/Bleed.d.ts +3 -0
  26. package/bleed/Bleed.js +43 -0
  27. package/bleed/Bleed.stories.tsx +342 -0
  28. package/bleed/types.d.ts +37 -0
  29. package/box/Box.d.ts +1 -1
  30. package/box/Box.js +31 -79
  31. package/box/Box.stories.tsx +38 -51
  32. package/box/Box.test.js +13 -0
  33. package/box/types.d.ts +3 -14
  34. package/bulleted-list/BulletedList.d.ts +7 -0
  35. package/bulleted-list/BulletedList.js +99 -0
  36. package/bulleted-list/BulletedList.stories.tsx +116 -0
  37. package/bulleted-list/types.d.ts +38 -0
  38. package/button/Button.d.ts +1 -1
  39. package/button/Button.js +63 -121
  40. package/button/Button.stories.tsx +164 -96
  41. package/button/Button.test.js +36 -0
  42. package/button/types.d.ts +12 -12
  43. package/card/Card.d.ts +1 -1
  44. package/card/Card.js +59 -103
  45. package/card/Card.stories.tsx +13 -43
  46. package/card/Card.test.js +39 -0
  47. package/card/types.d.ts +6 -11
  48. package/checkbox/Checkbox.d.ts +2 -2
  49. package/checkbox/Checkbox.js +147 -180
  50. package/checkbox/Checkbox.stories.tsx +166 -136
  51. package/checkbox/Checkbox.test.js +199 -0
  52. package/checkbox/types.d.ts +19 -7
  53. package/chip/Chip.d.ts +4 -0
  54. package/chip/Chip.js +48 -148
  55. package/chip/Chip.stories.tsx +123 -30
  56. package/chip/Chip.test.js +41 -0
  57. package/chip/types.d.ts +45 -0
  58. package/chip/types.js +5 -0
  59. package/common/OpenSans.css +68 -80
  60. package/common/coreTokens.d.ts +237 -0
  61. package/common/coreTokens.js +184 -0
  62. package/common/utils.d.ts +1 -0
  63. package/common/utils.js +6 -12
  64. package/common/variables.d.ts +1499 -0
  65. package/common/variables.js +1119 -1326
  66. package/container/Container.d.ts +4 -0
  67. package/container/Container.js +187 -0
  68. package/container/Container.stories.tsx +214 -0
  69. package/container/types.d.ts +74 -0
  70. package/container/types.js +5 -0
  71. package/date-input/Calendar.d.ts +4 -0
  72. package/date-input/Calendar.js +214 -0
  73. package/date-input/DateInput.js +175 -313
  74. package/date-input/DateInput.stories.tsx +203 -56
  75. package/date-input/DateInput.test.js +808 -0
  76. package/date-input/DatePicker.d.ts +4 -0
  77. package/date-input/DatePicker.js +115 -0
  78. package/date-input/Icons.d.ts +6 -0
  79. package/date-input/Icons.js +58 -0
  80. package/date-input/YearPicker.d.ts +4 -0
  81. package/date-input/YearPicker.js +100 -0
  82. package/date-input/types.d.ts +86 -22
  83. package/dialog/Dialog.d.ts +1 -1
  84. package/dialog/Dialog.js +72 -130
  85. package/dialog/Dialog.stories.tsx +154 -171
  86. package/dialog/Dialog.test.js +307 -0
  87. package/dialog/types.d.ts +18 -25
  88. package/dropdown/Dropdown.d.ts +1 -1
  89. package/dropdown/Dropdown.js +245 -328
  90. package/dropdown/Dropdown.stories.tsx +438 -0
  91. package/dropdown/Dropdown.test.js +599 -0
  92. package/dropdown/DropdownMenu.d.ts +4 -0
  93. package/dropdown/DropdownMenu.js +63 -0
  94. package/dropdown/DropdownMenuItem.d.ts +4 -0
  95. package/dropdown/DropdownMenuItem.js +67 -0
  96. package/dropdown/types.d.ts +37 -28
  97. package/file-input/FileInput.d.ts +2 -2
  98. package/file-input/FileInput.js +231 -284
  99. package/file-input/FileInput.stories.tsx +618 -0
  100. package/file-input/FileInput.test.js +408 -0
  101. package/file-input/FileItem.d.ts +4 -14
  102. package/file-input/FileItem.js +52 -101
  103. package/file-input/types.d.ts +53 -11
  104. package/flex/Flex.d.ts +4 -0
  105. package/flex/Flex.js +57 -0
  106. package/flex/Flex.stories.tsx +112 -0
  107. package/flex/types.d.ts +97 -0
  108. package/flex/types.js +5 -0
  109. package/footer/Footer.d.ts +1 -1
  110. package/footer/Footer.js +61 -192
  111. package/footer/{Footer.stories.jsx → Footer.stories.tsx} +38 -37
  112. package/footer/Footer.test.js +85 -0
  113. package/footer/Icons.d.ts +2 -0
  114. package/footer/Icons.js +4 -9
  115. package/footer/types.d.ts +36 -33
  116. package/grid/Grid.d.ts +7 -0
  117. package/grid/Grid.js +76 -0
  118. package/grid/Grid.stories.tsx +219 -0
  119. package/grid/types.d.ts +115 -0
  120. package/grid/types.js +5 -0
  121. package/header/Header.d.ts +4 -3
  122. package/header/Header.js +106 -199
  123. package/header/Header.stories.tsx +152 -63
  124. package/header/Header.test.js +66 -0
  125. package/header/Icons.d.ts +2 -0
  126. package/header/Icons.js +4 -9
  127. package/header/types.d.ts +5 -20
  128. package/heading/Heading.js +11 -33
  129. package/heading/Heading.stories.tsx +3 -2
  130. package/heading/Heading.test.js +169 -0
  131. package/heading/types.d.ts +7 -7
  132. package/image/Image.d.ts +4 -0
  133. package/image/Image.js +70 -0
  134. package/image/Image.stories.tsx +127 -0
  135. package/image/types.d.ts +72 -0
  136. package/image/types.js +5 -0
  137. package/inset/Inset.d.ts +3 -0
  138. package/inset/Inset.js +43 -0
  139. package/inset/Inset.stories.tsx +230 -0
  140. package/inset/types.d.ts +37 -0
  141. package/inset/types.js +5 -0
  142. package/layout/ApplicationLayout.d.ts +20 -0
  143. package/layout/ApplicationLayout.js +83 -184
  144. package/layout/ApplicationLayout.stories.tsx +162 -0
  145. package/layout/Icons.d.ts +8 -0
  146. package/layout/Icons.js +51 -48
  147. package/layout/SidenavContext.d.ts +5 -0
  148. package/layout/SidenavContext.js +13 -0
  149. package/layout/types.d.ts +41 -0
  150. package/layout/types.js +5 -0
  151. package/link/Link.d.ts +3 -2
  152. package/link/Link.js +65 -111
  153. package/link/Link.stories.tsx +159 -52
  154. package/link/Link.test.js +63 -0
  155. package/link/types.d.ts +15 -35
  156. package/main.d.ts +16 -13
  157. package/main.js +71 -91
  158. package/nav-tabs/NavTabs.d.ts +8 -0
  159. package/nav-tabs/NavTabs.js +90 -0
  160. package/nav-tabs/NavTabs.stories.tsx +274 -0
  161. package/nav-tabs/NavTabs.test.js +75 -0
  162. package/nav-tabs/Tab.d.ts +4 -0
  163. package/nav-tabs/Tab.js +117 -0
  164. package/nav-tabs/types.d.ts +52 -0
  165. package/nav-tabs/types.js +5 -0
  166. package/number-input/NumberInput.d.ts +7 -0
  167. package/number-input/NumberInput.js +28 -47
  168. package/number-input/NumberInput.stories.tsx +44 -28
  169. package/number-input/NumberInput.test.js +830 -0
  170. package/number-input/types.d.ts +28 -15
  171. package/package.json +45 -44
  172. package/paginator/Icons.d.ts +5 -0
  173. package/paginator/Icons.js +21 -47
  174. package/paginator/Paginator.js +35 -95
  175. package/paginator/Paginator.stories.tsx +24 -0
  176. package/paginator/Paginator.test.js +335 -0
  177. package/paginator/types.d.ts +3 -3
  178. package/paragraph/Paragraph.d.ts +5 -0
  179. package/paragraph/Paragraph.js +27 -0
  180. package/paragraph/Paragraph.stories.tsx +27 -0
  181. package/password-input/Icons.d.ts +6 -0
  182. package/password-input/Icons.js +35 -0
  183. package/password-input/PasswordInput.js +58 -125
  184. package/password-input/PasswordInput.stories.tsx +3 -34
  185. package/password-input/PasswordInput.test.js +198 -0
  186. package/password-input/types.d.ts +21 -17
  187. package/progress-bar/ProgressBar.js +69 -89
  188. package/progress-bar/ProgressBar.stories.tsx +93 -0
  189. package/progress-bar/ProgressBar.test.js +93 -0
  190. package/progress-bar/types.d.ts +3 -3
  191. package/quick-nav/QuickNav.d.ts +4 -0
  192. package/quick-nav/QuickNav.js +94 -0
  193. package/quick-nav/QuickNav.stories.tsx +356 -0
  194. package/quick-nav/types.d.ts +21 -0
  195. package/quick-nav/types.js +5 -0
  196. package/radio-group/Radio.d.ts +4 -0
  197. package/radio-group/Radio.js +124 -0
  198. package/radio-group/RadioGroup.d.ts +4 -0
  199. package/radio-group/RadioGroup.js +235 -0
  200. package/radio-group/RadioGroup.stories.tsx +214 -0
  201. package/radio-group/RadioGroup.test.js +756 -0
  202. package/radio-group/types.d.ts +114 -0
  203. package/radio-group/types.js +5 -0
  204. package/resultset-table/Icons.d.ts +7 -0
  205. package/resultset-table/Icons.js +47 -0
  206. package/resultset-table/ResultsetTable.js +159 -0
  207. package/resultset-table/ResultsetTable.stories.tsx +300 -0
  208. package/resultset-table/ResultsetTable.test.js +305 -0
  209. package/{resultsetTable → resultset-table}/types.d.ts +9 -9
  210. package/resultset-table/types.js +5 -0
  211. package/select/Icons.d.ts +10 -0
  212. package/select/Icons.js +89 -0
  213. package/select/Listbox.d.ts +4 -0
  214. package/select/Listbox.js +143 -0
  215. package/select/Option.d.ts +4 -0
  216. package/select/Option.js +80 -0
  217. package/select/Select.d.ts +4 -0
  218. package/select/Select.js +221 -504
  219. package/select/Select.stories.tsx +603 -204
  220. package/select/Select.test.js +2334 -0
  221. package/select/types.d.ts +209 -0
  222. package/select/types.js +5 -0
  223. package/sidenav/Icons.d.ts +7 -0
  224. package/sidenav/Icons.js +47 -0
  225. package/sidenav/Sidenav.d.ts +6 -5
  226. package/sidenav/Sidenav.js +135 -72
  227. package/sidenav/Sidenav.stories.tsx +251 -134
  228. package/sidenav/Sidenav.test.js +37 -0
  229. package/sidenav/types.d.ts +52 -26
  230. package/slider/Slider.d.ts +2 -2
  231. package/slider/Slider.js +147 -170
  232. package/slider/Slider.test.js +254 -0
  233. package/slider/types.d.ts +11 -3
  234. package/spinner/Spinner.js +30 -66
  235. package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +53 -26
  236. package/spinner/Spinner.test.js +55 -0
  237. package/spinner/types.d.ts +3 -3
  238. package/switch/Switch.d.ts +2 -2
  239. package/switch/Switch.js +154 -114
  240. package/switch/Switch.stories.tsx +45 -68
  241. package/switch/Switch.test.js +180 -0
  242. package/switch/types.d.ts +13 -5
  243. package/table/Table.js +9 -28
  244. package/table/{Table.stories.jsx → Table.stories.tsx} +81 -1
  245. package/table/Table.test.js +21 -0
  246. package/table/types.d.ts +8 -8
  247. package/tabs/Tab.d.ts +4 -0
  248. package/tabs/Tab.js +113 -0
  249. package/tabs/Tabs.d.ts +1 -1
  250. package/tabs/Tabs.js +319 -147
  251. package/tabs/Tabs.stories.tsx +122 -17
  252. package/tabs/Tabs.test.js +294 -0
  253. package/tabs/types.d.ts +46 -24
  254. package/tag/Tag.d.ts +1 -1
  255. package/tag/Tag.js +44 -86
  256. package/tag/Tag.stories.tsx +38 -28
  257. package/tag/Tag.test.js +49 -0
  258. package/tag/types.d.ts +25 -16
  259. package/text-input/Icons.d.ts +8 -0
  260. package/text-input/Icons.js +56 -0
  261. package/text-input/Suggestion.d.ts +4 -0
  262. package/text-input/Suggestion.js +67 -0
  263. package/text-input/Suggestions.d.ts +4 -0
  264. package/text-input/Suggestions.js +89 -0
  265. package/text-input/TextInput.js +308 -502
  266. package/text-input/TextInput.stories.tsx +280 -271
  267. package/text-input/TextInput.test.js +1739 -0
  268. package/text-input/types.d.ts +71 -25
  269. package/textarea/Textarea.d.ts +4 -0
  270. package/textarea/Textarea.js +91 -167
  271. package/textarea/Textarea.stories.tsx +175 -0
  272. package/textarea/Textarea.test.js +406 -0
  273. package/textarea/types.d.ts +141 -0
  274. package/textarea/types.js +5 -0
  275. package/toggle-group/ToggleGroup.d.ts +2 -2
  276. package/toggle-group/ToggleGroup.js +100 -113
  277. package/toggle-group/ToggleGroup.stories.tsx +76 -36
  278. package/toggle-group/ToggleGroup.test.js +137 -0
  279. package/toggle-group/types.d.ts +67 -37
  280. package/typography/Typography.d.ts +4 -0
  281. package/typography/Typography.js +23 -0
  282. package/typography/Typography.stories.tsx +198 -0
  283. package/typography/types.d.ts +18 -0
  284. package/typography/types.js +5 -0
  285. package/useTheme.d.ts +1252 -0
  286. package/useTheme.js +4 -11
  287. package/useTranslatedLabels.d.ts +85 -0
  288. package/useTranslatedLabels.js +14 -0
  289. package/utils/BaseTypography.d.ts +21 -0
  290. package/utils/BaseTypography.js +94 -0
  291. package/utils/FocusLock.d.ts +13 -0
  292. package/utils/FocusLock.js +114 -0
  293. package/wizard/Wizard.d.ts +1 -1
  294. package/wizard/Wizard.js +123 -104
  295. package/wizard/{Wizard.stories.jsx → Wizard.stories.tsx} +48 -19
  296. package/wizard/Wizard.test.js +114 -0
  297. package/wizard/types.d.ts +14 -14
  298. package/ThemeContext.js +0 -246
  299. package/V3Select/V3Select.js +0 -455
  300. package/V3Select/index.d.ts +0 -27
  301. package/V3Textarea/V3Textarea.js +0 -260
  302. package/V3Textarea/index.d.ts +0 -27
  303. package/card/ice-cream.jpg +0 -0
  304. package/chip/index.d.ts +0 -22
  305. package/common/RequiredComponent.js +0 -32
  306. package/date/Date.js +0 -373
  307. package/date/index.d.ts +0 -27
  308. package/input-text/Icons.js +0 -22
  309. package/input-text/InputText.js +0 -611
  310. package/input-text/index.d.ts +0 -36
  311. package/number-input/NumberInputContext.d.ts +0 -4
  312. package/number-input/NumberInputContext.js +0 -19
  313. package/number-input/numberInputContextTypes.d.ts +0 -19
  314. package/progress-bar/ProgressBar.stories.jsx +0 -58
  315. package/radio/Radio.d.ts +0 -4
  316. package/radio/Radio.js +0 -174
  317. package/radio/Radio.stories.tsx +0 -192
  318. package/radio/types.d.ts +0 -54
  319. package/resultsetTable/ResultsetTable.js +0 -251
  320. package/select/index.d.ts +0 -131
  321. package/slider/Slider.stories.tsx +0 -177
  322. package/textarea/Textarea.stories.jsx +0 -135
  323. package/textarea/index.d.ts +0 -127
  324. package/toggle/Toggle.js +0 -186
  325. package/toggle/index.d.ts +0 -21
  326. package/upload/Upload.js +0 -201
  327. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  328. package/upload/buttons-upload/Icons.js +0 -40
  329. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  330. package/upload/dragAndDropArea/Icons.js +0 -39
  331. package/upload/file-upload/FileToUpload.js +0 -115
  332. package/upload/file-upload/Icons.js +0 -66
  333. package/upload/files-upload/FilesToUpload.js +0 -109
  334. package/upload/index.d.ts +0 -15
  335. package/upload/transaction/Icons.js +0 -160
  336. package/upload/transaction/Transaction.js +0 -104
  337. package/upload/transactions/Transactions.js +0 -94
  338. package/wizard/Icons.js +0 -65
  339. /package/{radio → badge}/types.js +0 -0
  340. /package/{resultsetTable → bleed}/types.js +0 -0
  341. /package/{number-input/numberInputContextTypes.js → bulleted-list/types.js} +0 -0
  342. /package/{resultsetTable → resultset-table}/ResultsetTable.d.ts +0 -0
@@ -1,46 +1,31 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  var _typeof3 = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports["default"] = void 0;
11
-
12
9
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
13
-
14
10
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
-
16
11
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
17
-
12
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
18
13
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
19
-
20
14
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
21
-
22
15
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
23
-
24
16
  var _react = _interopRequireWildcard(require("react"));
25
-
26
17
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
27
-
28
18
  var _uuid = require("uuid");
29
-
30
- var _variables = require("../common/variables.js");
31
-
32
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
33
-
19
+ var _variables = require("../common/variables");
20
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
21
+ var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
34
22
  var _Button = _interopRequireDefault(require("../button/Button"));
35
-
36
23
  var _FileItem = _interopRequireDefault(require("./FileItem"));
37
-
38
24
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11;
39
-
40
- 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); }
41
-
42
- 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; }
43
-
25
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
26
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof3(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
27
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
28
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
44
29
  var audioIcon = /*#__PURE__*/_react["default"].createElement("svg", {
45
30
  xmlns: "http://www.w3.org/2000/svg",
46
31
  width: "24",
@@ -53,7 +38,6 @@ var audioIcon = /*#__PURE__*/_react["default"].createElement("svg", {
53
38
  }), /*#__PURE__*/_react["default"].createElement("path", {
54
39
  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"
55
40
  }));
56
-
57
41
  var videoIcon = /*#__PURE__*/_react["default"].createElement("svg", {
58
42
  xmlns: "http://www.w3.org/2000/svg",
59
43
  width: "24",
@@ -66,7 +50,6 @@ var videoIcon = /*#__PURE__*/_react["default"].createElement("svg", {
66
50
  d: "M0 0h24v24H0z",
67
51
  fill: "none"
68
52
  }));
69
-
70
53
  var fileIcon = /*#__PURE__*/_react["default"].createElement("svg", {
71
54
  xmlns: "http://www.w3.org/2000/svg",
72
55
  width: "24",
@@ -79,295 +62,283 @@ var fileIcon = /*#__PURE__*/_react["default"].createElement("svg", {
79
62
  }), /*#__PURE__*/_react["default"].createElement("path", {
80
63
  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"
81
64
  }));
82
-
83
- var DxcFileInput = function DxcFileInput(_ref) {
65
+ var getFilePreview = function getFilePreview(file) {
66
+ 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) {
67
+ var reader = new FileReader();
68
+ reader.readAsDataURL(file);
69
+ reader.onload = function (e) {
70
+ resolve(e.target.result);
71
+ };
72
+ });else return fileIcon;
73
+ };
74
+ var DxcFileInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
84
75
  var _ref$name = _ref.name,
85
- name = _ref$name === void 0 ? "" : _ref$name,
86
- _ref$mode = _ref.mode,
87
- mode = _ref$mode === void 0 ? "file" : _ref$mode,
88
- _ref$label = _ref.label,
89
- label = _ref$label === void 0 ? "" : _ref$label,
90
- _ref$helperText = _ref.helperText,
91
- helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
92
- accept = _ref.accept,
93
- minSize = _ref.minSize,
94
- maxSize = _ref.maxSize,
95
- _ref$showPreview = _ref.showPreview,
96
- showPreview = _ref$showPreview === void 0 ? false : _ref$showPreview,
97
- _ref$multiple = _ref.multiple,
98
- multiple = _ref$multiple === void 0 ? true : _ref$multiple,
99
- _ref$disabled = _ref.disabled,
100
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
101
- callbackFile = _ref.callbackFile,
102
- value = _ref.value,
103
- margin = _ref.margin,
104
- _ref$tabIndex = _ref.tabIndex,
105
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
106
-
76
+ name = _ref$name === void 0 ? "" : _ref$name,
77
+ _ref$mode = _ref.mode,
78
+ mode = _ref$mode === void 0 ? "file" : _ref$mode,
79
+ _ref$label = _ref.label,
80
+ label = _ref$label === void 0 ? "" : _ref$label,
81
+ buttonLabel = _ref.buttonLabel,
82
+ dropAreaLabel = _ref.dropAreaLabel,
83
+ _ref$helperText = _ref.helperText,
84
+ helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
85
+ accept = _ref.accept,
86
+ minSize = _ref.minSize,
87
+ maxSize = _ref.maxSize,
88
+ _ref$showPreview = _ref.showPreview,
89
+ showPreview = _ref$showPreview === void 0 ? false : _ref$showPreview,
90
+ _ref$multiple = _ref.multiple,
91
+ multiple = _ref$multiple === void 0 ? true : _ref$multiple,
92
+ _ref$disabled = _ref.disabled,
93
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
94
+ callbackFile = _ref.callbackFile,
95
+ value = _ref.value,
96
+ margin = _ref.margin,
97
+ _ref$tabIndex = _ref.tabIndex,
98
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
107
99
  var _useState = (0, _react.useState)(false),
108
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
109
- isDragging = _useState2[0],
110
- setIsDragging = _useState2[1];
111
-
100
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
101
+ isDragging = _useState2[0],
102
+ setIsDragging = _useState2[1];
112
103
  var _useState3 = (0, _react.useState)([]),
113
- _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
114
- files = _useState4[0],
115
- setFiles = _useState4[1];
116
-
104
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
105
+ files = _useState4[0],
106
+ setFiles = _useState4[1];
117
107
  var _useState5 = (0, _react.useState)("file-input-".concat((0, _uuid.v4)())),
118
- _useState6 = (0, _slicedToArray2["default"])(_useState5, 1),
119
- fileInputId = _useState6[0];
120
-
108
+ _useState6 = (0, _slicedToArray2["default"])(_useState5, 1),
109
+ fileInputId = _useState6[0];
121
110
  var colorsTheme = (0, _useTheme["default"])();
122
- (0, _react.useEffect)(function () {
123
- if (value) {
124
- setFiles(value);
125
- } else {
126
- setFiles([]);
127
- }
128
- }, [value]);
129
-
130
- var handleClick = function handleClick() {
131
- document.getElementById(fileInputId).click();
132
- };
133
-
111
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
134
112
  var checkFileSize = function checkFileSize(file) {
135
- if (file.size < minSize) {
136
- return "File size must be greater than min size.";
137
- }
138
-
139
- if (file.size > maxSize) {
140
- return "File size must be less than max size.";
141
- }
142
- };
143
-
144
- var getFilePreview = function getFilePreview(file) {
145
- if (file.type.includes("video")) {
146
- return videoIcon;
147
- }
148
-
149
- if (file.type.includes("audio")) {
150
- return audioIcon;
151
- }
152
-
153
- if (file.type.includes("image")) {
154
- return new Promise(function (resolve) {
155
- var reader = new FileReader();
156
- reader.readAsDataURL(file);
157
-
158
- reader.onload = function (e) {
159
- resolve(e.target.result);
160
- };
161
- });
162
- }
163
-
164
- return fileIcon;
113
+ if (file.size < minSize) return translatedLabels.fileInput.fileSizeGreaterThanErrorMessage;else if (file.size > maxSize) return translatedLabels.fileInput.fileSizeLessThanErrorMessage;
165
114
  };
166
-
167
115
  var getFilesToAdd = /*#__PURE__*/function () {
168
116
  var _ref2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(selectedFiles) {
169
117
  var filesToAdd;
170
118
  return _regenerator["default"].wrap(function _callee$(_context) {
171
- while (1) {
172
- switch (_context.prev = _context.next) {
173
- case 0:
174
- _context.next = 2;
175
- return Promise.all(selectedFiles.map(function (selectedFile) {
176
- return getFilePreview(selectedFile);
177
- })).then(function (previews) {
178
- return selectedFiles.map(function (selectedFile, index) {
179
- var fileInfo = {
180
- file: selectedFile,
181
- error: checkFileSize(selectedFile),
182
- preview: previews[index]
183
- };
184
- return fileInfo;
185
- });
119
+ while (1) switch (_context.prev = _context.next) {
120
+ case 0:
121
+ _context.next = 2;
122
+ return Promise.all(selectedFiles.map(function (selectedFile) {
123
+ return getFilePreview(selectedFile);
124
+ })).then(function (previews) {
125
+ return selectedFiles.map(function (file, index) {
126
+ var fileInfo = {
127
+ file: file,
128
+ error: checkFileSize(file),
129
+ preview: previews[index]
130
+ };
131
+ return fileInfo;
186
132
  });
187
-
188
- case 2:
189
- filesToAdd = _context.sent;
190
- return _context.abrupt("return", filesToAdd);
191
-
192
- case 4:
193
- case "end":
194
- return _context.stop();
195
- }
133
+ });
134
+ case 2:
135
+ filesToAdd = _context.sent;
136
+ return _context.abrupt("return", filesToAdd);
137
+ case 4:
138
+ case "end":
139
+ return _context.stop();
196
140
  }
197
141
  }, _callee);
198
142
  }));
199
-
200
143
  return function getFilesToAdd(_x) {
201
144
  return _ref2.apply(this, arguments);
202
145
  };
203
146
  }();
204
-
205
147
  var addFile = /*#__PURE__*/function () {
206
148
  var _ref3 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(selectedFiles) {
207
149
  var filesToAdd, finalFiles, fileToAdd;
208
150
  return _regenerator["default"].wrap(function _callee2$(_context2) {
209
- while (1) {
210
- switch (_context2.prev = _context2.next) {
211
- case 0:
212
- if (!multiple) {
213
- _context2.next = 8;
214
- break;
215
- }
216
-
217
- _context2.next = 3;
218
- return getFilesToAdd(selectedFiles);
219
-
220
- case 3:
221
- filesToAdd = _context2.sent;
222
- finalFiles = [].concat((0, _toConsumableArray2["default"])(files), (0, _toConsumableArray2["default"])(filesToAdd));
223
-
224
- if (typeof callbackFile === "function") {
225
- callbackFile(finalFiles);
226
- }
227
-
228
- _context2.next = 19;
151
+ while (1) switch (_context2.prev = _context2.next) {
152
+ case 0:
153
+ if (!multiple) {
154
+ _context2.next = 8;
229
155
  break;
230
-
231
- case 8:
232
- if (!(selectedFiles.length === 1)) {
233
- _context2.next = 14;
234
- break;
235
- }
236
-
237
- _context2.next = 11;
238
- return getFilesToAdd(selectedFiles);
239
-
240
- case 11:
241
- _context2.t0 = _context2.sent;
242
- _context2.next = 17;
156
+ }
157
+ _context2.next = 3;
158
+ return getFilesToAdd(selectedFiles);
159
+ case 3:
160
+ filesToAdd = _context2.sent;
161
+ finalFiles = [].concat((0, _toConsumableArray2["default"])(files), (0, _toConsumableArray2["default"])(filesToAdd));
162
+ callbackFile === null || callbackFile === void 0 ? void 0 : callbackFile(finalFiles);
163
+ _context2.next = 19;
164
+ break;
165
+ case 8:
166
+ if (!(selectedFiles.length === 1)) {
167
+ _context2.next = 14;
243
168
  break;
244
-
245
- case 14:
246
- _context2.next = 16;
247
- return getFilesToAdd([selectedFiles[0]]);
248
-
249
- case 16:
250
- _context2.t0 = _context2.sent;
251
-
252
- case 17:
253
- fileToAdd = _context2.t0;
254
-
255
- if (typeof callbackFile === "function") {
256
- callbackFile(fileToAdd);
257
- }
258
-
259
- case 19:
260
- case "end":
261
- return _context2.stop();
262
- }
169
+ }
170
+ _context2.next = 11;
171
+ return getFilesToAdd(selectedFiles);
172
+ case 11:
173
+ _context2.t0 = _context2.sent;
174
+ _context2.next = 17;
175
+ break;
176
+ case 14:
177
+ _context2.next = 16;
178
+ return getFilesToAdd([selectedFiles[0]]);
179
+ case 16:
180
+ _context2.t0 = _context2.sent;
181
+ case 17:
182
+ fileToAdd = _context2.t0;
183
+ callbackFile === null || callbackFile === void 0 ? void 0 : callbackFile(fileToAdd);
184
+ case 19:
185
+ case "end":
186
+ return _context2.stop();
263
187
  }
264
188
  }, _callee2);
265
189
  }));
266
-
267
190
  return function addFile(_x2) {
268
191
  return _ref3.apply(this, arguments);
269
192
  };
270
193
  }();
271
-
272
194
  var selectFiles = function selectFiles(e) {
273
195
  var selectedFiles = e.target.files;
274
196
  var filesArray = Object.keys(selectedFiles).map(function (key) {
275
197
  return selectedFiles[key];
276
198
  });
277
199
  addFile(filesArray);
200
+ e.target.value = null;
278
201
  };
279
-
280
- var onDelete = function onDelete(fileName) {
202
+ var onDelete = (0, _react.useCallback)(function (fileName) {
281
203
  var filesCopy = (0, _toConsumableArray2["default"])(files);
282
204
  var fileToRemove = filesCopy.find(function (file) {
283
205
  return file.file.name === fileName;
284
206
  });
285
207
  var fileIndex = filesCopy.indexOf(fileToRemove);
286
208
  filesCopy.splice(fileIndex, 1);
287
-
288
- if (typeof callbackFile === "function") {
289
- callbackFile(filesCopy);
290
- }
209
+ callbackFile === null || callbackFile === void 0 ? void 0 : callbackFile(filesCopy);
210
+ }, [files, callbackFile]);
211
+ var handleClick = function handleClick() {
212
+ document.getElementById(fileInputId).click();
291
213
  };
292
-
293
214
  var handleDrag = function handleDrag(e) {
294
215
  e.preventDefault();
295
216
  e.stopPropagation();
296
217
  };
297
-
298
218
  var handleDragIn = function handleDragIn(e) {
299
- e.preventDefault();
300
- e.stopPropagation();
301
-
302
- if (e.dataTransfer.items && e.dataTransfer.items.length > 0) {
303
- setIsDragging(true);
304
- }
219
+ var _e$dataTransfer$items;
220
+ if (((_e$dataTransfer$items = e.dataTransfer.items) === null || _e$dataTransfer$items === void 0 ? void 0 : _e$dataTransfer$items.length) > 0) setIsDragging(true);
305
221
  };
306
-
307
222
  var handleDragOut = function handleDragOut(e) {
308
- e.preventDefault();
309
- e.stopPropagation();
310
- setIsDragging(false);
223
+ // only if dragged items leave container (outside, not to childs)
224
+ if (!e.currentTarget.contains(e.relatedTarget)) setIsDragging(false);
311
225
  };
312
-
313
226
  var handleDrop = function handleDrop(e) {
314
227
  e.preventDefault();
315
228
  e.stopPropagation();
316
229
  setIsDragging(false);
317
230
  var filesObject = e.dataTransfer.files;
318
-
319
- if (filesObject && filesObject.length > 0) {
231
+ if ((filesObject === null || filesObject === void 0 ? void 0 : filesObject.length) > 0) {
320
232
  var filesArray = Object.keys(filesObject).map(function (key) {
321
233
  return filesObject[key];
322
234
  });
323
235
  addFile(filesArray);
324
236
  }
325
237
  };
326
-
238
+ (0, _react.useEffect)(function () {
239
+ var getFiles = /*#__PURE__*/function () {
240
+ var _ref4 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4() {
241
+ var valueFiles;
242
+ return _regenerator["default"].wrap(function _callee4$(_context4) {
243
+ while (1) switch (_context4.prev = _context4.next) {
244
+ case 0:
245
+ if (!value) {
246
+ _context4.next = 5;
247
+ break;
248
+ }
249
+ _context4.next = 3;
250
+ return Promise.all(value.map( /*#__PURE__*/function () {
251
+ var _ref5 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3(file) {
252
+ var preview;
253
+ return _regenerator["default"].wrap(function _callee3$(_context3) {
254
+ while (1) switch (_context3.prev = _context3.next) {
255
+ case 0:
256
+ if (!file.preview) {
257
+ _context3.next = 4;
258
+ break;
259
+ }
260
+ return _context3.abrupt("return", file);
261
+ case 4:
262
+ _context3.next = 6;
263
+ return getFilePreview(file.file);
264
+ case 6:
265
+ preview = _context3.sent;
266
+ return _context3.abrupt("return", _objectSpread(_objectSpread({}, file), {}, {
267
+ preview: preview
268
+ }));
269
+ case 8:
270
+ case "end":
271
+ return _context3.stop();
272
+ }
273
+ }, _callee3);
274
+ }));
275
+ return function (_x3) {
276
+ return _ref5.apply(this, arguments);
277
+ };
278
+ }()));
279
+ case 3:
280
+ valueFiles = _context4.sent;
281
+ setFiles(valueFiles);
282
+ case 5:
283
+ case "end":
284
+ return _context4.stop();
285
+ }
286
+ }, _callee4);
287
+ }));
288
+ return function getFiles() {
289
+ return _ref4.apply(this, arguments);
290
+ };
291
+ }();
292
+ getFiles();
293
+ }, [value]);
327
294
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
328
295
  theme: colorsTheme.fileInput
329
296
  }, /*#__PURE__*/_react["default"].createElement(FileInputContainer, {
330
297
  margin: margin,
331
- name: name
298
+ ref: ref
332
299
  }, /*#__PURE__*/_react["default"].createElement(Label, {
333
300
  htmlFor: fileInputId,
334
301
  disabled: disabled
335
302
  }, label), /*#__PURE__*/_react["default"].createElement(HelperText, {
336
303
  disabled: disabled
337
304
  }, helperText), mode === "file" ? /*#__PURE__*/_react["default"].createElement(FileContainer, {
338
- multiple: multiple,
339
- files: files
340
- }, /*#__PURE__*/_react["default"].createElement(HiddenInputFile, {
305
+ singleFileMode: !multiple && files.length === 1
306
+ }, /*#__PURE__*/_react["default"].createElement(ValueInput, {
341
307
  id: fileInputId,
342
308
  type: "file",
343
309
  accept: accept,
344
310
  multiple: multiple,
345
- onChange: selectFiles
311
+ onChange: selectFiles,
312
+ disabled: disabled,
313
+ readOnly: true
346
314
  }), /*#__PURE__*/_react["default"].createElement(_Button["default"], {
347
315
  mode: "secondary",
348
- label: "Select files",
316
+ label: buttonLabel !== null && buttonLabel !== void 0 ? buttonLabel : multiple ? translatedLabels.fileInput.multipleButtonLabelDefault : translatedLabels.fileInput.singleButtonLabelDefault,
349
317
  onClick: handleClick,
350
318
  disabled: disabled,
351
- size: "medium",
319
+ size: "fitContent",
352
320
  tabIndex: tabIndex
353
- }), files.map(function (file) {
354
- return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(FileItemContainer, {
355
- mode: mode,
356
- multiple: multiple,
357
- files: files
358
- }, /*#__PURE__*/_react["default"].createElement(_FileItem["default"], {
359
- mode: mode,
360
- multiple: multiple,
361
- name: file.file.name,
321
+ }), files.length > 0 && /*#__PURE__*/_react["default"].createElement(FileItemListContainer, null, files.map(function (file, index) {
322
+ return /*#__PURE__*/_react["default"].createElement(_FileItem["default"], {
323
+ fileName: file.file.name,
362
324
  error: file.error,
325
+ singleFileMode: !multiple && files.length === 1,
363
326
  showPreview: mode === "file" && !multiple ? false : showPreview,
364
- numFiles: files.length,
365
327
  preview: file.preview,
366
328
  type: file.file.type,
367
329
  onDelete: onDelete,
368
- tabIndex: tabIndex
369
- })));
370
- })) : /*#__PURE__*/_react["default"].createElement(Container, null, /*#__PURE__*/_react["default"].createElement(DragDropArea, {
330
+ tabIndex: tabIndex,
331
+ key: "file-".concat(index)
332
+ });
333
+ }))) : /*#__PURE__*/_react["default"].createElement(Container, null, /*#__PURE__*/_react["default"].createElement(ValueInput, {
334
+ id: fileInputId,
335
+ type: "file",
336
+ accept: accept,
337
+ multiple: multiple,
338
+ onChange: selectFiles,
339
+ disabled: disabled,
340
+ readOnly: true
341
+ }), /*#__PURE__*/_react["default"].createElement(DragDropArea, {
371
342
  isDragging: isDragging,
372
343
  disabled: disabled,
373
344
  mode: mode,
@@ -375,44 +346,30 @@ var DxcFileInput = function DxcFileInput(_ref) {
375
346
  onDragEnter: handleDragIn,
376
347
  onDragOver: handleDrag,
377
348
  onDragLeave: handleDragOut
378
- }, /*#__PURE__*/_react["default"].createElement(HiddenInputFile, {
379
- id: fileInputId,
380
- type: "file",
381
- accept: accept,
382
- multiple: multiple,
383
- onChange: selectFiles
384
- }), /*#__PURE__*/_react["default"].createElement(ButtonContainer, {
385
- mode: mode
386
349
  }, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
387
350
  mode: "secondary",
388
- label: "Select",
351
+ label: buttonLabel !== null && buttonLabel !== void 0 ? buttonLabel : translatedLabels.fileInput.dropAreaButtonLabelDefault,
389
352
  onClick: handleClick,
390
353
  disabled: disabled,
391
354
  size: "fitContent"
392
- })), /*#__PURE__*/_react["default"].createElement(DropLabel, {
355
+ }), mode === "dropzone" ? /*#__PURE__*/_react["default"].createElement(DropzoneLabel, {
356
+ disabled: disabled
357
+ }, dropAreaLabel !== null && dropAreaLabel !== void 0 ? dropAreaLabel : multiple ? translatedLabels.fileInput.multipleDropAreaLabelDefault : translatedLabels.fileInput.singleDropAreaLabelDefault) : /*#__PURE__*/_react["default"].createElement(FiledropLabel, {
393
358
  disabled: disabled
394
- }, "or drop files")), files.map(function (file) {
395
- return /*#__PURE__*/_react["default"].createElement(FileItemContainer, {
396
- mode: mode,
397
- multiple: multiple,
398
- files: files
399
- }, /*#__PURE__*/_react["default"].createElement(_FileItem["default"], {
400
- mode: mode,
401
- multiple: multiple,
402
- name: file.file.name,
359
+ }, 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) {
360
+ return /*#__PURE__*/_react["default"].createElement(_FileItem["default"], {
361
+ fileName: file.file.name,
403
362
  error: file.error,
363
+ singleFileMode: false,
404
364
  showPreview: showPreview,
405
- numFiles: files.length,
406
365
  preview: file.preview,
407
366
  type: file.file.type,
408
367
  onDelete: onDelete,
409
- tabIndex: tabIndex
410
- }));
411
- })), files.length === 1 && files.map(function (file) {
412
- return file.error && mode === "file" && !multiple && /*#__PURE__*/_react["default"].createElement(ErrorMessage, null, file.error);
413
- })));
414
- };
415
-
368
+ tabIndex: tabIndex,
369
+ key: "file-".concat(index)
370
+ });
371
+ }))), mode === "file" && !multiple && files.length === 1 && files[0].error && /*#__PURE__*/_react["default"].createElement(ErrorMessage, null, files[0].error)));
372
+ });
416
373
  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) {
417
374
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
418
375
  }, function (props) {
@@ -424,7 +381,6 @@ var FileInputContainer = _styledComponents["default"].div(_templateObject || (_t
424
381
  }, function (props) {
425
382
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
426
383
  });
427
-
428
384
  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) {
429
385
  return props.disabled ? props.theme.disabledLabelFontColor : props.theme.labelFontColor;
430
386
  }, function (props) {
@@ -436,7 +392,6 @@ var Label = _styledComponents["default"].label(_templateObject2 || (_templateObj
436
392
  }, function (props) {
437
393
  return props.theme.labelLineHeight;
438
394
  });
439
-
440
395
  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) {
441
396
  return props.disabled ? props.theme.disabledHelperTextFontcolor : props.theme.helperTextFontColor;
442
397
  }, function (props) {
@@ -448,36 +403,30 @@ var HelperText = _styledComponents["default"].span(_templateObject3 || (_templat
448
403
  }, function (props) {
449
404
  return props.theme.helperTextLineHeight;
450
405
  });
451
-
452
- var DragDropArea = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (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"])), function (props) {
453
- return props.mode === "filedrop" ? "calc(48px - 2px)" : "calc(160px - 2px)";
406
+ var FileContainer = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n ", "\n margin-top: 0.25rem;\n"])), function (props) {
407
+ return props.singleFileMode ? "flex-direction: row; column-gap: 0.25rem;" : "flex-direction: column; row-gap: 0.25rem;";
408
+ });
409
+ var ValueInput = _styledComponents["default"].input(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: none;\n"])));
410
+ var FileItemListContainer = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n row-gap: 0.25rem;\n"])));
411
+ 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"])));
412
+ 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) {
413
+ 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;";
454
414
  }, function (props) {
455
- return props.mode === "filedrop" ? "row" : "column";
415
+ return props.mode === "filedrop" ? "calc(4px - ".concat(props.theme.dropBorderThickness, ") 1rem calc(4px - ").concat(props.theme.dropBorderThickness, ") calc(4px - ").concat(props.theme.dropBorderThickness, ")") : "1rem";
456
416
  }, function (props) {
457
417
  return props.theme.dropBorderRadius;
458
418
  }, function (props) {
459
- return !props.isDragging ? props.theme.dropBorderThickness : "2px";
419
+ return props.theme.dropBorderThickness;
460
420
  }, function (props) {
461
- return !props.isDragging ? props.theme.dropBorderStyle : "solid";
421
+ return props.theme.dropBorderStyle;
462
422
  }, function (props) {
463
- return props.isDragging && props.theme.dragoverDropBackgroundColor;
423
+ return props.disabled ? props.theme.disabledDropBorderColor : props.theme.dropBorderColor;
464
424
  }, function (props) {
465
- return props.disabled ? props.theme.disabledDropBorderColor : props.isDragging ? props.theme.focusDropBorderColor : props.theme.dropBorderColor;
425
+ 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 ");
466
426
  }, function (props) {
467
427
  return props.disabled && "not-allowed";
468
428
  });
469
-
470
- var FileContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: ", ";\n margin-top: 0.25rem;\n"])), function (props) {
471
- return props.multiple || props.files.length > 1 ? "column" : "row";
472
- });
473
-
474
- var HiddenInputFile = _styledComponents["default"].input(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n visibility: hidden;\n position: absolute;\n width: 0px;\n height: 0px;\n"])));
475
-
476
- var ButtonContainer = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n padding: ", ";\n"])), function (props) {
477
- return props.mode === "filedrop" ? "2px 12px 2px 2px" : "47px 122px 8px 122px";
478
- });
479
-
480
- var DropLabel = _styledComponents["default"].span(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n"])), function (props) {
429
+ 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) {
481
430
  return props.disabled ? props.theme.disabledDropLabelFontColor : props.theme.dropLabelFontColor;
482
431
  }, function (props) {
483
432
  return props.theme.dropLabelFontFamily;
@@ -486,15 +435,15 @@ var DropLabel = _styledComponents["default"].span(_templateObject8 || (_template
486
435
  }, function (props) {
487
436
  return props.theme.dropLabelFontWeight;
488
437
  });
489
-
490
- var Container = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n margin-top: 0.25rem;\n"])));
491
-
492
- var FileItemContainer = _styledComponents["default"].div(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n margin-top: ", ";\n margin-left: ", ";\n"])), function (props) {
493
- return (props.multiple || props.files.length > 1 || props.mode !== "file") && "4px";
438
+ 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) {
439
+ return props.disabled ? props.theme.disabledDropLabelFontColor : props.theme.dropLabelFontColor;
494
440
  }, function (props) {
495
- return props.mode === "file" && props.files.length === 1 && !props.multiple && "4px";
441
+ return props.theme.dropLabelFontFamily;
442
+ }, function (props) {
443
+ return props.theme.dropLabelFontSize;
444
+ }, function (props) {
445
+ return props.theme.dropLabelFontWeight;
496
446
  });
497
-
498
447
  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) {
499
448
  return props.theme.errorMessageFontColor;
500
449
  }, function (props) {
@@ -506,6 +455,4 @@ var ErrorMessage = _styledComponents["default"].div(_templateObject11 || (_templ
506
455
  }, function (props) {
507
456
  return props.theme.errorMessageLineHeight;
508
457
  });
509
-
510
- var _default = DxcFileInput;
511
- exports["default"] = _default;
458
+ var _default = exports["default"] = DxcFileInput;