# frozen_string_literal: true

class FlaggedTopicSummarySerializer < ActiveModel::Serializer

  attributes(
    :id,
    :flag_counts,
    :user_ids,
    :last_flag_at
  )

  has_one :topic, serializer: FlaggedTopicSerializer

  def id
    topic.id
  end

  def flag_counts
    object.flag_counts.map do |k, v|
      { post_action_type_id: k, count: v, name_key: PostActionType.types[k] }
    end
  end

  def user_ids
    object.user_ids
  end

  def last_flag_at
    object.last_flag_at
  end
end