diff --git a/package.json b/package.json index 83c3119ed..c9fdf44b8 100644 --- a/package.json +++ b/package.json @@ -117,7 +117,7 @@ "react-h5-audio-player": "^3.2.0", "react-intersection-observer": "^9.7.0", "react-mentions": "^4.4.9", - "react-qr-svg": "^2.2.1", + "react-qrcode-logo": "^2.10.0", "react-redux": "8.0.4", "react-toastify": "^6.0.9", "react-use": "^17.4.0", diff --git a/stylesheets/_session.scss b/stylesheets/_session.scss index 37258d6ff..3ac42138b 100644 --- a/stylesheets/_session.scss +++ b/stylesheets/_session.scss @@ -413,21 +413,6 @@ label { } } -.qr-image { - display: flex; - justify-content: center; - - background: var(--white-color); - padding: 0.5rem; - svg { - width: 135px; - height: 135px; - border-radius: 3px; - padding: var(--margins-xs); - background-color: var(--white-color); - } -} - .conversation-loader { position: absolute; top: 50%; @@ -447,15 +432,6 @@ label { background-color: var(--background-secondary-color); } -#qr svg, -.qr-image svg { - width: $session-modal-size-sm; - height: $session-modal-size-sm; - padding: var(--margins-xs); - background-color: var(--white-color); - border-radius: 3px; -} - .messages li { transition: var(--default-duration) !important; } diff --git a/ts/components/dialog/EditProfileDialog.tsx b/ts/components/dialog/EditProfileDialog.tsx index ef5996ee0..5e18e5bfb 100644 --- a/ts/components/dialog/EditProfileDialog.tsx +++ b/ts/components/dialog/EditProfileDialog.tsx @@ -1,7 +1,6 @@ -import { useDispatch } from 'react-redux'; -// eslint-disable-next-line import/no-named-default import { ChangeEvent, MouseEvent, useState } from 'react'; -import { QRCode } from 'react-qr-svg'; +import { QRCode } from 'react-qrcode-logo'; +import { useDispatch } from 'react-redux'; import styled from 'styled-components'; import { Avatar, AvatarSize } from '../avatar/Avatar'; @@ -17,33 +16,31 @@ import { editProfileModal, updateEditProfilePictureModel } from '../../state/duc import { saveQRCode } from '../../util/saveQRCode'; import { setLastProfileUpdateTimestamp } from '../../util/storage'; import { SessionWrapperModal } from '../SessionWrapperModal'; +import { Flex } from '../basic/Flex'; import { SessionButton, SessionButtonType } from '../basic/SessionButton'; import { SessionIconButton } from '../icon'; import { SessionSpinner } from '../loading'; +const qrCodeId = 'session-account-id'; const handleSaveQRCode = (event: MouseEvent) => { event.preventDefault(); - saveQRCode('session-id', '220px', '220px', 'var(--white-color)', 'var(--black-color)'); + saveQRCode(qrCodeId); }; -const StyledQRView = styled.div` +const StyledQRView = styled(Flex)` cursor: pointer; `; const QRView = ({ sessionID }: { sessionID: string }) => { return ( - + ); }; diff --git a/ts/components/dialog/SessionSeedModal.tsx b/ts/components/dialog/SessionSeedModal.tsx index ec658973d..d0411ff98 100644 --- a/ts/components/dialog/SessionSeedModal.tsx +++ b/ts/components/dialog/SessionSeedModal.tsx @@ -1,9 +1,9 @@ import { MouseEvent, useState } from 'react'; -import { QRCode } from 'react-qr-svg'; import { useDispatch } from 'react-redux'; import useMount from 'react-use/lib/useMount'; import styled from 'styled-components'; +import { QRCode } from 'react-qrcode-logo'; import { Data } from '../../data/data'; import { ToastUtils } from '../../session/utils'; import { matchesHash } from '../../util/passwordUtils'; @@ -15,6 +15,7 @@ import { SpacerSM } from '../basic/Text'; import { saveQRCode } from '../../util/saveQRCode'; import { getCurrentRecoveryPhrase } from '../../util/storage'; import { SessionWrapperModal } from '../SessionWrapperModal'; +import { Flex } from '../basic/Flex'; import { SessionButton, SessionButtonColor, SessionButtonType } from '../basic/SessionButton'; interface PasswordProps { @@ -99,28 +100,20 @@ interface SeedProps { const StyledRecoveryPhrase = styled.i``; -const StyledQRImage = styled.div` - width: fit-content; +const StyledQRImage = styled(Flex)` margin: 0 auto var(--margins-lg); cursor: pointer; `; +const qrCodeId = 'session-recovery-password'; const handleSaveQRCode = (event: MouseEvent) => { event.preventDefault(); - saveQRCode( - 'session-recovery-phrase', - '220px', - '220px', - 'var(--white-color)', - 'var(--black-color)' - ); + saveQRCode(qrCodeId); }; const Seed = (props: SeedProps) => { const { recoveryPhrase, onClickCopy } = props; const i18n = window.i18n; - const bgColor = 'var(--white-color)'; - const fgColor = 'var(--black-color)'; const dispatch = useDispatch(); const hexEncodedSeed = mnDecode(recoveryPhrase, 'english'); @@ -150,12 +143,13 @@ const Seed = (props: SeedProps) => {

- +