"use client"; import Isotope from "isotope-layout"; import { Fragment, useEffect, useRef, useState } from "react"; const GalleryIsotope = () => { const isotope = useRef(); const [filterKey, setFilterKey] = useState("*"); useEffect(() => { setTimeout(() => { isotope.current = new Isotope(".gallery-active", { itemSelector: ".item", percentPosition: true, masonry: { columnWidth: ".item", }, animationOptions: { duration: 750, easing: "linear", queue: false, }, }); }, 500); }, []); useEffect(() => { if (isotope.current) { filterKey === "*" ? isotope.current.arrange({ filter: `*` }) : isotope.current.arrange({ filter: `.${filterKey}` }); } }, [filterKey]); const handleFilterKeyChange = (key) => () => { setFilterKey(key); }; const activeBtn = (value) => (value === filterKey ? "active" : ""); return (
Gallery

Chicken burger

Delicious food
Gallery

yamee Chicken fry

Delicious food
Gallery

beef vegetable hot dog

Delicious food
Gallery

hot dog with mustard

Delicious food
Gallery

traditional Italian pizza

Delicious food
Gallery

Chicken burger

Delicious food
Gallery

Chicken burger

Delicious food
Gallery

Chicken burger

Delicious food
Gallery

Chicken burger

Delicious food
); }; export default GalleryIsotope;