mirror of
https://github.com/the1812/Bilibili-Evolved.git
synced 2025-11-04 21:22:45 +08:00
1 line
1.6 KiB
JavaScript
1 line
1.6 KiB
JavaScript
(()=>{return(t,s)=>{class i{constructor(t="",s="",i="default"){this.type=i;this.message=t;this.title=s;this.duration=3e3;this.element=$(this.cardHtml)[0];this.$element=$(this.element);$(".toast-card-container").append(this.$element)}show(){this.element.classList.add("visible");this.$element.find(".toast-card-dismiss").on("click",()=>this.dismiss());if(this.duration){setTimeout(()=>this.dismiss(),this.duration)}}dismiss(){if(this.element.classList.contains("visible")){this.$element.on("transitionend",()=>this.$element.remove());this.element.classList.remove("visible")}}get cardHtml(){return`\n <div class="toast-card icons-enabled toast-${this.type}">\n <div class="toast-card-header">\n <h1 class="toast-card-title">${this.title}</h1>\n <div class="toast-card-dismiss">\n <i class="icon-cancel"></i>\n </div>\n </div>\n <p class="toast-card-message">${this.message}</p>\n </div>\n `}static get container(){return $(".toast-card-container")}static createToastContainer(){if($(".toast-card-container").length===0){$("body").append(`<div class="toast-card-container"></div>`)}}static internalShow(t,s,e,a){const n=new i(t,s,a);n.duration=e;n.show()}static show(t,s,i){this.internalShow(t,s,i,"default")}static info(t,s,i){this.internalShow(t,s,i,"info")}static success(t,s,i){this.internalShow(t,s,i,"success")}static error(t,s,i){this.internalShow(t,s,i,"error")}}s.applyStyle("toastStyle");i.createToastContainer();return{export:i}}})(); |