@synerise/ds-file-uploader 0.7.1 → 0.7.3

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.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,25 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [0.7.3](https://github.com/Synerise/synerise-design/compare/@synerise/ds-file-uploader@0.7.2...@synerise/ds-file-uploader@0.7.3) (2024-11-22)
7
+
8
+ **Note:** Version bump only for package @synerise/ds-file-uploader
9
+
10
+
11
+
12
+
13
+
14
+ ## [0.7.2](https://github.com/Synerise/synerise-design/compare/@synerise/ds-file-uploader@0.7.1...@synerise/ds-file-uploader@0.7.2) (2024-11-21)
15
+
16
+
17
+ ### Bug Fixes
18
+
19
+ * **core:** onError fn types ([c34bdfe](https://github.com/Synerise/synerise-design/commit/c34bdfe9da898d7999c605f9fbcbba4716dfb6d4))
20
+
21
+
22
+
23
+
24
+
6
25
  ## [0.7.1](https://github.com/Synerise/synerise-design/compare/@synerise/ds-file-uploader@0.7.0...@synerise/ds-file-uploader@0.7.1) (2024-11-12)
7
26
 
8
27
  **Note:** Version bump only for package @synerise/ds-file-uploader
@@ -1,5 +1,4 @@
1
1
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
-
3
2
  import React from 'react';
4
3
  import { useDropzone } from 'react-dropzone';
5
4
  import Tooltip from '@synerise/ds-tooltip';
@@ -7,48 +6,41 @@ import Icon, { InfoFillS, Add3M, FileTypePictureL } from '@synerise/ds-icon';
7
6
  import Button from '@synerise/ds-button';
8
7
  import FileViewAvatar from './FileViewAvatar/FileViewAvatar';
9
8
  import * as S from './AvatarUploader.styles';
10
-
11
9
  function readAsText(file) {
12
10
  return new Promise(function (resolve) {
13
11
  // eslint-disable-next-line no-undef
14
12
  var reader = new FileReader();
15
13
  file.type !== 'text/plain' && resolve(null);
16
-
17
14
  reader.onerror = function () {
18
15
  return resolve(null);
19
16
  };
20
-
21
17
  reader.onload = function () {
22
18
  return resolve(reader.result);
23
19
  };
24
-
25
20
  reader.readAsText(file);
26
21
  });
27
22
  }
28
-
29
23
  var AvatarUploader = function AvatarUploader(_ref) {
30
24
  var className = _ref.className,
31
- onUpload = _ref.onUpload,
32
- disabled = _ref.disabled,
33
- accept = _ref.accept,
34
- error = _ref.error,
35
- label = _ref.label,
36
- _onRemove = _ref.onRemove,
37
- description = _ref.description,
38
- tooltip = _ref.tooltip,
39
- filesAmount = _ref.filesAmount,
40
- _ref$mode = _ref.mode,
41
- mode = _ref$mode === void 0 ? 'single' : _ref$mode,
42
- _ref$removable = _ref.removable,
43
- removable = _ref$removable === void 0 ? true : _ref$removable,
44
- _ref$files = _ref.files,
45
- files = _ref$files === void 0 ? [] : _ref$files,
46
- texts = _ref.texts;
47
-
25
+ onUpload = _ref.onUpload,
26
+ disabled = _ref.disabled,
27
+ accept = _ref.accept,
28
+ error = _ref.error,
29
+ label = _ref.label,
30
+ _onRemove = _ref.onRemove,
31
+ description = _ref.description,
32
+ tooltip = _ref.tooltip,
33
+ filesAmount = _ref.filesAmount,
34
+ _ref$mode = _ref.mode,
35
+ mode = _ref$mode === void 0 ? 'single' : _ref$mode,
36
+ _ref$removable = _ref.removable,
37
+ removable = _ref$removable === void 0 ? true : _ref$removable,
38
+ _ref$files = _ref.files,
39
+ files = _ref$files === void 0 ? [] : _ref$files,
40
+ texts = _ref.texts;
48
41
  var _React$useState = React.useState(true),
49
- uploadSuccess = _React$useState[0],
50
- setUploadSuccess = _React$useState[1];
51
-
42
+ uploadSuccess = _React$useState[0],
43
+ setUploadSuccess = _React$useState[1];
52
44
  var readFilesContent = React.useCallback(function (addedFiles) {
53
45
  var readerPromises = addedFiles.map(function (file) {
54
46
  return readAsText(file);
@@ -64,11 +56,9 @@ var AvatarUploader = function AvatarUploader(_ref) {
64
56
  }, [onUpload]);
65
57
  var onDrop = React.useCallback(function (acceptedFiles) {
66
58
  var possibleUpload = 0;
67
-
68
59
  if (filesAmount) {
69
60
  possibleUpload = filesAmount - files.length;
70
61
  }
71
-
72
62
  if (possibleUpload !== 0 && acceptedFiles.length > possibleUpload) {
73
63
  setUploadSuccess(false);
74
64
  } else {
@@ -76,29 +66,24 @@ var AvatarUploader = function AvatarUploader(_ref) {
76
66
  readFilesContent(acceptedFiles);
77
67
  }
78
68
  }, [filesAmount, files, setUploadSuccess, readFilesContent]);
79
-
80
69
  var _useDropzone = useDropzone({
81
- accept: accept ? accept.join(',') : undefined,
82
- multiple: mode !== 'single',
83
- onDrop: onDrop,
84
- disabled: disabled
85
- }),
86
- getRootProps = _useDropzone.getRootProps,
87
- getInputProps = _useDropzone.getInputProps,
88
- isDragActive = _useDropzone.isDragActive;
89
-
70
+ accept: accept ? accept.join(',') : undefined,
71
+ multiple: mode !== 'single',
72
+ onDrop: onDrop,
73
+ disabled: disabled
74
+ }),
75
+ getRootProps = _useDropzone.getRootProps,
76
+ getInputProps = _useDropzone.getInputProps,
77
+ isDragActive = _useDropzone.isDragActive;
90
78
  if (filesAmount && filesAmount < 1) {
91
79
  // eslint-disable-next-line no-param-reassign
92
80
  filesAmount = 1;
93
81
  throw new Error('Invalid value of property "filesAmount" ');
94
82
  }
95
-
96
83
  var hasError = Boolean(error) || !uploadSuccess;
97
-
98
84
  var _React$useState2 = React.useState(false),
99
- pressed = _React$useState2[0],
100
- setPressed = _React$useState2[1];
101
-
85
+ pressed = _React$useState2[0],
86
+ setPressed = _React$useState2[1];
102
87
  return /*#__PURE__*/React.createElement(S.Container, {
103
88
  className: "ds-file-avatar-uploader " + (className || '')
104
89
  }, label && /*#__PURE__*/React.createElement(S.Label, null, /*#__PURE__*/React.createElement("span", null, label), tooltip && /*#__PURE__*/React.createElement(Tooltip, {
@@ -154,5 +139,4 @@ var AvatarUploader = function AvatarUploader(_ref) {
154
139
  hasError: hasError
155
140
  }, description))));
156
141
  };
157
-
158
142
  export default AvatarUploader;
@@ -1,13 +1,8 @@
1
1
  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; }
2
-
3
2
  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) { _defineProperty(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; }
4
-
5
3
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
-
7
4
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
8
-
9
5
  function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
10
-
11
6
  import React, { useState } from 'react';
12
7
  import { FormattedMessage } from 'react-intl';
13
8
  import Tooltip from '@synerise/ds-tooltip';
@@ -21,19 +16,17 @@ var mapperOfIcons = {
21
16
  'image/svg+xml': /*#__PURE__*/React.createElement(FileTypeImageM, null),
22
17
  'text/csv': /*#__PURE__*/React.createElement(FileTypeImageM, null)
23
18
  };
24
-
25
19
  var FileViewAvatar = function FileViewAvatar(_ref) {
26
20
  var data = _ref.data,
27
- texts = _ref.texts,
28
- onRemove = _ref.onRemove,
29
- removable = _ref.removable,
30
- description = _ref.description;
21
+ texts = _ref.texts,
22
+ onRemove = _ref.onRemove,
23
+ removable = _ref.removable,
24
+ description = _ref.description;
31
25
  var disabled = data.disabled,
32
- error = data.error,
33
- file = data.file,
34
- progress = data.progress;
26
+ error = data.error,
27
+ file = data.file,
28
+ progress = data.progress;
35
29
  var fileSource = URL.createObjectURL(data.file);
36
-
37
30
  var finalTexts = _objectSpread({
38
31
  retryTooltip: /*#__PURE__*/React.createElement(FormattedMessage, {
39
32
  id: "DS.FILE-UPLOADER.RETRY-TOOLTIP",
@@ -44,28 +37,22 @@ var FileViewAvatar = function FileViewAvatar(_ref) {
44
37
  defaultMessage: "Remove"
45
38
  })
46
39
  }, texts);
47
-
48
40
  var hasError = !!error;
49
41
  var hasProgress = typeof progress === 'number';
50
-
51
42
  var _useState = useState(false),
52
- pressed = _useState[0],
53
- setPressed = _useState[1];
54
-
43
+ pressed = _useState[0],
44
+ setPressed = _useState[1];
55
45
  var handleRemoveAvatar = function handleRemoveAvatar() {
56
46
  onRemove && onRemove();
57
47
  setPressed(false);
58
48
  };
59
-
60
49
  var _useState2 = useState(false),
61
- removeButtonPressed = _useState2[0],
62
- removeButtonSetPressed = _useState2[1];
63
-
50
+ removeButtonPressed = _useState2[0],
51
+ removeButtonSetPressed = _useState2[1];
64
52
  var handleRemove = function handleRemove() {
65
53
  onRemove && onRemove();
66
54
  removeButtonSetPressed(false);
67
55
  };
68
-
69
56
  return /*#__PURE__*/React.createElement(S.FileAvatarContainer, null, /*#__PURE__*/React.createElement(S.AvatarContainer, {
70
57
  removable: removable,
71
58
  disabled: disabled,
@@ -123,5 +110,4 @@ var FileViewAvatar = function FileViewAvatar(_ref) {
123
110
  size: 16
124
111
  }))))), /*#__PURE__*/React.createElement(S.DescriptionUploader, null, description)));
125
112
  };
126
-
127
113
  export default FileViewAvatar;
@@ -1,15 +1,9 @@
1
1
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
-
3
2
  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; }
