/**
 * Converter for "merge_forward" message type.
 */

import type { ConvertedPayload, MessageConvertContext } from './types'
import { safeParse } from './utils'

export async function convertMergeForward(ctx: MessageConvertContext): Promise<ConvertedPayload | null> {
  const parsed = safeParse(ctx.rawContent) as { message_id?: string } | undefined
  const messageId = parsed?.message_id
  if (!messageId) return null

  const forwardedText = await ctx.fetchMergeForwardContent(messageId)
  return { text: forwardedText }
}
