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 +2 -1
- package/commitlint.config.js +1 -0
- package/dist/index.js +6 -1
- package/dist/index.js.map +1 -1
- package/package.json +15 -14
- package/src/index.js +6 -1
- package/src/index.spec.js +35 -20
- package/yarn.lock +620 -456
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.
|
|
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
|
-
|
|
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":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD,O;ACVA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,uBAAe;AACf;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;;;;;;;;;;;;;;;;ACpCA;;;;AACA;;;;AACA;;;;AACA;;;;;;;;;;;;;;gfALA;;AAOA,KAAMA,kBAAkB,OAAOC,QAAP,KAAoB,WAApB,IAAmCA,QAAnC,IAA+CA,SAASC,aAAxD,GACpB,cAAcD,SAASC,aAAT,CAAuB,OAAvB,CADM,GAEpB,IAFJ;;AAIA,UAASC,YAAT,CAAsBC,IAAtB,EAA4BC,MAA5B,EAAoC;AAClC;AACA;AACA,UAAOD,KAAKE,IAAL,KAAc,wBAAd,IAA0C,0BAAQF,IAAR,EAAcC,MAAd,CAAjD;AACD;;KAEKE,Q;;;;;wCACsBC,G,EAAK;AAC7B;AACAA,WAAIC,cAAJ;AACD;;;AAED,qBAAYC,KAAZ,EAAmBC,OAAnB,EAA4B;AAAA;;AAAA,qHACpBD,KADoB,EACbC,OADa;;AAAA,WAwO5BC,cAxO4B,GAwOX,UAACC,QAAD,EAAWC,YAAX,EAAyBC,YAAzB,EAA0C;AACzD,WAAI,OAAOF,QAAP,KAAoB,UAAxB,EAAoC;AAClC,gBAAOA,sBAAc,MAAKG,KAAnB,IAA0BF,0BAA1B,EAAwCC,0BAAxC,IAAP;AACD;AACD,cAAOF,QAAP;AACD,MA7O2B;;AAE1B,WAAKI,OAAL,GAAe,MAAKA,OAAL,CAAaC,IAAb,OAAf;AACA,WAAKC,cAAL,GAAsB,MAAKA,cAAL,CAAoBD,IAApB,OAAtB;AACA,WAAKE,WAAL,GAAmB,MAAKA,WAAL,CAAiBF,IAAjB,OAAnB;AACA,WAAKG,WAAL,GAAmB,MAAKA,WAAL,CAAiBH,IAAjB,OAAnB;AACA,WAAKI,WAAL,GAAmB,MAAKA,WAAL,CAAiBJ,IAAjB,OAAnB;AACA,WAAKK,UAAL,GAAkB,MAAKA,UAAL,CAAgBL,IAAhB,OAAlB;AACA,WAAKM,MAAL,GAAc,MAAKA,MAAL,CAAYN,IAAZ,OAAd;AACA,WAAKO,kBAAL,GAA0B,MAAKA,kBAAL,CAAwBP,IAAxB,OAA1B;AACA,WAAKQ,MAAL,GAAc,MAAKA,MAAL,CAAYR,IAAZ,OAAd;AACA,WAAKS,OAAL,GAAe,MAAKA,OAAL,CAAaT,IAAb,OAAf;AACA,WAAKU,mBAAL,GAA2B,MAAKA,mBAAL,CAAyBV,IAAzB,OAA3B;AACA,WAAKW,kBAAL,GAA0B,KAA1B;AACA,WAAKb,KAAL,GAAa;AACXc,qBAAc,EADH;AAEXC,sBAAe,EAFJ;AAGXC,sBAAe;AAHJ,MAAb;AAd0B;AAmB3B;;;;yCAEmB;AAAA,WACVC,qBADU,GACgB,KAAKvB,KADrB,CACVuB,qBADU;;AAElB,YAAKC,WAAL,GAAmB,EAAnB;;AAEA,WAAID,qBAAJ,EAA2B;AACzBhC,kBAASkC,gBAAT,CAA0B,UAA1B,EAAsC5B,SAAS6B,kBAA/C,EAAmE,KAAnE;AACAnC,kBAASkC,gBAAT,CAA0B,MAA1B,EAAkC,KAAKhB,cAAvC,EAAuD,KAAvD;AACD;AACD,YAAKkB,WAAL,CAAiBF,gBAAjB,CAAkC,OAAlC,EAA2C,KAAKP,mBAAhD,EAAqE,KAArE;AACA;AACA3B,gBAASqC,IAAT,CAAcC,OAAd,GAAwB,KAAKd,kBAA7B;AACD;;;4CAEsB;AAAA,WACbQ,qBADa,GACa,KAAKvB,KADlB,CACbuB,qBADa;;AAErB,WAAIA,qBAAJ,EAA2B;AACzBhC,kBAASuC,mBAAT,CAA6B,UAA7B,EAAyCjC,SAAS6B,kBAAlD;AACAnC,kBAASuC,mBAAT,CAA6B,MAA7B,EAAqC,KAAKrB,cAA1C;AACD;AACD,YAAKkB,WAAL,CAAiBG,mBAAjB,CAAqC,OAArC,EAA8C,KAAKZ,mBAAnD,EAAwE,KAAxE;AACA;AACA3B,gBAASqC,IAAT,CAAcC,OAAd,GAAwB,IAAxB;AACD;;;oCAEc/B,G,EAAK;AAClB,WAAI,KAAKiC,IAAL,CAAUC,QAAV,CAAmBlC,IAAImC,MAAvB,CAAJ,EAAoC;AAClC;AACA;AACD;AACDnC,WAAIC,cAAJ;AACA,YAAKyB,WAAL,GAAmB,EAAnB;AACD;;;iCAEW1B,G,EAAK;AACf,WAAI,KAAKE,KAAL,CAAWU,WAAf,EAA4B;AAC1B,cAAKV,KAAL,CAAWU,WAAX,CAAuBwB,IAAvB,CAA4B,IAA5B,EAAkCpC,GAAlC;AACD;AACF;;;iCAEWA,G,EAAK;AACfA,WAAIC,cAAJ;;AAEA;AACA,WAAI,KAAKyB,WAAL,CAAiBW,OAAjB,CAAyBrC,IAAImC,MAA7B,MAAyC,CAAC,CAA9C,EAAiD;AAC/C,cAAKT,WAAL,CAAiBY,IAAjB,CAAsBtC,IAAImC,MAA1B;AACD;;AAED,YAAKI,QAAL,CAAc,EAAEjB,cAAc,oCAAqBtB,GAArB,CAAhB,EAAd;;AAEA,WAAI,KAAKE,KAAL,CAAWW,WAAf,EAA4B;AAC1B,cAAKX,KAAL,CAAWW,WAAX,CAAuBuB,IAAvB,CAA4B,IAA5B,EAAkCpC,GAAlC;AACD;AACF;;;gCAEUA,G,EAAK;AACd;AACAA,WAAIC,cAAJ;AACAD,WAAIwC,eAAJ;AACA,WAAI;AACFxC,aAAIyC,YAAJ,CAAiBC,UAAjB,GAA8B,MAA9B,CADE,CACmC;AACtC,QAFD,CAEE,OAAOC,GAAP,EAAY;AACZ;AACD;;AAED,WAAI,KAAKzC,KAAL,CAAWa,UAAf,EAA2B;AACzB,cAAKb,KAAL,CAAWa,UAAX,CAAsBqB,IAAtB,CAA2B,IAA3B,EAAiCpC,GAAjC;AACD;AACD,cAAO,KAAP;AACD;;;iCAEWA,G,EAAK;AAAA;;AACfA,WAAIC,cAAJ;;AAEA;AACA,YAAKyB,WAAL,GAAmB,KAAKA,WAAL,CAAiBkB,MAAjB,CAAwB;AAAA,gBAAMC,OAAO7C,IAAImC,MAAX,IAAqB,OAAKF,IAAL,CAAUC,QAAV,CAAmBW,EAAnB,CAA3B;AAAA,QAAxB,CAAnB;AACA,WAAI,KAAKnB,WAAL,CAAiBoB,MAAjB,GAA0B,CAA9B,EAAiC;AAC/B;AACD;;AAED;AACA,YAAKP,QAAL,CAAc,EAAEjB,cAAc,EAAhB,EAAd;;AAEA,WAAI,KAAKpB,KAAL,CAAWY,WAAf,EAA4B;AAC1B,cAAKZ,KAAL,CAAWY,WAAX,CAAuBsB,IAAvB,CAA4B,IAA5B,EAAkCpC,GAAlC;AACD;AACF;;;4BAEMA,G,EAAK;AAAA;;AAAA,oBAC2E,KAAKE,KADhF;AAAA,WACFc,MADE,UACFA,MADE;AAAA,WACM+B,cADN,UACMA,cADN;AAAA,WACsBC,cADtB,UACsBA,cADtB;AAAA,WACsCC,QADtC,UACsCA,QADtC;AAAA,WACgDC,cADhD,UACgDA,cADhD;AAAA,WACgErD,MADhE,UACgEA,MADhE;;AAEV,WAAMsD,WAAW,oCAAqBnD,GAArB,CAAjB;AACA,WAAMuB,gBAAgB,EAAtB;AACA,WAAMC,gBAAgB,EAAtB;;AAEA;AACAxB,WAAIC,cAAJ;;AAEA;AACA,YAAKyB,WAAL,GAAmB,EAAnB;AACA,YAAKL,kBAAL,GAA0B,KAA1B;;AAEA8B,gBAASC,OAAT,CAAiB,gBAAQ;AACvB,aAAI,CAACF,cAAL,EAAqB;AACnB,eAAI;AACFtD,kBAAKyD,OAAL,GAAeC,OAAOC,GAAP,CAAWC,eAAX,CAA2B5D,IAA3B,CAAf,CADE,CAC8C;AACjD,YAFD,CAEE,OAAO+C,GAAP,EAAY;AACZ,iBAAIc,QAAQC,GAAR,CAAYC,QAAZ,KAAyB,YAA7B,EAA2C;AACzCC,uBAAQC,KAAR,CAAc,qCAAd,EAAqDjE,IAArD,EAA2D+C,GAA3D,EADyC,CACuB;AACjE;AACF;AACF;;AAED,aAAIhD,aAAaC,IAAb,EAAmBC,MAAnB,KAA8B,OAAKiE,aAAL,CAAmBlE,IAAnB,CAAlC,EAA4D;AAC1D2B,yBAAce,IAAd,CAAmB1C,IAAnB;AACD,UAFD,MAEO;AACL4B,yBAAcc,IAAd,CAAmB1C,IAAnB;AACD;AACF,QAhBD;;AAkBA,WAAI,CAACqD,QAAL,EAAe;AACb;AACA;AACAzB,uBAAcc,IAAd,yCAAsBf,cAAcwC,MAAd,CAAqB,CAArB,CAAtB;AACD;;AAED,WAAI/C,MAAJ,EAAY;AACVA,gBAAOoB,IAAP,CAAY,IAAZ,EAAkBb,aAAlB,EAAiCC,aAAjC,EAAgDxB,GAAhD;AACD;;AAED,WAAIwB,cAAcsB,MAAd,GAAuB,CAAvB,IAA4BE,cAAhC,EAAgD;AAC9CA,wBAAeZ,IAAf,CAAoB,IAApB,EAA0BZ,aAA1B,EAAyCxB,GAAzC;AACD;;AAED,WAAIuB,cAAcuB,MAAd,GAAuB,CAAvB,IAA4BC,cAAhC,EAAgD;AAC9CA,wBAAeX,IAAf,CAAoB,IAApB,EAA0Bb,aAA1B,EAAyCvB,GAAzC;AACD;;AAED;AACA,YAAKsB,YAAL,GAAoB,IAApB;;AAEA;AACA,YAAKiB,QAAL,CAAc;AACZjB,uBAAc,EADF;AAEZC,qCAFY;AAGZC;AAHY,QAAd;AAKD;;;6BAEOxB,G,EAAK;AAAA,qBACuB,KAAKE,KAD5B;AAAA,WACHO,OADG,WACHA,OADG;AAAA,WACMuD,YADN,WACMA,YADN;;AAEX,WAAI,CAACA,YAAL,EAAmB;AACjBhE,aAAIwC,eAAJ;AACA,cAAKyB,IAAL;AACA,aAAIxD,OAAJ,EAAa;AACXA,mBAAQ2B,IAAR,CAAa,IAAb,EAAmBpC,GAAnB;AACD;AACF;AACF;;;yCAEmBA,G,EAAK;AACvBA,WAAIwC,eAAJ;AACA,WAAI,KAAKtC,KAAL,CAAWgE,UAAX,IAAyB,KAAKhE,KAAL,CAAWgE,UAAX,CAAsBzD,OAAnD,EAA4D;AAC1D,cAAKP,KAAL,CAAWgE,UAAX,CAAsBzD,OAAtB;AACD;AACF;;;0CAEoB;AACnB;AADmB,WAEXQ,kBAFW,GAEY,KAAKf,KAFjB,CAEXe,kBAFW;AAAA,WAGXY,WAHW,GAGK,IAHL,CAGXA,WAHW;AAAA,WAIbR,kBAJa,GAIU,IAJV,CAIbA,kBAJa;AAKnB;AACA;;AACA,WAAIJ,sBAAsBI,kBAA1B,EAA8C;AAC5C8C,oBAAW,YAAM;AACf;AACA,eAAMC,WAAWvC,YAAYwC,KAA7B;AACA,eAAI,CAACD,SAAStB,MAAd,EAAsB;AACpBzB,kCAAqB,KAArB;AACAJ;AACD;AACF,UAPD,EAOG,GAPH;AAQD;AACF;;;4BAEMqD,G,EAAK;AACV,YAAKrC,IAAL,GAAYqC,GAAZ;AACD;;;6BAEOA,G,EAAK;AACX,YAAKzC,WAAL,GAAmByC,GAAnB;AACD;;;mCAEa1E,I,EAAM;AAClB,cAAOA,KAAK2E,IAAL,IAAa,KAAKrE,KAAL,CAAWsE,OAAxB,IAAmC5E,KAAK2E,IAAL,IAAa,KAAKrE,KAAL,CAAWuE,OAAlE;AACD;;;sCAEgBJ,K,EAAO;AAAA;;AACtB,cAAOA,MAAMK,KAAN,CAAY;AAAA,gBAAQ/E,aAAaC,IAAb,EAAmB,OAAKM,KAAL,CAAWL,MAA9B,CAAR;AAAA,QAAZ,CAAP;AACD;;AAED;;;;;;;;4BAKO;AACL,YAAKwB,kBAAL,GAA0B,IAA1B;AACA,YAAKQ,WAAL,CAAiB8C,KAAjB,GAAyB,IAAzB;AACA,YAAK9C,WAAL,CAAiB+C,KAAjB;AACD;;;8BASQ;AAAA,qBAUH,KAAK1E,KAVF;AAAA,WAELL,MAFK,WAELA,MAFK;AAAA,WAGLgF,eAHK,WAGLA,eAHK;AAAA,WAILX,UAJK,WAILA,UAJK;AAAA,WAKLjB,QALK,WAKLA,QALK;AAAA,WAML6B,IANK,WAMLA,IANK;AAAA,WAOLC,eAPK,WAOLA,eAPK;AAAA,WAQL1E,QARK,WAQLA,QARK;AAAA,WASF2E,IATE;;AAAA,WAaLC,WAbK,GAkBHD,IAlBG,CAaLC,WAbK;AAAA,WAcLC,SAdK,GAkBHF,IAlBG,CAcLE,SAdK;AAAA,WAeLC,WAfK,GAkBHH,IAlBG,CAeLG,WAfK;AAAA,WAgBLC,KAhBK,GAkBHJ,IAlBG,CAgBLI,KAhBK;AAAA,WAiBFlF,KAjBE,4BAkBH8E,IAlBG;;AAAA,WAoBC1D,YApBD,GAoBkB,KAAKd,KApBvB,CAoBCc,YApBD;;AAqBP,WAAM+D,aAAa/D,aAAawB,MAAhC;AACA,WAAMwC,oBAAoBrC,YAAYoC,cAAc,CAApD;AACA,WAAM/E,eAAe+E,aAAa,CAAb,IAAkB,KAAKE,gBAAL,CAAsBjE,YAAtB,CAAvC;AACA,WAAMf,eAAe8E,aAAa,CAAb,KAAmB,CAAC/E,YAAD,IAAiB,CAACgF,iBAArC,CAArB;;AAEAJ,mBAAYA,aAAa,EAAzB;;AAEA,WAAI5E,gBAAgBuE,eAApB,EAAqC;AACnCK,sBAAa,MAAML,eAAnB;AACD;AACD,WAAItE,gBAAgBwE,eAApB,EAAqC;AACnCG,sBAAa,MAAMH,eAAnB;AACD;;AAED,WAAI,CAACG,SAAD,IAAc,CAACE,KAAf,IAAwB,CAACH,WAAzB,IAAwC,CAACE,WAA7C,EAA0D;AACxDC,iBAAQ;AACNI,kBAAO,GADD;AAENC,mBAAQ,GAFF;AAGNC,wBAAa,CAHP;AAINC,wBAAa,MAJP;AAKNC,wBAAa,QALP;AAMNC,yBAAc;AANR,UAAR;AAQAZ,uBAAc;AACZW,wBAAa,OADD;AAEZD,wBAAa,MAFD;AAGZG,4BAAiB;AAHL,UAAd;AAKAX,uBAAc;AACZS,wBAAa,OADD;AAEZD,wBAAa,MAFD;AAGZG,4BAAiB;AAHL,UAAd;AAKD;;AAED,WAAIC,qBAAJ;AACA,WAAId,eAAe3E,YAAnB,EAAiC;AAC/ByF,qCACKX,KADL,EAEKH,WAFL;AAID,QALD,MAKO,IAAIE,eAAe5E,YAAnB,EAAiC;AACtCwF,qCACKX,KADL,EAEKD,WAFL;AAID,QALM,MAKA;AACLY,qCACKX,KADL;AAGD;;AAED,WAAMY,kBAAkB;AACtBnG,uBADsB;AAEtBC,eAAM,MAFgB;AAGtBsF,gBAAO,EAAEa,SAAS,MAAX,EAHe;AAItBhD,mBAAUzD,mBAAmByD,QAJP;AAKtBqB,cAAK,KAAKnD,OALY;AAMtB+E,mBAAU,KAAKlF;AANO,QAAxB;;AASA,WAAI8D,QAAQA,KAAKhC,MAAjB,EAAyB;AACvBkD,yBAAgBlB,IAAhB,GAAuBA,IAAvB;AACD;;AAED;AACA,WAAMqB,cAAc,CAClB,eADkB,EAElB,uBAFkB,EAGlB,gBAHkB,EAIlB,cAJkB,EAKlB,gBALkB,EAMlB,gBANkB,EAOlB,oBAPkB,EAQlB,SARkB,EASlB,SATkB,CAApB;AAWA,WAAMC,wBAAgBlG,KAAhB,CAAN;AACAiG,mBAAY/C,OAAZ,CAAoB;AAAA,gBAAQ,OAAOgD,SAASC,IAAT,CAAf;AAAA,QAApB;;AAEA,cACE;AAAA;AAAA;AACE,sBAAWnB,SADb;AAEE,kBAAOa;AAFT,YAGMK,QAHN,CAGe,6EAHf;AAIE,oBAAS,KAAK3F,OAJhB;AAKE,wBAAa,KAAKG,WALpB;AAME,wBAAa,KAAKC,WANpB;AAOE,uBAAY,KAAKE,UAPnB;AAQE,wBAAa,KAAKD,WARpB;AASE,mBAAQ,KAAKE,MATf;AAUE,gBAAK,KAAKE;AAVZ;AAYG,cAAKd,cAAL,CAAoBC,QAApB,EAA8BC,YAA9B,EAA4CC,YAA5C,CAZH;AAaE,6DACM2D,UADN,CACiB,4EADjB,EAEM8B,eAFN;AAbF,QADF;AAoBD;;;;GA9WoB,gBAAMM,S;;AAiX7BvG,UAASwG,SAAT,GAAqB;AACnB;;;;;;;AAOA1G,WAAQ,oBAAU2G,MARC;;AAUnB;;;AAGAnG,aAAU,oBAAUoG,SAAV,CAAoB,CAAC,oBAAUxE,IAAX,EAAiB,oBAAUyE,IAA3B,CAApB,CAbS;;AAenB;;;AAGA1C,iBAAc,oBAAU2C,IAlBL;;AAoBnB;;;AAGAzD,mBAAgB,oBAAUyD,IAvBP;;AAyBnB;;;AAGAlF,0BAAuB,oBAAUkF,IA5Bd;;AA8BnB;;;AAGAzC,eAAY,oBAAU0C,MAjCH;;AAmCnB;;;AAGA3D,aAAU,oBAAU0D,IAtCD;;AAwCnB;;;AAGA7B,SAAM,oBAAU0B,MA3CG;;AA6CnB;;;AAGAhC,YAAS,oBAAUqC,MAhDA;;AAkDnB;;;AAGApC,YAAS,oBAAUoC,MArDA;;AAuDnB;;;AAGA3B,cAAW,oBAAUsB,MA1DF;;AA4DnB;;;AAGA3B,oBAAiB,oBAAU2B,MA/DR;;AAiEnB;;;AAGAzB,oBAAiB,oBAAUyB,MApER;;AAsEnB;;;AAGApB,UAAO,oBAAUwB,MAzEE;;AA2EnB;;;AAGA3B,gBAAa,oBAAU2B,MA9EJ;;AAgFnB;;;AAGAzB,gBAAa,oBAAUyB,MAnFJ;;AAqFnB;;;;AAIAnG,YAAS,oBAAUiG,IAzFA;;AA2FnB;;;AAGA1F,WAAQ,oBAAU0F,IA9FC;;AAgGnB;;;AAGA3D,mBAAgB,oBAAU2D,IAnGP;;AAqGnB;;;AAGA1D,mBAAgB,oBAAU0D,IAxGP;;AA0GnB;;;AAGA9F,gBAAa,oBAAU8F,IA7GJ;;AA+GnB;;;AAGA7F,gBAAa,oBAAU6F,IAlHJ;;AAoHnB;;;AAGA3F,eAAY,oBAAU2F,IAvHH;;AAyHnB;;;AAGA5F,gBAAa,oBAAU4F,IA5HJ;;AA8HnB;;;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;;;;;;;;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
|
-
"
|
|
14
|
-
"
|
|
15
|
-
"
|
|
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": "
|
|
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": "
|
|
103
|
+
"path": "@commitlint/prompt"
|
|
103
104
|
}
|
|
104
105
|
},
|
|
105
|
-
"version": "3.13.
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
198
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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(
|
|
825
|
-
|
|
826
|
-
|
|
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
|
|