Class: ActiveAdmin::Favorites::Favorite::RangeDetector
- Inherits:
-
Object
- Object
- ActiveAdmin::Favorites::Favorite::RangeDetector
- Defined in:
- app/models/active_admin/favorites/favorite/range_detector.rb
Constant Summary collapse
- DATE_PREDICATES =
%w[gteq lteq gt lt].freeze
- DATE_PATTERN =
/\A\d{4}-\d{2}-\d{2}/
Class Method Summary collapse
Instance Method Summary collapse
- #call ⇒ Object
-
#initialize(query_string:, resource_key:) ⇒ RangeDetector
constructor
A new instance of RangeDetector.
Constructor Details
#initialize(query_string:, resource_key:) ⇒ RangeDetector
Returns a new instance of RangeDetector.
14 15 16 17 |
# File 'app/models/active_admin/favorites/favorite/range_detector.rb', line 14 def initialize(query_string:, resource_key:) @query_filters = QueryParams.parse(query_string).fetch("q", {}) @resource_key = resource_key end |
Class Method Details
.call(query_string:, resource_key:) ⇒ Object
10 11 12 |
# File 'app/models/active_admin/favorites/favorite/range_detector.rb', line 10 def self.call(query_string:, resource_key:) new(query_string:, resource_key:).call end |
Instance Method Details
#call ⇒ Object
19 20 21 22 23 24 |
# File 'app/models/active_admin/favorites/favorite/range_detector.rb', line 19 def call attributes = allowed_attributes attributes.filter_map do |attribute| detect_range(attribute) end end |