UNPKG

halo-theme-dream2.0-plus

Version:

梦之城,童话梦境,动漫类型博客主题。

1 lines 4.82 kB
(()=>{const r={isMobile(){var e=navigator.userAgent.toLowerCase(),t=window.innerWidth;return!/ipad|android(?!.*mobile)|tablet|silk/i.test(e)&&(!!/android|webos|iphone|ipod|blackberry|windows phone|mobile|harmonyos|hmos/i.test(e)||t<=768)},isMobileByScreenWidth:()=>window.innerWidth<=768,secureCompressHTML(e,t=!0){if("string"!=typeof e)return"";const r={"<":"&lt;",">":"&gt;","&":"&amp;",'"':"&quot;","'":"&#x27;","/":"&#x2F;"};let o=e.replace(/[<>&"'\/]/g,e=>r[e]);return t&&["p","br","div","span","a","b","i","strong","em"].forEach(e=>{var t=new RegExp(`&lt;(${e})([^&]*)&gt;`,"gi"),t=(o=o.replace(t,`<${e}$2>`),new RegExp(`&lt;\\/(${e})&gt;`,"gi"));o=o.replace(t,`</${e}>`)}),o.replace(/&lt;!--[\s\S]*?--&gt;/g,"").replace(/\s+/g," ").replace(/&gt;\s+&lt;/g,"&gt;&lt;").replace(/\s+&gt;/g,"&gt;").replace(/&lt;\s+/g,"&lt;")},debounce(r,o){let a;return function(){const e=this,t=arguments;clearTimeout(a),a=setTimeout(function(){r.apply(e,t)},o)}},cachedScript:(e,t)=>$.ajax(jQuery.extend({url:e,type:"get",dataType:"script",cache:!0,success:t},$.isPlainObject(e)&&e)),formatDate(e,t="yyyy-MM-dd"){e=new Date(e),/(y+)/.test(t)&&(t=t.replace(RegExp.$1,(e.getFullYear()+"").substr(4-RegExp.$1.length)));var r,o,a={"M+":e.getMonth()+1,"d+":e.getDate(),"h+":e.getHours(),"m+":e.getMinutes(),"s+":e.getSeconds()};for(r in a)new RegExp(`(${r})`).test(t)&&(o=a[r]+"",t=t.replace(RegExp.$1,1===RegExp.$1.length?o:o.padStart(2,"0")));return t},getUrlParams(){var e=location.search,e=(e="string"!=typeof e?e.toString():e).replace(/^[^\?]*\?/i,"").split(/&/),r={};return e.length<1||Array.isArray(e)&&e.forEach(function(e){if(!e)return!1;var t,e=e.split(/=/);2<=e.length&&(t=e.splice(0,1),r[t]=e.join("="))}),r},randomColor(e){var t=["#F8D800","#0396FF","#EA5455","#7367F0","#32CCBC","#F6416C","#28C76F","#9F44D3","#F55555","#736EFE","#E96D71","#DE4313","#D939CD","#4C83FF","#F072B6","#C346C2","#5961F9","#FD6585","#465EFB","#FFC600","#FA742B","#5151E5","#BB4E75","#FF52E5","#49C628","#00EAFF","#F067B4","#F067B4","#ff9a9e","#00f2fe","#4facfe","#f093fb","#6fa3ef","#bc99c4","#46c47c","#f9bb3c","#e8583d","#f68e5f"];return t[e%t.length]},request:({url:e="",method:o="GET",data:a,headers:n={},timeout:s=1e4,returnRaw:l=!1,contentType:i,resultType:c="json",noErrorTip:p=!1})=>new Promise((t,r)=>{o=o.toUpperCase(),$.ajax({url:e,type:o,headers:{"API-Authorization":DreamConfig.access_key||"dream",...n},async:!0,dataType:c,contentType:i,timeout:s,data:a,success(e){l?t(e):200===e.status?t(e.data||""):r(e)},error(e){e=e&&e.responseJSON?e.responseJSON.title:DreamConfig.global_request_fail;p||Qmsg.error(e),r(e)}})}),initLikeButton(e,t){t=encrypt("agree-"+t);let r=localStorage.getItem(t);r=r?JSON.parse(decrypt(r)):[],$(e).each(function(){var e=$(this),t=e.attr("data-id");r.includes(t)&&e.removeClass("like")})},initLikeEvent(e,t,n){let s=encrypt("agree-"+t);$("body").on("click",e,function(e){e.stopPropagation();let o=$(this),a=o.attr("data-id"),t=o.attr("data-type");r.request({url:"/apis/api.halo.run/v1alpha1/trackers/upvote",method:"POST",contentType:"application/json;charset=UTF-8",returnRaw:!0,resultType:"text",data:JSON.stringify({group:"Moments"===t?"moment.halo.run":"content.halo.run",plural:"Moments"===t?"moments":"Post"===t?"posts":"",name:a})}).then(e=>{var t=(t=localStorage.getItem(s))?JSON.parse(decrypt(t)):[],r=+(o.attr("data-likes")||0)+1,t=(t.push(a),o.removeClass("like"),encrypt(JSON.stringify(t)));localStorage.setItem(s,t),n(o).html(r),Qmsg.success(DreamConfig.global_like_success)})})},sleep:(t=250)=>new Promise(e=>setTimeout(e,t)),foldBlock(e){var t,r=e.height();e.is(".fold")?e.removeClass("fold").addClass("unfold"):(t=document.documentElement.scrollTop||document.body.scrollTop||window.pageYOffset,e.addClass("fold").removeClass("unfold"),$("body,html").scrollTop(t-r+e.height()))},removeClassByPrefix(e,t){var r=e.className.split(" ").filter(function(e){return 0!==e.lastIndexOf(t,0)});e.className=r.join(" ").trim()},animateScroll(e,t,r,o){let a,n=e.getBoundingClientRect(),s=window.scrollY,l=s+n.top-r,i=(l-s)/t,c=s>l?-1:1;a=window.requestAnimationFrame(function e(){(s+=i)*c<l*c?(window.scrollTo(0,s),a=window.requestAnimationFrame(e)):(window.scrollTo(0,l),window.cancelAnimationFrame(a),o&&o())})},djb2Hash(t){let r=5381;for(let e=0;e<t.length;e++)r=33*r^t.charCodeAt(e);return(r>>>0).toString()},removeHTMLTags:(e,a)=>function e(t){let r="";for(const o of t.childNodes)o.nodeType===Node.TEXT_NODE?r+=o.textContent:o.nodeType===Node.ELEMENT_NODE&&(a&&o.tagName.toLowerCase()===a?r+=o.outerHTML:r+=e(o));return r}((new DOMParser).parseFromString(e,"text/html").body),getParameterByName(e,t=window.location.href){e=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");e=new RegExp("[?&]"+e+"(=([^&#]*)|&|#|$)").exec(t);return e?e[2]?decodeURIComponent(e[2].replace(/\+/g," ")):"":null}};window.Utils=r})();