Sha256: 00a93abd1d2ed0ef80d08bc609c24f5abacc641d20d00c4aeef634febb26e8f3

Contents?: true

Size: 516 Bytes

Versions: 4

Compression:

Stored size: 516 Bytes

Contents

require "ahoy_matey"

class Matey::UserEngagementComponent < Matey::ApplicationComponent
  def initialize(events:, user_id:, time_window: 1.week, limit: 10, color_scheme: "neutral")
    @events_for_user = events.where_props(user_id: user_id).where(time: time_window.ago..Time.current).group(:name).count
    @count_by_event = @events_for_user.sort_by { |event, count| count }.last(limit).reverse
    @time_window = time_window
    @user_id = user_id

    @color_scheme = color_scheme(scheme: color_scheme)
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
matey-0.2.0 app/components/matey/user_engagement_component.rb
matey-0.1.6 app/components/matey/user_engagement_component.rb
matey-0.1.5 app/components/matey/user_engagement_component.rb
matey-0.1.4 app/components/matey/user_engagement_component.rb