Class: ShadcnPhlexcomponents::AspectRatioContainer

Inherits:
Base
  • Object
show all
Defined in:
lib/shadcn_phlexcomponents/components/aspect_ratio.rb

Constant Summary

Constants inherited from Base

Base::SANITIZER_ALLOWED_ATTRIBUTES, Base::SANITIZER_ALLOWED_TAGS, Base::TAILWIND_MERGER

Instance Method Summary collapse

Methods inherited from Base

#before_template, #convert_collection_hash_to_struct, #find_as_child, #icon, #item_disabled?, #merge_default_attributes, #merged_as_child_attributes, #nokogiri_attributes_to_hash, #overlay, #sanitize_as_child

Constructor Details

#initialize(ratio:, **attributes) ⇒ AspectRatioContainer

Returns a new instance of AspectRatioContainer.



37
38
39
40
# File 'lib/shadcn_phlexcomponents/components/aspect_ratio.rb', line 37

def initialize(ratio:, **attributes)
  @ratio = ratio
  super(**attributes)
end

Instance Method Details

#default_attributesObject



42
43
44
# File 'lib/shadcn_phlexcomponents/components/aspect_ratio.rb', line 42

def default_attributes
  { style: { "padding-bottom": "#{100 / @ratio}%" } }
end

#view_templateObject



46
47
48
# File 'lib/shadcn_phlexcomponents/components/aspect_ratio.rb', line 46

def view_template(&)
  div(**@attributes, &)
end