UNPKG

hexo-theme-redefine

Version:

Redefine your writing with Hexo Theme Redefine.

2 lines 1.59 kB
const e=new Map,t=new Map,createTyped=(t,o,r)=>{if(void 0===window.Typed)return;if(!document.getElementById(t))return;(t=>{const o=e.get(t);if(o&&"function"==typeof o.destroy)try{o.destroy()}catch(e){console.error("Failed to destroy Typed instance:",e)}e.delete(t);const r=document.getElementById(t);r&&(r.innerHTML="")})(t);const a=new window.Typed(`#${t}`,{strings:o,typeSpeed:r.typeSpeed,smartBackspace:r.smartBackspace,backSpeed:r.backSpeed,backDelay:r.backDelay,loop:r.loop,startDelay:r.startDelay});e.set(t,a)},o=theme?.home_banner?.subtitle||{},r=o.hitokoto||{};export const config={usrTypeSpeed:o.typing_speed,usrBackSpeed:o.backing_speed,usrBackDelay:o.backing_delay,usrStartDelay:o.starting_delay,usrLoop:o.loop,usrSmartBackspace:o.smart_backspace,usrHitokotoAPI:r.api};export default function initTyped(e){const a=(t.get(e)||0)+1;t.set(e,a);const{usrTypeSpeed:s,usrBackSpeed:n,usrBackDelay:c,usrStartDelay:p,usrLoop:i,usrSmartBackspace:y,usrHitokotoAPI:d}=config,l={typeSpeed:s??100,smartBackspace:y??!1,backSpeed:n??80,backDelay:c??1500,loop:i??!1,startDelay:p??500};if(Boolean(r.enable)){if(!d)return;return void fetch(d).then((e=>e.json())).then((o=>{if(t.get(e)!==a)return;const s="string"==typeof o?.hitokoto?o.hitokoto:"";if(!s)return;const n="string"==typeof o?.from_who&&r.show_author?o.from_who:"";createTyped(e,[n?`${s}——${n}`:s],l)})).catch((e=>{console.error("Failed to fetch hitokoto:",e)}))}const u=(k=o.text,Array.isArray(k)?k.filter((e=>"string"==typeof e&&e)):"string"==typeof k&&k?[k]:[]);var k;0!==u.length&&createTyped(e,u,l)} //# sourceMappingURL=typed.js.map