@ncino/web-components 3.0.0 → 3.0.1-preview.1

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.
@@ -19,7 +19,7 @@ import{t as U}from"../../../../assets/index-chunk3.js";import{n as b}from"../../
19
19
  </svg>
20
20
  </div>
21
21
  </div>
22
- `;let D={url:null,method:"post",withCredentials:!1,timeout:null,parallelUploads:2,uploadMultiple:!1,chunking:!1,forceChunking:!1,chunkSize:2097152,parallelChunkUploads:!1,retryChunks:!1,retryChunksLimit:3,maxFilesize:256,paramName:"file",createImageThumbnails:!0,maxThumbnailFilesize:10,thumbnailWidth:120,thumbnailHeight:120,thumbnailMethod:"crop",resizeWidth:null,resizeHeight:null,resizeMimeType:null,resizeQuality:.8,resizeMethod:"contain",filesizeBase:1e3,maxFiles:null,headers:null,defaultHeaders:!0,clickable:!0,ignoreHiddenFiles:!0,acceptedFiles:null,autoProcessQueue:!0,autoQueue:!0,addRemoveLinks:!1,previewsContainer:null,disablePreviews:!1,hiddenInputContainer:"body",capture:null,renameFilename:null,renameFile:null,forceFallback:!1,dictDefaultMessage:"Drop files here to upload",dictFallbackMessage:"Your browser does not support drag'n'drop file uploads.",dictFallbackText:"Please use the fallback form below to upload your files like in the olden days.",dictFileTooBig:"File is too big ({{filesize}}MiB). Max filesize: {{maxFilesize}}MiB.",dictInvalidFileType:"You can't upload files of this type.",dictResponseError:"Server responded with {{statusCode}} code.",dictCancelUpload:"Cancel upload",dictUploadCanceled:"Upload canceled.",dictCancelUploadConfirmation:"Are you sure you want to cancel this upload?",dictRemoveFile:"Remove file",dictRemoveFileConfirmation:null,dictMaxFilesExceeded:"You cannot upload any more files.",dictFileSizeUnits:{tb:"TB",gb:"GB",mb:"MB",kb:"KB",b:"b"},init(){},params(o,e,i){if(i)return{dzuuid:i.file.upload.uuid,dzchunkindex:i.index,dztotalfilesize:i.file.size,dzchunksize:this.options.chunkSize,dztotalchunkcount:i.file.upload.totalChunkCount,dzchunkbyteoffset:i.index*this.options.chunkSize}},accept(o,e){return e()},chunksUploaded:function(o,e){e()},binaryBody:!1,fallback(){let o;this.element.className=`${this.element.className} dz-browser-not-supported`;for(let i of this.element.getElementsByTagName("div"))if(/(^| )dz-message($| )/.test(i.className)){o=i,i.className="dz-message";break}o||(o=n.createElement('<div class="dz-message"><span></span></div>'),this.element.appendChild(o));let e=o.getElementsByTagName("span")[0];return e&&(e.textContent!=null?e.textContent=this.options.dictFallbackMessage:e.innerText!=null&&(e.innerText=this.options.dictFallbackMessage)),this.element.appendChild(this.getFallbackForm())},resize(o,e,i,t){let r={srcX:0,srcY:0,srcWidth:o.width,srcHeight:o.height},s=o.width/o.height;e==null&&i==null?(e=r.srcWidth,i=r.srcHeight):e==null?e=i*s:i==null&&(i=e/s),e=Math.min(e,r.srcWidth),i=Math.min(i,r.srcHeight);let a=e/i;if(r.srcWidth>e||r.srcHeight>i)if(t==="crop")s>a?(r.srcHeight=o.height,r.srcWidth=r.srcHeight*a):(r.srcWidth=o.width,r.srcHeight=r.srcWidth/a);else if(t==="contain")s>a?i=e/s:e=i*s;else throw new Error(`Unknown resizeMethod '${t}'`);return r.srcX=(o.width-r.srcWidth)/2,r.srcY=(o.height-r.srcHeight)/2,r.trgWidth=e,r.trgHeight=i,r},transformFile(o,e){return(this.options.resizeWidth||this.options.resizeHeight)&&o.type.match(/image.*/)?this.resizeImage(o,this.options.resizeWidth,this.options.resizeHeight,this.options.resizeMethod,e):e(o)},previewTemplate:T(x),drop(o){return this.element.classList.remove("dz-drag-hover")},dragstart(o){},dragend(o){return this.element.classList.remove("dz-drag-hover")},dragenter(o){return this.element.classList.add("dz-drag-hover")},dragover(o){return this.element.classList.add("dz-drag-hover")},dragleave(o){return this.element.classList.remove("dz-drag-hover")},paste(o){},reset(){return this.element.classList.remove("dz-started")},addedfile(o){if(this.element===this.previewsContainer&&this.element.classList.add("dz-started"),this.previewsContainer&&!this.options.disablePreviews){o.previewElement=n.createElement(this.options.previewTemplate.trim()),o.previewTemplate=o.previewElement,this.previewsContainer.appendChild(o.previewElement);for(var e of o.previewElement.querySelectorAll("[data-dz-name]"))e.textContent=o.name;for(e of o.previewElement.querySelectorAll("[data-dz-size]"))e.innerHTML=this.filesize(o.size);this.options.addRemoveLinks&&(o._removeLink=n.createElement(`<a class="dz-remove" href="javascript:undefined;" data-dz-remove>${this.options.dictRemoveFile}</a>`),o.previewElement.appendChild(o._removeLink));let i=t=>(t.preventDefault(),t.stopPropagation(),o.status===n.UPLOADING?n.confirm(this.options.dictCancelUploadConfirmation,()=>this.removeFile(o)):this.options.dictRemoveFileConfirmation?n.confirm(this.options.dictRemoveFileConfirmation,()=>this.removeFile(o)):this.removeFile(o));for(let t of o.previewElement.querySelectorAll("[data-dz-remove]"))t.addEventListener("click",i)}},removedfile(o){return o.previewElement!=null&&o.previewElement.parentNode!=null&&o.previewElement.parentNode.removeChild(o.previewElement),this._updateMaxFilesReachedClass()},thumbnail(o,e){if(o.previewElement){o.previewElement.classList.remove("dz-file-preview");for(let i of o.previewElement.querySelectorAll("[data-dz-thumbnail]"))i.alt=o.name,i.src=e;return setTimeout(()=>o.previewElement.classList.add("dz-image-preview"),1)}},error(o,e){if(o.previewElement){o.previewElement.classList.add("dz-error"),typeof e!="string"&&e.error&&(e=e.error);for(let i of o.previewElement.querySelectorAll("[data-dz-errormessage]"))i.textContent=e}},errormultiple(){},processing(o){if(o.previewElement&&(o.previewElement.classList.add("dz-processing"),o._removeLink))return o._removeLink.innerHTML=this.options.dictCancelUpload},processingmultiple(){},uploadprogress(o,e,i){if(o.previewElement)for(let t of o.previewElement.querySelectorAll("[data-dz-uploadprogress]"))t.nodeName==="PROGRESS"?t.value=e:t.style.width=`${e}%`},totaluploadprogress(){},sending(){},sendingmultiple(){},success(o){if(o.previewElement)return o.previewElement.classList.add("dz-success")},successmultiple(){},canceled(o){return this.emit("error",o,this.options.dictUploadCanceled)},canceledmultiple(){},complete(o){if(o._removeLink&&(o._removeLink.innerHTML=this.options.dictRemoveFile),o.previewElement)return o.previewElement.classList.add("dz-complete")},completemultiple(){},maxfilesexceeded(){},maxfilesreached(){},queuecomplete(){},addedfiles(){}};var I=D;class n extends E{static initClass(){this.prototype.Emitter=E,this.prototype.events=["drop","dragstart","dragend","dragenter","dragover","dragleave","addedfile","addedfiles","removedfile","thumbnail","error","errormultiple","processing","processingmultiple","uploadprogress","totaluploadprogress","sending","sendingmultiple","success","successmultiple","canceled","canceledmultiple","complete","completemultiple","reset","maxfilesexceeded","maxfilesreached","queuecomplete"],this.prototype._thumbnailQueue=[],this.prototype._processingThumbnail=!1}constructor(e,i){super();let t,r;if(this.element=e,this.clickableElements=[],this.listeners=[],this.files=[],typeof this.element=="string"&&(this.element=document.querySelector(this.element)),this.element===null||!this.element instanceof HTMLElement)throw new Error("Invalid dropzone element: not an instance of HTMLElement.");if(this.element.dropzone)throw new Error("Dropzone already attached.");n.instances.push(this),this.element.dropzone=this;let s=(r=n.optionsForElement(this.element))!=null?r:{};if(this.options=Object.assign({},I,s,i??{}),this.options.previewTemplate=this.options.previewTemplate.replace(/\n*/g,""),this.options.forceFallback||!n.isBrowserSupported())return this.options.fallback.call(this);if(this.options.url==null&&(this.options.url=this.element.getAttribute("action")),!this.options.url)throw new Error("No URL provided.");if(this.options.uploadMultiple&&this.options.chunking)throw new Error("You cannot set both: uploadMultiple and chunking.");if(this.options.binaryBody&&this.options.uploadMultiple)throw new Error("You cannot set both: binaryBody and uploadMultiple.");typeof this.options.method=="string"&&(this.options.method=this.options.method.toUpperCase()),(t=this.getExistingFallback())&&t.parentNode&&t.parentNode.removeChild(t),this.options.previewsContainer!==!1&&(this.options.previewsContainer?this.previewsContainer=n.getElement(this.options.previewsContainer,"previewsContainer"):this.previewsContainer=this.element),this.options.clickable&&(this.options.clickable===!0?this.clickableElements=[this.element]:this.clickableElements=n.getElements(this.options.clickable,"clickable")),this.init()}getAcceptedFiles(){return this.files.filter(e=>e.accepted).map(e=>e)}getRejectedFiles(){return this.files.filter(e=>!e.accepted).map(e=>e)}getFilesWithStatus(e){return this.files.filter(i=>i.status===e).map(i=>i)}getQueuedFiles(){return this.getFilesWithStatus(n.QUEUED)}getUploadingFiles(){return this.getFilesWithStatus(n.UPLOADING)}getAddedFiles(){return this.getFilesWithStatus(n.ADDED)}getActiveFiles(){return this.files.filter(e=>e.status===n.UPLOADING||e.status===n.QUEUED).map(e=>e)}init(){if(this.element.tagName==="form"&&this.element.setAttribute("enctype","multipart/form-data"),this.element.classList.contains("dropzone")&&!this.element.querySelector(".dz-message")&&this.element.appendChild(n.createElement(`<div class="dz-default dz-message"><button class="dz-button" type="button">${this.options.dictDefaultMessage}</button></div>`)),this.clickableElements.length){let t=()=>{var r;this.hiddenFileInput&&((r=this.hiddenFileInput.parentNode)==null||r.removeChild(this.hiddenFileInput)),this.hiddenFileInput=document.createElement("input"),this.hiddenFileInput.setAttribute("type","file"),this.hiddenFileInput.setAttribute("form",this.element.id),(this.options.maxFiles===null||this.options.maxFiles>1)&&this.hiddenFileInput.setAttribute("multiple","multiple"),this.hiddenFileInput.className="dz-hidden-input",this.options.acceptedFiles!==null&&this.hiddenFileInput.setAttribute("accept",this.options.acceptedFiles),this.options.capture!==null&&this.hiddenFileInput.setAttribute("capture",this.options.capture),this.hiddenFileInput.setAttribute("tabindex","-1"),this.hiddenFileInput.setAttribute("aria-label","dropzone hidden input"),this.hiddenFileInput.style.visibility="hidden",this.hiddenFileInput.style.position="absolute",this.hiddenFileInput.style.top="0",this.hiddenFileInput.style.left="0",this.hiddenFileInput.style.height="0",this.hiddenFileInput.style.width="0",n.getElement(this.options.hiddenInputContainer,"hiddenInputContainer").appendChild(this.hiddenFileInput),this.hiddenFileInput.addEventListener("change",()=>{let{files:s}=this.hiddenFileInput;if(s.length)for(let a of s)this.addFile(a);this.emit("addedfiles",s),t()})};t()}this.URL=window.URL!==null?window.URL:window.webkitURL;for(let t of this.events)this.on(t,this.options[t]);this.on("uploadprogress",()=>this.updateTotalUploadProgress()),this.on("removedfile",()=>this.updateTotalUploadProgress()),this.on("canceled",t=>this.emit("complete",t)),this.on("complete",t=>{if(this.getAddedFiles().length===0&&this.getUploadingFiles().length===0&&this.getQueuedFiles().length===0)return setTimeout(()=>this.emit("queuecomplete"),0)});const e=function(t){return t.dataTransfer.types&&t.dataTransfer.types.includes("Files")};let i=function(t){if(e(t))return t.stopPropagation(),t.preventDefault()};return this.listeners=[{element:this.element,events:{dragstart:t=>this.emit("dragstart",t),dragenter:t=>(i(t),this.emit("dragenter",t)),dragover:t=>{const r=t.dataTransfer.effectAllowed;return t.dataTransfer.dropEffect=r==="move"||r==="linkMove"?"move":"copy",i(t),this.emit("dragover",t)},dragleave:t=>this.emit("dragleave",t),drop:t=>(i(t),this.drop(t)),dragend:t=>this.emit("dragend",t)}}],this.clickableElements.forEach(t=>this.listeners.push({element:t,events:{click:r=>((t!==this.element||r.target===this.element||n.elementInside(r.target,this.element.querySelector(".dz-message")))&&this.hiddenFileInput.click(),!0)}})),this.enable(),this.options.init.call(this)}destroy(){return this.disable(),this.removeAllFiles(!0),this.hiddenFileInput!=null&&this.hiddenFileInput.parentNode&&(this.hiddenFileInput.parentNode.removeChild(this.hiddenFileInput),this.hiddenFileInput=null),delete this.element.dropzone,n.instances.splice(n.instances.indexOf(this),1)}updateTotalUploadProgress(){let e,i=0,t=0;if(this.getActiveFiles().length){for(let s of this.getActiveFiles())i+=s.upload.bytesSent,t+=s.upload.total;e=100*i/t}else e=100;return this.emit("totaluploadprogress",e,t,i)}_getParamName(e){return typeof this.options.paramName=="function"?this.options.paramName(e):`${this.options.paramName}${this.options.uploadMultiple?`[${e}]`:""}`}_renameFile(e){const i={...e,name:e.name.replace(/\u202F/g," ")};return typeof this.options.renameFile!="function"?i.name:this.options.renameFile(i)}getFallbackForm(){let e,i;if(e=this.getExistingFallback())return e;let t='<div class="dz-fallback">';this.options.dictFallbackText&&(t+=`<p>${this.options.dictFallbackText}</p>`),t+=`<input type="file" name="${this._getParamName(0)}" ${this.options.uploadMultiple?'multiple="multiple"':void 0} /><input type="submit" value="Upload!"></div>`;let r=n.createElement(t);return this.element.tagName!=="FORM"?(i=n.createElement(`<form action="${this.options.url}" enctype="multipart/form-data" method="${this.options.method}"></form>`),i.appendChild(r)):(this.element.setAttribute("enctype","multipart/form-data"),this.element.setAttribute("method",this.options.method)),i??r}getExistingFallback(){let e=function(t){for(let r of t)if(/(^| )fallback($| )/.test(r.className))return r};for(let t of["div","form"]){var i;if(i=e(this.element.getElementsByTagName(t)))return i}}setupEventListeners(){return this.listeners.map(e=>(()=>{let i=[];for(let t in e.events){let r=e.events[t];i.push(e.element.addEventListener(t,r,!1))}return i})())}removeEventListeners(){return this.listeners.map(e=>(()=>{let i=[];for(let t in e.events){let r=e.events[t];i.push(e.element.removeEventListener(t,r,!1))}return i})())}disable(){return this.clickableElements.forEach(e=>e.classList.remove("dz-clickable")),this.removeEventListeners(),this.disabled=!0,this.files.map(e=>this.cancelUpload(e))}enable(){return delete this.disabled,this.clickableElements.forEach(e=>e.classList.add("dz-clickable")),this.setupEventListeners()}filesize(e){let i=0,t="b";if(e>0){let r=["tb","gb","mb","kb","b"];for(let s=0;s<r.length;s++){let a=r[s],p=Math.pow(this.options.filesizeBase,4-s)/10;if(e>=p){i=e/Math.pow(this.options.filesizeBase,4-s),t=a;break}}i=Math.round(10*i)/10}return`<strong>${i}</strong> ${this.options.dictFileSizeUnits[t]}`}_updateMaxFilesReachedClass(){return this.options.maxFiles!=null&&this.getAcceptedFiles().length>=this.options.maxFiles?(this.getAcceptedFiles().length===this.options.maxFiles&&this.emit("maxfilesreached",this.files),this.element.classList.add("dz-max-files-reached")):this.element.classList.remove("dz-max-files-reached")}drop(e){if(!e.dataTransfer)return;this.emit("drop",e);let i=[];for(let t=0;t<e.dataTransfer.files.length;t++)i[t]=e.dataTransfer.files[t];if(i.length){let{items:t}=e.dataTransfer;t&&t.length&&t[0].webkitGetAsEntry!=null?this._addFilesFromItems(t):this.handleFiles(i)}this.emit("addedfiles",i)}paste(e){if(O(e!=null?e.clipboardData:void 0,t=>t.items)==null)return;this.emit("paste",e);let{items:i}=e.clipboardData;if(i.length)return this._addFilesFromItems(i)}handleFiles(e){for(let i of e)this.addFile(i)}_addFilesFromItems(e){return(()=>{let i=[];for(let r of e){var t;r.webkitGetAsEntry!=null&&(t=r.webkitGetAsEntry())?t.isFile?i.push(this.addFile(r.getAsFile())):t.isDirectory?i.push(this._addFilesFromDirectory(t,t.name)):i.push(void 0):r.getAsFile!=null&&(r.kind==null||r.kind==="file")?i.push(this.addFile(r.getAsFile())):i.push(void 0)}return i})()}_addFilesFromDirectory(e,i){let t=e.createReader(),r=a=>W(console,"log",p=>p.log(a));var s=()=>t.readEntries(a=>{if(a.length>0){for(let p of a)p.isFile?p.file(d=>{if(!(this.options.ignoreHiddenFiles&&d.name.substring(0,1)==="."))return d.fullPath=`${i}/${d.name}`,this.addFile(d)}):p.isDirectory&&this._addFilesFromDirectory(p,`${i}/${p.name}`);s()}return null},r);return s()}accept(e,i){this.options.maxFilesize&&e.size>this.options.maxFilesize*1048576?i(this.options.dictFileTooBig.replace("{{filesize}}",Math.round(e.size/1024/10.24)/100).replace("{{maxFilesize}}",this.options.maxFilesize)):n.isValidFile(e,this.options.acceptedFiles)?this.options.maxFiles!=null&&this.getAcceptedFiles().length>=this.options.maxFiles?(i(this.options.dictMaxFilesExceeded.replace("{{maxFiles}}",this.options.maxFiles)),this.emit("maxfilesexceeded",e)):this.options.accept.call(this,e,i):i(this.options.dictInvalidFileType)}addFile(e){e.upload={uuid:window.isSecureContext?self.crypto.randomUUID():n.uuidv4(),progress:0,total:e.size,bytesSent:0,filename:this._renameFile(e)},this.files.push(e),e.status=n.ADDED,this.emit("addedfile",e),this._enqueueThumbnail(e),this.accept(e,i=>{i?(e.accepted=!1,this._errorProcessing([e],i)):(e.accepted=!0,this.options.autoQueue&&this.enqueueFile(e)),this._updateMaxFilesReachedClass()})}enqueueFiles(e){for(let i of e)this.enqueueFile(i);return null}enqueueFile(e){if(e.status===n.ADDED&&e.accepted===!0){if(e.status=n.QUEUED,this.options.autoProcessQueue)return setTimeout(()=>this.processQueue(),0)}else throw new Error("This file can't be queued because it has already been processed or was rejected.")}_enqueueThumbnail(e){if(this.options.createImageThumbnails&&e.type.match(/image.*/)&&e.size<=this.options.maxThumbnailFilesize*1048576)return this._thumbnailQueue.push(e),setTimeout(()=>this._processThumbnailQueue(),0)}_processThumbnailQueue(){if(this._processingThumbnail||this._thumbnailQueue.length===0)return;this._processingThumbnail=!0;let e=this._thumbnailQueue.shift();return this.createThumbnail(e,this.options.thumbnailWidth,this.options.thumbnailHeight,this.options.thumbnailMethod,!0,i=>(this.emit("thumbnail",e,i),this._processingThumbnail=!1,this._processThumbnailQueue()))}removeFile(e){if(e.status===n.UPLOADING&&this.cancelUpload(e),this.files=R(this.files,e),this.emit("removedfile",e),this.files.length===0)return this.emit("reset")}removeAllFiles(e){e==null&&(e=!1);for(let i of this.files.slice())(i.status!==n.UPLOADING||e)&&this.removeFile(i);return null}resizeImage(e,i,t,r,s){return this.createThumbnail(e,i,t,r,!0,(a,p)=>{if(p==null)return s(e);{let{resizeMimeType:d}=this.options;d==null&&(d=e.type);let l=p.toDataURL(d,this.options.resizeQuality);return(d==="image/jpeg"||d==="image/jpg")&&(l=q(e.dataURL,l)),s(n.dataURItoBlob(l))}},!0)}createThumbnail(e,i,t,r,s,a,p=!1){let d=new FileReader;d.onload=()=>{if(e.dataURL=d.result,e.type==="image/svg+xml"){a!=null&&a(d.result);return}this.createThumbnailFromUrl(e,i,t,r,s,a,void 0,p)},d.readAsDataURL(e)}displayExistingFile(e,i,t,r,s=!0){if(this.emit("addedfile",e),this.emit("complete",e),!s)this.emit("thumbnail",e,i),t&&t();else{let a=p=>{this.emit("thumbnail",e,p),t&&t()};e.dataURL=i,this.createThumbnailFromUrl(e,this.options.thumbnailWidth,this.options.thumbnailHeight,this.options.thumbnailMethod,this.options.fixOrientation,a,r)}}createThumbnailFromUrl(e,i,t,r,s,a,p,d=!1){let l=document.createElement("img");p&&(l.crossOrigin=p),s=getComputedStyle(document.body).imageOrientation=="from-image"?!1:s,l.onload=()=>{let g=f=>f(1);return typeof EXIF<"u"&&EXIF!==null&&s&&(g=f=>EXIF.getData(l,function(){return f(EXIF.getTag(this,"Orientation"))})),g(f=>{e.width=l.width,e.height=l.height;let h=this.options.resize.call(this,e,i,t,r),c=document.createElement("canvas"),m=c.getContext("2d");switch(c.width=h.trgWidth,c.height=h.trgHeight,f>4&&(c.width=h.trgHeight,c.height=h.trgWidth),f){case 2:m.translate(c.width,0),m.scale(-1,1);break;case 3:m.translate(c.width,c.height),m.rotate(Math.PI);break;case 4:m.translate(0,c.height),m.scale(1,-1);break;case 5:m.rotate(.5*Math.PI),m.scale(1,-1);break;case 6:m.rotate(.5*Math.PI),m.translate(0,-c.width);break;case 7:m.rotate(.5*Math.PI),m.translate(c.height,-c.width),m.scale(-1,1);break;case 8:m.rotate(-.5*Math.PI),m.translate(-c.height,0);break}P(m,l,h.srcX!=null?h.srcX:0,h.srcY!=null?h.srcY:0,h.srcWidth,h.srcHeight,h.trgX!=null?h.trgX:0,h.trgY!=null?h.trgY:0,h.trgWidth,h.trgHeight);let L=c.toDataURL("image/png");if(a!=null)return a(L,c)})},a!=null&&(l.onerror=a);var u=e.dataURL;return d&&(u=H(u)),l.src=u}processQueue(){let{parallelUploads:e}=this.options,i=this.getUploadingFiles().length,t=i;if(i>=e)return;let r=this.getQueuedFiles();if(r.length>0){if(this.options.uploadMultiple)return this.processFiles(r.slice(0,e-i));for(;t<e;){if(!r.length)return;this.processFile(r.shift()),t++}}}processFile(e){return this.processFiles([e])}processFiles(e){for(let i of e)i.processing=!0,i.status=n.UPLOADING,this.emit("processing",i);return this.options.uploadMultiple&&this.emit("processingmultiple",e),this.uploadFiles(e)}_getFilesWithXhr(e){return this.files.filter(i=>i.xhr===e).map(i=>i)}cancelUpload(e){if(e.status===n.UPLOADING){let i=this._getFilesWithXhr(e.xhr);for(let t of i)t.status=n.CANCELED;typeof e.xhr<"u"&&e.xhr.abort();for(let t of i)this.emit("canceled",t);this.options.uploadMultiple&&this.emit("canceledmultiple",i)}else(e.status===n.ADDED||e.status===n.QUEUED)&&(e.status=n.CANCELED,this.emit("canceled",e),this.options.uploadMultiple&&this.emit("canceledmultiple",[e]));if(this.options.autoProcessQueue)return this.processQueue()}resolveOption(e,...i){return typeof e=="function"?e.apply(this,i):e}uploadFile(e){return this.uploadFiles([e])}uploadFiles(e){this._transformFiles(e,i=>{if(this.options.chunking){let t=i[0];e[0].upload.chunked=this.options.chunking&&(this.options.forceChunking||t.size>this.options.chunkSize),e[0].upload.totalChunkCount=Math.ceil(t.size/this.options.chunkSize),t.size===0&&(e[0].upload.totalChunkCount=1)}if(e[0].upload.chunked){let t=e[0],r=i[0];t.upload.chunks=[];let s=()=>{let a=0;for(;t.upload.chunks[a]!==void 0;)a++;if(a>=t.upload.totalChunkCount)return;let p=a*this.options.chunkSize,d=Math.min(p+this.options.chunkSize,r.size),l={name:this._getParamName(0),data:r.webkitSlice?r.webkitSlice(p,d):r.slice(p,d),filename:t.upload.filename,chunkIndex:a};t.upload.chunks[a]={file:t,index:a,dataBlock:l,status:n.UPLOADING,progress:0,retries:0},this._uploadData(e,[l])};if(t.upload.finishedChunkUpload=(a,p)=>{let d=!0;a.status=n.SUCCESS,a.dataBlock=null,a.response=a.xhr.responseText,a.responseHeaders=a.xhr.getAllResponseHeaders(),a.xhr=null;for(let l=0;l<t.upload.totalChunkCount;l++){if(t.upload.chunks[l]===void 0)return s();t.upload.chunks[l].status!==n.SUCCESS&&(d=!1)}d&&this.options.chunksUploaded(t,()=>{this._finished(e,p,null)})},this.options.parallelChunkUploads){const a=Math.min(this.options.parallelChunkUploads===!0?this.options.parallelUploads:this.options.parallelChunkUploads,t.upload.totalChunkCount);for(let p=0;p<a;p++)s()}else s()}else{let t=[];for(let r=0;r<e.length;r++)t[r]={name:this._getParamName(r),data:i[r],filename:e[r].upload.filename};this._uploadData(e,t)}})}_getChunk(e,i){for(let t=0;t<e.upload.totalChunkCount;t++)if(e.upload.chunks[t]!==void 0&&e.upload.chunks[t].xhr===i)return e.upload.chunks[t]}_uploadData(e,i){let t=new XMLHttpRequest;for(let l of e)l.xhr=t;e[0].upload.chunked&&(e[0].upload.chunks[i[0].chunkIndex].xhr=t);let r=this.resolveOption(this.options.method,e,i),s=this.resolveOption(this.options.url,e,i);t.open(r,s,!0),this.resolveOption(this.options.timeout,e)&&(t.timeout=this.resolveOption(this.options.timeout,e)),t.withCredentials=!!this.options.withCredentials,t.onload=l=>{this._finishedUploading(e,t,l)},t.ontimeout=()=>{this._handleUploadError(e,t,`Request timedout after ${this.options.timeout/1e3} seconds`)},t.onerror=()=>{this._handleUploadError(e,t)};let p=t.upload!=null?t.upload:t;p.onprogress=l=>this._updateFilesUploadProgress(e,t,l);let d=this.options.defaultHeaders?{Accept:"application/json","Cache-Control":"no-cache","X-Requested-With":"XMLHttpRequest"}:{};this.options.binaryBody&&(d["Content-Type"]=e[0].type),this.options.headers&&Object.assign(d,this.options.headers);for(let l in d){let u=d[l];u&&t.setRequestHeader(l,u)}if(this.options.binaryBody){for(let l of e)this.emit("sending",l,t);this.options.uploadMultiple&&this.emit("sendingmultiple",e,t),this.submitRequest(t,null,e)}else{let l=new FormData;if(this.options.params){let u=this.options.params;typeof u=="function"&&(u=u.call(this,e,t,e[0].upload.chunked?this._getChunk(e[0],t):null));for(let g in u){let f=u[g];if(Array.isArray(f))for(let h=0;h<f.length;h++)l.append(g,f[h]);else l.append(g,f)}}for(let u of e)this.emit("sending",u,t,l);this.options.uploadMultiple&&this.emit("sendingmultiple",e,t,l),this._addFormElementData(l);for(let u=0;u<i.length;u++){let g=i[u];l.append(g.name,g.data,g.filename)}this.submitRequest(t,l,e)}}_transformFiles(e,i){let t=[],r=0;for(let s=0;s<e.length;s++)this.options.transformFile.call(this,e[s],a=>{t[s]=a,++r===e.length&&i(t)})}_addFormElementData(e){if(this.element.tagName==="FORM")for(let i of this.element.querySelectorAll("input, textarea, select, button")){let t=i.getAttribute("name"),r=i.getAttribute("type");if(r&&(r=r.toLowerCase()),!(typeof t>"u"||t===null))if(i.tagName==="SELECT"&&i.hasAttribute("multiple"))for(let s of i.options)s.selected&&e.append(t,s.value);else(!r||r!=="checkbox"&&r!=="radio"||i.checked)&&e.append(t,i.value)}}_updateFilesUploadProgress(e,i,t){if(e[0].upload.chunked){let r=e[0],s=this._getChunk(r,i);t?(s.progress=100*t.loaded/t.total,s.total=t.total,s.bytesSent=t.loaded):(s.progress=100,s.bytesSent=s.total),r.upload.progress=0,r.upload.total=0,r.upload.bytesSent=0;for(let a=0;a<r.upload.totalChunkCount;a++)r.upload.chunks[a]&&typeof r.upload.chunks[a].progress<"u"&&(r.upload.progress+=r.upload.chunks[a].progress,r.upload.total+=r.upload.chunks[a].total,r.upload.bytesSent+=r.upload.chunks[a].bytesSent);r.upload.progress=r.upload.progress/r.upload.totalChunkCount,this.emit("uploadprogress",r,r.upload.progress,r.upload.bytesSent)}else for(let r of e)r.upload.total&&r.upload.bytesSent&&r.upload.bytesSent==r.upload.total||(t?(r.upload.progress=100*t.loaded/t.total,r.upload.total=t.total,r.upload.bytesSent=t.loaded):(r.upload.progress=100,r.upload.bytesSent=r.upload.total),this.emit("uploadprogress",r,r.upload.progress,r.upload.bytesSent))}_finishedUploading(e,i,t){let r;if(e[0].status!==n.CANCELED&&i.readyState===4){if(i.responseType!=="arraybuffer"&&i.responseType!=="blob"&&(r=i.responseText,i.getResponseHeader("content-type")&&~i.getResponseHeader("content-type").indexOf("application/json")))try{r=JSON.parse(r)}catch(s){t=s,r="Invalid JSON response from server."}this._updateFilesUploadProgress(e,i),200<=i.status&&i.status<300?e[0].upload.chunked?e[0].upload.finishedChunkUpload(this._getChunk(e[0],i),r):this._finished(e,r,t):this._handleUploadError(e,i,r)}}_handleUploadError(e,i,t){if(e[0].status!==n.CANCELED){if(e[0].upload.chunked&&this.options.retryChunks){let r=this._getChunk(e[0],i);if(r.retries++<this.options.retryChunksLimit){this._uploadData(e,[r.dataBlock]);return}else console.warn("Retried this chunk too often. Giving up.")}this._errorProcessing(e,t||this.options.dictResponseError.replace("{{statusCode}}",i.status),i)}}submitRequest(e,i,t){if(e.readyState!=1){console.warn("Cannot send this request because the XMLHttpRequest.readyState is not OPENED.");return}if(this.options.binaryBody)if(t[0].upload.chunked){const r=this._getChunk(t[0],e);e.send(r.dataBlock.data)}else e.send(t[0]);else e.send(i)}_finished(e,i,t){for(let r of e)r.status=n.SUCCESS,this.emit("success",r,i,t),this.emit("complete",r);if(this.options.uploadMultiple&&(this.emit("successmultiple",e,i,t),this.emit("completemultiple",e)),this.options.autoProcessQueue)return this.processQueue()}_errorProcessing(e,i,t){for(let r of e)r.status=n.ERROR,this.emit("error",r,i,t),this.emit("complete",r);if(this.options.uploadMultiple&&(this.emit("errormultiple",e,i,t),this.emit("completemultiple",e)),this.options.autoProcessQueue)return this.processQueue()}static uuidv4(){return"10000000-1000-4000-8000-100000000000".replace(/[018]/g,e=>(+e^crypto.getRandomValues(new Uint8Array(1))[0]&15>>+e/4).toString(16))}}n.initClass();n.options={};n.optionsForElement=function(o){if(o.getAttribute("id")&&typeof n.options<"u")return n.options[M(o.getAttribute("id"))]};n.instances=[];n.forElement=function(o){if(typeof o=="string"&&(o=document.querySelector(o)),(o!=null?o.dropzone:void 0)==null)throw new Error("No Dropzone found for given element. This is probably because you're trying to access it before Dropzone had the time to initialize. Use the `init` option to setup any additional observers on your Dropzone.");return o.dropzone};n.discover=function(){let o;if(document.querySelectorAll)o=document.querySelectorAll(".dropzone");else{o=[];let e=i=>(()=>{let t=[];for(let r of i)/(^| )dropzone($| )/.test(r.className)?t.push(o.push(r)):t.push(void 0);return t})();e(document.getElementsByTagName("div")),e(document.getElementsByTagName("form"))}return(()=>{let e=[];for(let i of o)n.optionsForElement(i)!==!1?e.push(new n(i)):e.push(void 0);return e})()};n.isBrowserSupported=function(){return typeof Promise<"u"};n.dataURItoBlob=function(o){let e=atob(o.split(",")[1]),i=o.split(",")[0].split(":")[1].split(";")[0],t=new ArrayBuffer(e.length),r=new Uint8Array(t);for(let s=0,a=e.length,p=0<=a;p?s<=a:s>=a;p?s++:s--)r[s]=e.charCodeAt(s);return new Blob([t],{type:i})};const R=(o,e)=>o.filter(i=>i!==e).map(i=>i),M=o=>o.replace(/[\-_](\w)/g,e=>e.charAt(1).toUpperCase());n.createElement=function(o){let e=document.createElement("div");return e.innerHTML=o,e.childNodes[0]};n.elementInside=function(o,e){if(o===e)return!0;for(;o=o.parentNode;)if(o===e)return!0;return!1};n.getElement=function(o,e){let i;if(typeof o=="string"?i=document.querySelector(o):o.nodeType!=null&&(i=o),i==null)throw new Error(`Invalid \`${e}\` option provided. Please provide a CSS selector or a plain HTML element.`);return i};n.getElements=function(o,e){let i,t;if(o instanceof Array){t=[];try{for(i of o)t.push(this.getElement(i,e))}catch{t=null}}else if(typeof o=="string"){t=[];for(i of document.querySelectorAll(o))t.push(i)}else o.nodeType!=null&&(t=[o]);if(t==null||!t.length)throw new Error(`Invalid \`${e}\` option provided. Please provide a CSS selector, a plain HTML element or a list of those.`);return t};n.confirm=function(o,e,i){if(window.confirm(o))return e();if(i!=null)return i()};n.isValidFile=function(o,e){if(!e)return!0;e=e.split(",");let i=o.type,t=i.replace(/\/.*$/,"");for(let r of e)if(r=r.trim(),r.charAt(0)==="."){if(o.name.toLowerCase().indexOf(r.toLowerCase(),o.name.length-r.length)!==-1)return!0}else if(/\/\*$/.test(r)){if(t===r.replace(/\/.*$/,""))return!0}else if(i===r)return!0;return!1};typeof jQuery<"u"&&jQuery!==null&&(jQuery.fn.dropzone=function(o){return this.each(function(){return new n(this,o)})});n.ADDED="added";n.QUEUED="queued";n.ACCEPTED=n.QUEUED;n.UPLOADING="uploading";n.PROCESSING=n.UPLOADING;n.CANCELED="canceled";n.ERROR="error";n.SUCCESS="success";let N=function(o){let e=o.naturalHeight,i=document.createElement("canvas");i.width=1,i.height=e;let t=i.getContext("2d");t.drawImage(o,0,0);let{data:r}=t.getImageData(1,0,1,e),s=0,a=e,p=e;for(;p>s;)r[(p-1)*4+3]===0?a=p:s=p,p=a+s>>1;let d=p/e;return d===0?1:d};var P=function(o,e,i,t,r,s,a,p,d,l){let u=N(e);return o.drawImage(e,i,t,r,s,a,p,d,l/u)};function H(o){var e="data:image/jpeg;base64,";if(!o.startsWith(e))return o;var i=window.atob(o.slice(e.length));if(!i.startsWith("ÿØÿ"))return o;for(var t=0,r="";t<i.length;)if(i.slice(t,t+2)=="ÿÚ"){r+=i.slice(t);break}else if(i.slice(t,t+2)=="ÿØ")r+=i.slice(t,t+2),t+=2;else{var s=i.charCodeAt(t+2)*256+i.charCodeAt(t+3),a=t+s+2,p=i.slice(t,a);p.startsWith("ÿá")||(r+=p),t=a}return e+window.btoa(r)}function q(o,e){var i="data:image/jpeg;base64,";if(!(o.startsWith(i)&&e.startsWith(i)))return e;var t=window.atob(o.slice(i.length));if(!t.startsWith("ÿØÿ"))return e;for(var r=0,s="";r<t.length&&t.slice(r,r+2)!="ÿÚ";)if(t.slice(r,r+2)=="ÿØ")r+=2;else{var a=t.charCodeAt(r+2)*256+t.charCodeAt(r+3),p=r+a+2,d=t.slice(r,p);d.startsWith("ÿá")&&(s+=d),r=p}if(s=="")return e;var l=window.atob(e.slice(i.length));if(!l.startsWith("ÿØÿ"))return e;var u=4+l.charCodeAt(4)*256+l.charCodeAt(5);return l=l.slice(0,u)+s+l.slice(u),i+window.btoa(l)}function O(o,e){return typeof o<"u"&&o!==null?e(o):void 0}function W(o,e,i){if(typeof o<"u"&&o!==null&&typeof o[e]=="function")return i(o,e)}const Q='@keyframes passing-through{0%{opacity:0;transform:translateY(40px)}30%,70%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-40px)}}@keyframes slide-in{0%{opacity:0;transform:translateY(40px)}30%{opacity:1;transform:translateY(0)}}@keyframes pulse{0%{transform:scale(1)}10%{transform:scale(1.1)}20%{transform:scale(1)}}.dropzone,.dropzone *{box-sizing:border-box}.dropzone{min-height:150px;border:1px solid rgba(0,0,0,.8);border-radius:5px;padding:20px}.dropzone.dz-clickable{cursor:pointer}.dropzone.dz-clickable *{cursor:default}.dropzone.dz-clickable .dz-message,.dropzone.dz-clickable .dz-message *{cursor:pointer}.dropzone.dz-started .dz-message{display:none}.dropzone.dz-drag-hover{border-style:solid}.dropzone.dz-drag-hover .dz-message{opacity:.5}.dropzone .dz-message{text-align:center;margin:3em 0}.dropzone .dz-message .dz-button{background:none;color:inherit;border:none;padding:0;font:inherit;cursor:pointer;outline:inherit}.dropzone .dz-preview{position:relative;display:inline-block;vertical-align:top;margin:16px;min-height:100px}.dropzone .dz-preview:hover{z-index:1000}.dropzone .dz-preview.dz-file-preview .dz-image{border-radius:20px;background:#999;background:linear-gradient(to bottom,#eee,#ddd)}.dropzone .dz-preview.dz-file-preview .dz-details{opacity:1}.dropzone .dz-preview.dz-image-preview{background:#fff}.dropzone .dz-preview.dz-image-preview .dz-details{transition:opacity .2s linear}.dropzone .dz-preview .dz-remove{font-size:14px;text-align:center;display:block;cursor:pointer;border:none}.dropzone .dz-preview .dz-remove:hover{text-decoration:underline}.dropzone .dz-preview:hover .dz-details{opacity:1}.dropzone .dz-preview .dz-details{z-index:20;position:absolute;top:0;left:0;opacity:0;font-size:13px;min-width:100%;max-width:100%;padding:2em 1em;text-align:center;color:#000000e6;line-height:150%}.dropzone .dz-preview .dz-details .dz-size{margin-bottom:1em;font-size:16px}.dropzone .dz-preview .dz-details .dz-filename{white-space:nowrap}.dropzone .dz-preview .dz-details .dz-filename:hover span{border:1px solid rgba(200,200,200,.8);background-color:#fffc}.dropzone .dz-preview .dz-details .dz-filename:not(:hover){overflow:hidden;text-overflow:ellipsis}.dropzone .dz-preview .dz-details .dz-filename:not(:hover) span{border:1px solid transparent}.dropzone .dz-preview .dz-details .dz-filename span,.dropzone .dz-preview .dz-details .dz-size span{background-color:#fff6;padding:0 .4em;border-radius:3px}.dropzone .dz-preview:hover .dz-image img{transform:scale(1.05);filter:blur(8px)}.dropzone .dz-preview .dz-image{border-radius:20px;overflow:hidden;width:120px;height:120px;position:relative;display:block;z-index:10}.dropzone .dz-preview .dz-image img{display:block}.dropzone .dz-preview.dz-success .dz-success-mark{animation:passing-through 3s cubic-bezier(.77,0,.175,1)}.dropzone .dz-preview.dz-error .dz-error-mark{opacity:1;animation:slide-in 3s cubic-bezier(.77,0,.175,1)}.dropzone .dz-preview .dz-success-mark,.dropzone .dz-preview .dz-error-mark{pointer-events:none;opacity:0;z-index:500;position:absolute;display:block;top:50%;left:50%;margin-left:-27px;margin-top:-27px;background:#000c;border-radius:50%}.dropzone .dz-preview .dz-success-mark svg,.dropzone .dz-preview .dz-error-mark svg{display:block;width:54px;height:54px;fill:#fff}.dropzone .dz-preview.dz-processing .dz-progress{opacity:1;transition:all .2s linear}.dropzone .dz-preview.dz-complete .dz-progress{opacity:0;transition:opacity .4s ease-in}.dropzone .dz-preview:not(.dz-processing) .dz-progress{animation:pulse 6s ease infinite}.dropzone .dz-preview .dz-progress{opacity:1;z-index:1000;pointer-events:none;position:absolute;height:20px;top:50%;margin-top:-10px;left:15%;right:15%;border:3px solid rgba(0,0,0,.8);background:#000c;border-radius:10px;overflow:hidden}.dropzone .dz-preview .dz-progress .dz-upload{background:#fff;display:block;position:relative;height:100%;width:0;transition:width .3s ease-in-out;border-radius:17px}.dropzone .dz-preview.dz-error .dz-error-message{display:block}.dropzone .dz-preview.dz-error:hover .dz-error-message{opacity:1;pointer-events:auto}.dropzone .dz-preview .dz-error-message{pointer-events:none;z-index:1000;position:absolute;display:block;display:none;opacity:0;transition:opacity .3s ease;border-radius:8px;font-size:13px;top:130px;left:-10px;width:140px;background:#b10606;padding:.5em 1em;color:#fff}.dropzone .dz-preview .dz-error-message:after{content:"";position:absolute;top:-6px;left:64px;width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid rgb(177,6,6)}.gator-dropzone{font-family:var(--ngc-font-family-body),sans-serif;display:flex;padding:var(--spacing-gap-24, 1.5rem);flex-direction:column;align-items:center;gap:var(--spacing-gap-16, 1rem);align-self:stretch;border-radius:var(--radius-medium, .5rem);border:var(--size-stroke-1, 1px) dashed var(--color-stroke-primary, #6D6D6D)}.gator-dropzone:hover{cursor:pointer;border:var(--size-stroke-1, 1px) dashed var(--color-stroke-primary-hover, #4B4B4B);background:var(--color-surface-hover, #F7F7F7)}.gator-dropzone_dragover{border:var(--size-stroke-2, 2px) solid var(--color-stroke-brand, #11395B)!important;background:var(--color-surface-brand-hover, #E4ECF2)!important;box-shadow:var(--shadow-x-offset-0, 0px) var(--shadow-shadow-1-card-property-1-y-offset, 1px) var(--shadow-shadow-1-card-property-1-blur, 1.5px) var(--shadow-shadow-1-card-property-1-spread, 0px) var(--shadow-color-4, rgba(31, 31, 31, .04)),var(--shadow-x-offset-0, 0px) var(--shadow-shadow-1-card-property-2-y-offset, 2px) var(--shadow-shadow-1-card-property-2-blur, 5px) var(--shadow-shadow-1-card-property-2-spread, 0px) var(--shadow-color-10, rgba(31, 31, 31, .1)),var(--shadow-x-offset-0, 0px) var(--shadow-shadow-1-card-property-3-y-offset, 3px) var(--shadow-shadow-1-card-property-3-blur, 9px) var(--shadow-shadow-1-card-property-3-spread, 6px) var(--shadow-color-5, rgba(31, 31, 31, .05))!important}.gator-dropzone_small{padding:var(--spacing-gap-8, .5rem);align-items:start}.gator-dropzone_error{border:var(--size-stroke-1, 1px) dashed var(--color-stroke-error, #AA330E)}ngc-icon{--ngc-icon-display: inline-flex}.gator-dropzone-content-heading{display:flex;align-items:center;gap:16px}.gator-dropzone-button-content{display:flex;flex-direction:row;align-items:center;gap:var(--spacing-gap-8, .5rem)}.gator-hidden-input-container{display:none}.gator-dropzone-content-accepted-files{display:flex;justify-content:center;gap:var(--spacing-padding-margin-4, 4px);color:var(--help-text-text-color-default, #6D6D6D);margin-top:1rem;text-align:center;font-size:var(--text-size-body-2, 15px);font-style:normal;font-weight:400;line-height:var(--text-line-height-body-2, 22px);letter-spacing:var(--text-letter-spacing-default, 0px)}.gator-dropzone-uploaded-files{margin-top:var(--spacing-gap-12, 12px)}';/**
22
+ `;let D={url:null,method:"post",withCredentials:!1,timeout:null,parallelUploads:2,uploadMultiple:!1,chunking:!1,forceChunking:!1,chunkSize:2097152,parallelChunkUploads:!1,retryChunks:!1,retryChunksLimit:3,maxFilesize:256,paramName:"file",createImageThumbnails:!0,maxThumbnailFilesize:10,thumbnailWidth:120,thumbnailHeight:120,thumbnailMethod:"crop",resizeWidth:null,resizeHeight:null,resizeMimeType:null,resizeQuality:.8,resizeMethod:"contain",filesizeBase:1e3,maxFiles:null,headers:null,defaultHeaders:!0,clickable:!0,ignoreHiddenFiles:!0,acceptedFiles:null,autoProcessQueue:!0,autoQueue:!0,addRemoveLinks:!1,previewsContainer:null,disablePreviews:!1,hiddenInputContainer:"body",capture:null,renameFilename:null,renameFile:null,forceFallback:!1,dictDefaultMessage:"Drop files here to upload",dictFallbackMessage:"Your browser does not support drag'n'drop file uploads.",dictFallbackText:"Please use the fallback form below to upload your files like in the olden days.",dictFileTooBig:"File is too big ({{filesize}}MiB). Max filesize: {{maxFilesize}}MiB.",dictInvalidFileType:"You can't upload files of this type.",dictResponseError:"Server responded with {{statusCode}} code.",dictCancelUpload:"Cancel upload",dictUploadCanceled:"Upload canceled.",dictCancelUploadConfirmation:"Are you sure you want to cancel this upload?",dictRemoveFile:"Remove file",dictRemoveFileConfirmation:null,dictMaxFilesExceeded:"You cannot upload any more files.",dictFileSizeUnits:{tb:"TB",gb:"GB",mb:"MB",kb:"KB",b:"b"},init(){},params(o,e,i){if(i)return{dzuuid:i.file.upload.uuid,dzchunkindex:i.index,dztotalfilesize:i.file.size,dzchunksize:this.options.chunkSize,dztotalchunkcount:i.file.upload.totalChunkCount,dzchunkbyteoffset:i.index*this.options.chunkSize}},accept(o,e){return e()},chunksUploaded:function(o,e){e()},binaryBody:!1,fallback(){let o;this.element.className=`${this.element.className} dz-browser-not-supported`;for(let i of this.element.getElementsByTagName("div"))if(/(^| )dz-message($| )/.test(i.className)){o=i,i.className="dz-message";break}o||(o=n.createElement('<div class="dz-message"><span></span></div>'),this.element.appendChild(o));let e=o.getElementsByTagName("span")[0];return e&&(e.textContent!=null?e.textContent=this.options.dictFallbackMessage:e.innerText!=null&&(e.innerText=this.options.dictFallbackMessage)),this.element.appendChild(this.getFallbackForm())},resize(o,e,i,t){let r={srcX:0,srcY:0,srcWidth:o.width,srcHeight:o.height},s=o.width/o.height;e==null&&i==null?(e=r.srcWidth,i=r.srcHeight):e==null?e=i*s:i==null&&(i=e/s),e=Math.min(e,r.srcWidth),i=Math.min(i,r.srcHeight);let a=e/i;if(r.srcWidth>e||r.srcHeight>i)if(t==="crop")s>a?(r.srcHeight=o.height,r.srcWidth=r.srcHeight*a):(r.srcWidth=o.width,r.srcHeight=r.srcWidth/a);else if(t==="contain")s>a?i=e/s:e=i*s;else throw new Error(`Unknown resizeMethod '${t}'`);return r.srcX=(o.width-r.srcWidth)/2,r.srcY=(o.height-r.srcHeight)/2,r.trgWidth=e,r.trgHeight=i,r},transformFile(o,e){return(this.options.resizeWidth||this.options.resizeHeight)&&o.type.match(/image.*/)?this.resizeImage(o,this.options.resizeWidth,this.options.resizeHeight,this.options.resizeMethod,e):e(o)},previewTemplate:T(x),drop(o){return this.element.classList.remove("dz-drag-hover")},dragstart(o){},dragend(o){return this.element.classList.remove("dz-drag-hover")},dragenter(o){return this.element.classList.add("dz-drag-hover")},dragover(o){return this.element.classList.add("dz-drag-hover")},dragleave(o){return this.element.classList.remove("dz-drag-hover")},paste(o){},reset(){return this.element.classList.remove("dz-started")},addedfile(o){if(this.element===this.previewsContainer&&this.element.classList.add("dz-started"),this.previewsContainer&&!this.options.disablePreviews){o.previewElement=n.createElement(this.options.previewTemplate.trim()),o.previewTemplate=o.previewElement,this.previewsContainer.appendChild(o.previewElement);for(var e of o.previewElement.querySelectorAll("[data-dz-name]"))e.textContent=o.name;for(e of o.previewElement.querySelectorAll("[data-dz-size]"))e.innerHTML=this.filesize(o.size);this.options.addRemoveLinks&&(o._removeLink=n.createElement(`<a class="dz-remove" href="javascript:undefined;" data-dz-remove>${this.options.dictRemoveFile}</a>`),o.previewElement.appendChild(o._removeLink));let i=t=>(t.preventDefault(),t.stopPropagation(),o.status===n.UPLOADING?n.confirm(this.options.dictCancelUploadConfirmation,()=>this.removeFile(o)):this.options.dictRemoveFileConfirmation?n.confirm(this.options.dictRemoveFileConfirmation,()=>this.removeFile(o)):this.removeFile(o));for(let t of o.previewElement.querySelectorAll("[data-dz-remove]"))t.addEventListener("click",i)}},removedfile(o){return o.previewElement!=null&&o.previewElement.parentNode!=null&&o.previewElement.parentNode.removeChild(o.previewElement),this._updateMaxFilesReachedClass()},thumbnail(o,e){if(o.previewElement){o.previewElement.classList.remove("dz-file-preview");for(let i of o.previewElement.querySelectorAll("[data-dz-thumbnail]"))i.alt=o.name,i.src=e;return setTimeout(()=>o.previewElement.classList.add("dz-image-preview"),1)}},error(o,e){if(o.previewElement){o.previewElement.classList.add("dz-error"),typeof e!="string"&&e.error&&(e=e.error);for(let i of o.previewElement.querySelectorAll("[data-dz-errormessage]"))i.textContent=e}},errormultiple(){},processing(o){if(o.previewElement&&(o.previewElement.classList.add("dz-processing"),o._removeLink))return o._removeLink.innerHTML=this.options.dictCancelUpload},processingmultiple(){},uploadprogress(o,e,i){if(o.previewElement)for(let t of o.previewElement.querySelectorAll("[data-dz-uploadprogress]"))t.nodeName==="PROGRESS"?t.value=e:t.style.width=`${e}%`},totaluploadprogress(){},sending(){},sendingmultiple(){},success(o){if(o.previewElement)return o.previewElement.classList.add("dz-success")},successmultiple(){},canceled(o){return this.emit("error",o,this.options.dictUploadCanceled)},canceledmultiple(){},complete(o){if(o._removeLink&&(o._removeLink.innerHTML=this.options.dictRemoveFile),o.previewElement)return o.previewElement.classList.add("dz-complete")},completemultiple(){},maxfilesexceeded(){},maxfilesreached(){},queuecomplete(){},addedfiles(){},emptyfolder(){}};var I=D;class n extends E{static initClass(){this.prototype.Emitter=E,this.prototype.events=["drop","dragstart","dragend","dragenter","dragover","dragleave","addedfile","addedfiles","removedfile","thumbnail","error","errormultiple","processing","processingmultiple","uploadprogress","totaluploadprogress","sending","sendingmultiple","success","successmultiple","canceled","canceledmultiple","complete","completemultiple","reset","maxfilesexceeded","maxfilesreached","queuecomplete","emptyfolder"],this.prototype._thumbnailQueue=[],this.prototype._processingThumbnail=!1}constructor(e,i){super();let t,r;if(this.element=e,this.clickableElements=[],this.listeners=[],this.files=[],typeof this.element=="string"&&(this.element=document.querySelector(this.element)),this.element===null||!this.element instanceof HTMLElement)throw new Error("Invalid dropzone element: not an instance of HTMLElement.");if(this.element.dropzone)throw new Error("Dropzone already attached.");n.instances.push(this),this.element.dropzone=this;let s=(r=n.optionsForElement(this.element))!=null?r:{};if(this.options=Object.assign({},I,s,i??{}),this.options.previewTemplate=this.options.previewTemplate.replace(/\n*/g,""),this.options.forceFallback||!n.isBrowserSupported())return this.options.fallback.call(this);if(this.options.url==null&&(this.options.url=this.element.getAttribute("action")),!this.options.url)throw new Error("No URL provided.");if(this.options.uploadMultiple&&this.options.chunking)throw new Error("You cannot set both: uploadMultiple and chunking.");if(this.options.binaryBody&&this.options.uploadMultiple)throw new Error("You cannot set both: binaryBody and uploadMultiple.");typeof this.options.method=="string"&&(this.options.method=this.options.method.toUpperCase()),(t=this.getExistingFallback())&&t.parentNode&&t.parentNode.removeChild(t),this.options.previewsContainer!==!1&&(this.options.previewsContainer?this.previewsContainer=n.getElement(this.options.previewsContainer,"previewsContainer"):this.previewsContainer=this.element),this.options.clickable&&(this.options.clickable===!0?this.clickableElements=[this.element]:this.clickableElements=n.getElements(this.options.clickable,"clickable")),this.init()}getAcceptedFiles(){return this.files.filter(e=>e.accepted).map(e=>e)}getRejectedFiles(){return this.files.filter(e=>!e.accepted).map(e=>e)}getFilesWithStatus(e){return this.files.filter(i=>i.status===e).map(i=>i)}getQueuedFiles(){return this.getFilesWithStatus(n.QUEUED)}getUploadingFiles(){return this.getFilesWithStatus(n.UPLOADING)}getAddedFiles(){return this.getFilesWithStatus(n.ADDED)}getActiveFiles(){return this.files.filter(e=>e.status===n.UPLOADING||e.status===n.QUEUED).map(e=>e)}init(){if(this.element.tagName==="form"&&this.element.setAttribute("enctype","multipart/form-data"),this.element.classList.contains("dropzone")&&!this.element.querySelector(".dz-message")&&this.element.appendChild(n.createElement(`<div class="dz-default dz-message"><button class="dz-button" type="button">${this.options.dictDefaultMessage}</button></div>`)),this.clickableElements.length){let t=()=>{var r;this.hiddenFileInput&&((r=this.hiddenFileInput.parentNode)==null||r.removeChild(this.hiddenFileInput)),this.hiddenFileInput=document.createElement("input"),this.hiddenFileInput.setAttribute("type","file"),this.hiddenFileInput.setAttribute("form",this.element.id),(this.options.maxFiles===null||this.options.maxFiles>1)&&this.hiddenFileInput.setAttribute("multiple","multiple"),this.hiddenFileInput.className="dz-hidden-input",this.options.acceptedFiles!==null&&this.hiddenFileInput.setAttribute("accept",this.options.acceptedFiles),this.options.capture!==null&&this.hiddenFileInput.setAttribute("capture",this.options.capture),this.hiddenFileInput.setAttribute("tabindex","-1"),this.hiddenFileInput.setAttribute("aria-label","dropzone hidden input"),this.hiddenFileInput.style.visibility="hidden",this.hiddenFileInput.style.position="absolute",this.hiddenFileInput.style.top="0",this.hiddenFileInput.style.left="0",this.hiddenFileInput.style.height="0",this.hiddenFileInput.style.width="0",n.getElement(this.options.hiddenInputContainer,"hiddenInputContainer").appendChild(this.hiddenFileInput),this.hiddenFileInput.addEventListener("change",()=>{let{files:s}=this.hiddenFileInput;if(s.length)for(let a of s)this.addFile(a);this.emit("addedfiles",s),t()})};t()}this.URL=window.URL!==null?window.URL:window.webkitURL;for(let t of this.events)this.on(t,this.options[t]);this.on("uploadprogress",()=>this.updateTotalUploadProgress()),this.on("removedfile",()=>this.updateTotalUploadProgress()),this.on("canceled",t=>this.emit("complete",t)),this.on("complete",t=>{if(this.getAddedFiles().length===0&&this.getUploadingFiles().length===0&&this.getQueuedFiles().length===0)return setTimeout(()=>this.emit("queuecomplete"),0)});const e=function(t){return t.dataTransfer.types&&t.dataTransfer.types.includes("Files")};let i=function(t){if(e(t))return t.stopPropagation(),t.preventDefault()};return this.listeners=[{element:this.element,events:{dragstart:t=>this.emit("dragstart",t),dragenter:t=>(i(t),this.emit("dragenter",t)),dragover:t=>{const r=t.dataTransfer.effectAllowed;return t.dataTransfer.dropEffect=r==="move"||r==="linkMove"?"move":"copy",i(t),this.emit("dragover",t)},dragleave:t=>this.emit("dragleave",t),drop:t=>(i(t),this.drop(t)),dragend:t=>this.emit("dragend",t)}}],this.clickableElements.forEach(t=>this.listeners.push({element:t,events:{click:r=>((t!==this.element||r.target===this.element||n.elementInside(r.target,this.element.querySelector(".dz-message")))&&this.hiddenFileInput.click(),!0)}})),this.enable(),this.options.init.call(this)}destroy(){return this.disable(),this.removeAllFiles(!0),this.hiddenFileInput!=null&&this.hiddenFileInput.parentNode&&(this.hiddenFileInput.parentNode.removeChild(this.hiddenFileInput),this.hiddenFileInput=null),delete this.element.dropzone,n.instances.splice(n.instances.indexOf(this),1)}updateTotalUploadProgress(){let e,i=0,t=0;if(this.getActiveFiles().length){for(let s of this.getActiveFiles())i+=s.upload.bytesSent,t+=s.upload.total;e=100*i/t}else e=100;return this.emit("totaluploadprogress",e,t,i)}_getParamName(e){return typeof this.options.paramName=="function"?this.options.paramName(e):`${this.options.paramName}${this.options.uploadMultiple?`[${e}]`:""}`}_renameFile(e){const i={...e,name:e.name.replace(/\u202F/g," ")};return typeof this.options.renameFile!="function"?i.name:this.options.renameFile(i)}getFallbackForm(){let e,i;if(e=this.getExistingFallback())return e;let t='<div class="dz-fallback">';this.options.dictFallbackText&&(t+=`<p>${this.options.dictFallbackText}</p>`),t+=`<input type="file" name="${this._getParamName(0)}" ${this.options.uploadMultiple?'multiple="multiple"':void 0} /><input type="submit" value="Upload!"></div>`;let r=n.createElement(t);return this.element.tagName!=="FORM"?(i=n.createElement(`<form action="${this.options.url}" enctype="multipart/form-data" method="${this.options.method}"></form>`),i.appendChild(r)):(this.element.setAttribute("enctype","multipart/form-data"),this.element.setAttribute("method",this.options.method)),i??r}getExistingFallback(){let e=function(t){for(let r of t)if(/(^| )fallback($| )/.test(r.className))return r};for(let t of["div","form"]){var i;if(i=e(this.element.getElementsByTagName(t)))return i}}setupEventListeners(){return this.listeners.map(e=>(()=>{let i=[];for(let t in e.events){let r=e.events[t];i.push(e.element.addEventListener(t,r,!1))}return i})())}removeEventListeners(){return this.listeners.map(e=>(()=>{let i=[];for(let t in e.events){let r=e.events[t];i.push(e.element.removeEventListener(t,r,!1))}return i})())}disable(){return this.clickableElements.forEach(e=>e.classList.remove("dz-clickable")),this.removeEventListeners(),this.disabled=!0,this.files.map(e=>this.cancelUpload(e))}enable(){return delete this.disabled,this.clickableElements.forEach(e=>e.classList.add("dz-clickable")),this.setupEventListeners()}filesize(e){let i=0,t="b";if(e>0){let r=["tb","gb","mb","kb","b"];for(let s=0;s<r.length;s++){let a=r[s],p=Math.pow(this.options.filesizeBase,4-s)/10;if(e>=p){i=e/Math.pow(this.options.filesizeBase,4-s),t=a;break}}i=Math.round(10*i)/10}return`<strong>${i}</strong> ${this.options.dictFileSizeUnits[t]}`}_updateMaxFilesReachedClass(){return this.options.maxFiles!=null&&this.getAcceptedFiles().length>=this.options.maxFiles?(this.getAcceptedFiles().length===this.options.maxFiles&&this.emit("maxfilesreached",this.files),this.element.classList.add("dz-max-files-reached")):this.element.classList.remove("dz-max-files-reached")}drop(e){if(!e.dataTransfer)return;this.emit("drop",e);let i=[];for(let t=0;t<e.dataTransfer.files.length;t++)i[t]=e.dataTransfer.files[t];if(i.length){let{items:t}=e.dataTransfer;t&&t.length&&t[0].webkitGetAsEntry!=null?this._addFilesFromItems(t):this.handleFiles(i)}this.emit("addedfiles",i)}paste(e){if(O(e!=null?e.clipboardData:void 0,t=>t.items)==null)return;this.emit("paste",e);let{items:i}=e.clipboardData;if(i.length)return this._addFilesFromItems(i)}handleFiles(e){for(let i of e)this.addFile(i)}_addFilesFromItems(e){return(()=>{let i=[];for(let r of e){var t;r.webkitGetAsEntry!=null&&(t=r.webkitGetAsEntry())?t.isFile?i.push(this.addFile(r.getAsFile())):t.isDirectory?i.push(this._addFilesFromDirectory(t,t.name)):i.push(void 0):r.getAsFile!=null&&(r.kind==null||r.kind==="file")?i.push(this.addFile(r.getAsFile())):i.push(void 0)}return i})()}_addFilesFromDirectory(e,i){let t=e.createReader(),r=p=>W(console,"log",d=>d.log(p)),s=0;var a=()=>t.readEntries(p=>{if(p.length>0){for(let d of p)d.isFile?(++s,d.file(l=>{if(!(this.options.ignoreHiddenFiles&&l.name.substring(0,1)==="."))return l.fullPath=`${i}/${l.name}`,this.addFile(l)})):d.isDirectory&&this._addFilesFromDirectory(d,`${i}/${d.name}`);a()}else s===0&&this.emit("emptyfolder",i);return null},r);return a()}accept(e,i){this.options.maxFilesize&&e.size>this.options.maxFilesize*1048576?i(this.options.dictFileTooBig.replace("{{filesize}}",Math.round(e.size/1024/10.24)/100).replace("{{maxFilesize}}",this.options.maxFilesize)):n.isValidFile(e,this.options.acceptedFiles)?this.options.maxFiles!=null&&this.getAcceptedFiles().length>=this.options.maxFiles?(i(this.options.dictMaxFilesExceeded.replace("{{maxFiles}}",this.options.maxFiles)),this.emit("maxfilesexceeded",e)):this.options.accept.call(this,e,i):i(this.options.dictInvalidFileType)}addFile(e){e.upload={uuid:window.isSecureContext?self.crypto.randomUUID():n.uuidv4(),progress:0,total:e.size,bytesSent:0,filename:this._renameFile(e)},this.files.push(e),e.status=n.ADDED,this.emit("addedfile",e),this._enqueueThumbnail(e),this.accept(e,i=>{i?(e.accepted=!1,this._errorProcessing([e],i)):(e.accepted=!0,this.options.autoQueue&&this.enqueueFile(e)),this._updateMaxFilesReachedClass()})}enqueueFiles(e){for(let i of e)this.enqueueFile(i);return null}enqueueFile(e){if(e.status===n.ADDED&&e.accepted===!0){if(e.status=n.QUEUED,this.options.autoProcessQueue)return setTimeout(()=>this.processQueue(),0)}else throw new Error("This file can't be queued because it has already been processed or was rejected.")}_enqueueThumbnail(e){if(this.options.createImageThumbnails&&e.type.match(/image.*/)&&e.size<=this.options.maxThumbnailFilesize*1048576)return this._thumbnailQueue.push(e),setTimeout(()=>this._processThumbnailQueue(),0)}_processThumbnailQueue(){if(this._processingThumbnail||this._thumbnailQueue.length===0)return;this._processingThumbnail=!0;let e=this._thumbnailQueue.shift();return this.createThumbnail(e,this.options.thumbnailWidth,this.options.thumbnailHeight,this.options.thumbnailMethod,!0,i=>(this.emit("thumbnail",e,i),this._processingThumbnail=!1,this._processThumbnailQueue()))}removeFile(e){if(e.status===n.UPLOADING&&this.cancelUpload(e),this.files=R(this.files,e),this.emit("removedfile",e),this.files.length===0)return this.emit("reset")}removeAllFiles(e){e==null&&(e=!1);for(let i of this.files.slice())(i.status!==n.UPLOADING||e)&&this.removeFile(i);return null}resizeImage(e,i,t,r,s){return this.createThumbnail(e,i,t,r,!0,(a,p)=>{if(p==null)return s(e);{let{resizeMimeType:d}=this.options;d==null&&(d=e.type);let l=p.toDataURL(d,this.options.resizeQuality);return(d==="image/jpeg"||d==="image/jpg")&&(l=q(e.dataURL,l)),s(n.dataURItoBlob(l))}},!0)}createThumbnail(e,i,t,r,s,a,p=!1){let d=new FileReader;d.onload=()=>{if(e.dataURL=d.result,e.type==="image/svg+xml"){a!=null&&a(d.result);return}this.createThumbnailFromUrl(e,i,t,r,s,a,void 0,p)},d.readAsDataURL(e)}displayExistingFile(e,i,t,r,s=!0){if(this.emit("addedfile",e),this.emit("complete",e),!s)this.emit("thumbnail",e,i),t&&t();else{let a=p=>{this.emit("thumbnail",e,p),t&&t()};e.dataURL=i,this.createThumbnailFromUrl(e,this.options.thumbnailWidth,this.options.thumbnailHeight,this.options.thumbnailMethod,this.options.fixOrientation,a,r)}}createThumbnailFromUrl(e,i,t,r,s,a,p,d=!1){let l=document.createElement("img");p&&(l.crossOrigin=p),s=getComputedStyle(document.body).imageOrientation=="from-image"?!1:s,l.onload=()=>{let g=f=>f(1);return typeof EXIF<"u"&&EXIF!==null&&s&&(g=f=>EXIF.getData(l,function(){return f(EXIF.getTag(this,"Orientation"))})),g(f=>{e.width=l.width,e.height=l.height;let h=this.options.resize.call(this,e,i,t,r),c=document.createElement("canvas"),m=c.getContext("2d");switch(c.width=h.trgWidth,c.height=h.trgHeight,f>4&&(c.width=h.trgHeight,c.height=h.trgWidth),f){case 2:m.translate(c.width,0),m.scale(-1,1);break;case 3:m.translate(c.width,c.height),m.rotate(Math.PI);break;case 4:m.translate(0,c.height),m.scale(1,-1);break;case 5:m.rotate(.5*Math.PI),m.scale(1,-1);break;case 6:m.rotate(.5*Math.PI),m.translate(0,-c.width);break;case 7:m.rotate(.5*Math.PI),m.translate(c.height,-c.width),m.scale(-1,1);break;case 8:m.rotate(-.5*Math.PI),m.translate(-c.height,0);break}P(m,l,h.srcX!=null?h.srcX:0,h.srcY!=null?h.srcY:0,h.srcWidth,h.srcHeight,h.trgX!=null?h.trgX:0,h.trgY!=null?h.trgY:0,h.trgWidth,h.trgHeight);let L=c.toDataURL("image/png");if(a!=null)return a(L,c)})},a!=null&&(l.onerror=a);var u=e.dataURL;return d&&(u=H(u)),l.src=u}processQueue(){let{parallelUploads:e}=this.options,i=this.getUploadingFiles().length,t=i;if(i>=e)return;let r=this.getQueuedFiles();if(r.length>0){if(this.options.uploadMultiple)return this.processFiles(r.slice(0,e-i));for(;t<e;){if(!r.length)return;this.processFile(r.shift()),t++}}}processFile(e){return this.processFiles([e])}processFiles(e){for(let i of e)i.processing=!0,i.status=n.UPLOADING,this.emit("processing",i);return this.options.uploadMultiple&&this.emit("processingmultiple",e),this.uploadFiles(e)}_getFilesWithXhr(e){return this.files.filter(i=>i.xhr===e).map(i=>i)}cancelUpload(e){if(e.status===n.UPLOADING){let i=this._getFilesWithXhr(e.xhr);for(let t of i)t.status=n.CANCELED;typeof e.xhr<"u"&&e.xhr.abort();for(let t of i)this.emit("canceled",t);this.options.uploadMultiple&&this.emit("canceledmultiple",i)}else(e.status===n.ADDED||e.status===n.QUEUED)&&(e.status=n.CANCELED,this.emit("canceled",e),this.options.uploadMultiple&&this.emit("canceledmultiple",[e]));if(this.options.autoProcessQueue)return this.processQueue()}resolveOption(e,...i){return typeof e=="function"?e.apply(this,i):e}uploadFile(e){return this.uploadFiles([e])}uploadFiles(e){this._transformFiles(e,i=>{if(this.options.chunking){let t=i[0];e[0].upload.chunked=this.options.chunking&&(this.options.forceChunking||t.size>this.options.chunkSize),e[0].upload.totalChunkCount=Math.ceil(t.size/this.options.chunkSize),t.size===0&&(e[0].upload.totalChunkCount=1)}if(e[0].upload.chunked){let t=e[0],r=i[0];t.upload.chunks=[];let s=()=>{let a=0;for(;t.upload.chunks[a]!==void 0;)a++;if(a>=t.upload.totalChunkCount)return;let p=a*this.options.chunkSize,d=Math.min(p+this.options.chunkSize,r.size),l={name:this._getParamName(0),data:r.webkitSlice?r.webkitSlice(p,d):r.slice(p,d),filename:t.upload.filename,chunkIndex:a};t.upload.chunks[a]={file:t,index:a,dataBlock:l,status:n.UPLOADING,progress:0,retries:0},this._uploadData(e,[l])};if(t.upload.finishedChunkUpload=(a,p)=>{let d=!0;a.status=n.SUCCESS,a.dataBlock=null,a.response=a.xhr.responseText,a.responseHeaders=a.xhr.getAllResponseHeaders(),a.xhr=null;for(let l=0;l<t.upload.totalChunkCount;l++){if(t.upload.chunks[l]===void 0)return s();t.upload.chunks[l].status!==n.SUCCESS&&(d=!1)}d&&this.options.chunksUploaded(t,()=>{this._finished(e,p,null)})},this.options.parallelChunkUploads){const a=Math.min(this.options.parallelChunkUploads===!0?this.options.parallelUploads:this.options.parallelChunkUploads,t.upload.totalChunkCount);for(let p=0;p<a;p++)s()}else s()}else{let t=[];for(let r=0;r<e.length;r++)t[r]={name:this._getParamName(r),data:i[r],filename:e[r].upload.filename};this._uploadData(e,t)}})}_getChunk(e,i){for(let t=0;t<e.upload.totalChunkCount;t++)if(e.upload.chunks[t]!==void 0&&e.upload.chunks[t].xhr===i)return e.upload.chunks[t]}_uploadData(e,i){let t=new XMLHttpRequest;for(let l of e)l.xhr=t;e[0].upload.chunked&&(e[0].upload.chunks[i[0].chunkIndex].xhr=t);let r=this.resolveOption(this.options.method,e,i),s=this.resolveOption(this.options.url,e,i);t.open(r,s,!0),this.resolveOption(this.options.timeout,e)&&(t.timeout=this.resolveOption(this.options.timeout,e)),t.withCredentials=!!this.options.withCredentials,t.onload=l=>{this._finishedUploading(e,t,l)},t.ontimeout=()=>{this._handleUploadError(e,t,`Request timedout after ${this.options.timeout/1e3} seconds`)},t.onerror=()=>{this._handleUploadError(e,t)};let p=t.upload!=null?t.upload:t;p.onprogress=l=>this._updateFilesUploadProgress(e,t,l);let d=this.options.defaultHeaders?{Accept:"application/json","Cache-Control":"no-cache","X-Requested-With":"XMLHttpRequest"}:{};this.options.binaryBody&&(d["Content-Type"]=e[0].type),this.options.headers&&Object.assign(d,this.options.headers);for(let l in d){let u=d[l];u&&t.setRequestHeader(l,u)}if(this.options.binaryBody){for(let l of e)this.emit("sending",l,t);this.options.uploadMultiple&&this.emit("sendingmultiple",e,t),this.submitRequest(t,null,e)}else{let l=new FormData;if(this.options.params){let u=this.options.params;typeof u=="function"&&(u=u.call(this,e,t,e[0].upload.chunked?this._getChunk(e[0],t):null));for(let g in u){let f=u[g];if(Array.isArray(f))for(let h=0;h<f.length;h++)l.append(g,f[h]);else l.append(g,f)}}for(let u of e)this.emit("sending",u,t,l);this.options.uploadMultiple&&this.emit("sendingmultiple",e,t,l),this._addFormElementData(l);for(let u=0;u<i.length;u++){let g=i[u];l.append(g.name,g.data,g.filename)}this.submitRequest(t,l,e)}}_transformFiles(e,i){let t=[],r=0;for(let s=0;s<e.length;s++)this.options.transformFile.call(this,e[s],a=>{t[s]=a,++r===e.length&&i(t)})}_addFormElementData(e){if(this.element.tagName==="FORM")for(let i of this.element.querySelectorAll("input, textarea, select, button")){let t=i.getAttribute("name"),r=i.getAttribute("type");if(r&&(r=r.toLowerCase()),!(typeof t>"u"||t===null))if(i.tagName==="SELECT"&&i.hasAttribute("multiple"))for(let s of i.options)s.selected&&e.append(t,s.value);else(!r||r!=="checkbox"&&r!=="radio"||i.checked)&&e.append(t,i.value)}}_updateFilesUploadProgress(e,i,t){if(e[0].upload.chunked){let r=e[0],s=this._getChunk(r,i);t?(s.progress=100*t.loaded/t.total,s.total=t.total,s.bytesSent=t.loaded):(s.progress=100,s.bytesSent=s.total),r.upload.progress=0,r.upload.total=0,r.upload.bytesSent=0;for(let a=0;a<r.upload.totalChunkCount;a++)r.upload.chunks[a]&&typeof r.upload.chunks[a].progress<"u"&&(r.upload.progress+=r.upload.chunks[a].progress,r.upload.total+=r.upload.chunks[a].total,r.upload.bytesSent+=r.upload.chunks[a].bytesSent);r.upload.progress=r.upload.progress/r.upload.totalChunkCount,this.emit("uploadprogress",r,r.upload.progress,r.upload.bytesSent)}else for(let r of e)r.upload.total&&r.upload.bytesSent&&r.upload.bytesSent==r.upload.total||(t?(r.upload.progress=100*t.loaded/t.total,r.upload.total=t.total,r.upload.bytesSent=t.loaded):(r.upload.progress=100,r.upload.bytesSent=r.upload.total),this.emit("uploadprogress",r,r.upload.progress,r.upload.bytesSent))}_finishedUploading(e,i,t){let r;if(e[0].status!==n.CANCELED&&i.readyState===4){if(i.responseType!=="arraybuffer"&&i.responseType!=="blob"&&(r=i.responseText,i.getResponseHeader("content-type")&&~i.getResponseHeader("content-type").indexOf("application/json")))try{r=JSON.parse(r)}catch(s){t=s,r="Invalid JSON response from server."}this._updateFilesUploadProgress(e,i),200<=i.status&&i.status<300?e[0].upload.chunked?e[0].upload.finishedChunkUpload(this._getChunk(e[0],i),r):this._finished(e,r,t):this._handleUploadError(e,i,r)}}_handleUploadError(e,i,t){if(e[0].status!==n.CANCELED){if(e[0].upload.chunked&&this.options.retryChunks){let r=this._getChunk(e[0],i);if(r.retries++<this.options.retryChunksLimit){this._uploadData(e,[r.dataBlock]);return}else console.warn("Retried this chunk too often. Giving up.")}this._errorProcessing(e,t||this.options.dictResponseError.replace("{{statusCode}}",i.status),i)}}submitRequest(e,i,t){if(e.readyState!=1){console.warn("Cannot send this request because the XMLHttpRequest.readyState is not OPENED.");return}if(this.options.binaryBody)if(t[0].upload.chunked){const r=this._getChunk(t[0],e);e.send(r.dataBlock.data)}else e.send(t[0]);else e.send(i)}_finished(e,i,t){for(let r of e)r.status=n.SUCCESS,this.emit("success",r,i,t),this.emit("complete",r);if(this.options.uploadMultiple&&(this.emit("successmultiple",e,i,t),this.emit("completemultiple",e)),this.options.autoProcessQueue)return this.processQueue()}_errorProcessing(e,i,t){for(let r of e)r.status=n.ERROR,this.emit("error",r,i,t),this.emit("complete",r);if(this.options.uploadMultiple&&(this.emit("errormultiple",e,i,t),this.emit("completemultiple",e)),this.options.autoProcessQueue)return this.processQueue()}static uuidv4(){return"10000000-1000-4000-8000-100000000000".replace(/[018]/g,e=>(+e^crypto.getRandomValues(new Uint8Array(1))[0]&15>>+e/4).toString(16))}}n.initClass();n.options={};n.optionsForElement=function(o){if(o.getAttribute("id")&&typeof n.options<"u")return n.options[M(o.getAttribute("id"))]};n.instances=[];n.forElement=function(o){if(typeof o=="string"&&(o=document.querySelector(o)),(o!=null?o.dropzone:void 0)==null)throw new Error("No Dropzone found for given element. This is probably because you're trying to access it before Dropzone had the time to initialize. Use the `init` option to setup any additional observers on your Dropzone.");return o.dropzone};n.discover=function(){let o;if(document.querySelectorAll)o=document.querySelectorAll(".dropzone");else{o=[];let e=i=>(()=>{let t=[];for(let r of i)/(^| )dropzone($| )/.test(r.className)?t.push(o.push(r)):t.push(void 0);return t})();e(document.getElementsByTagName("div")),e(document.getElementsByTagName("form"))}return(()=>{let e=[];for(let i of o)n.optionsForElement(i)!==!1?e.push(new n(i)):e.push(void 0);return e})()};n.isBrowserSupported=function(){return typeof Promise<"u"};n.dataURItoBlob=function(o){let e=atob(o.split(",")[1]),i=o.split(",")[0].split(":")[1].split(";")[0],t=new ArrayBuffer(e.length),r=new Uint8Array(t);for(let s=0,a=e.length,p=0<=a;p?s<=a:s>=a;p?s++:s--)r[s]=e.charCodeAt(s);return new Blob([t],{type:i})};const R=(o,e)=>o.filter(i=>i!==e).map(i=>i),M=o=>o.replace(/[\-_](\w)/g,e=>e.charAt(1).toUpperCase());n.createElement=function(o){let e=document.createElement("div");return e.innerHTML=o,e.childNodes[0]};n.elementInside=function(o,e){if(o===e)return!0;for(;o=o.parentNode;)if(o===e)return!0;return!1};n.getElement=function(o,e){let i;if(typeof o=="string"?i=document.querySelector(o):o.nodeType!=null&&(i=o),i==null)throw new Error(`Invalid \`${e}\` option provided. Please provide a CSS selector or a plain HTML element.`);return i};n.getElements=function(o,e){let i,t;if(o instanceof Array){t=[];try{for(i of o)t.push(this.getElement(i,e))}catch{t=null}}else if(typeof o=="string"){t=[];for(i of document.querySelectorAll(o))t.push(i)}else o.nodeType!=null&&(t=[o]);if(t==null||!t.length)throw new Error(`Invalid \`${e}\` option provided. Please provide a CSS selector, a plain HTML element or a list of those.`);return t};n.confirm=function(o,e,i){if(window.confirm(o))return e();if(i!=null)return i()};n.isValidFile=function(o,e){if(!e)return!0;e=e.split(",");let i=o.type,t=i.replace(/\/.*$/,"");for(let r of e)if(r=r.trim(),r.charAt(0)==="."){if(o.name.toLowerCase().indexOf(r.toLowerCase(),o.name.length-r.length)!==-1)return!0}else if(/\/\*$/.test(r)){if(t===r.replace(/\/.*$/,""))return!0}else if(i===r)return!0;return!1};typeof jQuery<"u"&&jQuery!==null&&(jQuery.fn.dropzone=function(o){return this.each(function(){return new n(this,o)})});n.ADDED="added";n.QUEUED="queued";n.ACCEPTED=n.QUEUED;n.UPLOADING="uploading";n.PROCESSING=n.UPLOADING;n.CANCELED="canceled";n.ERROR="error";n.SUCCESS="success";let N=function(o){let e=o.naturalHeight,i=document.createElement("canvas");i.width=1,i.height=e;let t=i.getContext("2d");t.drawImage(o,0,0);let{data:r}=t.getImageData(1,0,1,e),s=0,a=e,p=e;for(;p>s;)r[(p-1)*4+3]===0?a=p:s=p,p=a+s>>1;let d=p/e;return d===0?1:d};var P=function(o,e,i,t,r,s,a,p,d,l){let u=N(e);return o.drawImage(e,i,t,r,s,a,p,d,l/u)};function H(o){var e="data:image/jpeg;base64,";if(!o.startsWith(e))return o;var i=window.atob(o.slice(e.length));if(!i.startsWith("ÿØÿ"))return o;for(var t=0,r="";t<i.length;)if(i.slice(t,t+2)=="ÿÚ"){r+=i.slice(t);break}else if(i.slice(t,t+2)=="ÿØ")r+=i.slice(t,t+2),t+=2;else{var s=i.charCodeAt(t+2)*256+i.charCodeAt(t+3),a=t+s+2,p=i.slice(t,a);p.startsWith("ÿá")||(r+=p),t=a}return e+window.btoa(r)}function q(o,e){var i="data:image/jpeg;base64,";if(!(o.startsWith(i)&&e.startsWith(i)))return e;var t=window.atob(o.slice(i.length));if(!t.startsWith("ÿØÿ"))return e;for(var r=0,s="";r<t.length&&t.slice(r,r+2)!="ÿÚ";)if(t.slice(r,r+2)=="ÿØ")r+=2;else{var a=t.charCodeAt(r+2)*256+t.charCodeAt(r+3),p=r+a+2,d=t.slice(r,p);d.startsWith("ÿá")&&(s+=d),r=p}if(s=="")return e;var l=window.atob(e.slice(i.length));if(!l.startsWith("ÿØÿ"))return e;var u=4+l.charCodeAt(4)*256+l.charCodeAt(5);return l=l.slice(0,u)+s+l.slice(u),i+window.btoa(l)}function O(o,e){return typeof o<"u"&&o!==null?e(o):void 0}function W(o,e,i){if(typeof o<"u"&&o!==null&&typeof o[e]=="function")return i(o,e)}const Q='@keyframes passing-through{0%{opacity:0;transform:translateY(40px)}30%,70%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-40px)}}@keyframes slide-in{0%{opacity:0;transform:translateY(40px)}30%{opacity:1;transform:translateY(0)}}@keyframes pulse{0%{transform:scale(1)}10%{transform:scale(1.1)}20%{transform:scale(1)}}.dropzone,.dropzone *{box-sizing:border-box}.dropzone{min-height:150px;border:1px solid rgba(0,0,0,.8);border-radius:5px;padding:20px}.dropzone.dz-clickable{cursor:pointer}.dropzone.dz-clickable *{cursor:default}.dropzone.dz-clickable .dz-message,.dropzone.dz-clickable .dz-message *{cursor:pointer}.dropzone.dz-started .dz-message{display:none}.dropzone.dz-drag-hover{border-style:solid}.dropzone.dz-drag-hover .dz-message{opacity:.5}.dropzone .dz-message{text-align:center;margin:3em 0}.dropzone .dz-message .dz-button{background:none;color:inherit;border:none;padding:0;font:inherit;cursor:pointer;outline:inherit}.dropzone .dz-preview{position:relative;display:inline-block;vertical-align:top;margin:16px;min-height:100px}.dropzone .dz-preview:hover{z-index:1000}.dropzone .dz-preview.dz-file-preview .dz-image{border-radius:20px;background:#999;background:linear-gradient(to bottom,#eee,#ddd)}.dropzone .dz-preview.dz-file-preview .dz-details{opacity:1}.dropzone .dz-preview.dz-image-preview{background:#fff}.dropzone .dz-preview.dz-image-preview .dz-details{transition:opacity .2s linear}.dropzone .dz-preview .dz-remove{font-size:14px;text-align:center;display:block;cursor:pointer;border:none}.dropzone .dz-preview .dz-remove:hover{text-decoration:underline}.dropzone .dz-preview:hover .dz-details{opacity:1}.dropzone .dz-preview .dz-details{z-index:20;position:absolute;top:0;left:0;opacity:0;font-size:13px;min-width:100%;max-width:100%;padding:2em 1em;text-align:center;color:#000000e6;line-height:150%}.dropzone .dz-preview .dz-details .dz-size{margin-bottom:1em;font-size:16px}.dropzone .dz-preview .dz-details .dz-filename{white-space:nowrap}.dropzone .dz-preview .dz-details .dz-filename:hover span{border:1px solid rgba(200,200,200,.8);background-color:#fffc}.dropzone .dz-preview .dz-details .dz-filename:not(:hover){overflow:hidden;text-overflow:ellipsis}.dropzone .dz-preview .dz-details .dz-filename:not(:hover) span{border:1px solid transparent}.dropzone .dz-preview .dz-details .dz-filename span,.dropzone .dz-preview .dz-details .dz-size span{background-color:#fff6;padding:0 .4em;border-radius:3px}.dropzone .dz-preview:hover .dz-image img{transform:scale(1.05);filter:blur(8px)}.dropzone .dz-preview .dz-image{border-radius:20px;overflow:hidden;width:120px;height:120px;position:relative;display:block;z-index:10}.dropzone .dz-preview .dz-image img{display:block}.dropzone .dz-preview.dz-success .dz-success-mark{animation:passing-through 3s cubic-bezier(.77,0,.175,1)}.dropzone .dz-preview.dz-error .dz-error-mark{opacity:1;animation:slide-in 3s cubic-bezier(.77,0,.175,1)}.dropzone .dz-preview .dz-success-mark,.dropzone .dz-preview .dz-error-mark{pointer-events:none;opacity:0;z-index:500;position:absolute;display:block;top:50%;left:50%;margin-left:-27px;margin-top:-27px;background:#000c;border-radius:50%}.dropzone .dz-preview .dz-success-mark svg,.dropzone .dz-preview .dz-error-mark svg{display:block;width:54px;height:54px;fill:#fff}.dropzone .dz-preview.dz-processing .dz-progress{opacity:1;transition:all .2s linear}.dropzone .dz-preview.dz-complete .dz-progress{opacity:0;transition:opacity .4s ease-in}.dropzone .dz-preview:not(.dz-processing) .dz-progress{animation:pulse 6s ease infinite}.dropzone .dz-preview .dz-progress{opacity:1;z-index:1000;pointer-events:none;position:absolute;height:20px;top:50%;margin-top:-10px;left:15%;right:15%;border:3px solid rgba(0,0,0,.8);background:#000c;border-radius:10px;overflow:hidden}.dropzone .dz-preview .dz-progress .dz-upload{background:#fff;display:block;position:relative;height:100%;width:0;transition:width .3s ease-in-out;border-radius:17px}.dropzone .dz-preview.dz-error .dz-error-message{display:block}.dropzone .dz-preview.dz-error:hover .dz-error-message{opacity:1;pointer-events:auto}.dropzone .dz-preview .dz-error-message{pointer-events:none;z-index:1000;position:absolute;display:block;display:none;opacity:0;transition:opacity .3s ease;border-radius:8px;font-size:13px;top:130px;left:-10px;width:140px;background:#b10606;padding:.5em 1em;color:#fff}.dropzone .dz-preview .dz-error-message:after{content:"";position:absolute;top:-6px;left:64px;width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid rgb(177,6,6)}.gator-dropzone{font-family:var(--ngc-font-family-body),sans-serif;display:flex;padding:var(--spacing-gap-24, 1.5rem);flex-direction:column;align-items:center;gap:var(--spacing-gap-16, 1rem);align-self:stretch;border-radius:var(--radius-medium, .5rem);border:var(--size-stroke-1, 1px) dashed var(--color-stroke-primary, #6D6D6D)}.gator-dropzone:hover{cursor:pointer;border:var(--size-stroke-1, 1px) dashed var(--color-stroke-primary-hover, #4B4B4B);background:var(--color-surface-hover, #F7F7F7)}.gator-dropzone_dragover{border:var(--size-stroke-2, 2px) solid var(--color-stroke-brand, #11395B)!important;background:var(--color-surface-brand-hover, #E4ECF2)!important;box-shadow:var(--shadow-x-offset-0, 0px) var(--shadow-shadow-1-card-property-1-y-offset, 1px) var(--shadow-shadow-1-card-property-1-blur, 1.5px) var(--shadow-shadow-1-card-property-1-spread, 0px) var(--shadow-color-4, rgba(31, 31, 31, .04)),var(--shadow-x-offset-0, 0px) var(--shadow-shadow-1-card-property-2-y-offset, 2px) var(--shadow-shadow-1-card-property-2-blur, 5px) var(--shadow-shadow-1-card-property-2-spread, 0px) var(--shadow-color-10, rgba(31, 31, 31, .1)),var(--shadow-x-offset-0, 0px) var(--shadow-shadow-1-card-property-3-y-offset, 3px) var(--shadow-shadow-1-card-property-3-blur, 9px) var(--shadow-shadow-1-card-property-3-spread, 6px) var(--shadow-color-5, rgba(31, 31, 31, .05))!important}.gator-dropzone_small{padding:var(--spacing-gap-8, .5rem);align-items:start}.gator-dropzone_error{border:var(--size-stroke-1, 1px) dashed var(--color-stroke-error, #AA330E)}ngc-icon{--ngc-icon-display: inline-flex}.gator-dropzone-content-heading{display:flex;align-items:center;gap:16px}.gator-dropzone-button-content{display:flex;flex-direction:row;align-items:center;gap:var(--spacing-gap-8, .5rem)}.gator-hidden-input-container{display:none}.gator-dropzone-content-accepted-files{display:flex;justify-content:center;gap:var(--spacing-padding-margin-4, 4px);color:var(--help-text-text-color-default, #6D6D6D);margin-top:1rem;text-align:center;font-size:var(--text-size-body-2, 15px);font-style:normal;font-weight:400;line-height:var(--text-line-height-body-2, 22px);letter-spacing:var(--text-letter-spacing-default, 0px)}.gator-dropzone-uploaded-files{margin-top:var(--spacing-gap-12, 12px)}';/**
23
23
  * @license
24
24
  * Copyright 2021 Google LLC
25
25
  * SPDX-License-Identifier: BSD-3-Clause
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@ncino/web-components",
3
3
  "author": "nCino",
4
- "version": "3.0.0",
4
+ "version": "3.0.1-preview.1",
5
5
  "license": "(c) Copyright 2023 nCino, Inc., all rights reserved",
6
6
  "publishConfig": {
7
7
  "registry": "https://registry.npmjs.org/"
@@ -58,7 +58,7 @@
58
58
  "test:coverage": "vitest --coverage.enabled true"
59
59
  },
60
60
  "dependencies": {
61
- "@deltablot/dropzone": "^7.2.0",
61
+ "@deltablot/dropzone": "^7.3.0",
62
62
  "@floating-ui/dom": "^1.6.13",
63
63
  "@lit/localize": "^0.12.2",
64
64
  "ckeditor5": "^44.3.0",
package/web-types.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://raw.githubusercontent.com/JetBrains/web-types/master/schema/web-types.json",
3
3
  "name": "@ncino/web-components",
4
- "version": "3.0.0-preview.4",
4
+ "version": "3.0.0",
5
5
  "description-markup": "markdown",
6
6
  "contributions": {
7
7
  "html": {