react-dropzone 3.13.3 → 3.13.4

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/README.md CHANGED
@@ -7,7 +7,8 @@
7
7
 
8
8
  Simple HTML5-compliant drag'n'drop zone for files built with React.js.
9
9
 
10
- Documentation and examples: https://react-dropzone.netlify.com
10
+ Documentation and examples: https://react-dropzone.js.org
11
+ Source code: https://github.com/okonet/react-dropzone/
11
12
 
12
13
  ---
13
14
 
@@ -0,0 +1 @@
1
+ module.exports = { extends: ['@commitlint/config-angular'] }
package/dist/index.js CHANGED
@@ -322,10 +322,15 @@ return /******/ (function(modules) { // webpackBootstrap
322
322
 
323
323
  if (!disableClick) {
324
324
  evt.stopPropagation();
325
- this.open();
325
+
326
326
  if (onClick) {
327
327
  onClick.call(this, evt);
328
328
  }
329
+
330
+ // in IE11/Edge the file-browser dialog is blocking, ensure this is behind setTimeout
331
+ // this is so react can handle state changes in the onClick prop above above
332
+ // see: https://github.com/okonet/react-dropzone/issues/450
333
+ setTimeout(this.open.bind(this), 0);
329
334
  }
330
335
  }
331
336
  }, {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack:///webpack/universalModuleDefinition","webpack:///webpack/bootstrap f80b3f97b41f131ae13a","webpack:///./src/index.js","webpack:///./~/process/browser.js","webpack:///external \"react\"","webpack:///external \"prop-types\"","webpack:///./~/attr-accept/dist/index.js","webpack:///./src/getDataTransferItems.js"],"names":["supportMultiple","document","createElement","fileAccepted","file","accept","type","Dropzone","evt","preventDefault","props","context","renderChildren","children","isDragActive","isDragReject","state","onClick","bind","onDocumentDrop","onDragStart","onDragEnter","onDragLeave","onDragOver","onDrop","onFileDialogCancel","setRef","setRefs","onInputElementClick","isFileDialogActive","draggedFiles","acceptedFiles","rejectedFiles","preventDropOnDocument","dragTargets","addEventListener","onDocumentDragOver","fileInputEl","body","onfocus","removeEventListener","node","contains","target","call","indexOf","push","setState","stopPropagation","dataTransfer","dropEffect","err","filter","el","length","onDropAccepted","onDropRejected","multiple","disablePreview","fileList","forEach","preview","window","URL","createObjectURL","process","env","NODE_ENV","console","error","fileMatchSize","splice","disableClick","open","inputProps","setTimeout","FileList","files","ref","size","maxSize","minSize","every","value","click","activeClassName","name","rejectClassName","rest","activeStyle","className","rejectStyle","style","filesCount","isMultipleAllowed","allFilesAccepted","width","height","borderWidth","borderColor","borderStyle","borderRadius","backgroundColor","appliedStyle","inputAttributes","display","onChange","customProps","divProps","prop","Component","propTypes","string","oneOfType","func","bool","object","number","defaultProps","Infinity","getDataTransferFiles","event","dataTransferItemsList","dt","items","Array","prototype","slice"],"mappings":"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;AACtBrF,0BAAuB,IADD;AAEtByB,mBAAgB,KAFM;AAGtBc,iBAAc,KAHQ;AAItBf,aAAU,IAJY;AAKtBuB,YAASuC,QALa;AAMtBtC,YAAS;AANa,EAAxB;;mBASe1E,Q;;;;;;;;AC/gBf;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA,MAAK;AACL;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;AACA;;;;AAIA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,wBAAuB,sBAAsB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAqB;AACrB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,sCAAqC;;AAErC;AACA;AACA;;AAEA,4BAA2B;AAC3B;AACA;AACA;AACA,6BAA4B,UAAU;;;;;;;ACvLtC,gD;;;;;;ACAA,gD;;;;;;ACAA,4BAA2B,cAAc,4BAA4B,YAAY,UAAU,iBAAiB,gEAAgE,SAAS,+BAA+B,kBAAkB,aAAa,qDAAqD,SAAS,iBAAiB,wFAAwF,OAAO,qBAAqB,eAAe,kHAAkH,GAAG,GAAG,iCAAiC,SAAS,wBAAwB,eAAe,iBAAiB,iBAAiB,8BAA8B,eAAe,8IAA8I,8BAA8B,iBAAiB,+DAA+D,kBAAkB,6BAA6B,mBAAmB,sDAAsD,WAAW,yBAAyB,EAAE,SAAS,kKAAkK,UAAU,2DAA2D,iBAAiB,mBAAmB,gCAAgC,6BAA6B,iBAAiB,iBAAiB,eAAe,aAAa,WAAW,mDAAmD,gNAAgN,eAAe,wBAAwB,sBAAsB,mEAAmE,iBAAiB,iCAAiC,sBAAsB,qDAAqD,iBAAiB,gCAAgC,iBAAiB,qCAAqC,eAAe,sBAAsB,iEAAiE,UAAU,eAAe,QAAQ,UAAU,sBAAsB,8BAA8B,iBAAiB,YAAY,0BAA0B,4BAA4B,UAAU,0BAA0B,oBAAoB,4BAA4B,sBAAsB,8BAA8B,wBAAwB,kBAAkB,8BAA8B,eAAe,sBAAsB,yDAAyD,UAAU,iBAAiB,sBAAsB,UAAU,IAAI,YAAY,SAAS,IAAI,wCAAwC,WAAW,UAAU,eAAe,sBAAsB,IAAI,YAAY,SAAS,WAAW,eAAe,sBAAsB,wDAAwD,iBAAiB,oCAAoC,sBAAsB,MAAM,qDAAqD,eAAe,wBAAwB,OAAO,gEAAgE,iBAAiB,6EAA6E,+BAA+B,iBAAiB,8BAA8B,4HAA4H,kCAAkC,qDAAqD,EAAE,iBAAiB,kDAAkD,EAAE,sBAAsB,qBAAqB,GAAG,iBAAiB,oBAAoB,0BAA0B,8DAA8D,qBAAqB,iBAAiB,4BAA4B,kCAAkC,MAAM,eAAe,UAAU,IAAI,EAAE,eAAe,6BAA6B,sBAAsB,mCAAmC,iBAAiB,uBAAuB,sBAAsB,uCAAuC,iBAAiB,aAAa,gDAAgD,6BAA6B,qBAAqB,iHAAiH,kDAAkD,EAAE,iBAAiB,0CAA0C,iBAAiB,qCAAqC,wEAAwE,GAAG,kOAAkO,G;;;;;;;;;;;mBCA51JiH,oB;AAAT,UAASA,oBAAT,CAA8BC,KAA9B,EAAqC;AAClD,OAAIC,wBAAwB,EAA5B;AACA,OAAID,MAAMxE,YAAV,EAAwB;AACtB,SAAM0E,KAAKF,MAAMxE,YAAjB;AACA,SAAI0E,GAAG9C,KAAH,IAAY8C,GAAG9C,KAAH,CAASvB,MAAzB,EAAiC;AAC/BoE,+BAAwBC,GAAG9C,KAA3B;AACD,MAFD,MAEO,IAAI8C,GAAGC,KAAH,IAAYD,GAAGC,KAAH,CAAStE,MAAzB,EAAiC;AACtC;AACA;AACAoE,+BAAwBC,GAAGC,KAA3B;AACD;AACF,IATD,MASO,IAAIH,MAAM9E,MAAN,IAAgB8E,MAAM9E,MAAN,CAAakC,KAAjC,EAAwC;AAC7C6C,6BAAwBD,MAAM9E,MAAN,CAAakC,KAArC;AACD;AACD;AACA,UAAOgD,MAAMC,SAAN,CAAgBC,KAAhB,CAAsBnF,IAAtB,CAA2B8E,qBAA3B,CAAP;AACD","file":"index.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"react\"), require(\"prop-types\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"react\", \"prop-types\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"Dropzone\"] = factory(require(\"react\"), require(\"prop-types\"));\n\telse\n\t\troot[\"Dropzone\"] = factory(root[\"react\"], root[\"prop-types\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE_2__, __WEBPACK_EXTERNAL_MODULE_3__) {\nreturn \n\n\n// WEBPACK FOOTER //\n// webpack/universalModuleDefinition"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId])\n \t\t\treturn installedModules[moduleId].exports;\n\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\texports: {},\n \t\t\tid: moduleId,\n \t\t\tloaded: false\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.loaded = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(0);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap f80b3f97b41f131ae13a","/* eslint prefer-template: 0 */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport accepts from 'attr-accept'\nimport getDataTransferItems from './getDataTransferItems'\n\nconst supportMultiple = typeof document !== 'undefined' && document && document.createElement\n ? 'multiple' in document.createElement('input')\n : true\n\nfunction fileAccepted(file, accept) {\n // Firefox versions prior to 53 return a bogus MIME type for every file drag, so dragovers with\n // that MIME type will always be accepted\n return file.type === 'application/x-moz-file' || accepts(file, accept)\n}\n\nclass Dropzone extends React.Component {\n static onDocumentDragOver(evt) {\n // allow the entire document to be a drag target\n evt.preventDefault()\n }\n\n constructor(props, context) {\n super(props, context)\n this.onClick = this.onClick.bind(this)\n this.onDocumentDrop = this.onDocumentDrop.bind(this)\n this.onDragStart = this.onDragStart.bind(this)\n this.onDragEnter = this.onDragEnter.bind(this)\n this.onDragLeave = this.onDragLeave.bind(this)\n this.onDragOver = this.onDragOver.bind(this)\n this.onDrop = this.onDrop.bind(this)\n this.onFileDialogCancel = this.onFileDialogCancel.bind(this)\n this.setRef = this.setRef.bind(this)\n this.setRefs = this.setRefs.bind(this)\n this.onInputElementClick = this.onInputElementClick.bind(this)\n this.isFileDialogActive = false\n this.state = {\n draggedFiles: [],\n acceptedFiles: [],\n rejectedFiles: []\n }\n }\n\n componentDidMount() {\n const { preventDropOnDocument } = this.props\n this.dragTargets = []\n\n if (preventDropOnDocument) {\n document.addEventListener('dragover', Dropzone.onDocumentDragOver, false)\n document.addEventListener('drop', this.onDocumentDrop, false)\n }\n this.fileInputEl.addEventListener('click', this.onInputElementClick, false)\n // Tried implementing addEventListener, but didn't work out\n document.body.onfocus = this.onFileDialogCancel\n }\n\n componentWillUnmount() {\n const { preventDropOnDocument } = this.props\n if (preventDropOnDocument) {\n document.removeEventListener('dragover', Dropzone.onDocumentDragOver)\n document.removeEventListener('drop', this.onDocumentDrop)\n }\n this.fileInputEl.removeEventListener('click', this.onInputElementClick, false)\n // Can be replaced with removeEventListener, if addEventListener works\n document.body.onfocus = null\n }\n\n onDocumentDrop(evt) {\n if (this.node.contains(evt.target)) {\n // if we intercepted an event for our instance, let it propagate down to the instance's onDrop handler\n return\n }\n evt.preventDefault()\n this.dragTargets = []\n }\n\n onDragStart(evt) {\n if (this.props.onDragStart) {\n this.props.onDragStart.call(this, evt)\n }\n }\n\n onDragEnter(evt) {\n evt.preventDefault()\n\n // Count the dropzone and any children that are entered.\n if (this.dragTargets.indexOf(evt.target) === -1) {\n this.dragTargets.push(evt.target)\n }\n\n this.setState({ draggedFiles: getDataTransferItems(evt) })\n\n if (this.props.onDragEnter) {\n this.props.onDragEnter.call(this, evt)\n }\n }\n\n onDragOver(evt) {\n // eslint-disable-line class-methods-use-this\n evt.preventDefault()\n evt.stopPropagation()\n try {\n evt.dataTransfer.dropEffect = 'copy' // eslint-disable-line no-param-reassign\n } catch (err) {\n // continue regardless of error\n }\n\n if (this.props.onDragOver) {\n this.props.onDragOver.call(this, evt)\n }\n return false\n }\n\n onDragLeave(evt) {\n evt.preventDefault()\n\n // Only deactivate once the dropzone and all children have been left.\n this.dragTargets = this.dragTargets.filter(el => el !== evt.target && this.node.contains(el))\n if (this.dragTargets.length > 0) {\n return\n }\n\n // Clear dragging files state\n this.setState({ draggedFiles: [] })\n\n if (this.props.onDragLeave) {\n this.props.onDragLeave.call(this, evt)\n }\n }\n\n onDrop(evt) {\n const { onDrop, onDropAccepted, onDropRejected, multiple, disablePreview, accept } = this.props\n const fileList = getDataTransferItems(evt)\n const acceptedFiles = []\n const rejectedFiles = []\n\n // Stop default browser behavior\n evt.preventDefault()\n\n // Reset the counter along with the drag on a drop.\n this.dragTargets = []\n this.isFileDialogActive = false\n\n fileList.forEach(file => {\n if (!disablePreview) {\n try {\n file.preview = window.URL.createObjectURL(file) // eslint-disable-line no-param-reassign\n } catch (err) {\n if (process.env.NODE_ENV !== 'production') {\n console.error('Failed to generate preview for file', file, err) // eslint-disable-line no-console\n }\n }\n }\n\n if (fileAccepted(file, accept) && this.fileMatchSize(file)) {\n acceptedFiles.push(file)\n } else {\n rejectedFiles.push(file)\n }\n })\n\n if (!multiple) {\n // if not in multi mode add any extra accepted files to rejected.\n // This will allow end users to easily ignore a multi file drop in \"single\" mode.\n rejectedFiles.push(...acceptedFiles.splice(1))\n }\n\n if (onDrop) {\n onDrop.call(this, acceptedFiles, rejectedFiles, evt)\n }\n\n if (rejectedFiles.length > 0 && onDropRejected) {\n onDropRejected.call(this, rejectedFiles, evt)\n }\n\n if (acceptedFiles.length > 0 && onDropAccepted) {\n onDropAccepted.call(this, acceptedFiles, evt)\n }\n\n // Clear files value\n this.draggedFiles = null\n\n // Reset drag state\n this.setState({\n draggedFiles: [],\n acceptedFiles,\n rejectedFiles\n })\n }\n\n onClick(evt) {\n const { onClick, disableClick } = this.props\n if (!disableClick) {\n evt.stopPropagation()\n this.open()\n if (onClick) {\n onClick.call(this, evt)\n }\n }\n }\n\n onInputElementClick(evt) {\n evt.stopPropagation()\n if (this.props.inputProps && this.props.inputProps.onClick) {\n this.props.inputProps.onClick()\n }\n }\n\n onFileDialogCancel() {\n // timeout will not recognize context of this method\n const { onFileDialogCancel } = this.props\n const { fileInputEl } = this\n let { isFileDialogActive } = this\n // execute the timeout only if the onFileDialogCancel is defined and FileDialog\n // is opened in the browser\n if (onFileDialogCancel && isFileDialogActive) {\n setTimeout(() => {\n // Returns an object as FileList\n const FileList = fileInputEl.files\n if (!FileList.length) {\n isFileDialogActive = false\n onFileDialogCancel()\n }\n }, 300)\n }\n }\n\n setRef(ref) {\n this.node = ref\n }\n\n setRefs(ref) {\n this.fileInputEl = ref\n }\n\n fileMatchSize(file) {\n return file.size <= this.props.maxSize && file.size >= this.props.minSize\n }\n\n allFilesAccepted(files) {\n return files.every(file => fileAccepted(file, this.props.accept))\n }\n\n /**\n * Open system file upload dialog.\n *\n * @public\n */\n open() {\n this.isFileDialogActive = true\n this.fileInputEl.value = null\n this.fileInputEl.click()\n }\n\n renderChildren = (children, isDragActive, isDragReject) => {\n if (typeof children === 'function') {\n return children({ ...this.state, isDragActive, isDragReject })\n }\n return children\n }\n\n render() {\n const {\n accept,\n activeClassName,\n inputProps,\n multiple,\n name,\n rejectClassName,\n children,\n ...rest\n } = this.props\n\n let {\n activeStyle,\n className,\n rejectStyle,\n style,\n ...props // eslint-disable-line prefer-const\n } = rest\n\n const { draggedFiles } = this.state\n const filesCount = draggedFiles.length\n const isMultipleAllowed = multiple || filesCount <= 1\n const isDragActive = filesCount > 0 && this.allFilesAccepted(draggedFiles)\n const isDragReject = filesCount > 0 && (!isDragActive || !isMultipleAllowed)\n\n className = className || ''\n\n if (isDragActive && activeClassName) {\n className += ' ' + activeClassName\n }\n if (isDragReject && rejectClassName) {\n className += ' ' + rejectClassName\n }\n\n if (!className && !style && !activeStyle && !rejectStyle) {\n style = {\n width: 200,\n height: 200,\n borderWidth: 2,\n borderColor: '#666',\n borderStyle: 'dashed',\n borderRadius: 5\n }\n activeStyle = {\n borderStyle: 'solid',\n borderColor: '#6c6',\n backgroundColor: '#eee'\n }\n rejectStyle = {\n borderStyle: 'solid',\n borderColor: '#c66',\n backgroundColor: '#eee'\n }\n }\n\n let appliedStyle\n if (activeStyle && isDragActive) {\n appliedStyle = {\n ...style,\n ...activeStyle\n }\n } else if (rejectStyle && isDragReject) {\n appliedStyle = {\n ...style,\n ...rejectStyle\n }\n } else {\n appliedStyle = {\n ...style\n }\n }\n\n const inputAttributes = {\n accept,\n type: 'file',\n style: { display: 'none' },\n multiple: supportMultiple && multiple,\n ref: this.setRefs,\n onChange: this.onDrop\n }\n\n if (name && name.length) {\n inputAttributes.name = name\n }\n\n // Remove custom properties before passing them to the wrapper div element\n const customProps = [\n 'acceptedFiles',\n 'preventDropOnDocument',\n 'disablePreview',\n 'disableClick',\n 'onDropAccepted',\n 'onDropRejected',\n 'onFileDialogCancel',\n 'maxSize',\n 'minSize'\n ]\n const divProps = { ...props }\n customProps.forEach(prop => delete divProps[prop])\n\n return (\n <div\n className={className}\n style={appliedStyle}\n {...divProps /* expand user provided props first so event handlers are never overridden */}\n onClick={this.onClick}\n onDragStart={this.onDragStart}\n onDragEnter={this.onDragEnter}\n onDragOver={this.onDragOver}\n onDragLeave={this.onDragLeave}\n onDrop={this.onDrop}\n ref={this.setRef}\n >\n {this.renderChildren(children, isDragActive, isDragReject)}\n <input\n {...inputProps /* expand user provided inputProps first so inputAttributes override them */}\n {...inputAttributes}\n />\n </div>\n )\n }\n}\n\nDropzone.propTypes = {\n /**\n * Allow specific types of files. See https://github.com/okonet/attr-accept for more information.\n * Keep in mind that mime type determination is not reliable accross platforms. CSV files,\n * for example, are reported as text/plain under macOS but as application/vnd.ms-excel under\n * Windows. In some cases there might not be a mime type set at all.\n * See: https://github.com/okonet/react-dropzone/issues/276\n */\n accept: PropTypes.string,\n\n /**\n * Contents of the dropzone\n */\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n\n /**\n * Disallow clicking on the dropzone container to open file dialog\n */\n disableClick: PropTypes.bool,\n\n /**\n * Enable/disable preview generation\n */\n disablePreview: PropTypes.bool,\n\n /**\n * If false, allow dropped items to take over the current browser window\n */\n preventDropOnDocument: PropTypes.bool,\n\n /**\n * Pass additional attributes to the `<input type=\"file\"/>` tag\n */\n inputProps: PropTypes.object,\n\n /**\n * Allow dropping multiple files\n */\n multiple: PropTypes.bool,\n\n /**\n * `name` attribute for the input tag\n */\n name: PropTypes.string,\n\n /**\n * Maximum file size\n */\n maxSize: PropTypes.number,\n\n /**\n * Minimum file size\n */\n minSize: PropTypes.number,\n\n /**\n * className\n */\n className: PropTypes.string,\n\n /**\n * className for accepted state\n */\n activeClassName: PropTypes.string,\n\n /**\n * className for rejected state\n */\n rejectClassName: PropTypes.string,\n\n /**\n * CSS styles to apply\n */\n style: PropTypes.object,\n\n /**\n * CSS styles to apply when drop will be accepted\n */\n activeStyle: PropTypes.object,\n\n /**\n * CSS styles to apply when drop will be rejected\n */\n rejectStyle: PropTypes.object,\n\n /**\n * onClick callback\n * @param {Event} event\n */\n onClick: PropTypes.func,\n\n /**\n * onDrop callback\n */\n onDrop: PropTypes.func,\n\n /**\n * onDropAccepted callback\n */\n onDropAccepted: PropTypes.func,\n\n /**\n * onDropRejected callback\n */\n onDropRejected: PropTypes.func,\n\n /**\n * onDragStart callback\n */\n onDragStart: PropTypes.func,\n\n /**\n * onDragEnter callback\n */\n onDragEnter: PropTypes.func,\n\n /**\n * onDragOver callback\n */\n onDragOver: PropTypes.func,\n\n /**\n * onDragLeave callback\n */\n onDragLeave: PropTypes.func,\n\n /**\n * Provide a callback on clicking the cancel button of the file dialog\n */\n onFileDialogCancel: PropTypes.func\n}\n\nDropzone.defaultProps = {\n preventDropOnDocument: true,\n disablePreview: false,\n disableClick: false,\n multiple: true,\n maxSize: Infinity,\n minSize: 0\n}\n\nexport default Dropzone\n\n\n\n// WEBPACK FOOTER //\n// ./src/index.js","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/process/browser.js\n// module id = 1\n// module chunks = 0","module.exports = __WEBPACK_EXTERNAL_MODULE_2__;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"react\"\n// module id = 2\n// module chunks = 0","module.exports = __WEBPACK_EXTERNAL_MODULE_3__;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"prop-types\"\n// module id = 3\n// module chunks = 0","module.exports=function(t){function n(e){if(r[e])return r[e].exports;var o=r[e]={exports:{},id:e,loaded:!1};return t[e].call(o.exports,o,o.exports,n),o.loaded=!0,o.exports}var r={};return n.m=t,n.c=r,n.p=\"\",n(0)}([function(t,n,r){\"use strict\";n.__esModule=!0,r(8),r(9),n[\"default\"]=function(t,n){if(t&&n){var r=function(){var r=Array.isArray(n)?n:n.split(\",\"),e=t.name||\"\",o=t.type||\"\",i=o.replace(/\\/.*$/,\"\");return{v:r.some(function(t){var n=t.trim();return\".\"===n.charAt(0)?e.toLowerCase().endsWith(n.toLowerCase()):/\\/\\*$/.test(n)?i===n.replace(/\\/.*$/,\"\"):o===n})}}();if(\"object\"==typeof r)return r.v}return!0},t.exports=n[\"default\"]},function(t,n){var r=t.exports={version:\"1.2.2\"};\"number\"==typeof __e&&(__e=r)},function(t,n){var r=t.exports=\"undefined\"!=typeof window&&window.Math==Math?window:\"undefined\"!=typeof self&&self.Math==Math?self:Function(\"return this\")();\"number\"==typeof __g&&(__g=r)},function(t,n,r){var e=r(2),o=r(1),i=r(4),u=r(19),c=\"prototype\",f=function(t,n){return function(){return t.apply(n,arguments)}},s=function(t,n,r){var a,p,l,y,d=t&s.G,h=t&s.P,v=d?e:t&s.S?e[n]||(e[n]={}):(e[n]||{})[c],x=d?o:o[n]||(o[n]={});d&&(r=n);for(a in r)p=!(t&s.F)&&v&&a in v,l=(p?v:r)[a],y=t&s.B&&p?f(l,e):h&&\"function\"==typeof l?f(Function.call,l):l,v&&!p&&u(v,a,l),x[a]!=l&&i(x,a,y),h&&((x[c]||(x[c]={}))[a]=l)};e.core=o,s.F=1,s.G=2,s.S=4,s.P=8,s.B=16,s.W=32,t.exports=s},function(t,n,r){var e=r(5),o=r(18);t.exports=r(22)?function(t,n,r){return e.setDesc(t,n,o(1,r))}:function(t,n,r){return t[n]=r,t}},function(t,n){var r=Object;t.exports={create:r.create,getProto:r.getPrototypeOf,isEnum:{}.propertyIsEnumerable,getDesc:r.getOwnPropertyDescriptor,setDesc:r.defineProperty,setDescs:r.defineProperties,getKeys:r.keys,getNames:r.getOwnPropertyNames,getSymbols:r.getOwnPropertySymbols,each:[].forEach}},function(t,n){var r=0,e=Math.random();t.exports=function(t){return\"Symbol(\".concat(void 0===t?\"\":t,\")_\",(++r+e).toString(36))}},function(t,n,r){var e=r(20)(\"wks\"),o=r(2).Symbol;t.exports=function(t){return e[t]||(e[t]=o&&o[t]||(o||r(6))(\"Symbol.\"+t))}},function(t,n,r){r(26),t.exports=r(1).Array.some},function(t,n,r){r(25),t.exports=r(1).String.endsWith},function(t,n){t.exports=function(t){if(\"function\"!=typeof t)throw TypeError(t+\" is not a function!\");return t}},function(t,n){var r={}.toString;t.exports=function(t){return r.call(t).slice(8,-1)}},function(t,n,r){var e=r(10);t.exports=function(t,n,r){if(e(t),void 0===n)return t;switch(r){case 1:return function(r){return t.call(n,r)};case 2:return function(r,e){return t.call(n,r,e)};case 3:return function(r,e,o){return t.call(n,r,e,o)}}return function(){return t.apply(n,arguments)}}},function(t,n){t.exports=function(t){if(void 0==t)throw TypeError(\"Can't call method on \"+t);return t}},function(t,n,r){t.exports=function(t){var n=/./;try{\"/./\"[t](n)}catch(e){try{return n[r(7)(\"match\")]=!1,!\"/./\"[t](n)}catch(o){}}return!0}},function(t,n){t.exports=function(t){try{return!!t()}catch(n){return!0}}},function(t,n){t.exports=function(t){return\"object\"==typeof t?null!==t:\"function\"==typeof t}},function(t,n,r){var e=r(16),o=r(11),i=r(7)(\"match\");t.exports=function(t){var n;return e(t)&&(void 0!==(n=t[i])?!!n:\"RegExp\"==o(t))}},function(t,n){t.exports=function(t,n){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:n}}},function(t,n,r){var e=r(2),o=r(4),i=r(6)(\"src\"),u=\"toString\",c=Function[u],f=(\"\"+c).split(u);r(1).inspectSource=function(t){return c.call(t)},(t.exports=function(t,n,r,u){\"function\"==typeof r&&(o(r,i,t[n]?\"\"+t[n]:f.join(String(n))),\"name\"in r||(r.name=n)),t===e?t[n]=r:(u||delete t[n],o(t,n,r))})(Function.prototype,u,function(){return\"function\"==typeof this&&this[i]||c.call(this)})},function(t,n,r){var e=r(2),o=\"__core-js_shared__\",i=e[o]||(e[o]={});t.exports=function(t){return i[t]||(i[t]={})}},function(t,n,r){var e=r(17),o=r(13);t.exports=function(t,n,r){if(e(n))throw TypeError(\"String#\"+r+\" doesn't accept regex!\");return String(o(t))}},function(t,n,r){t.exports=!r(15)(function(){return 7!=Object.defineProperty({},\"a\",{get:function(){return 7}}).a})},function(t,n){var r=Math.ceil,e=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?e:r)(t)}},function(t,n,r){var e=r(23),o=Math.min;t.exports=function(t){return t>0?o(e(t),9007199254740991):0}},function(t,n,r){\"use strict\";var e=r(3),o=r(24),i=r(21),u=\"endsWith\",c=\"\"[u];e(e.P+e.F*r(14)(u),\"String\",{endsWith:function(t){var n=i(this,t,u),r=arguments,e=r.length>1?r[1]:void 0,f=o(n.length),s=void 0===e?f:Math.min(o(e),f),a=String(t);return c?c.call(n,a,s):n.slice(s-a.length,s)===a}})},function(t,n,r){var e=r(5),o=r(3),i=r(1).Array||Array,u={},c=function(t,n){e.each.call(t.split(\",\"),function(t){void 0==n&&t in i?u[t]=i[t]:t in[]&&(u[t]=r(12)(Function.call,[][t],n))})};c(\"pop,reverse,shift,keys,values,entries\",1),c(\"indexOf,every,some,forEach,map,filter,find,findIndex,includes\",3),c(\"join,slice,concat,push,splice,unshift,sort,lastIndexOf,reduce,reduceRight,copyWithin,fill\"),o(o.S,\"Array\",u)}]);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/attr-accept/dist/index.js\n// module id = 4\n// module chunks = 0","export default function getDataTransferFiles(event) {\n let dataTransferItemsList = []\n if (event.dataTransfer) {\n const dt = event.dataTransfer\n if (dt.files && dt.files.length) {\n dataTransferItemsList = dt.files\n } else if (dt.items && dt.items.length) {\n // During the drag even the dataTransfer.files is null\n // but Chrome implements some drag store, which is accesible via dataTransfer.items\n dataTransferItemsList = dt.items\n }\n } else if (event.target && event.target.files) {\n dataTransferItemsList = event.target.files\n }\n // Convert from DataTransferItemsList to the native Array\n return Array.prototype.slice.call(dataTransferItemsList)\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/getDataTransferItems.js"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack:///webpack/universalModuleDefinition","webpack:///webpack/bootstrap b7b02f081916d4b544ef","webpack:///./src/index.js","webpack:///./~/process/browser.js","webpack:///external \"react\"","webpack:///external \"prop-types\"","webpack:///./~/attr-accept/dist/index.js","webpack:///./src/getDataTransferItems.js"],"names":["supportMultiple","document","createElement","fileAccepted","file","accept","type","Dropzone","evt","preventDefault","props","context","renderChildren","children","isDragActive","isDragReject","state","onClick","bind","onDocumentDrop","onDragStart","onDragEnter","onDragLeave","onDragOver","onDrop","onFileDialogCancel","setRef","setRefs","onInputElementClick","isFileDialogActive","draggedFiles","acceptedFiles","rejectedFiles","preventDropOnDocument","dragTargets","addEventListener","onDocumentDragOver","fileInputEl","body","onfocus","removeEventListener","node","contains","target","call","indexOf","push","setState","stopPropagation","dataTransfer","dropEffect","err","filter","el","length","onDropAccepted","onDropRejected","multiple","disablePreview","fileList","forEach","preview","window","URL","createObjectURL","process","env","NODE_ENV","console","error","fileMatchSize","splice","disableClick","setTimeout","open","inputProps","FileList","files","ref","size","maxSize","minSize","every","value","click","activeClassName","name","rejectClassName","rest","activeStyle","className","rejectStyle","style","filesCount","isMultipleAllowed","allFilesAccepted","width","height","borderWidth","borderColor","borderStyle","borderRadius","backgroundColor","appliedStyle","inputAttributes","display","onChange","customProps","divProps","prop","Component","propTypes","string","oneOfType","func","bool","object","number","defaultProps","Infinity","getDataTransferFiles","event","dataTransferItemsList","dt","items","Array","prototype","slice"],"mappings":"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;;;AAGAzF,uBAAoB,oBAAUyF;AAjIX,EAArB;;AAoIA3G,UAAS+G,YAAT,GAAwB;AACtBrF,0BAAuB,IADD;AAEtByB,mBAAgB,KAFM;AAGtBc,iBAAc,KAHQ;AAItBf,aAAU,IAJY;AAKtBuB,YAASuC,QALa;AAMtBtC,YAAS;AANa,EAAxB;;mBASe1E,Q;;;;;;;;ACphBf;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA,MAAK;AACL;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;AACA;;;;AAIA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,wBAAuB,sBAAsB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAqB;AACrB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,sCAAqC;;AAErC;AACA;AACA;;AAEA,4BAA2B;AAC3B;AACA;AACA;AACA,6BAA4B,UAAU;;;;;;;ACvLtC,gD;;;;;;ACAA,gD;;;;;;ACAA,4BAA2B,cAAc,4BAA4B,YAAY,UAAU,iBAAiB,gEAAgE,SAAS,+BAA+B,kBAAkB,aAAa,qDAAqD,SAAS,iBAAiB,wFAAwF,OAAO,qBAAqB,eAAe,kHAAkH,GAAG,GAAG,iCAAiC,SAAS,wBAAwB,eAAe,iBAAiB,iBAAiB,8BAA8B,eAAe,8IAA8I,8BAA8B,iBAAiB,+DAA+D,kBAAkB,6BAA6B,mBAAmB,sDAAsD,WAAW,yBAAyB,EAAE,SAAS,kKAAkK,UAAU,2DAA2D,iBAAiB,mBAAmB,gCAAgC,6BAA6B,iBAAiB,iBAAiB,eAAe,aAAa,WAAW,mDAAmD,gNAAgN,eAAe,wBAAwB,sBAAsB,mEAAmE,iBAAiB,iCAAiC,sBAAsB,qDAAqD,iBAAiB,gCAAgC,iBAAiB,qCAAqC,eAAe,sBAAsB,iEAAiE,UAAU,eAAe,QAAQ,UAAU,sBAAsB,8BAA8B,iBAAiB,YAAY,0BAA0B,4BAA4B,UAAU,0BAA0B,oBAAoB,4BAA4B,sBAAsB,8BAA8B,wBAAwB,kBAAkB,8BAA8B,eAAe,sBAAsB,yDAAyD,UAAU,iBAAiB,sBAAsB,UAAU,IAAI,YAAY,SAAS,IAAI,wCAAwC,WAAW,UAAU,eAAe,sBAAsB,IAAI,YAAY,SAAS,WAAW,eAAe,sBAAsB,wDAAwD,iBAAiB,oCAAoC,sBAAsB,MAAM,qDAAqD,eAAe,wBAAwB,OAAO,gEAAgE,iBAAiB,6EAA6E,+BAA+B,iBAAiB,8BAA8B,4HAA4H,kCAAkC,qDAAqD,EAAE,iBAAiB,kDAAkD,EAAE,sBAAsB,qBAAqB,GAAG,iBAAiB,oBAAoB,0BAA0B,8DAA8D,qBAAqB,iBAAiB,4BAA4B,kCAAkC,MAAM,eAAe,UAAU,IAAI,EAAE,eAAe,6BAA6B,sBAAsB,mCAAmC,iBAAiB,uBAAuB,sBAAsB,uCAAuC,iBAAiB,aAAa,gDAAgD,6BAA6B,qBAAqB,iHAAiH,kDAAkD,EAAE,iBAAiB,0CAA0C,iBAAiB,qCAAqC,wEAAwE,GAAG,kOAAkO,G;;;;;;;;;;;mBCA51JiH,oB;AAAT,UAASA,oBAAT,CAA8BC,KAA9B,EAAqC;AAClD,OAAIC,wBAAwB,EAA5B;AACA,OAAID,MAAMxE,YAAV,EAAwB;AACtB,SAAM0E,KAAKF,MAAMxE,YAAjB;AACA,SAAI0E,GAAG9C,KAAH,IAAY8C,GAAG9C,KAAH,CAASvB,MAAzB,EAAiC;AAC/BoE,+BAAwBC,GAAG9C,KAA3B;AACD,MAFD,MAEO,IAAI8C,GAAGC,KAAH,IAAYD,GAAGC,KAAH,CAAStE,MAAzB,EAAiC;AACtC;AACA;AACAoE,+BAAwBC,GAAGC,KAA3B;AACD;AACF,IATD,MASO,IAAIH,MAAM9E,MAAN,IAAgB8E,MAAM9E,MAAN,CAAakC,KAAjC,EAAwC;AAC7C6C,6BAAwBD,MAAM9E,MAAN,CAAakC,KAArC;AACD;AACD;AACA,UAAOgD,MAAMC,SAAN,CAAgBC,KAAhB,CAAsBnF,IAAtB,CAA2B8E,qBAA3B,CAAP;AACD","file":"index.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"react\"), require(\"prop-types\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"react\", \"prop-types\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"Dropzone\"] = factory(require(\"react\"), require(\"prop-types\"));\n\telse\n\t\troot[\"Dropzone\"] = factory(root[\"react\"], root[\"prop-types\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE_2__, __WEBPACK_EXTERNAL_MODULE_3__) {\nreturn \n\n\n// WEBPACK FOOTER //\n// webpack/universalModuleDefinition"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId])\n \t\t\treturn installedModules[moduleId].exports;\n\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\texports: {},\n \t\t\tid: moduleId,\n \t\t\tloaded: false\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.loaded = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(0);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap b7b02f081916d4b544ef","/* eslint prefer-template: 0 */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport accepts from 'attr-accept'\nimport getDataTransferItems from './getDataTransferItems'\n\nconst supportMultiple = typeof document !== 'undefined' && document && document.createElement\n ? 'multiple' in document.createElement('input')\n : true\n\nfunction fileAccepted(file, accept) {\n // Firefox versions prior to 53 return a bogus MIME type for every file drag, so dragovers with\n // that MIME type will always be accepted\n return file.type === 'application/x-moz-file' || accepts(file, accept)\n}\n\nclass Dropzone extends React.Component {\n static onDocumentDragOver(evt) {\n // allow the entire document to be a drag target\n evt.preventDefault()\n }\n\n constructor(props, context) {\n super(props, context)\n this.onClick = this.onClick.bind(this)\n this.onDocumentDrop = this.onDocumentDrop.bind(this)\n this.onDragStart = this.onDragStart.bind(this)\n this.onDragEnter = this.onDragEnter.bind(this)\n this.onDragLeave = this.onDragLeave.bind(this)\n this.onDragOver = this.onDragOver.bind(this)\n this.onDrop = this.onDrop.bind(this)\n this.onFileDialogCancel = this.onFileDialogCancel.bind(this)\n this.setRef = this.setRef.bind(this)\n this.setRefs = this.setRefs.bind(this)\n this.onInputElementClick = this.onInputElementClick.bind(this)\n this.isFileDialogActive = false\n this.state = {\n draggedFiles: [],\n acceptedFiles: [],\n rejectedFiles: []\n }\n }\n\n componentDidMount() {\n const { preventDropOnDocument } = this.props\n this.dragTargets = []\n\n if (preventDropOnDocument) {\n document.addEventListener('dragover', Dropzone.onDocumentDragOver, false)\n document.addEventListener('drop', this.onDocumentDrop, false)\n }\n this.fileInputEl.addEventListener('click', this.onInputElementClick, false)\n // Tried implementing addEventListener, but didn't work out\n document.body.onfocus = this.onFileDialogCancel\n }\n\n componentWillUnmount() {\n const { preventDropOnDocument } = this.props\n if (preventDropOnDocument) {\n document.removeEventListener('dragover', Dropzone.onDocumentDragOver)\n document.removeEventListener('drop', this.onDocumentDrop)\n }\n this.fileInputEl.removeEventListener('click', this.onInputElementClick, false)\n // Can be replaced with removeEventListener, if addEventListener works\n document.body.onfocus = null\n }\n\n onDocumentDrop(evt) {\n if (this.node.contains(evt.target)) {\n // if we intercepted an event for our instance, let it propagate down to the instance's onDrop handler\n return\n }\n evt.preventDefault()\n this.dragTargets = []\n }\n\n onDragStart(evt) {\n if (this.props.onDragStart) {\n this.props.onDragStart.call(this, evt)\n }\n }\n\n onDragEnter(evt) {\n evt.preventDefault()\n\n // Count the dropzone and any children that are entered.\n if (this.dragTargets.indexOf(evt.target) === -1) {\n this.dragTargets.push(evt.target)\n }\n\n this.setState({ draggedFiles: getDataTransferItems(evt) })\n\n if (this.props.onDragEnter) {\n this.props.onDragEnter.call(this, evt)\n }\n }\n\n onDragOver(evt) {\n // eslint-disable-line class-methods-use-this\n evt.preventDefault()\n evt.stopPropagation()\n try {\n evt.dataTransfer.dropEffect = 'copy' // eslint-disable-line no-param-reassign\n } catch (err) {\n // continue regardless of error\n }\n\n if (this.props.onDragOver) {\n this.props.onDragOver.call(this, evt)\n }\n return false\n }\n\n onDragLeave(evt) {\n evt.preventDefault()\n\n // Only deactivate once the dropzone and all children have been left.\n this.dragTargets = this.dragTargets.filter(el => el !== evt.target && this.node.contains(el))\n if (this.dragTargets.length > 0) {\n return\n }\n\n // Clear dragging files state\n this.setState({ draggedFiles: [] })\n\n if (this.props.onDragLeave) {\n this.props.onDragLeave.call(this, evt)\n }\n }\n\n onDrop(evt) {\n const { onDrop, onDropAccepted, onDropRejected, multiple, disablePreview, accept } = this.props\n const fileList = getDataTransferItems(evt)\n const acceptedFiles = []\n const rejectedFiles = []\n\n // Stop default browser behavior\n evt.preventDefault()\n\n // Reset the counter along with the drag on a drop.\n this.dragTargets = []\n this.isFileDialogActive = false\n\n fileList.forEach(file => {\n if (!disablePreview) {\n try {\n file.preview = window.URL.createObjectURL(file) // eslint-disable-line no-param-reassign\n } catch (err) {\n if (process.env.NODE_ENV !== 'production') {\n console.error('Failed to generate preview for file', file, err) // eslint-disable-line no-console\n }\n }\n }\n\n if (fileAccepted(file, accept) && this.fileMatchSize(file)) {\n acceptedFiles.push(file)\n } else {\n rejectedFiles.push(file)\n }\n })\n\n if (!multiple) {\n // if not in multi mode add any extra accepted files to rejected.\n // This will allow end users to easily ignore a multi file drop in \"single\" mode.\n rejectedFiles.push(...acceptedFiles.splice(1))\n }\n\n if (onDrop) {\n onDrop.call(this, acceptedFiles, rejectedFiles, evt)\n }\n\n if (rejectedFiles.length > 0 && onDropRejected) {\n onDropRejected.call(this, rejectedFiles, evt)\n }\n\n if (acceptedFiles.length > 0 && onDropAccepted) {\n onDropAccepted.call(this, acceptedFiles, evt)\n }\n\n // Clear files value\n this.draggedFiles = null\n\n // Reset drag state\n this.setState({\n draggedFiles: [],\n acceptedFiles,\n rejectedFiles\n })\n }\n\n onClick(evt) {\n const { onClick, disableClick } = this.props\n if (!disableClick) {\n evt.stopPropagation()\n\n if (onClick) {\n onClick.call(this, evt)\n }\n\n // in IE11/Edge the file-browser dialog is blocking, ensure this is behind setTimeout\n // this is so react can handle state changes in the onClick prop above above\n // see: https://github.com/okonet/react-dropzone/issues/450\n setTimeout(this.open.bind(this), 0)\n }\n }\n\n onInputElementClick(evt) {\n evt.stopPropagation()\n if (this.props.inputProps && this.props.inputProps.onClick) {\n this.props.inputProps.onClick()\n }\n }\n\n onFileDialogCancel() {\n // timeout will not recognize context of this method\n const { onFileDialogCancel } = this.props\n const { fileInputEl } = this\n let { isFileDialogActive } = this\n // execute the timeout only if the onFileDialogCancel is defined and FileDialog\n // is opened in the browser\n if (onFileDialogCancel && isFileDialogActive) {\n setTimeout(() => {\n // Returns an object as FileList\n const FileList = fileInputEl.files\n if (!FileList.length) {\n isFileDialogActive = false\n onFileDialogCancel()\n }\n }, 300)\n }\n }\n\n setRef(ref) {\n this.node = ref\n }\n\n setRefs(ref) {\n this.fileInputEl = ref\n }\n\n fileMatchSize(file) {\n return file.size <= this.props.maxSize && file.size >= this.props.minSize\n }\n\n allFilesAccepted(files) {\n return files.every(file => fileAccepted(file, this.props.accept))\n }\n\n /**\n * Open system file upload dialog.\n *\n * @public\n */\n open() {\n this.isFileDialogActive = true\n this.fileInputEl.value = null\n this.fileInputEl.click()\n }\n\n renderChildren = (children, isDragActive, isDragReject) => {\n if (typeof children === 'function') {\n return children({ ...this.state, isDragActive, isDragReject })\n }\n return children\n }\n\n render() {\n const {\n accept,\n activeClassName,\n inputProps,\n multiple,\n name,\n rejectClassName,\n children,\n ...rest\n } = this.props\n\n let {\n activeStyle,\n className,\n rejectStyle,\n style,\n ...props // eslint-disable-line prefer-const\n } = rest\n\n const { draggedFiles } = this.state\n const filesCount = draggedFiles.length\n const isMultipleAllowed = multiple || filesCount <= 1\n const isDragActive = filesCount > 0 && this.allFilesAccepted(draggedFiles)\n const isDragReject = filesCount > 0 && (!isDragActive || !isMultipleAllowed)\n\n className = className || ''\n\n if (isDragActive && activeClassName) {\n className += ' ' + activeClassName\n }\n if (isDragReject && rejectClassName) {\n className += ' ' + rejectClassName\n }\n\n if (!className && !style && !activeStyle && !rejectStyle) {\n style = {\n width: 200,\n height: 200,\n borderWidth: 2,\n borderColor: '#666',\n borderStyle: 'dashed',\n borderRadius: 5\n }\n activeStyle = {\n borderStyle: 'solid',\n borderColor: '#6c6',\n backgroundColor: '#eee'\n }\n rejectStyle = {\n borderStyle: 'solid',\n borderColor: '#c66',\n backgroundColor: '#eee'\n }\n }\n\n let appliedStyle\n if (activeStyle && isDragActive) {\n appliedStyle = {\n ...style,\n ...activeStyle\n }\n } else if (rejectStyle && isDragReject) {\n appliedStyle = {\n ...style,\n ...rejectStyle\n }\n } else {\n appliedStyle = {\n ...style\n }\n }\n\n const inputAttributes = {\n accept,\n type: 'file',\n style: { display: 'none' },\n multiple: supportMultiple && multiple,\n ref: this.setRefs,\n onChange: this.onDrop\n }\n\n if (name && name.length) {\n inputAttributes.name = name\n }\n\n // Remove custom properties before passing them to the wrapper div element\n const customProps = [\n 'acceptedFiles',\n 'preventDropOnDocument',\n 'disablePreview',\n 'disableClick',\n 'onDropAccepted',\n 'onDropRejected',\n 'onFileDialogCancel',\n 'maxSize',\n 'minSize'\n ]\n const divProps = { ...props }\n customProps.forEach(prop => delete divProps[prop])\n\n return (\n <div\n className={className}\n style={appliedStyle}\n {...divProps /* expand user provided props first so event handlers are never overridden */}\n onClick={this.onClick}\n onDragStart={this.onDragStart}\n onDragEnter={this.onDragEnter}\n onDragOver={this.onDragOver}\n onDragLeave={this.onDragLeave}\n onDrop={this.onDrop}\n ref={this.setRef}\n >\n {this.renderChildren(children, isDragActive, isDragReject)}\n <input\n {...inputProps /* expand user provided inputProps first so inputAttributes override them */}\n {...inputAttributes}\n />\n </div>\n )\n }\n}\n\nDropzone.propTypes = {\n /**\n * Allow specific types of files. See https://github.com/okonet/attr-accept for more information.\n * Keep in mind that mime type determination is not reliable accross platforms. CSV files,\n * for example, are reported as text/plain under macOS but as application/vnd.ms-excel under\n * Windows. In some cases there might not be a mime type set at all.\n * See: https://github.com/okonet/react-dropzone/issues/276\n */\n accept: PropTypes.string,\n\n /**\n * Contents of the dropzone\n */\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n\n /**\n * Disallow clicking on the dropzone container to open file dialog\n */\n disableClick: PropTypes.bool,\n\n /**\n * Enable/disable preview generation\n */\n disablePreview: PropTypes.bool,\n\n /**\n * If false, allow dropped items to take over the current browser window\n */\n preventDropOnDocument: PropTypes.bool,\n\n /**\n * Pass additional attributes to the `<input type=\"file\"/>` tag\n */\n inputProps: PropTypes.object,\n\n /**\n * Allow dropping multiple files\n */\n multiple: PropTypes.bool,\n\n /**\n * `name` attribute for the input tag\n */\n name: PropTypes.string,\n\n /**\n * Maximum file size\n */\n maxSize: PropTypes.number,\n\n /**\n * Minimum file size\n */\n minSize: PropTypes.number,\n\n /**\n * className\n */\n className: PropTypes.string,\n\n /**\n * className for accepted state\n */\n activeClassName: PropTypes.string,\n\n /**\n * className for rejected state\n */\n rejectClassName: PropTypes.string,\n\n /**\n * CSS styles to apply\n */\n style: PropTypes.object,\n\n /**\n * CSS styles to apply when drop will be accepted\n */\n activeStyle: PropTypes.object,\n\n /**\n * CSS styles to apply when drop will be rejected\n */\n rejectStyle: PropTypes.object,\n\n /**\n * onClick callback\n * @param {Event} event\n */\n onClick: PropTypes.func,\n\n /**\n * onDrop callback\n */\n onDrop: PropTypes.func,\n\n /**\n * onDropAccepted callback\n */\n onDropAccepted: PropTypes.func,\n\n /**\n * onDropRejected callback\n */\n onDropRejected: PropTypes.func,\n\n /**\n * onDragStart callback\n */\n onDragStart: PropTypes.func,\n\n /**\n * onDragEnter callback\n */\n onDragEnter: PropTypes.func,\n\n /**\n * onDragOver callback\n */\n onDragOver: PropTypes.func,\n\n /**\n * onDragLeave callback\n */\n onDragLeave: PropTypes.func,\n\n /**\n * Provide a callback on clicking the cancel button of the file dialog\n */\n onFileDialogCancel: PropTypes.func\n}\n\nDropzone.defaultProps = {\n preventDropOnDocument: true,\n disablePreview: false,\n disableClick: false,\n multiple: true,\n maxSize: Infinity,\n minSize: 0\n}\n\nexport default Dropzone\n\n\n\n// WEBPACK FOOTER //\n// ./src/index.js","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/process/browser.js\n// module id = 1\n// module chunks = 0","module.exports = __WEBPACK_EXTERNAL_MODULE_2__;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"react\"\n// module id = 2\n// module chunks = 0","module.exports = __WEBPACK_EXTERNAL_MODULE_3__;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"prop-types\"\n// module id = 3\n// module chunks = 0","module.exports=function(t){function n(e){if(r[e])return r[e].exports;var o=r[e]={exports:{},id:e,loaded:!1};return t[e].call(o.exports,o,o.exports,n),o.loaded=!0,o.exports}var r={};return n.m=t,n.c=r,n.p=\"\",n(0)}([function(t,n,r){\"use strict\";n.__esModule=!0,r(8),r(9),n[\"default\"]=function(t,n){if(t&&n){var r=function(){var r=Array.isArray(n)?n:n.split(\",\"),e=t.name||\"\",o=t.type||\"\",i=o.replace(/\\/.*$/,\"\");return{v:r.some(function(t){var n=t.trim();return\".\"===n.charAt(0)?e.toLowerCase().endsWith(n.toLowerCase()):/\\/\\*$/.test(n)?i===n.replace(/\\/.*$/,\"\"):o===n})}}();if(\"object\"==typeof r)return r.v}return!0},t.exports=n[\"default\"]},function(t,n){var r=t.exports={version:\"1.2.2\"};\"number\"==typeof __e&&(__e=r)},function(t,n){var r=t.exports=\"undefined\"!=typeof window&&window.Math==Math?window:\"undefined\"!=typeof self&&self.Math==Math?self:Function(\"return this\")();\"number\"==typeof __g&&(__g=r)},function(t,n,r){var e=r(2),o=r(1),i=r(4),u=r(19),c=\"prototype\",f=function(t,n){return function(){return t.apply(n,arguments)}},s=function(t,n,r){var a,p,l,y,d=t&s.G,h=t&s.P,v=d?e:t&s.S?e[n]||(e[n]={}):(e[n]||{})[c],x=d?o:o[n]||(o[n]={});d&&(r=n);for(a in r)p=!(t&s.F)&&v&&a in v,l=(p?v:r)[a],y=t&s.B&&p?f(l,e):h&&\"function\"==typeof l?f(Function.call,l):l,v&&!p&&u(v,a,l),x[a]!=l&&i(x,a,y),h&&((x[c]||(x[c]={}))[a]=l)};e.core=o,s.F=1,s.G=2,s.S=4,s.P=8,s.B=16,s.W=32,t.exports=s},function(t,n,r){var e=r(5),o=r(18);t.exports=r(22)?function(t,n,r){return e.setDesc(t,n,o(1,r))}:function(t,n,r){return t[n]=r,t}},function(t,n){var r=Object;t.exports={create:r.create,getProto:r.getPrototypeOf,isEnum:{}.propertyIsEnumerable,getDesc:r.getOwnPropertyDescriptor,setDesc:r.defineProperty,setDescs:r.defineProperties,getKeys:r.keys,getNames:r.getOwnPropertyNames,getSymbols:r.getOwnPropertySymbols,each:[].forEach}},function(t,n){var r=0,e=Math.random();t.exports=function(t){return\"Symbol(\".concat(void 0===t?\"\":t,\")_\",(++r+e).toString(36))}},function(t,n,r){var e=r(20)(\"wks\"),o=r(2).Symbol;t.exports=function(t){return e[t]||(e[t]=o&&o[t]||(o||r(6))(\"Symbol.\"+t))}},function(t,n,r){r(26),t.exports=r(1).Array.some},function(t,n,r){r(25),t.exports=r(1).String.endsWith},function(t,n){t.exports=function(t){if(\"function\"!=typeof t)throw TypeError(t+\" is not a function!\");return t}},function(t,n){var r={}.toString;t.exports=function(t){return r.call(t).slice(8,-1)}},function(t,n,r){var e=r(10);t.exports=function(t,n,r){if(e(t),void 0===n)return t;switch(r){case 1:return function(r){return t.call(n,r)};case 2:return function(r,e){return t.call(n,r,e)};case 3:return function(r,e,o){return t.call(n,r,e,o)}}return function(){return t.apply(n,arguments)}}},function(t,n){t.exports=function(t){if(void 0==t)throw TypeError(\"Can't call method on \"+t);return t}},function(t,n,r){t.exports=function(t){var n=/./;try{\"/./\"[t](n)}catch(e){try{return n[r(7)(\"match\")]=!1,!\"/./\"[t](n)}catch(o){}}return!0}},function(t,n){t.exports=function(t){try{return!!t()}catch(n){return!0}}},function(t,n){t.exports=function(t){return\"object\"==typeof t?null!==t:\"function\"==typeof t}},function(t,n,r){var e=r(16),o=r(11),i=r(7)(\"match\");t.exports=function(t){var n;return e(t)&&(void 0!==(n=t[i])?!!n:\"RegExp\"==o(t))}},function(t,n){t.exports=function(t,n){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:n}}},function(t,n,r){var e=r(2),o=r(4),i=r(6)(\"src\"),u=\"toString\",c=Function[u],f=(\"\"+c).split(u);r(1).inspectSource=function(t){return c.call(t)},(t.exports=function(t,n,r,u){\"function\"==typeof r&&(o(r,i,t[n]?\"\"+t[n]:f.join(String(n))),\"name\"in r||(r.name=n)),t===e?t[n]=r:(u||delete t[n],o(t,n,r))})(Function.prototype,u,function(){return\"function\"==typeof this&&this[i]||c.call(this)})},function(t,n,r){var e=r(2),o=\"__core-js_shared__\",i=e[o]||(e[o]={});t.exports=function(t){return i[t]||(i[t]={})}},function(t,n,r){var e=r(17),o=r(13);t.exports=function(t,n,r){if(e(n))throw TypeError(\"String#\"+r+\" doesn't accept regex!\");return String(o(t))}},function(t,n,r){t.exports=!r(15)(function(){return 7!=Object.defineProperty({},\"a\",{get:function(){return 7}}).a})},function(t,n){var r=Math.ceil,e=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?e:r)(t)}},function(t,n,r){var e=r(23),o=Math.min;t.exports=function(t){return t>0?o(e(t),9007199254740991):0}},function(t,n,r){\"use strict\";var e=r(3),o=r(24),i=r(21),u=\"endsWith\",c=\"\"[u];e(e.P+e.F*r(14)(u),\"String\",{endsWith:function(t){var n=i(this,t,u),r=arguments,e=r.length>1?r[1]:void 0,f=o(n.length),s=void 0===e?f:Math.min(o(e),f),a=String(t);return c?c.call(n,a,s):n.slice(s-a.length,s)===a}})},function(t,n,r){var e=r(5),o=r(3),i=r(1).Array||Array,u={},c=function(t,n){e.each.call(t.split(\",\"),function(t){void 0==n&&t in i?u[t]=i[t]:t in[]&&(u[t]=r(12)(Function.call,[][t],n))})};c(\"pop,reverse,shift,keys,values,entries\",1),c(\"indexOf,every,some,forEach,map,filter,find,findIndex,includes\",3),c(\"join,slice,concat,push,splice,unshift,sort,lastIndexOf,reduce,reduceRight,copyWithin,fill\"),o(o.S,\"Array\",u)}]);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/attr-accept/dist/index.js\n// module id = 4\n// module chunks = 0","export default function getDataTransferFiles(event) {\n let dataTransferItemsList = []\n if (event.dataTransfer) {\n const dt = event.dataTransfer\n if (dt.files && dt.files.length) {\n dataTransferItemsList = dt.files\n } else if (dt.items && dt.items.length) {\n // During the drag even the dataTransfer.files is null\n // but Chrome implements some drag store, which is accesible via dataTransfer.items\n dataTransferItemsList = dt.items\n }\n } else if (event.target && event.target.files) {\n dataTransferItemsList = event.target.files\n }\n // Convert from DataTransferItemsList to the native Array\n return Array.prototype.slice.call(dataTransferItemsList)\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/getDataTransferItems.js"],"sourceRoot":""}
package/package.json CHANGED
@@ -3,16 +3,16 @@
3
3
  "description": "Simple HTML5 drag-drop zone with React.js",
4
4
  "main": "dist/index.js",
5
5
  "scripts": {
6
+ "ci": "git-cz",
6
7
  "clean": "rimraf ./dist",
7
8
  "build": "npm run clean && webpack",
8
- "prepublish": "NODE_ENV=production npm run build && jest",
9
9
  "start": "styleguidist server",
10
10
  "styleguide": "styleguidist build",
11
11
  "test": "npm run eslint:src && jest --coverage",
12
12
  "eslint:src": "eslint ./src ./examples ./*.js",
13
- "lint-staged": "lint-staged",
14
- "deps": "npm-check -s",
15
- "deps:update": "npm-check -u",
13
+ "commitmsg": "commitlint -e",
14
+ "precommit": "lint-staged",
15
+ "prepublish": "NODE_ENV=production npm run build && jest",
16
16
  "semantic-release": "semantic-release pre && npm publish && semantic-release post",
17
17
  "logo": "cd logo && sketchtool export artboards logo.sketch",
18
18
  "imagemin": "imagemin --out-dir=logo --plugin=pngquant --plugin=svgo"
@@ -27,9 +27,6 @@
27
27
  "git add"
28
28
  ]
29
29
  },
