# frozen_string_literal: true require "versions/v1/quote/base" module Versions class V1 < Roda module Quote class Interval < Base def formatted { amount:, base:, start_date: result.keys.first, end_date: result.keys.last, rates: result, } end def cache_key return if not_found? Digest::MD5.hexdigest(result.keys.last) end private def fetch_data require "rate" scope = Rate.where(provider: "ECB").between(date) scope = scope.only(*(symbols + [base])) if symbols scope.naked end end end end end