active_storage_drag_and_drop 1.0.3 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f568f08582b1850816f5257976e2749b240ee892e64bf9ab82078043c607a0b6
4
- data.tar.gz: c35b68e80159576bc9573b1ccad93f1c4136d67cabd057c14655ad7b4409c8a1
3
+ metadata.gz: '087af629e98c83242fe568d239346a01fa678b8f7307ef456b72dc67844accd0'
4
+ data.tar.gz: 209dc8966c8ad5e121ca375f4265a152fea9fd27be9e015726e9f59dcf4cab1a
5
5
  SHA512:
6
- metadata.gz: 627e843cdefb78e388ee2cf18c4e20a2bbcea4bc2d26c4da91e7160f75f93803f5766273a7bd83b1c369407a6381b63f8f0a75f0fda6d35150c9e4507d8838e3
7
- data.tar.gz: bf864df00453a34229ec4f160c34c9ec0076b64714ab4e1dda4727bed3fd258345969a3a1deb83528d8acd82467f508f2794518dc209ba0071107cefff53d41e
6
+ metadata.gz: 89c90b182e81bc98a5a6766bb75148935a22df8af133721bc21eb055d6e2b900f33ee3572911e83ab681bbaa7843659668332a46b25de366620d5661e05c78b7
7
+ data.tar.gz: 9093c0b5b0beb078f91f7b708a39f8434d9edff4db75178ab0306fe2c3e876c8cdb954292631e9131ff0c30bbed01aa826e6645b767861fb6bc0fcd96fea43ef
@@ -42,12 +42,12 @@ Gem::Specification.new do |spec|
42
42
  spec.add_development_dependency 'pry'
43
43
  spec.add_development_dependency 'pry-byebug'
44
44
  spec.add_development_dependency 'puma'
45
- spec.add_development_dependency 'rake', '~> 10.0'
45
+ spec.add_development_dependency 'rake', '~> 12.3.3'
46
46
  spec.add_development_dependency 'redcarpet'
47
47
  spec.add_development_dependency 'rubocop'
48
48
  spec.add_development_dependency 'selenium-webdriver'
49
49
  spec.add_development_dependency 'simplecov'
50
50
  spec.add_development_dependency 'sqlite3'
51
- spec.add_dependency 'rack', '~> 2.0.6'
51
+ spec.add_dependency 'rack', '>= 2'
52
52
  spec.add_dependency 'rails', '>= 5.2.2.1'
53
53
  end
