Class: Refine::Conditions::Clause
- Inherits:
-
Object
- Object
- Refine::Conditions::Clause
- Includes:
- HasMeta
- Defined in:
- app/models/refine/conditions/clause.rb
Constant Summary collapse
- I18N_PREFIX =
"refine.refine_blueprints.clause."
Instance Attribute Summary collapse
-
#display ⇒ Object
Returns the value of attribute display.
-
#id ⇒ Object
readonly
Returns the value of attribute id.
-
#rules ⇒ Object
readonly
Returns the value of attribute rules.
Instance Method Summary collapse
-
#initialize(id = nil, display = nil) ⇒ Clause
constructor
A new instance of Clause.
- #requires_inputs(fields) ⇒ Object
- #to_array ⇒ Object
- #with_rules(user_defined_hash) ⇒ Object
Methods included from HasMeta
Constructor Details
#initialize(id = nil, display = nil) ⇒ Clause
Returns a new instance of Clause.
10 11 12 13 14 15 |
# File 'app/models/refine/conditions/clause.rb', line 10 def initialize(id = nil, display = nil) @id = id @display = display || id.humanize(keep_id_suffix: true).titleize @rules = {} @messages end |
Instance Attribute Details
#display ⇒ Object
Returns the value of attribute display.
6 7 8 |
# File 'app/models/refine/conditions/clause.rb', line 6 def display @display end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
5 6 7 |
# File 'app/models/refine/conditions/clause.rb', line 5 def id @id end |
#rules ⇒ Object (readonly)
Returns the value of attribute rules.
5 6 7 |
# File 'app/models/refine/conditions/clause.rb', line 5 def rules @rules end |
Instance Method Details
#requires_inputs(fields) ⇒ Object
22 23 24 25 26 27 28 |
# File 'app/models/refine/conditions/clause.rb', line 22 def requires_inputs(fields) # Coerce field to an array [*fields].each do |field| @rules.merge!({"#{field}": I18n.t("#{I18N_PREFIX}required")}) end self end |
#to_array ⇒ Object
30 31 32 33 34 35 36 |
# File 'app/models/refine/conditions/clause.rb', line 30 def to_array { id: @id, display: @display, meta: } end |
#with_rules(user_defined_hash) ⇒ Object
17 18 19 20 |
# File 'app/models/refine/conditions/clause.rb', line 17 def with_rules(user_defined_hash) @rules.merge!(user_defined_hash) self end |