4
-
5
3
  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) { _defineProperty(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; }
6
-
7
4
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
8
-
9
5
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
10
-
11
6
  function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
12
-
13
7
  import React, { useState, useCallback } from 'react';
14
8
  import { FormattedMessage } from 'react-intl';
15
9
  import { useDropzone } from 'react-dropzone';
@@ -17,49 +11,42 @@ import Icon, { AddM, InfoFillS, FileUploadL } from '@synerise/ds-icon';
17
11
  import Tooltip from '@synerise/ds-tooltip';
18
12
  import FileView from './FileView/FileView';
19
13
  import * as S from './FileUploader.styles';
20
-
21
14
  function readAsText(file) {
22
15
  return new Promise(function (resolve) {
23
16
  // eslint-disable-next-line no-undef
24
17
  var reader = new FileReader();
25
18
  file.type !== 'text/plain' && resolve(null);
26
-
27
19
  reader.onerror = function () {
28
20
  return resolve(null);
29
21
  };
30
-
31
22
  reader.onload = function () {
32
23
  return resolve(reader.result);
33
24
  };
34
-
35
25
  reader.readAsText(file);
36
26
  });
37
27
  }
38
-
39
28
  var FileUploader = function FileUploader(_ref) {
40
29
  var className = _ref.className,
41
- onUpload = _ref.onUpload,
42
- disabled = _ref.disabled,
43
- accept = _ref.accept,
44
- error = _ref.error,
45
- label = _ref.label,
46
- _onRemove = _ref.onRemove,
47
- description = _ref.description,
48
- tooltip = _ref.tooltip,
49
- filesAmount = _ref.filesAmount,
50
- _ref$mode = _ref.mode,
51
- mode = _ref$mode === void 0 ? 'single' : _ref$mode,
52
- _ref$removable = _ref.removable,
53
- removable = _ref$removable === void 0 ? true : _ref$removable,
54
- _ref$files = _ref.files,
55
- files = _ref$files === void 0 ? [] : _ref$files,
56
- retry = _ref.retry,
57
- texts = _ref.texts;
58
-
30
+ onUpload = _ref.onUpload,
31
+ disabled = _ref.disabled,
32
+ accept = _ref.accept,
33
+ error = _ref.error,
34
+ label = _ref.label,
35
+ _onRemove = _ref.onRemove,
36
+ description = _ref.description,
37
+ tooltip = _ref.tooltip,
38
+ filesAmount = _ref.filesAmount,
39
+ _ref$mode = _ref.mode,
40
+ mode = _ref$mode === void 0 ? 'single' : _ref$mode,
41
+ _ref$removable = _ref.removable,
42
+ removable = _ref$removable === void 0 ? true : _ref$removable,
43
+ _ref$files = _ref.files,
44
+ files = _ref$files === void 0 ? [] : _ref$files,
45
+ retry = _ref.retry,
46
+ texts = _ref.texts;
59
47
  var _useState = useState(true),
60
- uploadSuccess = _useState[0],
61
- setUploadSuccess = _useState[1];
62
-
48
+ uploadSuccess = _useState[0],
49
+ setUploadSuccess = _useState[1];
63
50
  var finalTexts = _objectSpread({
64
51
  buttonLabel: /*#__PURE__*/React.createElement(FormattedMessage, {
65
52
  id: "DS.FILE-UPLOADER.BUTTON-LABEL",
@@ -74,7 +61,6 @@ var FileUploader = function FileUploader(_ref) {
74
61
  defaultMessage: "Description"
75
62
  })
76
63
  }, texts);
77
-
78
64
  var readFilesContent = useCallback(function (addedFiles) {
79
65
  var readerPromises = addedFiles.map(function (file) {
80
66
  return readAsText(file);
@@ -90,11 +76,9 @@ var FileUploader = function FileUploader(_ref) {
90
76
  }, [onUpload]);
91
77
  var onDrop = useCallback(function (acceptedFiles) {
92
78
  var possibleUpload = 0;
93
-
94
79
  if (filesAmount) {
95
80
  possibleUpload = filesAmount - files.length;
96
81
  }
97
-
98
82
  if (possibleUpload !== 0 && acceptedFiles.length > possibleUpload) {
99
83
  setUploadSuccess(false);
100
84
  } else {
@@ -102,29 +86,24 @@ var FileUploader = function FileUploader(_ref) {
102
86
  readFilesContent(acceptedFiles);
103
87
  }
104
88
  }, [filesAmount, files, setUploadSuccess, readFilesContent]);
105
-
106
89
  var _useDropzone = useDropzone({
107
- accept: accept ? accept.join(',') : undefined,
108
- multiple: mode !== 'single',
109
- onDrop: onDrop,
110
- disabled: disabled
111
- }),
112
- getRootProps = _useDropzone.getRootProps,
113
- getInputProps = _useDropzone.getInputProps,
114
- isDragActive = _useDropzone.isDragActive;
115
-
90
+ accept: accept ? accept.join(',') : undefined,
91
+ multiple: mode !== 'single',
92
+ onDrop: onDrop,
93
+ disabled: disabled
94
+ }),
95
+ getRootProps = _useDropzone.getRootProps,
96
+ getInputProps = _useDropzone.getInputProps,
97
+ isDragActive = _useDropzone.isDragActive;
116
98
  if (filesAmount && filesAmount < 1) {
117
99
  // eslint-disable-next-line no-param-reassign
118
100
  filesAmount = 1;
119
101
  throw new Error('Invalid value of property "filesAmount" ');
120
102
  }
121
-
122
103
  var hasError = Boolean(error) || !uploadSuccess;
123
-
124
104
  var _useState2 = useState(false),
125
- pressed = _useState2[0],
126
- setPressed = _useState2[1];
127
-
105
+ pressed = _useState2[0],
106
+ setPressed = _useState2[1];
128
107
  var errors = hasError && !uploadSuccess ? [error].concat('To many files uploaded') : [error];
129
108
  return /*#__PURE__*/React.createElement(S.Container, {
130
109
  className: "ds-file-uploader " + (className || '')
@@ -164,7 +143,8 @@ var FileUploader = function FileUploader(_ref) {
164
143
  component: /*#__PURE__*/React.createElement(AddM, null),
165
144
  size: 24
166
145
  }), /*#__PURE__*/React.createElement(S.DropAreaLabel, null, finalTexts.buttonLabel))))), files.length > 0 && files.map(function (file, index) {
167
- return /*#__PURE__*/React.createElement(FileView // eslint-disable-next-line react/no-array-index-key
146
+ return /*#__PURE__*/React.createElement(FileView
147
+ // eslint-disable-next-line react/no-array-index-key
168
148
  , {
169
149
  key: index,
170
150
  texts: texts,
@@ -185,5 +165,4 @@ var FileUploader = function FileUploader(_ref) {
185
165
  hasError: hasError
186
166
  }, description));
187
167
  };
188
-
189
168
  export default FileUploader;
@@ -1,13 +1,8 @@
1
1
  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; }
2
-
3
2
  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) { _defineProperty(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; }
4
-
5
3
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
-
7
4
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
8
-
9
5
  function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
10
-
11
6
  import React, { useState } from 'react';
12
7
  import filesize from 'filesize.js';
13
8
  import ProgressBar from '@synerise/ds-progress-bar';
@@ -33,25 +28,21 @@ var mapperOfIcons = {
33
28
  'application/vnd.openxmlformats-officedocument.presentationml.presentation': /*#__PURE__*/React.createElement(FileTypePptx, null),
34
29
  'text/csv': /*#__PURE__*/React.createElement(FileTypeTxt, null)
35
30
  };
36
-
37
31
  var FileView = function FileView(_ref) {
38
32
  var data = _ref.data,
39
- texts = _ref.texts,
40
- onRemove = _ref.onRemove,
41
- removable = _ref.removable,
42
- retry = _ref.retry,
43
- retryButtonProps = _ref.retryButtonProps;
44
-
33
+ texts = _ref.texts,
34
+ onRemove = _ref.onRemove,
35
+ removable = _ref.removable,
36
+ retry = _ref.retry,
37
+ retryButtonProps = _ref.retryButtonProps;
45
38
  var getFriendlySize = function getFriendlySize(size) {
46
39
  return filesize(size || 0);
47
40
  };
48
-
49
41
  var disabled = data.disabled,
50
- error = data.error,
51
- file = data.file,
52
- progress = data.progress,
53
- success = data.success;
54
-
42
+ error = data.error,
43
+ file = data.file,
44
+ progress = data.progress,
45
+ success = data.success;
55
46
  var finalTexts = _objectSpread({
56
47
  size: /*#__PURE__*/React.createElement(FormattedMessage, {
57
48
  id: "DS.FILE-UPLOADER.SIZE",
@@ -90,19 +81,15 @@ var FileView = function FileView(_ref) {
90
81
  defaultMessage: "Retry"
91
82
  })
92
83
  }, texts);
93
-
94
84
  var hasError = !!error;
95
85
  var hasProgress = typeof progress === 'number';
96
-
97
86
  var _useState = useState(false),
98
- pressed = _useState[0],
99
- setPressed = _useState[1];
100
-
87
+ pressed = _useState[0],
88
+ setPressed = _useState[1];
101
89
  var handleRemove = function handleRemove() {
102
90
  onRemove && onRemove();
103
91
  setPressed(false);
104
92
  };
105
-
106
93
  return /*#__PURE__*/React.createElement(S.FileViewContainer, {
107
94
  success: success,
108
95
  pressed: pressed,
@@ -137,7 +124,6 @@ var FileView = function FileView(_ref) {
137
124
  }))))) : /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(S.Name, null, file.name), /*#__PURE__*/React.createElement(S.SizeOrError, null, error || /*#__PURE__*/React.createElement(React.Fragment, null, finalTexts.size, " ", getFriendlySize(file.size))))), error && retry && !hasProgress && /*#__PURE__*/React.createElement(Button, {
138
125
  onClick: function onClick(event) {
139
126
  onRemove && onRemove();
140
-
141
127
  if (retryButtonProps != null && retryButtonProps.onClick) {
142
128
  retryButtonProps.onClick(event);
143
129
  }
@@ -181,5 +167,4 @@ var FileView = function FileView(_ref) {
181
167
  size: 20
182
168
  })))));