30
- "pre-commit": [
31
- "lint-staged"
32
- ],
33
30
  "jest": {
34
31
  "setupTestFrameworkScriptFile": "<rootDir>/testSetup.js"
35
32
  },
@@ -52,17 +49,22 @@
52
49
  "contributors": [
53
50
  "Andrey Okonetchnikov <andrey@okonet.ru> (http://okonet.ru)",
54
51
  "Mike Olson <me@mwolson.org>",
55
- "Param Aggarwal"
52
+ "Param Aggarwal",
53
+ "Tyler Waters <tyler.waters@gmail.com>"
56
54
  ],
57
55
  "license": "MIT",
58
56
  "peerDependencies": {
59
- "react": "^0.14.0 || ^15.0.0"
57
+ "react": ">=0.14.0"
60
58
  },
61
59
  "dependencies": {
62
60
  "attr-accept": "^1.0.3",
63
61
  "prop-types": "^15.5.7"
64
62
  },
65
63
  "devDependencies": {
64
+ "@commitlint/cli": "^3.0.3",
65
+ "@commitlint/config-angular": "^3.0.3",
66
+ "@commitlint/prompt": "^3.0.3",
67
+ "@commitlint/prompt-cli": "^3.0.3",
66
68
  "babel-cli": "^6.9.0",
67
69
  "babel-core": "^6.9.1",
68
70
  "babel-eslint": "^7.1.1",
@@ -73,19 +75,18 @@
73
75
  "babel-preset-react": "^6.3.13",
74
76
  "babel-preset-stage-0": "^6.3.13",
75
77
  "babel-register": "^6.9.0",
78
+ "commitizen": "^2.9.6",
76
79
  "css-loader": "^0.28.1",
77
- "cz-conventional-changelog": "^2.0.0",
78
80
  "enzyme": "^2.6.0",
79
81
  "eslint": "^3.11.0",
80
82
  "eslint-config-okonet": "^4.0.2",
83
+ "husky": "^0.14.3",
81
84
  "imagemin-cli": "^3.0.0",
82
85
  "imagemin-pngquant": "^5.0.0",
83
86
  "jest": "^20.0.1",
84
87
  "jest-enzyme": "^3.2.0",
85
88
  "lint-staged": "^4.0.0",
86
89
  "markdownlint-cli": "^0.2.0",
87
- "npm-check": "^5.2.1",
88
- "pre-commit": "^1.1.3",
89
90
  "prettier": "^1.3.1",
90
91
  "react": "^15.4.1",
91
92
  "react-addons-test-utils": "^15.4.1",
@@ -99,8 +100,8 @@
99
100
  },
