@dxc-technology/halstack-react 0.0.0-dfcca07 → 0.0.0-dfd09f9

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 (234) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +1 -4
  3. package/ThemeContext.d.ts +10 -0
  4. package/ThemeContext.js +26 -29
  5. package/accordion/Accordion.d.ts +1 -1
  6. package/accordion/Accordion.js +13 -45
  7. package/accordion/Accordion.stories.tsx +307 -0
  8. package/accordion/Accordion.test.js +72 -0
  9. package/accordion/types.d.ts +8 -8
  10. package/accordion-group/AccordionGroup.d.ts +1 -1
  11. package/accordion-group/AccordionGroup.js +14 -16
  12. package/accordion-group/AccordionGroup.stories.tsx +1 -1
  13. package/accordion-group/AccordionGroup.test.js +151 -0
  14. package/accordion-group/types.d.ts +8 -8
  15. package/alert/Alert.js +2 -2
  16. package/alert/Alert.test.js +92 -0
  17. package/badge/Badge.d.ts +4 -0
  18. package/badge/Badge.js +1 -1
  19. package/badge/types.d.ts +4 -0
  20. package/badge/types.js +5 -0
  21. package/bleed/Bleed.d.ts +3 -0
  22. package/bleed/Bleed.js +84 -0
  23. package/bleed/Bleed.stories.tsx +342 -0
  24. package/bleed/types.d.ts +37 -0
  25. package/bleed/types.js +5 -0
  26. package/box/Box.js +2 -2
  27. package/box/Box.test.js +18 -0
  28. package/button/Button.d.ts +1 -1
  29. package/button/Button.js +11 -19
  30. package/button/Button.stories.tsx +6 -8
  31. package/button/Button.test.js +35 -0
  32. package/button/types.d.ts +3 -7
  33. package/card/Card.js +1 -1
  34. package/card/Card.stories.tsx +1 -1
  35. package/card/Card.test.js +50 -0
  36. package/checkbox/Checkbox.d.ts +1 -1
  37. package/checkbox/Checkbox.js +33 -32
  38. package/checkbox/Checkbox.stories.tsx +124 -128
  39. package/checkbox/Checkbox.test.js +78 -0
  40. package/checkbox/types.d.ts +10 -4
  41. package/chip/Chip.d.ts +4 -0
  42. package/chip/Chip.js +16 -76
  43. package/chip/Chip.stories.tsx +6 -8
  44. package/chip/Chip.test.js +56 -0
  45. package/chip/types.d.ts +45 -0
  46. package/chip/types.js +5 -0
  47. package/common/variables.js +59 -265
  48. package/date-input/DateInput.js +54 -46
  49. package/date-input/DateInput.stories.tsx +7 -7
  50. package/date-input/DateInput.test.js +479 -0
  51. package/date-input/types.d.ts +16 -9
  52. package/dialog/Dialog.js +8 -35
  53. package/dialog/Dialog.test.js +40 -0
  54. package/dropdown/Dropdown.d.ts +1 -1
  55. package/dropdown/Dropdown.js +13 -35
  56. package/dropdown/Dropdown.stories.tsx +249 -0
  57. package/dropdown/Dropdown.test.js +189 -0
  58. package/dropdown/types.d.ts +5 -14
  59. package/file-input/FileInput.d.ts +1 -1
  60. package/file-input/FileInput.js +148 -69
  61. package/file-input/FileInput.stories.tsx +507 -0
  62. package/file-input/FileInput.test.js +457 -0
  63. package/file-input/FileItem.js +3 -3
  64. package/file-input/types.d.ts +32 -7
  65. package/footer/Footer.d.ts +1 -1
  66. package/footer/Footer.js +28 -111
  67. package/footer/{Footer.stories.jsx → Footer.stories.tsx} +1 -22
  68. package/footer/Footer.test.js +109 -0
  69. package/footer/Icons.d.ts +2 -0
  70. package/footer/Icons.js +3 -3
  71. package/footer/types.d.ts +5 -9
  72. package/header/Header.js +22 -46
  73. package/header/Header.stories.tsx +46 -36
  74. package/header/Header.test.js +79 -0
  75. package/header/Icons.d.ts +2 -0
  76. package/heading/Heading.js +1 -1
  77. package/heading/Heading.stories.tsx +3 -2
  78. package/heading/Heading.test.js +186 -0
  79. package/inset/Inset.d.ts +3 -0
  80. package/inset/Inset.js +84 -0
  81. package/inset/Inset.stories.tsx +229 -0
  82. package/inset/types.d.ts +37 -0
  83. package/inset/types.js +5 -0
  84. package/layout/ApplicationLayout.d.ts +10 -0
  85. package/layout/ApplicationLayout.js +14 -31
  86. package/layout/ApplicationLayout.stories.tsx +171 -0
  87. package/layout/types.d.ts +57 -0
  88. package/layout/types.js +5 -0
  89. package/link/Link.js +8 -16
  90. package/link/Link.stories.tsx +6 -1
  91. package/link/Link.test.js +91 -0
  92. package/link/types.d.ts +5 -9
  93. package/list/List.d.ts +4 -0
  94. package/list/List.js +47 -0
  95. package/list/List.stories.tsx +95 -0
  96. package/list/types.d.ts +7 -0
  97. package/list/types.js +5 -0
  98. package/main.d.ts +11 -8
  99. package/main.js +62 -38
  100. package/number-input/NumberInput.js +14 -24
  101. package/number-input/NumberInput.stories.tsx +5 -5
  102. package/number-input/NumberInput.test.js +506 -0
  103. package/number-input/types.d.ts +16 -9
  104. package/package.json +6 -3
  105. package/paginator/Paginator.js +2 -8
  106. package/paginator/Paginator.test.js +266 -0
  107. package/password-input/PasswordInput.js +15 -16
  108. package/password-input/PasswordInput.stories.tsx +3 -3
  109. package/password-input/PasswordInput.test.js +181 -0
  110. package/password-input/types.d.ts +13 -10
  111. package/progress-bar/ProgressBar.js +4 -4
  112. package/progress-bar/ProgressBar.test.js +65 -0
  113. package/quick-nav/QuickNav.d.ts +4 -0
  114. package/quick-nav/QuickNav.js +64 -0
  115. package/quick-nav/QuickNav.stories.tsx +237 -0
  116. package/quick-nav/types.d.ts +21 -0
  117. package/quick-nav/types.js +5 -0
  118. package/radio/Radio.js +2 -2
  119. package/radio/Radio.test.js +71 -0
  120. package/radio-group/Radio.d.ts +4 -0
  121. package/radio-group/Radio.js +141 -0
  122. package/radio-group/RadioGroup.d.ts +4 -0
  123. package/radio-group/RadioGroup.js +280 -0
  124. package/radio-group/RadioGroup.stories.tsx +100 -0
  125. package/radio-group/RadioGroup.test.js +695 -0
  126. package/radio-group/types.d.ts +114 -0
  127. package/radio-group/types.js +5 -0
  128. package/resultsetTable/ResultsetTable.js +6 -3
  129. package/resultsetTable/ResultsetTable.stories.tsx +275 -0
  130. package/resultsetTable/ResultsetTable.test.js +306 -0
  131. package/resultsetTable/types.d.ts +1 -1
  132. package/row/Row.d.ts +3 -0
  133. package/row/Row.js +127 -0
  134. package/row/Row.stories.tsx +237 -0
  135. package/row/types.d.ts +28 -0
  136. package/row/types.js +5 -0
  137. package/select/Icons.d.ts +10 -0
  138. package/select/Icons.js +93 -0
  139. package/select/Listbox.d.ts +4 -0
  140. package/select/Listbox.js +148 -0
  141. package/select/Option.d.ts +4 -0
  142. package/select/Option.js +110 -0
  143. package/select/Select.d.ts +4 -0
  144. package/select/Select.js +107 -317
  145. package/select/Select.stories.tsx +91 -81
  146. package/select/Select.test.js +2057 -0
  147. package/select/types.d.ts +213 -0
  148. package/select/types.js +5 -0
  149. package/sidenav/Sidenav.js +2 -2
  150. package/sidenav/Sidenav.stories.tsx +18 -1
  151. package/sidenav/Sidenav.test.js +56 -0
  152. package/slider/Slider.d.ts +1 -1
  153. package/slider/Slider.js +4 -3
  154. package/slider/Slider.stories.tsx +8 -8
  155. package/slider/Slider.test.js +150 -0
  156. package/slider/types.d.ts +4 -0
  157. package/spinner/Spinner.js +2 -2
  158. package/spinner/Spinner.stories.jsx +1 -0
  159. package/spinner/Spinner.test.js +64 -0
  160. package/stack/Stack.d.ts +3 -0
  161. package/stack/Stack.js +97 -0
  162. package/stack/Stack.stories.tsx +164 -0
  163. package/stack/types.d.ts +24 -0
  164. package/stack/types.js +5 -0
  165. package/switch/Switch.d.ts +1 -1
  166. package/switch/Switch.js +21 -8
  167. package/switch/Switch.stories.tsx +7 -7
  168. package/switch/Switch.test.js +98 -0
  169. package/switch/types.d.ts +4 -0
  170. package/table/Table.js +2 -2
  171. package/table/Table.stories.jsx +2 -1
  172. package/table/Table.test.js +26 -0
  173. package/tabs/Tabs.d.ts +1 -1
  174. package/tabs/Tabs.js +17 -19
  175. package/tabs/Tabs.stories.tsx +8 -11
  176. package/tabs/Tabs.test.js +140 -0
  177. package/tabs/types.d.ts +27 -15
  178. package/tag/Tag.d.ts +1 -1
  179. package/tag/Tag.js +16 -23
  180. package/tag/Tag.stories.tsx +26 -29
  181. package/tag/Tag.test.js +60 -0
  182. package/tag/types.d.ts +23 -14
  183. package/text/Text.d.ts +7 -0
  184. package/text/Text.js +30 -0
  185. package/text/Text.stories.tsx +19 -0
  186. package/text-input/TextInput.js +46 -36
  187. package/text-input/TextInput.stories.tsx +34 -16
  188. package/text-input/TextInput.test.js +1712 -0
  189. package/text-input/types.d.ts +18 -11
  190. package/textarea/Textarea.d.ts +4 -0
  191. package/textarea/Textarea.js +26 -56
  192. package/textarea/Textarea.stories.jsx +37 -15
  193. package/textarea/Textarea.test.js +437 -0
  194. package/textarea/types.d.ts +137 -0
  195. package/textarea/types.js +5 -0
  196. package/toggle-group/ToggleGroup.d.ts +1 -1
  197. package/toggle-group/ToggleGroup.js +15 -17
  198. package/toggle-group/ToggleGroup.stories.tsx +27 -32
  199. package/toggle-group/ToggleGroup.test.js +156 -0
  200. package/toggle-group/types.d.ts +46 -25
  201. package/useTheme.d.ts +2 -0
  202. package/useTheme.js +1 -1
  203. package/wizard/Wizard.d.ts +1 -1
  204. package/wizard/Wizard.js +81 -22
  205. package/wizard/{Wizard.stories.jsx → Wizard.stories.tsx} +13 -23
  206. package/wizard/Wizard.test.js +141 -0
  207. package/wizard/types.d.ts +8 -8
  208. package/V3Select/V3Select.js +0 -455
  209. package/V3Select/index.d.ts +0 -27
  210. package/V3Textarea/V3Textarea.js +0 -260
  211. package/V3Textarea/index.d.ts +0 -27
  212. package/chip/index.d.ts +0 -22
  213. package/date/Date.js +0 -373
  214. package/date/index.d.ts +0 -27
  215. package/input-text/Icons.js +0 -22
  216. package/input-text/InputText.js +0 -611
  217. package/input-text/index.d.ts +0 -36
  218. package/select/index.d.ts +0 -131
  219. package/textarea/index.d.ts +0 -127
  220. package/toggle/Toggle.js +0 -186
  221. package/toggle/index.d.ts +0 -21
  222. package/upload/Upload.js +0 -201
  223. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  224. package/upload/buttons-upload/Icons.js +0 -40
  225. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  226. package/upload/dragAndDropArea/Icons.js +0 -39
  227. package/upload/file-upload/FileToUpload.js +0 -115
  228. package/upload/file-upload/Icons.js +0 -66
  229. package/upload/files-upload/FilesToUpload.js +0 -109
  230. package/upload/index.d.ts +0 -15
  231. package/upload/transaction/Icons.js +0 -160
  232. package/upload/transaction/Transaction.js +0 -104
  233. package/upload/transactions/Transactions.js +0 -94
  234. package/wizard/Icons.js +0 -65
