summaryrefslogtreecommitdiff
path: root/app/serializers/analytics_stage_entity.rb
blob: 8bc6da5aeeb60dc1d1c2b0fc5997fbdaeb204150 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# frozen_string_literal: true

class AnalyticsStageEntity < Grape::Entity
  include EntityDateHelper

  expose :title
  expose :name
  expose :legend
  expose :description

  expose :median, as: :value do |stage|
    # median returns a BatchLoader instance which we first have to unwrap by using to_f
    # we use to_f to make sure results below 1 are presented to the end-user
    stage.median.to_f.nonzero? ? distance_of_time_in_words(stage.median) : nil
  end
end