import { useEffect, useRef } from "react"; import { gsap } from "gsap"; import { ScrollTrigger } from "@/plugins"; import $ from "jquery"; import Link from "next/link"; import Portfilio61 from "../../../public/assets/imgs/portfolio/6/1.jpg"; import Portfilio62 from "../../../public/assets/imgs/portfolio/6/2.jpg"; import Portfilio63 from "../../../public/assets/imgs/portfolio/6/3.jpg"; import Portfilio64 from "../../../public/assets/imgs/portfolio/6/4.jpg"; import Portfilio65 from "../../../public/assets/imgs/portfolio/6/5.jpg"; import Portfilio66 from "../../../public/assets/imgs/portfolio/6/6.jpg"; import Portfilio67 from "../../../public/assets/imgs/portfolio/6/7.jpg"; import Image from "next/image"; import animationCharCome from "@/lib/utils/animationCharCome"; gsap.registerPlugin(ScrollTrigger); const Portfolio1 = () => { const charAnim = useRef(); const charAnim2 = useRef(); const portfolioItemList = useRef(); const PortfolioTotal = useRef(); useEffect(() => { animationCharCome(charAnim.current); animationCharCome(charAnim2.current, 0.15); if (typeof window !== "undefined") { const totalPortfolioItems = portfolioItemList.current.children.length; if (totalPortfolioItems) { PortfolioTotal.current.innerHTML = totalPortfolioItems; } $(document).on("scroll", function () { $(".portfolio__item-6").each(function () { if ( $(this).position().top <= $(document).scrollTop() && $(this).position().top + $(this).outerHeight() > $(document).scrollTop() ) { var item_num = $(this).data("portfitem"); $(".portfolio__current").html(item_num); $(this).addClass("active").siblings().removeClass("active"); } }); }); let tHero = gsap.context(() => { const portfolio_listss = gsap.utils.toArray(".portfolio__item-6 img"); if (portfolio_listss) { portfolio_listss.forEach((item, i) => { gsap.from(item, { scrollTrigger: { trigger: item, start: "top center", scrub: 1.5, }, scale: 2.5, duration: 1, }); }); } function mousemoveHandler(e) { const target = e.target; let tl = gsap.timeline({ defaults: { x: e.clientX, y: e.clientY, }, }); let t2 = gsap.timeline({ defaults: { x: e.clientX, y: e.clientY, }, }); } ScrollTrigger.create({ trigger: ".portfolio__wrapper-6", start: "top top", end: "bottom bottom", pin: ".portfolio__title-wrap-6", pinSpacing: false, }); document.addEventListener("mousemove", mousemoveHandler); }); return () => { tHero.revert(); }; } }, []); return ( <>

Featured

Work

View the full case study of our recent featured and awesome works that we created for our clients.

01 / 0
Portfolio Image

Lionpro Agency

02 May 2021
Portfolio Image

Lionpro Agency

02 May 2021
Portfolio Image

Lionpro Agency

02 May 2021
Portfolio Image

Lionpro Agency

02 May 2021
Portfolio Image

Lionpro Agency

02 May 2021
Portfolio Image

Lionpro Agency

02 May 2021
Portfolio Image

Lionpro Agency

02 May 2021
); }; export default Portfolio1;