import { Box, Container, Image, Stack, Text } from "@chakra-ui/react"; import { Fade, ScaleFade, Slide, SlideFade, Collapse } from "@chakra-ui/react"; import { useEffect, useRef, useState } from "react"; import { Component1 } from "./Component1"; import { Component2 } from "./Component2"; import { Component3 } from "./Component3"; import { Component4 } from "./Component4"; // import { SubnetPage2 } from "./SubnetPage2"; import cube from "../../assets/images/cube.png"; import stack from "../../assets/images/stackNew.webp"; import { gsap } from "gsap"; import { ScrollTrigger } from "gsap/ScrollTrigger"; // Initialize ScrollTrigger gsap.registerPlugin(ScrollTrigger); const SubnetContent = { heading: `decentralised Auto Syncing subnets`, }; export const NewSubnetComp = () => { const firstBoxRef = useRef(null); const secondBoxRef = useRef(null); const thirdBoxRef = useRef(null); const mainBox = useRef(null); useEffect(() => { // gsap.set(firstBoxRef.current, { opacity: 1 }); let tl = gsap .timeline({ scrollTrigger: { trigger: mainBox.current, start: "top top", scrub: 1, pin: true, end: "bottom bottom", markers: true, }, }) .fromTo(firstBoxRef.current, { opacity: 1 }, { opacity: 0 }) .fromTo(secondBoxRef.current, { opacity: 0 }, { opacity: 1 }) .fromTo(secondBoxRef.current, { opacity: 1 }, { opacity: 0 }) .fromTo(thirdBoxRef.current, { opacity: 0 }, { opacity: 1 }); // .fromTo( // firstBoxRef.current, // { opacity: 1, duration: 3, transform: "translateX(0vw)" }, // { opacity: 0, duration: 3, transform: "translateX(100vw)" } // ) // .fromTo( // secondBoxRef.current, // { opacity: 0, duration: 1, transform: "translateX(-100vw)" }, // { opacity: 1, duration: 1, transform: "translateX(0vw)" } // ) // .fromTo( // secondBoxRef.current, // { opacity: 1, duration: 3, transform: "translateX(0vw)" }, // { opacity: 0, duration: 3, transform: "translateX(100vw)" } // ) // .fromTo( // thirdBoxRef.current, // { opacity: 0, duration: 1, transform: "translateX(-100vw)" }, // { opacity: 1, duration: 1, transform: "translateX(0vw)" } // ); return () => { tl.kill(); }; }, []); return (