fix: timer direction appears correctly on messages

pull/2971/head
William Grant 2 years ago
parent 85f270b67a
commit 0e0984748a

@ -53,7 +53,6 @@ export const TimerNotification = (props: PropsForExpirationTimer) => {
return ( return (
<ExpirableReadableMessage <ExpirableReadableMessage
messageId={messageId} messageId={messageId}
direction={type === 'fromOther' ? 'incoming' : 'outgoing'}
isCentered={true} isCentered={true}
marginInlineStart={'calc(var(--margins-lg) + 6px)'} marginInlineStart={'calc(var(--margins-lg) + 6px)'}
marginInlineEnd={'calc(var(--margins-lg) + 6px)'} marginInlineEnd={'calc(var(--margins-lg) + 6px)'}

@ -13,7 +13,6 @@ import { useMessageExpirationPropsById } from '../../../../hooks/useParamSelecto
const EXPIRATION_CHECK_MINIMUM = 2000; const EXPIRATION_CHECK_MINIMUM = 2000;
// TODO Check that this isn't broken
function useIsExpired( function useIsExpired(
props: Omit<PropsForExpiringMessage, 'messageId' | 'direction'> & { props: Omit<PropsForExpiringMessage, 'messageId' | 'direction'> & {
messageId: string | undefined; messageId: string | undefined;
@ -23,7 +22,6 @@ function useIsExpired(
const { const {
convoId, convoId,
messageId, messageId,
direction,
expirationLength, expirationLength,
expirationTimestamp, expirationTimestamp,
isExpired: isExpiredProps, isExpired: isExpiredProps,
@ -36,7 +34,7 @@ function useIsExpired(
const checkExpired = useCallback(async () => { const checkExpired = useCallback(async () => {
const now = Date.now(); const now = Date.now();
if (!messageId || !direction || !expirationTimestamp || !expirationLength) { if (!messageId || !expirationTimestamp || !expirationLength) {
return; return;
} }
@ -55,7 +53,7 @@ function useIsExpired(
convo?.updateLastMessage(); convo?.updateLastMessage();
} }
} }
}, [messageId, direction, expirationTimestamp, expirationLength, isExpired, convoId, dispatch]); }, [messageId, expirationTimestamp, expirationLength, isExpired, convoId, dispatch]);
let checkFrequency: number | null = null; let checkFrequency: number | null = null;
if (expirationLength) { if (expirationLength) {
@ -84,8 +82,6 @@ const StyledReadableMessage = styled(ReadableMessage)<{
export interface ExpirableReadableMessageProps export interface ExpirableReadableMessageProps
extends Omit<ReadableMessageProps, 'receivedAt' | 'isUnread'> { extends Omit<ReadableMessageProps, 'receivedAt' | 'isUnread'> {
messageId: string; messageId: string;
// Note: this direction is used to override the message model direction in cases where it isn't set i.e. Timer Notifications rely on the 'type' prop to determine direction
direction?: MessageModelType;
isCentered?: boolean; isCentered?: boolean;
marginInlineStart?: string; marginInlineStart?: string;
marginInlineEnd?: string; marginInlineEnd?: string;
@ -94,18 +90,12 @@ export interface ExpirableReadableMessageProps
export const ExpirableReadableMessage = (props: ExpirableReadableMessageProps) => { export const ExpirableReadableMessage = (props: ExpirableReadableMessageProps) => {
const selected = useMessageExpirationPropsById(props.messageId); const selected = useMessageExpirationPropsById(props.messageId);
const { const { isCentered, marginInlineStart = '6px', marginInlineEnd = '6px', dataTestId } = props;
direction,
isCentered,
marginInlineStart = '6px',
marginInlineEnd = '6px',
dataTestId,
} = props;
const { isExpired } = useIsExpired({ const { isExpired } = useIsExpired({
convoId: selected?.convoId, convoId: selected?.convoId,
messageId: selected?.messageId, messageId: selected?.messageId,
direction: direction || selected?.direction, direction: selected?.direction,
expirationTimestamp: selected?.expirationTimestamp, expirationTimestamp: selected?.expirationTimestamp,
expirationLength: selected?.expirationLength, expirationLength: selected?.expirationLength,
isExpired: selected?.isExpired, isExpired: selected?.isExpired,
@ -115,7 +105,14 @@ export const ExpirableReadableMessage = (props: ExpirableReadableMessageProps) =
return null; return null;
} }
const { messageId, receivedAt, isUnread, expirationLength, expirationTimestamp } = selected; const {
messageId,
direction,
receivedAt,
isUnread,
expirationLength,
expirationTimestamp,
} = selected;
const isIncoming = direction === 'incoming'; const isIncoming = direction === 'incoming';

Loading…
Cancel
Save