1"use strict";(self.__LOADABLE_LOADED_CHUNKS__=self.__LOADABLE_LOADED_CHUNKS__||[]).push([[2396],{25688(e,r,t){t.r(r),t.d(r,{usePanelScrollAnimation:()=>g});var n=t(10939),o=t(77810),i=t(84378),c=t(42750);function l(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),t.push.apply(t,n)}return t}i.gsap.registerPlugin(c.u);const s="none",a=.5,u=60,p="power2.out",f={y:40,duration:1.2,ease:"power3.out",delay:.3};function y(e={}){const{skipFirstPanelIntro:r=!0,wrapperRef:t,panelRefs:o,contentRefs:y}=e,g=Array.isArray(null==o?void 0:o.current)?o.current.filter(Boolean):i.gsap.utils.toArray(".panel");if(!g.length||null==t||!t.current)return;const[d,...O]=g,v=(e,r)=>Array.isArray(null==y?void 0:y.current)?y.current[r]||null:null==e?void 0:e.querySelector(".panel-content"),w=i.gsap.context(()=>{if(c.u.create({trigger:t.current,start:"top top",end:()=>`+=${100*O.length}%`,pin:!0,pinSpacing:!0,invalidateOnRefresh:!0}),r&&d){const e=v(d,0);e&&i.gsap.fromTo(e,{y:f.y},function(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?l(Object(t),!0).forEach(function(r){(0,n.A)(e,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):l(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})}return e}({y:0},f))}(r?O:g).forEach((e,n)=>{const o=r?n+1:n,c=v(e,o);i.gsap.set(e,{yPercent:100,zIndex:o});const l=i.gsap.timeline({scrollTrigger:{trigger:t.current,start:()=>"+="+n*window.innerHeight,end:()=>"+="+(n+1)*window.innerHeight,scrub:a,invalidateOnRefresh:!0}});l.to(e,{yPercent:0,ease:s}),c&&l.fromTo(c,{y:u},{y:0,ease:p},0)})});return()=>w.revert()}function g(e={},r=[]){(0,o.useEffect)(()=>{const{activeOnDevice:r="all",mobileWidthBreakpoint:t=768}=e,n=()=>{if("all"===r)return!0;const e=window.innerWidth<t;return"mobile"===r?e:!e};let o=n()?y(e):null;const i=(e=>{let r;return(...t)=>{clearTimeout(r),r=setTimeout(()=>e.apply(void 0,t),150)}})(()=>{var r;const t=n();!!o!==t&&(null===(r=o)||void 0===r||r(),o=t?y(e):null)});return window.addEventListener("resize",i),()=>{var e;null===(e=o)||void 0===e||e(),window.removeEventListener("resize",i)}},r)}}}]);
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.