183
169
  };
184
-
185
170
  export default FileView;
@@ -1,5 +1,4 @@
1
1
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
-
3
2
  import React from 'react';
4
3
  import { useDropzone } from 'react-dropzone';
5
4
  import Icon, { InfoFillS, Add3M } from '@synerise/ds-icon';
@@ -7,48 +6,41 @@ import Tooltip from '@synerise/ds-tooltip';
7
6
  import Button from '@synerise/ds-button';
8
7
  import * as S from './ItemUploader.styles';
9
8
  import FileViewItem from './UploaderButton/FileViewItem';
10
-
11
9
  function readAsText(file) {
12
10
  return new Promise(function (resolve) {
13
11
  // eslint-disable-next-line no-undef
14
12
  var reader = new FileReader();
15
13
  file.type !== 'text/plain' && resolve(null);
16
-
17
14
  reader.onerror = function () {
18
15
  return resolve(null);
19
16
  };
20
-
21
17
  reader.onload = function () {
22
18
  return resolve(reader.result);
23
19
  };
24
-
25
20
  reader.readAsText(file);
26
21
  });
27
22
  }
28
-
29
23
  var ItemUploader = function ItemUploader(_ref) {
30
24
  var className = _ref.className,
31
- onUpload = _ref.onUpload,
32
- disabled = _ref.disabled,
33
- accept = _ref.accept,
34
- label = _ref.label,
35
- _onRemove = _ref.onRemove,
36
- description = _ref.description,
37
- tooltip = _ref.tooltip,
38
- filesAmount = _ref.filesAmount,
39
- error = _ref.error,
40
- _ref$mode = _ref.mode,
41
- mode = _ref$mode === void 0 ? 'single' : _ref$mode,
42
- _ref$removable = _ref.removable,
43
- removable = _ref$removable === void 0 ? true : _ref$removable,
44
- _ref$files = _ref.files,
45
- files = _ref$files === void 0 ? [] : _ref$files,
46
- texts = _ref.texts;
47
-
25
+ onUpload = _ref.onUpload,
26
+ disabled = _ref.disabled,
27
+ accept = _ref.accept,
28
+ label = _ref.label,
29
+ _onRemove = _ref.onRemove,
30
+ description = _ref.description,
31
+ tooltip = _ref.tooltip,
32
+ filesAmount = _ref.filesAmount,
33
+ error = _ref.error,
34
+ _ref$mode = _ref.mode,
35
+ mode = _ref$mode === void 0 ? 'single' : _ref$mode,
36
+ _ref$removable = _ref.removable,
37
+ removable = _ref$removable === void 0 ? true : _ref$removable,
38
+ _ref$files = _ref.files,
39
+ files = _ref$files === void 0 ? [] : _ref$files,
40
+ texts = _ref.texts;
48
41
  var _React$useState = React.useState(true),
49
- uploadSuccess = _React$useState[0],
50
- setUploadSuccess = _React$useState[1];
51
-
42
+ uploadSuccess = _React$useState[0],
43
+ setUploadSuccess = _React$useState[1];
52
44
  var readFilesContent = React.useCallback(function (addedFiles) {
53
45
  var readerPromises = addedFiles.map(function (file) {
54
46
  return readAsText(file);
@@ -64,11 +56,9 @@ var ItemUploader = function ItemUploader(_ref) {
64
56
  }, [onUpload]);
65
57
  var onDrop = React.useCallback(function (acceptedFiles) {
66
58
  var possibleUpload = 0;
67
-
68
59
  if (filesAmount) {
69
60
  possibleUpload = filesAmount - files.length;
70
61
  }
71
-
72
62
  if (possibleUpload !== 0 && acceptedFiles.length > possibleUpload) {
73
63
  setUploadSuccess(false);
74
64
  } else {
@@ -76,22 +66,19 @@ var ItemUploader = function ItemUploader(_ref) {
76
66
  readFilesContent(acceptedFiles);
77
67
  }
78
68
  }, [filesAmount, files, setUploadSuccess, readFilesContent]);
79
-
80
69
  var _useDropzone = useDropzone({
81
- accept: accept ? accept.join(',') : undefined,
82
- multiple: mode !== 'single',
83
- onDrop: onDrop,
84
- disabled: disabled
85
- }),
86
- getRootProps = _useDropzone.getRootProps,
87
- getInputProps = _useDropzone.getInputProps;
88
-
70
+ accept: accept ? accept.join(',') : undefined,
71
+ multiple: mode !== 'single',
72
+ onDrop: onDrop,
73
+ disabled: disabled
74
+ }),
75
+ getRootProps = _useDropzone.getRootProps,
76
+ getInputProps = _useDropzone.getInputProps;
89
77
  if (filesAmount && filesAmount < 1) {
90
78
  // eslint-disable-next-line no-param-reassign
91
79
  filesAmount = 1;
92
80
  throw new Error('Invalid value of property "filesAmount" ');
93
81
  }
94
-
95
82
  var hasError = Boolean(error) || !uploadSuccess;
96
83
  var errors = hasError && !uploadSuccess ? [error].concat('To many files uploaded') : [error];
97
84
  return /*#__PURE__*/React.createElement(S.Container, {
@@ -136,5 +123,4 @@ var ItemUploader = function ItemUploader(_ref) {
136
123
  hasError: hasError
137
124
  }, description));
138
125
  };
139
-
140
126
  export default ItemUploader;
@@ -1,13 +1,8 @@
1
1
  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; }
2
-
3
2
  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) { _defineProperty(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; }
4
-
5
3
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
-
7
4
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
8
-
9
5
  function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
10
-
11
6
  import React, { useState } from 'react';
12
7
  import { FormattedMessage } from 'react-intl';
13
8
  import Tooltip from '@synerise/ds-tooltip';
@@ -21,17 +16,15 @@ var mapperOfIcons = {
21
16
  'image/svg+xml': /*#__PURE__*/React.createElement(FileTypeTextM, null),
22
17
  'text/csv': /*#__PURE__*/React.createElement(FileTypeTextM, null)
23
18
  };
24
-
25
19
  var FileViewItem = function FileViewItem(_ref) {
26
20
  var data = _ref.data,
27
- texts = _ref.texts,
28
- onRemove = _ref.onRemove,
29
- removable = _ref.removable;
21
+ texts = _ref.texts,
22
+ onRemove = _ref.onRemove,
23
+ removable = _ref.removable;
30
24
  var disabled = data.disabled,
31
- error = data.error,
32
- file = data.file,
33
- progress = data.progress;
34
-
25
+ error = data.error,
26
+ file = data.file,
27
+ progress = data.progress;
35
28
  var finalTexts = _objectSpread({
36
29
  retryTooltip: /*#__PURE__*/React.createElement(FormattedMessage, {
37
30
  id: "DS.FILE-UPLOADER.RETRY-TOOLTIP",
@@ -42,19 +35,15 @@ var FileViewItem = function FileViewItem(_ref) {
42
35
  defaultMessage: "Remove"
43
36
  })
44
37
  }, texts);
45
-
46
38
  var hasError = !!error;
47
39
  var hasProgress = typeof progress === 'number';
48
-
49
40
  var _useState = useState(false),
50
- removeButtonPressed = _useState[0],
51
- removeButtonSetPressed = _useState[1];
52
-
41
+ removeButtonPressed = _useState[0],
42
+ removeButtonSetPressed = _useState[1];
53
43
  var handleRemove = function handleRemove() {
54
44
  onRemove && onRemove();
55
45
  removeButtonSetPressed(false);
56
46
  };
57
-
58
47
  return /*#__PURE__*/React.createElement(S.FileViewContainer, null, /*#__PURE__*/React.createElement(Tooltip, {
59
48
  overlayStyle: {
60
49
  maxWidth: '350px'
@@ -93,5 +82,4 @@ var FileViewItem = function FileViewItem(_ref) {
93
82
  size: 16
94
83
  }))))));
95
84
  };
