diff --git a/src/client/components/elements/CopyToClipboard/index.js b/src/client/components/elements/CopyToClipboard/index.js new file mode 100644 index 0000000000..226eec970f --- /dev/null +++ b/src/client/components/elements/CopyToClipboard/index.js @@ -0,0 +1,62 @@ +import React, { useEffect, useState, useRef } from 'react'; +import PropTypes from 'prop-types'; +import Copy from '../../icons/Copy'; +import Tooltip from '../Tooltip'; + +import './index.scss'; + +const baseClass = 'copy-to-clipboard'; + +const CopyToClipboard = ({ value }) => { + const ref = useRef(null); + const [copied, setCopied] = useState(false); + const [hovered, setHovered] = useState(false); + + useEffect(() => { + if (copied && !hovered) { + setTimeout(() => { + setCopied(false); + }, 1500); + } + }, [copied, hovered]); + + return ( +