Class: CubitComponents::PageBlockComponent

Inherits:
BaseComponent
  • Object
show all
Defined in:
lib/cubit_components/page_block_component.rb

Constant Summary collapse

DEFAULT_OUTER_CLASSES =
"px-4 sm:px-6".freeze
VALID_VATTRS =
Set.new(
  %w[
    max-w-3xs max-w-2xs max-w-xs
    max-w-sm max-w-md max-w-lg
    max-w-xl max-w-2xl max-w-3xl max-w-4xl max-w-5xl max-w-6xl max-w-7xl
    max-w-none max-w-full max-w-screen
  ]
)

Instance Method Summary collapse

Constructor Details

#initialize(element: "div", classes: "", vattrs: [], content_block_classes: "") ⇒ PageBlockComponent

Optionally allow extra classes for the inner content block if needed.



14
15
16
17
18
19
20
# File 'lib/cubit_components/page_block_component.rb', line 14

def initialize(element: "div", classes: "", vattrs: [], content_block_classes: "")
  @outer_classes = [DEFAULT_OUTER_CLASSES, classes].join(" ").strip
  @content_block_classes = content_block_classes
  @content_block_vattrs = vattrs # Pass the vattrs wholesale to the inner content block

  super(element: element, classes: @outer_classes)
end

Instance Method Details

#callObject



22
23
24
25
26
# File 'lib/cubit_components/page_block_component.rb', line 22

def call
   @element, class: @outer_classes do
    render_content_block { content }
  end
end