Memoize clear share modal props callback

This commit is contained in:
Sam Becker 2025-10-26 10:37:02 -05:00
parent e114343d1f
commit ff9fc94ce1

View File

@ -4,7 +4,7 @@ import Modal from '@/components/Modal';
import { TbPhotoShare } from 'react-icons/tb';
import { clsx } from 'clsx/lite';
import { BiCopy } from 'react-icons/bi';
import { ReactNode, useEffect } from 'react';
import { ReactNode, useCallback, useEffect } from 'react';
import { shortenUrl } from '@/utility/url';
import { toastSuccess } from '@/toast';
import { SOCIAL_NETWORKS } from '@/app/config';
@ -71,10 +71,14 @@ export default function ShareModal({
{icon}
</LoaderButton>;
useOnPathChange(() => setShareModalProps?.(undefined));
const clearShareModalProps = useCallback(() =>
setShareModalProps?.(undefined),
[setShareModalProps]);
useOnPathChange(clearShareModalProps);
return (
<Modal onClose={() => setShareModalProps?.(undefined)}>
<Modal onClose={clearShareModalProps}>
<div className="space-y-2 w-full">
{title &&
<div className={clsx(