@paprika/uploader 4.1.0 → 4.1.1-next.2
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 +25 -0
- package/lib/Uploader.js +2 -5
- package/lib/Uploader.js.map +1 -1
- package/package.json +6 -6
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,30 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 4.1.1-next.2
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 29c9db7: Stop reseting input value
|
|
8
|
+
|
|
9
|
+
## 4.1.1-next.1
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- Updated dependencies [dae4008]
|
|
14
|
+
- @paprika/stylers@1.1.7-next.0
|
|
15
|
+
- @paprika/button@1.1.13-next.1
|
|
16
|
+
- @paprika/popover@2.0.5-next.1
|
|
17
|
+
- @paprika/raw-button@1.0.13-next.0
|
|
18
|
+
|
|
19
|
+
## 4.1.1-next.0
|
|
20
|
+
|
|
21
|
+
### Patch Changes
|
|
22
|
+
|
|
23
|
+
- Updated dependencies [49aa7f9]
|
|
24
|
+
- @paprika/helpers@2.4.0-next.0
|
|
25
|
+
- @paprika/button@1.1.13-next.0
|
|
26
|
+
- @paprika/popover@2.0.5-next.0
|
|
27
|
+
|
|
3
28
|
## 4.1.0
|
|
4
29
|
|
|
5
30
|
### Minor Changes
|
package/lib/Uploader.js
CHANGED
|
@@ -227,12 +227,9 @@ var Uploader = /*#__PURE__*/_react["default"].forwardRef(function (props, ref) {
|
|
|
227
227
|
endpoint: endpoint
|
|
228
228
|
});
|
|
229
229
|
setFiles(function () {
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
}
|
|
230
|
+
return canChooseMultiple ? files : [files[0]];
|
|
231
|
+
}); // in case only allow one file per upload
|
|
233
232
|
|
|
234
|
-
return canChooseMultiple ? files : [files[0]]; // in case only allow one file per upload
|
|
235
|
-
});
|
|
236
233
|
onChange(files);
|
|
237
234
|
}, [canChooseMultiple, endpoint, isDisabled, isBusy, maxFileSize, setFiles, supportedMimeTypes, onChange]);
|
|
238
235
|
|
package/lib/Uploader.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/Uploader.js"],"names":["oneMebibyte","UploaderContext","React","createContext","propTypes","a11yText","PropTypes","string","supportedMimeTypes","arrayOf","canChooseMultiple","bool","children","node","isRequired","isDisabled","endpoint","hasAutoUpload","isBodyDroppable","maxFileSize","number","onChange","func","onCompleted","headers","object","onProcessed","onRequest","onError","onCancel","zIndex","defaultProps","getDocumentBody","document","body","getContainer","refContainer","findContainer","current","Uploader","forwardRef","props","ref","morePropsOnUploaderWrapper","refInput","useRef","i18n","label","t","extendedInputProps","UploaderInputPropsCollector","useImperativeHandle","focus","files","isCompleted","isBusy","removeFile","cancelFile","setFiles","upload","handleChange","useCallback","event","value","dropArea","isDragLeave","isDraggingOver","displayName","types","DropZone","FileList","Input","convertUnitsToMebibytes","MiB"],"mappings":"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","sourcesContent":["import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport useI18n from \"@paprika/l10n/lib/useI18n\";\nimport { extractChildrenProps } from \"@paprika/helpers\";\nimport { getFiles } from \"./helpers\";\nimport FileList from \"./components/FileList\";\nimport DropZone from \"./components/DropZone\";\nimport * as types from \"./types\";\nimport useDragAndDropEvents from \"./useDragAndDropEvents\";\nimport useProcessFiles from \"./useProcessFiles\";\nimport UploaderInputPropsCollector from \"./components/UploaderInputPropsCollector\";\n\nconst oneMebibyte = 1048576;\n\nexport const UploaderContext = React.createContext(null);\n\nconst propTypes = {\n /**\n Accessible message for the input[type=\"file\"].\n */\n a11yText: PropTypes.string,\n /**\n An array of accepted file extensions and/or MIME types. Note that Microsoft MIME types don't seem to be enforced.\n */\n supportedMimeTypes: PropTypes.arrayOf(PropTypes.string),\n /**\n When false the uploader only accept one file per upload.\n */\n canChooseMultiple: PropTypes.bool,\n /**\n children nodes\n */\n children: PropTypes.node.isRequired,\n /**\n Is uploader disabled.\n */\n isDisabled: PropTypes.bool,\n /**\n The url that will be use to upload the files.\n */\n endpoint: PropTypes.string.isRequired,\n /**\n On true will upload the file as soon they are selected or dropped\n */\n hasAutoUpload: PropTypes.bool,\n /**\n When true the user will be able to drop files at any part of the document.body. On false will only receive files dropped exactly on the FileInput area.\n */\n isBodyDroppable: PropTypes.bool,\n /**\n Size in Mebibytes which is used for comparing each file that will be uploaded.\n */\n maxFileSize: PropTypes.number,\n /**\n This callback fires every time the input value has been changed.\n */\n onChange: PropTypes.func,\n /**\n Will fire once all files have been processed with the files as parameter.\n */\n onCompleted: PropTypes.func,\n /**\n you can pass an array of header objects.\n */\n headers: PropTypes.arrayOf(PropTypes.object),\n /**\n This callback fires when uploading is about to start (all files have been processed to see if they are valid type/size).\n */\n onProcessed: PropTypes.func,\n /**\n * Let you to take over the request method\n */\n onRequest: PropTypes.func,\n /**\n * Callback fired whenever an error occurs while uploading a file. It receives the raw server error as an argument. Whatever this function returns is what is displayed in the UI. If nothing is returned, it will display the raw server error.\n */\n onError: PropTypes.func,\n /**\n * Callback fired when the user cancels an uploading file.\n */\n onCancel: PropTypes.func,\n /**\n * z-index for popovers inside the uploader.\n */\n zIndex: PropTypes.number,\n};\n\nconst defaultProps = {\n a11yText: null,\n canChooseMultiple: true,\n isDisabled: false,\n hasAutoUpload: true,\n headers: [],\n isBodyDroppable: true,\n maxFileSize: oneMebibyte * 10, // 1048576bytes * 10 = 10,485,760 Mebibytes\n onCancel: () => {},\n onChange: () => {},\n onCompleted: () => {},\n onError: null,\n onProcessed: () => {},\n onRequest: null,\n supportedMimeTypes: [\"*/*\"],\n zIndex: 1,\n};\n\nfunction getDocumentBody() {\n return document.body;\n}\n\nfunction getContainer(refContainer) {\n return function findContainer() {\n return refContainer.current;\n };\n}\n\nconst Uploader = React.forwardRef((props, ref) => {\n const {\n a11yText,\n canChooseMultiple,\n children,\n endpoint,\n hasAutoUpload,\n headers,\n isBodyDroppable,\n isDisabled,\n maxFileSize,\n onCancel,\n onChange,\n onCompleted,\n onError,\n onProcessed,\n onRequest,\n supportedMimeTypes,\n zIndex,\n ...morePropsOnUploaderWrapper\n } = props;\n\n const refInput = React.useRef();\n const refContainer = React.useRef(null);\n const i18n = useI18n();\n const label = a11yText || i18n.t(\"uploader.choose_from_computer_a11y\");\n const extendedInputProps = extractChildrenProps(children, UploaderInputPropsCollector);\n\n React.useImperativeHandle(ref, () => ({\n focus: () => {\n refInput.current.focus();\n },\n }));\n\n const { files, isCompleted, isBusy, removeFile, cancelFile, setFiles, upload } = useProcessFiles({\n endpoint,\n hasAutoUpload,\n headers,\n onCompleted,\n onProcessed,\n onRequest,\n });\n\n const handleChange = React.useCallback(\n event => {\n if (isDisabled || isBusy) return;\n\n const files = getFiles({ event, maxFileSize, supportedMimeTypes, endpoint });\n setFiles(() => {\n if (refInput.current) {\n refInput.current.value = \"\";\n }\n return canChooseMultiple ? files : [files[0]]; // in case only allow one file per upload\n });\n onChange(files);\n },\n [canChooseMultiple, endpoint, isDisabled, isBusy, maxFileSize, setFiles, supportedMimeTypes, onChange]\n );\n\n const { isDragLeave, isDraggingOver } = useDragAndDropEvents({\n dropArea: isBodyDroppable ? getDocumentBody : getContainer(refContainer),\n handleChange,\n });\n\n const value = {\n cancelFile,\n canChooseMultiple,\n extendedInputProps,\n files,\n handleChange,\n isBusy,\n isCompleted,\n isDisabled,\n isDraggingOver,\n isDragLeave,\n label,\n maxFileSize,\n morePropsOnUploaderWrapper,\n onCancel,\n onError,\n refContainer,\n refInput,\n removeFile,\n supportedMimeTypes,\n upload,\n zIndex,\n };\n\n return <UploaderContext.Provider value={value}>{children}</UploaderContext.Provider>;\n});\n\nUploader.defaultProps = defaultProps;\nUploader.propTypes = propTypes;\nUploader.displayName = \"Uploader\";\nUploader.types = types;\n\nUploader.DropZone = DropZone;\nUploader.FileList = FileList;\nUploader.Input = UploaderInputPropsCollector;\n\n// utility tool to help creating a maximum desirable size for files\nUploader.convertUnitsToMebibytes = (MiB = 1) => oneMebibyte * MiB;\n\nexport default Uploader;\n"],"file":"Uploader.js"}
|
|
1
|
+
{"version":3,"sources":["../src/Uploader.js"],"names":["oneMebibyte","UploaderContext","React","createContext","propTypes","a11yText","PropTypes","string","supportedMimeTypes","arrayOf","canChooseMultiple","bool","children","node","isRequired","isDisabled","endpoint","hasAutoUpload","isBodyDroppable","maxFileSize","number","onChange","func","onCompleted","headers","object","onProcessed","onRequest","onError","onCancel","zIndex","defaultProps","getDocumentBody","document","body","getContainer","refContainer","findContainer","current","Uploader","forwardRef","props","ref","morePropsOnUploaderWrapper","refInput","useRef","i18n","label","t","extendedInputProps","UploaderInputPropsCollector","useImperativeHandle","focus","files","isCompleted","isBusy","removeFile","cancelFile","setFiles","upload","handleChange","useCallback","event","dropArea","isDragLeave","isDraggingOver","value","displayName","types","DropZone","FileList","Input","convertUnitsToMebibytes","MiB"],"mappings":"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","sourcesContent":["import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport useI18n from \"@paprika/l10n/lib/useI18n\";\nimport { extractChildrenProps } from \"@paprika/helpers\";\nimport { getFiles } from \"./helpers\";\nimport FileList from \"./components/FileList\";\nimport DropZone from \"./components/DropZone\";\nimport * as types from \"./types\";\nimport useDragAndDropEvents from \"./useDragAndDropEvents\";\nimport useProcessFiles from \"./useProcessFiles\";\nimport UploaderInputPropsCollector from \"./components/UploaderInputPropsCollector\";\n\nconst oneMebibyte = 1048576;\n\nexport const UploaderContext = React.createContext(null);\n\nconst propTypes = {\n /**\n Accessible message for the input[type=\"file\"].\n */\n a11yText: PropTypes.string,\n /**\n An array of accepted file extensions and/or MIME types. Note that Microsoft MIME types don't seem to be enforced.\n */\n supportedMimeTypes: PropTypes.arrayOf(PropTypes.string),\n /**\n When false the uploader only accept one file per upload.\n */\n canChooseMultiple: PropTypes.bool,\n /**\n children nodes\n */\n children: PropTypes.node.isRequired,\n /**\n Is uploader disabled.\n */\n isDisabled: PropTypes.bool,\n /**\n The url that will be use to upload the files.\n */\n endpoint: PropTypes.string.isRequired,\n /**\n On true will upload the file as soon they are selected or dropped\n */\n hasAutoUpload: PropTypes.bool,\n /**\n When true the user will be able to drop files at any part of the document.body. On false will only receive files dropped exactly on the FileInput area.\n */\n isBodyDroppable: PropTypes.bool,\n /**\n Size in Mebibytes which is used for comparing each file that will be uploaded.\n */\n maxFileSize: PropTypes.number,\n /**\n This callback fires every time the input value has been changed.\n */\n onChange: PropTypes.func,\n /**\n Will fire once all files have been processed with the files as parameter.\n */\n onCompleted: PropTypes.func,\n /**\n you can pass an array of header objects.\n */\n headers: PropTypes.arrayOf(PropTypes.object),\n /**\n This callback fires when uploading is about to start (all files have been processed to see if they are valid type/size).\n */\n onProcessed: PropTypes.func,\n /**\n * Let you to take over the request method\n */\n onRequest: PropTypes.func,\n /**\n * Callback fired whenever an error occurs while uploading a file. It receives the raw server error as an argument. Whatever this function returns is what is displayed in the UI. If nothing is returned, it will display the raw server error.\n */\n onError: PropTypes.func,\n /**\n * Callback fired when the user cancels an uploading file.\n */\n onCancel: PropTypes.func,\n /**\n * z-index for popovers inside the uploader.\n */\n zIndex: PropTypes.number,\n};\n\nconst defaultProps = {\n a11yText: null,\n canChooseMultiple: true,\n isDisabled: false,\n hasAutoUpload: true,\n headers: [],\n isBodyDroppable: true,\n maxFileSize: oneMebibyte * 10, // 1048576bytes * 10 = 10,485,760 Mebibytes\n onCancel: () => {},\n onChange: () => {},\n onCompleted: () => {},\n onError: null,\n onProcessed: () => {},\n onRequest: null,\n supportedMimeTypes: [\"*/*\"],\n zIndex: 1,\n};\n\nfunction getDocumentBody() {\n return document.body;\n}\n\nfunction getContainer(refContainer) {\n return function findContainer() {\n return refContainer.current;\n };\n}\n\nconst Uploader = React.forwardRef((props, ref) => {\n const {\n a11yText,\n canChooseMultiple,\n children,\n endpoint,\n hasAutoUpload,\n headers,\n isBodyDroppable,\n isDisabled,\n maxFileSize,\n onCancel,\n onChange,\n onCompleted,\n onError,\n onProcessed,\n onRequest,\n supportedMimeTypes,\n zIndex,\n ...morePropsOnUploaderWrapper\n } = props;\n\n const refInput = React.useRef();\n const refContainer = React.useRef(null);\n const i18n = useI18n();\n const label = a11yText || i18n.t(\"uploader.choose_from_computer_a11y\");\n const extendedInputProps = extractChildrenProps(children, UploaderInputPropsCollector);\n\n React.useImperativeHandle(ref, () => ({\n focus: () => {\n refInput.current.focus();\n },\n }));\n\n const { files, isCompleted, isBusy, removeFile, cancelFile, setFiles, upload } = useProcessFiles({\n endpoint,\n hasAutoUpload,\n headers,\n onCompleted,\n onProcessed,\n onRequest,\n });\n\n const handleChange = React.useCallback(\n event => {\n if (isDisabled || isBusy) return;\n\n const files = getFiles({ event, maxFileSize, supportedMimeTypes, endpoint });\n setFiles(() => (canChooseMultiple ? files : [files[0]])); // in case only allow one file per upload\n onChange(files);\n },\n [canChooseMultiple, endpoint, isDisabled, isBusy, maxFileSize, setFiles, supportedMimeTypes, onChange]\n );\n\n const { isDragLeave, isDraggingOver } = useDragAndDropEvents({\n dropArea: isBodyDroppable ? getDocumentBody : getContainer(refContainer),\n handleChange,\n });\n\n const value = {\n cancelFile,\n canChooseMultiple,\n extendedInputProps,\n files,\n handleChange,\n isBusy,\n isCompleted,\n isDisabled,\n isDraggingOver,\n isDragLeave,\n label,\n maxFileSize,\n morePropsOnUploaderWrapper,\n onCancel,\n onError,\n refContainer,\n refInput,\n removeFile,\n supportedMimeTypes,\n upload,\n zIndex,\n };\n\n return <UploaderContext.Provider value={value}>{children}</UploaderContext.Provider>;\n});\n\nUploader.defaultProps = defaultProps;\nUploader.propTypes = propTypes;\nUploader.displayName = \"Uploader\";\nUploader.types = types;\n\nUploader.DropZone = DropZone;\nUploader.FileList = FileList;\nUploader.Input = UploaderInputPropsCollector;\n\n// utility tool to help creating a maximum desirable size for files\nUploader.convertUnitsToMebibytes = (MiB = 1) => oneMebibyte * MiB;\n\nexport default Uploader;\n"],"file":"Uploader.js"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@paprika/uploader",
|
|
3
|
-
"version": "4.1.
|
|
3
|
+
"version": "4.1.1-next.2",
|
|
4
4
|
"description": "The Uploader component lets you upload files and see progress.",
|
|
5
5
|
"author": "@paprika",
|
|
6
6
|
"main": "lib/index.js",
|
|
@@ -16,12 +16,12 @@
|
|
|
16
16
|
},
|
|
17
17
|
"dependencies": {
|
|
18
18
|
"@babel/runtime-corejs2": "^7.3.1",
|
|
19
|
-
"@paprika/button": "^1.1.
|
|
20
|
-
"@paprika/helpers": "^2.
|
|
19
|
+
"@paprika/button": "^1.1.13-next.1",
|
|
20
|
+
"@paprika/helpers": "^2.4.0-next.0",
|
|
21
21
|
"@paprika/icon": "^2.1.7",
|
|
22
|
-
"@paprika/popover": "^2.0.
|
|
23
|
-
"@paprika/raw-button": "^1.0.
|
|
24
|
-
"@paprika/stylers": "^1.1.
|
|
22
|
+
"@paprika/popover": "^2.0.5-next.1",
|
|
23
|
+
"@paprika/raw-button": "^1.0.13-next.0",
|
|
24
|
+
"@paprika/stylers": "^1.1.7-next.0",
|
|
25
25
|
"@paprika/tokens": "^2.0.0",
|
|
26
26
|
"prop-types": "^15.7.2",
|
|
27
27
|
"superagent": "^5.1.0",
|