# frozen_string_literal: true module AccountCounters extend ActiveSupport::Concern included do has_one :account_stat, inverse_of: :account after_save :save_account_stat end delegate :statuses_count, :statuses_count=, :following_count, :following_count=, :followers_count, :followers_count=, :increment_count!, :decrement_count!, to: :account_stat def account_stat super || build_account_stat end private def save_account_stat return unless account_stat&.changed? account_stat.save end end