import { shell } from 'electron'; import { isEmpty } from 'lodash'; import { useDispatch } from 'react-redux'; import styled from 'styled-components'; import { MessageInteraction } from '../../interactions'; import { OpenUrlModalState, updateOpenUrlModal } from '../../state/ducks/modalDialog'; import { SessionWrapperModal } from '../SessionWrapperModal'; import { Flex } from '../basic/Flex'; import { I18n } from '../basic/I18n'; import { SessionButton, SessionButtonColor, SessionButtonType } from '../basic/SessionButton'; import { SpacerMD } from '../basic/Text'; const StyledDescriptionContainer = styled.div` max-height: 150px; overflow-y: auto; `; export function OpenUrlModal(props: OpenUrlModalState) { const dispatch = useDispatch(); // console.warn('props', props); if (!props || isEmpty(props) || !props.urlToOpen) { return null; } const url = props.urlToOpen; function onClose() { dispatch(updateOpenUrlModal(null)); } function onClickOpen() { void shell.openExternal(url); onClose(); } function onClickCopy() { MessageInteraction.copyBodyToClipboard(url); onClose(); } return ( ); }