45 lines
1.1 KiB
JavaScript
45 lines
1.1 KiB
JavaScript
// @flow
|
|
|
|
import React from 'react';
|
|
|
|
import CopyButton from '../../../../base/buttons/CopyButton';
|
|
import { translate } from '../../../../base/i18n';
|
|
import { getDecodedURI } from '../../../../base/util';
|
|
|
|
|
|
type Props = {
|
|
|
|
/**
|
|
* Invoked to obtain translated strings.
|
|
*/
|
|
t: Function,
|
|
|
|
/**
|
|
* The URL of the conference.
|
|
*/
|
|
url: string
|
|
};
|
|
|
|
/**
|
|
* Component meant to enable users to copy the conference URL.
|
|
*
|
|
* @returns {React$Element<any>}
|
|
*/
|
|
function CopyMeetingLinkSection({ t, url }: Props) {
|
|
return (
|
|
<>
|
|
<label htmlFor = { 'copy-button-id' }>{t('addPeople.shareLink')}</label>
|
|
<CopyButton
|
|
aria-label = { t('addPeople.copyLink') }
|
|
className = 'invite-more-dialog-conference-url'
|
|
displayedText = { getDecodedURI(url) }
|
|
id = 'copy-button-id'
|
|
textOnCopySuccess = { t('addPeople.linkCopied') }
|
|
textOnHover = { t('addPeople.copyLink') }
|
|
textToCopy = { url } />
|
|
</>
|
|
);
|
|
}
|
|
|
|
export default translate(CopyMeetingLinkSection);
|