!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@angular/platform-browser"),require("primeng/button"),require("primeng/messages"),require("primeng/progressbar"),require("primeng/dom"),require("primeng/api"),require("primeng/ripple"),require("@angular/common/http")):"function"==typeof define&&define.amd?define("primeng/fileupload",["exports","@angular/core","@angular/common","@angular/platform-browser","primeng/button","primeng/messages","primeng/progressbar","primeng/dom","primeng/api","primeng/ripple","@angular/common/http"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).primeng=e.primeng||{},e.primeng.fileupload={}),e.ng.core,e.ng.common,e.ng.platformBrowser,e.primeng.button,e.primeng.messages,e.primeng.progressbar,e.primeng.dom,e.primeng.api,e.primeng.ripple,e.ng.common.http)}(this,(function(e,t,i,n,o,s,l,a,p,r,u){"use strict"; /*! ***************************************************************************** Copyright (c) Microsoft Corporation. Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted. THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ***************************************************************************** */Object.create;function d(e){var t="function"==typeof Symbol&&Symbol.iterator,i=t&&e[t],n=0;if(i)return i.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}Object.create;var c=function(){function e(e,i,n,o,s){this.el=e,this.sanitizer=i,this.zone=n,this.http=o,this.cd=s,this.method="POST",this.invalidFileSizeMessageSummary="{0}: Invalid file size, ",this.invalidFileSizeMessageDetail="maximum upload size is {0}.",this.invalidFileTypeMessageSummary="{0}: Invalid file type, ",this.invalidFileTypeMessageDetail="allowed file types: {0}.",this.invalidFileLimitMessageDetail="limit is {0} at most.",this.invalidFileLimitMessageSummary="Maximum number of files exceeded, ",this.previewWidth=50,this.chooseLabel="Choose",this.uploadLabel="Upload",this.cancelLabel="Cancel",this.chooseIcon="pi pi-plus",this.uploadIcon="pi pi-upload",this.cancelIcon="pi pi-times",this.showUploadButton=!0,this.showCancelButton=!0,this.mode="advanced",this.onBeforeUpload=new t.EventEmitter,this.onSend=new t.EventEmitter,this.onUpload=new t.EventEmitter,this.onError=new t.EventEmitter,this.onClear=new t.EventEmitter,this.onRemove=new t.EventEmitter,this.onSelect=new t.EventEmitter,this.onProgress=new t.EventEmitter,this.uploadHandler=new t.EventEmitter,this._files=[],this.progress=0,this.uploadedFileCount=0}return Object.defineProperty(e.prototype,"files",{get:function(){return this._files},set:function(e){this._files=[];for(var t=0;tthis.maxFileSize)||(this.msgs.push({severity:"error",summary:this.invalidFileSizeMessageSummary.replace("{0}",e.name),detail:this.invalidFileSizeMessageDetail.replace("{0}",this.formatSize(this.maxFileSize))}),!1)},e.prototype.isFileTypeValid=function(e){var t,i,n=this.accept.split(",").map((function(e){return e.trim()}));try{for(var o=d(n),s=o.next();!s.done;s=o.next()){var l=s.value;if(this.isWildcard(l)?this.getTypeClass(e.type)===this.getTypeClass(l):e.type==l||this.getFileExtension(e).toLowerCase()===l.toLowerCase())return!0}}catch(e){t={error:e}}finally{try{s&&!s.done&&(i=o.return)&&i.call(o)}finally{if(t)throw t.error}}return!1},e.prototype.getTypeClass=function(e){return e.substring(0,e.indexOf("/"))},e.prototype.isWildcard=function(e){return-1!==e.indexOf("*")},e.prototype.getFileExtension=function(e){return"."+e.name.split(".").pop()},e.prototype.isImage=function(e){return/^image\//.test(e.type)},e.prototype.onImageLoad=function(e){window.URL.revokeObjectURL(e.src)},e.prototype.upload=function(){var e=this;if(this.customUpload)this.fileLimit&&(this.uploadedFileCount+=this.files.length),this.uploadHandler.emit({files:this.files}),this.cd.markForCheck();else{this.uploading=!0,this.msgs=[];var t=new FormData;this.onBeforeUpload.emit({formData:t});for(var i=0;i=200&&i.status<300?(e.fileLimit&&(e.uploadedFileCount+=e.files.length),e.onUpload.emit({originalEvent:i,files:e.files})):e.onError.emit({files:e.files}),e.clear();break;case u.HttpEventType.UploadProgress:i.loaded&&(e.progress=Math.round(100*i.loaded/i.total)),e.onProgress.emit({originalEvent:i,progress:e.progress})}e.cd.markForCheck()}),(function(t){e.uploading=!1,e.onError.emit({files:e.files,error:t})}))}},e.prototype.clear=function(){this.files=[],this.onClear.emit(),this.clearInputElement(),this.cd.markForCheck()},e.prototype.remove=function(e,t){this.clearInputElement(),this.onRemove.emit({originalEvent:e,file:this.files[t]}),this.files.splice(t,1)},e.prototype.isFileLimitExceeded=function(){return this.fileLimit&&this.fileLimit<=this.files.length+this.uploadedFileCount&&this.focus&&(this.focus=!1),this.fileLimit&&this.fileLimit0},e.prototype.onDragEnter=function(e){this.disabled||(e.stopPropagation(),e.preventDefault())},e.prototype.onDragOver=function(e){this.disabled||(a.DomHandler.addClass(this.content.nativeElement,"p-fileupload-highlight"),this.dragHighlight=!0,e.stopPropagation(),e.preventDefault())},e.prototype.onDragLeave=function(e){this.disabled||a.DomHandler.removeClass(this.content.nativeElement,"p-fileupload-highlight")},e.prototype.onDrop=function(e){if(!this.disabled){a.DomHandler.removeClass(this.content.nativeElement,"p-fileupload-highlight"),e.stopPropagation(),e.preventDefault();var t=e.dataTransfer?e.dataTransfer.files:e.target.files;(this.multiple||t&&1===t.length)&&this.onFileSelect(e)}},e.prototype.onFocus=function(){this.focus=!0},e.prototype.onBlur=function(){this.focus=!1},e.prototype.formatSize=function(e){if(0==e)return"0 B";var t=Math.floor(Math.log(e)/Math.log(1024));return parseFloat((e/Math.pow(1024,t)).toFixed(3))+" "+["B","KB","MB","GB","TB","PB","EB","ZB","YB"][t]},e.prototype.onBasicUploaderClick=function(){this.hasFiles()?this.upload():this.basicFileInput.nativeElement.click()},e.prototype.getBlockableElement=function(){return this.el.nativeElement.children[0]},e.prototype.ngOnDestroy=function(){this.content&&this.content.nativeElement&&this.content.nativeElement.removeEventListener("dragover",this.onDragOver)},e}();c.decorators=[{type:t.Component,args:[{selector:"p-fileUpload",template:'\n
\n
\n \n \n \n {{chooseLabel}}\n \n\n \n \n\n \n
\n
\n \n\n \n\n
\n
\n
\n
\n
{{file.name}}
\n
{{formatSize(file.size)}}
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n \n \n \n {{auto ? chooseLabel : hasFiles() ? files[0].name : chooseLabel}}\n \n \n
\n ',changeDetection:t.ChangeDetectionStrategy.OnPush,encapsulation:t.ViewEncapsulation.None,styles:[".p-fileupload-content{position:relative}.p-fileupload-row{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex}.p-fileupload-row>div{-ms-flex:1 1 auto;flex:1 1 auto;width:25%}.p-fileupload-row>div:last-child{text-align:right}.p-fileupload-content .p-progressbar{left:0;position:absolute;top:0;width:100%}.p-button.p-fileupload-choose{overflow:hidden;position:relative}.p-button.p-fileupload-choose input[type=file],.p-fileupload-choose.p-fileupload-choose-selected input[type=file]{display:none}.p-fluid .p-fileupload .p-button{width:auto}"]}]}],c.ctorParameters=function(){return[{type:t.ElementRef},{type:n.DomSanitizer},{type:t.NgZone},{type:u.HttpClient},{type:t.ChangeDetectorRef}]},c.propDecorators={name:[{type:t.Input}],url:[{type:t.Input}],method:[{type:t.Input}],multiple:[{type:t.Input}],accept:[{type:t.Input}],disabled:[{type:t.Input}],auto:[{type:t.Input}],withCredentials:[{type:t.Input}],maxFileSize:[{type:t.Input}],invalidFileSizeMessageSummary:[{type:t.Input}],invalidFileSizeMessageDetail:[{type:t.Input}],invalidFileTypeMessageSummary:[{type:t.Input}],invalidFileTypeMessageDetail:[{type:t.Input}],invalidFileLimitMessageDetail:[{type:t.Input}],invalidFileLimitMessageSummary:[{type:t.Input}],style:[{type:t.Input}],styleClass:[{type:t.Input}],previewWidth:[{type:t.Input}],chooseLabel:[{type:t.Input}],uploadLabel:[{type:t.Input}],cancelLabel:[{type:t.Input}],chooseIcon:[{type:t.Input}],uploadIcon:[{type:t.Input}],cancelIcon:[{type:t.Input}],showUploadButton:[{type:t.Input}],showCancelButton:[{type:t.Input}],mode:[{type:t.Input}],headers:[{type:t.Input}],customUpload:[{type:t.Input}],fileLimit:[{type:t.Input}],onBeforeUpload:[{type:t.Output}],onSend:[{type:t.Output}],onUpload:[{type:t.Output}],onError:[{type:t.Output}],onClear:[{type:t.Output}],onRemove:[{type:t.Output}],onSelect:[{type:t.Output}],onProgress:[{type:t.Output}],uploadHandler:[{type:t.Output}],templates:[{type:t.ContentChildren,args:[p.PrimeTemplate]}],advancedFileInput:[{type:t.ViewChild,args:["advancedfileinput"]}],basicFileInput:[{type:t.ViewChild,args:["basicfileinput"]}],content:[{type:t.ViewChild,args:["content"]}],files:[{type:t.Input}]};var h=function(){};h.decorators=[{type:t.NgModule,args:[{imports:[i.CommonModule,p.SharedModule,o.ButtonModule,l.ProgressBarModule,s.MessagesModule,r.RippleModule],exports:[c,p.SharedModule,o.ButtonModule,l.ProgressBarModule,s.MessagesModule],declarations:[c]}]}],e.FileUpload=c,e.FileUploadModule=h,Object.defineProperty(e,"__esModule",{value:!0})})); //# sourceMappingURL=primeng-fileupload.umd.min.js.map