NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #2685 most downloaded on npm
Simple HTML5 drag-drop zone with React.js
Last release 21 days ago
14 Sep 2026
Ships unpredictably
gaps range from 2 weeks to 2.0 years
Nearly every release is documented
notes for 60 of the last 60 stable releases
1 version withdrawn
withdrawn after publishing
12 years old
216 releases · first in 2014
One column per quarter.
remove doka/pintura source files
declare the package as side effect free
# 11.5.0 (2022-01-10) ### Features * add onFileDialogOpen callback
re-export ErrorCode from './utils'
add missing ErrorCode export and close #1091
ts: export the error codes as an enum
ignore the vendor dir to avoid licensing issues
add the validator as dependency to onDropCb
typings: use generics for getRootProps and getInputProps
Check drag event contains files before showing "copy" cursor (ec93425), closes #1042
## 11.3.1 (2021-02-08) ### Bug Fixes * allow validator to be null
add {validator} for custom validation
add supported browsers via browserslist config and close #630
update internal state when maxFiles prop changes and close #1025
set isDragReject true when maxFiles rejects
deps: update file-selector and close #1022
add {maxFiles} to limit the accepted files
improve Typescript support for errors
## 11.0.3 (2020-08-13) ### Bug Fixes * define functions as properties
examples: rejectedFiles to fileRejections
## 11.0.1 (2020-04-26) ### Bug Fixes * #911 isDragActive value when dragging over text on Firefox
add reject reasons to onDrop, onDropRejected callbacks
onDrop and onDropRejected as well as the return value of useDropzone were changed in order to add the reasons why rejected files were rejected.onDrop BEFORE this change:
onDrop?<T extends File>(acceptedFiles: T[], rejectedFiles: T[], event: DropEvent): void;
onDrop AFTER this change:
onDrop?<T extends File>(acceptedFiles: T[], fileRejections: FileRejection[], event: DropEvent): void;
onDropRejected BEFORE this change:
onDropRejected?<T extends File>(files: T[], event: DropEvent): void;
onDropRejected AFTER this change:
onDropRejected?(fileRejections: FileRejection[], event: DropEvent): void;
rejectedFiles from the return value of useDropzone was replaced with
fileRejections.
The defintion of a FileRejection is:
export interface FileError {
message: string;
code: string;
}
export interface FileRejection {
file: File;
errors: FileError[];
}
## 10.2.2 (2020-03-26) ### Bug Fixes * #921 isDragReject consistent with onDrop
cover for edge cases when checking file size and close #888
# 10.2.0 (2019-11-16) ### Features * update deps and close #887
apply min/max file size conditions to {isDragReject} prop
store drag targets in a ref and close #876
fix open file dialog programmatically and close #853
allow setting input {disabled} prop to false
fix click event propagation and close #826
change types to support custom plugins
set {isDragActive} on drag enter and close #819
prevent click on input when propagated form a , close #182
remove check for multiple attr support and close #811
cache effect for setting the ref and close #806
add {noClick}, {noKeyboard}, {noDrag} and {noDragEventsBubbling} (91ee25d), closes #783
fix typings for {ref} and close #798
prevent errors in IE when dragEffect is set and close #791
check if document exists and fix #775
expose {open} on the ref and close #787
fix type for {accept} prop and close #780
update file-selector and close #776
migrate to react hooks, close #722, close #762 and close #760
remove deprecated() lib and close #764
<Dropzone>
{({getRootProps}) => (
<div {...getRootProps({onClick: evt => evt.preventDefault()})}>
Drop some files here
</div>
)}
</Dropzone>
add support for folder drag 'n' drop
use native {defaultPrevented} and {cancelBubble}
set dropEffect on dragover and close #749
fix check for file types and close #726
do not capture keyboard events from children and close #730
allow drag drop while file select dialog is opened
make headless (37306d9), closes #161 #468 #640 #706 #718
<Dropzone> component now requires a rendering function, either provided as the children or as a prop.Before:
<Dropzone />
After:
<Dropzone>
{({getRootProps}) => <div {...getRootProps()} />}
</Dropzone>
fix on file select dialog close behaviour (#707) (ff2b615), closes #652
remove file preview and close #705
If you wish to create previews, you can easily achieve this in the onDrop() callback:
class MyZone extends React.Component {
onDrop = files => {
this.setState({
files: files.map(file => ({
...file,
preview: URL.createObjectURL(file)
}))
});
}
cleanup = () => {
// Revoke data uris when done using the previews
const {files} = this.state;
for (const file of files) {
URL.revokeObjectURL(file.preview);
}
}
render() {
return (
<Dropzone onDrop={this.onDrop} />
);
}
}
fix event propagation and close #686
fix types for getDataTransferItems()
improve onClick and disableClick props (fixes #530)
# 6.2.0 (2018-10-13) ### Features * improve TypeScript setup
Your coding agent can read these notes before it upgrades. Set up the MCP server →