@fengzhongwen/kukan-ui 1.0.21 → 1.0.22

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.
@@ -1,2 +1,2 @@
1
- (function(e,t){"object"===typeof exports&&"object"===typeof module?module.exports=t():"function"===typeof define&&define.amd?define([],t):"object"===typeof exports?exports["kukan-ui"]=t():e["kukan-ui"]=t()})("undefined"!==typeof self?self:this,(function(){return function(e){var t={};function i(s){if(t[s])return t[s].exports;var o=t[s]={i:s,l:!1,exports:{}};return e[s].call(o.exports,o,o.exports,i),o.l=!0,o.exports}return i.m=e,i.c=t,i.d=function(e,t,s){i.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:s})},i.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&"object"===typeof e&&e&&e.__esModule)return e;var s=Object.create(null);if(i.r(s),Object.defineProperty(s,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)i.d(s,o,function(t){return e[t]}.bind(null,o));return s},i.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return i.d(t,"a",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p="",i(i.s="fb15")}({"0786":function(e,t,i){},5554:function(e,t,i){},"5d9e":function(e,t,i){"use strict";i("9136")},"69a0":function(e,t,i){(function(t){e.exports=t()})((function(e){"use strict";var t=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"];function i(e,t){var i=e[0],s=e[1],o=e[2],a=e[3];i+=(s&o|~s&a)+t[0]-680876936|0,i=(i<<7|i>>>25)+s|0,a+=(i&s|~i&o)+t[1]-389564586|0,a=(a<<12|a>>>20)+i|0,o+=(a&i|~a&s)+t[2]+606105819|0,o=(o<<17|o>>>15)+a|0,s+=(o&a|~o&i)+t[3]-1044525330|0,s=(s<<22|s>>>10)+o|0,i+=(s&o|~s&a)+t[4]-176418897|0,i=(i<<7|i>>>25)+s|0,a+=(i&s|~i&o)+t[5]+1200080426|0,a=(a<<12|a>>>20)+i|0,o+=(a&i|~a&s)+t[6]-1473231341|0,o=(o<<17|o>>>15)+a|0,s+=(o&a|~o&i)+t[7]-45705983|0,s=(s<<22|s>>>10)+o|0,i+=(s&o|~s&a)+t[8]+1770035416|0,i=(i<<7|i>>>25)+s|0,a+=(i&s|~i&o)+t[9]-1958414417|0,a=(a<<12|a>>>20)+i|0,o+=(a&i|~a&s)+t[10]-42063|0,o=(o<<17|o>>>15)+a|0,s+=(o&a|~o&i)+t[11]-1990404162|0,s=(s<<22|s>>>10)+o|0,i+=(s&o|~s&a)+t[12]+1804603682|0,i=(i<<7|i>>>25)+s|0,a+=(i&s|~i&o)+t[13]-40341101|0,a=(a<<12|a>>>20)+i|0,o+=(a&i|~a&s)+t[14]-1502002290|0,o=(o<<17|o>>>15)+a|0,s+=(o&a|~o&i)+t[15]+1236535329|0,s=(s<<22|s>>>10)+o|0,i+=(s&a|o&~a)+t[1]-165796510|0,i=(i<<5|i>>>27)+s|0,a+=(i&o|s&~o)+t[6]-1069501632|0,a=(a<<9|a>>>23)+i|0,o+=(a&s|i&~s)+t[11]+643717713|0,o=(o<<14|o>>>18)+a|0,s+=(o&i|a&~i)+t[0]-373897302|0,s=(s<<20|s>>>12)+o|0,i+=(s&a|o&~a)+t[5]-701558691|0,i=(i<<5|i>>>27)+s|0,a+=(i&o|s&~o)+t[10]+38016083|0,a=(a<<9|a>>>23)+i|0,o+=(a&s|i&~s)+t[15]-660478335|0,o=(o<<14|o>>>18)+a|0,s+=(o&i|a&~i)+t[4]-405537848|0,s=(s<<20|s>>>12)+o|0,i+=(s&a|o&~a)+t[9]+568446438|0,i=(i<<5|i>>>27)+s|0,a+=(i&o|s&~o)+t[14]-1019803690|0,a=(a<<9|a>>>23)+i|0,o+=(a&s|i&~s)+t[3]-187363961|0,o=(o<<14|o>>>18)+a|0,s+=(o&i|a&~i)+t[8]+1163531501|0,s=(s<<20|s>>>12)+o|0,i+=(s&a|o&~a)+t[13]-1444681467|0,i=(i<<5|i>>>27)+s|0,a+=(i&o|s&~o)+t[2]-51403784|0,a=(a<<9|a>>>23)+i|0,o+=(a&s|i&~s)+t[7]+1735328473|0,o=(o<<14|o>>>18)+a|0,s+=(o&i|a&~i)+t[12]-1926607734|0,s=(s<<20|s>>>12)+o|0,i+=(s^o^a)+t[5]-378558|0,i=(i<<4|i>>>28)+s|0,a+=(i^s^o)+t[8]-2022574463|0,a=(a<<11|a>>>21)+i|0,o+=(a^i^s)+t[11]+1839030562|0,o=(o<<16|o>>>16)+a|0,s+=(o^a^i)+t[14]-35309556|0,s=(s<<23|s>>>9)+o|0,i+=(s^o^a)+t[1]-1530992060|0,i=(i<<4|i>>>28)+s|0,a+=(i^s^o)+t[4]+1272893353|0,a=(a<<11|a>>>21)+i|0,o+=(a^i^s)+t[7]-155497632|0,o=(o<<16|o>>>16)+a|0,s+=(o^a^i)+t[10]-1094730640|0,s=(s<<23|s>>>9)+o|0,i+=(s^o^a)+t[13]+681279174|0,i=(i<<4|i>>>28)+s|0,a+=(i^s^o)+t[0]-358537222|0,a=(a<<11|a>>>21)+i|0,o+=(a^i^s)+t[3]-722521979|0,o=(o<<16|o>>>16)+a|0,s+=(o^a^i)+t[6]+76029189|0,s=(s<<23|s>>>9)+o|0,i+=(s^o^a)+t[9]-640364487|0,i=(i<<4|i>>>28)+s|0,a+=(i^s^o)+t[12]-421815835|0,a=(a<<11|a>>>21)+i|0,o+=(a^i^s)+t[15]+530742520|0,o=(o<<16|o>>>16)+a|0,s+=(o^a^i)+t[2]-995338651|0,s=(s<<23|s>>>9)+o|0,i+=(o^(s|~a))+t[0]-198630844|0,i=(i<<6|i>>>26)+s|0,a+=(s^(i|~o))+t[7]+1126891415|0,a=(a<<10|a>>>22)+i|0,o+=(i^(a|~s))+t[14]-1416354905|0,o=(o<<15|o>>>17)+a|0,s+=(a^(o|~i))+t[5]-57434055|0,s=(s<<21|s>>>11)+o|0,i+=(o^(s|~a))+t[12]+1700485571|0,i=(i<<6|i>>>26)+s|0,a+=(s^(i|~o))+t[3]-1894986606|0,a=(a<<10|a>>>22)+i|0,o+=(i^(a|~s))+t[10]-1051523|0,o=(o<<15|o>>>17)+a|0,s+=(a^(o|~i))+t[1]-2054922799|0,s=(s<<21|s>>>11)+o|0,i+=(o^(s|~a))+t[8]+1873313359|0,i=(i<<6|i>>>26)+s|0,a+=(s^(i|~o))+t[15]-30611744|0,a=(a<<10|a>>>22)+i|0,o+=(i^(a|~s))+t[6]-1560198380|0,o=(o<<15|o>>>17)+a|0,s+=(a^(o|~i))+t[13]+1309151649|0,s=(s<<21|s>>>11)+o|0,i+=(o^(s|~a))+t[4]-145523070|0,i=(i<<6|i>>>26)+s|0,a+=(s^(i|~o))+t[11]-1120210379|0,a=(a<<10|a>>>22)+i|0,o+=(i^(a|~s))+t[2]+718787259|0,o=(o<<15|o>>>17)+a|0,s+=(a^(o|~i))+t[9]-343485551|0,s=(s<<21|s>>>11)+o|0,e[0]=i+e[0]|0,e[1]=s+e[1]|0,e[2]=o+e[2]|0,e[3]=a+e[3]|0}function s(e){var t,i=[];for(t=0;t<64;t+=4)i[t>>2]=e.charCodeAt(t)+(e.charCodeAt(t+1)<<8)+(e.charCodeAt(t+2)<<16)+(e.charCodeAt(t+3)<<24);return i}function o(e){var t,i=[];for(t=0;t<64;t+=4)i[t>>2]=e[t]+(e[t+1]<<8)+(e[t+2]<<16)+(e[t+3]<<24);return i}function a(e){var t,o,a,r,n,l,d=e.length,u=[1732584193,-271733879,-1732584194,271733878];for(t=64;t<=d;t+=64)i(u,s(e.substring(t-64,t)));for(e=e.substring(t-64),o=e.length,a=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],t=0;t<o;t+=1)a[t>>2]|=e.charCodeAt(t)<<(t%4<<3);if(a[t>>2]|=128<<(t%4<<3),t>55)for(i(u,a),t=0;t<16;t+=1)a[t]=0;return r=8*d,r=r.toString(16).match(/(.*?)(.{0,8})$/),n=parseInt(r[2],16),l=parseInt(r[1],16)||0,a[14]=n,a[15]=l,i(u,a),u}function r(e){var t,s,a,r,n,l,d=e.length,u=[1732584193,-271733879,-1732584194,271733878];for(t=64;t<=d;t+=64)i(u,o(e.subarray(t-64,t)));for(e=t-64<d?e.subarray(t-64):new Uint8Array(0),s=e.length,a=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],t=0;t<s;t+=1)a[t>>2]|=e[t]<<(t%4<<3);if(a[t>>2]|=128<<(t%4<<3),t>55)for(i(u,a),t=0;t<16;t+=1)a[t]=0;return r=8*d,r=r.toString(16).match(/(.*?)(.{0,8})$/),n=parseInt(r[2],16),l=parseInt(r[1],16)||0,a[14]=n,a[15]=l,i(u,a),u}function n(e){var i,s="";for(i=0;i<4;i+=1)s+=t[e>>8*i+4&15]+t[e>>8*i&15];return s}function l(e){var t;for(t=0;t<e.length;t+=1)e[t]=n(e[t]);return e.join("")}function d(e){return/[\u0080-\uFFFF]/.test(e)&&(e=unescape(encodeURIComponent(e))),e}function u(e,t){var i,s=e.length,o=new ArrayBuffer(s),a=new Uint8Array(o);for(i=0;i<s;i+=1)a[i]=e.charCodeAt(i);return t?a:o}function c(e){return String.fromCharCode.apply(null,new Uint8Array(e))}function p(e,t,i){var s=new Uint8Array(e.byteLength+t.byteLength);return s.set(new Uint8Array(e)),s.set(new Uint8Array(t),e.byteLength),i?s:s.buffer}function f(e){var t,i=[],s=e.length;for(t=0;t<s-1;t+=2)i.push(parseInt(e.substr(t,2),16));return String.fromCharCode.apply(String,i)}function h(){this.reset()}return"5d41402abc4b2a76b9719d911017c592"!==l(a("hello"))&&function(e,t){var i=(65535&e)+(65535&t),s=(e>>16)+(t>>16)+(i>>16);return s<<16|65535&i},"undefined"===typeof ArrayBuffer||ArrayBuffer.prototype.slice||function(){function t(e,t){return e=0|e||0,e<0?Math.max(e+t,0):Math.min(e,t)}ArrayBuffer.prototype.slice=function(i,s){var o,a,r,n,l=this.byteLength,d=t(i,l),u=l;return s!==e&&(u=t(s,l)),d>u?new ArrayBuffer(0):(o=u-d,a=new ArrayBuffer(o),r=new Uint8Array(a),n=new Uint8Array(this,d,o),r.set(n),a)}}(),h.prototype.append=function(e){return this.appendBinary(d(e)),this},h.prototype.appendBinary=function(e){this._buff+=e,this._length+=e.length;var t,o=this._buff.length;for(t=64;t<=o;t+=64)i(this._hash,s(this._buff.substring(t-64,t)));return this._buff=this._buff.substring(t-64),this},h.prototype.end=function(e){var t,i,s=this._buff,o=s.length,a=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];for(t=0;t<o;t+=1)a[t>>2]|=s.charCodeAt(t)<<(t%4<<3);return this._finish(a,o),i=l(this._hash),e&&(i=f(i)),this.reset(),i},h.prototype.reset=function(){return this._buff="",this._length=0,this._hash=[1732584193,-271733879,-1732584194,271733878],this},h.prototype.getState=function(){return{buff:this._buff,length:this._length,hash:this._hash.slice()}},h.prototype.setState=function(e){return this._buff=e.buff,this._length=e.length,this._hash=e.hash,this},h.prototype.destroy=function(){delete this._hash,delete this._buff,delete this._length},h.prototype._finish=function(e,t){var s,o,a,r=t;if(e[r>>2]|=128<<(r%4<<3),r>55)for(i(this._hash,e),r=0;r<16;r+=1)e[r]=0;s=8*this._length,s=s.toString(16).match(/(.*?)(.{0,8})$/),o=parseInt(s[2],16),a=parseInt(s[1],16)||0,e[14]=o,e[15]=a,i(this._hash,e)},h.hash=function(e,t){return h.hashBinary(d(e),t)},h.hashBinary=function(e,t){var i=a(e),s=l(i);return t?f(s):s},h.ArrayBuffer=function(){this.reset()},h.ArrayBuffer.prototype.append=function(e){var t,s=p(this._buff.buffer,e,!0),a=s.length;for(this._length+=e.byteLength,t=64;t<=a;t+=64)i(this._hash,o(s.subarray(t-64,t)));return this._buff=t-64<a?new Uint8Array(s.buffer.slice(t-64)):new Uint8Array(0),this},h.ArrayBuffer.prototype.end=function(e){var t,i,s=this._buff,o=s.length,a=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];for(t=0;t<o;t+=1)a[t>>2]|=s[t]<<(t%4<<3);return this._finish(a,o),i=l(this._hash),e&&(i=f(i)),this.reset(),i},h.ArrayBuffer.prototype.reset=function(){return this._buff=new Uint8Array(0),this._length=0,this._hash=[1732584193,-271733879,-1732584194,271733878],this},h.ArrayBuffer.prototype.getState=function(){var e=h.prototype.getState.call(this);return e.buff=c(e.buff),e},h.ArrayBuffer.prototype.setState=function(e){return e.buff=u(e.buff,!0),h.prototype.setState.call(this,e)},h.ArrayBuffer.prototype.destroy=h.prototype.destroy,h.ArrayBuffer.prototype._finish=h.prototype._finish,h.ArrayBuffer.hash=function(e,t){var i=r(new Uint8Array(e)),s=l(i);return t?f(s):s},h}))},"6bfd":function(e,t,i){"use strict";i("0786")},"7b9f":function(e,t,i){"use strict";i("5554")},9136:function(e,t,i){},bfdd:function(e,t,i){"use strict";i("e5ff")},e5ff:function(e,t,i){},fb15:function(e,t,i){"use strict";if(i.r(t),i.d(t,"Upload",(function(){return re})),"undefined"!==typeof window){var s=window.document.currentScript,o=s&&s.src.match(/(.+\/)[^/]+\.js(\?.*)?$/);o&&(i.p=o[1])}let a=null;function r(e){e&&(a=e)}function n(e){return{checkfileStatus:t=>l(t,e.checkfileStatusUrl),filesAllUoloaded:t=>d(t,e.filesAllUoloadedUrl),searchFileIsUploaded:t=>u(t,e.searchFileIsUploadedUrl),searchChunkIsUploaded:t=>c(t,e.searchChunkIsUploadedUrl),uploadFileChunk:t=>p(t,e.uploadFileChunkUrl),addNewFileOfTxt:t=>f(t,e.addNewFileOfTxtUrl),addNewFileOfVideo:t=>h(t,e.addNewFileOfVideoUrl),addNewFileOfAudio:t=>g(t,e.addNewFileOfAudioUrl),addNewFileOfPic:t=>m(t,e.addNewFileOfPicUrl),addNewFileOfSubTitle:t=>C(t,e.addNewFileOfSubTitleUrl)}}function l(e,t){return a({url:t,method:"post",data:e})}function d(e,t){return a({url:t,method:"post",data:e})}function u(e,t){return a({url:t,method:"post",data:e})}function c(e,t){return a({url:t,method:"post",data:e})}function p(e,t){const i=e instanceof FormData?e:new FormData;return e instanceof FormData||!e||"object"!==typeof e||Object.keys(e).forEach(t=>{i.append(t,e[t])}),a({url:t,method:"post",data:i,headers:{"Content-Type":"multipart/form-data"},timeout:6e5})}function f(e,t){return a({url:t,method:"post",data:e})}function h(e,t){return a({url:t,method:"post",data:e})}function g(e,t){return a({url:t,method:"post",data:e})}function m(e,t){return a({url:t,method:"post",data:e})}function C(e,t){return a({url:t,method:"post",data:e})}var v=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"upload-multiple"},[i("input",{ref:"multiplePloadInput",staticStyle:{display:"none"},attrs:{type:"file",multiple:e.multiple,accept:e.limitFileType},on:{change:e.handleSelectedMultipleFiles}}),i("div",{staticClass:"upload-multiple-box"},[i("div",{ref:"upLoded_box",staticClass:"multiple_upload_area",class:e.multipleUploadAreaClass(),on:{click:e.reviewUploadMultipleFiles,dragover:function(t){return t.preventDefault(),e.onDragOver(t)},dragleave:function(t){return t.preventDefault(),e.onDragLeave(t)},drop:function(t){return t.preventDefault(),e.onDrop(t)}}},[e.isUploading?i("div",{staticClass:"upload-loading-mask",style:e.setUploadingLoadingMaskStyle()}):e._e(),e.showIconTip?i("div",[i("i",{staticClass:"el-icon-upload"})]):e._e(),i("div",[e._v(e._s(e.startButtonText))]),e._t("tips")],2),e.pictureConfig.show&&e.showSuccessPicture?i("div",{staticClass:"upload-multiple-box-right"},[i("div",{staticClass:"upload-multiple-box-close",on:{click:function(t){return t.stopPropagation(),e.clearPicture(t)}}},[i("i",{staticClass:"el-icon-close"})]),i("img",{attrs:{src:e.pictureConfig.url,alt:e.pictureConfig.altText}})]):e._e()]),e.isShowAllUploadButton?i("el-button",{staticClass:"upload_button",attrs:{type:"primary",disabled:e.isUploading||0===e.needUploadFilesArr.length},on:{click:e.startUploadMultipleFiles}},[e._v(" 全部文件开始上传 ")]):e._e(),"table"===e.model?i("div",{staticClass:"upload-multiple-table"},[i("Upload_table",{attrs:{needUploadFilesArr:e.needUploadFilesArr,fileConfig:e.fileConfig,fileType:e.addDataBaseLinkConfig.addFileType,isUploading:e.isUploading},on:{delteSelectedFile:e.delteSelectedFile,cancelFileUpload:e.cancelFileUpload,resetFileUpload:e.resetFileUpload,handleSelectionChange:e.tableSelectionChange}})],1):e._e(),"info"===e.model?i("div",{staticClass:"multiple_upload_list"},[i("span",{staticClass:"tip_title"},[i("span",{staticClass:"title"},[i("div",[e._v("文件列表")]),i("transition",{attrs:{name:"totalProgress",mode:"out-in"}},[e.needUploadFilesArr.length>0?i("div",{staticClass:"total_progress"},[i("div",{staticClass:"logo"}),i("span",[e._v("总进度:")]),e.fileConfig.uploadController?i("div",[i("el-tag",{attrs:{size:"mini",type:e.isDanger}},[e._v("上传错误:"+e._s(e.fileConfig.skipError_num))]),i("el-tag",{attrs:{size:"mini",type:""}},[e._v("上传成功:"+e._s(e.fileConfig.completed_num))]),i("el-tag",{attrs:{size:"mini",type:""}},[e._v("文件总数:"+e._s(e.fileConfig.filetotal_num))])],1):e._e()]):e._e()])],1),i("span",[i("el-button",{attrs:{size:"mini",type:"",disabled:e.isUploading||0===e.needUploadFilesArr.length},on:{click:e.handleSelectAllFile}},[e._v("全选所有文件")]),i("el-button",{attrs:{size:"mini",type:"danger",disabled:e.isUploading||0===e.needUploadFilesArr.length},on:{click:e.delteSelectedFile}},[e._v("移除所选文件")])],1)]),i("div",{staticClass:"selected_list_area"},[e.needUploadFilesArr.length>0?i("div",{staticClass:"selected_list"},e._l(e.needUploadFilesArr,(function(t,s){return i("Card_2",{key:s,attrs:{index:s,"file-config":t},on:{cancelFileUpload:e.cancelFileUpload,resetFileUpload:e.resetFileUpload,handleClickOnlyFile:e.handleClickOnlyFile}})})),1):i("div",{staticClass:"no_file"},[i("i",{staticClass:"el-icon-document"}),i("div",[e._v("暂无文件,请点击或拖拽文件到上传区域")])])])]):e._e()],1)},y=[];function _(e){return e?"string"===typeof e?e:e instanceof File||e instanceof Blob||e.type&&"string"===typeof e.type?e.type:"":""}const w={isImage:e=>{const t=_(e);return/(jpg|jpeg|png|gif|webp|bmp|svg|tiff|ico)$/i.test(t)},isVideo:e=>{const t=_(e);return/(mp4|avi|webm|mov|wmv|flv|mkv|mpeg|3gp)$/i.test(t)},isAudio:e=>{const t=_(e);return/^audio\/(mpeg|mp3|mp4|x-m4a|wav|ogg|aac|flac|mid|x-midi|opus|webm)$/i.test(t)||/\.(mp3|wav|ogg|aac|flac|m4a|mid|opus)$/i.test(t)||/^(mp3|wav|ogg|aac|flac|m4a|mid|opus)$/i.test(t)},isSubtitle:e=>{const t=_(e);return console.log(t),/(vtt|ass|srt)$/i.test(t)},isDocument:e=>!0};var b=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{key:e.fileConfig.name+"_"+e.index,staticClass:"only_file_area",class:{only_file_area_isActive:e.fileConfig.isSelected,"fade-in-element":!0},on:{click:function(t){return e.handleClickOnlyFile(e.fileConfig)}}},[i("div",{staticClass:"file_card_top"},[i("div",{staticClass:"file_type"},[e._v(" "+e._s(e.getFileType(e.fileConfig.name))+" ")]),i("div",{staticClass:"file_name"},[e._v(e._s(e.fileConfig.name))])]),i("div",{staticClass:"file_card_bottom"},[i("div",{staticClass:"option"},[i("div",{staticClass:"status_text"},[i("span",{class:e.uploadingTextStyle(e.fileConfig.tip)},[e._v(e._s(e.fileConfig.tip))])]),"上传中"===e.fileConfig.tip?i("div",{staticClass:"option_text",on:{click:function(t){return t.stopPropagation(),e.cancelFileUpload(e.fileConfig)}}},[i("el-tag",{attrs:{size:"mini",type:"danger"}},[e._v("取消")])],1):e._e(),"已取消"===e.fileConfig.tip||"上传出错"===e.fileConfig.tip||"未知出错"===e.fileConfig.tip?i("div",{staticClass:"option_text",on:{click:function(t){return t.stopPropagation(),e.resetFileUpload(e.fileConfig)}}},[i("el-tag",{attrs:{size:"mini",type:""}},[e._v("重试")])],1):e._e()]),i("div",[i("span",[e._v(e._s(e.uploadingNumber(e.fileFormatValid(e.fileConfig.file.size),e.fileConfig.uploadProgress))+"/"+e._s(e.fileFormatValid(e.fileConfig.file.size))+"mb")])])]),i("div",{staticClass:"progress_area"},[i("el-progress",{staticClass:"custom-progress",attrs:{color:e.colors,"show-text":!1,percentage:e.fileConfig.uploadProgress}})],1)])},F=[],S={name:"UploadCardVerFirst",props:{fileConfig:{required:!0,type:Object,default:()=>({})},index:{required:!1,type:Number,default:0}},data(){return{colors:[{color:"#bae6fd",percentage:20},{color:"#7dd3fc",percentage:40},{color:"#38bdf8",percentage:60},{color:"#2563eb",percentage:80},{color:"#6366f1",percentage:100}]}},methods:{handleClickOnlyFile(e){this.$emit("handleClickOnlyFile",this.fileConfig)},getFileType(e){return e.split(".")[1]},uploadingTextStyle(e){return"出错"===e||"查询文件地址超时"===e||"上传出错"===e?"uploading_error":"已完成"===e?"uploading_success":"等待上传"===e?"uploading_wait":""},uploadingNumber(e,t){return t?(e*(t/100)).toFixed(2):0},fileFormatValid(e){const t=(e/1048576).toFixed(2);return t},resetFileUpload(e){this.$emit("resetFileUpload",e)},cancelFileUpload(e){this.$emit("cancelFileUpload",e)}}},k=S;i("7b9f");function U(e,t,i,s,o,a,r,n){var l,d="function"===typeof e?e.options:e;if(t&&(d.render=t,d.staticRenderFns=i,d._compiled=!0),s&&(d.functional=!0),a&&(d._scopeId="data-v-"+a),r?(l=function(e){e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,e||"undefined"===typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),o&&o.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(r)},d._ssrRegister=l):o&&(l=n?function(){o.call(this,(d.functional?this.parent:this).$root.$options.shadowRoot)}:o),l)if(d.functional){d._injectStyles=l;var u=d.render;d.render=function(e,t){return l.call(t),u(e,t)}}else{var c=d.beforeCreate;d.beforeCreate=c?[].concat(c,l):[l]}return{exports:e,options:d}}var x=U(k,b,F,!1,null,"cdec1cec",null),T=x.exports,A=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"upload_table"},[i("div",{staticClass:"header"},[i("div",{staticClass:"total"},[i("span",[e._v("已选择"+e._s(e.needUploadFilesArr.length)+"个文件")]),e.needUploadFilesArr.length?i("el-tag",{attrs:{type:"",size:"mini"}},[e._v("上传中"+e._s(e.totalNumber))]):e._e()],1),i("div",{staticClass:"options"},[i("el-button",{attrs:{type:"danger",size:"mini",disabled:e.isUploading||0===e.needUploadFilesArr.length},on:{click:function(t){return e.handleClickOnlyFile()}}},[e._v("清除已选")])],1)]),i("el-table",{staticStyle:{width:"100%"},attrs:{data:e.needUploadFilesArr,"default-sort":{prop:"fileName",order:"descending"},border:"",height:"400px"},on:{"sort-change":e.handleSortChange,"selection-change":e.handleSelectionChange}},[i("el-table-column",{attrs:{type:"selection",width:"40"}}),i("el-table-column",{attrs:{type:"index",width:"40"}}),i("el-table-column",{attrs:{label:"文件名",width:"300"},scopedSlots:e._u([{key:"default",fn:function(t){return[i("div",{staticClass:"file_name"},[i("div",{staticClass:"file_type"},[e._v(" "+e._s(e.getFileType(t.row.name))+" ")]),i("span",{staticClass:"file_name_text"},[e._v(e._s(t.row.name))])])]}}])}),i("el-table-column",{attrs:{label:"大小",width:"100"},scopedSlots:e._u([{key:"default",fn:function(t){return[i("div",{staticClass:"file_size"},[i("span",{staticClass:"file_size_text"},[e._v(e._s(e.fileFormatValid(t.row.file.size))+" mb")])])]}}])}),i("el-table-column",{attrs:{label:"状态",width:"100"},scopedSlots:e._u([{key:"default",fn:function(t){return[i("div",{staticClass:"status_text"},[i("span",{class:e.uploadingTextStyle(t.row.tip)},[e._v(e._s(t.row.tip))])])]}}])}),i("el-table-column",{attrs:{label:"进度",width:"auto"},scopedSlots:e._u([{key:"default",fn:function(t){return[i("div",{staticClass:"progress_area"},[i("el-progress",{staticClass:"custom-progress",attrs:{color:e.colors,"show-text":!0,percentage:t.row.uploadProgress}})],1)]}}])}),i("el-table-column",{attrs:{label:"操作",width:"auto"},scopedSlots:e._u([{key:"default",fn:function(t){return["上传中"===t.row.tip?i("div",{staticClass:"option_text",on:{click:function(i){return i.stopPropagation(),e.cancelFileUpload(t.row)}}},[i("span",{staticStyle:{color:"#f74444",cursor:"pointer"}},[e._v("取消上传")])]):e._e(),"已取消"===t.row.tip||"上传出错"===t.row.tip||"未知出错"===t.row.tip?i("div",{staticClass:"option_text",on:{click:function(i){return i.stopPropagation(),e.resetFileUpload(t.row)}}},[i("span",{staticStyle:{color:"#f74444",cursor:"pointer"}},[e._v("重试")])]):e._e()]}}])})],1)],1)},P=[],I={name:"Upload_Table",props:{needUploadFilesArr:{type:Array,default:()=>[]},fileConfig:{type:Object,default:()=>{}},fileType:{type:String,default:""},isUploading:{type:Boolean}},data(){return{colors:[{color:"#bae6fd",percentage:20},{color:"#7dd3fc",percentage:40},{color:"#38bdf8",percentage:60},{color:"#2563eb",percentage:80},{color:"#6366f1",percentage:100}]}},computed:{totalNumber(){return this.fileConfig.completed_num+"/"+this.needUploadFilesArr.length}},methods:{handleSortChange(e){this.$emit("sortChange",e)},uploadingTextStyle(e){return"出错"===e||"查询文件地址超时"===e||"上传出错"===e?"uploading_error":"已完成"===e?"uploading_success":"等待上传"===e?"uploading_wait":""},resetFileUpload(e){this.$emit("resetFileUpload",e)},cancelFileUpload(e){this.$emit("cancelFileUpload",e)},handleClickOnlyFile(){this.$emit("delteSelectedFile")},fileFormatValid(e){const t=(e/1048576).toFixed(2);return t},getFileType(e){return e.split(".")[1]},handleSelectionChange(e){const t=e.map(e=>e.index);this.$emit("handleSelectionChange",t)}}},$=I,D=(i("6bfd"),U($,A,P,!1,null,"61052c10",null)),O=D.exports,E=i("69a0"),B=i.n(E);const M={entranceTime:12e4,uploadChunkTime:6e5,dropStateOverTime:6e5,dropStatePollTime:2e3},N=5242880;let z={};const L={checkfileStatusUrl:"/zt-api/resources/check",filesAllUoloadedUrl:"/zt-api/resources/chunk/merge",searchFileIsUploadedUrl:"/zt-api/resources/check",searchChunkIsUploadedUrl:"/zt-api/resources/check/chunk",uploadFileChunkUrl:"/zt-api/resources/chunk/upload",addNewFileOfTxtUrl:"/api/v1/program/create-doc",addNewFileOfVideoUrl:"/api/v1/program/create-video",addNewFileOfAudioUrl:"/api/v1/program/create-audio",addNewFileOfPicUrl:"/api/v1/program/create-pic",addNewFileOfSubTitleUrl:"/api/v1/program/create-srt"};async function V(e,t,i,s,o,a,r,l,d=L){z=n(d);const u=[];for(let n=0;n<e.length;n++){const i=e[n],r=R(i.file),l=j(t,i.updateProgress);o(i.index,l);const d=()=>{const e=X(i.file,r,l,i.updateProgress,i.progress_error,s);return a(r,e),e};u.push({index:i.index,taskFn:d})}const c=j(i,r);return l(c,"上传中"),c.runTasks(u)}function j(e,t){let i=[],s=[],o=[],a=0,r=!1,n=null,l=0,d=0,u=0;const c=()=>0===u?0:Math.round(d/u*100),p=e=>{if(t&&"function"===typeof t){const s=c();e&&(Array.isArray(o)&&o.length>0||r)?console.log("重要:进度条强制不更新",o.length):t({percentage:s,notShowTip:!0,tip:100===s?"上传完成":"上传中",completed:d,total:u,active:a,queued:i.length,skipError:l})}},f=()=>{if(t&&"function"===typeof t){const e=c();console.log("异步工具内部更新进度条为错误状态"),t({percentage:e,notShowTip:!1,tip:"上传出错",completed:d,total:u,active:a,queued:i.length,skipError:l})}};return{async errorActiveIsFull(e){const t=o.filter(t=>t.id===e);if(t.length>0){s=o.filter(t=>t.id!==e);const a=t[0],r=await this.add(!0,{taskFn:a.task,index:a.id});console.log("重新尝试的结果",r,i)}},async startResetErrorTask(e){const t=o.filter(t=>t.id===e);if(t.length>0){o=o.filter(t=>t.id!==e);const s=t[0],a=await this.add(!0,{taskFn:s.task,index:s.id});console.log("重新尝试的结果",a,i)}},errorFilehandled(e){o=[...o,...i.filter(t=>t.id===e)],i=i.filter(t=>t.id!==e)},startResetCanceledyTask(e){const t=s.filter(t=>t.id===e);t.length>0&&(i.push(t[0]),s=s.filter(t=>t.id!==e)),h()},cancelFileUpload(e){const t=i.filter(t=>t.id===e);return t.length>0&&(s=[...s,...t],i=i.filter(t=>t.id!==e),!0)},add(e,t){return new Promise((s,o)=>{i.push({task:t.taskFn,id:t.index,resolve:s,reject:o}),h(e)})},runTasks(e){return new Promise((t,i)=>{const o=[];let a=!1;u=e.length,e.forEach((r,n)=>{this.add(!1,r).then(i=>{o[n]=i,(d+s.length===e.length&&!a||!1===i.status&&!i.skip)&&t(o)}).catch(e=>{a=!0,i(e)})})})},pause(){r=!0},resume(){r=!1},clear(){i=[],o=[],d=0,u=0},getStatus(){return{queue:i,completed:d,activeCount:a,isPaused:r,totalTasks:u,skipError:l}},getProgress(){return{percentage:c(),completed:d,total:u,active:a,queued:i.length}}};async function h(t=!1){r&&(n||await new Promise(e=>{n=e}));while(i.length>0&&a<e&&!r){const{task:e,id:s,resolve:n,reject:u}=i.shift();a++,e().then(i=>{i.status?t?(d++,l--,p(!1)):(d++,p(!0)):(t||l++,o.push({task:e,id:s,resolve:n,reject:u}),f(),i.skip?(console.error("已经出错的统计的错误任务数组",o),console.error("===============跳过错误的文件上传================,错误的原因:",i.error,i)):r=!0),n(i)}).catch(i=>{console.log("上传时候失败",i),t||l++,o.push({task:e,id:s,resolve:n,reject:u}),f(),u(i)}).finally(()=>{a--,h(t)})}}}function R(e){const t=Date.now(),i=Math.random().toString(36).substr(2,9),s=`${e.name}_${e.size}_${t}_${i}`;return s.replace(/[^a-zA-Z0-9_-]/g,"_")}async function q(e,t){const{uploadId:i,fileHash:s,fileSize:o,fileName:a}=e,{addProgramVersion:r,addFileType:n,addDataBaseLink:l}=t,d=new Promise(e=>{const t=setTimeout(()=>{e({status:!1,error:"文件检查超时",uploadId:i,skip:!0}),clearTimeout(t)},M.entranceTime)}),u=(async()=>{try{const e=await ee(s,o);return{status:!0,fileCheck:e}}catch(e){return{status:!1,error:e,uploadId:i}}})(),c=await Promise.race([u,d]);if(!c.status)return console.debug("=============网络超时或者网络错误================,以下为check_result的错误结果"),console.debug(c),console.debug("=============网络超时或者网络错误================"),{fileIsExist:!1,status:!1,error:"网络超时或者网络错误",uploadId:i,skip:!0};if(c.fileCheck){if(!l)return{fileIsExist:!0,status:!0,uploadId:i,uuid:c.fileCheck,fileName:a};const e=await te(c.fileCheck,r,n);return e.status?(console.log("文件已经存在,直接创建新链接"),{fileIsExist:!0,status:!0,uploadId:i,uuid:c.fileCheck,fileName:a}):{fileIsExist:!0,status:!1,error:"文件路径创建失败",uploadId:i,skip:!0}}return{fileIsExist:!1,status:!0,uploadId:i,uuid:c.fileCheck,fileName:a}}async function X(e,t,i,s,o,a){const{addProgramVersion:r,addFileType:n,addDataBaseLink:l}=a,d=await Y(e),u=e.size,c=e.name,p=(e,t,i)=>{s({percentage:e,notShowTip:t,tip:i})};try{p(0,!1,"解析中"),console.log("%c 文件上传中:","color: #2196F3; font-weight: bold;",c);const s=await q({uploadId:t,fileHash:d,fileSize:u,fileName:c},a);if(console.log("是否分块上传?",!s.fileIsExist),s.fileIsExist||s.error)return s.status?(p(100,!1,"已完成"),s):(o(),s);p(0,!1,"准备中");const f=await H(e,[],N);console.groupCollapsed("%c 分片上传流程","color: #2196F3; font-weight: bold;"),console.log("切片列表",f);const h=await Q(f,d,e.name,t,i);if(h.length>0)return console.debug("=============文件分片上传失败================,以下为分片的错误列表:",h),{status:!1,error:"文件块上传失败",uploadId:t,skip:!0};p(99,!0,"上传中");const g=await Z(d,u);if(console.log("合并切片,结果:",g),!g)return p(0,!1,"文件合并失败"),{status:!1,error:"文件合并失败",uploadId:t,skip:!0};console.groupEnd();const m=await G(d,M.dropStatePollTime,M.dropStateOverTime);if(!m.result)return p(0,!1,m.Message),{status:!1,error:m.Message,uploadId:t,skip:!0};if(!l)return p(100,!1,"已完成"),{status:!0,uploadId:t,uuid:m.fileId,fileName:c};const C=await te(m.fileId,r,n);return C.status?(p(100,!1,"已完成"),{status:!0,uploadId:t,uuid:m.fileId,fileName:c}):(p(0,!1,"内部错误"),{status:!1,error:"内部错误",uploadId:t,skip:!0})}catch(f){return console.debug("=============单个文件上传出错(意料之外的出错)================,未知出错:",f),p(0,!1,"未知出错"),{status:!1,error:f,uploadId:t,skip:!0}}}async function Y(e){const t=new B.a.ArrayBuffer,i=5242880,s=Math.ceil(e.size/i);for(let o=0;o<s;o++){const s=o*i,a=Math.min(s+i,e.size),r=e.slice(s,a),n=await r.arrayBuffer();t.append(n),o%100===0&&await new Promise(e=>setTimeout(e,0))}return t.end()}async function H(e,t=[],i=5242880){const s=[];let o=0,a=0;while(o<e.size){const r=e.slice(o,o+i),n=await W(r);t.includes(a)||s.push({chunk:r,index:a,start:o,end:Math.min(o+i,e.size),hash:n,size:Math.min(i,e.size-o)}),o+=i,a++}return s}function W(e){return new Promise(t=>{const i=new FileReader,s=new B.a.ArrayBuffer;i.onload=function(e){s.append(e.target.result),t(s.end())},i.readAsArrayBuffer(e)})}async function Q(e,t,i,s,o){const a=e.length,r=e.map((e,s)=>{const o=async()=>{const o={filename:i,index:e.index,total:a,identifier:t,chunkIdentifier:e.hash,file:e.chunk};try{const i=await K(t,e.hash);if(i)return{status:!0,msg:"文件块已经存在了"}}catch(d){return{status:!1,msg:d}}const r=new Promise(e=>{const t=setTimeout(()=>{e({status:!1,msg:"文件错误"}),clearTimeout(t)},M.uploadChunkTime)}),n=(async()=>{try{const e=await z.uploadFileChunk(o);return"Success"===e.code?{status:!0,msg:"文件块上传成功"}:{status:!1,msg:"文件块上传失败"}}catch(d){return{status:!1,msg:"文件块上传失败"}}})(),l=await Promise.race([n,r]);return console.log("块上传,序号:",s,l),l};return{taskFn:o,index:s}}),n=await o.runTasks(r);return n.filter(e=>!0!==e.status)}async function Z(e,t){const i=await z.filesAllUoloaded({size:t,identifier:e});return"Success"===i.code}async function K(e,t){const i=await z.searchChunkIsUploaded({identifier:e,chunkIdentifier:t});return i.data}async function G(e,t=4e3,i=1e4){let s=0,o=0;const a=new Promise((i,o)=>{s=setInterval(async()=>{const t=await J(e);"Success"===t.code&&"STORAGE"===t.data.status?i({result:!0,Message:"文件状态成功",fileId:t.data.uuid,version_id:t.version}):"Success"===t.code&&"ERROR"===t.data.status&&i({result:!1,Message:"文件状态错误",fileId:t.data.uuid,version_id:t.version})},t)}),r=new Promise((e,t)=>{o=setTimeout(()=>{console.log("文件上传超时了"),e({result:!1,Message:"文件合并超时"})},i)});return Promise.race([a,r]).then(e=>(s&&(clearInterval(s),s=null),o&&(clearTimeout(o),o=null),e.result?{result:!0,fileId:e.fileId,version_id:e.version_id,Message:e.Message}:{result:!1,Message:e.Message})).catch(e=>e)}async function J(e){const t=await z.checkfileStatus({identifier:e});return t}async function ee(e,t){const i=await z.searchFileIsUploaded({identifier:e,size:t});return i?i.data:""}async function te(e,t,i){let s=null;return"txt"===i?s=0===t?await z.addNewFileOfTxt({uuid:e}):await z.addNewFileOfTxt({version_id:t,uuid:e}):"video"===i?s=await z.addNewFileOfVideo({version_id:t,uuid:e}):"audio"===i?s=await z.addNewFileOfAudio({version_id:t,uuid:e}):"subTitle"===i?s=await z.addNewFileOfSubTitle({version_id:t,uuid:e}):"pictrue"===i&&(s=await z.addNewFileOfPic({version_id:t,video_id:0,uuid:e})),0===s.code?s.data.length<1?{status:!1,message:"文件路径创建失败"}:{status:!0,message:"文件路径创建成功"}:{status:!1,message:"文件路径创建失败"}}var ie={name:"KukanUpload",components:{Card_2:T,Upload_table:O},props:{addDataBaseLinkConfig:{required:!1,type:Object,default:()=>({addDataBaseLink:!1,addFileType:"",addProgramVersion:0})},autoUpload:{required:!1,type:Boolean,default:!0},multiple:{required:!1,type:Boolean},startButtonText:{required:!1,type:String,default:""},showSuccessPicture:{required:!1,type:Boolean,default:!0},model:{required:!0,type:String,default:"small"},showIconTip:{required:!1,type:Boolean,default:!0},noneBoder:{required:!1,type:Boolean,default:!1},apiObj:{required:!1,type:Object,default:()=>({})},maxFileConcurrent:{required:!1,type:Number,default:2},maxFileChunkConcurrent:{required:!1,type:Number,default:2}},data(){return{pictureConfig:{show:!1,url:"",altText:"封面图片"},fileConfig:{overallProgress:0,notShowTip:!0,tip:"等待上传",uploadController:null,skipError_num:0,filetotal_num:0,completed_num:0,maxFileConcurrent:this.maxFileConcurrent},program_id:0,needUploadFilesArr:[],multipleChunkConfig:{fileQueues:new Map,progressCallbacks:new Map,uploadTasks:new Map,chunkSize:1048576,maxConcurrent:this.maxFileChunkConcurrent}}},computed:{limitFileType(){return"txt"===this.addDataBaseLinkConfig.addFileType?"":"video"===this.addDataBaseLinkConfig.addFileType?"video/*":"pictrue"===this.addDataBaseLinkConfig.addFileType?"image/*":"audio"===this.addDataBaseLinkConfig.addFileType?"audio/*":"subTitle"===this.addDataBaseLinkConfig.addFileType?".srt, .vtt, .ass, .ssa, .smi, .webvtt, .ttml, .dfxp, .lrc, .vtt, .srt, .txt":""},isShowAllUploadButton(){if("info"===this.model&&!0!==this.autoUpload)return!0},isDanger(){return this.fileConfig.skipError_num>0?"danger":""},currentFileUploadedArr(){return this.fileConfig.uploadController.getStatus()},isUploading(){if(this.needUploadFilesArr&&this.needUploadFilesArr.length>0){const e=this.needUploadFilesArr.some(e=>"上传中"===e.tip||e.notShowTip&&e.uploadProgress>=0&&e.uploadProgress<100);return e}return!1}},mounted(){},methods:{removeFileInform(e){this.$emit("removeFile",e)},informUploadedOfRefresh(){this.$emit("informTableOfRefresh")},uploadedResult(e){this.$emit("handelResult",e)},uploadedUUIDs(e){this.$emit("getUUID",e)},uploadStart(){this.$emit("uploadStart")},tableSelectionChange(e){this.needUploadFilesArr.forEach(t=>{t.isSelected=e.includes(t.index)})},uploadingOtherFilterFun(e){return new Promise(t=>{let i=!1;const s=e=>{Array.isArray(e)&&(this.needUploadFilesArr=e),console.log("上传开始后指定其他的文件筛选逻辑",this.needUploadFilesArr),i||(i=!0,t())};this.$emit("otherFilterFiles",e,s),setTimeout(()=>{i||(i=!0,t())},500)})},resetConfig(){if(this.fileConfig&&this.fileConfig.uploadController)try{this.pauseAllQueue(),this.fileConfig.uploadController.clear()}catch(e){console.error(e)}this.fileConfig.uploadController=null,this.multipleChunkConfig.uploadTasks=new Map,this.multipleChunkConfig.fileQueues=new Map,this.needUploadFilesArr=[],this.fileConfig.skipError_num>0?(this.fileConfig.tip="上传出错",this.fileConfig.notShowTip=!1):(this.fileConfig.tip="等待上传",this.fileConfig.notShowTip=!0,this.fileConfig.overallProgress=0)},setUploadingLoadingMaskStyle(){return{"--spinner-size":"mini"===this.model?"20px":"40px"}},multipleUploadAreaClass(){return{multiple_upload_area_disabled:this.isUploading,small_model:"small"===this.model,mini_model:"mini"===this.model}},uploadingTextStyle(e){return"出错"===e||"查询文件地址超时"===e||"上传出错"===e?"uploading_error":"已完成"===e?"uploading_success":"等待上传"===e?"uploading_wait":""},setPictureConfig(e){if(!e)return;const t=Object({NODE_ENV:"production",BASE_URL:"/"}).VUE_APP_ZT_BASE_API+"/resources/open/view/image?";this.pictureConfig.show=!0,this.pictureConfig.url=t+"uuid="+e,this.pictureConfig.altText="读取成功"},clearPicture(){this.pictureConfig.show=!1,this.pictureConfig.url="",this.pictureConfig.altText="封面图片"},totalProgressStatus(e){return e.notShowTip?e.overallProgress>99?"success":null:e.overallProgress<100?"exception":null},progressStatus(e){return e<100?"active":"success"},pauseAllQueue(){this.fileConfig.uploadController.pause(),this.multipleChunkConfig.fileQueues.forEach((e,t,i)=>{e.pause()})},async searchFilePathIsExist(e){let t=[];const i=await this.$store.dispatch("app/getMediaList",{currentFileType:this.addDataBaseLinkConfig.addFileType,version_id:this.addDataBaseLinkConfig.programVersion,page_num:1,page_sizet:10,file_id:"",file_name:e,imageIsOnlyImg:1===this.imageIsOnlyImgOfButton});return 0===i.code&&("txt"===this.addDataBaseLinkConfig.addFileType?t=i.data.doc_list:"video"===this.addDataBaseLinkConfig.addFileType?t=i.data.video_list:"audio"===this.addDataBaseLinkConfig.addFileType?t=i.data.audio_list:"subTitle"===this.addDataBaseLinkConfig.addFileType?t=i.data.srt_list:"pictrue"===this.addDataBaseLinkConfig.addFileType&&(t=i.data.pic_list)),t.length>1},handleSelectAllFile(){this.needUploadFilesArr.forEach(e=>{e.isSelected=!0})},resetFileUpload(e){if("上传出错"===e.tip){const t=e.index,i=this.multipleChunkConfig.fileQueues,s=i&&"function"===typeof i.get?i.get(t):i[t];s&&"function"===typeof s.resume&&(s.resume(),s.clear());const o=this.fileConfig&&this.fileConfig.uploadController&&"function"===typeof this.fileConfig.uploadController.getStatus?this.fileConfig.uploadController.getStatus():{activeCount:0};o.activeCount>=this.fileConfig.maxFileConcurrent?(console.debug("队列已满",this.fileConfig.uploadController),this.fileConfig&&this.fileConfig.uploadController&&"function"===typeof this.fileConfig.uploadController.errorActiveIsFull&&(this.fileConfig.uploadController.errorActiveIsFull(e.index),e.tip="上传中",console.log("item是否修改成功",e.tip))):(console.debug("队列未满",this.fileConfig.uploadController),this.fileConfig.uploadController.startResetErrorTask(e.index))}else if("已取消"===e.tip){const t=this.fileConfig&&this.fileConfig.uploadController&&"function"===typeof this.fileConfig.uploadController.getStatus?this.fileConfig.uploadController.getStatus():{activeCount:0};t.activeCount>=this.fileConfig.maxFileConcurrent?this.fileConfig&&this.fileConfig.uploadController&&"function"===typeof this.fileConfig.uploadController.errorActiveIsFull&&(e.tip="上传中",this.fileConfig.uploadController.startResetCanceledyTask(e.index),console.log("item是否修改成功",e.tip)):this.fileConfig.uploadController.startResetCanceledyTask(e.index)}},cancelFileUpload(e){if(!this.fileConfig.uploadController)return void(this.needUploadFilesArr=this.needUploadFilesArr.filter(t=>t.index!==e.index));const t=this.fileConfig.uploadController.cancelFileUpload(e.index);t?(this.$set(e,"notShowTip",!1),this.$set(e,"tip","已取消")):this.$message.error("正在上传,不可取消")},handleClickOnlyFile(e){e.isSelected=!e.isSelected},delteSelectedFile(){const e=[],t=[];this.needUploadFilesArr.forEach(i=>{i.isSelected?(i.isSelected=!1,t.push(i)):e.push(i)}),this.needUploadFilesArr.length!==e.length?(this.removeFileInform(t),this.needUploadFilesArr=e):this.$message("没有需要移除的文件")},async startUploadMultipleFiles(){const e=this.needUploadFilesArr.filter(e=>"已完成"!==e.tip);if(0!==e.length)try{this.$message.success("开始上传"),this.fileConfig.filetotal_num=e.length,e.forEach(e=>{e.notShowTip=!1,e.tip="上传中",e.uploadProgress=0,e.updateProgress=t=>{this.$set(e,"notShowTip",t.notShowTip),this.$set(e,"tip",t.tip),this.$set(e,"uploadProgress",t.percentage),this.uploadingTextStyle(e.tip)},e.progress_error=()=>{this.$set(e,"notShowTip",!1),this.$set(e,"tip","上传出错"),this.$set(e,"uploadProgress",0),this.uploadingTextStyle(e.tip)}});const t=({percentage:e,notShowTip:t,tip:i,completed:s,total:o,active:a,queued:r,skipError:n})=>{console.log("%c 文件总进度:","color: #2196F3; font-weight: bold;",`已完成 ${s}/${o},正在上传 ${a},排队中 ${r}, 出错数量 ${n} 个`),this.fileConfig.overallProgress=e,this.fileConfig.notShowTip=t,this.fileConfig.tip=i,this.fileConfig.skipError_num=n,this.fileConfig.completed_num=s,this.fileConfig.filetotal_num=o},i=(e,t)=>{this.multipleChunkConfig.fileQueues.set(e,t)},s=(e,t)=>{this.multipleChunkConfig.uploadTasks.set(e,t)},o=(e,t)=>{this.fileConfig.uploadController=e,this.fileConfig.tip="上传中"},a=await V(e,this.multipleChunkConfig.maxConcurrent,this.fileConfig.maxFileConcurrent,this.addDataBaseLinkConfig,i,s,t,o,this.apiObj);if(a){this.informUploadedOfRefresh(),this.uploadedResult(a);const e=a.some(e=>!0===e.status);if(e){const e=a.map(e=>e.uuid);if(this.uploadedUUIDs(e),e.length<=1&&!this.multiple){const t=Object({NODE_ENV:"production",BASE_URL:"/"}).VUE_APP_ZT_BASE_API+"/resources/open/view/image?";this.pictureConfig={alt:"上传成功",url:t+"uuid="+e[0],show:!0}}}}else this.$message.error("上传出错!")}catch(t){console.error("批量上传失败",t),this.$message.error("上传出错!")}else this.$message.error("没有需要上传的文件")},onDrop(e){this.handleSelectedMultipleFiles(e)},onDragOver(){this.$refs.upLoded_box.classList.add("uploading_box_hover")},onDragLeave(){this.$refs.upLoded_box.classList.remove("uploading_box_hover")},reviewUploadMultipleFiles(e){this.isUploading?this.$message.error("后台上传中"):this.$refs.multiplePloadInput&&this.$refs.multiplePloadInput.click()},async handleSelectedMultipleFiles(e){let t=[],i=0;const s=e.target.files||e.dataTransfer.files;Array.from(s).forEach((e,s)=>{"video"===this.addDataBaseLinkConfig.addFileType?w.isVideo(e.type||e.name.split(".")[1])?t.push({isSelected:!1,name:e.name,file:e,index:s,notShowTip:!1,tip:"等待上传",uploadProgress:0,updateProgress:null,progress_error:null}):i++:"txt"===this.addDataBaseLinkConfig.addFileType?w.isDocument(e.type||e.name.split(".")[1])?t.push({isSelected:!1,name:e.name,file:e,index:s,notShowTip:!1,tip:"等待上传",uploadProgress:0,updateProgress:null,progress_error:null}):i++:"subTitle"===this.addDataBaseLinkConfig.addFileType?w.isSubtitle(e.type||e.name.split(".")[1])?t.push({isSelected:!1,name:e.name,file:e,index:s,notShowTip:!1,tip:"等待上传",uploadProgress:0,updateProgress:null,progress_error:null}):i++:"audio"===this.addDataBaseLinkConfig.addFileType?w.isAudio(e.type||e.name.split(".")[1])?t.push({isSelected:!1,name:e.name,file:e,index:s,notShowTip:!1,tip:"等待上传",uploadProgress:0,updateProgress:null,progress_error:null}):i++:"pictrue"===this.addDataBaseLinkConfig.addFileType&&(w.isImage(e.type||e.name.split(".")[1])?t.push({isSelected:!1,name:e.name,file:e,index:s,notShowTip:!1,tip:"等待上传",uploadProgress:0,updateProgress:null,progress_error:null}):i++)}),i>0&&this.$message.error(i+"个文件格式不支持,已跳过"),i=0,t=t.filter(e=>{const t=e&&e.file&&(e.file.size||e.fileSize||e.size)||0,s=Number(t)||0,o=2147483648,a=s>0&&s<o;return a||i++,a}),i&&(this.$message.error(i+"个文件大小超出2Gb,已跳过"),i=0),this.fileConfig.uploadController&&(this.fileConfig.uploadController.clear(),this.fileConfig.overallProgress=0,this.fileConfig.notShowTip=!0,this.fileConfig.tip="等待上传",this.fileConfig.skipError_num=0,this.fileConfig.completed_num=0,this.fileConfig.filetotal_num=0),this.needUploadFilesArr=[...this.needUploadFilesArr,...t],this.uploadStart(),await this.uploadingOtherFilterFun(this.needUploadFilesArr),this.needUploadFilesArr.length>0&&this.autoUpload&&this.startUploadMultipleFiles()}}},se=ie,oe=(i("bfdd"),U(se,v,y,!1,null,"4f005bbc",null)),ae=oe.exports;ae.install=function(e){e.component(ae.name,ae)};var re=ae,ne=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("el-dialog",{attrs:{visible:e.dialogVisible,"show-close":!1,modal:!0,width:e.width,top:e.topMargin,"custom-class":"modern-video-review-dialog","append-to-body":"","before-close":e.closePreview},on:{"update:visible":function(t){e.dialogVisible=t},opened:e.onOpened}},[i("div",{staticClass:"video-review-container",style:{height:e.height},on:{mousemove:e.onDrag,mouseup:e.stopDrag,mouseleave:e.stopDrag}},[i("div",{staticClass:"video-review-header"},[i("div",{staticClass:"file-info"},[i("span",{staticClass:"file-name",attrs:{title:e.fileName}},[e._v(e._s(e.fileName||"视频预览"))]),e.loading||e.loadError||!e.videoWidth?e._e():i("span",{staticClass:"file-size"},[e._v(" "+e._s(e.videoWidth)+" × "+e._s(e.videoHeight)+" px | "+e._s(e.duration)+" ")])]),i("div",{staticClass:"video-review-controls"},[i("button",{staticClass:"control-icon-btn",attrs:{disabled:e.scale<=e.minScale},on:{click:e.zoomOut}},[i("i",{staticClass:"el-icon-zoom-out"})]),i("span",{staticClass:"zoom-display"},[e._v(e._s(Math.round(100*e.scale))+"%")]),i("button",{staticClass:"control-icon-btn",attrs:{disabled:e.scale>=e.maxScale},on:{click:e.zoomIn}},[i("i",{staticClass:"el-icon-zoom-in"})]),i("div",{staticClass:"control-divider"}),i("button",{staticClass:"control-icon-btn",attrs:{title:"原始尺寸/重置位置"},on:{click:e.resetZoom}},[i("i",{staticClass:"el-icon-refresh-right"})]),i("button",{staticClass:"control-icon-btn close-btn",on:{click:e.closePreview}},[i("i",{staticClass:"el-icon-close"})])])]),i("div",{staticClass:"video-review-content",on:{wheel:function(t){return t.preventDefault(),e.handleWheel(t)},mousedown:function(t){return t.target!==t.currentTarget?null:e.startDrag(t)},"!click":function(t){return e.handleCaptureClick(t)}}},[i("transition",{attrs:{name:"fade"}},[e.loading&&!e.loadError?i("div",{staticClass:"status-overlay"},[i("i",{staticClass:"el-icon-loading"}),i("p",[e._v("视频加载中...")])]):e._e()]),e.loadError?i("div",{staticClass:"status-overlay error"},[i("i",{staticClass:"el-icon-video-camera"}),i("p",[e._v("视频加载失败")])]):e._e(),i("div",{directives:[{name:"show",rawName:"v-show",value:!e.loading&&!e.loadError,expression:"!loading && !loadError"}],staticClass:"video-transform-wrapper",style:e.videoStyle,on:{mousedown:e.startDrag}},[e.videoUrl?i("video",{key:e.videoUrl,ref:"videoPlayer",staticClass:"main-preview-video",attrs:{src:e.videoUrl,autoplay:"",muted:"",loop:"",playsinline:"",controls:""},domProps:{muted:!0},on:{loadedmetadata:e.onMetadataLoad,error:e.onVideoError,canplay:e.onCanPlay}}):e._e()])],1),i("div",{staticClass:"video-review-hint"},[i("span",[e._v("鼠标拖拽背景移动,滚轮缩放查看细节")])])])])},le=[],de={name:"KukanDialogVideoReview",props:{visible:{type:Boolean,default:!1},videoUrl:{type:String,required:!0},fileName:{type:String,default:""},width:{type:String,default:"40%"},height:{type:String,default:"80vh"},topMargin:{type:String,default:"7vh"},initialScale:{type:Number,default:1}},data(){return{scale:1,minScale:.5,maxScale:3,loading:!0,loadError:!1,videoWidth:0,videoHeight:0,duration:"00:00",translateX:0,translateY:0,isDragging:!1,hasMoved:!1,startMousePos:{x:0,y:0},mouseStartPos:{x:0,y:0}}},computed:{dialogVisible:{get(){return this.visible},set(e){this.$emit("update:visible",e)}},videoStyle(){return{transform:`translate(${this.translateX}px, ${this.translateY}px) scale(${this.scale})`,transition:this.isDragging?"none":"transform 0.25s cubic-bezier(0.2, 0, 0, 1)"}}},watch:{visible(e){e?(this.initStates(),window.addEventListener("keydown",this.handleKeyDown)):(this.pauseVideo(),window.removeEventListener("keydown",this.handleKeyDown))},videoUrl(){this.visible&&this.initStates()}},methods:{initStates(){this.loading=!0,this.loadError=!1,this.videoWidth=0,this.videoHeight=0,this.duration="00:00",this.resetZoom()},onOpened(){this.resetZoom()},onMetadataLoad(e){const t=e.target;this.videoWidth=t.videoWidth,this.videoHeight=t.videoHeight,this.duration=this.formatDuration(t.duration)},onCanPlay(){this.loading=!1,this.loadError=!1},onVideoError(){console.error("Video preview failed to load."),this.loading=!1,this.loadError=!0},formatDuration(e){if(!e)return"00:00";const t=Math.floor(e/60),i=Math.floor(e%60);return`${t.toString().padStart(2,"0")}:${i.toString().padStart(2,"0")}`},zoomIn(){this.scale<this.maxScale&&(this.scale=parseFloat((this.scale+.2).toFixed(1)))},zoomOut(){this.scale>this.minScale&&(this.scale=parseFloat((this.scale-.2).toFixed(1)))},resetZoom(){this.scale=this.initialScale,this.translateX=0,this.translateY=0},handleWheel(e){const t=e.deltaY>0?-.1:.1,i=parseFloat((this.scale+t).toFixed(1));i>=this.minScale&&i<=this.maxScale&&(this.scale=i)},startDrag(e){"VIDEO"===e.target.tagName&&e.offsetY>e.target.offsetHeight-50||0!==e.button||this.loading||(this.isDragging=!0,this.hasMoved=!1,this.startMousePos={x:e.clientX,y:e.clientY},this.mouseStartPos={x:e.clientX-this.translateX,y:e.clientY-this.translateY})},onDrag(e){if(!this.isDragging)return;const t=Math.abs(e.clientX-this.startMousePos.x),i=Math.abs(e.clientY-this.startMousePos.y);(t>5||i>5)&&(this.hasMoved=!0),this.translateX=e.clientX-this.mouseStartPos.x,this.translateY=e.clientY-this.mouseStartPos.y},stopDrag(){this.isDragging=!1},handleCaptureClick(e){this.hasMoved&&(e.preventDefault(),e.stopPropagation(),this.hasMoved=!1)},pauseVideo(){this.$refs.videoPlayer&&this.$refs.videoPlayer.pause()},handleKeyDown(e){if("Escape"===e.key&&this.closePreview()," "===e.key){e.preventDefault();const t=this.$refs.videoPlayer;t&&(t.paused?t.play():t.pause())}},closePreview(){this.pauseVideo(),this.dialogVisible=!1,this.$emit("close")}}},ue=de,ce=(i("5d9e"),U(ue,ne,le,!1,null,"419a04c7",null)),pe=ce.exports;const fe=[re,pe],he=function(e,t={}){fe.forEach(t=>{e.component(t.name,t)}),r(t.axios)};"undefined"!==typeof window&&window.Vue&&he(window.Vue);var ge={install:he};t["default"]=ge}})}));
1
+ (function(e,t){"object"===typeof exports&&"object"===typeof module?module.exports=t():"function"===typeof define&&define.amd?define([],t):"object"===typeof exports?exports["kukan-ui"]=t():e["kukan-ui"]=t()})("undefined"!==typeof self?self:this,(function(){return function(e){var t={};function i(o){if(t[o])return t[o].exports;var s=t[o]={i:o,l:!1,exports:{}};return e[o].call(s.exports,s,s.exports,i),s.l=!0,s.exports}return i.m=e,i.c=t,i.d=function(e,t,o){i.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},i.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&"object"===typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(i.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var s in e)i.d(o,s,function(t){return e[t]}.bind(null,s));return o},i.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return i.d(t,"a",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p="",i(i.s="fb15")}({"0786":function(e,t,i){},"45aa":function(e,t,i){},5554:function(e,t,i){},"69a0":function(e,t,i){(function(t){e.exports=t()})((function(e){"use strict";var t=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"];function i(e,t){var i=e[0],o=e[1],s=e[2],a=e[3];i+=(o&s|~o&a)+t[0]-680876936|0,i=(i<<7|i>>>25)+o|0,a+=(i&o|~i&s)+t[1]-389564586|0,a=(a<<12|a>>>20)+i|0,s+=(a&i|~a&o)+t[2]+606105819|0,s=(s<<17|s>>>15)+a|0,o+=(s&a|~s&i)+t[3]-1044525330|0,o=(o<<22|o>>>10)+s|0,i+=(o&s|~o&a)+t[4]-176418897|0,i=(i<<7|i>>>25)+o|0,a+=(i&o|~i&s)+t[5]+1200080426|0,a=(a<<12|a>>>20)+i|0,s+=(a&i|~a&o)+t[6]-1473231341|0,s=(s<<17|s>>>15)+a|0,o+=(s&a|~s&i)+t[7]-45705983|0,o=(o<<22|o>>>10)+s|0,i+=(o&s|~o&a)+t[8]+1770035416|0,i=(i<<7|i>>>25)+o|0,a+=(i&o|~i&s)+t[9]-1958414417|0,a=(a<<12|a>>>20)+i|0,s+=(a&i|~a&o)+t[10]-42063|0,s=(s<<17|s>>>15)+a|0,o+=(s&a|~s&i)+t[11]-1990404162|0,o=(o<<22|o>>>10)+s|0,i+=(o&s|~o&a)+t[12]+1804603682|0,i=(i<<7|i>>>25)+o|0,a+=(i&o|~i&s)+t[13]-40341101|0,a=(a<<12|a>>>20)+i|0,s+=(a&i|~a&o)+t[14]-1502002290|0,s=(s<<17|s>>>15)+a|0,o+=(s&a|~s&i)+t[15]+1236535329|0,o=(o<<22|o>>>10)+s|0,i+=(o&a|s&~a)+t[1]-165796510|0,i=(i<<5|i>>>27)+o|0,a+=(i&s|o&~s)+t[6]-1069501632|0,a=(a<<9|a>>>23)+i|0,s+=(a&o|i&~o)+t[11]+643717713|0,s=(s<<14|s>>>18)+a|0,o+=(s&i|a&~i)+t[0]-373897302|0,o=(o<<20|o>>>12)+s|0,i+=(o&a|s&~a)+t[5]-701558691|0,i=(i<<5|i>>>27)+o|0,a+=(i&s|o&~s)+t[10]+38016083|0,a=(a<<9|a>>>23)+i|0,s+=(a&o|i&~o)+t[15]-660478335|0,s=(s<<14|s>>>18)+a|0,o+=(s&i|a&~i)+t[4]-405537848|0,o=(o<<20|o>>>12)+s|0,i+=(o&a|s&~a)+t[9]+568446438|0,i=(i<<5|i>>>27)+o|0,a+=(i&s|o&~s)+t[14]-1019803690|0,a=(a<<9|a>>>23)+i|0,s+=(a&o|i&~o)+t[3]-187363961|0,s=(s<<14|s>>>18)+a|0,o+=(s&i|a&~i)+t[8]+1163531501|0,o=(o<<20|o>>>12)+s|0,i+=(o&a|s&~a)+t[13]-1444681467|0,i=(i<<5|i>>>27)+o|0,a+=(i&s|o&~s)+t[2]-51403784|0,a=(a<<9|a>>>23)+i|0,s+=(a&o|i&~o)+t[7]+1735328473|0,s=(s<<14|s>>>18)+a|0,o+=(s&i|a&~i)+t[12]-1926607734|0,o=(o<<20|o>>>12)+s|0,i+=(o^s^a)+t[5]-378558|0,i=(i<<4|i>>>28)+o|0,a+=(i^o^s)+t[8]-2022574463|0,a=(a<<11|a>>>21)+i|0,s+=(a^i^o)+t[11]+1839030562|0,s=(s<<16|s>>>16)+a|0,o+=(s^a^i)+t[14]-35309556|0,o=(o<<23|o>>>9)+s|0,i+=(o^s^a)+t[1]-1530992060|0,i=(i<<4|i>>>28)+o|0,a+=(i^o^s)+t[4]+1272893353|0,a=(a<<11|a>>>21)+i|0,s+=(a^i^o)+t[7]-155497632|0,s=(s<<16|s>>>16)+a|0,o+=(s^a^i)+t[10]-1094730640|0,o=(o<<23|o>>>9)+s|0,i+=(o^s^a)+t[13]+681279174|0,i=(i<<4|i>>>28)+o|0,a+=(i^o^s)+t[0]-358537222|0,a=(a<<11|a>>>21)+i|0,s+=(a^i^o)+t[3]-722521979|0,s=(s<<16|s>>>16)+a|0,o+=(s^a^i)+t[6]+76029189|0,o=(o<<23|o>>>9)+s|0,i+=(o^s^a)+t[9]-640364487|0,i=(i<<4|i>>>28)+o|0,a+=(i^o^s)+t[12]-421815835|0,a=(a<<11|a>>>21)+i|0,s+=(a^i^o)+t[15]+530742520|0,s=(s<<16|s>>>16)+a|0,o+=(s^a^i)+t[2]-995338651|0,o=(o<<23|o>>>9)+s|0,i+=(s^(o|~a))+t[0]-198630844|0,i=(i<<6|i>>>26)+o|0,a+=(o^(i|~s))+t[7]+1126891415|0,a=(a<<10|a>>>22)+i|0,s+=(i^(a|~o))+t[14]-1416354905|0,s=(s<<15|s>>>17)+a|0,o+=(a^(s|~i))+t[5]-57434055|0,o=(o<<21|o>>>11)+s|0,i+=(s^(o|~a))+t[12]+1700485571|0,i=(i<<6|i>>>26)+o|0,a+=(o^(i|~s))+t[3]-1894986606|0,a=(a<<10|a>>>22)+i|0,s+=(i^(a|~o))+t[10]-1051523|0,s=(s<<15|s>>>17)+a|0,o+=(a^(s|~i))+t[1]-2054922799|0,o=(o<<21|o>>>11)+s|0,i+=(s^(o|~a))+t[8]+1873313359|0,i=(i<<6|i>>>26)+o|0,a+=(o^(i|~s))+t[15]-30611744|0,a=(a<<10|a>>>22)+i|0,s+=(i^(a|~o))+t[6]-1560198380|0,s=(s<<15|s>>>17)+a|0,o+=(a^(s|~i))+t[13]+1309151649|0,o=(o<<21|o>>>11)+s|0,i+=(s^(o|~a))+t[4]-145523070|0,i=(i<<6|i>>>26)+o|0,a+=(o^(i|~s))+t[11]-1120210379|0,a=(a<<10|a>>>22)+i|0,s+=(i^(a|~o))+t[2]+718787259|0,s=(s<<15|s>>>17)+a|0,o+=(a^(s|~i))+t[9]-343485551|0,o=(o<<21|o>>>11)+s|0,e[0]=i+e[0]|0,e[1]=o+e[1]|0,e[2]=s+e[2]|0,e[3]=a+e[3]|0}function o(e){var t,i=[];for(t=0;t<64;t+=4)i[t>>2]=e.charCodeAt(t)+(e.charCodeAt(t+1)<<8)+(e.charCodeAt(t+2)<<16)+(e.charCodeAt(t+3)<<24);return i}function s(e){var t,i=[];for(t=0;t<64;t+=4)i[t>>2]=e[t]+(e[t+1]<<8)+(e[t+2]<<16)+(e[t+3]<<24);return i}function a(e){var t,s,a,n,r,l,d=e.length,u=[1732584193,-271733879,-1732584194,271733878];for(t=64;t<=d;t+=64)i(u,o(e.substring(t-64,t)));for(e=e.substring(t-64),s=e.length,a=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],t=0;t<s;t+=1)a[t>>2]|=e.charCodeAt(t)<<(t%4<<3);if(a[t>>2]|=128<<(t%4<<3),t>55)for(i(u,a),t=0;t<16;t+=1)a[t]=0;return n=8*d,n=n.toString(16).match(/(.*?)(.{0,8})$/),r=parseInt(n[2],16),l=parseInt(n[1],16)||0,a[14]=r,a[15]=l,i(u,a),u}function n(e){var t,o,a,n,r,l,d=e.length,u=[1732584193,-271733879,-1732584194,271733878];for(t=64;t<=d;t+=64)i(u,s(e.subarray(t-64,t)));for(e=t-64<d?e.subarray(t-64):new Uint8Array(0),o=e.length,a=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],t=0;t<o;t+=1)a[t>>2]|=e[t]<<(t%4<<3);if(a[t>>2]|=128<<(t%4<<3),t>55)for(i(u,a),t=0;t<16;t+=1)a[t]=0;return n=8*d,n=n.toString(16).match(/(.*?)(.{0,8})$/),r=parseInt(n[2],16),l=parseInt(n[1],16)||0,a[14]=r,a[15]=l,i(u,a),u}function r(e){var i,o="";for(i=0;i<4;i+=1)o+=t[e>>8*i+4&15]+t[e>>8*i&15];return o}function l(e){var t;for(t=0;t<e.length;t+=1)e[t]=r(e[t]);return e.join("")}function d(e){return/[\u0080-\uFFFF]/.test(e)&&(e=unescape(encodeURIComponent(e))),e}function u(e,t){var i,o=e.length,s=new ArrayBuffer(o),a=new Uint8Array(s);for(i=0;i<o;i+=1)a[i]=e.charCodeAt(i);return t?a:s}function c(e){return String.fromCharCode.apply(null,new Uint8Array(e))}function p(e,t,i){var o=new Uint8Array(e.byteLength+t.byteLength);return o.set(new Uint8Array(e)),o.set(new Uint8Array(t),e.byteLength),i?o:o.buffer}function f(e){var t,i=[],o=e.length;for(t=0;t<o-1;t+=2)i.push(parseInt(e.substr(t,2),16));return String.fromCharCode.apply(String,i)}function h(){this.reset()}return"5d41402abc4b2a76b9719d911017c592"!==l(a("hello"))&&function(e,t){var i=(65535&e)+(65535&t),o=(e>>16)+(t>>16)+(i>>16);return o<<16|65535&i},"undefined"===typeof ArrayBuffer||ArrayBuffer.prototype.slice||function(){function t(e,t){return e=0|e||0,e<0?Math.max(e+t,0):Math.min(e,t)}ArrayBuffer.prototype.slice=function(i,o){var s,a,n,r,l=this.byteLength,d=t(i,l),u=l;return o!==e&&(u=t(o,l)),d>u?new ArrayBuffer(0):(s=u-d,a=new ArrayBuffer(s),n=new Uint8Array(a),r=new Uint8Array(this,d,s),n.set(r),a)}}(),h.prototype.append=function(e){return this.appendBinary(d(e)),this},h.prototype.appendBinary=function(e){this._buff+=e,this._length+=e.length;var t,s=this._buff.length;for(t=64;t<=s;t+=64)i(this._hash,o(this._buff.substring(t-64,t)));return this._buff=this._buff.substring(t-64),this},h.prototype.end=function(e){var t,i,o=this._buff,s=o.length,a=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];for(t=0;t<s;t+=1)a[t>>2]|=o.charCodeAt(t)<<(t%4<<3);return this._finish(a,s),i=l(this._hash),e&&(i=f(i)),this.reset(),i},h.prototype.reset=function(){return this._buff="",this._length=0,this._hash=[1732584193,-271733879,-1732584194,271733878],this},h.prototype.getState=function(){return{buff:this._buff,length:this._length,hash:this._hash.slice()}},h.prototype.setState=function(e){return this._buff=e.buff,this._length=e.length,this._hash=e.hash,this},h.prototype.destroy=function(){delete this._hash,delete this._buff,delete this._length},h.prototype._finish=function(e,t){var o,s,a,n=t;if(e[n>>2]|=128<<(n%4<<3),n>55)for(i(this._hash,e),n=0;n<16;n+=1)e[n]=0;o=8*this._length,o=o.toString(16).match(/(.*?)(.{0,8})$/),s=parseInt(o[2],16),a=parseInt(o[1],16)||0,e[14]=s,e[15]=a,i(this._hash,e)},h.hash=function(e,t){return h.hashBinary(d(e),t)},h.hashBinary=function(e,t){var i=a(e),o=l(i);return t?f(o):o},h.ArrayBuffer=function(){this.reset()},h.ArrayBuffer.prototype.append=function(e){var t,o=p(this._buff.buffer,e,!0),a=o.length;for(this._length+=e.byteLength,t=64;t<=a;t+=64)i(this._hash,s(o.subarray(t-64,t)));return this._buff=t-64<a?new Uint8Array(o.buffer.slice(t-64)):new Uint8Array(0),this},h.ArrayBuffer.prototype.end=function(e){var t,i,o=this._buff,s=o.length,a=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];for(t=0;t<s;t+=1)a[t>>2]|=o[t]<<(t%4<<3);return this._finish(a,s),i=l(this._hash),e&&(i=f(i)),this.reset(),i},h.ArrayBuffer.prototype.reset=function(){return this._buff=new Uint8Array(0),this._length=0,this._hash=[1732584193,-271733879,-1732584194,271733878],this},h.ArrayBuffer.prototype.getState=function(){var e=h.prototype.getState.call(this);return e.buff=c(e.buff),e},h.ArrayBuffer.prototype.setState=function(e){return e.buff=u(e.buff,!0),h.prototype.setState.call(this,e)},h.ArrayBuffer.prototype.destroy=h.prototype.destroy,h.ArrayBuffer.prototype._finish=h.prototype._finish,h.ArrayBuffer.hash=function(e,t){var i=n(new Uint8Array(e)),o=l(i);return t?f(o):o},h}))},"6bfd":function(e,t,i){"use strict";i("0786")},"7b9f":function(e,t,i){"use strict";i("5554")},"90f1":function(e,t,i){"use strict";i("45aa")},"9b6a":function(e,t,i){},a888:function(e,t,i){"use strict";i("9b6a")},fb15:function(e,t,i){"use strict";if(i.r(t),i.d(t,"Upload",(function(){return ne})),"undefined"!==typeof window){var o=window.document.currentScript,s=o&&o.src.match(/(.+\/)[^/]+\.js(\?.*)?$/);s&&(i.p=s[1])}let a=null;function n(e){e&&(a=e)}function r(e){return{checkfileStatus:t=>l(t,e.checkfileStatusUrl),filesAllUoloaded:t=>d(t,e.filesAllUoloadedUrl),searchFileIsUploaded:t=>u(t,e.searchFileIsUploadedUrl),searchChunkIsUploaded:t=>c(t,e.searchChunkIsUploadedUrl),uploadFileChunk:t=>p(t,e.uploadFileChunkUrl),addNewFileOfTxt:t=>f(t,e.addNewFileOfTxtUrl),addNewFileOfVideo:t=>h(t,e.addNewFileOfVideoUrl),addNewFileOfAudio:t=>g(t,e.addNewFileOfAudioUrl),addNewFileOfPic:t=>m(t,e.addNewFileOfPicUrl),addNewFileOfSubTitle:t=>C(t,e.addNewFileOfSubTitleUrl)}}function l(e,t){return a({url:t,method:"post",data:e})}function d(e,t){return a({url:t,method:"post",data:e})}function u(e,t){return a({url:t,method:"post",data:e})}function c(e,t){return a({url:t,method:"post",data:e})}function p(e,t){const i=e instanceof FormData?e:new FormData;return e instanceof FormData||!e||"object"!==typeof e||Object.keys(e).forEach(t=>{i.append(t,e[t])}),a({url:t,method:"post",data:i,headers:{"Content-Type":"multipart/form-data"},timeout:6e5})}function f(e,t){return a({url:t,method:"post",data:e})}function h(e,t){return a({url:t,method:"post",data:e})}function g(e,t){return a({url:t,method:"post",data:e})}function m(e,t){return a({url:t,method:"post",data:e})}function C(e,t){return a({url:t,method:"post",data:e})}var v=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"upload-multiple"},[i("input",{ref:"multiplePloadInput",staticStyle:{display:"none"},attrs:{type:"file",multiple:e.multiple,accept:e.limitFileType},on:{change:e.handleSelectedMultipleFiles}}),i("div",{staticClass:"upload-multiple-box"},[i("div",{ref:"upLoded_box",staticClass:"multiple_upload_area",class:e.multipleUploadAreaClass(),on:{click:e.reviewUploadMultipleFiles,dragover:function(t){return t.preventDefault(),e.onDragOver(t)},dragleave:function(t){return t.preventDefault(),e.onDragLeave(t)},drop:function(t){return t.preventDefault(),e.onDrop(t)}}},[e.isUploading?i("div",{staticClass:"upload-loading-mask",style:e.setUploadingLoadingMaskStyle()}):e._e(),e.showIconTip?i("div",[i("i",{staticClass:"el-icon-upload"})]):e._e(),i("div",[e._v(e._s(e.startButtonText))]),e._t("tips")],2),e.pictureConfig.show&&e.showSuccessPicture?i("div",{staticClass:"upload-multiple-box-right"},[i("div",{staticClass:"upload-multiple-box-close",on:{click:function(t){return t.stopPropagation(),e.clearPicture(t)}}},[i("i",{staticClass:"el-icon-close"})]),i("img",{attrs:{src:e.pictureConfig.url,alt:e.pictureConfig.altText}})]):e._e()]),e.isShowAllUploadButton?i("el-button",{staticClass:"upload_button",attrs:{type:"primary",disabled:e.isUploading||0===e.needUploadFilesArr.length},on:{click:e.startUploadMultipleFiles}},[e._v(" 全部文件开始上传 ")]):e._e(),"table"===e.model?i("div",{staticClass:"upload-multiple-table"},[i("Upload_table",{attrs:{needUploadFilesArr:e.needUploadFilesArr,fileConfig:e.fileConfig,fileType:e.addDataBaseLinkConfig.addFileType,isUploading:e.isUploading},on:{delteSelectedFile:e.delteSelectedFile,cancelFileUpload:e.cancelFileUpload,resetFileUpload:e.resetFileUpload,handleSelectionChange:e.tableSelectionChange}})],1):e._e(),"info"===e.model?i("div",{staticClass:"multiple_upload_list"},[i("span",{staticClass:"tip_title"},[i("span",{staticClass:"title"},[i("div",[e._v("文件列表")]),i("transition",{attrs:{name:"totalProgress",mode:"out-in"}},[e.needUploadFilesArr.length>0?i("div",{staticClass:"total_progress"},[i("div",{staticClass:"logo"}),i("span",[e._v("总进度:")]),e.fileConfig.uploadController?i("div",[i("el-tag",{attrs:{size:"mini",type:e.isDanger}},[e._v("上传错误:"+e._s(e.fileConfig.skipError_num))]),i("el-tag",{attrs:{size:"mini",type:""}},[e._v("上传成功:"+e._s(e.fileConfig.completed_num))]),i("el-tag",{attrs:{size:"mini",type:""}},[e._v("文件总数:"+e._s(e.fileConfig.filetotal_num))])],1):e._e()]):e._e()])],1),i("span",[i("el-button",{attrs:{size:"mini",type:"",disabled:e.isUploading||0===e.needUploadFilesArr.length},on:{click:e.handleSelectAllFile}},[e._v("全选所有文件")]),i("el-button",{attrs:{size:"mini",type:"danger",disabled:e.isUploading||0===e.needUploadFilesArr.length},on:{click:e.delteSelectedFile}},[e._v("移除所选文件")])],1)]),i("div",{staticClass:"selected_list_area"},[e.needUploadFilesArr.length>0?i("div",{staticClass:"selected_list"},e._l(e.needUploadFilesArr,(function(t,o){return i("Card_2",{key:o,attrs:{index:o,"file-config":t},on:{cancelFileUpload:e.cancelFileUpload,resetFileUpload:e.resetFileUpload,handleClickOnlyFile:e.handleClickOnlyFile}})})),1):i("div",{staticClass:"no_file"},[i("i",{staticClass:"el-icon-document"}),i("div",[e._v("暂无文件,请点击或拖拽文件到上传区域")])])])]):e._e()],1)},y=[];function _(e){return e?"string"===typeof e?e:e instanceof File||e instanceof Blob||e.type&&"string"===typeof e.type?e.type:"":""}const w={isImage:e=>{const t=_(e);return/(jpg|jpeg|png|gif|webp|bmp|svg|tiff|ico)$/i.test(t)},isVideo:e=>{const t=_(e);return/(mp4|avi|webm|mov|wmv|flv|mkv|mpeg|3gp)$/i.test(t)},isAudio:e=>{const t=_(e);return/^audio\/(mpeg|mp3|mp4|x-m4a|wav|ogg|aac|flac|mid|x-midi|opus|webm)$/i.test(t)||/\.(mp3|wav|ogg|aac|flac|m4a|mid|opus)$/i.test(t)||/^(mp3|wav|ogg|aac|flac|m4a|mid|opus)$/i.test(t)},isSubtitle:e=>{const t=_(e);return console.log(t),/(vtt|ass|srt)$/i.test(t)},isDocument:e=>!0};var b=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{key:e.fileConfig.name+"_"+e.index,staticClass:"only_file_area",class:{only_file_area_isActive:e.fileConfig.isSelected,"fade-in-element":!0},on:{click:function(t){return e.handleClickOnlyFile(e.fileConfig)}}},[i("div",{staticClass:"file_card_top"},[i("div",{staticClass:"file_type"},[e._v(" "+e._s(e.getFileType(e.fileConfig.name))+" ")]),i("div",{staticClass:"file_name"},[e._v(e._s(e.fileConfig.name))])]),i("div",{staticClass:"file_card_bottom"},[i("div",{staticClass:"option"},[i("div",{staticClass:"status_text"},[i("span",{class:e.uploadingTextStyle(e.fileConfig.tip)},[e._v(e._s(e.fileConfig.tip))])]),"上传中"===e.fileConfig.tip?i("div",{staticClass:"option_text",on:{click:function(t){return t.stopPropagation(),e.cancelFileUpload(e.fileConfig)}}},[i("el-tag",{attrs:{size:"mini",type:"danger"}},[e._v("取消")])],1):e._e(),"已取消"===e.fileConfig.tip||"上传出错"===e.fileConfig.tip||"未知出错"===e.fileConfig.tip?i("div",{staticClass:"option_text",on:{click:function(t){return t.stopPropagation(),e.resetFileUpload(e.fileConfig)}}},[i("el-tag",{attrs:{size:"mini",type:""}},[e._v("重试")])],1):e._e()]),i("div",[i("span",[e._v(e._s(e.uploadingNumber(e.fileFormatValid(e.fileConfig.file.size),e.fileConfig.uploadProgress))+"/"+e._s(e.fileFormatValid(e.fileConfig.file.size))+"mb")])])]),i("div",{staticClass:"progress_area"},[i("el-progress",{staticClass:"custom-progress",attrs:{color:e.colors,"show-text":!1,percentage:e.fileConfig.uploadProgress}})],1)])},F=[],S={name:"UploadCardVerFirst",props:{fileConfig:{required:!0,type:Object,default:()=>({})},index:{required:!1,type:Number,default:0}},data(){return{colors:[{color:"#bae6fd",percentage:20},{color:"#7dd3fc",percentage:40},{color:"#38bdf8",percentage:60},{color:"#2563eb",percentage:80},{color:"#6366f1",percentage:100}]}},methods:{handleClickOnlyFile(e){this.$emit("handleClickOnlyFile",this.fileConfig)},getFileType(e){return e.split(".")[1]},uploadingTextStyle(e){return"出错"===e||"查询文件地址超时"===e||"上传出错"===e?"uploading_error":"已完成"===e?"uploading_success":"等待上传"===e?"uploading_wait":""},uploadingNumber(e,t){return t?(e*(t/100)).toFixed(2):0},fileFormatValid(e){const t=(e/1048576).toFixed(2);return t},resetFileUpload(e){this.$emit("resetFileUpload",e)},cancelFileUpload(e){this.$emit("cancelFileUpload",e)}}},k=S;i("7b9f");function U(e,t,i,o,s,a,n,r){var l,d="function"===typeof e?e.options:e;if(t&&(d.render=t,d.staticRenderFns=i,d._compiled=!0),o&&(d.functional=!0),a&&(d._scopeId="data-v-"+a),n?(l=function(e){e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,e||"undefined"===typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),s&&s.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(n)},d._ssrRegister=l):s&&(l=r?function(){s.call(this,(d.functional?this.parent:this).$root.$options.shadowRoot)}:s),l)if(d.functional){d._injectStyles=l;var u=d.render;d.render=function(e,t){return l.call(t),u(e,t)}}else{var c=d.beforeCreate;d.beforeCreate=c?[].concat(c,l):[l]}return{exports:e,options:d}}var x=U(k,b,F,!1,null,"cdec1cec",null),T=x.exports,A=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"upload_table"},[i("div",{staticClass:"header"},[i("div",{staticClass:"total"},[i("span",[e._v("已选择"+e._s(e.needUploadFilesArr.length)+"个文件")]),e.needUploadFilesArr.length?i("el-tag",{attrs:{type:"",size:"mini"}},[e._v("上传中"+e._s(e.totalNumber))]):e._e()],1),i("div",{staticClass:"options"},[i("el-button",{attrs:{type:"danger",size:"mini",disabled:e.isUploading||0===e.needUploadFilesArr.length},on:{click:function(t){return e.handleClickOnlyFile()}}},[e._v("清除已选")])],1)]),i("el-table",{staticStyle:{width:"100%"},attrs:{data:e.needUploadFilesArr,"default-sort":{prop:"fileName",order:"descending"},border:"",height:"400px"},on:{"sort-change":e.handleSortChange,"selection-change":e.handleSelectionChange}},[i("el-table-column",{attrs:{type:"selection",width:"40"}}),i("el-table-column",{attrs:{type:"index",width:"40"}}),i("el-table-column",{attrs:{label:"文件名",width:"300"},scopedSlots:e._u([{key:"default",fn:function(t){return[i("div",{staticClass:"file_name"},[i("div",{staticClass:"file_type"},[e._v(" "+e._s(e.getFileType(t.row.name))+" ")]),i("span",{staticClass:"file_name_text"},[e._v(e._s(t.row.name))])])]}}])}),i("el-table-column",{attrs:{label:"大小",width:"100"},scopedSlots:e._u([{key:"default",fn:function(t){return[i("div",{staticClass:"file_size"},[i("span",{staticClass:"file_size_text"},[e._v(e._s(e.fileFormatValid(t.row.file.size))+" mb")])])]}}])}),i("el-table-column",{attrs:{label:"状态",width:"100"},scopedSlots:e._u([{key:"default",fn:function(t){return[i("div",{staticClass:"status_text"},[i("span",{class:e.uploadingTextStyle(t.row.tip)},[e._v(e._s(t.row.tip))])])]}}])}),i("el-table-column",{attrs:{label:"进度",width:"auto"},scopedSlots:e._u([{key:"default",fn:function(t){return[i("div",{staticClass:"progress_area"},[i("el-progress",{staticClass:"custom-progress",attrs:{color:e.colors,"show-text":!0,percentage:t.row.uploadProgress}})],1)]}}])}),i("el-table-column",{attrs:{label:"操作",width:"auto"},scopedSlots:e._u([{key:"default",fn:function(t){return["上传中"===t.row.tip?i("div",{staticClass:"option_text",on:{click:function(i){return i.stopPropagation(),e.cancelFileUpload(t.row)}}},[i("span",{staticStyle:{color:"#f74444",cursor:"pointer"}},[e._v("取消上传")])]):e._e(),"已取消"===t.row.tip||"上传出错"===t.row.tip||"未知出错"===t.row.tip?i("div",{staticClass:"option_text",on:{click:function(i){return i.stopPropagation(),e.resetFileUpload(t.row)}}},[i("span",{staticStyle:{color:"#f74444",cursor:"pointer"}},[e._v("重试")])]):e._e()]}}])})],1)],1)},P=[],$={name:"Upload_Table",props:{needUploadFilesArr:{type:Array,default:()=>[]},fileConfig:{type:Object,default:()=>{}},fileType:{type:String,default:""},isUploading:{type:Boolean}},data(){return{colors:[{color:"#bae6fd",percentage:20},{color:"#7dd3fc",percentage:40},{color:"#38bdf8",percentage:60},{color:"#2563eb",percentage:80},{color:"#6366f1",percentage:100}]}},computed:{totalNumber(){return this.fileConfig.completed_num+"/"+this.needUploadFilesArr.length}},methods:{handleSortChange(e){this.$emit("sortChange",e)},uploadingTextStyle(e){return"出错"===e||"查询文件地址超时"===e||"上传出错"===e?"uploading_error":"已完成"===e?"uploading_success":"等待上传"===e?"uploading_wait":""},resetFileUpload(e){this.$emit("resetFileUpload",e)},cancelFileUpload(e){this.$emit("cancelFileUpload",e)},handleClickOnlyFile(){this.$emit("delteSelectedFile")},fileFormatValid(e){const t=(e/1048576).toFixed(2);return t},getFileType(e){return e.split(".")[1]},handleSelectionChange(e){const t=e.map(e=>e.index);this.$emit("handleSelectionChange",t)}}},I=$,D=(i("6bfd"),U(I,A,P,!1,null,"61052c10",null)),O=D.exports,E=i("69a0"),B=i.n(E);const L={entranceTime:12e4,uploadChunkTime:6e5,dropStateOverTime:6e5,dropStatePollTime:2e3},M=5242880;let N={};const z={checkfileStatusUrl:"/zt-api/resources/check",filesAllUoloadedUrl:"/zt-api/resources/chunk/merge",searchFileIsUploadedUrl:"/zt-api/resources/check",searchChunkIsUploadedUrl:"/zt-api/resources/check/chunk",uploadFileChunkUrl:"/zt-api/resources/chunk/upload",addNewFileOfTxtUrl:"/api/v1/program/create-doc",addNewFileOfVideoUrl:"/api/v1/program/create-video",addNewFileOfAudioUrl:"/api/v1/program/create-audio",addNewFileOfPicUrl:"/api/v1/program/create-pic",addNewFileOfSubTitleUrl:"/api/v1/program/create-srt"};async function V(e,t,i,o,s,a,n,l,d=z){N=r(d);const u=[];for(let r=0;r<e.length;r++){const i=e[r],n=R(i.file),l=j(t,i.updateProgress);s(i.index,l);const d=()=>{const e=X(i.file,n,l,i.updateProgress,i.progress_error,o);return a(n,e),e};u.push({index:i.index,taskFn:d})}const c=j(i,n);return l(c,"上传中"),c.runTasks(u)}function j(e,t){let i=[],o=[],s=[],a=0,n=!1,r=null,l=0,d=0,u=0;const c=()=>0===u?0:Math.round(d/u*100),p=e=>{if(t&&"function"===typeof t){const o=c();e&&(Array.isArray(s)&&s.length>0||n)?console.log("重要:进度条强制不更新",s.length):t({percentage:o,notShowTip:!0,tip:100===o?"上传完成":"上传中",completed:d,total:u,active:a,queued:i.length,skipError:l})}},f=()=>{if(t&&"function"===typeof t){const e=c();console.log("异步工具内部更新进度条为错误状态"),t({percentage:e,notShowTip:!1,tip:"上传出错",completed:d,total:u,active:a,queued:i.length,skipError:l})}};return{async errorActiveIsFull(e){const t=s.filter(t=>t.id===e);if(t.length>0){o=s.filter(t=>t.id!==e);const a=t[0],n=await this.add(!0,{taskFn:a.task,index:a.id});console.log("重新尝试的结果",n,i)}},async startResetErrorTask(e){const t=s.filter(t=>t.id===e);if(t.length>0){s=s.filter(t=>t.id!==e);const o=t[0],a=await this.add(!0,{taskFn:o.task,index:o.id});console.log("重新尝试的结果",a,i)}},errorFilehandled(e){s=[...s,...i.filter(t=>t.id===e)],i=i.filter(t=>t.id!==e)},startResetCanceledyTask(e){const t=o.filter(t=>t.id===e);t.length>0&&(i.push(t[0]),o=o.filter(t=>t.id!==e)),h()},cancelFileUpload(e){const t=i.filter(t=>t.id===e);return t.length>0&&(o=[...o,...t],i=i.filter(t=>t.id!==e),!0)},add(e,t){return new Promise((o,s)=>{i.push({task:t.taskFn,id:t.index,resolve:o,reject:s}),h(e)})},runTasks(e){return new Promise((t,i)=>{const s=[];let a=!1;u=e.length,e.forEach((n,r)=>{this.add(!1,n).then(i=>{s[r]=i,(d+o.length===e.length&&!a||!1===i.status&&!i.skip)&&t(s)}).catch(e=>{a=!0,i(e)})})})},pause(){n=!0},resume(){n=!1},clear(){i=[],s=[],d=0,u=0},getStatus(){return{queue:i,completed:d,activeCount:a,isPaused:n,totalTasks:u,skipError:l}},getProgress(){return{percentage:c(),completed:d,total:u,active:a,queued:i.length}}};async function h(t=!1){n&&(r||await new Promise(e=>{r=e}));while(i.length>0&&a<e&&!n){const{task:e,id:o,resolve:r,reject:u}=i.shift();a++,e().then(i=>{i.status?t?(d++,l--,p(!1)):(d++,p(!0)):(t||l++,s.push({task:e,id:o,resolve:r,reject:u}),f(),i.skip?(console.error("已经出错的统计的错误任务数组",s),console.error("===============跳过错误的文件上传================,错误的原因:",i.error,i)):n=!0),r(i)}).catch(i=>{console.log("上传时候失败",i),t||l++,s.push({task:e,id:o,resolve:r,reject:u}),f(),u(i)}).finally(()=>{a--,h(t)})}}}function R(e){const t=Date.now(),i=Math.random().toString(36).substr(2,9),o=`${e.name}_${e.size}_${t}_${i}`;return o.replace(/[^a-zA-Z0-9_-]/g,"_")}async function q(e,t){const{uploadId:i,fileHash:o,fileSize:s,fileName:a}=e,{addProgramVersion:n,addFileType:r,addDataBaseLink:l}=t,d=new Promise(e=>{const t=setTimeout(()=>{e({status:!1,error:"文件检查超时",uploadId:i,skip:!0}),clearTimeout(t)},L.entranceTime)}),u=(async()=>{try{const e=await ee(o,s);return{status:!0,fileCheck:e}}catch(e){return{status:!1,error:e,uploadId:i}}})(),c=await Promise.race([u,d]);if(!c.status)return console.debug("=============网络超时或者网络错误================,以下为check_result的错误结果"),console.debug(c),console.debug("=============网络超时或者网络错误================"),{fileIsExist:!1,status:!1,error:"网络超时或者网络错误",uploadId:i,skip:!0};if(c.fileCheck){if(!l)return{fileIsExist:!0,status:!0,uploadId:i,uuid:c.fileCheck,fileName:a};const e=await te(c.fileCheck,n,r);return e.status?(console.log("文件已经存在,直接创建新链接"),{fileIsExist:!0,status:!0,uploadId:i,uuid:c.fileCheck,fileName:a}):{fileIsExist:!0,status:!1,error:"文件路径创建失败",uploadId:i,skip:!0}}return{fileIsExist:!1,status:!0,uploadId:i,uuid:c.fileCheck,fileName:a}}async function X(e,t,i,o,s,a){const{addProgramVersion:n,addFileType:r,addDataBaseLink:l}=a,d=await Y(e),u=e.size,c=e.name,p=(e,t,i)=>{o({percentage:e,notShowTip:t,tip:i})};try{p(0,!1,"解析中"),console.log("%c 文件上传中:","color: #2196F3; font-weight: bold;",c);const o=await q({uploadId:t,fileHash:d,fileSize:u,fileName:c},a);if(console.log("是否分块上传?",!o.fileIsExist),o.fileIsExist||o.error)return o.status?(p(100,!1,"已完成"),o):(s(),o);p(0,!1,"准备中");const f=await H(e,[],M);console.groupCollapsed("%c 分片上传流程","color: #2196F3; font-weight: bold;"),console.log("切片列表",f);const h=await W(f,d,e.name,t,i);if(h.length>0)return console.debug("=============文件分片上传失败================,以下为分片的错误列表:",h),{status:!1,error:"文件块上传失败",uploadId:t,skip:!0};p(99,!0,"上传中");const g=await Q(d,u);if(console.log("合并切片,结果:",g),!g)return p(0,!1,"文件合并失败"),{status:!1,error:"文件合并失败",uploadId:t,skip:!0};console.groupEnd();const m=await G(d,L.dropStatePollTime,L.dropStateOverTime);if(!m.result)return p(0,!1,m.Message),{status:!1,error:m.Message,uploadId:t,skip:!0};if(!l)return p(100,!1,"已完成"),{status:!0,uploadId:t,uuid:m.fileId,fileName:c};const C=await te(m.fileId,n,r);return C.status?(p(100,!1,"已完成"),{status:!0,uploadId:t,uuid:m.fileId,fileName:c}):(p(0,!1,"内部错误"),{status:!1,error:"内部错误",uploadId:t,skip:!0})}catch(f){return console.debug("=============单个文件上传出错(意料之外的出错)================,未知出错:",f),p(0,!1,"未知出错"),{status:!1,error:f,uploadId:t,skip:!0}}}async function Y(e){const t=new B.a.ArrayBuffer,i=5242880,o=Math.ceil(e.size/i);for(let s=0;s<o;s++){const o=s*i,a=Math.min(o+i,e.size),n=e.slice(o,a),r=await n.arrayBuffer();t.append(r),s%100===0&&await new Promise(e=>setTimeout(e,0))}return t.end()}async function H(e,t=[],i=5242880){const o=[];let s=0,a=0;while(s<e.size){const n=e.slice(s,s+i),r=await K(n);t.includes(a)||o.push({chunk:n,index:a,start:s,end:Math.min(s+i,e.size),hash:r,size:Math.min(i,e.size-s)}),s+=i,a++}return o}function K(e){return new Promise(t=>{const i=new FileReader,o=new B.a.ArrayBuffer;i.onload=function(e){o.append(e.target.result),t(o.end())},i.readAsArrayBuffer(e)})}async function W(e,t,i,o,s){const a=e.length,n=e.map((e,o)=>{const s=async()=>{const s={filename:i,index:e.index,total:a,identifier:t,chunkIdentifier:e.hash,file:e.chunk};try{const i=await Z(t,e.hash);if(i)return{status:!0,msg:"文件块已经存在了"}}catch(d){return{status:!1,msg:d}}const n=new Promise(e=>{const t=setTimeout(()=>{e({status:!1,msg:"文件错误"}),clearTimeout(t)},L.uploadChunkTime)}),r=(async()=>{try{const e=await N.uploadFileChunk(s);return"Success"===e.code?{status:!0,msg:"文件块上传成功"}:{status:!1,msg:"文件块上传失败"}}catch(d){return{status:!1,msg:"文件块上传失败"}}})(),l=await Promise.race([r,n]);return console.log("块上传,序号:",o,l),l};return{taskFn:s,index:o}}),r=await s.runTasks(n);return r.filter(e=>!0!==e.status)}async function Q(e,t){const i=await N.filesAllUoloaded({size:t,identifier:e});return"Success"===i.code}async function Z(e,t){const i=await N.searchChunkIsUploaded({identifier:e,chunkIdentifier:t});return i.data}async function G(e,t=4e3,i=1e4){let o=0,s=0;const a=new Promise((i,s)=>{o=setInterval(async()=>{const t=await J(e);"Success"===t.code&&"STORAGE"===t.data.status?i({result:!0,Message:"文件状态成功",fileId:t.data.uuid,version_id:t.version}):"Success"===t.code&&"ERROR"===t.data.status&&i({result:!1,Message:"文件状态错误",fileId:t.data.uuid,version_id:t.version})},t)}),n=new Promise((e,t)=>{s=setTimeout(()=>{console.log("文件上传超时了"),e({result:!1,Message:"文件合并超时"})},i)});return Promise.race([a,n]).then(e=>(o&&(clearInterval(o),o=null),s&&(clearTimeout(s),s=null),e.result?{result:!0,fileId:e.fileId,version_id:e.version_id,Message:e.Message}:{result:!1,Message:e.Message})).catch(e=>e)}async function J(e){const t=await N.checkfileStatus({identifier:e});return t}async function ee(e,t){const i=await N.searchFileIsUploaded({identifier:e,size:t});return i?i.data:""}async function te(e,t,i){let o=null;return"txt"===i?o=0===t?await N.addNewFileOfTxt({uuid:e}):await N.addNewFileOfTxt({version_id:t,uuid:e}):"video"===i?o=await N.addNewFileOfVideo({version_id:t,uuid:e}):"audio"===i?o=await N.addNewFileOfAudio({version_id:t,uuid:e}):"subTitle"===i?o=await N.addNewFileOfSubTitle({version_id:t,uuid:e}):"pictrue"===i&&(o=await N.addNewFileOfPic({version_id:t,video_id:0,uuid:e})),0===o.code?o.data.length<1?{status:!1,message:"文件路径创建失败"}:{status:!0,message:"文件路径创建成功"}:{status:!1,message:"文件路径创建失败"}}var ie={name:"KukanUpload",components:{Card_2:T,Upload_table:O},props:{addDataBaseLinkConfig:{required:!1,type:Object,default:()=>({addDataBaseLink:!1,addFileType:"",addProgramVersion:0})},autoUpload:{required:!1,type:Boolean,default:!0},multiple:{required:!1,type:Boolean},startButtonText:{required:!1,type:String,default:""},showSuccessPicture:{required:!1,type:Boolean,default:!0},model:{required:!0,type:String,default:"small"},showIconTip:{required:!1,type:Boolean,default:!0},noneBoder:{required:!1,type:Boolean,default:!1},apiObj:{required:!1,type:Object,default:()=>({})},maxFileConcurrent:{required:!1,type:Number,default:2},maxFileChunkConcurrent:{required:!1,type:Number,default:2}},data(){return{pictureConfig:{show:!1,url:"",altText:"封面图片"},fileConfig:{overallProgress:0,notShowTip:!0,tip:"等待上传",uploadController:null,skipError_num:0,filetotal_num:0,completed_num:0,maxFileConcurrent:this.maxFileConcurrent},program_id:0,needUploadFilesArr:[],multipleChunkConfig:{fileQueues:new Map,progressCallbacks:new Map,uploadTasks:new Map,chunkSize:1048576,maxConcurrent:this.maxFileChunkConcurrent}}},computed:{limitFileType(){return"txt"===this.addDataBaseLinkConfig.addFileType?"":"video"===this.addDataBaseLinkConfig.addFileType?"video/*":"pictrue"===this.addDataBaseLinkConfig.addFileType?"image/*":"audio"===this.addDataBaseLinkConfig.addFileType?"audio/*":"subTitle"===this.addDataBaseLinkConfig.addFileType?".srt, .vtt, .ass, .ssa, .smi, .webvtt, .ttml, .dfxp, .lrc, .vtt, .srt, .txt":""},isShowAllUploadButton(){if("info"===this.model&&!0!==this.autoUpload)return!0},isDanger(){return this.fileConfig.skipError_num>0?"danger":""},currentFileUploadedArr(){return this.fileConfig.uploadController.getStatus()},isUploading(){if(this.needUploadFilesArr&&this.needUploadFilesArr.length>0){const e=this.needUploadFilesArr.some(e=>"上传中"===e.tip||e.notShowTip&&e.uploadProgress>=0&&e.uploadProgress<100);return e}return!1}},mounted(){},methods:{removeFileInform(e){this.$emit("removeFile",e)},informUploadedOfRefresh(){this.$emit("informTableOfRefresh")},uploadedResult(e){this.$emit("handelResult",e)},uploadedUUIDs(e){this.$emit("getUUID",e)},uploadStart(){this.$emit("uploadStart")},tableSelectionChange(e){this.needUploadFilesArr.forEach(t=>{t.isSelected=e.includes(t.index)})},uploadingOtherFilterFun(e){return new Promise(t=>{let i=!1;const o=e=>{Array.isArray(e)&&(this.needUploadFilesArr=e),console.log("上传开始后指定其他的文件筛选逻辑",this.needUploadFilesArr),i||(i=!0,t())};this.$emit("otherFilterFiles",e,o),setTimeout(()=>{i||(i=!0,t())},500)})},resetConfig(){if(this.fileConfig&&this.fileConfig.uploadController)try{this.pauseAllQueue(),this.fileConfig.uploadController.clear()}catch(e){console.error(e)}this.fileConfig.uploadController=null,this.multipleChunkConfig.uploadTasks=new Map,this.multipleChunkConfig.fileQueues=new Map,this.needUploadFilesArr=[],this.fileConfig.skipError_num>0?(this.fileConfig.tip="上传出错",this.fileConfig.notShowTip=!1):(this.fileConfig.tip="等待上传",this.fileConfig.notShowTip=!0,this.fileConfig.overallProgress=0)},setUploadingLoadingMaskStyle(){return{"--spinner-size":"mini"===this.model?"20px":"40px"}},multipleUploadAreaClass(){return{multiple_upload_area_disabled:this.isUploading,small_model:"small"===this.model,mini_model:"mini"===this.model}},uploadingTextStyle(e){return"出错"===e||"查询文件地址超时"===e||"上传出错"===e?"uploading_error":"已完成"===e?"uploading_success":"等待上传"===e?"uploading_wait":""},setPictureConfig(e){if(!e)return;const t=Object({NODE_ENV:"production",BASE_URL:"/"}).VUE_APP_ZT_BASE_API+"/resources/open/view/image?";this.pictureConfig.show=!0,this.pictureConfig.url=t+"uuid="+e,this.pictureConfig.altText="读取成功"},clearPicture(){this.pictureConfig.show=!1,this.pictureConfig.url="",this.pictureConfig.altText="封面图片"},totalProgressStatus(e){return e.notShowTip?e.overallProgress>99?"success":null:e.overallProgress<100?"exception":null},progressStatus(e){return e<100?"active":"success"},pauseAllQueue(){this.fileConfig.uploadController.pause(),this.multipleChunkConfig.fileQueues.forEach((e,t,i)=>{e.pause()})},async searchFilePathIsExist(e){let t=[];const i=await this.$store.dispatch("app/getMediaList",{currentFileType:this.addDataBaseLinkConfig.addFileType,version_id:this.addDataBaseLinkConfig.programVersion,page_num:1,page_sizet:10,file_id:"",file_name:e,imageIsOnlyImg:1===this.imageIsOnlyImgOfButton});return 0===i.code&&("txt"===this.addDataBaseLinkConfig.addFileType?t=i.data.doc_list:"video"===this.addDataBaseLinkConfig.addFileType?t=i.data.video_list:"audio"===this.addDataBaseLinkConfig.addFileType?t=i.data.audio_list:"subTitle"===this.addDataBaseLinkConfig.addFileType?t=i.data.srt_list:"pictrue"===this.addDataBaseLinkConfig.addFileType&&(t=i.data.pic_list)),t.length>1},handleSelectAllFile(){this.needUploadFilesArr.forEach(e=>{e.isSelected=!0})},resetFileUpload(e){if("上传出错"===e.tip){const t=e.index,i=this.multipleChunkConfig.fileQueues,o=i&&"function"===typeof i.get?i.get(t):i[t];o&&"function"===typeof o.resume&&(o.resume(),o.clear());const s=this.fileConfig&&this.fileConfig.uploadController&&"function"===typeof this.fileConfig.uploadController.getStatus?this.fileConfig.uploadController.getStatus():{activeCount:0};s.activeCount>=this.fileConfig.maxFileConcurrent?(console.debug("队列已满",this.fileConfig.uploadController),this.fileConfig&&this.fileConfig.uploadController&&"function"===typeof this.fileConfig.uploadController.errorActiveIsFull&&(this.fileConfig.uploadController.errorActiveIsFull(e.index),e.tip="上传中",console.log("item是否修改成功",e.tip))):(console.debug("队列未满",this.fileConfig.uploadController),this.fileConfig.uploadController.startResetErrorTask(e.index))}else if("已取消"===e.tip){const t=this.fileConfig&&this.fileConfig.uploadController&&"function"===typeof this.fileConfig.uploadController.getStatus?this.fileConfig.uploadController.getStatus():{activeCount:0};t.activeCount>=this.fileConfig.maxFileConcurrent?this.fileConfig&&this.fileConfig.uploadController&&"function"===typeof this.fileConfig.uploadController.errorActiveIsFull&&(e.tip="上传中",this.fileConfig.uploadController.startResetCanceledyTask(e.index),console.log("item是否修改成功",e.tip)):this.fileConfig.uploadController.startResetCanceledyTask(e.index)}},cancelFileUpload(e){if(!this.fileConfig.uploadController)return void(this.needUploadFilesArr=this.needUploadFilesArr.filter(t=>t.index!==e.index));const t=this.fileConfig.uploadController.cancelFileUpload(e.index);t?(this.$set(e,"notShowTip",!1),this.$set(e,"tip","已取消")):this.$message.error("正在上传,不可取消")},handleClickOnlyFile(e){e.isSelected=!e.isSelected},delteSelectedFile(){const e=[],t=[];this.needUploadFilesArr.forEach(i=>{i.isSelected?(i.isSelected=!1,t.push(i)):e.push(i)}),this.needUploadFilesArr.length!==e.length?(this.removeFileInform(t),this.needUploadFilesArr=e):this.$message("没有需要移除的文件")},async startUploadMultipleFiles(){const e=this.needUploadFilesArr.filter(e=>"已完成"!==e.tip);if(0!==e.length)try{this.uploadStart(),this.$message.success("开始上传"),this.fileConfig.filetotal_num=e.length,e.forEach(e=>{e.notShowTip=!1,e.tip="上传中",e.uploadProgress=0,e.updateProgress=t=>{this.$set(e,"notShowTip",t.notShowTip),this.$set(e,"tip",t.tip),this.$set(e,"uploadProgress",t.percentage),this.uploadingTextStyle(e.tip)},e.progress_error=()=>{this.$set(e,"notShowTip",!1),this.$set(e,"tip","上传出错"),this.$set(e,"uploadProgress",0),this.uploadingTextStyle(e.tip)}});const t=({percentage:e,notShowTip:t,tip:i,completed:o,total:s,active:a,queued:n,skipError:r})=>{console.log("%c 文件总进度:","color: #2196F3; font-weight: bold;",`已完成 ${o}/${s},正在上传 ${a},排队中 ${n}, 出错数量 ${r} 个`),this.fileConfig.overallProgress=e,this.fileConfig.notShowTip=t,this.fileConfig.tip=i,this.fileConfig.skipError_num=r,this.fileConfig.completed_num=o,this.fileConfig.filetotal_num=s},i=(e,t)=>{this.multipleChunkConfig.fileQueues.set(e,t)},o=(e,t)=>{this.multipleChunkConfig.uploadTasks.set(e,t)},s=(e,t)=>{this.fileConfig.uploadController=e,this.fileConfig.tip="上传中"},a=await V(e,this.multipleChunkConfig.maxConcurrent,this.fileConfig.maxFileConcurrent,this.addDataBaseLinkConfig,i,o,t,s,this.apiObj);if(a){this.informUploadedOfRefresh(),this.uploadedResult(a);const e=a.some(e=>!0===e.status);if(e){const e=a.map(e=>e.uuid);if(this.uploadedUUIDs(e),e.length<=1&&!this.multiple){const t=Object({NODE_ENV:"production",BASE_URL:"/"}).VUE_APP_ZT_BASE_API+"/resources/open/view/image?";this.pictureConfig={alt:"上传成功",url:t+"uuid="+e[0],show:!0}}}}else this.uploadedResult([]),this.$message.error("上传出错!")}catch(t){console.error("批量上传失败",t),this.$message.error("上传出错!")}else this.$message.error("没有需要上传的文件")},onDrop(e){this.handleSelectedMultipleFiles(e)},onDragOver(){this.$refs.upLoded_box.classList.add("uploading_box_hover")},onDragLeave(){this.$refs.upLoded_box.classList.remove("uploading_box_hover")},reviewUploadMultipleFiles(e){this.isUploading?this.$message.error("后台上传中"):this.$refs.multiplePloadInput&&this.$refs.multiplePloadInput.click()},async handleSelectedMultipleFiles(e){let t=[],i=0;const o=e.target.files||e.dataTransfer.files;Array.from(o).forEach((e,o)=>{"video"===this.addDataBaseLinkConfig.addFileType?w.isVideo(e.type||e.name.split(".")[1])?t.push({isSelected:!1,name:e.name,file:e,index:o,notShowTip:!1,tip:"等待上传",uploadProgress:0,updateProgress:null,progress_error:null}):i++:"txt"===this.addDataBaseLinkConfig.addFileType?w.isDocument(e.type||e.name.split(".")[1])?t.push({isSelected:!1,name:e.name,file:e,index:o,notShowTip:!1,tip:"等待上传",uploadProgress:0,updateProgress:null,progress_error:null}):i++:"subTitle"===this.addDataBaseLinkConfig.addFileType?w.isSubtitle(e.type||e.name.split(".")[1])?t.push({isSelected:!1,name:e.name,file:e,index:o,notShowTip:!1,tip:"等待上传",uploadProgress:0,updateProgress:null,progress_error:null}):i++:"audio"===this.addDataBaseLinkConfig.addFileType?w.isAudio(e.type||e.name.split(".")[1])?t.push({isSelected:!1,name:e.name,file:e,index:o,notShowTip:!1,tip:"等待上传",uploadProgress:0,updateProgress:null,progress_error:null}):i++:"pictrue"===this.addDataBaseLinkConfig.addFileType&&(w.isImage(e.type||e.name.split(".")[1])?t.push({isSelected:!1,name:e.name,file:e,index:o,notShowTip:!1,tip:"等待上传",uploadProgress:0,updateProgress:null,progress_error:null}):i++)}),i>0&&this.$message.error(i+"个文件格式不支持,已跳过"),i=0,t=t.filter(e=>{const t=e&&e.file&&(e.file.size||e.fileSize||e.size)||0,o=Number(t)||0,s=2147483648,a=o>0&&o<s;return a||i++,a}),i&&(this.$message.error(i+"个文件大小超出2Gb,已跳过"),i=0),this.fileConfig.uploadController&&(this.fileConfig.uploadController.clear(),this.fileConfig.overallProgress=0,this.fileConfig.notShowTip=!0,this.fileConfig.tip="等待上传",this.fileConfig.skipError_num=0,this.fileConfig.completed_num=0,this.fileConfig.filetotal_num=0),this.needUploadFilesArr=[...this.needUploadFilesArr,...t],await this.uploadingOtherFilterFun(this.needUploadFilesArr),e.target.value="",this.needUploadFilesArr.length>0&&this.autoUpload&&this.startUploadMultipleFiles()}}},oe=ie,se=(i("90f1"),U(oe,v,y,!1,null,"641d735d",null)),ae=se.exports;ae.install=function(e){e.component(ae.name,ae)};var ne=ae,re=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("el-dialog",{attrs:{visible:e.dialogVisible,"show-close":!1,modal:!0,width:e.width,top:e.topMargin,"custom-class":"modern-video-review-dialog","append-to-body":"","before-close":e.closePreview},on:{"update:visible":function(t){e.dialogVisible=t},opened:e.onOpened}},[i("div",{staticClass:"video-review-container",style:{height:e.height},on:{mousemove:e.onDrag,mouseup:e.stopDrag,mouseleave:e.stopDrag}},[i("div",{staticClass:"video-review-header"},[i("div",{staticClass:"file-info"},[i("span",{staticClass:"file-name",attrs:{title:e.fileName}},[e._v(e._s(e.fileName||"视频预览"))]),e.combinedLoading||e.loadError||!e.videoWidth?e._e():i("span",{staticClass:"file-size"},[e._v(" "+e._s(e.videoWidth)+" × "+e._s(e.videoHeight)+" px | "+e._s(e.duration)+" ")])]),i("div",{staticClass:"video-review-controls"},[i("button",{staticClass:"control-icon-btn",attrs:{disabled:e.combinedLoading||e.loadError||e.scale<=e.minScale},on:{click:e.zoomOut}},[i("i",{staticClass:"el-icon-zoom-out"})]),i("span",{staticClass:"zoom-display"},[e._v(e._s(Math.round(100*e.scale))+"%")]),i("button",{staticClass:"control-icon-btn",attrs:{disabled:e.combinedLoading||e.loadError||e.scale>=e.maxScale},on:{click:e.zoomIn}},[i("i",{staticClass:"el-icon-zoom-in"})]),i("div",{staticClass:"control-divider"}),i("button",{staticClass:"control-icon-btn",attrs:{disabled:e.combinedLoading,title:"原始尺寸/重置位置"},on:{click:e.resetZoom}},[i("i",{staticClass:"el-icon-refresh-right"})]),i("button",{staticClass:"control-icon-btn close-btn",on:{click:e.closePreview}},[i("i",{staticClass:"el-icon-close"})])])]),i("div",{staticClass:"video-review-content",on:{wheel:function(t){return t.preventDefault(),e.handleWheel(t)},mousedown:function(t){return t.target!==t.currentTarget?null:e.startDrag(t)},"!click":function(t){return e.handleCaptureClick(t)}}},[i("transition",{attrs:{name:"fade"}},[e.combinedLoading&&!e.loadError?i("div",{staticClass:"status-overlay"},[i("i",{staticClass:"el-icon-loading"}),i("p",[e._v("视频加载中...")])]):e._e()]),e.loadError?i("div",{staticClass:"status-overlay error"},[i("i",{staticClass:"el-icon-video-camera"}),i("p",[e._v("视频加载失败")])]):e._e(),i("div",{directives:[{name:"show",rawName:"v-show",value:!e.combinedLoading&&!e.loadError,expression:"!combinedLoading && !loadError"}],staticClass:"video-transform-wrapper",style:e.videoStyle,on:{mousedown:e.startDrag}},[e.visible&&e.videoUrl?i("video",{key:e.videoKey,ref:"videoPlayer",staticClass:"main-preview-video",attrs:{src:e.videoUrl,autoplay:"",loop:"",playsinline:"",controls:""},on:{loadedmetadata:e.onMetadataLoad,error:e.onVideoError,canplay:e.onCanPlay,waiting:function(t){e.innerLoading=!0}}}):e._e()])],1),i("div",{staticClass:"video-review-hint"},[i("span",[e._v("鼠标拖拽背景移动,滚轮缩放查看细节")])])])])},le=[],de={name:"VideoReview",props:{visible:{type:Boolean,default:!1},videoUrl:{type:String,required:!0},fileName:{type:String,default:""},width:{type:String,default:"40%"},height:{type:String,default:"80vh"},topMargin:{type:String,default:"7vh"},initialScale:{type:Number,default:1},loading:{type:Boolean,default:!1}},data(){return{scale:1,minScale:.5,maxScale:3,innerLoading:!0,loadError:!1,videoWidth:0,videoHeight:0,duration:"00:00",translateX:0,translateY:0,isDragging:!1,hasMoved:!1,videoKey:Date.now(),startMousePos:{x:0,y:0},mouseStartPos:{x:0,y:0}}},computed:{dialogVisible:{get(){return this.visible},set(e){this.$emit("update:visible",e)}},combinedLoading(){return this.loading||this.innerLoading},videoStyle(){return{transform:`translate(${this.translateX}px, ${this.translateY}px) scale(${this.scale})`,transition:this.isDragging?"none":"transform 0.25s cubic-bezier(0.2, 0, 0, 1)"}}},watch:{visible(e){e?(this.videoKey=Date.now(),this.initStates(),window.addEventListener("keydown",this.handleKeyDown)):(this.pauseVideo(),window.removeEventListener("keydown",this.handleKeyDown))},videoUrl(){this.visible&&(this.videoKey=Date.now(),this.initStates())}},methods:{initStates(){this.innerLoading=!0,this.loadError=!1,this.videoWidth=0,this.videoHeight=0,this.duration="00:00",this.resetZoom(),this.$nextTick(()=>{this.$refs.videoPlayer&&this.$refs.videoPlayer.load()})},onOpened(){this.resetZoom()},onMetadataLoad(e){const t=e.target;this.videoWidth=t.videoWidth,this.videoHeight=t.videoHeight,this.duration=this.formatDuration(t.duration)},onCanPlay(){this.innerLoading=!1,this.loadError=!1},onVideoError(){this.innerLoading=!1,this.loadError=!0},formatDuration(e){if(!e)return"00:00";const t=Math.floor(e/60),i=Math.floor(e%60);return`${t.toString().padStart(2,"0")}:${i.toString().padStart(2,"0")}`},zoomIn(){this.combinedLoading||this.scale<this.maxScale&&(this.scale=parseFloat((this.scale+.2).toFixed(1)))},zoomOut(){this.combinedLoading||this.scale>this.minScale&&(this.scale=parseFloat((this.scale-.2).toFixed(1)))},resetZoom(){this.scale=this.initialScale,this.translateX=0,this.translateY=0},handleWheel(e){if(this.combinedLoading)return;const t=e.deltaY>0?-.1:.1,i=parseFloat((this.scale+t).toFixed(1));i>=this.minScale&&i<=this.maxScale&&(this.scale=i)},startDrag(e){this.combinedLoading||"VIDEO"===e.target.tagName&&e.offsetY>e.target.offsetHeight-50||0===e.button&&(this.isDragging=!0,this.hasMoved=!1,this.startMousePos={x:e.clientX,y:e.clientY},this.mouseStartPos={x:e.clientX-this.translateX,y:e.clientY-this.translateY})},onDrag(e){if(!this.isDragging)return;const t=Math.abs(e.clientX-this.startMousePos.x),i=Math.abs(e.clientY-this.startMousePos.y);(t>5||i>5)&&(this.hasMoved=!0),this.translateX=e.clientX-this.mouseStartPos.x,this.translateY=e.clientY-this.mouseStartPos.y},stopDrag(){this.isDragging=!1},handleCaptureClick(e){this.hasMoved&&(e.preventDefault(),e.stopPropagation(),this.hasMoved=!1)},pauseVideo(){this.$refs.videoPlayer&&this.$refs.videoPlayer.pause()},handleKeyDown(e){if("Escape"===e.key&&this.closePreview()," "===e.key&&!this.combinedLoading){e.preventDefault();const t=this.$refs.videoPlayer;t&&(t.paused?t.play():t.pause())}},closePreview(){this.pauseVideo(),this.dialogVisible=!1,this.$emit("close")}}},ue=de,ce=(i("a888"),U(ue,re,le,!1,null,"3f692c5e",null)),pe=ce.exports;const fe=[ne,pe],he=function(e,t={}){fe.forEach(t=>{e.component(t.name,t)}),n(t.axios)};"undefined"!==typeof window&&window.Vue&&he(window.Vue);var ge={install:he};t["default"]=ge}})}));
2
2
  //# sourceMappingURL=kukan-ui.umd.min.js.map