@@ -1 +1 @@
1
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.ActiveStorageDragAndDrop=t():e.ActiveStorageDragAndDrop=t()}(window,function(){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)r.d(n,i,function(t){return e[t]}.bind(null,i));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=2)}([function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.dispatchEvent=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=r.bubbles,i=void 0===n||n,o=r.cancelable,a=void 0===o||o,u=r.detail,s=void 0===u?{}:u,l=new CustomEvent(t,{bubbles:i,cancelable:a,detail:s});return e.dispatchEvent(l),l},t.fileSizeSI=function(e){var t=Math.log(e)/Math.log(1e3)|0;return(e/Math.pow(1e3,t)+.5|0)+(t?"kMGTPEZY"[--t]+"B":" Bytes")}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.errorUI=function(e){var t=e.detail.id,r=e.detail,n=r.error,i=r.iconContainer,o=r.file;if(e.defaultPrevented)return;t||(t="error",window.ActiveStorageDragAndDrop.paintUploadIcon(i,t,o,!1));var a=document.querySelector('[data-direct-upload-id="'+t+'"] .direct-upload');if(!a)return;a.setAttribute("title",n),a.classList.add("direct-upload--error")},t.endUI=function(e){var t=e.detail.id;if(!t||e.defaultPrevented)return;var r=document.querySelector('[data-direct-upload-id="'+t+'"] .direct-upload');if(!r)return;var n=r.classList;n.remove("direct-upload--pending"),n.add("direct-upload--complete")},t.initializeUI=function(e){if(e.defaultPrevented)return;var t=e.detail,r=t.id,n=t.file,i=t.iconContainer;window.ActiveStorageDragAndDrop.paintUploadIcon(i,r,n,!1)},t.progressUI=function(e){if(e.defaultPrevented)return;var t=e.detail,r=t.id,n=t.progress,i=document.querySelector('[data-direct-upload-id="'+r+'"] .direct-upload__progress');i&&(i.style.width=n+"%")},t.placeholderUI=function(e){if(e.defaultPrevented)return;var t=e.detail,r=t.id,n=t.file,i=t.iconContainer;window.ActiveStorageDragAndDrop.paintUploadIcon(i,r,n,!0)},t.cancelUI=function(e){if(e.defaultPrevented)return;var t=e.detail.id;document.querySelectorAll('[data-direct-upload-id="'+t+'"]').forEach(function(e){e.remove()})},t.paintUploadIcon=function(e,t,r,i){var o=i?"complete":"pending",a=i?100:0;e.insertAdjacentHTML("beforeend",'\n <div data-direct-upload-id="'+t+'">\n <div class="direct-upload direct-upload--'+o+'">\n <div class="direct-upload__progress" style="width: '+a+'%"></div>\n <span class="direct-upload__filename">'+r.name+'</span>\n <span class="direct-upload__filesize">'+(0,n.fileSizeSI)(r.size)+"</span>\n </div>\n <a href='remove' class='direct-upload__remove'>X</a>\n </div>\n ")};var n=r(0)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.processUploadQueue=t.paintUploadIcon=t.start=void 0;var n=r(3),i=r(1);t.start=n.start,t.paintUploadIcon=i.paintUploadIcon,t.processUploadQueue=n.processUploadQueue,setTimeout(function(){(0,n.start)()},1)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.formSubmitted=void 0,t.handleProcessUploadQueueEvent=s,t.processUploadQueue=l,t.addAttachedFileIcons=d,t.preventDragover=c,t.handleSubmit=f,t.removeFileFromQueue=h,t.queueUploadsForFileInput=p,t.queueUploadsForDroppedFiles=v,t.start=function(){if(a)return;a=!0,document.addEventListener("change",p),document.addEventListener("click",h),document.addEventListener("drop",v,!0),document.addEventListener("submit",f),document.addEventListener("dnd-uploads:process-upload-queue",s),document.addEventListener("ajax:before",f),document.addEventListener("dragover",c),d()},t.findOrInitializeFormController=y;var n=r(4),i=r(1),o=r(0),a=!1,u=(t.formSubmitted=!1,new Map);function s(e){console.warn("WARNING! The processs-upload-queue event is deprecated. Call window.ActiveStorageDragAndDrop.processUploadQueue(form, callback) instead.");var t=e.detail.callback;l(e.target,t)}function l(e,t){y(e).start(function(e){t(e)})}function d(){document.querySelectorAll("input[type='hidden'][data-direct-upload-id][data-uploaded-file]").forEach(function(e){var t=e.dataset,r={id:t.directUploadId,file:JSON.parse(t.uploadedFile),iconContainer:document.getElementById(t.iconContainerId)},n=(0,o.dispatchEvent)(e,"dnd-upload:placeholder",{detail:r});(0,i.placeholderUI)(n)})}function c(e){var t=e.target;t instanceof Element&&t.closest(".asdndzone")&&e.preventDefault()}function f(e){if(!this.formSubmitted){this.formSubmitted=!0;var t=y(e.target);0!==t.uploadControllers.length&&(e.preventDefault(),t.start(function(e){e||t.form.submit()}))}}function h(e){var t=e.target;if(t instanceof HTMLElement&&t.classList.contains("direct-upload__remove")){var r=t.closest("[data-direct-upload-id]");if(!(r instanceof HTMLElement))throw new Error("Cannot remove queued upload because there is no enclosing element with a data-direct-upload-id attribute.");e.preventDefault(),y(t.closest("form")).unqueueUpload(parseInt(r.dataset.directUploadId))}}function p(e){var t=e.target;if(t instanceof HTMLInputElement&&"file"===t.type&&"true"===t.dataset.dnd){var r=y(t.form);Array.from(t.files).forEach(function(e){return r.queueUpload(t,e)}),t.value=""}}function v(e){var t=e.target,r=e.dataTransfer;if(t instanceof Element&&r instanceof DataTransfer){var n=t.closest(".asdndzone");if(n instanceof HTMLElement){var i=document.getElementById(n.dataset.dndInputId);if(!(i instanceof HTMLInputElement))throw new Error("There is no file input element with the dnd-input-id specified on the drop zone.");e.preventDefault();var o=y(i.form);Array.from(r.files).forEach(function(e){return o.queueUpload(i,e)})}}}function y(e){var t=u.get(e);if(t)return t;if(!(e instanceof HTMLFormElement))throw new Error("Can only initialize form controller with a form element.");return t=new n.DragAndDropFormController(e),u.set(e,t),t}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DragAndDropFormController=void 0;var n=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,r,n){return r&&e(t.prototype,r),n&&e(t,n),t}}(),i=r(0),o=r(1),a=r(5);t.DragAndDropFormController=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.form=t,this.uploadControllers=[]}return n(e,[{key:"start",value:function(e){var t=this;this.dispatch("start"),function r(){var n=t.uploadControllers.shift();if(n)n.start(function(i){i?(t.dispatchError(i,n),e(i)):r()});else{e();var i=t.dispatch("end");(0,o.endUI)(i)}}()}},{key:"dispatch",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return(0,i.dispatchEvent)(this.form,"dnd-uploads:"+e,{detail:t})}},{key:"dispatchError",value:function(e,t){var r=t.file,n=t.iconContainer,a=(0,i.dispatchEvent)(this.form,"dnd-upload:error",{detail:{error:e,file:r,iconContainer:n}});(0,o.errorUI)(a)}},{key:"queueUpload",value:function(e,t){e.getAttribute("multiple")||this.unqueueUploadsPerInput(e);try{this.uploadControllers.push(new a.DragAndDropUploadController(e,t))}catch(r){!function(e,t){var r=(0,i.dispatchEvent)(e,"dnd-upload:error",{detail:t});(0,o.errorUI)(r)}(e,{id:null,file:t,error:r,iconContainer:document.getElementById(e.dataset.iconContainerId)})}}},{key:"unqueueUploadsPerInput",value:function(e){var t=e.closest("label.asdndzone");t&&(t.querySelectorAll("[data-direct-upload-id]").forEach(function(e){e.remove()}),this.uploadControllers.splice(0,this.uploadControllers.length))}},{key:"unqueueUpload",value:function(e){var t=this.uploadControllers.findIndex(function(t){return t.upload.id===e}),r=this.uploadControllers[t];this.uploadControllers.splice(t,1);var n=r&&r.dispatch instanceof Function?r.dispatch("cancel"):this.dispatch("cancel",{id:"error"});(0,o.cancelUI)(n)}}]),e}()},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DragAndDropUploadController=void 0;var n=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,r,n){return r&&e(t.prototype,r),n&&e(t,n),t}}(),i=r(0),o=r(1),a=r(6);function u(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}t.DragAndDropUploadController=function(){function e(t,r){u(this,e),function(e,t){var r=parseInt(e.getAttribute("size_limit")),n=e.getAttribute("accept");if(n&&!n.split(", ").includes(t.type))throw new s("Invalid filetype");if(r&&t.size>r)throw new s("File too large. Can be no larger than "+(0,i.fileSizeSI)(r))}(t,r);var n=t.closest("form"),l=document.getElementById(t.dataset.iconContainerId);if(n instanceof HTMLFormElement&&l){this.input=t,this.form=n,this.url=this.input.dataset.directUploadUrl,this.iconContainer=l,this.file=r,this.upload=new a.DirectUpload(this.file,this.url,this);var d=this.dispatch("initialize");(0,o.initializeUI)(d)}}return n(e,[{key:"start",value:function(e){var t=this;this.dispatch("start"),this.upload.create(function(r,n){if(r)t.dispatchError(r),e(r);else{var i=document.createElement("input");i.setAttribute("type","hidden"),i.setAttribute("value",n.signed_id),i.setAttribute("name",t.input.getAttribute("name")||""),i.setAttribute("data-direct-upload-id",t.upload.id),t.form.appendChild(i);var a=t.dispatch("end");(0,o.endUI)(a),e(r)}})}},{key:"dispatch",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return t.file=this.file,t.id=this.upload.id,t.iconContainer=this.iconContainer,(0,i.dispatchEvent)(this.input,"dnd-upload:"+e,{detail:t})}},{key:"dispatchError",value:function(e){var t=this.dispatch("error",{error:e});(0,o.errorUI)(t)}},{key:"directUploadWillCreateBlobWithXHR",value:function(e){this.dispatch("before-blob-request",{xhr:e})}},{key:"directUploadWillStoreFileWithXHR",value:function(e){var t=this;this.dispatch("before-storage-request",{xhr:e}),e.upload.addEventListener("progress",function(e){return t.uploadRequestDidProgress(e)})}},{key:"uploadRequestDidProgress",value:function(e){var t=e.loaded/e.total*100;if(t){var r=this.dispatch("progress",{progress:t});(0,o.progressUI)(r)}}}]),e}();var s=function(e){function t(){var e;u(this,t);for(var r=arguments.length,n=Array(r),i=0;i<r;i++)n[i]=arguments[i];var o=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}(this,(e=t.__proto__||Object.getPrototypeOf(t)).call.apply(e,[this].concat(n)));return Error.captureStackTrace(o,t),o}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,Error),t}()},function(e,t,r){!function(e){"use strict";var t,r=(function(e,t){e.exports=function(e){var t=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"];function r(e,t){var r=e[0],n=e[1],i=e[2],o=e[3];r+=(n&i|~n&o)+t[0]-680876936|0,o+=((r=(r<<7|r>>>25)+n|0)&n|~r&i)+t[1]-389564586|0,i+=((o=(o<<12|o>>>20)+r|0)&r|~o&n)+t[2]+606105819|0,n+=((i=(i<<17|i>>>15)+o|0)&o|~i&r)+t[3]-1044525330|0,r+=((n=(n<<22|n>>>10)+i|0)&i|~n&o)+t[4]-176418897|0,o+=((r=(r<<7|r>>>25)+n|0)&n|~r&i)+t[5]+1200080426|0,i+=((o=(o<<12|o>>>20)+r|0)&r|~o&n)+t[6]-1473231341|0,n+=((i=(i<<17|i>>>15)+o|0)&o|~i&r)+t[7]-45705983|0,r+=((n=(n<<22|n>>>10)+i|0)&i|~n&o)+t[8]+1770035416|0,o+=((r=(r<<7|r>>>25)+n|0)&n|~r&i)+t[9]-1958414417|0,i+=((o=(o<<12|o>>>20)+r|0)&r|~o&n)+t[10]-42063|0,n+=((i=(i<<17|i>>>15)+o|0)&o|~i&r)+t[11]-1990404162|0,r+=((n=(n<<22|n>>>10)+i|0)&i|~n&o)+t[12]+1804603682|0,o+=((r=(r<<7|r>>>25)+n|0)&n|~r&i)+t[13]-40341101|0,i+=((o=(o<<12|o>>>20)+r|0)&r|~o&n)+t[14]-1502002290|0,n+=((i=(i<<17|i>>>15)+o|0)&o|~i&r)+t[15]+1236535329|0,r+=((n=(n<<22|n>>>10)+i|0)&o|i&~o)+t[1]-165796510|0,o+=((r=(r<<5|r>>>27)+n|0)&i|n&~i)+t[6]-1069501632|0,i+=((o=(o<<9|o>>>23)+r|0)&n|r&~n)+t[11]+643717713|0,n+=((i=(i<<14|i>>>18)+o|0)&r|o&~r)+t[0]-373897302|0,r+=((n=(n<<20|n>>>12)+i|0)&o|i&~o)+t[5]-701558691|0,o+=((r=(r<<5|r>>>27)+n|0)&i|n&~i)+t[10]+38016083|0,i+=((o=(o<<9|o>>>23)+r|0)&n|r&~n)+t[15]-660478335|0,n+=((i=(i<<14|i>>>18)+o|0)&r|o&~r)+t[4]-405537848|0,r+=((n=(n<<20|n>>>12)+i|0)&o|i&~o)+t[9]+568446438|0,o+=((r=(r<<5|r>>>27)+n|0)&i|n&~i)+t[14]-1019803690|0,i+=((o=(o<<9|o>>>23)+r|0)&n|r&~n)+t[3]-187363961|0,n+=((i=(i<<14|i>>>18)+o|0)&r|o&~r)+t[8]+1163531501|0,r+=((n=(n<<20|n>>>12)+i|0)&o|i&~o)+t[13]-1444681467|0,o+=((r=(r<<5|r>>>27)+n|0)&i|n&~i)+t[2]-51403784|0,i+=((o=(o<<9|o>>>23)+r|0)&n|r&~n)+t[7]+1735328473|0,n+=((i=(i<<14|i>>>18)+o|0)&r|o&~r)+t[12]-1926607734|0,r+=((n=(n<<20|n>>>12)+i|0)^i^o)+t[5]-378558|0,o+=((r=(r<<4|r>>>28)+n|0)^n^i)+t[8]-2022574463|0,i+=((o=(o<<11|o>>>21)+r|0)^r^n)+t[11]+1839030562|0,n+=((i=(i<<16|i>>>16)+o|0)^o^r)+t[14]-35309556|0,r+=((n=(n<<23|n>>>9)+i|0)^i^o)+t[1]-1530992060|0,o+=((r=(r<<4|r>>>28)+n|0)^n^i)+t[4]+1272893353|0,i+=((o=(o<<11|o>>>21)+r|0)^r^n)+t[7]-155497632|0,n+=((i=(i<<16|i>>>16)+o|0)^o^r)+t[10]-1094730640|0,r+=((n=(n<<23|n>>>9)+i|0)^i^o)+t[13]+681279174|0,o+=((r=(r<<4|r>>>28)+n|0)^n^i)+t[0]-358537222|0,i+=((o=(o<<11|o>>>21)+r|0)^r^n)+t[3]-722521979|0,n+=((i=(i<<16|i>>>16)+o|0)^o^r)+t[6]+76029189|0,r+=((n=(n<<23|n>>>9)+i|0)^i^o)+t[9]-640364487|0,o+=((r=(r<<4|r>>>28)+n|0)^n^i)+t[12]-421815835|0,i+=((o=(o<<11|o>>>21)+r|0)^r^n)+t[15]+530742520|0,n+=((i=(i<<16|i>>>16)+o|0)^o^r)+t[2]-995338651|0,r+=(i^((n=(n<<23|n>>>9)+i|0)|~o))+t[0]-198630844|0,o+=(n^((r=(r<<6|r>>>26)+n|0)|~i))+t[7]+1126891415|0,i+=(r^((o=(o<<10|o>>>22)+r|0)|~n))+t[14]-1416354905|0,n+=(o^((i=(i<<15|i>>>17)+o|0)|~r))+t[5]-57434055|0,r+=(i^((n=(n<<21|n>>>11)+i|0)|~o))+t[12]+1700485571|0,o+=(n^((r=(r<<6|r>>>26)+n|0)|~i))+t[3]-1894986606|0,i+=(r^((o=(o<<10|o>>>22)+r|0)|~n))+t[10]-1051523|0,n+=(o^((i=(i<<15|i>>>17)+o|0)|~r))+t[1]-2054922799|0,r+=(i^((n=(n<<21|n>>>11)+i|0)|~o))+t[8]+1873313359|0,o+=(n^((r=(r<<6|r>>>26)+n|0)|~i))+t[15]-30611744|0,i+=(r^((o=(o<<10|o>>>22)+r|0)|~n))+t[6]-1560198380|0,n+=(o^((i=(i<<15|i>>>17)+o|0)|~r))+t[13]+1309151649|0,r+=(i^((n=(n<<21|n>>>11)+i|0)|~o))+t[4]-145523070|0,o+=(n^((r=(r<<6|r>>>26)+n|0)|~i))+t[11]-1120210379|0,i+=(r^((o=(o<<10|o>>>22)+r|0)|~n))+t[2]+718787259|0,n=((n+=(o^((i=(i<<15|i>>>17)+o|0)|~r))+t[9]-343485551|0)<<21|n>>>11)+i|0,e[0]=r+e[0]|0,e[1]=n+e[1]|0,e[2]=i+e[2]|0,e[3]=o+e[3]|0}function n(e){var t,r=[];for(t=0;t<64;t+=4)r[t>>2]=e.charCodeAt(t)+(e.charCodeAt(t+1)<<8)+(e.charCodeAt(t+2)<<16)+(e.charCodeAt(t+3)<<24);return r}function i(e){var t,r=[];for(t=0;t<64;t+=4)r[t>>2]=e[t]+(e[t+1]<<8)+(e[t+2]<<16)+(e[t+3]<<24);return r}function o(e){var t,i,o,a,u,s,l=e.length,d=[1732584193,-271733879,-1732584194,271733878];for(t=64;t<=l;t+=64)r(d,n(e.substring(t-64,t)));for(e=e.substring(t-64),i=e.length,o=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],t=0;t<i;t+=1)o[t>>2]|=e.charCodeAt(t)<<(t%4<<3);if(o[t>>2]|=128<<(t%4<<3),t>55)for(r(d,o),t=0;t<16;t+=1)o[t]=0;return a=(a=8*l).toString(16).match(/(.*?)(.{0,8})$/),u=parseInt(a[2],16),s=parseInt(a[1],16)||0,o[14]=u,o[15]=s,r(d,o),d}function a(e){var r,n="";for(r=0;r<4;r+=1)n+=t[e>>8*r+4&15]+t[e>>8*r&15];return n}function u(e){var t;for(t=0;t<e.length;t+=1)e[t]=a(e[t]);return e.join("")}function s(e){return/[\u0080-\uFFFF]/.test(e)&&(e=unescape(encodeURIComponent(e))),e}function l(e){var t,r=[],n=e.length;for(t=0;t<n-1;t+=2)r.push(parseInt(e.substr(t,2),16));return String.fromCharCode.apply(String,r)}function d(){this.reset()}return u(o("hello")),"undefined"==typeof ArrayBuffer||ArrayBuffer.prototype.slice||function(){function t(e,t){return(e=0|e||0)<0?Math.max(e+t,0):Math.min(e,t)}ArrayBuffer.prototype.slice=function(r,n){var i,o,a,u,s=this.byteLength,l=t(r,s),d=s;return n!==e&&(d=t(n,s)),l>d?new ArrayBuffer(0):(i=d-l,o=new ArrayBuffer(i),a=new Uint8Array(o),u=new Uint8Array(this,l,i),a.set(u),o)}}(),d.prototype.append=function(e){return this.appendBinary(s(e)),this},d.prototype.appendBinary=function(e){this._buff+=e,this._length+=e.length;var t,i=this._buff.length;for(t=64;t<=i;t+=64)r(this._hash,n(this._buff.substring(t-64,t)));return this._buff=this._buff.substring(t-64),this},d.prototype.end=function(e){var t,r,n=this._buff,i=n.length,o=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];for(t=0;t<i;t+=1)o[t>>2]|=n.charCodeAt(t)<<(t%4<<3);return this._finish(o,i),r=u(this._hash),e&&(r=l(r)),this.reset(),r},d.prototype.reset=function(){return this._buff="",this._length=0,this._hash=[1732584193,-271733879,-1732584194,271733878],this},d.prototype.getState=function(){return{buff:this._buff,length:this._length,hash:this._hash}},d.prototype.setState=function(e){return this._buff=e.buff,this._length=e.length,this._hash=e.hash,this},d.prototype.destroy=function(){delete this._hash,delete this._buff,delete this._length},d.prototype._finish=function(e,t){var n,i,o,a=t;if(e[a>>2]|=128<<(a%4<<3),a>55)for(r(this._hash,e),a=0;a<16;a+=1)e[a]=0;n=(n=8*this._length).toString(16).match(/(.*?)(.{0,8})$/),i=parseInt(n[2],16),o=parseInt(n[1],16)||0,e[14]=i,e[15]=o,r(this._hash,e)},d.hash=function(e,t){return d.hashBinary(s(e),t)},d.hashBinary=function(e,t){var r=u(o(e));return t?l(r):r},d.ArrayBuffer=function(){this.reset()},d.ArrayBuffer.prototype.append=function(e){var t,n,o,a,u,s=(n=this._buff.buffer,o=e,a=!0,(u=new Uint8Array(n.byteLength+o.byteLength)).set(new Uint8Array(n)),u.set(new Uint8Array(o),n.byteLength),a?u:u.buffer),l=s.length;for(this._length+=e.byteLength,t=64;t<=l;t+=64)r(this._hash,i(s.subarray(t-64,t)));return this._buff=t-64<l?new Uint8Array(s.buffer.slice(t-64)):new Uint8Array(0),this},d.ArrayBuffer.prototype.end=function(e){var t,r,n=this._buff,i=n.length,o=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];for(t=0;t<i;t+=1)o[t>>2]|=n[t]<<(t%4<<3);return this._finish(o,i),r=u(this._hash),e&&(r=l(r)),this.reset(),r},d.ArrayBuffer.prototype.reset=function(){return this._buff=new Uint8Array(0),this._length=0,this._hash=[1732584193,-271733879,-1732584194,271733878],this},d.ArrayBuffer.prototype.getState=function(){var e,t=d.prototype.getState.call(this);return t.buff=(e=t.buff,String.fromCharCode.apply(null,new Uint8Array(e))),t},d.ArrayBuffer.prototype.setState=function(e){return e.buff=function(e,t){var r,n=e.length,i=new ArrayBuffer(n),o=new Uint8Array(i);for(r=0;r<n;r+=1)o[r]=e.charCodeAt(r);return t?o:i}(e.buff,!0),d.prototype.setState.call(this,e)},d.ArrayBuffer.prototype.destroy=d.prototype.destroy,d.ArrayBuffer.prototype._finish=d.prototype._finish,d.ArrayBuffer.hash=function(e,t){var n=u(function(e){var t,n,o,a,u,s,l=e.length,d=[1732584193,-271733879,-1732584194,271733878];for(t=64;t<=l;t+=64)r(d,i(e.subarray(t-64,t)));for(e=t-64<l?e.subarray(t-64):new Uint8Array(0),n=e.length,o=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],t=0;t<n;t+=1)o[t>>2]|=e[t]<<(t%4<<3);if(o[t>>2]|=128<<(t%4<<3),t>55)for(r(d,o),t=0;t<16;t+=1)o[t]=0;return a=(a=8*l).toString(16).match(/(.*?)(.{0,8})$/),u=parseInt(a[2],16),s=parseInt(a[1],16)||0,o[14]=u,o[15]=s,r(d,o),d}(new Uint8Array(e)));return t?l(n):n},d}()}(t={exports:{}},t.exports),t.exports),n=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},i=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,r,n){return r&&e(t.prototype,r),n&&e(t,n),t}}(),o=File.prototype.slice||File.prototype.mozSlice||File.prototype.webkitSlice,a=function(){function e(t){n(this,e),this.file=t,this.chunkSize=2097152,this.chunkCount=Math.ceil(this.file.size/this.chunkSize),this.chunkIndex=0}return i(e,null,[{key:"create",value:function(t,r){var n=new e(t);n.create(r)}}]),i(e,[{key:"create",value:function(e){var t=this;this.callback=e,this.md5Buffer=new r.ArrayBuffer,this.fileReader=new FileReader,this.fileReader.addEventListener("load",function(e){return t.fileReaderDidLoad(e)}),this.fileReader.addEventListener("error",function(e){return t.fileReaderDidError(e)}),this.readNextChunk()}},{key:"fileReaderDidLoad",value:function(e){if(this.md5Buffer.append(e.target.result),!this.readNextChunk()){var t=this.md5Buffer.end(!0),r=btoa(t);this.callback(null,r)}}},{key:"fileReaderDidError",value:function(e){this.callback("Error reading "+this.file.name)}},{key:"readNextChunk",value:function(){if(this.chunkIndex<this.chunkCount||0==this.chunkIndex&&0==this.chunkCount){var e=this.chunkIndex*this.chunkSize,t=Math.min(e+this.chunkSize,this.file.size),r=o.call(this.file,e,t);return this.fileReader.readAsArrayBuffer(r),this.chunkIndex++,!0}return!1}}]),e}();function u(e,t){return"string"==typeof e&&(t=e,e=document),e.querySelector(t)}function s(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=e.disabled,i=r.bubbles,o=r.cancelable,a=r.detail,u=document.createEvent("Event");u.initEvent(t,i||!0,o||!0),u.detail=a||{};try{e.disabled=!1,e.dispatchEvent(u)}finally{e.disabled=n}return u}function l(e){return Array.isArray(e)?e:Array.from?Array.from(e):[].slice.call(e)}var d=function(){function e(t,r,i){var o=this;n(this,e),this.file=t,this.attributes={filename:t.name,content_type:t.type,byte_size:t.size,checksum:r},this.xhr=new XMLHttpRequest,this.xhr.open("POST",i,!0),this.xhr.responseType="json",this.xhr.setRequestHeader("Content-Type","application/json"),this.xhr.setRequestHeader("Accept","application/json"),this.xhr.setRequestHeader("X-Requested-With","XMLHttpRequest"),this.xhr.setRequestHeader("X-CSRF-Token",function(e){var t=u(document.head,'meta[name="'+e+'"]');if(t)return t.getAttribute("content")}("csrf-token")),this.xhr.addEventListener("load",function(e){return o.requestDidLoad(e)}),this.xhr.addEventListener("error",function(e){return o.requestDidError(e)})}return i(e,[{key:"create",value:function(e){this.callback=e,this.xhr.send(JSON.stringify({blob:this.attributes}))}},{key:"requestDidLoad",value:function(e){if(this.status>=200&&this.status<300){var t=this.response,r=t.direct_upload;delete t.direct_upload,this.attributes=t,this.directUploadData=r,this.callback(null,this.toJSON())}else this.requestDidError(e)}},{key:"requestDidError",value:function(e){this.callback('Error creating Blob for "'+this.file.name+'". Status: '+this.status)}},{key:"toJSON",value:function(){var e={};for(var t in this.attributes)e[t]=this.attributes[t];return e}},{key:"status",get:function(){return this.xhr.status}},{key:"response",get:function(){var e=this.xhr,t=e.responseType,r=e.response;return"json"==t?r:JSON.parse(r)}}]),e}(),c=function(){function e(t){var r=this;n(this,e),this.blob=t,this.file=t.file;var i=t.directUploadData,o=i.url,a=i.headers;for(var u in this.xhr=new XMLHttpRequest,this.xhr.open("PUT",o,!0),this.xhr.responseType="text",a)this.xhr.setRequestHeader(u,a[u]);this.xhr.addEventListener("load",function(e){return r.requestDidLoad(e)}),this.xhr.addEventListener("error",function(e){return r.requestDidError(e)})}return i(e,[{key:"create",value:function(e){this.callback=e,this.xhr.send(this.file.slice())}},{key:"requestDidLoad",value:function(e){var t=this.xhr,r=t.status,n=t.response;r>=200&&r<300?this.callback(null,n):this.requestDidError(e)}},{key:"requestDidError",value:function(e){this.callback('Error storing "'+this.file.name+'". Status: '+this.xhr.status)}}]),e}(),f=0,h=function(){function e(t,r,i){n(this,e),this.id=++f,this.file=t,this.url=r,this.delegate=i}return i(e,[{key:"create",value:function(e){var t=this;a.create(this.file,function(r,n){if(r)e(r);else{var i=new d(t.file,n,t.url);p(t.delegate,"directUploadWillCreateBlobWithXHR",i.xhr),i.create(function(r){if(r)e(r);else{var n=new c(i);p(t.delegate,"directUploadWillStoreFileWithXHR",n.xhr),n.create(function(t){t?e(t):e(null,i.toJSON())})}})}})}}]),e}();function p(e,t){if(e&&"function"==typeof e[t]){for(var r=arguments.length,n=Array(r>2?r-2:0),i=2;i<r;i++)n[i-2]=arguments[i];return e[t].apply(e,n)}}var v=function(){function e(t,r){n(this,e),this.input=t,this.file=r,this.directUpload=new h(this.file,this.url,this),this.dispatch("initialize")}return i(e,[{key:"start",value:function(e){var t=this,r=document.createElement("input");r.type="hidden",r.name=this.input.name,this.input.insertAdjacentElement("beforebegin",r),this.dispatch("start"),this.directUpload.create(function(n,i){n?(r.parentNode.removeChild(r),t.dispatchError(n)):r.value=i.signed_id,t.dispatch("end"),e(n)})}},{key:"uploadRequestDidProgress",value:function(e){var t=e.loaded/e.total*100;t&&this.dispatch("progress",{progress:t})}},{key:"dispatch",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return t.file=this.file,t.id=this.directUpload.id,s(this.input,"direct-upload:"+e,{detail:t})}},{key:"dispatchError",value:function(e){var t=this.dispatch("error",{error:e});t.defaultPrevented||alert(e)}},{key:"directUploadWillCreateBlobWithXHR",value:function(e){this.dispatch("before-blob-request",{xhr:e})}},{key:"directUploadWillStoreFileWithXHR",value:function(e){var t=this;this.dispatch("before-storage-request",{xhr:e}),e.upload.addEventListener("progress",function(e){return t.uploadRequestDidProgress(e)})}},{key:"url",get:function(){return this.input.getAttribute("data-direct-upload-url")}}]),e}(),y="input[type=file][data-direct-upload-url]:not([disabled])",b=function(){function e(t){var r,i;n(this,e),this.form=t,this.inputs=(r=t,i=y,"string"==typeof r&&(i=r,r=document),l(r.querySelectorAll(i))).filter(function(e){return e.files.length})}return i(e,[{key:"start",value:function(e){var t=this,r=this.createDirectUploadControllers();this.dispatch("start"),function n(){var i=r.shift();i?i.start(function(r){r?(e(r),t.dispatch("end")):n()}):(e(),t.dispatch("end"))}()}},{key:"createDirectUploadControllers",value:function(){var e=[];return this.inputs.forEach(function(t){l(t.files).forEach(function(r){var n=new v(t,r);e.push(n)})}),e}},{key:"dispatch",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return s(this.form,"direct-uploads:"+e,{detail:t})}}]),e}(),m="data-direct-uploads-processing",g=new WeakMap,A=!1;function E(){A||(A=!0,document.addEventListener("click",_,!0),document.addEventListener("submit",k),document.addEventListener("ajax:before",w))}function _(e){var t=e.target;"INPUT"!=t.tagName&&"BUTTON"!=t.tagName||"submit"!=t.type||!t.form||g.set(t.form,t)}function k(e){U(e)}function w(e){"FORM"==e.target.tagName&&U(e)}function U(e){var t=e.target;if(t.hasAttribute(m))e.preventDefault();else{var r=new b(t),n=r.inputs;n.length&&(e.preventDefault(),t.setAttribute(m,""),n.forEach(C),r.start(function(e){t.removeAttribute(m),e?n.forEach(S):function(e){var t=g.get(e)||u(e,"input[type=submit], button[type=submit]");if(t){var r=t,n=r.disabled;t.disabled=!1,t.focus(),t.click(),t.disabled=n}else(t=document.createElement("input")).type="submit",t.style.display="none",e.appendChild(t),t.click(),e.removeChild(t);g.delete(e)}(t)}))}}function C(e){e.disabled=!0}function S(e){e.disabled=!1}setTimeout(function(){window.ActiveStorage&&E()},1),e.start=E,e.DirectUpload=h,Object.defineProperty(e,"__esModule",{value:!0})}(t)}])});
1
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.ActiveStorageDragAndDrop=t():e.ActiveStorageDragAndDrop=t()}(window,function(){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)r.d(n,i,function(t){return e[t]}.bind(null,i));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=3)}([function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.dispatchEvent=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=r.bubbles,i=void 0===n||n,a=r.cancelable,o=void 0===a||a,u=r.detail,s=void 0===u?{}:u,l=new CustomEvent(t,{bubbles:i,cancelable:o,detail:s});return e.dispatchEvent(l),l},t.fileSizeSI=function(e){var t=Math.log(e)/Math.log(1e3)|0;return(e/Math.pow(1e3,t)+.5|0)+(t?"kMGTPEZY"[--t]+"B":" Bytes")}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.errorUI=function(e){var t=e.detail.id,r=e.detail,n=r.error,i=r.iconContainer,a=r.file;if(e.defaultPrevented)return;t||o(i,t="error",a,!1);var u=document.querySelector('[data-direct-upload-id="'+t+'"] .direct-upload');if(!u)return;u.setAttribute("title",n),u.classList.add("direct-upload--error")},t.endUI=function(e){var t=e.detail.id;if(!t||e.defaultPrevented)return;var r=document.querySelector('[data-direct-upload-id="'+t+'"] .direct-upload');if(!r)return;var n=r.classList;n.remove("direct-upload--pending"),n.add("direct-upload--complete")},t.initializeUI=function(e){if(e.defaultPrevented)return;var t=e.detail,r=t.id,n=t.file;o(t.iconContainer,r,n,!1)},t.progressUI=function(e){if(e.defaultPrevented)return;var t=e.detail,r=t.id,n=t.progress,i=document.querySelector('[data-direct-upload-id="'+r+'"] .direct-upload__progress');i&&(i.style.width=n+"%")},t.placeholderUI=function(e){if(e.defaultPrevented)return;var t=e.detail,r=t.id,n=t.file;o(t.iconContainer,r,n,!0)},t.cancelUI=function(e){if(e.defaultPrevented)return;var t=e.detail.id;document.querySelectorAll('[data-direct-upload-id="'+t+'"]').forEach(function(e){e.remove()})},t.paintDefaultUploadIcon=function(e,t,r,i){var a=i?"complete":"pending",o=i?100:0;e.insertAdjacentHTML("beforeend",'\n <div data-direct-upload-id="'+t+'">\n <div class="direct-upload direct-upload--'+a+'">\n <div class="direct-upload__progress" style="width: '+o+'%"></div>\n <span class="direct-upload__filename">'+r.name+'</span>\n <span class="direct-upload__filesize">'+(0,n.fileSizeSI)(r.size)+"</span>\n </div>\n <a href='remove' class='direct-upload__remove'>X</a>\n </div>\n ")};var n=r(0),i=r(2),a="\nWARNING! Setting Active Storage drag and drop icon painter globally is deprecated. Pass icon painter as an option to the start function instead e.g:\n ActiveStorageDragAndDrop.start({\n iconPainter: paintUploadIcon\n });\n";function o(e,t,r,n){window.ActiveStorageDragAndDrop&&window.ActiveStorageDragAndDrop.paintUploadIcon?(console.warn(a),window.ActiveStorageDragAndDrop.paintUploadIcon(e,t,r,n)):(0,i.paintUploadIcon)(e,t,r,n)}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.formSubmitted=t.paintUploadIcon=void 0,t.handleProcessUploadQueueEvent=s,t.processUploadQueue=l,t.addAttachedFileIcons=d,t.preventDragover=c,t.handleSubmit=f,t.removeFileFromQueue=h,t.queueUploadsForFileInput=p,t.queueUploadsForDroppedFiles=v,t.start=function(e){e&&e.iconPainter&&(t.paintUploadIcon=e.iconPainter);if(o)return;o=!0,document.addEventListener("change",p),document.addEventListener("click",h),document.addEventListener("drop",v,!0),document.addEventListener("submit",f),document.addEventListener("dnd-uploads:process-upload-queue",s),document.addEventListener("ajax:before",f),document.addEventListener("dragover",c),d()},t.findOrInitializeFormController=y;var n=r(4),i=r(1),a=r(0),o=!1,u=(t.paintUploadIcon=i.paintDefaultUploadIcon,t.formSubmitted=!1,new Map);function s(e){console.warn("WARNING! The processs-upload-queue event is deprecated. Call window.ActiveStorageDragAndDrop.processUploadQueue(form, callback) instead.");var t=e.detail.callback;l(e.target,t)}function l(e,t){y(e).start(function(e){t(e)})}function d(){document.querySelectorAll("input[type='hidden'][data-direct-upload-id][data-uploaded-file]").forEach(function(e){var t=e.dataset,r={id:t.directUploadId,file:JSON.parse(t.uploadedFile),iconContainer:document.getElementById(t.iconContainerId)},n=(0,a.dispatchEvent)(e,"dnd-upload:placeholder",{detail:r});(0,i.placeholderUI)(n)})}function c(e){var t=e.target;t instanceof Element&&t.closest(".asdndzone")&&e.preventDefault()}function f(e){if(!this.formSubmitted){this.formSubmitted=!0;var t=y(e.target);0!==t.uploadControllers.length&&(e.preventDefault(),t.start(function(e){e||t.form.submit()}))}}function h(e){var t=e.target;if(t instanceof HTMLElement&&t.classList.contains("direct-upload__remove")){var r=t.closest("[data-direct-upload-id]");if(!(r instanceof HTMLElement))throw new Error("Cannot remove queued upload because there is no enclosing element with a data-direct-upload-id attribute.");e.preventDefault(),y(t.closest("form")).unqueueUpload(parseInt(r.dataset.directUploadId))}}function p(e){var t=e.target;if(t instanceof HTMLInputElement&&"file"===t.type&&"true"===t.dataset.dnd){var r=y(t.form);Array.from(t.files).forEach(function(e){return r.queueUpload(t,e)}),t.value=""}}function v(e){var t=e.target,r=e.dataTransfer;if(t instanceof Element&&r instanceof DataTransfer){var n=t.closest(".asdndzone");if(n instanceof HTMLElement){var i=document.getElementById(n.dataset.dndInputId);if(!(i instanceof HTMLInputElement))throw new Error("There is no file input element with the dnd-input-id specified on the drop zone.");e.preventDefault();var a=y(i.form);Array.from(r.files).forEach(function(e){return a.queueUpload(i,e)})}}}function y(e){var t=u.get(e);if(t)return t;if(!(e instanceof HTMLFormElement))throw new Error("Can only initialize form controller with a form element.");return t=new n.DragAndDropFormController(e),u.set(e,t),t}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(2),i=r(1);t.default={start:n.start,paintUploadIcon:i.paintDefaultUploadIcon,processUploadQueue:n.processUploadQueue},setTimeout(function(){(0,n.start)({})},1)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DragAndDropFormController=void 0;var n=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,r,n){return r&&e(t.prototype,r),n&&e(t,n),t}}(),i=r(0),a=r(1),o=r(5);t.DragAndDropFormController=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.form=t,this.uploadControllers=[]}return n(e,[{key:"start",value:function(e){var t=this;this.dispatch("start"),function r(){var n=t.uploadControllers.shift();if(n)n.start(function(i){i?(t.dispatchError(i,n),e(i)):r()});else{e();var i=t.dispatch("end");(0,a.endUI)(i)}}()}},{key:"dispatch",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return(0,i.dispatchEvent)(this.form,"dnd-uploads:"+e,{detail:t})}},{key:"dispatchError",value:function(e,t){var r=t.file,n=t.iconContainer,o=(0,i.dispatchEvent)(this.form,"dnd-upload:error",{detail:{error:e,file:r,iconContainer:n}});(0,a.errorUI)(o)}},{key:"queueUpload",value:function(e,t){e.getAttribute("multiple")||this.unqueueUploadsPerInput(e);try{this.uploadControllers.push(new o.DragAndDropUploadController(e,t))}catch(r){!function(e,t){var r=(0,i.dispatchEvent)(e,"dnd-upload:error",{detail:t});(0,a.errorUI)(r)}(e,{id:null,file:t,error:r,iconContainer:document.getElementById(e.dataset.iconContainerId)})}}},{key:"unqueueUploadsPerInput",value:function(e){var t=e.closest("label.asdndzone");t&&(t.querySelectorAll("[data-direct-upload-id]").forEach(function(e){e.remove()}),this.uploadControllers.splice(0,this.uploadControllers.length))}},{key:"unqueueUpload",value:function(e){var t=this.uploadControllers.findIndex(function(t){return t.upload.id===e}),r=this.uploadControllers[t];this.uploadControllers.splice(t,1);var n=r&&r.dispatch instanceof Function?r.dispatch("cancel"):this.dispatch("cancel",{id:"error"});(0,a.cancelUI)(n)}}]),e}()},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DragAndDropUploadController=void 0;var n=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,r,n){return r&&e(t.prototype,r),n&&e(t,n),t}}(),i=r(0),a=r(1),o=r(6);function u(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}t.DragAndDropUploadController=function(){function e(t,r){u(this,e),function(e,t){var r=parseInt(e.getAttribute("size_limit")),n=e.getAttribute("accept");if(n&&!n.split(", ").includes(t.type))throw new s("Invalid filetype");if(r&&t.size>r)throw new s("File too large. Can be no larger than "+(0,i.fileSizeSI)(r))}(t,r);var n=t.closest("form"),l=document.getElementById(t.dataset.iconContainerId);if(n instanceof HTMLFormElement&&l){this.input=t,this.form=n,this.url=this.input.dataset.directUploadUrl,this.iconContainer=l,this.file=r,this.upload=new o.DirectUpload(this.file,this.url,this);var d=this.dispatch("initialize");(0,a.initializeUI)(d)}}return n(e,[{key:"start",value:function(e){var t=this;this.dispatch("start"),this.upload.create(function(r,n){if(r)t.dispatchError(r),e(r);else{var i=document.createElement("input");i.setAttribute("type","hidden"),i.setAttribute("value",n.signed_id),i.setAttribute("name",t.input.getAttribute("name")||""),i.setAttribute("data-direct-upload-id",t.upload.id),t.form.appendChild(i);var o=t.dispatch("end");(0,a.endUI)(o),e(r)}})}},{key:"dispatch",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return t.file=this.file,t.id=this.upload.id,t.iconContainer=this.iconContainer,(0,i.dispatchEvent)(this.input,"dnd-upload:"+e,{detail:t})}},{key:"dispatchError",value:function(e){var t=this.dispatch("error",{error:e});(0,a.errorUI)(t)}},{key:"directUploadWillCreateBlobWithXHR",value:function(e){this.dispatch("before-blob-request",{xhr:e})}},{key:"directUploadWillStoreFileWithXHR",value:function(e){var t=this;this.dispatch("before-storage-request",{xhr:e}),e.upload.addEventListener("progress",function(e){return t.uploadRequestDidProgress(e)})}},{key:"uploadRequestDidProgress",value:function(e){var t=e.loaded/e.total*100;if(t){var r=this.dispatch("progress",{progress:t});(0,a.progressUI)(r)}}}]),e}();var s=function(e){function t(){var e;u(this,t);for(var r=arguments.length,n=Array(r),i=0;i<r;i++)n[i]=arguments[i];var a=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}(this,(e=t.__proto__||Object.getPrototypeOf(t)).call.apply(e,[this].concat(n)));return Error.captureStackTrace(a,t),a}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,Error),t}()},function(e,t,r){!function(e){"use strict";var t,r=(function(e,t){e.exports=function(e){var t=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"];function r(e,t){var r=e[0],n=e[1],i=e[2],a=e[3];r+=(n&i|~n&a)+t[0]-680876936|0,a+=((r=(r<<7|r>>>25)+n|0)&n|~r&i)+t[1]-389564586|0,i+=((a=(a<<12|a>>>20)+r|0)&r|~a&n)+t[2]+606105819|0,n+=((i=(i<<17|i>>>15)+a|0)&a|~i&r)+t[3]-1044525330|0,r+=((n=(n<<22|n>>>10)+i|0)&i|~n&a)+t[4]-176418897|0,a+=((r=(r<<7|r>>>25)+n|0)&n|~r&i)+t[5]+1200080426|0,i+=((a=(a<<12|a>>>20)+r|0)&r|~a&n)+t[6]-1473231341|0,n+=((i=(i<<17|i>>>15)+a|0)&a|~i&r)+t[7]-45705983|0,r+=((n=(n<<22|n>>>10)+i|0)&i|~n&a)+t[8]+1770035416|0,a+=((r=(r<<7|r>>>25)+n|0)&n|~r&i)+t[9]-1958414417|0,i+=((a=(a<<12|a>>>20)+r|0)&r|~a&n)+t[10]-42063|0,n+=((i=(i<<17|i>>>15)+a|0)&a|~i&r)+t[11]-1990404162|0,r+=((n=(n<<22|n>>>10)+i|0)&i|~n&a)+t[12]+1804603682|0,a+=((r=(r<<7|r>>>25)+n|0)&n|~r&i)+t[13]-40341101|0,i+=((a=(a<<12|a>>>20)+r|0)&r|~a&n)+t[14]-1502002290|0,n+=((i=(i<<17|i>>>15)+a|0)&a|~i&r)+t[15]+1236535329|0,r+=((n=(n<<22|n>>>10)+i|0)&a|i&~a)+t[1]-165796510|0,a+=((r=(r<<5|r>>>27)+n|0)&i|n&~i)+t[6]-1069501632|0,i+=((a=(a<<9|a>>>23)+r|0)&n|r&~n)+t[11]+643717713|0,n+=((i=(i<<14|i>>>18)+a|0)&r|a&~r)+t[0]-373897302|0,r+=((n=(n<<20|n>>>12)+i|0)&a|i&~a)+t[5]-701558691|0,a+=((r=(r<<5|r>>>27)+n|0)&i|n&~i)+t[10]+38016083|0,i+=((a=(a<<9|a>>>23)+r|0)&n|r&~n)+t[15]-660478335|0,n+=((i=(i<<14|i>>>18)+a|0)&r|a&~r)+t[4]-405537848|0,r+=((n=(n<<20|n>>>12)+i|0)&a|i&~a)+t[9]+568446438|0,a+=((r=(r<<5|r>>>27)+n|0)&i|n&~i)+t[14]-1019803690|0,i+=((a=(a<<9|a>>>23)+r|0)&n|r&~n)+t[3]-187363961|0,n+=((i=(i<<14|i>>>18)+a|0)&r|a&~r)+t[8]+1163531501|0,r+=((n=(n<<20|n>>>12)+i|0)&a|i&~a)+t[13]-1444681467|0,a+=((r=(r<<5|r>>>27)+n|0)&i|n&~i)+t[2]-51403784|0,i+=((a=(a<<9|a>>>23)+r|0)&n|r&~n)+t[7]+1735328473|0,n+=((i=(i<<14|i>>>18)+a|0)&r|a&~r)+t[12]-1926607734|0,r+=((n=(n<<20|n>>>12)+i|0)^i^a)+t[5]-378558|0,a+=((r=(r<<4|r>>>28)+n|0)^n^i)+t[8]-2022574463|0,i+=((a=(a<<11|a>>>21)+r|0)^r^n)+t[11]+1839030562|0,n+=((i=(i<<16|i>>>16)+a|0)^a^r)+t[14]-35309556|0,r+=((n=(n<<23|n>>>9)+i|0)^i^a)+t[1]-1530992060|0,a+=((r=(r<<4|r>>>28)+n|0)^n^i)+t[4]+1272893353|0,i+=((a=(a<<11|a>>>21)+r|0)^r^n)+t[7]-155497632|0,n+=((i=(i<<16|i>>>16)+a|0)^a^r)+t[10]-1094730640|0,r+=((n=(n<<23|n>>>9)+i|0)^i^a)+t[13]+681279174|0,a+=((r=(r<<4|r>>>28)+n|0)^n^i)+t[0]-358537222|0,i+=((a=(a<<11|a>>>21)+r|0)^r^n)+t[3]-722521979|0,n+=((i=(i<<16|i>>>16)+a|0)^a^r)+t[6]+76029189|0,r+=((n=(n<<23|n>>>9)+i|0)^i^a)+t[9]-640364487|0,a+=((r=(r<<4|r>>>28)+n|0)^n^i)+t[12]-421815835|0,i+=((a=(a<<11|a>>>21)+r|0)^r^n)+t[15]+530742520|0,n+=((i=(i<<16|i>>>16)+a|0)^a^r)+t[2]-995338651|0,r+=(i^((n=(n<<23|n>>>9)+i|0)|~a))+t[0]-198630844|0,a+=(n^((r=(r<<6|r>>>26)+n|0)|~i))+t[7]+1126891415|0,i+=(r^((a=(a<<10|a>>>22)+r|0)|~n))+t[14]-1416354905|0,n+=(a^((i=(i<<15|i>>>17)+a|0)|~r))+t[5]-57434055|0,r+=(i^((n=(n<<21|n>>>11)+i|0)|~a))+t[12]+1700485571|0,a+=(n^((r=(r<<6|r>>>26)+n|0)|~i))+t[3]-1894986606|0,i+=(r^((a=(a<<10|a>>>22)+r|0)|~n))+t[10]-1051523|0,n+=(a^((i=(i<<15|i>>>17)+a|0)|~r))+t[1]-2054922799|0,r+=(i^((n=(n<<21|n>>>11)+i|0)|~a))+t[8]+1873313359|0,a+=(n^((r=(r<<6|r>>>26)+n|0)|~i))+t[15]-30611744|0,i+=(r^((a=(a<<10|a>>>22)+r|0)|~n))+t[6]-1560198380|0,n+=(a^((i=(i<<15|i>>>17)+a|0)|~r))+t[13]+1309151649|0,r+=(i^((n=(n<<21|n>>>11)+i|0)|~a))+t[4]-145523070|0,a+=(n^((r=(r<<6|r>>>26)+n|0)|~i))+t[11]-1120210379|0,i+=(r^((a=(a<<10|a>>>22)+r|0)|~n))+t[2]+718787259|0,n=((n+=(a^((i=(i<<15|i>>>17)+a|0)|~r))+t[9]-343485551|0)<<21|n>>>11)+i|0,e[0]=r+e[0]|0,e[1]=n+e[1]|0,e[2]=i+e[2]|0,e[3]=a+e[3]|0}function n(e){var t,r=[];for(t=0;t<64;t+=4)r[t>>2]=e.charCodeAt(t)+(e.charCodeAt(t+1)<<8)+(e.charCodeAt(t+2)<<16)+(e.charCodeAt(t+3)<<24);return r}function i(e){var t,r=[];for(t=0;t<64;t+=4)r[t>>2]=e[t]+(e[t+1]<<8)+(e[t+2]<<16)+(e[t+3]<<24);return r}function a(e){var t,i,a,o,u,s,l=e.length,d=[1732584193,-271733879,-1732584194,271733878];for(t=64;t<=l;t+=64)r(d,n(e.substring(t-64,t)));for(e=e.substring(t-64),i=e.length,a=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],t=0;t<i;t+=1)a[t>>2]|=e.charCodeAt(t)<<(t%4<<3);if(a[t>>2]|=128<<(t%4<<3),t>55)for(r(d,a),t=0;t<16;t+=1)a[t]=0;return o=(o=8*l).toString(16).match(/(.*?)(.{0,8})$/),u=parseInt(o[2],16),s=parseInt(o[1],16)||0,a[14]=u,a[15]=s,r(d,a),d}function o(e){var r,n="";for(r=0;r<4;r+=1)n+=t[e>>8*r+4&15]+t[e>>8*r&15];return n}function u(e){var t;for(t=0;t<e.length;t+=1)e[t]=o(e[t]);return e.join("")}function s(e){return/[\u0080-\uFFFF]/.test(e)&&(e=unescape(encodeURIComponent(e))),e}function l(e){var t,r=[],n=e.length;for(t=0;t<n-1;t+=2)r.push(parseInt(e.substr(t,2),16));return String.fromCharCode.apply(String,r)}function d(){this.reset()}return u(a("hello")),"undefined"==typeof ArrayBuffer||ArrayBuffer.prototype.slice||function(){function t(e,t){return(e=0|e||0)<0?Math.max(e+t,0):Math.min(e,t)}ArrayBuffer.prototype.slice=function(r,n){var i,a,o,u,s=this.byteLength,l=t(r,s),d=s;return n!==e&&(d=t(n,s)),l>d?new ArrayBuffer(0):(i=d-l,a=new ArrayBuffer(i),o=new Uint8Array(a),u=new Uint8Array(this,l,i),o.set(u),a)}}(),d.prototype.append=function(e){return this.appendBinary(s(e)),this},d.prototype.appendBinary=function(e){this._buff+=e,this._length+=e.length;var t,i=this._buff.length;for(t=64;t<=i;t+=64)r(this._hash,n(this._buff.substring(t-64,t)));return this._buff=this._buff.substring(t-64),this},d.prototype.end=function(e){var t,r,n=this._buff,i=n.length,a=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];for(t=0;t<i;t+=1)a[t>>2]|=n.charCodeAt(t)<<(t%4<<3);return this._finish(a,i),r=u(this._hash),e&&(r=l(r)),this.reset(),r},d.prototype.reset=function(){return this._buff="",this._length=0,this._hash=[1732584193,-271733879,-1732584194,271733878],this},d.prototype.getState=function(){return{buff:this._buff,length:this._length,hash:this._hash}},d.prototype.setState=function(e){return this._buff=e.buff,this._length=e.length,this._hash=e.hash,this},d.prototype.destroy=function(){delete this._hash,delete this._buff,delete this._length},d.prototype._finish=function(e,t){var n,i,a,o=t;if(e[o>>2]|=128<<(o%4<<3),o>55)for(r(this._hash,e),o=0;o<16;o+=1)e[o]=0;n=(n=8*this._length).toString(16).match(/(.*?)(.{0,8})$/),i=parseInt(n[2],16),a=parseInt(n[1],16)||0,e[14]=i,e[15]=a,r(this._hash,e)},d.hash=function(e,t){return d.hashBinary(s(e),t)},d.hashBinary=function(e,t){var r=u(a(e));return t?l(r):r},d.ArrayBuffer=function(){this.reset()},d.ArrayBuffer.prototype.append=function(e){var t,n,a,o,u,s=(n=this._buff.buffer,a=e,o=!0,(u=new Uint8Array(n.byteLength+a.byteLength)).set(new Uint8Array(n)),u.set(new Uint8Array(a),n.byteLength),o?u:u.buffer),l=s.length;for(this._length+=e.byteLength,t=64;t<=l;t+=64)r(this._hash,i(s.subarray(t-64,t)));return this._buff=t-64<l?new Uint8Array(s.buffer.slice(t-64)):new Uint8Array(0),this},d.ArrayBuffer.prototype.end=function(e){var t,r,n=this._buff,i=n.length,a=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];for(t=0;t<i;t+=1)a[t>>2]|=n[t]<<(t%4<<3);return this._finish(a,i),r=u(this._hash),e&&(r=l(r)),this.reset(),r},d.ArrayBuffer.prototype.reset=function(){return this._buff=new Uint8Array(0),this._length=0,this._hash=[1732584193,-271733879,-1732584194,271733878],this},d.ArrayBuffer.prototype.getState=function(){var e,t=d.prototype.getState.call(this);return t.buff=(e=t.buff,String.fromCharCode.apply(null,new Uint8Array(e))),t},d.ArrayBuffer.prototype.setState=function(e){return e.buff=function(e,t){var r,n=e.length,i=new ArrayBuffer(n),a=new Uint8Array(i);for(r=0;r<n;r+=1)a[r]=e.charCodeAt(r);return t?a:i}(e.buff,!0),d.prototype.setState.call(this,e)},d.ArrayBuffer.prototype.destroy=d.prototype.destroy,d.ArrayBuffer.prototype._finish=d.prototype._finish,d.ArrayBuffer.hash=function(e,t){var n=u(function(e){var t,n,a,o,u,s,l=e.length,d=[1732584193,-271733879,-1732584194,271733878];for(t=64;t<=l;t+=64)r(d,i(e.subarray(t-64,t)));for(e=t-64<l?e.subarray(t-64):new Uint8Array(0),n=e.length,a=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],t=0;t<n;t+=1)a[t>>2]|=e[t]<<(t%4<<3);if(a[t>>2]|=128<<(t%4<<3),t>55)for(r(d,a),t=0;t<16;t+=1)a[t]=0;return o=(o=8*l).toString(16).match(/(.*?)(.{0,8})$/),u=parseInt(o[2],16),s=parseInt(o[1],16)||0,a[14]=u,a[15]=s,r(d,a),d}(new Uint8Array(e)));return t?l(n):n},d}()}(t={exports:{}},t.exports),t.exports),n=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},i=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,r,n){return r&&e(t.prototype,r),n&&e(t,n),t}}(),a=File.prototype.slice||File.prototype.mozSlice||File.prototype.webkitSlice,o=function(){function e(t){n(this,e),this.file=t,this.chunkSize=2097152,this.chunkCount=Math.ceil(this.file.size/this.chunkSize),this.chunkIndex=0}return i(e,null,[{key:"create",value:function(t,r){var n=new e(t);n.create(r)}}]),i(e,[{key:"create",value:function(e){var t=this;this.callback=e,this.md5Buffer=new r.ArrayBuffer,this.fileReader=new FileReader,this.fileReader.addEventListener("load",function(e){return t.fileReaderDidLoad(e)}),this.fileReader.addEventListener("error",function(e){return t.fileReaderDidError(e)}),this.readNextChunk()}},{key:"fileReaderDidLoad",value:function(e){if(this.md5Buffer.append(e.target.result),!this.readNextChunk()){var t=this.md5Buffer.end(!0),r=btoa(t);this.callback(null,r)}}},{key:"fileReaderDidError",value:function(e){this.callback("Error reading "+this.file.name)}},{key:"readNextChunk",value:function(){if(this.chunkIndex<this.chunkCount||0==this.chunkIndex&&0==this.chunkCount){var e=this.chunkIndex*this.chunkSize,t=Math.min(e+this.chunkSize,this.file.size),r=a.call(this.file,e,t);return this.fileReader.readAsArrayBuffer(r),this.chunkIndex++,!0}return!1}}]),e}();function u(e,t){return"string"==typeof e&&(t=e,e=document),e.querySelector(t)}function s(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=e.disabled,i=r.bubbles,a=r.cancelable,o=r.detail,u=document.createEvent("Event");u.initEvent(t,i||!0,a||!0),u.detail=o||{};try{e.disabled=!1,e.dispatchEvent(u)}finally{e.disabled=n}return u}function l(e){return Array.isArray(e)?e:Array.from?Array.from(e):[].slice.call(e)}var d=function(){function e(t,r,i){var a=this;n(this,e),this.file=t,this.attributes={filename:t.name,content_type:t.type,byte_size:t.size,checksum:r},this.xhr=new XMLHttpRequest,this.xhr.open("POST",i,!0),this.xhr.responseType="json",this.xhr.setRequestHeader("Content-Type","application/json"),this.xhr.setRequestHeader("Accept","application/json"),this.xhr.setRequestHeader("X-Requested-With","XMLHttpRequest"),this.xhr.setRequestHeader("X-CSRF-Token",function(e){var t=u(document.head,'meta[name="'+e+'"]');if(t)return t.getAttribute("content")}("csrf-token")),this.xhr.addEventListener("load",function(e){return a.requestDidLoad(e)}),this.xhr.addEventListener("error",function(e){return a.requestDidError(e)})}return i(e,[{key:"create",value:function(e){this.callback=e,this.xhr.send(JSON.stringify({blob:this.attributes}))}},{key:"requestDidLoad",value:function(e){if(this.status>=200&&this.status<300){var t=this.response,r=t.direct_upload;delete t.direct_upload,this.attributes=t,this.directUploadData=r,this.callback(null,this.toJSON())}else this.requestDidError(e)}},{key:"requestDidError",value:function(e){this.callback('Error creating Blob for "'+this.file.name+'". Status: '+this.status)}},{key:"toJSON",value:function(){var e={};for(var t in this.attributes)e[t]=this.attributes[t];return e}},{key:"status",get:function(){return this.xhr.status}},{key:"response",get:function(){var e=this.xhr,t=e.responseType,r=e.response;return"json"==t?r:JSON.parse(r)}}]),e}(),c=function(){function e(t){var r=this;n(this,e),this.blob=t,this.file=t.file;var i=t.directUploadData,a=i.url,o=i.headers;for(var u in this.xhr=new XMLHttpRequest,this.xhr.open("PUT",a,!0),this.xhr.responseType="text",o)this.xhr.setRequestHeader(u,o[u]);this.xhr.addEventListener("load",function(e){return r.requestDidLoad(e)}),this.xhr.addEventListener("error",function(e){return r.requestDidError(e)})}return i(e,[{key:"create",value:function(e){this.callback=e,this.xhr.send(this.file.slice())}},{key:"requestDidLoad",value:function(e){var t=this.xhr,r=t.status,n=t.response;r>=200&&r<300?this.callback(null,n):this.requestDidError(e)}},{key:"requestDidError",value:function(e){this.callback('Error storing "'+this.file.name+'". Status: '+this.xhr.status)}}]),e}(),f=0,h=function(){function e(t,r,i){n(this,e),this.id=++f,this.file=t,this.url=r,this.delegate=i}return i(e,[{key:"create",value:function(e){var t=this;o.create(this.file,function(r,n){if(r)e(r);else{var i=new d(t.file,n,t.url);p(t.delegate,"directUploadWillCreateBlobWithXHR",i.xhr),i.create(function(r){if(r)e(r);else{var n=new c(i);p(t.delegate,"directUploadWillStoreFileWithXHR",n.xhr),n.create(function(t){t?e(t):e(null,i.toJSON())})}})}})}}]),e}();function p(e,t){if(e&&"function"==typeof e[t]){for(var r=arguments.length,n=Array(r>2?r-2:0),i=2;i<r;i++)n[i-2]=arguments[i];return e[t].apply(e,n)}}var v=function(){function e(t,r){n(this,e),this.input=t,this.file=r,this.directUpload=new h(this.file,this.url,this),this.dispatch("initialize")}return i(e,[{key:"start",value:function(e){var t=this,r=document.createElement("input");r.type="hidden",r.name=this.input.name,this.input.insertAdjacentElement("beforebegin",r),this.dispatch("start"),this.directUpload.create(function(n,i){n?(r.parentNode.removeChild(r),t.dispatchError(n)):r.value=i.signed_id,t.dispatch("end"),e(n)})}},{key:"uploadRequestDidProgress",value:function(e){var t=e.loaded/e.total*100;t&&this.dispatch("progress",{progress:t})}},{key:"dispatch",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return t.file=this.file,t.id=this.directUpload.id,s(this.input,"direct-upload:"+e,{detail:t})}},{key:"dispatchError",value:function(e){var t=this.dispatch("error",{error:e});t.defaultPrevented||alert(e)}},{key:"directUploadWillCreateBlobWithXHR",value:function(e){this.dispatch("before-blob-request",{xhr:e})}},{key:"directUploadWillStoreFileWithXHR",value:function(e){var t=this;this.dispatch("before-storage-request",{xhr:e}),e.upload.addEventListener("progress",function(e){return t.uploadRequestDidProgress(e)})}},{key:"url",get:function(){return this.input.getAttribute("data-direct-upload-url")}}]),e}(),y="input[type=file][data-direct-upload-url]:not([disabled])",b=function(){function e(t){var r,i;n(this,e),this.form=t,this.inputs=(r=t,i=y,"string"==typeof r&&(i=r,r=document),l(r.querySelectorAll(i))).filter(function(e){return e.files.length})}return i(e,[{key:"start",value:function(e){var t=this,r=this.createDirectUploadControllers();this.dispatch("start"),function n(){var i=r.shift();i?i.start(function(r){r?(e(r),t.dispatch("end")):n()}):(e(),t.dispatch("end"))}()}},{key:"createDirectUploadControllers",value:function(){var e=[];return this.inputs.forEach(function(t){l(t.files).forEach(function(r){var n=new v(t,r);e.push(n)})}),e}},{key:"dispatch",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return s(this.form,"direct-uploads:"+e,{detail:t})}}]),e}(),g="data-direct-uploads-processing",m=new WeakMap,A=!1;function E(){A||(A=!0,document.addEventListener("click",_,!0),document.addEventListener("submit",U),document.addEventListener("ajax:before",k))}function _(e){var t=e.target;"INPUT"!=t.tagName&&"BUTTON"!=t.tagName||"submit"!=t.type||!t.form||m.set(t.form,t)}function U(e){w(e)}function k(e){"FORM"==e.target.tagName&&w(e)}function w(e){var t=e.target;if(t.hasAttribute(g))e.preventDefault();else{var r=new b(t),n=r.inputs;n.length&&(e.preventDefault(),t.setAttribute(g,""),n.forEach(I),r.start(function(e){t.removeAttribute(g),e?n.forEach(S):function(e){var t=m.get(e)||u(e,"input[type=submit], button[type=submit]");if(t){var r=t,n=r.disabled;t.disabled=!1,t.focus(),t.click(),t.disabled=n}else(t=document.createElement("input")).type="submit",t.style.display="none",e.appendChild(t),t.click(),e.removeChild(t);m.delete(e)}(t)}))}}function I(e){e.disabled=!0}function S(e){e.disabled=!1}setTimeout(function(){window.ActiveStorage&&E()},1),e.start=E,e.DirectUpload=h,Object.defineProperty(e,"__esModule",{value:!0})}(t)}])});
@@ -1,3 +1,3 @@
1
1
  module ActiveStorageDragAndDrop
2
- VERSION = '1.0.3'
2
+ VERSION = '1.1.0'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: active_storage_drag_and_drop
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.3
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dave O'Keeffe
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2019-09-30 00:00:00.000000000 Z
12
+ date: 2020-03-10 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bootsnap
@@ -185,14 +185,14 @@ dependencies:
185
185
  requirements:
186
186
  - - "~>"
187
187
  - !ruby/object:Gem::Version
188
- version: '10.0'
188
+ version: 12.3.3
189
189
  type: :development
190
190
  prerelease: false
191
191
  version_requirements: !ruby/object:Gem::Requirement
192
192
  requirements:
193
193
  - - "~>"
194
194
  - !ruby/object:Gem::Version
195
- version: '10.0'
195
+ version: 12.3.3
196
196
  - !ruby/object:Gem::Dependency
197
197
  name: redcarpet
198
198
  requirement: !ruby/object:Gem::Requirement
@@ -267,16 +267,16 @@ dependencies:
267
267
  name: rack
268
268
  requirement: !ruby/object:Gem::Requirement
269
269
  requirements:
270
- - - "~>"
270
+ - - ">="
271
271
  - !ruby/object:Gem::Version
272
- version: 2.0.6
272
+ version: '2'
273
273
  type: :runtime
274
274
  prerelease: false
275
275
  version_requirements: !ruby/object:Gem::Requirement
276
276
  requirements:
277
- - - "~>"
277
+ - - ">="
278
278
  - !ruby/object:Gem::Version
279
- version: 2.0.6
279
+ version: '2'
280
280
  - !ruby/object:Gem::Dependency
281
281
  name: rails
282
282
  requirement: !ruby/object:Gem::Requirement
@@ -328,8 +328,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
328
328
  - !ruby/object:Gem::Version
329
329
  version: '0'
330
330
  requirements: []
331
- rubyforge_project:
332
- rubygems_version: 2.7.5
331
+ rubygems_version: 3.1.2
333
332
  signing_key:
334
333
  specification_version: 4
335
334
  summary: Provides JS drag and drop file upload functionality for active storage.