'use client' import { useEffect, useState } from 'react' import { sorts } from 'utils' import { Icons, Modal } from 'components' import { useUrlQuery, useDisclosure } from '@/hooks' const Sort = ({ handleChangeRoute }) => { //? Assets const [isSort, sortHandlers] = useDisclosure() const query = useUrlQuery() //? State const [sort, setSort] = useState(sorts[0]) //? Handlers const handleSortChange = item => { setSort(sorts[item.value - 1]) handleChangeRoute({ sort: item.value }) sortHandlers.close() } useEffect(() => { if (query.sort) { setSort(sorts[+query.sort - 1]) } else { setSort(sorts[0]) } }, [query]) useEffect(() => { setSort(sorts[0]) }, [query.category]) //? Render(s) return ( <>