@@ -17,6 +17,8 @@ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"))
17
17
 
18
18
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
19
19
 
20
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
21
+
20
22
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
21
23
 
22
24
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
@@ -29,18 +31,22 @@ var _uuid = require("uuid");
29
31
 
30
32
  var _variables = require("../common/variables.js");
31
33
 
32
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
34
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
33
35
 
34
36
  var _Button = _interopRequireDefault(require("../button/Button"));
35
37
 
36
38
  var _FileItem = _interopRequireDefault(require("./FileItem"));
37
39
 
38
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11;
40
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12;
39
41
 
40
42
  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
43
 
42
44
  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
45
 
46
+ 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; }
47
+
48
+ 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; }
49
+
44
50
  var audioIcon = /*#__PURE__*/_react["default"].createElement("svg", {
45
51
  xmlns: "http://www.w3.org/2000/svg",
46
52
  width: "24",
@@ -87,6 +93,8 @@ var DxcFileInput = function DxcFileInput(_ref) {
87
93
  mode = _ref$mode === void 0 ? "file" : _ref$mode,
88
94
  _ref$label = _ref.label,
89
95
  label = _ref$label === void 0 ? "" : _ref$label,
96
+ buttonLabel = _ref.buttonLabel,
97
+ dropAreaLabel = _ref.dropAreaLabel,
90
98
  _ref$helperText = _ref.helperText,
91
99
  helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
92
100
  accept = _ref.accept,
@@ -120,11 +128,74 @@ var DxcFileInput = function DxcFileInput(_ref) {
120
128
 
121
129
  var colorsTheme = (0, _useTheme["default"])();
122
130
  (0, _react.useEffect)(function () {
123
- if (value) {
124
- setFiles(value);
125
- } else {
126
- setFiles([]);
127
- }
131
+ var getFiles = /*#__PURE__*/function () {
132
+ var _ref2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
133
+ var valueFiles;
134
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
135
+ while (1) {
136
+ switch (_context2.prev = _context2.next) {
137
+ case 0:
138
+ if (!value) {
139
+ _context2.next = 5;
140
+ break;
141
+ }
142
+
143
+ _context2.next = 3;
144
+ return Promise.all(value.map( /*#__PURE__*/function () {
145
+ var _ref3 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(file) {
146
+ var preview;
147
+ return _regenerator["default"].wrap(function _callee$(_context) {
148
+ while (1) {
149
+ switch (_context.prev = _context.next) {
150
+ case 0:
151
+ if (!file.preview) {
152
+ _context.next = 4;
153
+ break;
154
+ }
155
+
156
+ return _context.abrupt("return", file);
157
+
158
+ case 4:
159
+ _context.next = 6;
160
+ return getFilePreview(file.file);
161
+
162
+ case 6:
163
+ preview = _context.sent;
164
+ return _context.abrupt("return", _objectSpread(_objectSpread({}, file), {}, {
165
+ preview: preview
166
+ }));
167
+
168
+ case 8:
169
+ case "end":
170
+ return _context.stop();
171
+ }
172
+ }
173
+ }, _callee);
174
+ }));
175
+
176
+ return function (_x) {
177
+ return _ref3.apply(this, arguments);
178
+ };
179
+ }()));
180
+
181
+ case 3:
182
+ valueFiles = _context2.sent;
183
+ setFiles(valueFiles);
184
+
185
+ case 5:
186
+ case "end":
187
+ return _context2.stop();
188
+ }
189
+ }
190
+ }, _callee2);
191
+ }));
192
+
193
+ return function getFiles() {
194
+ return _ref2.apply(this, arguments);
195
+ };
196
+ }();
197
+
198
+ getFiles();
128
199
  }, [value]);
