Fix crash in manage device

This commit is contained in:
Ajay Bura 2022-09-07 13:14:15 +05:30
parent 2ded7d9b1f
commit 4a35aa7272
2 changed files with 12 additions and 10 deletions

View file

@ -16,11 +16,11 @@ import { confirmDialog } from '../../molecules/confirm-dialog/ConfirmDialog';
import './ProfileEditor.scss'; import './ProfileEditor.scss';
// TODO Fix bug that prevents 'Save' button from enabling up until second changed.
function ProfileEditor({ userId }) { function ProfileEditor({ userId }) {
const [isEditing, setIsEditing] = useState(false); const [isEditing, setIsEditing] = useState(false);
const mx = initMatrix.matrixClient; const mx = initMatrix.matrixClient;
const user = mx.getUser(mx.getUserId()); const user = mx.getUser(mx.getUserId());
const fallbackUsername = userId.match(/^@?(\S+):(\S+)$/)[1];
const displayNameRef = useRef(null); const displayNameRef = useRef(null);
const [avatarSrc, setAvatarSrc] = useState(user.avatarUrl ? mx.mxcUrlToHttp(user.avatarUrl, 80, 80, 'crop') : null); const [avatarSrc, setAvatarSrc] = useState(user.avatarUrl ? mx.mxcUrlToHttp(user.avatarUrl, 80, 80, 'crop') : null);
@ -96,7 +96,7 @@ function ProfileEditor({ userId }) {
const renderInfo = () => ( const renderInfo = () => (
<div className="profile-editor__info" style={{ marginBottom: avatarSrc ? '24px' : '0' }}> <div className="profile-editor__info" style={{ marginBottom: avatarSrc ? '24px' : '0' }}>
<div> <div>
<Text variant="h2" primary weight="medium">{twemojify(username)}</Text> <Text variant="h2" primary weight="medium">{twemojify(username) ?? fallbackUsername}</Text>
<IconButton <IconButton
src={PencilIC} src={PencilIC}
size="extra-small" size="extra-small"
@ -111,7 +111,7 @@ function ProfileEditor({ userId }) {
return ( return (
<div className="profile-editor"> <div className="profile-editor">
<ImageUpload <ImageUpload
text={username} text={username ?? fallbackUsername}
bgColor={colorMXID(userId)} bgColor={colorMXID(userId)}
imageSrc={avatarSrc} imageSrc={avatarSrc}
onUpload={handleAvatarUpload} onUpload={handleAvatarUpload}

View file

@ -180,13 +180,15 @@ function DeviceManage() {
} }
content={( content={(
<> <>
<Text variant="b3"> {lastTS && (
Last activity <Text variant="b3">
<span style={{ color: 'var(--tc-surface-normal)' }}> Last activity
{dateFormat(new Date(lastTS), ' hh:MM TT, dd/mm/yyyy')} <span style={{ color: 'var(--tc-surface-normal)' }}>
</span> {dateFormat(new Date(lastTS), ' hh:MM TT, dd/mm/yyyy')}
{lastIP ? ` at ${lastIP}` : ''} </span>
</Text> {lastIP ? ` at ${lastIP}` : ''}
</Text>
)}
{isCurrentDevice && ( {isCurrentDevice && (
<Text style={{ marginTop: 'var(--sp-ultra-tight)' }} variant="b3"> <Text style={{ marginTop: 'var(--sp-ultra-tight)' }} variant="b3">
{`Session Key: ${initMatrix.matrixClient.getDeviceEd25519Key().match(/.{1,4}/g).join(' ')}`} {`Session Key: ${initMatrix.matrixClient.getDeviceEd25519Key().match(/.{1,4}/g).join(' ')}`}