24 lines
559 B
Ruby
24 lines
559 B
Ruby
# frozen_string_literal: true
|
|
|
|
class InvitedSerializer < ApplicationSerializer
|
|
attributes :invites, :can_see_invite_details, :counts
|
|
|
|
def invites
|
|
ActiveModel::ArraySerializer.new(
|
|
object.invite_list,
|
|
each_serializer: object.type == "pending" || object.type == "expired" ? InviteSerializer : InvitedUserSerializer,
|
|
scope: scope,
|
|
root: false,
|
|
show_emails: object.show_emails
|
|
).as_json
|
|
end
|
|
|
|
def can_see_invite_details
|
|
scope.can_see_invite_details?(object.inviter)
|
|
end
|
|
|
|
def counts
|
|
object.counts
|
|
end
|
|
end
|