# frozen_string_literal: true

class ApiKeyScopeSerializer < ApplicationSerializer
  attributes :resource, :action, :parameters, :urls, :allowed_parameters, :key

  def parameters
    ApiKeyScope.scope_mappings.dig(object.resource.to_sym, object.action.to_sym, :params).to_a
  end

  def urls
    ApiKeyScope.scope_mappings.dig(object.resource.to_sym, object.action.to_sym, :urls).to_a
  end

  def action
    object.action.to_s.gsub("_", " ")
  end

  def key
    object.action
  end
end