Class: UI::AspectRatio
- Inherits:
-
Phlex::HTML
- Object
- Phlex::HTML
- UI::AspectRatio
- Includes:
- AspectRatioBehavior
- Defined in:
- app/components/ui/aspect_ratio.rb
Overview
AspectRatio - Phlex implementation
Displays content within a desired aspect ratio. Uses AspectRatioBehavior module for shared styling logic.
Constant Summary
Constants included from AspectRatioBehavior
UI::AspectRatioBehavior::DEFAULT_RATIO
Instance Method Summary collapse
-
#initialize(ratio: 1.0, classes: "", **attributes) ⇒ AspectRatio
constructor
A new instance of AspectRatio.
- #view_template(&block) ⇒ Object
Methods included from AspectRatioBehavior
#aspect_ratio_classes, #aspect_ratio_content_attributes, #aspect_ratio_html_attributes, #aspect_ratio_padding, #aspect_ratio_padding_attributes
Constructor Details
#initialize(ratio: 1.0, classes: "", **attributes) ⇒ AspectRatio
Returns a new instance of AspectRatio.
18 19 20 21 22 |
# File 'app/components/ui/aspect_ratio.rb', line 18 def initialize(ratio: 1.0, classes: "", **attributes) @ratio = ratio @classes = classes @attributes = attributes end |
Instance Method Details
#view_template(&block) ⇒ Object
24 25 26 27 28 29 30 31 |
# File 'app/components/ui/aspect_ratio.rb', line 24 def view_template(&block) div(**aspect_ratio_html_attributes) do div(**aspect_ratio_padding_attributes) div(**aspect_ratio_content_attributes) do yield if block_given? end end end |