scinote-web/app/serializers/api/v1/user_serializer.rb

28 lines
640 B
Ruby

# frozen_string_literal: true
module Api
module V1
class UserSerializer < ActiveModel::Serializer
type :users
attributes :full_name, :initials, :email
attribute :avatar_file_name, if: -> { object.avatar.attached? }
attribute :avatar_file_size, if: -> { object.avatar.attached? }
attribute :avatar_url, if: -> { object.avatar.attached? }
include TimestampableModel
def avatar_file_name
object.avatar.blob.filename
end
def avatar_file_size
object.avatar.blob.byte_size
end
def avatar_url
object.avatar_url(:icon)
end
end
end
end