class Primer::LayoutComponent

Use ‘Layout` to build a main/sidebar layout.

def initialize(responsive: false, side: DEFAULT_SIDE, sidebar_col: DEFAULT_SIDEBAR_COL, **system_arguments)

Parameters:
  • system_arguments (Hash) -- <%= link_to_system_arguments_docs %>
  • sidebar_col (Integer) -- Sidebar column width.
  • side (Symbol) -- Which side to display the sidebar on. <%= one_of(Primer::LayoutComponent::ALLOWED_SIDES) %>
  • responsive (Boolean) -- Whether to collapse layout to a single column at smaller widths.
def initialize(responsive: false, side: DEFAULT_SIDE, sidebar_col: DEFAULT_SIDEBAR_COL, **system_arguments)
  @system_arguments = system_arguments
  @side = fetch_or_fallback(ALLOWED_SIDES, side, DEFAULT_SIDE)
  @responsive = responsive
  @system_arguments[:classes] = class_names(
    "gutter-condensed gutter-lg",
    @system_arguments[:classes]
  )
  @system_arguments[:direction] = responsive ? [:column, nil, :row] : nil
  @system_arguments[:display] = :flex
  @system_arguments[:tag] = :div
  @sidebar_col = fetch_or_fallback(ALLOWED_SIDEBAR_COLS, sidebar_col, DEFAULT_SIDEBAR_COL)
  @main_col = MAX_COL - @sidebar_col
end