1import{_ as M}from"./_plugin-vue_export-helper.DlAUqK2U.js";import{c as L,d as $,o as C,a as X,b as Y}from"./runtime-core.esm-bundler.z36Am-N8.js";const I=$({__name:"WelcomeBoxController",props:{mottos:{}},setup(f,{expose:v}){v();const s=f;let r=null,t=null,o=null,l=0;const x=()=>{r&&(window.clearTimeout(r),r=null),t&&(window.clearTimeout(t),t=null),o&&(o(),o=null)},y=()=>{const e=document.getElementById("welcome-box-el"),c=document.getElementById("info-box-el"),g=document.getElementById("motto-text-el");if(!e||!c||!g)return!1;o&&o(),t&&(window.clearTimeout(t),t=null);const w=30,E=(i,n)=>{let a=Math.atan2(n,i)*(180/Math.PI);return a<0&&(a+=360),a},d=i=>{window.requestAnimationFrame(()=>{const n=e.getBoundingClientRect(),T=(i.clientX-n.x-n.width/2)/w,a=-(i.clientY-n.y-n.height/2)/w,B=Math.floor(E(i.clientY-n.y-n.height/2,i.clientX-n.x-n.width/2));e.style.transform=`rotateY(${T}deg) rotateX(${a}deg)`,c.style.background=`linear-gradient(${B}deg, var(--infobox-background-initial), var(--infobox-background-final))`})},u=()=>{e.style.transform="rotateY(0deg) rotateX(0deg)",c.style.background="linear-gradient(0deg, var(--infobox-background-initial), var(--infobox-background-final))"};e.style.pointerEvents="auto",e.addEventListener("pointermove",d),e.addEventListener("mousemove",d),e.addEventListener("pointerleave",u),e.addEventListener("mouseleave",u),o=()=>{e.removeEventListener("pointermove",d),e.removeEventListener("mousemove",d),e.removeEventListener("pointerleave",u),e.removeEventListener("mouseleave",u)},l+=1;const k=l,b=s.mottos[Math.floor(Math.random()*s.mottos.length)]||"";let p=0;g.textContent="";const h=()=>{k===l&&p<b.length&&(g.textContent+=b[p],p+=1,t=window.setTimeout(h,Math.random()*150+50))};return t=window.setTimeout(h,220),!0},m=(e=0)=>{y()||e>=24||(r=window.setTimeout(()=>m(e+1),80))};C(()=>{m()}),X(()=>{x()});const _={props:s,get retryTimer(){return r},set retryTimer(e){r=e},get typingTimer(){return t},set typingTimer(e){t=e},get cleanup(){return o},set cleanup(e){o=e},get typingToken(){return l},set typingToken(e){l=e},clearRuntime:x,bindWelcomeBox:y,scheduleBind:m};return Object.defineProperty(_,"__isScriptSetup",{enumerable:!1,value:!0}),_}}),W={style:{display:"none"}};function A(f,v,s,r,t,o){return Y(),L("div",W)}const S=M(I,[["render",A]]);export{S as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.