/*! * artplayer-plugin-danmuku.js v4.4.11 * Github: https://github.com/zhw2590582/ArtPlayer * (c) 2017-2022 Harvey Zack * Released under the MIT License. */ !function(t,e,r,n,a){var i="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},o="function"==typeof i.parcelRequire93cf&&i.parcelRequire93cf,u=o.cache||{},s="undefined"!=typeof module&&"function"==typeof module.require&&module.require.bind(module);function l(e,r){if(!u[e]){if(!t[e]){var n="function"==typeof i.parcelRequire93cf&&i.parcelRequire93cf;if(!r&&n)return n(e,!0);if(o)return o(e,!0);if(s&&"string"==typeof e)return s(e);var a=new Error("Cannot find module '"+e+"'");throw a.code="MODULE_NOT_FOUND",a}p.resolve=function(r){var n=t[e][1][r];return null!=n?n:r},p.cache={};var c=u[e]=new l.Module(e);t[e][0].call(c.exports,p,c,c.exports,this)}return u[e].exports;function p(t){var e=p.resolve(t);return!1===e?{}:l(e)}}l.isParcelRequire=!0,l.Module=function(t){this.id=t,this.bundle=l,this.exports={}},l.modules=t,l.cache=u,l.parent=o,l.register=function(e,r){t[e]=[function(t,e){e.exports=r},{}]},Object.defineProperty(l,"root",{get:function(){return i.parcelRequire93cf}}),i.parcelRequire93cf=l;for(var c=0;c=4.04,"Artplayer.js@".concat(r," 不兼容该弹幕库,请更新到 4.4.x 版本以上"))}(e);var r=new(0,i.default)(e,t);return(0,u.default)(e,r),{name:"artplayerPluginDanmuku",emit:r.emit.bind(r),load:r.load.bind(r),config:r.config.bind(r),hide:r.hide.bind(r),show:r.show.bind(r),reset:r.reset.bind(r),get option(){return r.option},get isHide(){return r.isHide},get isStop(){return r.isStop}}}}r.default=s,s.env="production",s.version="4.4.11",s.build="2022-10-30 10:46:40","undefined"!=typeof window&&(window.artplayerPluginDanmuku=s)},{"./danmuku":"cD7gc","./setting":"3SER8","@parcel/transformer-js/src/esmodule-helpers.js":"6uDyy"}],cD7gc:[function(t,e,r){var n=t("@parcel/transformer-js/src/esmodule-helpers.js");n.defineInteropFlag(r),n.export(r,"default",(function(){return k}));var a=t("@swc/helpers/src/_async_to_generator.mjs"),i=n.interopDefault(a),o=t("@swc/helpers/src/_class_call_check.mjs"),u=n.interopDefault(o),s=t("@swc/helpers/src/_create_class.mjs"),l=n.interopDefault(s),c=t("@swc/helpers/src/_object_spread.mjs"),p=n.interopDefault(c),d=t("@swc/helpers/src/_object_spread_props.mjs"),f=n.interopDefault(d),m=t("regenerator-runtime"),h=n.interopDefault(m),y=t("./bilibili"),g=t("./getDanmuTop"),v=n.interopDefault(g),k=function(){"use strict";function e(r,n){(0,u.default)(this,e);var a=r.constructor,i=r.template;if(this.utils=a.utils,this.validator=a.validator,this.$danmuku=i.$danmuku,this.$player=i.$player,this.art=r,this.queue=[],this.option={},this.$refs=[],this.isStop=!1,this.isHide=!1,this.timer=null,this.config(n),this.option.useWorker)try{this.worker=new Worker(t("85d40535eae5f839"))}catch(t){}this.start=this.start.bind(this),this.stop=this.stop.bind(this),this.reset=this.reset.bind(this),this.destroy=this.destroy.bind(this),r.on("video:play",this.start),r.on("video:playing",this.start),r.on("video:pause",this.stop),r.on("video:waiting",this.stop),r.on("fullscreen",this.reset),r.on("fullscreenWeb",this.reset),r.on("destroy",this.destroy),this.load()}return(0,l.default)(e,[{key:"isRotate",get:function(){return this.art.plugins.autoOrientation&&this.art.plugins.autoOrientation.state}},{key:"marginTop",get:function(){var t=this.utils.clamp,r=this.option.margin[0],n=this.$player.clientHeight;return"number"==typeof r?t(r,0,n):"string"==typeof r&&r.endsWith("%")?t(n*(parseFloat(r)/100),0,n):e.option.margin[0]}},{key:"marginBottom",get:function(){var t=this.utils.clamp,r=this.option.margin[1],n=this.$player.clientHeight;return"number"==typeof r?t(r,0,n):"string"==typeof r&&r.endsWith("%")?t(n*(parseFloat(r)/100),0,n):e.option.margin[1]}},{key:"filter",value:function(t,e){return this.queue.filter((function(e){return e.$state===t})).map(e)}},{key:"getLeft",value:function(t){var e=t.getBoundingClientRect();return this.isRotate?e.top:e.left}},{key:"getRef",value:function(){var t=this.$refs.pop();if(t)return t;var e=document.createElement("div");return e.style.cssText='\n user-select: none;\n position: absolute;\n white-space: pre;\n pointer-events: none;\n perspective: 500px;\n display: inline-block;\n will-change: transform;\n font-weight: normal;\n line-height: 1.125;\n visibility: hidden;\n font-family: SimHei, "Microsoft JhengHei", Arial, Helvetica, sans-serif;\n text-shadow: rgb(0, 0, 0) 1px 0px 1px, rgb(0, 0, 0) 0px 1px 1px, rgb(0, 0, 0) 0px -1px 1px, rgb(0, 0, 0) -1px 0px 1px;\n ',e}},{key:"getReady",value:function(){var t=this.art.currentTime;return this.queue.filter((function(e){return"ready"===e.$state||"wait"===e.$state&&t+.1>=e.time&&e.time>=t-.1}))}},{key:"getEmits",value:function(){var t=this,e=[],r=this.$player.clientWidth,n=this.getLeft(this.$player);return this.filter("emit",(function(a){var i=a.$ref.offsetTop,o=t.getLeft(a.$ref)-n,u=a.$ref.clientHeight,s=a.$ref.clientWidth,l=o+s,c=r-l,p=l/a.$restTime,d={};d.top=i,d.left=o,d.height=u,d.width=s,d.right=c,d.speed=p,d.distance=l,d.time=a.$restTime,d.mode=a.mode,e.push(d)})),e}},{key:"getFontSize",value:function(t){var r=this.utils.clamp,n=this.$player.clientHeight;return"number"==typeof t?r(t,12,n):"string"==typeof t&&t.endsWith("%")?r(n*(parseFloat(t)/100),12,n):e.option.fontSize}},{key:"postMessage",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=this;return new Promise((function(r){if(e.option.useWorker&&e.worker&&e.worker.postMessage)t.id=Date.now(),e.worker.postMessage(t),e.worker.onmessage=function(e){var n=e.data;n.id===t.id&&r(n)};else{var n=(0,v.default)(t);r({top:n})}}))}},{key:"load",value:function(){var t=this;return(0,i.default)(h.default.mark((function e(){var r;return h.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(e.prev=0,r=[],"function"!=typeof t.option.danmuku){e.next=8;break}return e.next=5,t.option.danmuku();case 5:r=e.sent,e.next=21;break;case 8:if("function"!=typeof t.option.danmuku.then){e.next=14;break}return e.next=11,t.option.danmuku;case 11:r=e.sent,e.next=21;break;case 14:if("string"!=typeof t.option.danmuku){e.next=20;break}return e.next=17,(0,y.bilibiliDanmuParseFromUrl)(t.option.danmuku);case 17:r=e.sent,e.next=21;break;case 20:r=t.option.danmuku;case 21:t.utils.errorHandle(Array.isArray(r),"Danmuku need return an array as result"),t.art.emit("artplayerPluginDanmuku:loaded",r),t.queue=[],t.$danmuku.innerText="",r.forEach((function(e){return t.emit(e)})),e.next=32;break;case 28:throw e.prev=28,e.t0=e.catch(0),t.art.emit("artplayerPluginDanmuku:error",e.t0),e.t0;case 32:return e.abrupt("return",t);case 33:case"end":return e.stop()}}),e,null,[[0,28]])})))()}},{key:"config",value:function(t){var r=this.utils.clamp;return this.option=Object.assign({},e.option,this.option,t),this.validator(this.option,e.scheme),this.option.speed=r(this.option.speed,1,10),this.option.opacity=r(this.option.opacity,0,1),this.option.lockTime=r(Math.floor(this.option.lockTime),0,60),this.option.maxLength=r(this.option.maxLength,0,500),this.option.minWidth=r(this.option.minWidth,0,500),this.option.maxWidth=r(this.option.maxWidth,0,1/0),t.fontSize&&(this.option.fontSize=this.getFontSize(this.option.fontSize),this.reset()),this.art.emit("artplayerPluginDanmuku:config",this.option),this}},{key:"makeWait",value:function(t){t.$state="wait",t.$ref&&(t.$ref.style.visibility="hidden",t.$ref.style.marginLeft="0px",t.$ref.style.transform="translateX(0px)",t.$ref.style.transition="transform 0s linear 0s",this.$refs.push(t.$ref),t.$ref=null)}},{key:"continue",value:function(){var t=this.$player.clientWidth;return this.filter("stop",(function(e){if(e.$state="emit",e.$lastStartTime=Date.now(),0===e.mode){var r=t+e.$ref.clientWidth;e.$ref.style.transform="translateX(".concat(-r,"px)"),e.$ref.style.transition="transform ".concat(e.$restTime,"s linear 0s")}})),this}},{key:"suspend",value:function(){var t=this,e=this.$player.clientWidth;return this.filter("emit",(function(r){if(r.$state="stop",0===r.mode){var n=e-(t.getLeft(r.$ref)-t.getLeft(t.$player));r.$ref.style.transform="translateX(".concat(-n,"px)"),r.$ref.style.transition="transform 0s linear 0s"}})),this}},{key:"reset",value:function(){var t=this;return this.queue.forEach((function(e){return t.makeWait(e)})),this}},{key:"update",value:function(){var t=this;return this.timer=window.requestAnimationFrame((0,i.default)(h.default.mark((function e(){var r,n,a,i,o,u,s,l,c;return h.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.art.playing||t.isHide){e.next=46;break}t.filter("emit",(function(e){var r=(Date.now()-e.$lastStartTime)/1e3;e.$restTime-=r,e.$lastStartTime=Date.now(),e.$restTime<=0&&t.makeWait(e)})),r=t.getReady(),n=t.$player,a=n.clientWidth,i=n.clientHeight,o=0;case 5:if(!(o=0;--i){var o=this.tryEntries[i],u=o.completion;if("root"===o.tryLoc)return a("end");if(o.tryLoc<=this.prev){var s=n.call(o,"catchLoc"),l=n.call(o,"finallyLoc");if(s&&l){if(this.prev=0;--r){var a=this.tryEntries[r];if(a.tryLoc<=this.prev&&n.call(a,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),B(r),h}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var a=n.arg;B(r)}return a}}throw new Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:A(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),h}},t}(e.exports);try{regeneratorRuntime=n}catch(t){"object"==typeof globalThis?globalThis.regeneratorRuntime=n:Function("r","regeneratorRuntime = r")(n)}},{}],iVXtC:[function(t,e,r){var n=t("@parcel/transformer-js/src/esmodule-helpers.js");function a(t){switch(t){case 1:case 2:case 3:default:return 0;case 4:case 5:return 1}}function i(t){if("string"!=typeof t)return[];var e=t.matchAll(RegExp('(?.+?)<\\/d>',"gs"));return Array.from(e).map((function(t){var e=t.groups.p.split(",");return e.length>=8?{text:t.groups.text.trim().replaceAll(""",'"').replaceAll("'","'").replaceAll("<","<").replaceAll(">",">").replaceAll("&","&"),time:Number(e[0]),mode:a(Number(e[1])),fontSize:Number(e[2]),color:"#".concat(Number(e[3]).toString(16)),timestamp:Number(e[4]),pool:Number(e[5]),userID:e[6],rowID:Number(e[7])}:null})).filter(Boolean)}function o(t){return fetch(t).then((function(t){return t.text()})).then((function(t){return i(t)}))}n.defineInteropFlag(r),n.export(r,"getMode",(function(){return a})),n.export(r,"bilibiliDanmuParseFromXml",(function(){return i})),n.export(r,"bilibiliDanmuParseFromUrl",(function(){return o}))},{"@parcel/transformer-js/src/esmodule-helpers.js":"6uDyy"}],"92aFk":[function(t,e,r){var n=t("@parcel/transformer-js/src/esmodule-helpers.js");n.defineInteropFlag(r);var a=t("@swc/helpers/src/_to_consumable_array.mjs"),i=n.interopDefault(a);r.default=function(t){var e=t.target,r=t.emits,n=t.clientWidth,a=t.clientHeight,o=t.marginBottom,u=t.marginTop,s=t.antiOverlap,l=r.filter((function(t){return t.mode===e.mode&&t.top<=a-o})).sort((function(t,e){return t.top-e.top}));if(0===l.length)return u;l.unshift({top:0,left:0,right:0,height:u,width:n,speed:0,distance:n}),l.push({top:a-o,left:0,right:0,height:o,width:n,speed:0,distance:n});for(var c=1;c=e.height)return f}for(var m=[],h=1;ht.time)}))}));return v&&v[0]?v[0].top:void 0;case 1:return}}},{"@swc/helpers/src/_to_consumable_array.mjs":"fjKdm","@parcel/transformer-js/src/esmodule-helpers.js":"6uDyy"}],fjKdm:[function(t,e,r){var n=t("@parcel/transformer-js/src/esmodule-helpers.js");n.defineInteropFlag(r);var a=t("./_array_without_holes.mjs"),i=n.interopDefault(a),o=t("./_iterable_to_array.mjs"),u=n.interopDefault(o),s=t("./_non_iterable_spread.mjs"),l=n.interopDefault(s),c=t("./_unsupported_iterable_to_array.mjs"),p=n.interopDefault(c);r.default=function(t){return(0,i.default)(t)||(0,u.default)(t)||(0,p.default)(t)||(0,l.default)()}},{"./_array_without_holes.mjs":"a6Rts","./_iterable_to_array.mjs":"iDbLZ","./_non_iterable_spread.mjs":"lMOGE","./_unsupported_iterable_to_array.mjs":"7C8mO","@parcel/transformer-js/src/esmodule-helpers.js":"6uDyy"}],a6Rts:[function(t,e,r){var n=t("@parcel/transformer-js/src/esmodule-helpers.js");n.defineInteropFlag(r);var a=t("./_array_like_to_array.mjs"),i=n.interopDefault(a);r.default=function(t){if(Array.isArray(t))return(0,i.default)(t)}},{"./_array_like_to_array.mjs":"dxfL9","@parcel/transformer-js/src/esmodule-helpers.js":"6uDyy"}],dxfL9:[function(t,e,r){t("@parcel/transformer-js/src/esmodule-helpers.js").defineInteropFlag(r),r.default=function(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r')})),o=d(a,'
模式
滚动
静止
颜色
').concat(n.join(""),'
发送
')),u=y(".art-danmuku-style",o),l=y(".art-danmuku-input",o),p=y(".art-danmuku-send",o),f=y(".art-danmuku-style-panel-inner",o),h=y(".art-danmuku-style-panel-modes",o),v=y(".art-danmuku-style-panel-colors",o),k=r.mount||d(i,'
');t.option.backdrop&&c(f,"art-backdrop-filter"),r.theme&&c(o,"art-danmuku-theme-".concat(r.theme));var b=null,x=r.mode,D=r.color;function j(t){t<=0?(b=null,p.innerText="发送",s(p,"art-disabled")):(p.innerText=t,b=setTimeout((function(){return j(t-1)}),1e3))}function _(){var n={mode:x,color:D,border:!0,text:l.value.trim()};null===b&&r.beforeEmit(n)&&(l.value="",e.emit(n),c(p,"art-disabled"),j(r.lockTime),t.emit("artplayerPluginDanmuku:emit",n))}function C(){a.clientWidth