fix(chat): render locked voice messages correctly
This commit is contained in:
@@ -114,17 +114,18 @@ function deriveUiLockFields(
|
||||
| undefined,
|
||||
imageUrl?: string | null,
|
||||
): Partial<UiMessage> {
|
||||
const isPrivateMessage =
|
||||
lockDetail?.reason === "private_message" ||
|
||||
lockDetail?.reason === "voice_message";
|
||||
const lockReason = lockDetail?.reason ?? null;
|
||||
const isPrivateMessage = lockReason === "private_message";
|
||||
const isVoiceMessage = lockReason === "voice_message";
|
||||
return {
|
||||
...(imageUrl ? { imageUrl } : {}),
|
||||
...(imageUrl && lockDetail?.showUpgrade ? { imagePaywalled: true } : {}),
|
||||
...(lockDetail ? { locked: lockDetail.locked, lockReason } : {}),
|
||||
...(isPrivateMessage ? { isPrivate: true } : {}),
|
||||
...(isPrivateMessage && lockDetail?.locked
|
||||
? { lockedPrivate: true }
|
||||
: {}),
|
||||
...(isPrivateMessage && lockDetail?.hint
|
||||
...((isPrivateMessage || isVoiceMessage) && lockDetail?.hint
|
||||
? { privateMessageHint: lockDetail.hint }
|
||||
: {}),
|
||||
};
|
||||
|
||||
@@ -323,6 +323,7 @@ export const chatMachine = setup({
|
||||
? {
|
||||
...message,
|
||||
content: response.content ?? message.content,
|
||||
locked: false,
|
||||
lockedPrivate: false,
|
||||
privateMessageHint: null,
|
||||
isPrivate: message.isPrivate ?? true,
|
||||
|
||||
Reference in New Issue
Block a user