96
-
97
85
  export default FileViewItem;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@synerise/ds-file-uploader",
3
- "version": "0.7.1",
3
+ "version": "0.7.3",
4
4
  "description": "FileUploader UI Component for the Synerise Design System",
5
5
  "license": "ISC",
6
6
  "repository": "Synerise/synerise-design",
@@ -34,22 +34,22 @@
34
34
  ],
35
35
  "types": "dist/index.d.ts",
36
36
  "dependencies": {
37
- "@synerise/ds-button": "^0.21.18",
38
- "@synerise/ds-icon": "^0.66.4",
39
- "@synerise/ds-loader": "^0.3.21",
40
- "@synerise/ds-popconfirm": "^0.10.59",
41
- "@synerise/ds-progress-bar": "^0.7.13",
42
- "@synerise/ds-tooltip": "^0.14.48",
43
- "@synerise/ds-typography": "^0.16.5",
44
- "@synerise/ds-utils": "^0.31.1",
37
+ "@synerise/ds-button": "^0.21.19",
38
+ "@synerise/ds-icon": "^0.67.0",
39
+ "@synerise/ds-loader": "^0.3.22",
40
+ "@synerise/ds-popconfirm": "^0.10.61",
41
+ "@synerise/ds-progress-bar": "^0.7.14",
42
+ "@synerise/ds-tooltip": "^0.14.49",
43
+ "@synerise/ds-typography": "^0.16.6",
44
+ "@synerise/ds-utils": "^0.31.2",
45
45
  "filesize.js": "^2.0.0",
46
- "react-dropzone": "^10.2.1",
47
- "react-intl": "6.8.4"
46
+ "react-dropzone": "^10.2.1"
48
47
  },
49
48
  "peerDependencies": {
50
49
  "@synerise/ds-core": "*",
51
50
  "react": ">=16.9.0 <= 17.0.2",
51
+ "react-intl": ">=3.12.0 <= 6.8",
52
52
  "styled-components": "5.0.1"
53
53
  },
54
- "gitHead": "8d26191fc0475407e0691b9b183761ad3cd7c87d"
54
+ "gitHead": "e9897e5ecb13a9c022f5ed002db76e4ab78318c5"
55
55
  }