100
101
  "config": {
101
102
  "commitizen": {
102
- "path": "./node_modules/cz-conventional-changelog"
103
+ "path": "@commitlint/prompt"
103
104
  }
104
105
  },
105
- "version": "3.13.3"
106
+ "version": "3.13.4"
106
107
  }
package/src/index.js CHANGED
@@ -193,10 +193,15 @@ class Dropzone extends React.Component {
193
193
  const { onClick, disableClick } = this.props
194
194
  if (!disableClick) {
195
195
  evt.stopPropagation()
196
- this.open()
196
+
197
197
  if (onClick) {
198
198
  onClick.call(this, evt)
199
199
  }
200
+
201
+ // in IE11/Edge the file-browser dialog is blocking, ensure this is behind setTimeout
202
+ // this is so react can handle state changes in the onClick prop above above
203
+ // see: https://github.com/okonet/react-dropzone/issues/450
204
+ setTimeout(this.open.bind(this), 0)
200
205
  }
201
206
  }
202
207
 
package/src/index.spec.js CHANGED
@@ -175,11 +175,14 @@ describe('Dropzone', () => {
175
175
  })
176
176
 
177
177
  describe('onClick', () => {
178
- it('should call `open` method', () => {
178
+ it('should call `open` method', done => {
179
179
  const dropzone = mount(<Dropzone />)
180
180
  spy(dropzone.instance(), 'open')
181
181
  dropzone.simulate('click')
182
- expect(dropzone.instance().open.callCount).toEqual(1)
182
+ setTimeout(() => {
183
+ expect(dropzone.instance().open.callCount).toEqual(1)
184
+ done()
185
+ }, 0)
183
186
  })
184
187
 
185
188
  it('should not call `open` if disableClick prop is true', () => {
@@ -189,13 +192,16 @@ describe('Dropzone', () => {
189
192
  expect(dropzone.instance().open.callCount).toEqual(0)
190
193
  })
191
194
 
192
- it('should call `onClick` callback if provided', () => {
195
+ it('should call `onClick` callback if provided', done => {
193
196
  const clickSpy = spy()
194
197
  const dropzone = mount(<Dropzone onClick={clickSpy} />)
195
198
  spy(dropzone.instance(), 'open')
196
199
  dropzone.simulate('click')
197
- expect(dropzone.instance().open.callCount).toEqual(1)
198
- expect(clickSpy.callCount).toEqual(1)
200
+ setTimeout(() => {
201
+ expect(dropzone.instance().open.callCount).toEqual(1)
202
+ expect(clickSpy.callCount).toEqual(1)
203
+ done()
204
+ }, 0)
199
205
  })
200
206
 
201
207
  it('should reset the value of input', () => {
@@ -206,12 +212,15 @@ describe('Dropzone', () => {
206
212
  expect(dropzone.render().find('input').attr('value')).toBeUndefined()
207
213
  })
208
214
 
209
- it('should trigger click even on the input', () => {
215
+ it('should trigger click even on the input', done => {
210
216
  const dropzone = mount(<Dropzone />)
211
217
  const clickSpy = spy(dropzone.instance().fileInputEl, 'click')
212
218
  dropzone.simulate('click')
213
219
  dropzone.simulate('click')
214
- expect(clickSpy.callCount).toEqual(2)
220
+ setTimeout(() => {
221
+ expect(clickSpy.callCount).toEqual(2)
222
+ done()
223
+ }, 0)
215
224
  })
216
225
 
217
226
  it('should not invoke onClick on the wrapper', () => {
@@ -247,12 +256,15 @@ describe('Dropzone', () => {
247
256
  expect(onClickOuterSpy.callCount).toEqual(1)
248
257
  })
249
258
 
250
- it('should invoke inputProps onClick if provided', () => {
259
+ it('should invoke inputProps onClick if provided', done => {
251
260
  const inputPropsClickSpy = spy()
252
261
  const component = mount(<Dropzone inputProps={{ onClick: inputPropsClickSpy }} />)
253
262
 
254
263
  component.find('Dropzone').simulate('click')
255
- expect(inputPropsClickSpy.callCount).toEqual(1)
264
+ setTimeout(() => {
265
+ expect(inputPropsClickSpy.callCount).toEqual(1)
266
+ done()
267
+ }, 0)
256
268
  })
257
269
  })
258
270
 
@@ -811,19 +823,22 @@ describe('Dropzone', () => {
811
823
  // Test / invoke the click event
812
824
  spy(component.instance(), 'open')
813
825
  component.simulate('click')
814
- expect(component.instance().open.callCount).toEqual(1)
815
826
 
816
- // Simulated DOM event - onfocus
817
- document.body.addEventListener('focus', () => {})
818
- const evt = document.createEvent('HTMLEvents')
819
- evt.initEvent('focus', false, true)
820
- document.body.dispatchEvent(evt)
821
-
822
- // setTimeout to match the event callback from actual Component
823
827
  setTimeout(() => {
824
- expect(onCancelSpy.callCount).toEqual(1)
825
- done()
826
- }, 300)
828
+ expect(component.instance().open.callCount).toEqual(1)
829
+
830
+ // Simulated DOM event - onfocus
831
+ document.body.addEventListener('focus', () => {})
832
+ const evt = document.createEvent('HTMLEvents')
833
+ evt.initEvent('focus', false, true)
834
+ document.body.dispatchEvent(evt)
835
+
836
+ // setTimeout to match the event callback from actual Component
837
+ setTimeout(() => {
838
+ expect(onCancelSpy.callCount).toEqual(1)
839
+ done()
840
+ }, 300)
841
+ }, 0)
827
842
  })
828
843
  })
829
844