Class: Ecoportal::API::V2::Page::Component::GaugeField
- Inherits:
-
Ecoportal::API::V2::Page::Component
- Object
- Common::BaseModel
- Common::Content::DoubleModel
- Ecoportal::API::V2::Page::Component
- Ecoportal::API::V2::Page::Component::GaugeField
- Defined in:
- lib/ecoportal/api/v2/page/component/gauge_field.rb
Constant Summary
Constants included from Common::Content::StringDigest
Common::Content::StringDigest::MAX_HASH_LABEL
Constants inherited from Common::Content::DoubleModel
Common::Content::DoubleModel::NOT_USED
Constants included from Common::Content::ClassHelpers
Common::Content::ClassHelpers::NOT_USED
Instance Attribute Summary
Attributes inherited from Common::Content::DoubleModel
Instance Method Summary collapse
-
#add_stop(threshold: 0.0, color: '#e256d1') ⇒ Ecoportal::API::V2::Page::Component::GaugeStop
Adds a stop at
threshold
withcolor
. - #empty? ⇒ Boolean
- #ordered_stops ⇒ Object
- #to_s ⇒ Object
Methods inherited from Ecoportal::API::V2::Page::Component
#attached?, #bindings, #bindings?, #configure, #delete!, #forces, get_class, #indexable_label, #move, #multi_section?, new_doc, #ooze, #ref, #ref_backend, #replace, #replace_bindings, #section, #unattach!
Methods included from Common::Content::StringDigest
Methods inherited from Common::Content::DoubleModel
#_doc_key, #as_json, #as_update, #consolidate!, #dirty?, #doc, embeds_many, embeds_one, enforce!, #initialize, #key, #key=, key?, new_uuid, #original_doc, pass_reader, pass_writer, passarray, passboolean, passdate, passforced, passkey, passthrough, #print_pretty, read_only!, read_only?, #read_only?, #replace_doc, #reset!, #resolved_doc_key, #root, #to_json
Methods included from Common::Content::ClassHelpers
#inheritable_attrs, #inheritable_class_vars, #inherited, #instance_variable_name, #new_class, #resolve_class, #to_constant, #to_time, #uid, #used_param?
Constructor Details
This class inherits a constructor from Ecoportal::API::Common::Content::DoubleModel
Instance Method Details
#add_stop(threshold: 0.0, color: '#e256d1') ⇒ Ecoportal::API::V2::Page::Component::GaugeStop
Adds a stop at threshold
with color
18 19 20 21 22 23 24 25 |
# File 'lib/ecoportal/api/v2/page/component/gauge_field.rb', line 18 def add_stop(threshold: 0.0, color: '#e256d1') stop_doc = stops.items_class.new_doc stops.upsert!(stop_doc) do |stop| stop.threshold = threshold stop.color = color yield(stop) if block_given? end end |
#empty? ⇒ Boolean
12 13 14 |
# File 'lib/ecoportal/api/v2/page/component/gauge_field.rb', line 12 def empty? !value end |
#ordered_stops ⇒ Object
27 28 29 30 31 |
# File 'lib/ecoportal/api/v2/page/component/gauge_field.rb', line 27 def ordered_stops stops.sort_by.with_index do |stop, index| [stop.threshold, index] end end |
#to_s ⇒ Object
33 34 35 |
# File 'lib/ecoportal/api/v2/page/component/gauge_field.rb', line 33 def to_s value.to_s end |