Class: Railsboot::ProgressCircularComponent
- Inherits:
-
Component
- Object
- Component
- Railsboot::ProgressCircularComponent
- Defined in:
- app/components/railsboot/progress_circular_component.rb
Instance Method Summary collapse
- #before_render ⇒ Object protected
-
#initialize(value: 0, min: 0, max: 100, label: "", aria_label: nil, color: DEFAULT_COLOR, **html_attributes) ⇒ ProgressCircularComponent
constructor
A new instance of ProgressCircularComponent.
- #stroke_dasharray ⇒ Object
Constructor Details
#initialize(value: 0, min: 0, max: 100, label: "", aria_label: nil, color: DEFAULT_COLOR, **html_attributes) ⇒ ProgressCircularComponent
Returns a new instance of ProgressCircularComponent.
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
# File 'app/components/railsboot/progress_circular_component.rb', line 2 def initialize(value: 0, min: 0, max: 100, label: "", aria_label: nil, color: DEFAULT_COLOR, **html_attributes) @value = value @min = min @max = max @label = label @aria_label = aria_label @color = fetch_or_raise(color, COLORS) @html_attributes = html_attributes @html_attributes[:tag] = "div" @html_attributes[:class] = class_names( {"text-#{@color}" => @color.present?}, html_attributes[:class] ) end |
Instance Method Details
#before_render ⇒ Object (protected)
24 25 26 27 28 29 30 |
# File 'app/components/railsboot/progress_circular_component.rb', line 24 def before_render @html_attributes["role"] = "progressbar" @html_attributes["aria-valuenow"] = @value @html_attributes["aria-valuemin"] = @min @html_attributes["aria-valuemax"] = @max @html_attributes["aria-label"] = @aria_label if @aria_label.present? end |
#stroke_dasharray ⇒ Object
18 19 20 |
# File 'app/components/railsboot/progress_circular_component.rb', line 18 def stroke_dasharray ((51.0 / 50) * @value).round(2) end |