129
200
 
130
201
  var handleClick = function handleClick() {
@@ -165,13 +236,13 @@ var DxcFileInput = function DxcFileInput(_ref) {
165
236
  };
166
237
 
167
238
  var getFilesToAdd = /*#__PURE__*/function () {
168
- var _ref2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(selectedFiles) {
239
+ var _ref4 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3(selectedFiles) {
169
240
  var filesToAdd;
170
- return _regenerator["default"].wrap(function _callee$(_context) {
241
+ return _regenerator["default"].wrap(function _callee3$(_context3) {
171
242
  while (1) {
172
- switch (_context.prev = _context.next) {
243
+ switch (_context3.prev = _context3.next) {
173
244
  case 0:
174
- _context.next = 2;
245
+ _context3.next = 2;
175
246
  return Promise.all(selectedFiles.map(function (selectedFile) {
176
247
  return getFilePreview(selectedFile);
177
248
  })).then(function (previews) {
@@ -186,71 +257,71 @@ var DxcFileInput = function DxcFileInput(_ref) {
186
257
  });
187
258
 
188
259
  case 2:
189
- filesToAdd = _context.sent;
190
- return _context.abrupt("return", filesToAdd);
260
+ filesToAdd = _context3.sent;
261
+ return _context3.abrupt("return", filesToAdd);
191
262
 
192
263
  case 4:
193
264
  case "end":
194
- return _context.stop();
265
+ return _context3.stop();
195
266
  }
196
267
  }
197
- }, _callee);
268
+ }, _callee3);
198
269
  }));
199
270
 
200
- return function getFilesToAdd(_x) {
201
- return _ref2.apply(this, arguments);
271
+ return function getFilesToAdd(_x2) {
272
+ return _ref4.apply(this, arguments);
202
273
  };
203
274
  }();
204
275
 
205
276
  var addFile = /*#__PURE__*/function () {
206
- var _ref3 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(selectedFiles) {
277
+ var _ref5 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4(selectedFiles) {
207
278
  var filesToAdd, finalFiles, fileToAdd;
208
- return _regenerator["default"].wrap(function _callee2$(_context2) {
279
+ return _regenerator["default"].wrap(function _callee4$(_context4) {
209
280
  while (1) {
210
- switch (_context2.prev = _context2.next) {
281
+ switch (_context4.prev = _context4.next) {
211
282
  case 0:
212
283
  if (!multiple) {
213
- _context2.next = 8;
284
+ _context4.next = 8;
214
285
  break;
215
286
  }
216
287
 
217
- _context2.next = 3;
288
+ _context4.next = 3;
218
289
  return getFilesToAdd(selectedFiles);
219
290
 
220
291
  case 3:
221
- filesToAdd = _context2.sent;
292
+ filesToAdd = _context4.sent;
222
293
  finalFiles = [].concat((0, _toConsumableArray2["default"])(files), (0, _toConsumableArray2["default"])(filesToAdd));
223
294
 
224
295
  if (typeof callbackFile === "function") {
225
296
  callbackFile(finalFiles);
226
297
  }
227
298
 
228
- _context2.next = 19;
299
+ _context4.next = 19;
229
300
  break;
230
301
 
231
302
  case 8:
232
303
  if (!(selectedFiles.length === 1)) {
233
- _context2.next = 14;
304
+ _context4.next = 14;
234
305
  break;
235
306
  }
236
307
 
237
- _context2.next = 11;
308
+ _context4.next = 11;
238
309
  return getFilesToAdd(selectedFiles);
239
310
 
240
311
  case 11:
241
- _context2.t0 = _context2.sent;
242
- _context2.next = 17;
312
+ _context4.t0 = _context4.sent;
313
+ _context4.next = 17;
243
314
  break;
244
315
 
245
316
  case 14:
246
- _context2.next = 16;
317
+ _context4.next = 16;
247
318
  return getFilesToAdd([selectedFiles[0]]);
248
319
 
249
320
  case 16:
250
- _context2.t0 = _context2.sent;
321
+ _context4.t0 = _context4.sent;
251
322
 
252
323
  case 17:
253
- fileToAdd = _context2.t0;
324
+ fileToAdd = _context4.t0;
254
325
 
255
326
  if (typeof callbackFile === "function") {
256
327
  callbackFile(fileToAdd);
@@ -258,14 +329,14 @@ var DxcFileInput = function DxcFileInput(_ref) {
258
329
 
259
330
  case 19:
260
331
  case "end":
261
- return _context2.stop();
332
+ return _context4.stop();
262
333
  }
263
334
  }
264
- }, _callee2);
335
+ }, _callee4);
265
336
  }));
266
337
 
267
- return function addFile(_x2) {
268
- return _ref3.apply(this, arguments);
338
+ return function addFile(_x3) {
339
+ return _ref5.apply(this, arguments);
269
340
  };
270
341
  }();
271
342
 
@@ -296,18 +367,12 @@ var DxcFileInput = function DxcFileInput(_ref) {
296
367
  };
297
368
 
298
369
  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
- }
370
+ if (e.dataTransfer.items && e.dataTransfer.items.length > 0) setIsDragging(true);
305
371
  };
306
372
 
307
373
  var handleDragOut = function handleDragOut(e) {
308
- e.preventDefault();
309
- e.stopPropagation();
310
- setIsDragging(false);
374
+ // only if dragged items leave container (outside, not to childs)
375
+ if (!e.currentTarget.contains(e.relatedTarget)) setIsDragging(false);
311
376
  };
312
377
 
313
378
  var handleDrop = function handleDrop(e) {
@@ -345,7 +410,7 @@ var DxcFileInput = function DxcFileInput(_ref) {
345
410
  onChange: selectFiles
346
411
  }), /*#__PURE__*/_react["default"].createElement(_Button["default"], {
347
412
  mode: "secondary",
348
- label: "Select files",
413
+ label: buttonLabel !== null && buttonLabel !== void 0 ? buttonLabel : multiple ? "Select files" : "Select file",
349
414
  onClick: handleClick,
350
415
  disabled: disabled,
351
416
  size: "medium",
@@ -367,7 +432,13 @@ var DxcFileInput = function DxcFileInput(_ref) {
367
432
  onDelete: onDelete,
368
433
  tabIndex: tabIndex
369
434
  })));
370
- })) : /*#__PURE__*/_react["default"].createElement(Container, null, /*#__PURE__*/_react["default"].createElement(DragDropArea, {
435
+ })) : /*#__PURE__*/_react["default"].createElement(Container, null, /*#__PURE__*/_react["default"].createElement(HiddenInputFile, {
436
+ id: fileInputId,
437
+ type: "file",
438
+ accept: accept,
439
+ multiple: multiple,
440
+ onChange: selectFiles
441
+ }), /*#__PURE__*/_react["default"].createElement(DragDropArea, {
371
442
  isDragging: isDragging,
372
443
  disabled: disabled,
373
444
  mode: mode,
@@ -375,23 +446,19 @@ var DxcFileInput = function DxcFileInput(_ref) {
375
446
  onDragEnter: handleDragIn,
376
447
  onDragOver: handleDrag,
377
448
  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, {
449
+ }, /*#__PURE__*/_react["default"].createElement(ButtonContainer, {
385
450
  mode: mode
386
451
  }, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
387
452
  mode: "secondary",
388
- label: "Select",
453
+ label: buttonLabel !== null && buttonLabel !== void 0 ? buttonLabel : "Select",
389
454
  onClick: handleClick,
390
455
  disabled: disabled,
391
456
  size: "fitContent"
392
- })), /*#__PURE__*/_react["default"].createElement(DropLabel, {
457
+ })), mode === "dropzone" ? /*#__PURE__*/_react["default"].createElement(DropzoneLabel, {
458
+ disabled: disabled
459
+ }, dropAreaLabel !== null && dropAreaLabel !== void 0 ? dropAreaLabel : multiple ? "or drop files" : "or drop a file") : /*#__PURE__*/_react["default"].createElement(FiledropLabel, {
393
460
  disabled: disabled
394
- }, "or drop files")), files.map(function (file) {
461
+ }, dropAreaLabel !== null && dropAreaLabel !== void 0 ? dropAreaLabel : multiple ? "or drop files" : "or drop a file")), files.map(function (file) {
395
462
  return /*#__PURE__*/_react["default"].createElement(FileItemContainer, {
396
463
  mode: mode,
397
464
  multiple: multiple,
@@ -449,20 +516,22 @@ var HelperText = _styledComponents["default"].span(_templateObject3 || (_templat
449
516
  return props.theme.helperTextLineHeight;
450
517
  });
451
518
 
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)";
454
- }, function (props) {
519
+ var DragDropArea = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n overflow: hidden;\n box-sizing: border-box;\n flex-direction: ", ";\n ", ";\n align-items: center;\n height: ", ";\n width: 320px;\n\n box-shadow: 0 0 0 2px transparent;\n border-radius: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n\n ", "\n\n cursor: ", ";\n"])), function (props) {
455
520
  return props.mode === "filedrop" ? "row" : "column";
521
+ }, function (props) {
522
+ return props.mode === "dropzone" && "justify-content: center; padding: 1rem;";
523
+ }, function (props) {
524
+ return props.mode === "filedrop" ? "48px" : "160px";
456
525
  }, function (props) {
457
526
  return props.theme.dropBorderRadius;
458
527
  }, function (props) {
459
- return !props.isDragging ? props.theme.dropBorderThickness : "2px";
528
+ return props.theme.dropBorderThickness;
460
529
  }, function (props) {
461
- return !props.isDragging ? props.theme.dropBorderStyle : "solid";
530
+ return props.theme.dropBorderStyle;
462
531
  }, function (props) {
463
- return props.isDragging && props.theme.dragoverDropBackgroundColor;
532
+ return props.disabled ? props.theme.disabledDropBorderColor : props.theme.dropBorderColor;
464
533
  }, function (props) {
465
- return props.disabled ? props.theme.disabledDropBorderColor : props.isDragging ? props.theme.focusDropBorderColor : props.theme.dropBorderColor;
534
+ 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
535
  }, function (props) {
467
536
  return props.disabled && "not-allowed";
468
537
  });
@@ -473,11 +542,21 @@ var FileContainer = _styledComponents["default"].div(_templateObject5 || (_templ
473
542
 
474
543
  var HiddenInputFile = _styledComponents["default"].input(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n visibility: hidden;\n position: absolute;\n width: 0px;\n height: 0px;\n"])));
475
544
 
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";
545
+ var ButtonContainer = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n ", ";\n"])), function (props) {
546
+ return props.mode === "filedrop" && "padding: 2px 12px 2px 3px";
547
+ });
548
+
549
+ var DropzoneLabel = _styledComponents["default"].div(_templateObject8 || (_templateObject8 = (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 margin-top: 0.5rem;\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n"])), function (props) {
550
+ return props.disabled ? props.theme.disabledDropLabelFontColor : props.theme.dropLabelFontColor;
551
+ }, function (props) {
552
+ return props.theme.dropLabelFontFamily;
553
+ }, function (props) {
554
+ return props.theme.dropLabelFontSize;
555
+ }, function (props) {
556
+ return props.theme.dropLabelFontWeight;
478
557
  });
479
558
 
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) {
559
+ var FiledropLabel = _styledComponents["default"].span(_templateObject9 || (_templateObject9 = (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 margin-right: 1rem;\n"])), function (props) {
481
560
  return props.disabled ? props.theme.disabledDropLabelFontColor : props.theme.dropLabelFontColor;
482
561
  }, function (props) {
483
562
  return props.theme.dropLabelFontFamily;
@@ -487,15 +566,15 @@ var DropLabel = _styledComponents["default"].span(_templateObject8 || (_template
487
566
  return props.theme.dropLabelFontWeight;
488
567
  });
489
568
 
490
- var Container = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n margin-top: 0.25rem;\n"])));
569
+ var Container = _styledComponents["default"].div(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n margin-top: 0.25rem;\n"])));
491
570
 
492
- var FileItemContainer = _styledComponents["default"].div(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n margin-top: ", ";\n margin-left: ", ";\n"])), function (props) {
571
+ var FileItemContainer = _styledComponents["default"].div(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n margin-top: ", ";\n margin-left: ", ";\n"])), function (props) {
493
572
  return (props.multiple || props.files.length > 1 || props.mode !== "file") && "4px";
494
573
  }, function (props) {
495
574
  return props.mode === "file" && props.files.length === 1 && !props.multiple && "4px";
496
575
  });
497
576
 
498
- 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) {
577
+ var ErrorMessage = _styledComponents["default"].div(_templateObject12 || (_templateObject12 = (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
578
  return props.theme.errorMessageFontColor;
500
579
  }, function (props) {
501
580
  return props.theme.errorMessageFontFamily;