PageSourceSearch

https://industrialkonzept.com/cdn/shop/t/111/assets/ik-home.js?v=180520893162067043691790937837

js industrialkonzept.com collected 2026-10-02 20:13:41 UTC 9,283 bytes, 2 lines download raw bytes

1(()=>{if(window.__ikHome)return;window.__ikHome=!0;const root=document.documentElement,reduced=window.matchMedia("(prefers-reduced-motion: reduce)").matches,finePointer=window.matchMedia("(hover: hover) and (pointer: fine)").matches,designMode=!!(window.Shopify&&window.Shopify.designMode),afterLoad=()=>new Promise(done=>{document.readyState==="complete"?done():window.addEventListener("load",done,{once:!0})});let designersP=null;const designerCount=()=>{if(designersP)return designersP;const KEY="ikn-az-v1";try{const hit=JSON.parse(localStorage.getItem(KEY)||"null");if(hit&&Date.now()-hit.t<24*3600*1e3)return designersP=Promise.resolve(Object.keys(hit.d).length)}catch{}const base=(window.Shopify&&window.Shopify.routes&&window.Shopify.routes.root||"/")+"collections/all?view=ikn-designer-data&page=",get=p=>fetch(base+p).then(r=>r.ok?r.json():null).catch(()=>null);return designersP=afterLoad().then(()=>get(1)).then(first=>{if(!first)return null;const rest=[];for(let p=2;p<=first.pages;p++)rest.push(get(p));return Promise.all(rest).then(more=>[first,...more])}).then(pages=>{if(!pages||pages.some(pg=>!pg))return 0;const d={};pages.forEach(pg=>Object.entries(pg.d).forEach(([k,v])=>d[k]=(d[k]||0)+v));try{localStorage.setItem(KEY,JSON.stringify({t:Date.now(),d}))}catch{}return Object.keys(d).length}).catch(()=>0),designersP},init=scope=>{const reveals=scope.querySelectorAll(".ikh-reveal");if("IntersectionObserver"in window&&!reduced&&!designMode){root.classList.add("ikh-js");const io=new IntersectionObserver(entries=>{entries.forEach(entry=>{entry.isIntersecting&&(entry.target.classList.add("is-in"),io.unobserve(entry.target))})},{rootMargin:"0px 0px -8% 0px",threshold:.05});reveals.forEach(el=>io.observe(el)),window.setTimeout(()=>reveals.forEach(el=>el.classList.add("is-in")),6e3)}const counters=scope.querySelectorAll("[data-ikh-count]"),formatter=new Intl.NumberFormat(root.lang||void 0);counters.forEach(el=>{const value=parseInt(el.getAttribute("data-ikh-count"),10);value&&(el.textContent=formatter.format(value)+(el.getAttribute("data-ikh-suffix")||""))}),scope.querySelectorAll("[data-ikh-plus-designers]").forEach(el=>{el.__ikhWait=designerCount().then(n=>{if(!n)return;const total=(parseInt(el.getAttribute("data-ikh-plus-designers"),10)||0)+n,counts=el.hasAttribute("data-ikh-count");counts&&el.setAttribute("data-ikh-count",total),(!counts||reduced||el.__ikhRan)&&(el.textContent=formatter.format(total)+(el.getAttribute("data-ikh-suffix")||""))})});const runCounter=el=>{if(el.__ikhWait){const wait=el.__ikhWait;el.__ikhWait=null,Promise.race([wait,new Promise(r=>setTimeout(r,3e3))]).then(()=>runCounter(el));return}el.__ikhRan=!0;const target=()=>parseInt(el.getAttribute("data-ikh-count"),10)||0;if(!target()||reduced)return;const suffix=el.getAttribute("data-ikh-suffix")||"",start=performance.now(),duration=1400,tick=now=>{const p=Math.min(1,(now-start)/duration),eased=1-Math.pow(1-p,3);el.textContent=formatter.format(Math.round(target()*eased))+suffix,p<1&&requestAnimationFrame(tick)};requestAnimationFrame(tick)};if("IntersectionObserver"in window){const cio=new IntersectionObserver(entries=>{entries.forEach(entry=>{entry.isIntersecting&&(runCounter(entry.target),cio.unobserve(entry.target))})},{threshold:.6});counters.forEach(el=>cio.observe(el))}scope.querySelectorAll("[data-ikh-rooms]").forEach(section=>{if(section.__ikh)return;section.__ikh=!0;const cursor=section.querySelector(".ikh-cursor"),list=section.querySelector(".ikh-rooms__list");if(!cursor||!list||!finePointer||reduced)return;const images=cursor.querySelectorAll("img");let x=0,y=0,cx=0,cy=0,raf=null;const loop=()=>{cx+=(x-cx)*.18,cy+=(y-cy)*.18,cursor.style.transform=`translate3d(${cx}px, ${cy}px, 0) translate(-50%, -50%) scale(1)`,raf=Math.abs(x-cx)+Math.abs(y-cy)>.3?requestAnimationFrame(loop):null};list.addEventListener("mousemove",e=>{x=e.clientX+40,y=e.clientY,raf||(raf=requestAnimationFrame(loop))}),list.querySelectorAll("[data-ikh-room]").forEach(link=>{link.addEventListener("mouseenter",e=>{const index=link.getAttribute("data-ikh-room");images.forEach(img=>img.classList.toggle("is-active",img.getAttribute("data-ikh-room")===index)),cursor.classList.contains("is-on")||(cx=x=e.clientX+40,cy=y=e.clientY),cursor.classList.add("is-on")})}),list.addEventListener("mouseleave",()=>cursor.classList.remove("is-on")),window.addEventListener("scroll",()=>cursor.classList.remove("is-on"),{passive:!0})}),scope.querySelectorAll("[data-ikh-stories]").forEach(cover=>{if(cover.__ikh)return;cover.__ikh=!0;const stories=[...cover.querySelectorAll(".ikh-cover__story")],slides=[...cover.querySelectorAll(".ikh-cover__slide")],segs=[...cover.querySelectorAll(".ikh-cover__seg")],links=[...cover.querySelectorAll("[data-ikh-cover-link]")],pause=cover.querySelector(".ikh-cover__pause"),bar=cover.querySelector(".ikh-cover__progress"),n=stories.length;if(n<2||!bar)return;let current=0;const load=k=>{const pic=slides.find(s=>Number(s.dataset.ikhSlide)===k);pic&&pic.querySelectorAll("[data-srcset]").forEach(el=>{el.srcset=el.dataset.srcset,el.removeAttribute("data-srcset")})},why=new Set,show=k=>
1{current=(k+n)%n,slides.forEach(s=>s.classList.toggle("is-active",Number(s.dataset.ikhSlide)===current)),stories.forEach((s,j)=>{s.classList.toggle("is-active",j===current),s.setAttribute("aria-hidden",j===current?"false":"true")}),segs.forEach((s,j)=>{s.classList.toggle("is-active",j===current),s.classList.toggle("is-done",j<current),s.classList.remove("is-running"),j===current?s.setAttribute("aria-current","true"):s.removeAttribute("aria-current")}),segs[current].offsetWidth,segs[current].classList.add("is-running");const url=stories[current].dataset.url;url&&links.forEach(a=>a.href=url),load(current),load(current+1)};cover.addEventListener("animationend",e=>{e.animationName==="ikh-seg"&&e.target===segs[current].firstElementChild&&show(current+1)});const sync=()=>cover.classList.toggle("is-paused",why.size>0),hold=(reason,on)=>{on?why.add(reason):why.delete(reason),sync()},setUser=on=>{hold("user",on),pause.setAttribute("aria-pressed",String(on)),pause.setAttribute("aria-label",on?bar.dataset.labelPlay:bar.dataset.labelPause)};designMode&&setUser(!0),segs.forEach((seg,j)=>seg.addEventListener("click",()=>show(j))),pause.addEventListener("click",()=>setUser(!why.has("user"))),cover.addEventListener("focusin",e=>{let fv=!1;try{fv=e.target.matches(":focus-visible")}catch{}hold("focus",fv&&!e.target.closest(".ikh-cover__progress"))}),cover.addEventListener("focusout",()=>hold("focus",!1)),document.addEventListener("visibilitychange",()=>hold("tab",document.hidden)),"IntersectionObserver"in window&&new IntersectionObserver(entries=>entries.forEach(en=>hold("view",!en.isIntersecting)),{threshold:.25}).observe(cover),show(0);let sx=0,sy=0;cover.addEventListener("touchstart",e=>{sx=e.touches[0].clientX,sy=e.touches[0].clientY},{passive:!0}),cover.addEventListener("touchend",e=>{if(e.target.closest(".ikn-covershop"))return;const dx=e.changedTouches[0].clientX-sx,dy=e.changedTouches[0].clientY-sy;Math.abs(dx)>50&&Math.abs(dy)<40&&show(current+(dx<0?1:-1))},{passive:!0});const soon=()=>window.requestIdleCallback?window.requestIdleCallback(()=>load(1),{timeout:2e3}):window.setTimeout(()=>load(1),800);document.readyState==="complete"?soon():window.addEventListener("load",soon,{once:!0})}),scope.querySelectorAll("[data-ikh-rail]").forEach(rail=>{if(rail.__ikh)return;rail.__ikh=!0;const track=rail.querySelector(".ikh-rail__track"),prev=rail.querySelector("[data-ikh-prev]"),next=rail.querySelector("[data-ikh-next]"),bar=rail.querySelector(".ikh-rail__bar");if(!track)return;const update=()=>{const max=track.scrollWidth-track.clientWidth,ratio=max>0?track.scrollLeft/max:0;if(bar){const width=Math.max(.12,track.clientWidth/track.scrollWidth);bar.style.width=`${width*100}%`,bar.style.transform=`translateX(${ratio*((1-width)/width)*100}%)`}prev&&(prev.disabled=track.scrollLeft<=2),next&&(next.disabled=track.scrollLeft>=max-2)},step=()=>{const card=track.querySelector(".ikh-card");return card?card.getBoundingClientRect().width*2:track.clientWidth*.8};prev&&prev.addEventListener("click",()=>track.scrollBy({left:-step(),behavior:reduced?"auto":"smooth"})),next&&next.addEventListener("click",()=>track.scrollBy({left:step(),behavior:reduced?"auto":"smooth"}));let frame=0;const later=()=>{frame||(frame=requestAnimationFrame(()=>(frame=0,update())))};if(track.addEventListener("scroll",later,{passive:!0}),window.addEventListener("resize",later),update(),!finePointer)return;let down=!1,moved=!1,startX=0,startLeft=0;track.addEventListener("pointerdown",e=>{e.pointerType!=="mouse"||e.button!==0||(down=!0,moved=!1,startX=e.clientX,startLeft=track.scrollLeft)}),window.addEventListener("pointermove",e=>{if(!down)return;const dx=e.clientX-startX;!moved&&Math.abs(dx)>6&&(moved=!0,track.classList.add("is-dragging")),moved&&(track.scrollLeft=startLeft-dx)}),window.addEventListener("pointerup",()=>{down&&(down=!1,moved&&window.setTimeout(()=>track.classList.remove("is-dragging"),0))}),track.addEventListener("dragstart",e=>e.preventDefault())})};init(document),document.addEventListener("shopify:section:load",e=>init(e.target))})();
2//# sourceMappingURL=/cdn/shop/t/111/assets/ik-home.js.map?v=180520893162067043691790937837

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.