Fix sync CallEvent peerId for call link roomIds

This commit is contained in:
ayumi-signal 2024-10-16 10:01:09 -07:00 committed by GitHub
parent 63530f2eff
commit 1649808727
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 74 additions and 17 deletions

View file

@ -74,3 +74,7 @@ export function InAnotherCallAndCallActive(
/>
);
}
export function MissingCallLink(args: CallLinkDetailsProps): JSX.Element {
return <CallLinkDetails {...args} callLink={undefined} />;
}

View file

@ -31,7 +31,7 @@ function toUrlWithoutProtocol(url: URL): string {
export type CallLinkDetailsProps = Readonly<{
callHistoryGroup: CallHistoryGroup;
callLink: CallLinkType;
callLink: CallLinkType | undefined;
isAnybodyInCall: boolean;
isInCall: boolean;
isInAnotherCall: boolean;
@ -58,6 +58,11 @@ export function CallLinkDetails({
}: CallLinkDetailsProps): JSX.Element {
const [isDeleteCallLinkModalOpen, setIsDeleteCallLinkModalOpen] =
useState(false);
if (!callLink) {
return renderMissingCallLink({ callHistoryGroup, i18n });
}
const webUrl = linkCallRoute.toWebUrl({
key: callLink.rootKey,
});
@ -256,3 +261,35 @@ export function CallLinkDetails({
</div>
);
}
function renderMissingCallLink({
callHistoryGroup,
i18n,
}: Pick<CallLinkDetailsProps, 'callHistoryGroup' | 'i18n'>): JSX.Element {
return (
<div className="CallLinkDetails__Container">
<header className="CallLinkDetails__Header">
<Avatar
className="CallLinkDetails__HeaderAvatar"
i18n={i18n}
badge={undefined}
conversationType="callLink"
size={AvatarSize.SIXTY_FOUR}
acceptedMessageRequest
isMe={false}
sharedGroupNames={[]}
title={i18n('icu:calling__call-link-default-title')}
/>
<div className="CallLinkDetails__HeaderDetails">
<h1 className="CallLinkDetails__HeaderTitle">
{i18n('icu:calling__call-link-default-title')}
</h1>
</div>
</header>
<CallHistoryGroupPanelSection
callHistoryGroup={callHistoryGroup}
i18n={i18n}
/>
</div>
);
}