revert copytoclipboard
This commit is contained in:
parent
5e3f175c54
commit
73cc6dd364
|
|
@ -21,9 +21,8 @@ import './copyToClipboard.css';
|
||||||
export const CopyToClipboard: React.FunctionComponent<{
|
export const CopyToClipboard: React.FunctionComponent<{
|
||||||
value: string | (() => Promise<string>),
|
value: string | (() => Promise<string>),
|
||||||
description?: string,
|
description?: string,
|
||||||
copyIcon?: string;
|
}> = ({ value, description }) => {
|
||||||
}> = ({ value, description, copyIcon = 'copy' }) => {
|
const [icon, setIcon] = React.useState('copy');
|
||||||
const [icon, setIcon] = React.useState(copyIcon);
|
|
||||||
|
|
||||||
const handleCopy = React.useCallback(() => {
|
const handleCopy = React.useCallback(() => {
|
||||||
const valuePromise = typeof value === 'function' ? value() : Promise.resolve(value);
|
const valuePromise = typeof value === 'function' ? value() : Promise.resolve(value);
|
||||||
|
|
@ -31,7 +30,7 @@ export const CopyToClipboard: React.FunctionComponent<{
|
||||||
navigator.clipboard.writeText(value).then(() => {
|
navigator.clipboard.writeText(value).then(() => {
|
||||||
setIcon('check');
|
setIcon('check');
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
setIcon(copyIcon);
|
setIcon('copy');
|
||||||
}, 3000);
|
}, 3000);
|
||||||
}, () => {
|
}, () => {
|
||||||
setIcon('close');
|
setIcon('close');
|
||||||
|
|
@ -40,8 +39,8 @@ export const CopyToClipboard: React.FunctionComponent<{
|
||||||
setIcon('close');
|
setIcon('close');
|
||||||
});
|
});
|
||||||
|
|
||||||
}, [value, copyIcon]);
|
}, [value]);
|
||||||
return <ToolbarButton title={description ?? 'Copy'} icon={icon} onClick={handleCopy}/>;
|
return <ToolbarButton title={description ? description : 'Copy'} icon={icon} onClick={handleCopy}/>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export const CopyToClipboardTextButton: React.FunctionComponent<{
|
export const CopyToClipboardTextButton: React.FunctionComponent<{
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue