1import"./chunk-SHWZWZHU.min.js";var c={list:[],init:()=>{document.querySelector(".article")!=null&&c.fetchData()},fetchData:async()=>{fetch("/Umbraco/Surface/Content/MolarTranslations").then(t=>t.json()).then(t=>{if(t.success===!0){Object.entries(t.data).forEach(([r,o])=>{c.list.push({word:r,description:o.toString()})});let n=c.list.filter(r=>r.word!=="\xD3fr\xEDsk");c.translate(n)}})},addTooltipListener(t){t.addEventListener("mouseenter",n=>{let r=n.currentTarget.getBoundingClientRect(),o=n.currentTarget.parentElement.getBoundingClientRect(),a=n.currentTarget.getBoundingClientRect(),e=n.currentTarget.parentElement.getBoundingClientRect(),l=o.bottom-r.bottom,s=a.left-e.left,i=e.right-a.right,d=90;l<55?n.currentTarget.classList.add("bottom-close"):n.currentTarget.classList.remove("bottom-close"),s<=d?n.currentTarget.classList.add("left-close"):n.currentTarget.classList.remove("left-close"),i<=d?n.currentTarget.classList.add("right-close"):n.currentTarget.classList.remove("right-close")})},createWordTranslationElement(t,n){let r=document.createElement("span");r.className="wordTranslation";let o=document.createElement("span");return o.className="wordTranslation__text",o.textContent=n,r.appendChild(document.createTextNode(t)),r.appendChild(o),this.addTooltipListener(r),r},replaceMatchingWords(t,n){return n.replace(t,r=>{let o=c.list.find(e=>e.word===r.toLowerCase()),a='$1<span class="wordTranslation">$2<span class="wordTranslation__text">'+n+"</span></span>$3";return o?a:r})},translateTest:t=>{let n=document.getElementsByTagName("p");for(let o=n.length;o--;){let a=n[o];for(let e=0,l=t.length;e<l;e++){let s=new RegExp("([^a-zA-Z-])("+t[e].word+")([^a-zA-Z-])","giu"),i=new RegExp(t.map(p=>p.word).join("|"),"i"),d=i.test(t[e].description);if(a.innerHTML=a.innerHTML.replace(s,'$1<span class="wordTranslation">$2<span class="wordTranslation__text">'+t[e].description+"</span></span>$3"),d===!0){let p=c.replaceMatchingWords(i,t[e].description),g=a.querySelectorAll(".wordTranslation__text");g&&g.length&&g.length>1&&(g[0].innerHTML=p)}}}let r=document.querySelectorAll(".article__content li");if(r!==null)for(let o=r.length;o--;){let a=r[o];for(let e=0,l=t.length;e<l;e++){let s=new RegExp("([^a-zA-Z-])("+t[e].word+")([^a-zA-Z-])","giu");a.innerHTML=a.innerHTML.replace(s,'$1<span class="wordTranslation">$2<span class="wordTranslation__text">'+t[e].description+"</span></span>$3")}}},translate:t=>{document.querySelectorAll(".article__content p, .article__content li").forEach(r=>{t.forEach(o=>{let a=new RegExp(`(^|[^a-zA-Z-])(${o.word})([^a-zA-Z-]|$)`,"giu");r.childNodes.forEach(e=>{if(e.nodeType===3){let l=[];e.textContent.split(a).forEach((s,i)=>{i%4===2?l.push(c.createWordTranslationElement(s,o.description)):s&&l.push(document.createTextNode(s))}),l.length&&(l.forEach(s=>e.parentNode.insertBefore(s,e)),e.parentNode.removeChild(e))}})})})}},u=c;export{u as default}; 2//# sourceMappingURL=wordTranslation-HNTQTW3P.min.js.map
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.