ibp-max 3.0.70 → 3.0.73

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/fileupload.js CHANGED
@@ -1 +1 @@
1
- !function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var a=t();for(var i in a)("object"==typeof exports?exports:e)[i]=a[i]}}(self,(()=>(()=>{var e={260:()=>{!function(e){"use strict";e.fn.AgoraFileUpload=function(t){var a=e(this),i=this,n=a.find('input[type="file"]'),r=a.find('input[type="hidden"][node]'),o=(a.find("label"),a.find(".items-context")),d=a.find(".progress").find("div"),l=a.data("agora-file-upload"),s=a.data("agora-file-upload-path"),u=a.data("agora-file-id"),f=a.data("agora-file-index"),p=void 0!==a.data("generate-thumb")&&1==a.data("generate-thumb"),c=!1,v=void 0!==a.data("file-size")?a.data("file-size"):0,m=void 0!==a.data("max-width")?a.data("max-width"):-1,h=void 0!==a.data("max-height")?a.data("max-height"):-1,g=n.attr("accept"),_=null!=t&&null!=t.OnChange?t.OnChange:null;function y(e,t){for(var a=e.split(","),i=a[0].match(/:(.*?);/)[1],n=atob(a[1]),r=n.length,o=new Uint8Array(r);r--;)o[r]=n.charCodeAt(r);return new File([o],t,{type:i})}i._send=function(t,a,i){e.ajax({headers:t,type:"POST",url:l,data:a,processData:!1,contentType:!1,dataType:"json",success:function(e){i(e)}})},i._getData=function(){return n.files.length,_formData},i._startProgress=function(){a.addClass("is-busy"),i._updateProgress(0)},i._updateProgress=function(e){d.attr("data-value",Math.floor(e)+"%"),d.width(e+"%")},i._endProgress=function(){a.removeClass("is-busy"),i._updateProgress(100)},i._uploadComplete=function(t){if(c)for(var a in c=!(p=!0),t){o=e(t[a].xml);var n=e(r.val());n.find("file").attr("poster",o.find("file").attr("url")),r.val(n[0].outerHTML)}else if(i._bindItems(t),p)for(var a in c=!(p=!1),t){var o=e(t[a].xml);i._createSnapShot(o.find("file").attr("url"),(function(e){i._sendFile(y(e,"poster.jpg"))}))}if(null!=_){var d;if(null!=t)for(var a in t)d=t[a].url;_(d)}},i._bindItems=function(t){for(var a in o.html(""),t)e(i._getItem(t[a])).appendTo(o),r.val(t[a].xml)},i._removeItem=function(e){e.remove(),r.val("")},i._getItem=function(t){var a=e("<label></label>");a.html("<b>"+t.name+"</b>");var n=e('<input type="hidden" />');n.val(t.xml);var r=e("<i></i>");return a.append(r),r.on("click",(function(){i._removeItem(a)})),a.append(n)},i._sendFile=function(e,t,a,n){c||i._startProgress();for(var r=0,o=[],d=1048576,l=0,p=d,v=void 0!==e.size?e.size:e.length,m="function"==typeof n;l<v;)o.push(e.slice(l,p)),p=(l=p)+d;for(var h,g=o.length,_=0;h=o.shift();){_++;var y=u+f+".part_"+_+"."+g,b={"X-File-Name":void 0!==t?t:e.name,"X-File-Part-Name":y,"X-File-Type":void 0!==a?a:e.type,"X-File-Size":v,"X-File-Path":s},x=new FormData;x.append("fileitem",h,y),i._send(b,x,w)}function w(e){r++,m?(f++,n()):r==g?(i._uploadComplete(e),f++,c?i._updateProgress(99):i._endProgress()):i._updateProgress(r/g*100)}},i._upload=function(){for(var e=0;e<n[0].files.length;e++)if(i._performValidation(n[0].files[e])){var t=n[0].files[e],a=(t.name,t.type);a.indexOf("image")>-1?i.resizeImage(t,a,(function(e,t){i._sendFile(t,void 0,void 0,(function(){i._sendFile(e)}))}),(function(e){i._sendFile(e)})):i._sendFile(n[0].files[e])}},i.resizeImage=function(e,t,a,i){h==m=="-1"&&a(e);try{var n=new Image;n.crossOrigin="Anonymous",n.onload=function(){try{var r=document.createElement("canvas"),o=document.createElement("canvas"),d=r.getContext("2d"),l=o.getContext("2d");r.height=n.naturalHeight,r.width=n.naturalWidth,d.drawImage(n,0,0);var s="0"!=m?parseInt(m):1920,u="0"!=h?parseInt(h):1080,f=s<n.naturalWidth?s/n.naturalWidth:1,p=u<n.naturalHeight?u/n.naturalHeight:1,c=Math.min(f,p),v=n.naturalWidth*c,g=n.naturalHeight*c;o.width=v,o.height=g,l.drawImage(r,0,0,v,g);var _=o.toDataURL(t),b="image/webp"!=t?o.toDataURL("image/webp"):_;a(y(_,e.name),y(b,"O_"+e.name.replace(/\.[A-z]{3,4}/gi,".webp")))}catch(t){i(e)}},n.onerror=function(){i(e)};var r=new FileReader;r.addEventListener("load",(function(){n.src=r.result})),r.readAsDataURL(e)}catch(t){i(e)}},i._performValidation=function(e){if(v>0&&e.size>v)return alert("File size limit exceeded!"),!1;if(void 0!==g&&""!=g.trim()&&"*"!=g.trim()){var t=g.split(","),a=!1;for(var i in t){var n=t[i].replace("*","");a|=!(-1==e.type.indexOf(n))}if(!a)return alert("File type not supported!"),!1}return!0},i._createSnapShot=function(t,a){var i=e("body"),n=e('<div class="video-process mdl-cell--hide"></div'),r=e('<video muted="muted" autobuffer="autobuffer" muted playsinline width="640" height="480"></video>'),o=e('<source src="'+t+'" type="video/mp4" />'),d=e('<canvas width="640" height="480"></canvas>');r.append(o),n.append(r),n.append(d),i.append(n);var l=d[0],s=r[0],u=l.getContext("2d"),f=!1;s.addEventListener("loadedmetadata",(function(){var e=s.videoWidth,t=s.videoHeight;l.width=e,l.height=t}),!1),s.ontimeupdate=function(){var e,t;f||(f=!0,s.pause(),e=l.width,t=l.height,u.fillRect(0,0,e,t),u.drawImage(s,0,0,e,t),a(l.toDataURL("image/jpg")),n.remove())},s.play()},i._init=function(){n.bind("change",(function(){i._upload()})),a.find(".items-context label>i").on("click",(function(){i._removeItem(e(this).closest("label"))}))},i._init()}}(jQuery)}},t={};function a(i){var n=t[i];if(void 0!==n)return n.exports;var r=t[i]={exports:{}};return e[i](r,r.exports,a),r.exports}a.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return a.d(t,{a:t}),t},a.d=(e,t)=>{for(var i in t)a.o(t,i)&&!a.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},a.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),a.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var i={};return(()=>{"use strict";a.r(i);a(260)})(),i})()));
1
+ !function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var a=t();for(var n in a)("object"==typeof exports?exports:e)[n]=a[n]}}(self,(()=>(()=>{var e={260:()=>{!function(e){"use strict";e.fn.AgoraFileUpload=function(t){var a=e(this),n=this,i=a.find('input[type="file"]'),r=a.find('input[type="hidden"][node]'),o=(a.find("label"),a.find(".items-context")),d=a.find(".progress").find("div"),l=a.data("agora-file-upload"),s=a.data("agora-file-upload-path"),u=a.data("agora-file-id"),f=a.data("agora-file-index"),p=void 0!==a.data("generate-thumb")&&1==a.data("generate-thumb"),c=!1,v=void 0!==a.data("file-size")?a.data("file-size"):0,m=void 0!==a.data("max-width")?a.data("max-width"):-1,h=void 0!==a.data("max-height")?a.data("max-height"):-1,g=i.attr("accept"),_=null!=t&&null!=t.OnChange?t.OnChange:null;function y(e,t){for(var a=e.split(","),n=a[0].match(/:(.*?);/)[1],i=atob(a[1]),r=i.length,o=new Uint8Array(r);r--;)o[r]=i.charCodeAt(r);return new File([o],t,{type:n})}n._send=function(t,a,n){e.ajax({headers:t,type:"POST",url:l,data:a,processData:!1,contentType:!1,dataType:"json",success:function(e){n(e)}})},n._getData=function(){return i.files.length,_formData},n._startProgress=function(){a.addClass("is-busy"),n._updateProgress(0)},n._updateProgress=function(e){d.attr("data-value",Math.floor(e)+"%"),d.width(e+"%")},n._endProgress=function(){a.removeClass("is-busy"),n._updateProgress(100)},n._uploadComplete=function(t){if(c)for(var a in c=!(p=!0),t){o=e(t[a].xml);var i=e(r.val());i.find("file").attr("poster",o.find("file").attr("url")),r.val(i[0].outerHTML)}else if(n._bindItems(t),p)for(var a in c=!(p=!1),t){var o=e(t[a].xml);n._createSnapShot(o.find("file").attr("url"),(function(e){n._sendFile(y(e,"poster.jpg"))}))}if(null!=_){var d;if(null!=t)for(var a in t)d=t[a].url;_(d)}},n._bindItems=function(t){for(var a in o.html(""),t)e(n._getItem(t[a])).appendTo(o),r.val(t[a].xml)},n._removeItem=function(e){e.remove(),r.val("")},n._getItem=function(t){var a=e("<label></label>");a.html("<b>"+t.name+"</b>");var i=e('<input type="hidden" />');i.val(t.xml);var r=e("<i></i>");return a.append(r),r.on("click",(function(){n._removeItem(a)})),a.append(i)},n._sendFile=function(e,t,a,i){c||n._startProgress();for(var r=0,o=[],d=1048576,l=0,p=d,v=void 0!==e.size?e.size:e.length,m="function"==typeof i;l<v;)o.push(e.slice(l,p)),p=(l=p)+d;for(var h,g=o.length,_=0;h=o.shift();){_++;var y=u+f+".part_"+_+"."+g,b={"X-File-Name":void 0!==t?t:e.name,"X-File-Part-Name":y,"X-File-Type":void 0!==a?a:e.type,"X-File-Size":v,"X-File-Path":s},x=new FormData;x.append("fileitem",h,y),n._send(b,x,w)}function w(e){r++,m?(f++,i()):r==g?(n._uploadComplete(e),f++,c?n._updateProgress(99):n._endProgress()):n._updateProgress(r/g*100)}},n._upload=function(){for(var e=0;e<i[0].files.length;e++)if(n._performValidation(i[0].files[e])){var t=i[0].files[e],a=(t.name,t.type);a.indexOf("image")>-1?n.resizeImage(t,a,(function(e,t){n._sendFile(t,void 0,void 0,(function(){n._sendFile(e)}))}),(function(e){n._sendFile(e)})):n._sendFile(i[0].files[e])}},n.resizeImage=function(e,t,a,n){h==m=="-1"&&a(e);try{var i=new Image;i.crossOrigin="Anonymous",i.onload=function(){try{var r=document.createElement("canvas"),o=document.createElement("canvas"),d=r.getContext("2d"),l=o.getContext("2d");r.height=i.naturalHeight,r.width=i.naturalWidth,d.drawImage(i,0,0);var s="0"!=m?parseInt(m):1920,u="0"!=h?parseInt(h):1080,f=s<i.naturalWidth?s/i.naturalWidth:1,p=u<i.naturalHeight?u/i.naturalHeight:1,c=Math.min(f,p),v=i.naturalWidth*c,g=i.naturalHeight*c;o.width=v,o.height=g,l.drawImage(r,0,0,v,g);var _=o.toDataURL(t,.7),b="image/webp"!=t?o.toDataURL("image/webp",.7):_;a(y(_,e.name),y(b,"O_"+e.name.replace(/\.[A-z]{3,4}/gi,".webp")))}catch(t){n(e)}},i.onerror=function(){n(e)};var r=new FileReader;r.addEventListener("load",(function(){i.src=r.result})),r.readAsDataURL(e)}catch(t){n(e)}},n._performValidation=function(e){if(v>0&&e.size>v)return alert("File size limit exceeded!"),!1;if(void 0!==g&&""!=g.trim()&&"*"!=g.trim()){var t=g.split(","),a=!1;for(var n in t){var i=t[n].replace("*","");a|=!(-1==e.type.indexOf(i))}if(!a)return alert("File type not supported!"),!1}return!0},n._createSnapShot=function(t,a){var n=e("body"),i=e('<div class="video-process mdl-cell--hide"></div>'),r=e('<video crossorigin="anonymous" muted playsinline width="640" height="480"></video>'),o=e('<source src="'+t+'" type="video/mp4" />'),d=e('<canvas width="640" height="480"></canvas>');r.append(o),i.append(r).append(d),n.append(i);var l=d[0],s=r[0],u=l.getContext("2d"),f=!1;s.addEventListener("loadedmetadata",(function(){l.width=s.videoWidth,l.height=s.videoHeight})),s.addEventListener("canplay",(function(){f||(f=!0,s.pause(),function(){u.drawImage(s,0,0,l.width,l.height);try{a(l.toDataURL("image/jpeg",.6))}catch(e){console.error("Canvas snapshot failed (possibly CORS issue):",e),a(null)}i.remove()}())})),s.play()},n._init=function(){i.bind("change",(function(){n._upload()})),a.find(".items-context label>i").on("click",(function(){n._removeItem(e(this).closest("label"))}))},n._init()}}(jQuery)}},t={};function a(n){var i=t[n];if(void 0!==i)return i.exports;var r=t[n]={exports:{}};return e[n](r,r.exports,a),r.exports}a.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return a.d(t,{a:t}),t},a.d=(e,t)=>{for(var n in t)a.o(t,n)&&!a.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},a.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),a.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};return(()=>{"use strict";a.r(n);a(260)})(),n})()));
package/fileupload.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"fileupload.js","mappings":"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","sources":["webpack:///webpack/universalModuleDefinition","webpack:///../../Agora 4.0/IdcGlobal.Agora.JavaScript.PlugIn/MaxFileUpload.js","webpack:///webpack/bootstrap","webpack:///webpack/runtime/compat get default export","webpack:///webpack/runtime/define property getters","webpack:///webpack/runtime/hasOwnProperty shorthand","webpack:///webpack/runtime/make namespace object"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse {\n\t\tvar a = factory();\n\t\tfor(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];\n\t}\n})(self, () => {\nreturn ","\r\n\r\n(function ($) {\r\n 'use strict';\r\n\r\n $.fn.AgoraFileUpload = function (options) {\r\n\r\n var $_sender = $(this);\r\n var _self = this;\r\n var $_file = $_sender.find('input[type=\"file\"]');\r\n var $_valueNode = $_sender.find('input[type=\"hidden\"][node]');\r\n var $_label = $_sender.find('label');\r\n var $_itemContext = $_sender.find('.items-context');\r\n var $progress = $_sender.find('.progress');\r\n var $progressBar = $progress.find('div');\r\n var _serviceURL = $_sender.data('agora-file-upload');\r\n var _uploadPath = $_sender.data('agora-file-upload-path');\r\n var _fileId = $_sender.data('agora-file-id');\r\n var _fileIndex = $_sender.data('agora-file-index');\r\n var _autoGenerateThumb = typeof ($_sender.data('generate-thumb')) != 'undefined' && $_sender.data('generate-thumb') == true;\r\n var _isAutoGenerateThumbAction = false;\r\n var _fileSize = typeof ($_sender.data('file-size')) != 'undefined' ? $_sender.data('file-size') : 0;\r\n var _maxWidth = typeof ($_sender.data('max-width')) != 'undefined' ? $_sender.data('max-width') : -1;\r\n var _maxHeight = typeof ($_sender.data('max-height')) != 'undefined' ? $_sender.data('max-height') : -1;\r\n var _mimeType = $_file.attr('accept');\r\n\r\n var _onChange = (options != null && options.OnChange != null) ? options.OnChange : null;\r\n\r\n\r\n _self._send = function (headers, data, success) {\r\n\r\n $.ajax({\r\n headers: headers,\r\n type: 'POST',\r\n url: _serviceURL,\r\n data: data,\r\n processData: false,\r\n contentType: false,\r\n dataType: 'json',\r\n success: function (data) {\r\n success(data);\r\n }\r\n });\r\n\r\n };\r\n\r\n _self._getData = function () {\r\n\r\n if ($_file.files.length > 0) {\r\n\r\n }\r\n return _formData;\r\n };\r\n\r\n _self._startProgress = function () {\r\n $_sender.addClass('is-busy');\r\n _self._updateProgress(0);\r\n };\r\n\r\n _self._updateProgress = function (count) {\r\n $progressBar.attr('data-value', Math.floor(count) + '%');\r\n $progressBar.width(count + '%');\r\n };\r\n\r\n _self._endProgress = function () {\r\n $_sender.removeClass('is-busy');\r\n _self._updateProgress(100);\r\n };\r\n\r\n _self._uploadComplete = function (response) {\r\n if (!_isAutoGenerateThumbAction) {\r\n _self._bindItems(response);\r\n if (_autoGenerateThumb) {\r\n _isAutoGenerateThumbAction = !(_autoGenerateThumb = false);\r\n for (var key in response) {\r\n var $valueXml = $(response[key].xml);\r\n _self._createSnapShot($valueXml.find('file').attr('url'), function (imageUrl) {\r\n _self._sendFile(dataURLtoFile(imageUrl, 'poster.jpg'));\r\n });\r\n }\r\n }\r\n } else {\r\n _isAutoGenerateThumbAction = !(_autoGenerateThumb = true);\r\n for (var key in response) {\r\n var $valueXml = $(response[key].xml);\r\n var $fileValue = $($_valueNode.val());\r\n $fileValue.find('file').attr('poster', $valueXml.find('file').attr('url'));\r\n $_valueNode.val($fileValue[0].outerHTML);\r\n }\r\n }\r\n\r\n\r\n if (_onChange != null) {\r\n var value;\r\n if (response != null) {\r\n for (var key in response) {\r\n value = response[key].url;\r\n }\r\n }\r\n _onChange(value);\r\n }\r\n };\r\n\r\n _self._bindItems = function (response) {\r\n $_itemContext.html('');\r\n for (var key in response) {\r\n $(_self._getItem(response[key])).appendTo($_itemContext);\r\n $_valueNode.val(response[key].xml);\r\n }\r\n\r\n };\r\n\r\n _self._removeItem = function ($item) {\r\n $item.remove();\r\n $_valueNode.val('');\r\n };\r\n\r\n _self._getItem = function (response) {\r\n var $result = $('<label></label>');\r\n $result.html('<b>' + response.name + '</b>');\r\n var $resultHidden = $('<input type=\"hidden\" />');\r\n $resultHidden.val(response.xml);\r\n var $remove = $('<i></i>');\r\n $result.append($remove);\r\n $remove.on('click', function () { _self._removeItem($result); });\r\n return $result.append($resultHidden);\r\n };\r\n\r\n _self._sendFile = function (file, name, fileType, success) {\r\n if (!_isAutoGenerateThumbAction)\r\n _self._startProgress();\r\n var _chunksCompleted = 0;\r\n // create array to store the buffer chunks\r\n var FileChunk = [];\r\n // set up other initial vars\r\n var MaxFileSizeMB = 1;\r\n var BufferChunkSize = MaxFileSizeMB * (1024 * 1024);\r\n var ReadBuffer_Size = 1024;\r\n var FileStreamPos = 0;\r\n // set the initial chunk length\r\n var EndPos = BufferChunkSize;\r\n var Size = typeof (file.size) != 'undefined' ? file.size : file.length;\r\n var isSubFile = typeof (success) == 'function';\r\n\r\n // add to the FileChunk array until we get to the end of the file\r\n while (FileStreamPos < Size) {\r\n // \"slice\" the file from the starting position/offset, to the required length\r\n FileChunk.push(file.slice(FileStreamPos, EndPos));\r\n FileStreamPos = EndPos; // jump by the amount read\r\n EndPos = FileStreamPos + BufferChunkSize; // set next chunk length\r\n }\r\n // get total number of \"files\" we will be sending\r\n var TotalParts = FileChunk.length;\r\n var PartCount = 0;\r\n // loop through, pulling the first item from the array each time and sending it\r\n var chunk;\r\n while (chunk = FileChunk.shift()) {\r\n PartCount++;\r\n // file name convention\r\n var FilePartName = _fileId + _fileIndex + \".part_\" + PartCount + \".\" + TotalParts;\r\n // send the file\r\n var _headers = {\r\n 'X-File-Name': typeof (name) != 'undefined' ? name : file.name,\r\n 'X-File-Part-Name': FilePartName,\r\n 'X-File-Type': typeof (fileType) != 'undefined' ? fileType : file.type,\r\n 'X-File-Size': Size,\r\n 'X-File-Path': _uploadPath\r\n };\r\n var _formData = new FormData();\r\n _formData.append(\"fileitem\", chunk, FilePartName);\r\n _self._send(_headers, _formData, _chunkComplete);\r\n }\r\n\r\n function _chunkComplete(data) {\r\n _chunksCompleted++;\r\n if (isSubFile) {\r\n _fileIndex++;\r\n success();\r\n } else {\r\n if (_chunksCompleted == TotalParts) {\r\n _self._uploadComplete(data);\r\n _fileIndex++;\r\n if (!_isAutoGenerateThumbAction)\r\n _self._endProgress();\r\n else\r\n _self._updateProgress(99);\r\n } else {\r\n _self._updateProgress((_chunksCompleted / TotalParts) * 100);\r\n }\r\n }\r\n }\r\n\r\n };\r\n\r\n function dataURLtoFile(dataurl, filename) {\r\n var arr = dataurl.split(','), mime = arr[0].match(/:(.*?);/)[1], bstr = atob(arr[1]), n = bstr.length, u8arr = new Uint8Array(n);\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n return new File([u8arr], filename, { type: mime });\r\n }\r\n\r\n _self._upload = function () {\r\n for (var i = 0; i < $_file[0].files.length; i++)\r\n if (_self._performValidation($_file[0].files[i])) {\r\n var fileToUpload = $_file[0].files[i];\r\n var fileName = fileToUpload.name;\r\n var fileType = fileToUpload.type;\r\n if (fileType.indexOf('image') > -1) {\r\n _self.resizeImage(fileToUpload, fileType, function (updatedFileToUpload, webpFileToUpload) {\r\n _self._sendFile(webpFileToUpload, undefined, undefined, function () {\r\n _self._sendFile(updatedFileToUpload);\r\n });\r\n }, function (updatedFileToUpload) {\r\n _self._sendFile(updatedFileToUpload);\r\n });\r\n } else {\r\n _self._sendFile($_file[0].files[i]);\r\n }\r\n }\r\n };\r\n\r\n _self.resizeImage = function (fileToUpload, fileType, success, fail) {\r\n if (_maxHeight == _maxWidth == \"-1\") success(fileToUpload);\r\n try {\r\n var image = new Image();\r\n image.crossOrigin = 'Anonymous';\r\n image.onload = function () {\r\n try {\r\n var canvas = document.createElement('canvas');\r\n var resizerCanvas = document.createElement('canvas');\r\n var context = canvas.getContext('2d');\r\n var resizeContext = resizerCanvas.getContext('2d');\r\n canvas.height = image.naturalHeight;\r\n canvas.width = image.naturalWidth;\r\n context.drawImage(image, 0, 0);\r\n var scaleMaxWidth = _maxWidth != '0' ? parseInt(_maxWidth) : 1920;\r\n var scaleMaxHeight = _maxHeight != '0' ? parseInt(_maxHeight) : 1080;\r\n var scaleWidthConstant = scaleMaxWidth < image.naturalWidth ? (scaleMaxWidth / image.naturalWidth) : 1;\r\n var scaleHeightConstant = scaleMaxHeight < image.naturalHeight ? (scaleMaxHeight / image.naturalHeight) : 1;\r\n var scaleConstant = Math.min(scaleWidthConstant, scaleHeightConstant);\r\n var scaleWidth = image.naturalWidth * scaleConstant;\r\n var scaleHeight = image.naturalHeight * scaleConstant;\r\n resizerCanvas.width = scaleWidth;\r\n resizerCanvas.height = scaleHeight;\r\n resizeContext.drawImage(canvas, 0, 0, scaleWidth, scaleHeight);\r\n var resizedDataUrl = resizerCanvas.toDataURL(fileType);\r\n var webpResizedDataUrl = fileType != 'image/webp' ? resizerCanvas.toDataURL('image/webp') : resizedDataUrl;\r\n success(dataURLtoFile(resizedDataUrl, fileToUpload.name), dataURLtoFile(webpResizedDataUrl, 'O_'+fileToUpload.name.replace(/\\.[A-z]{3,4}/gi,'.webp')));\r\n } catch (e) { fail(fileToUpload); }\r\n };\r\n image.onerror = function () {\r\n fail(fileToUpload);\r\n };\r\n\r\n var readerFileData = new FileReader();\r\n readerFileData.addEventListener('load', function () {\r\n image.src = readerFileData.result;\r\n });\r\n\r\n readerFileData.readAsDataURL(fileToUpload);\r\n\r\n } catch (e) { fail(fileToUpload); }\r\n\r\n }\r\n\r\n _self._performValidation = function (file) {\r\n if (_fileSize > 0 && file.size > _fileSize) {\r\n alert('File size limit exceeded!');\r\n return false;\r\n }\r\n if (typeof (_mimeType) != 'undefined' && _mimeType.trim() != '' && _mimeType.trim() != \"*\") {\r\n var _fileTypes = _mimeType.split(',');\r\n var _validFileType = false;\r\n for (var key in _fileTypes) {\r\n var _fileTypeToCheck = _fileTypes[key].replace('*', '');\r\n _validFileType |= !(file.type.indexOf(_fileTypeToCheck) == -1);\r\n }\r\n if (!_validFileType) {\r\n alert('File type not supported!');\r\n return false;\r\n }\r\n }\r\n return true;\r\n };\r\n\r\n _self._createSnapShot = function (url, success) {\r\n var $body = $('body');\r\n var $wrapper = $('<div class=\"video-process mdl-cell--hide\"></div')\r\n var $video = $('<video muted=\"muted\" autobuffer=\"autobuffer\" muted playsinline width=\"640\" height=\"480\"></video>');\r\n var $soure = $('<source src=\"' + url + '\" type=\"video/mp4\" />');\r\n var $canvas = $('<canvas width=\"640\" height=\"480\"></canvas>');\r\n $video.append($soure);\r\n $wrapper.append($video);\r\n $wrapper.append($canvas);\r\n $body.append($wrapper);\r\n var canvas = $canvas[0];\r\n var video = $video[0];\r\n var context = canvas.getContext('2d');\r\n var isStarted = false;\r\n video.addEventListener('loadedmetadata', function () {\r\n var w = video.videoWidth;\r\n var h = video.videoHeight;\r\n canvas.width = w;\r\n canvas.height = h;\r\n }, false);\r\n video.ontimeupdate = function () {\r\n if (!isStarted) {\r\n isStarted = true;\r\n video.pause();\r\n buildSnap();\r\n }\r\n };\r\n video.play();\r\n function buildSnap() {\r\n var w = canvas.width;\r\n var h = canvas.height;\r\n context.fillRect(0, 0, w, h);\r\n context.drawImage(video, 0, 0, w, h);\r\n success(canvas.toDataURL('image/jpg'));\r\n $wrapper.remove();\r\n }\r\n };\r\n\r\n _self._init = function () {\r\n $_file.bind('change', function () {\r\n //console.log('File change');\r\n _self._upload();\r\n });\r\n $_sender.find('.items-context label>i').on('click', function () { _self._removeItem($(this).closest('label')); });\r\n };\r\n _self._init();\r\n }\r\n\r\n}(jQuery));","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};"],"names":["root","factory","exports","module","define","amd","a","i","self","$","fn","AgoraFileUpload","options","$_sender","this","_self","$_file","find","$_valueNode","$_itemContext","$progressBar","_serviceURL","data","_uploadPath","_fileId","_fileIndex","_autoGenerateThumb","_isAutoGenerateThumbAction","_fileSize","_maxWidth","_maxHeight","_mimeType","attr","_onChange","OnChange","dataURLtoFile","dataurl","filename","arr","split","mime","match","bstr","atob","n","length","u8arr","Uint8Array","charCodeAt","File","type","_send","headers","success","ajax","url","processData","contentType","dataType","_getData","files","_formData","_startProgress","addClass","_updateProgress","count","Math","floor","width","_endProgress","removeClass","_uploadComplete","response","key","$valueXml","xml","$fileValue","val","outerHTML","_bindItems","_createSnapShot","imageUrl","_sendFile","value","html","_getItem","appendTo","_removeItem","$item","remove","$result","name","$resultHidden","$remove","append","on","file","fileType","_chunksCompleted","FileChunk","BufferChunkSize","MaxFileSizeMB","FileStreamPos","EndPos","Size","size","isSubFile","push","slice","chunk","TotalParts","PartCount","shift","FilePartName","_headers","FormData","_chunkComplete","_upload","_performValidation","fileToUpload","indexOf","resizeImage","updatedFileToUpload","webpFileToUpload","undefined","fail","image","Image","crossOrigin","onload","canvas","document","createElement","resizerCanvas","context","getContext","resizeContext","height","naturalHeight","naturalWidth","drawImage","scaleMaxWidth","parseInt","scaleMaxHeight","scaleWidthConstant","scaleHeightConstant","scaleConstant","min","scaleWidth","scaleHeight","resizedDataUrl","toDataURL","webpResizedDataUrl","replace","e","onerror","readerFileData","FileReader","addEventListener","src","result","readAsDataURL","alert","trim","_fileTypes","_validFileType","_fileTypeToCheck","$body","$wrapper","$video","$soure","$canvas","video","isStarted","w","videoWidth","h","videoHeight","ontimeupdate","pause","fillRect","play","_init","bind","closest","jQuery","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","getter","__esModule","d","definition","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","r","Symbol","toStringTag"],"sourceRoot":""}
1
+ {"version":3,"file":"fileupload.js","mappings":"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","sources":["webpack:///webpack/universalModuleDefinition","webpack:///../../Agora 4.0/IdcGlobal.Agora.JavaScript.PlugIn/MaxFileUpload.js","webpack:///webpack/bootstrap","webpack:///webpack/runtime/compat get default export","webpack:///webpack/runtime/define property getters","webpack:///webpack/runtime/hasOwnProperty shorthand","webpack:///webpack/runtime/make namespace object"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse {\n\t\tvar a = factory();\n\t\tfor(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];\n\t}\n})(self, () => {\nreturn ","\r\n\r\n(function ($) {\r\n 'use strict';\r\n\r\n $.fn.AgoraFileUpload = function (options) {\r\n\r\n var $_sender = $(this);\r\n var _self = this;\r\n var $_file = $_sender.find('input[type=\"file\"]');\r\n var $_valueNode = $_sender.find('input[type=\"hidden\"][node]');\r\n var $_label = $_sender.find('label');\r\n var $_itemContext = $_sender.find('.items-context');\r\n var $progress = $_sender.find('.progress');\r\n var $progressBar = $progress.find('div');\r\n var _serviceURL = $_sender.data('agora-file-upload');\r\n var _uploadPath = $_sender.data('agora-file-upload-path');\r\n var _fileId = $_sender.data('agora-file-id');\r\n var _fileIndex = $_sender.data('agora-file-index');\r\n var _autoGenerateThumb = typeof ($_sender.data('generate-thumb')) != 'undefined' && $_sender.data('generate-thumb') == true;\r\n var _isAutoGenerateThumbAction = false;\r\n var _fileSize = typeof ($_sender.data('file-size')) != 'undefined' ? $_sender.data('file-size') : 0;\r\n var _maxWidth = typeof ($_sender.data('max-width')) != 'undefined' ? $_sender.data('max-width') : -1;\r\n var _maxHeight = typeof ($_sender.data('max-height')) != 'undefined' ? $_sender.data('max-height') : -1;\r\n var _mimeType = $_file.attr('accept');\r\n\r\n var _onChange = (options != null && options.OnChange != null) ? options.OnChange : null;\r\n\r\n\r\n _self._send = function (headers, data, success) {\r\n\r\n $.ajax({\r\n headers: headers,\r\n type: 'POST',\r\n url: _serviceURL,\r\n data: data,\r\n processData: false,\r\n contentType: false,\r\n dataType: 'json',\r\n success: function (data) {\r\n success(data);\r\n }\r\n });\r\n\r\n };\r\n\r\n _self._getData = function () {\r\n\r\n if ($_file.files.length > 0) {\r\n\r\n }\r\n return _formData;\r\n };\r\n\r\n _self._startProgress = function () {\r\n $_sender.addClass('is-busy');\r\n _self._updateProgress(0);\r\n };\r\n\r\n _self._updateProgress = function (count) {\r\n $progressBar.attr('data-value', Math.floor(count) + '%');\r\n $progressBar.width(count + '%');\r\n };\r\n\r\n _self._endProgress = function () {\r\n $_sender.removeClass('is-busy');\r\n _self._updateProgress(100);\r\n };\r\n\r\n _self._uploadComplete = function (response) {\r\n if (!_isAutoGenerateThumbAction) {\r\n _self._bindItems(response);\r\n if (_autoGenerateThumb) {\r\n _isAutoGenerateThumbAction = !(_autoGenerateThumb = false);\r\n for (var key in response) {\r\n var $valueXml = $(response[key].xml);\r\n _self._createSnapShot($valueXml.find('file').attr('url'), function (imageUrl) {\r\n _self._sendFile(dataURLtoFile(imageUrl, 'poster.jpg'));\r\n });\r\n }\r\n }\r\n } else {\r\n _isAutoGenerateThumbAction = !(_autoGenerateThumb = true);\r\n for (var key in response) {\r\n var $valueXml = $(response[key].xml);\r\n var $fileValue = $($_valueNode.val());\r\n $fileValue.find('file').attr('poster', $valueXml.find('file').attr('url'));\r\n $_valueNode.val($fileValue[0].outerHTML);\r\n }\r\n }\r\n\r\n\r\n if (_onChange != null) {\r\n var value;\r\n if (response != null) {\r\n for (var key in response) {\r\n value = response[key].url;\r\n }\r\n }\r\n _onChange(value);\r\n }\r\n };\r\n\r\n _self._bindItems = function (response) {\r\n $_itemContext.html('');\r\n for (var key in response) {\r\n $(_self._getItem(response[key])).appendTo($_itemContext);\r\n $_valueNode.val(response[key].xml);\r\n }\r\n\r\n };\r\n\r\n _self._removeItem = function ($item) {\r\n $item.remove();\r\n $_valueNode.val('');\r\n };\r\n\r\n _self._getItem = function (response) {\r\n var $result = $('<label></label>');\r\n $result.html('<b>' + response.name + '</b>');\r\n var $resultHidden = $('<input type=\"hidden\" />');\r\n $resultHidden.val(response.xml);\r\n var $remove = $('<i></i>');\r\n $result.append($remove);\r\n $remove.on('click', function () { _self._removeItem($result); });\r\n return $result.append($resultHidden);\r\n };\r\n\r\n _self._sendFile = function (file, name, fileType, success) {\r\n if (!_isAutoGenerateThumbAction)\r\n _self._startProgress();\r\n var _chunksCompleted = 0;\r\n // create array to store the buffer chunks\r\n var FileChunk = [];\r\n // set up other initial vars\r\n var MaxFileSizeMB = 1;\r\n var BufferChunkSize = MaxFileSizeMB * (1024 * 1024);\r\n var ReadBuffer_Size = 1024;\r\n var FileStreamPos = 0;\r\n // set the initial chunk length\r\n var EndPos = BufferChunkSize;\r\n var Size = typeof (file.size) != 'undefined' ? file.size : file.length;\r\n var isSubFile = typeof (success) == 'function';\r\n\r\n // add to the FileChunk array until we get to the end of the file\r\n while (FileStreamPos < Size) {\r\n // \"slice\" the file from the starting position/offset, to the required length\r\n FileChunk.push(file.slice(FileStreamPos, EndPos));\r\n FileStreamPos = EndPos; // jump by the amount read\r\n EndPos = FileStreamPos + BufferChunkSize; // set next chunk length\r\n }\r\n // get total number of \"files\" we will be sending\r\n var TotalParts = FileChunk.length;\r\n var PartCount = 0;\r\n // loop through, pulling the first item from the array each time and sending it\r\n var chunk;\r\n while (chunk = FileChunk.shift()) {\r\n PartCount++;\r\n // file name convention\r\n var FilePartName = _fileId + _fileIndex + \".part_\" + PartCount + \".\" + TotalParts;\r\n // send the file\r\n var _headers = {\r\n 'X-File-Name': typeof (name) != 'undefined' ? name : file.name,\r\n 'X-File-Part-Name': FilePartName,\r\n 'X-File-Type': typeof (fileType) != 'undefined' ? fileType : file.type,\r\n 'X-File-Size': Size,\r\n 'X-File-Path': _uploadPath\r\n };\r\n var _formData = new FormData();\r\n _formData.append(\"fileitem\", chunk, FilePartName);\r\n _self._send(_headers, _formData, _chunkComplete);\r\n }\r\n\r\n function _chunkComplete(data) {\r\n _chunksCompleted++;\r\n if (isSubFile) {\r\n _fileIndex++;\r\n success();\r\n } else {\r\n if (_chunksCompleted == TotalParts) {\r\n _self._uploadComplete(data);\r\n _fileIndex++;\r\n if (!_isAutoGenerateThumbAction)\r\n _self._endProgress();\r\n else\r\n _self._updateProgress(99);\r\n } else {\r\n _self._updateProgress((_chunksCompleted / TotalParts) * 100);\r\n }\r\n }\r\n }\r\n\r\n };\r\n\r\n function dataURLtoFile(dataurl, filename) {\r\n var arr = dataurl.split(','), mime = arr[0].match(/:(.*?);/)[1], bstr = atob(arr[1]), n = bstr.length, u8arr = new Uint8Array(n);\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n return new File([u8arr], filename, { type: mime });\r\n }\r\n\r\n _self._upload = function () {\r\n for (var i = 0; i < $_file[0].files.length; i++)\r\n if (_self._performValidation($_file[0].files[i])) {\r\n var fileToUpload = $_file[0].files[i];\r\n var fileName = fileToUpload.name;\r\n var fileType = fileToUpload.type;\r\n if (fileType.indexOf('image') > -1) {\r\n _self.resizeImage(fileToUpload, fileType, function (updatedFileToUpload, webpFileToUpload) {\r\n _self._sendFile(webpFileToUpload, undefined, undefined, function () {\r\n _self._sendFile(updatedFileToUpload);\r\n });\r\n }, function (updatedFileToUpload) {\r\n _self._sendFile(updatedFileToUpload);\r\n });\r\n } else {\r\n _self._sendFile($_file[0].files[i]);\r\n }\r\n }\r\n };\r\n\r\n _self.resizeImage = function (fileToUpload, fileType, success, fail) {\r\n if (_maxHeight == _maxWidth == \"-1\") success(fileToUpload);\r\n try {\r\n var image = new Image();\r\n image.crossOrigin = 'Anonymous';\r\n image.onload = function () {\r\n try {\r\n var canvas = document.createElement('canvas');\r\n var resizerCanvas = document.createElement('canvas');\r\n var context = canvas.getContext('2d');\r\n var resizeContext = resizerCanvas.getContext('2d');\r\n canvas.height = image.naturalHeight;\r\n canvas.width = image.naturalWidth;\r\n context.drawImage(image, 0, 0);\r\n var scaleMaxWidth = _maxWidth != '0' ? parseInt(_maxWidth) : 1920;\r\n var scaleMaxHeight = _maxHeight != '0' ? parseInt(_maxHeight) : 1080;\r\n var scaleWidthConstant = scaleMaxWidth < image.naturalWidth ? (scaleMaxWidth / image.naturalWidth) : 1;\r\n var scaleHeightConstant = scaleMaxHeight < image.naturalHeight ? (scaleMaxHeight / image.naturalHeight) : 1;\r\n var scaleConstant = Math.min(scaleWidthConstant, scaleHeightConstant);\r\n var scaleWidth = image.naturalWidth * scaleConstant;\r\n var scaleHeight = image.naturalHeight * scaleConstant;\r\n resizerCanvas.width = scaleWidth;\r\n resizerCanvas.height = scaleHeight;\r\n resizeContext.drawImage(canvas, 0, 0, scaleWidth, scaleHeight);\r\n var resizedDataUrl = resizerCanvas.toDataURL(fileType, 0.7);\r\n var webpResizedDataUrl = fileType != 'image/webp' ? resizerCanvas.toDataURL('image/webp', 0.7) : resizedDataUrl;\r\n success(dataURLtoFile(resizedDataUrl, fileToUpload.name), dataURLtoFile(webpResizedDataUrl, 'O_'+fileToUpload.name.replace(/\\.[A-z]{3,4}/gi,'.webp')));\r\n } catch (e) { fail(fileToUpload); }\r\n };\r\n image.onerror = function () {\r\n fail(fileToUpload);\r\n };\r\n\r\n var readerFileData = new FileReader();\r\n readerFileData.addEventListener('load', function () {\r\n image.src = readerFileData.result;\r\n });\r\n\r\n readerFileData.readAsDataURL(fileToUpload);\r\n\r\n } catch (e) { fail(fileToUpload); }\r\n\r\n }\r\n\r\n _self._performValidation = function (file) {\r\n if (_fileSize > 0 && file.size > _fileSize) {\r\n alert('File size limit exceeded!');\r\n return false;\r\n }\r\n if (typeof (_mimeType) != 'undefined' && _mimeType.trim() != '' && _mimeType.trim() != \"*\") {\r\n var _fileTypes = _mimeType.split(',');\r\n var _validFileType = false;\r\n for (var key in _fileTypes) {\r\n var _fileTypeToCheck = _fileTypes[key].replace('*', '');\r\n _validFileType |= !(file.type.indexOf(_fileTypeToCheck) == -1);\r\n }\r\n if (!_validFileType) {\r\n alert('File type not supported!');\r\n return false;\r\n }\r\n }\r\n return true;\r\n };\r\n\r\n _self._createSnapShot = function (url, success) {\r\n var $body = $('body');\r\n var $wrapper = $('<div class=\"video-process mdl-cell--hide\"></div>');\r\n var $video = $('<video crossorigin=\"anonymous\" muted playsinline width=\"640\" height=\"480\"></video>');\r\n var $source = $('<source src=\"' + url + '\" type=\"video/mp4\" />');\r\n var $canvas = $('<canvas width=\"640\" height=\"480\"></canvas>');\r\n\r\n $video.append($source);\r\n $wrapper.append($video).append($canvas);\r\n $body.append($wrapper);\r\n\r\n var canvas = $canvas[0];\r\n var video = $video[0];\r\n var context = canvas.getContext('2d');\r\n var isStarted = false;\r\n\r\n video.addEventListener('loadedmetadata', function () {\r\n canvas.width = video.videoWidth;\r\n canvas.height = video.videoHeight;\r\n });\r\n\r\n video.addEventListener('canplay', function () {\r\n if (!isStarted) {\r\n isStarted = true;\r\n video.pause();\r\n buildSnap();\r\n }\r\n });\r\n\r\n video.play();\r\n\r\n function buildSnap() {\r\n context.drawImage(video, 0, 0, canvas.width, canvas.height);\r\n try {\r\n success(canvas.toDataURL('image/jpeg', 0.6));\r\n } catch (e) {\r\n console.error('Canvas snapshot failed (possibly CORS issue):', e);\r\n success(null); // or handle error\r\n }\r\n $wrapper.remove();\r\n }\r\n };\r\n\r\n _self._init = function () {\r\n $_file.bind('change', function () {\r\n //console.log('File change');\r\n _self._upload();\r\n });\r\n $_sender.find('.items-context label>i').on('click', function () { _self._removeItem($(this).closest('label')); });\r\n };\r\n _self._init();\r\n }\r\n\r\n}(jQuery));","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};"],"names":["root","factory","exports","module","define","amd","a","i","self","$","fn","AgoraFileUpload","options","$_sender","this","_self","$_file","find","$_valueNode","$_itemContext","$progressBar","_serviceURL","data","_uploadPath","_fileId","_fileIndex","_autoGenerateThumb","_isAutoGenerateThumbAction","_fileSize","_maxWidth","_maxHeight","_mimeType","attr","_onChange","OnChange","dataURLtoFile","dataurl","filename","arr","split","mime","match","bstr","atob","n","length","u8arr","Uint8Array","charCodeAt","File","type","_send","headers","success","ajax","url","processData","contentType","dataType","_getData","files","_formData","_startProgress","addClass","_updateProgress","count","Math","floor","width","_endProgress","removeClass","_uploadComplete","response","key","$valueXml","xml","$fileValue","val","outerHTML","_bindItems","_createSnapShot","imageUrl","_sendFile","value","html","_getItem","appendTo","_removeItem","$item","remove","$result","name","$resultHidden","$remove","append","on","file","fileType","_chunksCompleted","FileChunk","BufferChunkSize","MaxFileSizeMB","FileStreamPos","EndPos","Size","size","isSubFile","push","slice","chunk","TotalParts","PartCount","shift","FilePartName","_headers","FormData","_chunkComplete","_upload","_performValidation","fileToUpload","indexOf","resizeImage","updatedFileToUpload","webpFileToUpload","undefined","fail","image","Image","crossOrigin","onload","canvas","document","createElement","resizerCanvas","context","getContext","resizeContext","height","naturalHeight","naturalWidth","drawImage","scaleMaxWidth","parseInt","scaleMaxHeight","scaleWidthConstant","scaleHeightConstant","scaleConstant","min","scaleWidth","scaleHeight","resizedDataUrl","toDataURL","webpResizedDataUrl","replace","e","onerror","readerFileData","FileReader","addEventListener","src","result","readAsDataURL","alert","trim","_fileTypes","_validFileType","_fileTypeToCheck","$body","$wrapper","$video","$source","$canvas","video","isStarted","videoWidth","videoHeight","pause","console","error","buildSnap","play","_init","bind","closest","jQuery","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","getter","__esModule","d","definition","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","r","Symbol","toStringTag"],"sourceRoot":""}