diff --git a/client/src/components/CardModal/CardModal.jsx b/client/src/components/CardModal/CardModal.jsx index ff77aa97..9c9651cc 100755 --- a/client/src/components/CardModal/CardModal.jsx +++ b/client/src/components/CardModal/CardModal.jsx @@ -1,4 +1,4 @@ -import React, { useCallback, useRef } from 'react'; +import React, { useCallback, useRef, useState } from 'react'; import PropTypes from 'prop-types'; import classNames from 'classnames'; import { useTranslation } from 'react-i18next'; @@ -81,6 +81,7 @@ const CardModal = React.memo( onClose, }) => { const [t] = useTranslation(); + const [isLinkCopied, setIsLinkCopied] = useState(false); const isGalleryOpened = useRef(false); @@ -146,6 +147,14 @@ const CardModal = React.memo( onClose(); }, [onDuplicate, onClose]); + const handleCopyLinkClick = useCallback(() => { + navigator.clipboard.writeText(window.location.href); + setIsLinkCopied(true); + setTimeout(() => { + setIsLinkCopied(false); + }, 5000); + }, []); + const handleGalleryOpen = useCallback(() => { isGalleryOpened.current = true; }, []); @@ -506,6 +515,14 @@ const CardModal = React.memo( {t('action.duplicate')} +