# frozen_string_literal: true

class ReviewableFlaggedPostSerializer < ReviewableSerializer
  target_attributes :cooked, :raw, :reply_count, :reply_to_post_number, :deleted_at
  attributes :blank_post, :post_updated_at, :post_version

  def created_from_flag?
    true
  end

  def cooked
    post = object.target
    return if post.blank?

    if ContentLocalization.show_translated_post?(post, scope)
      post.get_localization&.cooked.presence || post.cooked
    else
      post.cooked
    end
  end

  def post_version
    object.target&.version
  end

  def post_updated_at
    object.target&.updated_at
  end

  def blank_post
    true
  end

  def include_blank_post?
    object.target.blank?
  end
end
