!function(n,t){console.info("\n %c PipLyric v0.0.1 %c https://scriptcat.org/zh-CN/users/13895 \n","color: #fadfa3; background: #030307; padding:5px 0;","background: #fadfa3; padding:5px 0;"),"object"==typeof window?(n=window).PipLyric=t():(n="undefined"!=typeof globalThis?globalThis:n||self).PipLyric=t()}(this,function(){"use strict";function n(n,t){return function(n){if(Array.isArray(n))return n}(n)||function(n,t){var e=null==n?null:"undefined"!=typeof Symbol&&n[Symbol.iterator]||n["@@iterator"];if(null!=e){var i,r,o,a,c=[],l=!0,d=!1;try{if(o=(e=e.call(n)).next,0===t){if(Object(e)!==e)return;l=!1}else for(;!(l=(i=o.call(e)).done)&&(c.push(i.value),c.length!==t);l=!0);}catch(n){d=!0,r=n}finally{try{if(!l&&null!=e.return&&(a=e.return(),Object(a)!==a))return}finally{if(d)throw r}}return c}}(n,t)||e(n,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function t(n){return function(n){if(Array.isArray(n))return i(n)}(n)||function(n){if("undefined"!=typeof Symbol&&null!=n[Symbol.iterator]||null!=n["@@iterator"])return Array.from(n)}(n)||e(n)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function e(n,t){if(n){if("string"==typeof n)return i(n,t);var e=Object.prototype.toString.call(n).slice(8,-1);return"Object"===e&&n.constructor&&(e=n.constructor.name),"Map"===e||"Set"===e?Array.from(n):"Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e)?i(n,t):void 0}}function i(n,t){(null==t||t>n.length)&&(t=n.length);for(var e=0,i=new Array(t);e2&&void 0!==arguments[2]?arguments[2]:"lrc";return n=n||{},String(t||"").trim().split("\n").forEach(function(t){var i=function(n){var t=[],e=String(n||"").trim(),i=e;if(!n)return{tags:t,text:e};for(var r=function(n){return t.push(n.trim()),""};(e=e.replace(I.TAG,r))!==i;)i=e;return{tags:t,text:function(n){if(!(n=String(n||"").trim()))return n;n=n.replace(/:/g,":").replace(/,/g,",");var t=I.IDEOGRAM.test(n);return n.replace(/\s*:\s*/g,t?":":": ").replace(/\s*,\s*/g,t?",":", ")}(e)}}(t)||{},r=i.tags,o=i.text;o&&r&&r.forEach(function(t){var i=function(n){if(!n)return null;if(3===(n=String(n||"").split(":")).length){var t=n.pop();n[1]+=".".concat(t)}var e=n.reduce(function(n,t){return 60*n+parseFloat(t||0)},0);return Number.isNaN(e)?null:e.toFixed(2)}((t||"").slice(1,-1));null!=i&&(n[i]||(n[i]={}),n[i][e]||(n[i][e]=[]),n[i][e].push(o))})}),n},F=function(n){return(Array.isArray(n)?n:[]).filter(Boolean).join(" ").trim()},H=function(n){var t=n||{},e=t.lrc,i=t.tlrc;return e=F(e),i=F(i),e?i?{lrc:e,tlrc:i}:{lrc:e}:null};function R(n){return(R="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(n){return typeof n}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n})(n)}var J=[512,512,456,512,328,456,335,512,405,328,271,456,388,335,292,512,454,405,364,328,298,271,496,456,420,388,360,335,312,292,273,512,482,454,428,405,383,364,345,328,312,298,284,271,259,496,475,456,437,420,404,388,374,360,347,335,323,312,302,292,282,273,265,512,497,482,468,454,441,428,417,405,394,383,373,364,354,345,337,328,320,312,305,298,291,284,278,271,265,259,507,496,485,475,465,456,446,437,428,420,412,404,396,388,381,374,367,360,354,347,341,335,329,323,318,312,307,302,297,292,287,282,278,273,269,265,261,512,505,497,489,482,475,468,461,454,447,441,435,428,422,417,411,405,399,394,389,383,378,373,368,364,359,354,350,345,341,337,332,328,324,320,316,312,309,305,301,298,294,291,287,284,281,278,274,271,268,265,262,259,257,507,501,496,491,485,480,475,470,465,460,456,451,446,442,437,433,428,424,420,416,412,408,404,400,396,392,388,385,381,377,374,370,367,363,360,357,354,350,347,344,341,338,335,332,329,326,323,320,318,315,312,310,307,304,302,299,297,294,292,289,287,285,282,280,278,275,273,271,269,267,265,263,261,259],T=[9,11,12,13,13,14,14,15,15,15,15,16,16,16,16,17,17,17,17,17,17,17,18,18,18,18,18,18,18,18,18,19,19,19,19,19,19,19,19,19,19,19,19,19,19,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24];var k=function n(){!function(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function")}(this,n),this.r=0,this.g=0,this.b=0,this.a=0,this.next=null},P=function(n){return String(n||"").trim()},N="";"undefined"!=typeof window&&(N=getComputedStyle(document.body).fontFamily);var j,z,M,E,U=function(n){return"data:image/svg+xml,".concat(encodeURIComponent(n))},D=function(n){var t=v(!(arguments.length>1&&void 0!==arguments[1])||arguments[1]),e=t.canvas,i=n||{},r=i.naturalWidth,o=i.naturalHeight;return e.width=r||1,e.height=o||1,t.drawImage(n,0,0),Y(e)},B=function(n,t){var e=(new XMLSerializer).serializeToString(n),i=document.createElement("div");i.appendChild(n),i.style.width="".concat(t,"px"),i.style.position="absolute",i.style.visibility="hidden",i.appendChild(n),document.body.appendChild(i);var r=i.scrollHeight;return i.parentNode.removeChild(i),[t,r,e]},Q=function(n,t,e){return'\n \n \n \n \n ').concat(e,"\n \n \n \n ")},O=function(n){if(!(n||[]).length)return null;var t=y,e=function(n){var t="pip-lyric-element",e=document.createDocumentFragment();e.appendChild(document.createElement("style")).innerHTML="\n .".concat(t," {\n font-family: ").concat(N,";\n font-weight: 400;\n padding: 0 ").concat(h(16),"px;\n box-sizing: border-box;\n color: white;\n width: 100%;\n height: 100%;\n overflow: hidden;\n }\n .").concat(t," section {\n text-align: center;\n padding: ").concat(f,"px 0;\n white-space: pre-wrap;\n word-break: break-word;\n line-height: ").concat(Z,"px;\n }\n .").concat(t," section p {\n margin: 0;\n font-size: ").concat(h(20),"px;\n }\n ");var i=K("div",t);return e.appendChild(i),n.forEach(function(n){var t=n||{},e=t.lrc,r=t.tlrc,o=K("section"),a=K("p");a.textContent=e;var c=K("p");c.textContent=r,o.appendChild(a),o.appendChild(c),i.appendChild(o)}),e}(n.map(function(n){return n[1]})),i=(new XMLSerializer).serializeToString(e),r=document.createElement("div");r.style.width="".concat(t,"px"),r.style.position="absolute",r.style.visibility="hidden",r.appendChild(e),document.body.appendChild(r);var o=r.children[1]||{},a=o.scrollHeight||1,c=Array.from(o.children||[]).map(function(n){var t=n||{};return{offsetTop:t.offsetTop,offsetHeight:t.offsetHeight}});return r.parentNode.removeChild(r),w(U(Q(t,a,i))).then(function(n){return S().then(function(){return{canvas:D(n),layout:c}})})},A=function(n){var e=function(n){var t=P((n=n||{}).name),e=P(n.program?(n.program.radio||{}).name:C(n.ar||n.artists).map(function(n){return(n||{}).name}).filter(Boolean).join(" / "));if(!t&&!e)return null;var i="pip-meta-element",r=document.createDocumentFragment();r.appendChild(document.createElement("style")).innerHTML="\n .".concat(i," {\n font-family: ").concat(N,";\n padding: 0 ").concat(h(16),"px;\n box-sizing: border-box;\n color: white;\n width: 100%;\n display: flex;\n flex-direction: column;\n }\n .").concat(i," h1,\n .").concat(i," h2 {\n margin: 0;\n font-weight: 400;\n text-align: center;\n width: 100%;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n .").concat(i," h1 {\n font-size: ").concat(h(17),"px;\n opacity: 0.8;\n }\n .").concat(i," h2 {\n margin-top: ").concat(h(4),"px;\n font-size: ").concat(h(13),"px;\n opacity: 0.4;\n }\n ");var o=K("div",i);r.appendChild(o);var a=K("h1");a.textContent=t;var c=K("h2");return c.textContent=e,o.appendChild(a),o.appendChild(c),r}(n);return e?w(U(Q.apply(void 0,t(B(e,b))))).then(function(n){return S().then(function(){return{canvas:D(n)}})}):null},q=function(n,e,i){return Promise.resolve((n||{}).program?function(n){var t=(n||{}).program;if(!t)return null;var e=(t.coverUrl||(t.radio||{}).picUrl||x).replace(/^https?:/,""),i=b-2*h(70),r=[,"y",,].join(100*Math.ceil(i/100)),o="pip-radio-holder",a=document.createDocumentFragment();return a.appendChild(document.createElement("style")).innerHTML="\n .".concat(o," {\n font-family: ").concat(N,";\n font-weight: 400;\n box-sizing: border-box;\n color: white;\n width: 100%;\n display: flex;\n flex-direction: column;\n align-items: center;\n }\n .").concat(o," img {\n object-fit: cover;\n width: ").concat(i,"px;\n height: ").concat(i,"px;\n border-radius: ").concat(h(12),"px\n }\n .").concat(o," p {\n margin: 0;\n margin-top: ").concat(h(16),"px;\n font-size: ").concat(h(16),"px;\n opacity: 0.4;\n }\n "),w("".concat(e,"?param=").concat(r),{crossOrigin:"anonymous"}).then(function(n){return S().then(function(){return D(n,!1)})}).then(function(n){var t=K("div",o);return t.appendChild(K("img")).src=n.toDataURL(),t.appendChild(K("p")).textContent="正在播放播客节目",a.appendChild(t),a})}(n):function(n,t,e){n=n||{};var i="pip-song-holder",r=document.createDocumentFragment();r.appendChild(document.createElement("style")).innerHTML="\n .".concat(i," {\n font-family: ").concat(N,";\n font-weight: 400;\n box-sizing: border-box;\n color: white;\n width: 100%;\n }\n .").concat(i," p {\n margin: 0;\n text-align: center;\n line-height: 2;\n font-size: ").concat(h(20),"px;\n opacity: 0.4;\n }\n ");var o=K("p");if(n.id){if(!t)return null;if(t.no)o.textContent="纯音乐,请欣赏";else if(t.lrc){if((e||[]).length)return null;o.textContent="* 当前歌词不支持滚动 *",o.style.fontSize=h(16),o.style.opacity=.6}else o.textContent="暂无歌词"}else o.textContent="请添加播放列表";var a=K("div",i);return r.appendChild(a),a.appendChild(o),r}(n,e,i)).then(function(n){return n&&w(U(Q.apply(void 0,t(B(n,b))))).then(function(n){return S().then(function(){return{canvas:D(n)}})})})},$=(j=function(t){var e=v(!0),i=e.canvas,r=Math.max(b,p),o=[(b-r)/2,(p-r)/2,r,r];return Promise.all([w(U(''),{crossOrigin:"anonymous"}),w(t,{crossOrigin:"anonymous"})]).then(function(t){var r=n(t,2),a=r[0],c=r[1];return S().then(function(){var n=function(n,t){var e=D(n,!1),i=e||{};return function(n,t,e,i,r,o){if(!(isNaN(o)||o<1)){o|=0;var a=function(n,t,e,i,r){if("string"==typeof n&&(n=document.getElementById(n)),!(n&&"object"===R(n)&&"getContext"in n))throw new TypeError("Expecting canvas with `getContext` method in processCanvasRGB(A) calls!");var o=n.getContext("2d");try{return o.getImageData(t,e,i,r)}catch(n){throw new Error("unable to access image data: "+n)}}(n,t,e,i,r);a=function(n,t,e,i,r,o){for(var a,c=n.data,l=2*o+1,d=i-1,u=r-1,m=o+1,s=m*(m+1)/2,h=new k,b=h,p=1;p>W,c[g+1]=V*G>>W,c[g+2]=F*G>>W,I-=Y,V-=w,F-=C,Y-=y.r,w-=y.g,C-=y.b,Z=L+((Z=z+o+1)>W,c[Z+1]=q*G>>W,c[Z+2]=$*G>>W,A-=B,q-=Q,$-=O,B-=y.r,Q-=y.g,O-=y.b,Z=M+((Z=an+m)c.length-1)&&console.warn("wrong target",e);var l=Math.max(0,Math.min(c.length-1,e)),d=-1===e?g:.8,u=c[l]||{},m=u.offsetTop,s=u.offsetHeight,h=[l,d],b=Math.floor(m+s/2),p={focus:h,offset:b},y=function(t,e,i){t=C(t);var r=n(C(e),2),o=r[0],a=r[1];a=a||g;var c=(i=i||0)-W,l=c,d=c+X,u={},m=function(n){return l=a.length)){a.length!==c.length&&console.warn("length mismatch",a,c);var u,m=a[o],s=c[o],h=l[o];e.handler=(u=function(){r===(e||{}).id&&(nn(t,m,s,h),e.step=o+1,n(t))},d&&(self.document||{}).hidden?setTimeout(u,0):self.requestAnimationFrame(u))}}(c):W.pause()},S=function(){var n=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];if(a.autoPause||a.paused){if(clearTimeout(a.autoPause),delete a.autoPause,a.paused&&(W.play(),m()),!n)return;a.autoPause=setTimeout(function(){g("pause"),delete a.autoPause},500)}},Y={id:0},w={setData:function(e,r){e=e||{};var o,a,l,d,u,m=Y.id+=1,s=((e.program?e.program.coverUrl||(e.program.radio||{}).picUrl:(e.al||e.album||{}).picUrl)||x).replace(/^https?:/,"");l=(a=(o=r||e.lrc?{lrc:e.lrc}:void 0)||{}).lrc,d=a.tlyric,u=a.nolyric,l=l&&l.lyric,d=d&&d.lyric,u=!!u,r=o?{lrc:l,tlrc:d,no:u}:o;var h={lyric:JSON.stringify(r)===JSON.stringify(Y.lyrics)&&!!(i||{}).timeline&&c.image.lyric,background:s===Y.picUrl&&c.image.background};h.lyric||(i=null);var b=h.lyric?i.timeline.slice():function(n){if((n=n||{}).no)return[];var t={};for(var e in n)if(n.hasOwnProperty(e)){var i=n[e];i&&V(t,i,e)}var r=[];for(var o in t)if(t.hasOwnProperty(o)){var a=H(t[o]);a&&r.push([parseFloat(o),a])}return r.sort(function(n,t){return n[0]-t[0]})}(r);return Promise.all([h.lyric||O(b),h.background||$(s),A(e),q(e,r,b)]).then(function(e){if(m===Y.id){var o=n(e,4),a=o[0],l=o[1],d=o[2],u=o[3];Object.assign(c.image,{lyric:a,background:l,meta:d,holder:u}),h.lyric||(c.drawing={id:0,offset:null,focus:null},i=function(t){var e=-1,i=0;return{timeline:t=t||[],empty:!t.length,getLyric:function(r){var o=t.length;if(!o)return null;var a=t[e+1];if(rr});-1===c&&(c=o),e=c-1}if(i=r,e>o-1)return null;var l=n(t[e]||[],1)[0];if("number"==typeof l&&r74}catch(n){sn.support=!1}var hn=function(n){var t=sn(),e=(window.navigator||{}).userAgent,i={},r=(Object.assign(i,n),i.audio instanceof HTMLAudioElement&&i.audio);if(!r)throw new Error("Not HTMLAudioElement");var o=window.navigator.mediaSession,a=function(n,t=document){return n instanceof HTMLElement?n:"string"==typeof n?(("."===n.charAt(0)||"#"===n.charAt(0))&&(n=n.slice(1)),(t.getElementsByClassName(n)||[])[0]||t.getElementById(n)):null},c=function(n){n&&(n instanceof Function?n():(n=a(n))&&n.click())},l=function(){i.play?c(i.play):r.play()},d=function(){i.pause?c(i.pause):r.pause()},u=a(i.pip)||function(n){let t=document.createElement("a");return t.href="javascript:;",t.setAttribute("hidefocus","true"),t.className="icn icn-pip",t.title="画中画歌词",t.textContent=".",n&&n.insertBefore(t,n.firstChild),t}(document.body),m=u.classList;if(!u||!m)throw new Error("Not PIP Element");/Chrom(e|ium)/.test(e)||u.appendChild(t.video),u.onclick=function(){t[t.entered?"leave":"enter"]()},o&&(o.setActionHandler("play",l),o.setActionHandler("pause",d),o.setActionHandler("previoustrack",function(){i.prev&&c(i.prev)}),o.setActionHandler("nexttrack",function(){i.next&&c(i.next)})),r.addEventListener("play",t.play),r.addEventListener("pause",t.pause),r.addEventListener("timeupdate",function(){try{r.currentTime>.1&&t.updateTime(r.currentTime)}catch(n){}});var s={};t.onEnter=function(){m.contains("active")||m.add("active"),s.enter&&s.enter()},t.onLeave=function(){m.contains("active")&&m.remove("active"),s.leave&&s.leave()},t.onPlay=function(){return l()},t.onPause=function(){return d()},Object.defineProperty(t,"onEnter",{set:function(n){s.enter=n}}),Object.defineProperty(t,"onLeave",{set:function(n){s.leave=n}});var h=t.setData;return t.setData=function(n,t){var e=n||{},r=e.id,o=e.program;i.id=r,i.type=o?"program":"song",h(n,t)},t};return Object.defineProperty(hn,"support",{get:function(){return sn.support}}),hn});