mirror of
https://github.com/jellyfin/jellyfin-web.git
synced 2024-11-18 11:28:23 -07:00
1 line
1.8 KiB
JavaScript
1 line
1.8 KiB
JavaScript
define(["require","css!./emby-progressring","registerElement"],function(require){"use strict";var EmbyProgressRing=Object.create(HTMLDivElement.prototype);return EmbyProgressRing.createdCallback=function(){this.classList.add("progressring");var instance=this;require(["text!./emby-progressring.template.html"],function(template){instance.innerHTML=template,instance.setProgress(parseFloat(instance.getAttribute("data-progress")||"0"))})},EmbyProgressRing.setProgress=function(progress){progress=Math.floor(progress);var angle;progress<25?(angle=-90+progress/100*360,this.querySelector(".animate-0-25-b").style.transform="rotate("+angle+"deg)"):progress>=25&&progress<50?(angle=-90+(progress-25)/100*360,this.querySelector(".animate-0-25-b").style.transform="rotate(0deg)",this.querySelector(".animate-25-50-b").style.transform="rotate("+angle+"deg)"):progress>=50&&progress<75?(angle=-90+(progress-50)/100*360,this.querySelector(".animate-0-25-b").style.transform="rotate(0deg)",this.querySelector(".animate-25-50-b").style.transform="rotate(0deg)",this.querySelector(".animate-50-75-b").style.transform="rotate("+angle+"deg)"):progress>=75&&progress<=100&&(angle=-90+(progress-75)/100*360,this.querySelector(".animate-50-75-b").style.transform="rotate(0deg)",this.querySelector(".animate-25-50-b").style.transform="rotate(0deg)",this.querySelector(".animate-0-25-b").style.transform="rotate(0deg)",this.querySelector(".animate-75-100-b").style.transform="rotate("+angle+"deg)"),this.querySelector(".progressring-text").innerHTML=progress+"%"},EmbyProgressRing.attachedCallback=function(){},EmbyProgressRing.detachedCallback=function(){var observer=this.observer;observer&&(observer.disconnect(),this.observer=null)},document.registerElement("emby-progressring",{prototype:EmbyProgressRing,extends:"div"}),EmbyProgressRing}); |