diff --git a/assets/js/joe.short.js b/assets/js/joe.short.js index 84d3f1b..ac159b3 100644 --- a/assets/js/joe.short.js +++ b/assets/js/joe.short.js @@ -537,7 +537,7 @@ document.addEventListener('DOMContentLoaded', () => { constructor() { super(); this.bvid = this.getAttribute('bvid'); - this.page = this.getAttribute('page') && !Number.isNaN(this.getAttribute('page')) ? this.getAttribute('page') : 1; + this.page = Object.is(Number(this.getAttribute('page')), NaN) ? 1 : this.getAttribute('page'); this.render(); } render() { diff --git a/assets/js/joe.short.min.js b/assets/js/joe.short.min.js index e80fc9d..a161def 100644 --- a/assets/js/joe.short.min.js +++ b/assets/js/joe.short.min.js @@ -1 +1 @@ -function getChildren(t,e){for(let s of t.children)if(s.className===e)return s;return null}document.addEventListener("DOMContentLoaded",()=>{$(".joe_detail__article p:empty").remove(),customElements.define("joe-mtitle",class extends HTMLElement{constructor(){super(),this.innerHTML=`\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t${this.getAttribute("title")||"默认标题"}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t`}}),customElements.define("joe-mp3",class extends HTMLElement{constructor(){super(),this.options={name:this.getAttribute("name"),url:this.getAttribute("url"),theme:this.getAttribute("theme")||"#1989fa",cover:this.getAttribute("cover"),autoplay:!!this.getAttribute("autoplay")},this.render()}render(){if(!this.options.url)return this.innerHTML="音频地址未填写!";this.innerHTML='',new APlayer({container:getChildren(this,"_content"),theme:this.options.theme,autoplay:this.options.autoplay,audio:[{url:this.options.url,name:this.options.name,cover:this.options.cover}]})}}),customElements.define("joe-music",class extends HTMLElement{constructor(){super(),this.options={id:this.getAttribute("id"),color:this.getAttribute("color")||"#1989fa",autoplay:!!this.getAttribute("autoplay")},this.render()}render(){if(!this.options.id)return this.innerHTML="网易云歌曲ID未填写!";this.innerHTML='',fetch("https://api.i-meto.com/meting/api?server=netease&type=song&id="+this.options.id).then(async t=>{const e=await t.json();new APlayer({container:getChildren(this,"_content"),lrcType:3,theme:this.options.color,autoplay:this.options.autoplay,audio:e})})}}),customElements.define("joe-mlist",class extends HTMLElement{constructor(){super(),this.options={id:this.getAttribute("id"),color:this.getAttribute("color")||"#1989fa",autoplay:!!this.getAttribute("autoplay")},this.render()}render(){if(!this.options.id)return this.innerHTML="网易云歌单ID未填写!";this.innerHTML='',fetch("https://api.i-meto.com/meting/api?server=netease&type=playlist&id="+this.options.id).then(async t=>{const e=await t.json();new APlayer({container:getChildren(this,"_content"),lrcType:3,theme:this.options.color,autoplay:this.options.autoplay,audio:e})})}}),customElements.define("joe-abtn",class extends HTMLElement{constructor(){super(),this.options={icon:this.getAttribute("icon")||"",color:this.getAttribute("color")||"#ff6800",href:this.getAttribute("href")||"#",radius:this.getAttribute("radius")||"17.5px",content:this.getAttribute("content")||"多彩按钮"},this.innerHTML=`\n \n \n \n \n \n ${this.options.content}\n \n \n `}}),customElements.define("joe-anote",class extends HTMLElement{constructor(){super(),this.options={icon:this.getAttribute("icon")||"fa-download",href:this.getAttribute("href")||"#",type:/^secondary$|^success$|^warning$|^error$|^info$/.test(this.getAttribute("type"))?this.getAttribute("type"):"secondary",content:this.getAttribute("content")||"标签按钮"},this.innerHTML=`\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t${this.options.content}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t`}}),customElements.define("joe-dotted",class extends HTMLElement{constructor(){super(),this.startColor=this.getAttribute("startColor")||"#ff6c6c",this.endColor=this.getAttribute("endColor")||"#1989fa",this.innerHTML=`\n\t\t\t\t\t\n\t\t\t\t`}}),customElements.define("joe-cloud",class extends HTMLElement{constructor(){super(),this.options={type:this.getAttribute("type")||"default",title:this.getAttribute("title")||"默认标题",url:this.getAttribute("url"),password:this.getAttribute("password")};const t={default:"默认网盘",360:"360网盘",bd:"百度网盘",ty:"天翼网盘",ct:"城通网盘",wy:"微云网盘",github:"Github仓库",lz:"蓝奏云网盘"};this.innerHTML=`\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
${this.options.title}
\n\t\t\t\t\t\t\t
来源:${t[this.options.type]||"默认网盘"}${this.options.password?" | 提取码:"+this.options.password:""}
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t`}}),customElements.define("joe-hide",class extends HTMLElement{constructor(){super(),this.render()}render(){this.innerHTML='此处内容作者设置了 回复 可见',this.$button=this.querySelector(".joe_hide__button");const t=document.querySelector(".joe_comment"),e=document.querySelector(".joe_header");t&&e&&this.$button.addEventListener("click",()=>{const s=t.offsetTop-e.offsetHeight-15;window.scrollTo({top:s,behavior:"smooth"})})}}),customElements.define("joe-card-default",class extends HTMLElement{constructor(){super();const t=getChildren(this,"_temp");this.options={width:this.getAttribute("width")||"100%",label:this.getAttribute("label")||"卡片标题",content:t.innerHTML.trim().replace(/^(
)|(
)$/g,"")||"卡片内容"};const e=`\n\t\t\t\t
\n\t\t\t\t\t
${this.options.label}
\n\t\t\t\t\t
${this.options.content}
\n\t\t\t\t
\n\t\t\t`;if(getChildren(this,"_content"))getChildren(this,"_content").innerHTML=e;else{const t=document.createElement("span");t.style.display="block",t.className="_content",t.innerHTML=e,this.appendChild(t)}}}),customElements.define("joe-message",class extends HTMLElement{constructor(){super(),this.options={type:/^success$|^info$|^warning$|^error$/.test(this.getAttribute("type"))?this.getAttribute("type"):"info",content:this.getAttribute("content")||"消息内容"},this.innerHTML=`\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t${this.options.content}\n\t\t\t\t\t\n\t\t\t\t`}}),customElements.define("joe-progress",class extends HTMLElement{constructor(){super(),this.options={percentage:/^\d{1,3}%$/.test(this.getAttribute("percentage"))?this.getAttribute("percentage"):"50%",color:this.getAttribute("color")||"#ff6c6c"},this.innerHTML=`\n\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t
${this.options.percentage}
\n\t\t\t\t
\n\t\t\t`}}),customElements.define("joe-callout",class extends HTMLElement{constructor(){super();const t=getChildren(this,"_temp");this.options={color:this.getAttribute("color")||"#f0ad4e",content:t.innerHTML.trim().replace(/^(
)|(
)$/g,"")||"标注内容"};const e=`\n\t\t\t\t\t
\n\t\t\t\t\t\t${this.options.content}\n\t\t\t\t\t
\n\t\t\t\t`;if(getChildren(this,"_content"))getChildren(this,"_content").innerHTML=e;else{const t=document.createElement("span");t.style.display="block",t.className="_content",t.innerHTML=e,this.appendChild(t)}}}),customElements.define("joe-card-describe",class extends HTMLElement{constructor(){super();const t=getChildren(this,"_temp");this.options={title:this.getAttribute("title")||"卡片描述",content:t.innerHTML.trim().replace(/^(
)|(
)$/g,"")||"卡片内容"};const e=`\n\t\t\t\t\t
\n\t\t\t\t\t\t
${this.options.title}
\n\t\t\t\t\t\t
${this.options.content}
\n\t\t\t\t\t
\n\t\t\t\t`;if(getChildren(this,"_content"))getChildren(this,"_content").innerHTML=e;else{const t=document.createElement("span");t.style.display="block",t.className="_content",t.innerHTML=e,this.appendChild(t)}}}),customElements.define("joe-card-list",class extends HTMLElement{constructor(){super();const t=getChildren(this,"_temp");let e=t.innerHTML.trim().replace(/^(
)|(
)$/g,""),s="";e.replace(/{card-list-item}([\s\S]*?){\/card-list-item}/g,function(t,e){s+=`
${e.trim().replace(/^(
)|(
)$/g,"")}
`});let n=`
${s}
`;if(getChildren(this,"_content"))getChildren(this,"_content").innerHTML=n;else{const t=document.createElement("span");t.className="_content",t.style.display="block",t.innerHTML=n,this.appendChild(t)}}}),customElements.define("joe-alert",class extends HTMLElement{constructor(){super();const t=getChildren(this,"_temp");this.options={type:/^success$|^info$|^warning$|^error$/.test(this.getAttribute("type"))?this.getAttribute("type"):"info",content:t.innerHTML.trim().replace(/^(
)|(
)$/g,"")||"警告提示"};const e=`\n\t\t\t\t\t
\n\t\t\t\t\t\t${this.options.content}\n\t\t\t\t\t
\n\t\t\t\t`;if(getChildren(this,"_content"))getChildren(this,"_content").innerHTML=e;else{const t=document.createElement("span");t.style.display="block",t.className="_content",t.innerHTML=e,this.appendChild(t)}}}),customElements.define("joe-timeline",class extends HTMLElement{constructor(){super();const t=getChildren(this,"_temp");let e=t.innerHTML.trim().replace(/^(
)|(
)$/g,""),s="";e.replace(/{timeline-item([^}]*)}([\s\S]*?){\/timeline-item}/g,function(t,e,n){s+=`\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
${n.trim().replace(/^(
)|(
)$/g,"")}
\n\t\t\t\t\t
\n\t\t\t\t`});let n=`
${s}
`;if(getChildren(this,"_content"))getChildren(this,"_content").innerHTML=n;else{const t=document.createElement("span");t.className="_content",t.style.display="block",t.innerHTML=n,this.appendChild(t)}this.querySelectorAll(".joe_timeline__item-circle").forEach((t,e)=>{const s=t.getAttribute("color")||"#19be6b";t.style.borderColor=s})}}),customElements.define("joe-collapse",class extends HTMLElement{constructor(){super();const t=getChildren(this,"_temp");let e=t.innerHTML.trim().replace(/^(
)|(
)$/g,""),s="";e.replace(/{collapse-item([^}]*)}([\s\S]*?){\/collapse-item}/g,function(t,e,n){s+=`\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
${n.trim().replace(/^(
)|(
)$/g,"")}
\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t`});let n=`
${s}
`;if(getChildren(this,"_content"))getChildren(this,"_content").innerHTML=n;else{const t=document.createElement("span");t.className="_content",t.style.display="block",t.innerHTML=n,this.appendChild(t)}this.querySelectorAll(".joe_collapse__item").forEach(t=>{const e=t.getAttribute("label")||"折叠标题",s=getChildren(t,"joe_collapse__item-head"),n=getChildren(s,"joe_collapse__item-head--label");n.innerHTML=e;const i=getChildren(t,"joe_collapse__item-wrapper"),o=getChildren(i,"joe_collapse__item-wrapper--content"),r=t.getAttribute("open");null!==r&&(t.classList.add("active"),i.style.maxHeight="none"),s.addEventListener("click",()=>{i.style.maxHeight=o.offsetHeight+"px";let e=setTimeout(()=>{t.classList.contains("active")?(t.classList.remove("active"),i.style.maxHeight=0):(t.classList.add("active"),i.style.maxHeight=o.offsetHeight+"px"),clearTimeout(e)},30)})})}}),customElements.define("joe-dplayer",class extends HTMLElement{constructor(){super(),this.options={src:this.getAttribute("src"),player:this.getAttribute("player")},this.render()}render(){this.options.src?this.innerHTML=``:this.innerHTML="播放地址未填写!"}}),customElements.define("joe-bilibili",class extends HTMLElement{constructor(){super(),this.bvid=this.getAttribute("bvid"),this.page=this.getAttribute("page")&&!Number.isNaN(this.getAttribute("page"))?this.getAttribute("page"):1,this.render()}render(){this.bvid?this.innerHTML=``:this.innerHTML="Bvid未填写!"}}),customElements.define("joe-tabs",class extends HTMLElement{constructor(){super();const t=getChildren(this,"_temp");let e=t.innerHTML.trim().replace(/^(
)|(
)$/g,""),s="",n="";e.replace(/{tabs-pane([^}]*)}([\s\S]*?){\/tabs-pane}/g,function(t,e,i){s+=`
`,n+=``});let i=`\n
\n
${s}
\n
${n}
\n
\n `;if(getChildren(this,"_content"))getChildren(this,"_content").innerHTML=i;else{const t=document.createElement("span");t.className="_content",t.style.display="block",t.innerHTML=i,this.appendChild(t)}this.querySelectorAll(".joe_tabs__head-item").forEach((t,e)=>{const s=t.getAttribute("label");t.innerHTML=s,t.addEventListener("click",()=>{this.querySelectorAll(".joe_tabs__head-item").forEach(t=>t.classList.remove("active")),this.querySelectorAll(".joe_tabs__body-item").forEach(t=>t.style.display="none"),this.querySelector(`.joe_tabs__body-item[label="${s}"]`)&&(this.querySelector(`.joe_tabs__body-item[label="${s}"]`).style.display="block"),t.classList.add("active")}),0===e&&t.click()})}}),customElements.define("joe-gird",class extends HTMLElement{constructor(){super(),this.options={column:isNaN(this.getAttribute("column"))||!this.getAttribute("column")?3:this.getAttribute("column"),gap:isNaN(this.getAttribute("gap"))||!this.getAttribute("gap")?15:this.getAttribute("gap")};const t=getChildren(this,"_temp");let e=t.innerHTML.trim().replace(/^(
)|(
)$/g,""),s="";e.replace(/{gird-item}([\s\S]*?){\/gird-item}/g,function(t,e){s+=`
${e.trim().replace(/^(
)|(
)$/g,"")}
`});let n=`
${s}
`;if(getChildren(this,"_content"))getChildren(this,"_content").innerHTML=n;else{const t=document.createElement("span");t.className="_content",t.style.display="block",t.innerHTML=n,this.appendChild(t)}}}),customElements.define("joe-copy",class extends HTMLElement{constructor(){super(),this.options={showText:this.getAttribute("showText")||"点击复制",copyText:this.getAttribute("copyText")||"默认文本"},this.innerHTML=`${this.options.showText}`;const t=getChildren(this,"joe_copy");"undefined"!=typeof ClipboardJS&&"undefined"!=typeof Qmsg?new ClipboardJS(t,{text:()=>this.options.copyText}).on("success",()=>Qmsg.success("复制成功!")):t.addEventListener("click",()=>alert("该功能请前往前台查看!"))}}),$(".joe_detail__article p:empty").remove()}); \ No newline at end of file +function getChildren(t,e){for(let s of t.children)if(s.className===e)return s;return null}document.addEventListener("DOMContentLoaded",()=>{$(".joe_detail__article p:empty").remove(),customElements.define("joe-mtitle",class extends HTMLElement{constructor(){super(),this.innerHTML=`\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t${this.getAttribute("title")||"默认标题"}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t`}}),customElements.define("joe-mp3",class extends HTMLElement{constructor(){super(),this.options={name:this.getAttribute("name"),url:this.getAttribute("url"),theme:this.getAttribute("theme")||"#1989fa",cover:this.getAttribute("cover"),autoplay:!!this.getAttribute("autoplay")},this.render()}render(){if(!this.options.url)return this.innerHTML="音频地址未填写!";this.innerHTML='',new APlayer({container:getChildren(this,"_content"),theme:this.options.theme,autoplay:this.options.autoplay,audio:[{url:this.options.url,name:this.options.name,cover:this.options.cover}]})}}),customElements.define("joe-music",class extends HTMLElement{constructor(){super(),this.options={id:this.getAttribute("id"),color:this.getAttribute("color")||"#1989fa",autoplay:!!this.getAttribute("autoplay")},this.render()}render(){if(!this.options.id)return this.innerHTML="网易云歌曲ID未填写!";this.innerHTML='',fetch("https://api.i-meto.com/meting/api?server=netease&type=song&id="+this.options.id).then(async t=>{const e=await t.json();new APlayer({container:getChildren(this,"_content"),lrcType:3,theme:this.options.color,autoplay:this.options.autoplay,audio:e})})}}),customElements.define("joe-mlist",class extends HTMLElement{constructor(){super(),this.options={id:this.getAttribute("id"),color:this.getAttribute("color")||"#1989fa",autoplay:!!this.getAttribute("autoplay")},this.render()}render(){if(!this.options.id)return this.innerHTML="网易云歌单ID未填写!";this.innerHTML='',fetch("https://api.i-meto.com/meting/api?server=netease&type=playlist&id="+this.options.id).then(async t=>{const e=await t.json();new APlayer({container:getChildren(this,"_content"),lrcType:3,theme:this.options.color,autoplay:this.options.autoplay,audio:e})})}}),customElements.define("joe-abtn",class extends HTMLElement{constructor(){super(),this.options={icon:this.getAttribute("icon")||"",color:this.getAttribute("color")||"#ff6800",href:this.getAttribute("href")||"#",radius:this.getAttribute("radius")||"17.5px",content:this.getAttribute("content")||"多彩按钮"},this.innerHTML=`\n \n \n \n \n \n ${this.options.content}\n \n \n `}}),customElements.define("joe-anote",class extends HTMLElement{constructor(){super(),this.options={icon:this.getAttribute("icon")||"fa-download",href:this.getAttribute("href")||"#",type:/^secondary$|^success$|^warning$|^error$|^info$/.test(this.getAttribute("type"))?this.getAttribute("type"):"secondary",content:this.getAttribute("content")||"标签按钮"},this.innerHTML=`\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t${this.options.content}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t`}}),customElements.define("joe-dotted",class extends HTMLElement{constructor(){super(),this.startColor=this.getAttribute("startColor")||"#ff6c6c",this.endColor=this.getAttribute("endColor")||"#1989fa",this.innerHTML=`\n\t\t\t\t\t\n\t\t\t\t`}}),customElements.define("joe-cloud",class extends HTMLElement{constructor(){super(),this.options={type:this.getAttribute("type")||"default",title:this.getAttribute("title")||"默认标题",url:this.getAttribute("url"),password:this.getAttribute("password")};const t={default:"默认网盘",360:"360网盘",bd:"百度网盘",ty:"天翼网盘",ct:"城通网盘",wy:"微云网盘",github:"Github仓库",lz:"蓝奏云网盘"};this.innerHTML=`\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
${this.options.title}
\n\t\t\t\t\t\t\t
来源:${t[this.options.type]||"默认网盘"}${this.options.password?" | 提取码:"+this.options.password:""}
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t`}}),customElements.define("joe-hide",class extends HTMLElement{constructor(){super(),this.render()}render(){this.innerHTML='此处内容作者设置了 回复 可见',this.$button=this.querySelector(".joe_hide__button");const t=document.querySelector(".joe_comment"),e=document.querySelector(".joe_header");t&&e&&this.$button.addEventListener("click",()=>{const s=t.offsetTop-e.offsetHeight-15;window.scrollTo({top:s,behavior:"smooth"})})}}),customElements.define("joe-card-default",class extends HTMLElement{constructor(){super();const t=getChildren(this,"_temp");this.options={width:this.getAttribute("width")||"100%",label:this.getAttribute("label")||"卡片标题",content:t.innerHTML.trim().replace(/^(
)|(
)$/g,"")||"卡片内容"};const e=`\n\t\t\t\t
\n\t\t\t\t\t
${this.options.label}
\n\t\t\t\t\t
${this.options.content}
\n\t\t\t\t
\n\t\t\t`;if(getChildren(this,"_content"))getChildren(this,"_content").innerHTML=e;else{const t=document.createElement("span");t.style.display="block",t.className="_content",t.innerHTML=e,this.appendChild(t)}}}),customElements.define("joe-message",class extends HTMLElement{constructor(){super(),this.options={type:/^success$|^info$|^warning$|^error$/.test(this.getAttribute("type"))?this.getAttribute("type"):"info",content:this.getAttribute("content")||"消息内容"},this.innerHTML=`\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t${this.options.content}\n\t\t\t\t\t\n\t\t\t\t`}}),customElements.define("joe-progress",class extends HTMLElement{constructor(){super(),this.options={percentage:/^\d{1,3}%$/.test(this.getAttribute("percentage"))?this.getAttribute("percentage"):"50%",color:this.getAttribute("color")||"#ff6c6c"},this.innerHTML=`\n\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t
${this.options.percentage}
\n\t\t\t\t
\n\t\t\t`}}),customElements.define("joe-callout",class extends HTMLElement{constructor(){super();const t=getChildren(this,"_temp");this.options={color:this.getAttribute("color")||"#f0ad4e",content:t.innerHTML.trim().replace(/^(
)|(
)$/g,"")||"标注内容"};const e=`\n\t\t\t\t\t
\n\t\t\t\t\t\t${this.options.content}\n\t\t\t\t\t
\n\t\t\t\t`;if(getChildren(this,"_content"))getChildren(this,"_content").innerHTML=e;else{const t=document.createElement("span");t.style.display="block",t.className="_content",t.innerHTML=e,this.appendChild(t)}}}),customElements.define("joe-card-describe",class extends HTMLElement{constructor(){super();const t=getChildren(this,"_temp");this.options={title:this.getAttribute("title")||"卡片描述",content:t.innerHTML.trim().replace(/^(
)|(
)$/g,"")||"卡片内容"};const e=`\n\t\t\t\t\t
\n\t\t\t\t\t\t
${this.options.title}
\n\t\t\t\t\t\t
${this.options.content}
\n\t\t\t\t\t
\n\t\t\t\t`;if(getChildren(this,"_content"))getChildren(this,"_content").innerHTML=e;else{const t=document.createElement("span");t.style.display="block",t.className="_content",t.innerHTML=e,this.appendChild(t)}}}),customElements.define("joe-card-list",class extends HTMLElement{constructor(){super();const t=getChildren(this,"_temp");let e=t.innerHTML.trim().replace(/^(
)|(
)$/g,""),s="";e.replace(/{card-list-item}([\s\S]*?){\/card-list-item}/g,function(t,e){s+=`
${e.trim().replace(/^(
)|(
)$/g,"")}
`});let n=`
${s}
`;if(getChildren(this,"_content"))getChildren(this,"_content").innerHTML=n;else{const t=document.createElement("span");t.className="_content",t.style.display="block",t.innerHTML=n,this.appendChild(t)}}}),customElements.define("joe-alert",class extends HTMLElement{constructor(){super();const t=getChildren(this,"_temp");this.options={type:/^success$|^info$|^warning$|^error$/.test(this.getAttribute("type"))?this.getAttribute("type"):"info",content:t.innerHTML.trim().replace(/^(
)|(
)$/g,"")||"警告提示"};const e=`\n\t\t\t\t\t
\n\t\t\t\t\t\t${this.options.content}\n\t\t\t\t\t
\n\t\t\t\t`;if(getChildren(this,"_content"))getChildren(this,"_content").innerHTML=e;else{const t=document.createElement("span");t.style.display="block",t.className="_content",t.innerHTML=e,this.appendChild(t)}}}),customElements.define("joe-timeline",class extends HTMLElement{constructor(){super();const t=getChildren(this,"_temp");let e=t.innerHTML.trim().replace(/^(
)|(
)$/g,""),s="";e.replace(/{timeline-item([^}]*)}([\s\S]*?){\/timeline-item}/g,function(t,e,n){s+=`\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
${n.trim().replace(/^(
)|(
)$/g,"")}
\n\t\t\t\t\t
\n\t\t\t\t`});let n=`
${s}
`;if(getChildren(this,"_content"))getChildren(this,"_content").innerHTML=n;else{const t=document.createElement("span");t.className="_content",t.style.display="block",t.innerHTML=n,this.appendChild(t)}this.querySelectorAll(".joe_timeline__item-circle").forEach((t,e)=>{const s=t.getAttribute("color")||"#19be6b";t.style.borderColor=s})}}),customElements.define("joe-collapse",class extends HTMLElement{constructor(){super();const t=getChildren(this,"_temp");let e=t.innerHTML.trim().replace(/^(
)|(
)$/g,""),s="";e.replace(/{collapse-item([^}]*)}([\s\S]*?){\/collapse-item}/g,function(t,e,n){s+=`\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
${n.trim().replace(/^(
)|(
)$/g,"")}
\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t`});let n=`
${s}
`;if(getChildren(this,"_content"))getChildren(this,"_content").innerHTML=n;else{const t=document.createElement("span");t.className="_content",t.style.display="block",t.innerHTML=n,this.appendChild(t)}this.querySelectorAll(".joe_collapse__item").forEach(t=>{const e=t.getAttribute("label")||"折叠标题",s=getChildren(t,"joe_collapse__item-head"),n=getChildren(s,"joe_collapse__item-head--label");n.innerHTML=e;const i=getChildren(t,"joe_collapse__item-wrapper"),o=getChildren(i,"joe_collapse__item-wrapper--content"),r=t.getAttribute("open");null!==r&&(t.classList.add("active"),i.style.maxHeight="none"),s.addEventListener("click",()=>{i.style.maxHeight=o.offsetHeight+"px";let e=setTimeout(()=>{t.classList.contains("active")?(t.classList.remove("active"),i.style.maxHeight=0):(t.classList.add("active"),i.style.maxHeight=o.offsetHeight+"px"),clearTimeout(e)},30)})})}}),customElements.define("joe-dplayer",class extends HTMLElement{constructor(){super(),this.options={src:this.getAttribute("src"),player:this.getAttribute("player")},this.render()}render(){this.options.src?this.innerHTML=``:this.innerHTML="播放地址未填写!"}}),customElements.define("joe-bilibili",class extends HTMLElement{constructor(){super(),this.bvid=this.getAttribute("bvid"),this.page=Object.is(Number(this.getAttribute("page")),NaN)?1:this.getAttribute("page"),this.render()}render(){this.bvid?this.innerHTML=``:this.innerHTML="Bvid未填写!"}}),customElements.define("joe-tabs",class extends HTMLElement{constructor(){super();const t=getChildren(this,"_temp");let e=t.innerHTML.trim().replace(/^(
)|(
)$/g,""),s="",n="";e.replace(/{tabs-pane([^}]*)}([\s\S]*?){\/tabs-pane}/g,function(t,e,i){s+=`
`,n+=``});let i=`\n
\n
${s}
\n
${n}
\n
\n `;if(getChildren(this,"_content"))getChildren(this,"_content").innerHTML=i;else{const t=document.createElement("span");t.className="_content",t.style.display="block",t.innerHTML=i,this.appendChild(t)}this.querySelectorAll(".joe_tabs__head-item").forEach((t,e)=>{const s=t.getAttribute("label");t.innerHTML=s,t.addEventListener("click",()=>{this.querySelectorAll(".joe_tabs__head-item").forEach(t=>t.classList.remove("active")),this.querySelectorAll(".joe_tabs__body-item").forEach(t=>t.style.display="none"),this.querySelector(`.joe_tabs__body-item[label="${s}"]`)&&(this.querySelector(`.joe_tabs__body-item[label="${s}"]`).style.display="block"),t.classList.add("active")}),0===e&&t.click()})}}),customElements.define("joe-gird",class extends HTMLElement{constructor(){super(),this.options={column:isNaN(this.getAttribute("column"))||!this.getAttribute("column")?3:this.getAttribute("column"),gap:isNaN(this.getAttribute("gap"))||!this.getAttribute("gap")?15:this.getAttribute("gap")};const t=getChildren(this,"_temp");let e=t.innerHTML.trim().replace(/^(
)|(
)$/g,""),s="";e.replace(/{gird-item}([\s\S]*?){\/gird-item}/g,function(t,e){s+=`
${e.trim().replace(/^(
)|(
)$/g,"")}
`});let n=`
${s}
`;if(getChildren(this,"_content"))getChildren(this,"_content").innerHTML=n;else{const t=document.createElement("span");t.className="_content",t.style.display="block",t.innerHTML=n,this.appendChild(t)}}}),customElements.define("joe-copy",class extends HTMLElement{constructor(){super(),this.options={showText:this.getAttribute("showText")||"点击复制",copyText:this.getAttribute("copyText")||"默认文本"},this.innerHTML=`${this.options.showText}`;const t=getChildren(this,"joe_copy");"undefined"!=typeof ClipboardJS&&"undefined"!=typeof Qmsg?new ClipboardJS(t,{text:()=>this.options.copyText}).on("success",()=>Qmsg.success("复制成功!")):t.addEventListener("click",()=>alert("该功能请前往前台查看!"))}}),$(".joe_detail__article p:empty").remove()}); \ No newline at end of file diff --git a/typecho/write/rollup.config.js b/typecho/write/rollup.config.js index f77b53f..1adde63 100644 --- a/typecho/write/rollup.config.js +++ b/typecho/write/rollup.config.js @@ -6,5 +6,5 @@ export default { file: './js/joe.write.chunk.js', format: 'iife' }, - plugins: [nodeResolve(), uglify()] + plugins: [nodeResolve()] };