Sha256: 2c8f9c21080cd26ad1263fe7a2db96cd8ab0685073bb9fdde8d9c5f598d70ab5

Contents?: true

Size: 788 Bytes

Versions: 8

Compression:

Stored size: 788 Bytes

Contents

import { useState } from 'react';
import asMailtoHref from './mailto';

const ShareURLComponent = ({ querydb, program, queryLength, url }) => {
    const [copied, setCopied] = useState(false);

    const copyToClipboard = () => {
        navigator.clipboard.writeText(url);
        setCopied(true);
    };

    return (
        <div className="share-url-component">
            <input name="shareableUrl" type="text" value={url} readOnly />
            <div className="actions">
                <button className="btn btn-primary" onClick={copyToClipboard}>{copied ? 'Copied!' : 'Copy to Clipboard'}</button>
                <a href={asMailtoHref(querydb, program, queryLength, url, true)}>Share via email</a>
            </div>
        </div>
    );
};

export default ShareURLComponent;

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
sequenceserver-3.1.3 public/js/share_url.js
sequenceserver-3.1.2 public/js/share_url.js
sequenceserver-3.1.1 public/js/share_url.js
sequenceserver-3.1.0 public/js/share_url.js
sequenceserver-3.0.1 public/js/share_url.js
sequenceserver-3.0 public/js/share_url.js
sequenceserver-2.2.0 public/js/share_url.js
sequenceserver-2.1.0 public/js/share_url.js